• Eduardo Sanz García's avatar
    Improve ergonomics of PortFinder and PortProvider · f1e042eb
    Eduardo Sanz García authored
    For PortFinder, I followed this advice:
    https://github.com/hypothesis/client/pull/3881#discussion_r743030606,
    except that I made the argument of `PorFinder#discover` and string
    (instead of an object).
    
    ```
    const portFinder = new PortFinder({ source: 'guest', hostFrame });
    portFinder.discover('sidebar');
    portFinder.discover('host');
    ```
    
    For PortProvider, I followed this advice:
    https://github.com/hypothesis/client/pull/3881#discussion_r743033013,
    except that I used a getter.
    
    ```
    cont portProvider = new PortProvider(...)
    const bridge = new Bridge();
    bridge.createChannel(portProvider.sidebarPort);
    ```
    
    I have renamed the properties of `Message`:
    - `source` becomes `authority`
    - `channel` and `port` have been replaced by `frame1` and `frame2`
    
    I did that to align `port1` and `frame1` and `port2` and `frame2`, while
    also avoiding clashing with other names (`source`, `target`) which have
    other meaning in the `window.postMessage` context.
    
    I have removed one level of nesting in the `PortProvider#discover` that
    make the method more readable.
    
    I added some other suggestions from PR #3881.
    f1e042eb
Name
Last commit
Last update
..
annotator Loading commit data...
boot Loading commit data...
images/icons Loading commit data...
shared Loading commit data...
sidebar Loading commit data...
styles Loading commit data...
test-util Loading commit data...
types Loading commit data...
.eslintrc Loading commit data...
karma.config.js Loading commit data...
tsconfig.json Loading commit data...