A Cycle.js driver for interacting with the Selection API
npm install cycle-selection-driver --saveSee test-site directory for usage example.
A Cycle.js driver that returns a SelectionSource.
sink$
A stream of ITargetSelectionRange objects. When the sink stream emits an event, the specified range will be selected.
SelectionSource
A Cycle.js source that provides access to user selections.
.selections(selector)
Returns a stream of ISelectionRange objects which represent the current user selection. The stream will emit each time the selectionchange event is fired and the selection matches the specified selector. null will be emitted when the selection changes to no longer match the specified selector.
selector
A string that allows you to filter the selections to a specific element and its descendants. Selections that occur in an element that doesn't match the selector will be ignored. The selector should be a valid css selector string.
ISelectionRange for selection change events that match the specified selector; else, null.
A range of text selected by the user or the current position of the caret.
anchorNode- The node where the user began their selectionanchorOffset- Character offset relative to theanchorNodewhere the user began their selectionendElement- Element where the selection ends (matches or comes after thestartElement)endOffset- Character offset relative to theendElementwhere the selection ends (matches or comes after thestartOffset)focusNode- The node where the user finished their selectionfocusOffset- Character offset relative to thefocusNodewhere the user finished their selectionrootElement- Root element for the selection based on the specified selectorstartElement- Element where the selection starts (matches or comes before theendElement)startOffset- Character offset relative to thestartElementwhere the selection starts (matches or comes before theendOffset)text- Selected text
An object representing a range of text to be selected.
endNode- Node or css selector matching the node where the selection should endendOffset- Character offset of the end of the selection range relative to theendNode.startNode- Node or css selector matching the node where the selection should startstartOffset- Character offset of the start of the selection range relative to thestartNode
Find other Cycle.js libraries and resources at Awesome Cycle.js