@fusion.dev/helix-core 0.147.0 → 0.149.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +16160 -12084
- package/dist/controllers/aria-forward-controller/aria-forward-controller.js +1 -1
- package/dist/controllers/chart-pointer-controller/chart-pointer-controller.d.ts +2 -2
- package/dist/controllers/chart-pointer-controller/chart-pointer-controller.js +5 -4
- package/dist/controllers/children-controller/children-controller.d.ts +28 -0
- package/dist/controllers/children-controller/children-controller.js +18 -0
- package/dist/controllers/countdown-controller/countdown-controller.d.ts +15 -1
- package/dist/controllers/countdown-controller/countdown-controller.js +27 -2
- package/dist/controllers/floating-controller/floating-controller.d.ts +12 -1
- package/dist/controllers/floating-controller/floating-controller.js +2 -1
- package/dist/controllers/keyboard-navigation-controller/keyboard-navigation-controller.d.ts +25 -0
- package/dist/controllers/keyboard-navigation-controller/keyboard-navigation-controller.js +8 -0
- package/dist/controllers/machine-controller/machine-controller.d.ts +69 -0
- package/dist/controllers/machine-controller/machine-controller.js +78 -0
- package/dist/controllers/machine-controller/machine.d.ts +93 -0
- package/dist/controllers/machine-controller/machine.js +20 -0
- package/dist/controllers/open-phase-controller/open-phase-controller.d.ts +10 -0
- package/dist/controllers/open-phase-controller/open-phase-controller.js +7 -4
- package/dist/controllers/option-window-controller/option-window-controller.d.ts +96 -0
- package/dist/controllers/option-window-controller/option-window-controller.js +81 -0
- package/dist/controllers/popover-controller/popover-controller.js +1 -1
- package/dist/controllers/reorder-controller/reorder-controller.d.ts +285 -0
- package/dist/controllers/reorder-controller/reorder-controller.js +497 -0
- package/dist/controllers/source-controller/source-controller.js +1 -1
- package/dist/controllers/virtualize-controller/heights.js +1 -1
- package/dist/controllers/virtualize-controller/virtualize-controller.d.ts +117 -3
- package/dist/controllers/virtualize-controller/virtualize-controller.js +134 -32
- package/dist/events/before-reorder.d.ts +14 -0
- package/dist/events/before-reorder.js +11 -0
- package/dist/events/details.d.ts +28 -0
- package/dist/events/events.d.ts +4 -2
- package/dist/events/events.js +3 -1
- package/dist/events/names.js +1 -1
- package/dist/events/reorder.d.ts +18 -12
- package/dist/events/reordered.d.ts +4 -4
- package/dist/helix-element/helix-element.d.ts +14 -5
- package/dist/helix-element/helix-element.js +6 -3
- package/dist/helix-element/react-audit-off.d.ts +11 -0
- package/dist/helix-element/react-audit-off.js +1 -0
- package/dist/helix-element/react-audit.d.ts +20 -0
- package/dist/helix-element/react-audit.js +56 -0
- package/dist/helix-element/react-bridge.d.ts +2 -22
- package/dist/helix-element/react-bridge.js +1 -56
- package/dist/index.d.ts +34 -14
- package/dist/index.js +32 -12
- package/dist/mixins/mixin-chart-source/mixin-chart-source.d.ts +7 -2
- package/dist/mixins/mixin-chart-source/mixin-chart-source.js +6 -0
- package/dist/mixins/mixin-collection/mixin-collection.js +4 -0
- package/dist/mixins/mixin-dismissible/mixin-dismissible.js +3 -0
- package/dist/mixins/mixin-field/mixin-field.js +1 -1
- package/dist/mixins/mixin-segmented-field/mixin-segmented-field.d.ts +12 -0
- package/dist/mixins/mixin-segmented-field/mixin-segmented-field.js +15 -2
- package/dist/mixins/mixin-tokens/mixin-tokens.d.ts +5 -0
- package/dist/mixins/mixin-tokens/mixin-tokens.js +13 -2
- package/dist/mixins/mixin-viewport/mixin-viewport.d.ts +17 -15
- package/dist/mixins/mixin-viewport/mixin-viewport.js +23 -41
- package/dist/utils/assign-slots/assign-slots.d.ts +18 -0
- package/dist/utils/assign-slots/assign-slots.js +14 -0
- package/dist/utils/autofill-select/autofill-select.d.ts +40 -0
- package/dist/utils/autofill-select/autofill-select.js +14 -0
- package/dist/utils/calendar/calendar.d.ts +27 -0
- package/dist/utils/calendar/calendar.js +17 -0
- package/dist/utils/center-in-view/center-in-view.d.ts +18 -0
- package/dist/utils/center-in-view/center-in-view.js +14 -0
- package/dist/utils/chord/key-names.d.ts +30 -0
- package/dist/utils/chord/key-names.js +52 -0
- package/dist/utils/column-step/column-step.d.ts +13 -0
- package/dist/utils/column-step/column-step.js +9 -0
- package/dist/utils/count-label/count-label.d.ts +7 -4
- package/dist/utils/count-label/count-label.js +2 -5
- package/dist/utils/data-options/data-options.d.ts +60 -0
- package/dist/utils/data-options/data-options.js +46 -0
- package/dist/utils/date-segments/date-segments.d.ts +2 -1
- package/dist/utils/date-segments/date-segments.js +10 -0
- package/dist/utils/draw-tooltip/draw-tooltip.d.ts +7 -2
- package/dist/utils/draw-tooltip/draw-tooltip.js +1 -1
- package/dist/utils/draw-tooltip/spoken-reading.d.ts +3 -2
- package/dist/utils/draw-tooltip/spoken-reading.js +3 -2
- package/dist/utils/export-parts/export-parts.d.ts +14 -0
- package/dist/utils/export-parts/export-parts.js +1 -0
- package/dist/utils/fill-template/fill-template.d.ts +9 -0
- package/dist/utils/fill-template/fill-template.js +3 -0
- package/dist/utils/filter-marks/filter-marks.d.ts +36 -0
- package/dist/utils/filter-marks/filter-marks.js +41 -0
- package/dist/utils/focus-target/focus-target.d.ts +12 -0
- package/dist/utils/focus-target/focus-target.js +9 -0
- package/dist/utils/focusable-elements/focusable-elements.d.ts +17 -0
- package/dist/utils/focusable-elements/focusable-elements.js +8 -0
- package/dist/utils/grid-move/grid-move.d.ts +56 -0
- package/dist/utils/grid-move/grid-move.js +28 -0
- package/dist/utils/locale-of/locale-of.d.ts +5 -0
- package/dist/utils/locale-of/locale-of.js +8 -2
- package/dist/utils/number-format/number-format.d.ts +7 -0
- package/dist/utils/number-format/number-format.js +1 -0
- package/dist/utils/reorder/drag-preview.d.ts +46 -0
- package/dist/utils/reorder/drag-preview.js +58 -0
- package/dist/utils/reorder/reorder.d.ts +178 -0
- package/dist/utils/reorder/reorder.js +112 -0
- package/dist/utils/report-runtime/report-runtime.d.ts +14 -5
- package/dist/utils/report-values/report-values.d.ts +16 -4
- package/dist/utils/report-values/report-values.js +2 -2
- package/dist/utils/request-change/request-change.d.ts +11 -0
- package/dist/utils/request-change/request-change.js +10 -0
- package/dist/utils/scroll-item-into-view/scroll-item-into-view.d.ts +17 -0
- package/dist/utils/scroll-item-into-view/scroll-item-into-view.js +1 -0
- package/dist/utils/slot-filled/slot-filled.d.ts +8 -0
- package/dist/utils/slot-filled/slot-filled.js +1 -0
- package/dist/utils/slotted-words/slotted-words.d.ts +3 -2
- package/dist/utils/slotted-words/slotted-words.js +3 -1
- package/dist/utils/toolbar-around/toolbar-around.d.ts +18 -0
- package/dist/utils/toolbar-around/toolbar-around.js +5 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/words/index.d.ts +3 -0
- package/dist/words/index.js +3 -0
- package/dist/words/message.d.ts +47 -0
- package/dist/words/message.js +152 -0
- package/dist/words/registry.d.ts +89 -0
- package/dist/words/registry.js +101 -0
- package/dist/words/words-locale.d.ts +34 -0
- package/dist/words/words-locale.js +30 -0
- package/dist/words/words.d.ts +52 -0
- package/dist/words/words.js +100 -0
- package/package.json +40 -25
|
@@ -1,26 +1,6 @@
|
|
|
1
1
|
import type { LitElement } from 'lit';
|
|
2
2
|
/** The props React is holding for a node, if React is holding any. */
|
|
3
3
|
export declare const reactPropsOf: (node: EventTarget) => Record<string, unknown> | undefined;
|
|
4
|
-
/**
|
|
5
|
-
* Says so when a handler prop is attached to nothing.
|
|
6
|
-
*
|
|
7
|
-
* **TypeScript will not catch any of this, and that is not our tooling's
|
|
8
|
-
* fault.** A JSX attribute whose name is not a valid identifier is exempt from
|
|
9
|
-
* checking on an intrinsic element, and every one of ours carries a hyphen. So
|
|
10
|
-
* `onhelix-opne` type-checks, `on:helix-open` type-checks, and a made-up
|
|
11
|
-
* `totally-invented` prop type-checks, all against fully generated types that
|
|
12
|
-
* do reject a wrong *value* on a normal attribute. Measured with `tsc`.
|
|
13
|
-
*
|
|
14
|
-
* That leaves runtime as the only place a typo can be caught, and React's props
|
|
15
|
-
* bag as the only place to look, which the binding above already reads. Once per
|
|
16
|
-
* element, because a warning that repeats on every keystroke is one a consumer
|
|
17
|
-
* silences.
|
|
18
|
-
*
|
|
19
|
-
* `on:helix-open` gets its own message because it is not a mistake so much as
|
|
20
|
-
* the wrong dialect. It is what the Solid types offer, correctly, and React
|
|
21
|
-
* binds it as an event named `:helix-open`.
|
|
22
|
-
*/
|
|
23
|
-
export declare const auditReactProps: (host: EventTarget, props: Record<string, unknown>) => void;
|
|
24
4
|
/**
|
|
25
5
|
* The prop React would be holding for this event, if it is holding one.
|
|
26
6
|
*
|
|
@@ -83,8 +63,8 @@ export declare const reactNativeProp: (type: string) => string;
|
|
|
83
63
|
*
|
|
84
64
|
* Called by the host as it dispatches, which is the first moment it knows the
|
|
85
65
|
* event's name. A host React does not render holds no props, and nothing is
|
|
86
|
-
* bound.
|
|
87
|
-
* warns.
|
|
66
|
+
* bound. In a development build the props are audited on the way, so a
|
|
67
|
+
* handler attached to nothing warns; see `react-audit.ts`.
|
|
88
68
|
*/
|
|
89
69
|
export declare const bindReactHandler: (host: EventTarget, event: Event) => void;
|
|
90
70
|
/**
|
|
@@ -1,6 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { helixEventNames } from '../events/names.js';
|
|
3
|
-
import { reportRuntime } from '../utils/report-runtime/report-runtime.js';
|
|
1
|
+
import { auditReactProps } from '@fusion.dev/helix-core/audits/react';
|
|
4
2
|
const REACT_PROPS = '__reactProps$';
|
|
5
3
|
let reactPropsKey;
|
|
6
4
|
export const reactPropsOf = (node) => {
|
|
@@ -15,59 +13,6 @@ export const reactPropsOf = (node) => {
|
|
|
15
13
|
reactPropsKey = found;
|
|
16
14
|
return stash[found];
|
|
17
15
|
};
|
|
18
|
-
const audited = new WeakSet();
|
|
19
|
-
const REMOVED = new Set(['onActiveChange', 'onCheckedChange', 'onOpenChange', 'onValueChange']);
|
|
20
|
-
export const auditReactProps = (host, props) => {
|
|
21
|
-
if (audited.has(host)) {
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
audited.add(host);
|
|
25
|
-
const tag = host instanceof Element ? `<${host.localName}>` : 'A Helix element';
|
|
26
|
-
const element = host instanceof Element ? host.localName : undefined;
|
|
27
|
-
for (const key of Object.keys(props)) {
|
|
28
|
-
if (key.startsWith('on:')) {
|
|
29
|
-
reportRuntime({
|
|
30
|
-
kind: 'solid-handler-syntax',
|
|
31
|
-
message: `${tag} was given \`${key}\`, which is Solid's syntax. React binds the name after \`on\` ` +
|
|
32
|
-
`verbatim, so this listens for an event called \`${key.slice(2)}\`. Write \`on${key.slice(3)}\`.`,
|
|
33
|
-
tag: element,
|
|
34
|
-
});
|
|
35
|
-
continue;
|
|
36
|
-
}
|
|
37
|
-
if (REMOVED.has(key)) {
|
|
38
|
-
reportRuntime({
|
|
39
|
-
kind: 'removed-callback',
|
|
40
|
-
message: `${tag} was given \`${key}\`, which was removed. It never worked from JSX, because React ` +
|
|
41
|
-
`binds any \`on\` prop as an event of that name. Listen for the element's change event instead.`,
|
|
42
|
-
tag: element,
|
|
43
|
-
});
|
|
44
|
-
continue;
|
|
45
|
-
}
|
|
46
|
-
if (!key.startsWith('on') || !key.includes('-')) {
|
|
47
|
-
continue;
|
|
48
|
-
}
|
|
49
|
-
const name = key.slice(2);
|
|
50
|
-
if (!helixEventNames.has(name)) {
|
|
51
|
-
reportRuntime({
|
|
52
|
-
kind: 'unknown-event',
|
|
53
|
-
message: `${tag} was given \`${key}\`, and nothing dispatches \`${name}\`. TypeScript cannot ` +
|
|
54
|
-
`check a hyphenated JSX prop, so this is the only place it shows up.`,
|
|
55
|
-
tag: element,
|
|
56
|
-
});
|
|
57
|
-
continue;
|
|
58
|
-
}
|
|
59
|
-
const mine = host instanceof Element ? eventsForTag(host.localName) : undefined;
|
|
60
|
-
if (mine && !mine.has(name)) {
|
|
61
|
-
reportRuntime({
|
|
62
|
-
kind: 'misplaced-handler',
|
|
63
|
-
message: `${tag} was given \`${key}\`, but it dispatches ${[...mine].map((one) => `\`${one}\``).join(', ')}. ` +
|
|
64
|
-
`\`${name}\` is sent by a different element, and React only wires an \`on\` prop on the ` +
|
|
65
|
-
'element that dispatches, so this handler will never run. Put it on that element.',
|
|
66
|
-
tag: element,
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
16
|
const REACT_WIRES = new Set(['scroll', 'scrollend']);
|
|
72
17
|
export const reactPropFor = (event) => {
|
|
73
18
|
if (event.type.includes('-')) {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { auditName } from '
|
|
1
|
+
export { auditName } from '@fusion.dev/helix-core/audits/name';
|
|
2
2
|
export { AriaForwardController, type AriaForwardOptions, } from './controllers/aria-forward-controller/aria-forward-controller.js';
|
|
3
3
|
export { ArrivalController, type ArrivalOptions, } from './controllers/arrival-controller/arrival-controller.js';
|
|
4
4
|
export { ChartPointerController, type ChartPointerHost, } from './controllers/chart-pointer-controller/chart-pointer-controller.js';
|
|
5
|
+
export { ChildrenController } from './controllers/children-controller/children-controller.js';
|
|
5
6
|
export { CommandController, type CommandOptions, HelixFallbackCommandEvent, supportsInvokers, } from './controllers/command-controller/command-controller.js';
|
|
6
7
|
export { CopyController, type CopyOptions, } from './controllers/copy-controller/copy-controller.js';
|
|
7
8
|
export { CountdownController, type CountdownOptions, } from './controllers/countdown-controller/countdown-controller.js';
|
|
@@ -16,21 +17,23 @@ export { FullscreenController } from './controllers/fullscreen-controller/fullsc
|
|
|
16
17
|
export { HostClickController } from './controllers/host-click-controller/host-click-controller.js';
|
|
17
18
|
export { IdleController } from './controllers/idle-controller/idle-controller.js';
|
|
18
19
|
export { IndicatorController, type IndicatorOptions, } from './controllers/indicator-controller/indicator-controller.js';
|
|
19
|
-
export { KeyboardNavigationController, type KeyboardNavigationOptions, type KeyboardOrigin, type NavigableItem, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
|
|
20
|
+
export { type FocusItemOptions, focusItemOf, KeyboardNavigationController, type KeyboardNavigationOptions, type KeyboardOrigin, type NavigableItem, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
|
|
20
21
|
export { MediaSessionController, type SessionHandlers, SKIP_SECONDS, } from './controllers/media-session-controller/media-session-controller.js';
|
|
21
|
-
export { animationsSettled, type OpenPhase, OpenPhaseController, type OpenPhaseOptions, } from './controllers/open-phase-controller/open-phase-controller.js';
|
|
22
|
+
export { animationsFinished, animationsSettled, type OpenPhase, OpenPhaseController, type OpenPhaseOptions, } from './controllers/open-phase-controller/open-phase-controller.js';
|
|
23
|
+
export { OptionWindowController, type OptionWindowOptions, } from './controllers/option-window-controller/option-window-controller.js';
|
|
22
24
|
export { MAX_FRAME_STEP, PaintGateController, type PaintGateOptions, } from './controllers/paint-gate-controller/paint-gate-controller.js';
|
|
23
25
|
export { PlacementController } from './controllers/placement-controller/placement-controller.js';
|
|
24
26
|
export { PopoverController, type PopoverOptions, } from './controllers/popover-controller/popover-controller.js';
|
|
25
27
|
export { RelativeClockController, type RelativeClockOptions, } from './controllers/relative-clock-controller/relative-clock-controller.js';
|
|
26
28
|
export { RemotePlaybackController, type RemoteReport, } from './controllers/remote-playback-controller/remote-playback-controller.js';
|
|
29
|
+
export { ReorderController, type ReorderMove, type ReorderOptions, type ReorderWords, requestReorder, } from './controllers/reorder-controller/reorder-controller.js';
|
|
27
30
|
export { SourceController, type SourceHost, } from './controllers/source-controller/source-controller.js';
|
|
28
31
|
export { drawStatus, type SayOptions, StatusController, } from './controllers/status-controller/status-controller.js';
|
|
29
32
|
export { SwipeController, type SwipeOptions, } from './controllers/swipe-controller/swipe-controller.js';
|
|
30
33
|
export { type TokenColor, TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
|
|
31
34
|
export { type Rendered, VirtualizeController, type VirtualizeOptions, type Window as VirtualizeWindow, } from './controllers/virtualize-controller/virtualize-controller.js';
|
|
32
35
|
export { eventsForTag, registerElementEvents } from './events/element-events.js';
|
|
33
|
-
export { type ActivateDetail, type AuraFallbackDetail, type BandDetail, type CanvasView, type CaretDetail, type ChangeDetail, type CompleteDetail, type ConnectDetail, type ConsoleDetail, type CopyDetail, type CreateDetail, type DismissDetail, type FacetDetail, type FilterDetail, type GraphFilterDetail, type GraphLayoutDetail, type GraphPartChangeDetail, type GraphSignalDetail, HelixActionEvent, HelixActivateEvent, HelixAuraFallbackEvent, HelixBandEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixClearEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyErrorEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixEditEvent, HelixEndEvent, HelixExpandEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixLoadEvent, HelixLoadMoreEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPanelResizeEvent, HelixPinEvent, HelixPressEvent, HelixPreviewEvent, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTourStatusEvent, HelixTypingEvent, type MapClusterDetail, type MapPanDetail, type MapPartChangeDetail, type MapRotateDetail, type MapTiltDetail, type MapZoomDetail, type MoveDetail, type NavigateDetail, type OpenDetail, type PressDetail, type PressPointerType, type RangeDetail, type ReadDetail, type ReconnectDetail, type Refusal, type RefusedFile, type RejectDetail, type RelabelDetail, type RemoveDetail, type ResizeDetail, type ScrolledDetail, type SelectDetail, type SendDetail, type ShortcutDetail, type SkipDetail, type SortDetail, type ToggleDetail, type TourStatusDetail, type TypingDetail, type ViewportPanDetail, type ViewportZoomDetail, } from './events/events.js';
|
|
36
|
+
export { type ActivateDetail, type AuraFallbackDetail, type BandDetail, type CanvasView, type CaretDetail, type ChangeDetail, type CompleteDetail, type ConnectDetail, type ConsoleDetail, type CopyDetail, type CreateDetail, type DismissDetail, type FacetDetail, type FilterDetail, type GraphFilterDetail, type GraphLayoutDetail, type GraphPartChangeDetail, type GraphSignalDetail, HelixActionEvent, HelixActivateEvent, HelixAuraFallbackEvent, HelixBandEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeReorderEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixClearEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyErrorEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixEditEvent, HelixEndEvent, HelixExpandEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixLoadEvent, HelixLoadMoreEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPanelResizeEvent, HelixPinEvent, HelixPressEvent, HelixPreviewEvent, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTourStatusEvent, HelixTypingEvent, type MapClusterDetail, type MapPanDetail, type MapPartChangeDetail, type MapRotateDetail, type MapTiltDetail, type MapZoomDetail, type MoveDetail, type NavigateDetail, type OpenDetail, type PressDetail, type PressPointerType, type RangeDetail, type ReadDetail, type ReconnectDetail, type Refusal, type RefusedFile, type RejectDetail, type RelabelDetail, type RemoveDetail, type ReorderDetail, type ResizeDetail, type ScrolledDetail, type SelectDetail, type SendDetail, type ShortcutDetail, type SkipDetail, type SortDetail, type ToggleDetail, type TourStatusDetail, type TypingDetail, type ViewportPanDetail, type ViewportZoomDetail, } from './events/events.js';
|
|
34
37
|
export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
|
|
35
38
|
export { HelixFormElement } from './helix-form-element/helix-form-element.js';
|
|
36
39
|
export { MixinChartSource, type MixinChartSourceInterface, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, POSITION_LABEL, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
|
|
@@ -50,27 +53,37 @@ export { MixinTokens, type MixinTokensInterface } from './mixins/mixin-tokens/mi
|
|
|
50
53
|
export { MixinViewport, type ViewportControlsPlacement, type ViewportElement, type ViewportGestureLabels, type ViewportGestureMode, type ViewportGestures, type ViewportWay, } from './mixins/mixin-viewport/mixin-viewport.js';
|
|
51
54
|
export { anchorElement } from './utils/anchor-element/anchor-element.js';
|
|
52
55
|
export { arrowReach, sideOf } from './utils/arrow/arrow.js';
|
|
53
|
-
export {
|
|
56
|
+
export { assignSlots } from './utils/assign-slots/assign-slots.js';
|
|
57
|
+
export { type DrawAutofillOptions, drawAutofill, } from './utils/autofill-select/autofill-select.js';
|
|
58
|
+
export { addDays, addMonths, type Barring, barredBy, type CalendarView, calendarLocale, type DateCalendar, localToday, monthOf, monthOut, type PeriodCell, type PeriodPage, periodCells, periodKey, periodMove, sameMonth, weekStartOf, YEARS_SHOWN, yearOut, yearPageOf, } from './utils/calendar/calendar.js';
|
|
54
59
|
export { capturePointer } from './utils/capture-pointer/capture-pointer.js';
|
|
60
|
+
export { centerInView } from './utils/center-in-view/center-in-view.js';
|
|
55
61
|
export { ariaChord, type ChordPress, chordParts, matchesChord, printableChord, selectsAll, } from './utils/chord/chord.js';
|
|
62
|
+
export { type KeyNames, keyNames } from './utils/chord/key-names.js';
|
|
56
63
|
export { clamp } from './utils/clamp/clamp.js';
|
|
57
64
|
export { clockLocale, dayPeriod, type HourCycle, isTwelveHour, nearestTime, offeredTimes, type TimeFault, type TimeRules, timeBarred, timeFault, wheelParts, wholeHour, } from './utils/clock/clock.js';
|
|
58
65
|
export { closestInstance } from './utils/closest-instance/closest-instance.js';
|
|
59
66
|
export { type ColorWords, colorName, hueName } from './utils/color-name/color-name.js';
|
|
67
|
+
export { columnStep } from './utils/column-step/column-step.js';
|
|
60
68
|
export { countLabel } from './utils/count-label/count-label.js';
|
|
61
69
|
export { createSheet } from './utils/create-sheet/create-sheet.js';
|
|
62
70
|
export { type Color, type ColorFormat, formatColor, parseColor, toCss, toHsl, toRgb, } from './utils/css-color/css-color.js';
|
|
63
71
|
export { customElement, definedTags, duplicateRegistrations, } from './utils/custom-element/custom-element.js';
|
|
72
|
+
export { type DataOption, type DataOptionItem, dataOptions, drawOptions, windowOf, } from './utils/data-options/data-options.js';
|
|
64
73
|
export { segmentName } from './utils/date-segments/date-segments.js';
|
|
65
74
|
export { type DrawDismissOptions, drawDismiss, drawDismissGlyph, } from './utils/draw-dismiss/draw-dismiss.js';
|
|
66
75
|
export { type DrawIconOptions, drawIcon } from './utils/draw-icon/draw-icon.js';
|
|
67
|
-
export { CHART_PLOT, drawTooltip } from './utils/draw-tooltip/draw-tooltip.js';
|
|
76
|
+
export { CHART_PLOT, drawTooltip, type ReadingCursor } from './utils/draw-tooltip/draw-tooltip.js';
|
|
68
77
|
export { elapsedTime } from './utils/elapsed-time/elapsed-time.js';
|
|
69
78
|
export { type ElementByIdOptions, elementById, searchableById, } from './utils/element-by-id/element-by-id.js';
|
|
70
|
-
export {
|
|
71
|
-
export {
|
|
79
|
+
export { exportParts } from './utils/export-parts/export-parts.js';
|
|
80
|
+
export { fillTemplate, labelWith } from './utils/fill-template/fill-template.js';
|
|
81
|
+
export { FILTER_MARK, markMatches, rangeOf } from './utils/filter-marks/filter-marks.js';
|
|
82
|
+
export { focusTarget } from './utils/focus-target/focus-target.js';
|
|
83
|
+
export { deepActiveElement, deepContains, focusableElements, PRESSABLE, pressedOwnControl, } from './utils/focusable-elements/focusable-elements.js';
|
|
72
84
|
export { afterLinkFollowed, followLink, type LinkModifiers, type LinkTarget, } from './utils/follow-link/follow-link.js';
|
|
73
85
|
export { formatNumbers } from './utils/format-numbers/format-numbers.js';
|
|
86
|
+
export { type GridBounds, type GridKeys, type GridPlace, gridMove, pageRows, } from './utils/grid-move/grid-move.js';
|
|
74
87
|
export { headingIn, headingsIn } from './utils/heading-in/heading-in.js';
|
|
75
88
|
export { headingLevel } from './utils/heading-level/heading-level.js';
|
|
76
89
|
export { type HostAria, hostAria } from './utils/host-aria/host-aria.js';
|
|
@@ -82,12 +95,12 @@ export { isRtl } from './utils/is-rtl/is-rtl.js';
|
|
|
82
95
|
export { keyClaimed } from './utils/key-claimed/key-claimed.js';
|
|
83
96
|
export { type Curve, linePath, type Point } from './utils/line-path/line-path.js';
|
|
84
97
|
export { type EndInSight, endInSight } from './utils/load-more/load-more.js';
|
|
85
|
-
export { localeOf } from './utils/locale-of/locale-of.js';
|
|
98
|
+
export { localeOf, runtimeLocale } from './utils/locale-of/locale-of.js';
|
|
86
99
|
export { markRegion, type RegionOptions } from './utils/mark-region/mark-region.js';
|
|
87
100
|
export { copiesOf, type MediaCopy, sameCopies, } from './utils/media-copy/media-copy.js';
|
|
88
101
|
export { nameText } from './utils/name-text/name-text.js';
|
|
89
102
|
export { nearest } from './utils/nearest/nearest.js';
|
|
90
|
-
export { formatNumber, parseNumber, readingText } from './utils/number-format/number-format.js';
|
|
103
|
+
export { formatNumber, formatPercent, parseNumber, readingText, } from './utils/number-format/number-format.js';
|
|
91
104
|
export { onUnlessFalse } from './utils/on-unless-false/on-unless-false.js';
|
|
92
105
|
export { applyOwnRule, type OwnRule } from './utils/own-rule/own-rule.js';
|
|
93
106
|
export { plainClick } from './utils/plain-click/plain-click.js';
|
|
@@ -98,11 +111,12 @@ export { type ColorBytes, readColor, rgbOf } from './utils/read-color/read-color
|
|
|
98
111
|
export { byRow, type Extremes, extremesOf, type Row, type RowCell, readRows, readSeries, type Series, type SeriesPoint, seriesKey, unbroken, } from './utils/read-series/read-series.js';
|
|
99
112
|
export { type ElementsProperty, linkDescription, reflectElements, unlinkDescription, } from './utils/reflect-elements/reflect-elements.js';
|
|
100
113
|
export { type Relative, type RelativeOptions, relativeTime, } from './utils/relative-time/relative-time.js';
|
|
114
|
+
export { centersOf, dropMark, edgeSpeed, passedCount, placeKey, type ReorderAxis, type ReorderHold, type ReorderInput, type ReorderState, reorderKey, reorderStep, } from './utils/reorder/reorder.js';
|
|
101
115
|
export { measuring, RENDER_SLOT, reportRender } from './utils/report-render/report-render.js';
|
|
102
116
|
export { RUNTIME_LOG, RUNTIME_SLOT, type RuntimeEvent, type RuntimeKind, reportRuntime, } from './utils/report-runtime/report-runtime.js';
|
|
103
117
|
export { noteVersion, reportUsage, USAGE_SLOT, VERSIONS_SLOT, } from './utils/report-usage/report-usage.js';
|
|
104
|
-
export { reportValues } from './utils/report-values/report-values.js';
|
|
105
|
-
export { type ChangeRequestOptions, requestChange, } from './utils/request-change/request-change.js';
|
|
118
|
+
export { type ReportValuesOptions, reportValues } from './utils/report-values/report-values.js';
|
|
119
|
+
export { type ChangeRequestOptions, requestChange, requestValue, } from './utils/request-change/request-change.js';
|
|
106
120
|
export { type ActivatableItem, resolveActiveItem, } from './utils/resolve-active-item/resolve-active-item.js';
|
|
107
121
|
export { holdCaret, restoreValue } from './utils/restore-value/restore-value.js';
|
|
108
122
|
export { type RovingOptions, rovingStop } from './utils/roving-stop/roving-stop.js';
|
|
@@ -110,9 +124,9 @@ export { valueAt } from './utils/row-data/row-data.js';
|
|
|
110
124
|
export { type Arranged, type Axis, arranged, cycle, type DataRow, filter, format, type Ordered, ordered, parse, type Sort, sort, window_, } from './utils/row-order/row-order.js';
|
|
111
125
|
export { extent, linear, type Scale } from './utils/scale/scale.js';
|
|
112
126
|
export { ticks } from './utils/scale/ticks.js';
|
|
113
|
-
export { type ScrollerOptions, type ScrollItemOptions, scrollItemIntoView, scrollingAncestor, } from './utils/scroll-item-into-view/scroll-item-into-view.js';
|
|
127
|
+
export { type ScrollerOptions, type ScrollItemOptions, type ScrollRoomOptions, scrollItemIntoView, scrollingAncestor, scrollRoom, } from './utils/scroll-item-into-view/scroll-item-into-view.js';
|
|
114
128
|
export { lockScroll, scrollHolders, unlockScroll } from './utils/scroll-lock/scroll-lock.js';
|
|
115
|
-
export { slotFilled } from './utils/slot-filled/slot-filled.js';
|
|
129
|
+
export { slotFilled, slotNamed } from './utils/slot-filled/slot-filled.js';
|
|
116
130
|
export { SlottedGlyph } from './utils/slotted-glyph/slotted-glyph.js';
|
|
117
131
|
export { slottedWords } from './utils/slotted-words/slotted-words.js';
|
|
118
132
|
export { splitValues } from './utils/split-values/split-values.js';
|
|
@@ -120,11 +134,17 @@ export { edgeOffset, FLING, parseSnapPoints, type SwipeAxis, type SwipeEdge, typ
|
|
|
120
134
|
export { tellDisclosure } from './utils/tell-disclosure/tell-disclosure.js';
|
|
121
135
|
export { subscribe } from './utils/ticker/ticker.js';
|
|
122
136
|
export { type HelixStatusTone, TONE_MARKS, type ToneMark, toneMark, } from './utils/tone-marks/tone-marks.js';
|
|
137
|
+
export { toolbarAround, toolbarAxis } from './utils/toolbar-around/toolbar-around.js';
|
|
123
138
|
export { type TreeArrow, type TreeArrowRow, treeArrow } from './utils/tree-arrow/tree-arrow.js';
|
|
124
139
|
export { Typeahead, type TypeaheadBy, typeaheadBy, typeaheadByWords, typesCharacter, } from './utils/typeahead/typeahead.js';
|
|
125
140
|
export { dateAsValue, isClockValue, isDateValue, isTimeValue, minutesAsValue, numberAsValue, secondsAsValue, timeAsValue, valueAsDate, valueAsMinutes, valueAsNumber, valueAsSeconds, valueAsTime, } from './utils/value-as/value-as.js';
|
|
141
|
+
export { type PickerVerdict, verdictFlags } from './utils/verdict-flags/verdict-flags.js';
|
|
126
142
|
export { watchTheme } from './utils/watch-theme/watch-theme.js';
|
|
127
143
|
export { wordsConverter } from './utils/words-converter/words-converter.js';
|
|
128
144
|
export { writeClock, writeTime } from './utils/write-time/write-time.js';
|
|
129
145
|
export { anchorAt, commaList, everyState, inRowOrder, pressedValue, prunedValue, type SelectionMode, toggleEvery, toggleValue, writtenList, writtenNumbers, } from './utils/written-list/written-list.js';
|
|
130
146
|
export { VERSION } from './version.js';
|
|
147
|
+
export { formatMessage, type Message, type MessageOptions, type MessageTable, type MessageValues, } from './words/message.js';
|
|
148
|
+
export { clearWords, type HelixWords, localeChain, refreshWords, registerWords, setDefaultWordsLocale, type Words, } from './words/registry.js';
|
|
149
|
+
export { formatWords, words } from './words/words.js';
|
|
150
|
+
export { handedLocale, wordsLocale } from './words/words-locale.js';
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { auditName } from '
|
|
1
|
+
export { auditName } from '@fusion.dev/helix-core/audits/name';
|
|
2
2
|
export { AriaForwardController, } from './controllers/aria-forward-controller/aria-forward-controller.js';
|
|
3
3
|
export { ArrivalController, } from './controllers/arrival-controller/arrival-controller.js';
|
|
4
4
|
export { ChartPointerController, } from './controllers/chart-pointer-controller/chart-pointer-controller.js';
|
|
5
|
+
export { ChildrenController } from './controllers/children-controller/children-controller.js';
|
|
5
6
|
export { CommandController, HelixFallbackCommandEvent, supportsInvokers, } from './controllers/command-controller/command-controller.js';
|
|
6
7
|
export { CopyController, } from './controllers/copy-controller/copy-controller.js';
|
|
7
8
|
export { CountdownController, } from './controllers/countdown-controller/countdown-controller.js';
|
|
@@ -16,21 +17,23 @@ export { FullscreenController } from './controllers/fullscreen-controller/fullsc
|
|
|
16
17
|
export { HostClickController } from './controllers/host-click-controller/host-click-controller.js';
|
|
17
18
|
export { IdleController } from './controllers/idle-controller/idle-controller.js';
|
|
18
19
|
export { IndicatorController, } from './controllers/indicator-controller/indicator-controller.js';
|
|
19
|
-
export { KeyboardNavigationController, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
|
|
20
|
+
export { focusItemOf, KeyboardNavigationController, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
|
|
20
21
|
export { MediaSessionController, SKIP_SECONDS, } from './controllers/media-session-controller/media-session-controller.js';
|
|
21
|
-
export { animationsSettled, OpenPhaseController, } from './controllers/open-phase-controller/open-phase-controller.js';
|
|
22
|
+
export { animationsFinished, animationsSettled, OpenPhaseController, } from './controllers/open-phase-controller/open-phase-controller.js';
|
|
23
|
+
export { OptionWindowController, } from './controllers/option-window-controller/option-window-controller.js';
|
|
22
24
|
export { MAX_FRAME_STEP, PaintGateController, } from './controllers/paint-gate-controller/paint-gate-controller.js';
|
|
23
25
|
export { PlacementController } from './controllers/placement-controller/placement-controller.js';
|
|
24
26
|
export { PopoverController, } from './controllers/popover-controller/popover-controller.js';
|
|
25
27
|
export { RelativeClockController, } from './controllers/relative-clock-controller/relative-clock-controller.js';
|
|
26
28
|
export { RemotePlaybackController, } from './controllers/remote-playback-controller/remote-playback-controller.js';
|
|
29
|
+
export { ReorderController, requestReorder, } from './controllers/reorder-controller/reorder-controller.js';
|
|
27
30
|
export { SourceController, } from './controllers/source-controller/source-controller.js';
|
|
28
31
|
export { drawStatus, StatusController, } from './controllers/status-controller/status-controller.js';
|
|
29
32
|
export { SwipeController, } from './controllers/swipe-controller/swipe-controller.js';
|
|
30
33
|
export { TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
|
|
31
34
|
export { VirtualizeController, } from './controllers/virtualize-controller/virtualize-controller.js';
|
|
32
35
|
export { eventsForTag, registerElementEvents } from './events/element-events.js';
|
|
33
|
-
export { HelixActionEvent, HelixActivateEvent, HelixAuraFallbackEvent, HelixBandEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixClearEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyErrorEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixEditEvent, HelixEndEvent, HelixExpandEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixLoadEvent, HelixLoadMoreEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPanelResizeEvent, HelixPinEvent, HelixPressEvent, HelixPreviewEvent, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTourStatusEvent, HelixTypingEvent, } from './events/events.js';
|
|
36
|
+
export { HelixActionEvent, HelixActivateEvent, HelixAuraFallbackEvent, HelixBandEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeReorderEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixClearEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyErrorEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixEditEvent, HelixEndEvent, HelixExpandEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixLoadEvent, HelixLoadMoreEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPanelResizeEvent, HelixPinEvent, HelixPressEvent, HelixPreviewEvent, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTourStatusEvent, HelixTypingEvent, } from './events/events.js';
|
|
34
37
|
export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
|
|
35
38
|
export { HelixFormElement } from './helix-form-element/helix-form-element.js';
|
|
36
39
|
export { MixinChartSource, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, POSITION_LABEL, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
|
|
@@ -50,27 +53,37 @@ export { MixinTokens } from './mixins/mixin-tokens/mixin-tokens.js';
|
|
|
50
53
|
export { MixinViewport, } from './mixins/mixin-viewport/mixin-viewport.js';
|
|
51
54
|
export { anchorElement } from './utils/anchor-element/anchor-element.js';
|
|
52
55
|
export { arrowReach, sideOf } from './utils/arrow/arrow.js';
|
|
53
|
-
export {
|
|
56
|
+
export { assignSlots } from './utils/assign-slots/assign-slots.js';
|
|
57
|
+
export { drawAutofill, } from './utils/autofill-select/autofill-select.js';
|
|
58
|
+
export { addDays, addMonths, barredBy, calendarLocale, localToday, monthOf, monthOut, periodCells, periodKey, periodMove, sameMonth, weekStartOf, YEARS_SHOWN, yearOut, yearPageOf, } from './utils/calendar/calendar.js';
|
|
54
59
|
export { capturePointer } from './utils/capture-pointer/capture-pointer.js';
|
|
60
|
+
export { centerInView } from './utils/center-in-view/center-in-view.js';
|
|
55
61
|
export { ariaChord, chordParts, matchesChord, printableChord, selectsAll, } from './utils/chord/chord.js';
|
|
62
|
+
export { keyNames } from './utils/chord/key-names.js';
|
|
56
63
|
export { clamp } from './utils/clamp/clamp.js';
|
|
57
64
|
export { clockLocale, dayPeriod, isTwelveHour, nearestTime, offeredTimes, timeBarred, timeFault, wheelParts, wholeHour, } from './utils/clock/clock.js';
|
|
58
65
|
export { closestInstance } from './utils/closest-instance/closest-instance.js';
|
|
59
66
|
export { colorName, hueName } from './utils/color-name/color-name.js';
|
|
67
|
+
export { columnStep } from './utils/column-step/column-step.js';
|
|
60
68
|
export { countLabel } from './utils/count-label/count-label.js';
|
|
61
69
|
export { createSheet } from './utils/create-sheet/create-sheet.js';
|
|
62
70
|
export { formatColor, parseColor, toCss, toHsl, toRgb, } from './utils/css-color/css-color.js';
|
|
63
71
|
export { customElement, definedTags, duplicateRegistrations, } from './utils/custom-element/custom-element.js';
|
|
72
|
+
export { dataOptions, drawOptions, windowOf, } from './utils/data-options/data-options.js';
|
|
64
73
|
export { segmentName } from './utils/date-segments/date-segments.js';
|
|
65
74
|
export { drawDismiss, drawDismissGlyph, } from './utils/draw-dismiss/draw-dismiss.js';
|
|
66
75
|
export { drawIcon } from './utils/draw-icon/draw-icon.js';
|
|
67
76
|
export { CHART_PLOT, drawTooltip } from './utils/draw-tooltip/draw-tooltip.js';
|
|
68
77
|
export { elapsedTime } from './utils/elapsed-time/elapsed-time.js';
|
|
69
78
|
export { elementById, searchableById, } from './utils/element-by-id/element-by-id.js';
|
|
70
|
-
export {
|
|
71
|
-
export {
|
|
79
|
+
export { exportParts } from './utils/export-parts/export-parts.js';
|
|
80
|
+
export { fillTemplate, labelWith } from './utils/fill-template/fill-template.js';
|
|
81
|
+
export { FILTER_MARK, markMatches, rangeOf } from './utils/filter-marks/filter-marks.js';
|
|
82
|
+
export { focusTarget } from './utils/focus-target/focus-target.js';
|
|
83
|
+
export { deepActiveElement, deepContains, focusableElements, PRESSABLE, pressedOwnControl, } from './utils/focusable-elements/focusable-elements.js';
|
|
72
84
|
export { afterLinkFollowed, followLink, } from './utils/follow-link/follow-link.js';
|
|
73
85
|
export { formatNumbers } from './utils/format-numbers/format-numbers.js';
|
|
86
|
+
export { gridMove, pageRows, } from './utils/grid-move/grid-move.js';
|
|
74
87
|
export { headingIn, headingsIn } from './utils/heading-in/heading-in.js';
|
|
75
88
|
export { headingLevel } from './utils/heading-level/heading-level.js';
|
|
76
89
|
export { hostAria } from './utils/host-aria/host-aria.js';
|
|
@@ -82,12 +95,12 @@ export { isRtl } from './utils/is-rtl/is-rtl.js';
|
|
|
82
95
|
export { keyClaimed } from './utils/key-claimed/key-claimed.js';
|
|
83
96
|
export { linePath } from './utils/line-path/line-path.js';
|
|
84
97
|
export { endInSight } from './utils/load-more/load-more.js';
|
|
85
|
-
export { localeOf } from './utils/locale-of/locale-of.js';
|
|
98
|
+
export { localeOf, runtimeLocale } from './utils/locale-of/locale-of.js';
|
|
86
99
|
export { markRegion } from './utils/mark-region/mark-region.js';
|
|
87
100
|
export { copiesOf, sameCopies, } from './utils/media-copy/media-copy.js';
|
|
88
101
|
export { nameText } from './utils/name-text/name-text.js';
|
|
89
102
|
export { nearest } from './utils/nearest/nearest.js';
|
|
90
|
-
export { formatNumber, parseNumber, readingText } from './utils/number-format/number-format.js';
|
|
103
|
+
export { formatNumber, formatPercent, parseNumber, readingText, } from './utils/number-format/number-format.js';
|
|
91
104
|
export { onUnlessFalse } from './utils/on-unless-false/on-unless-false.js';
|
|
92
105
|
export { applyOwnRule } from './utils/own-rule/own-rule.js';
|
|
93
106
|
export { plainClick } from './utils/plain-click/plain-click.js';
|
|
@@ -98,11 +111,12 @@ export { readColor, rgbOf } from './utils/read-color/read-color.js';
|
|
|
98
111
|
export { byRow, extremesOf, readRows, readSeries, seriesKey, unbroken, } from './utils/read-series/read-series.js';
|
|
99
112
|
export { linkDescription, reflectElements, unlinkDescription, } from './utils/reflect-elements/reflect-elements.js';
|
|
100
113
|
export { relativeTime, } from './utils/relative-time/relative-time.js';
|
|
114
|
+
export { centersOf, dropMark, edgeSpeed, passedCount, placeKey, reorderKey, reorderStep, } from './utils/reorder/reorder.js';
|
|
101
115
|
export { measuring, RENDER_SLOT, reportRender } from './utils/report-render/report-render.js';
|
|
102
116
|
export { RUNTIME_LOG, RUNTIME_SLOT, reportRuntime, } from './utils/report-runtime/report-runtime.js';
|
|
103
117
|
export { noteVersion, reportUsage, USAGE_SLOT, VERSIONS_SLOT, } from './utils/report-usage/report-usage.js';
|
|
104
118
|
export { reportValues } from './utils/report-values/report-values.js';
|
|
105
|
-
export { requestChange, } from './utils/request-change/request-change.js';
|
|
119
|
+
export { requestChange, requestValue, } from './utils/request-change/request-change.js';
|
|
106
120
|
export { resolveActiveItem, } from './utils/resolve-active-item/resolve-active-item.js';
|
|
107
121
|
export { holdCaret, restoreValue } from './utils/restore-value/restore-value.js';
|
|
108
122
|
export { rovingStop } from './utils/roving-stop/roving-stop.js';
|
|
@@ -110,9 +124,9 @@ export { valueAt } from './utils/row-data/row-data.js';
|
|
|
110
124
|
export { arranged, cycle, filter, format, ordered, parse, sort, window_, } from './utils/row-order/row-order.js';
|
|
111
125
|
export { extent, linear } from './utils/scale/scale.js';
|
|
112
126
|
export { ticks } from './utils/scale/ticks.js';
|
|
113
|
-
export { scrollItemIntoView, scrollingAncestor, } from './utils/scroll-item-into-view/scroll-item-into-view.js';
|
|
127
|
+
export { scrollItemIntoView, scrollingAncestor, scrollRoom, } from './utils/scroll-item-into-view/scroll-item-into-view.js';
|
|
114
128
|
export { lockScroll, scrollHolders, unlockScroll } from './utils/scroll-lock/scroll-lock.js';
|
|
115
|
-
export { slotFilled } from './utils/slot-filled/slot-filled.js';
|
|
129
|
+
export { slotFilled, slotNamed } from './utils/slot-filled/slot-filled.js';
|
|
116
130
|
export { SlottedGlyph } from './utils/slotted-glyph/slotted-glyph.js';
|
|
117
131
|
export { slottedWords } from './utils/slotted-words/slotted-words.js';
|
|
118
132
|
export { splitValues } from './utils/split-values/split-values.js';
|
|
@@ -120,11 +134,17 @@ export { edgeOffset, FLING, parseSnapPoints, settleSwipe, snapTravel, swipeAxis,
|
|
|
120
134
|
export { tellDisclosure } from './utils/tell-disclosure/tell-disclosure.js';
|
|
121
135
|
export { subscribe } from './utils/ticker/ticker.js';
|
|
122
136
|
export { TONE_MARKS, toneMark, } from './utils/tone-marks/tone-marks.js';
|
|
137
|
+
export { toolbarAround, toolbarAxis } from './utils/toolbar-around/toolbar-around.js';
|
|
123
138
|
export { treeArrow } from './utils/tree-arrow/tree-arrow.js';
|
|
124
139
|
export { Typeahead, typeaheadBy, typeaheadByWords, typesCharacter, } from './utils/typeahead/typeahead.js';
|
|
125
140
|
export { dateAsValue, isClockValue, isDateValue, isTimeValue, minutesAsValue, numberAsValue, secondsAsValue, timeAsValue, valueAsDate, valueAsMinutes, valueAsNumber, valueAsSeconds, valueAsTime, } from './utils/value-as/value-as.js';
|
|
141
|
+
export { verdictFlags } from './utils/verdict-flags/verdict-flags.js';
|
|
126
142
|
export { watchTheme } from './utils/watch-theme/watch-theme.js';
|
|
127
143
|
export { wordsConverter } from './utils/words-converter/words-converter.js';
|
|
128
144
|
export { writeClock, writeTime } from './utils/write-time/write-time.js';
|
|
129
145
|
export { anchorAt, commaList, everyState, inRowOrder, pressedValue, prunedValue, toggleEvery, toggleValue, writtenList, writtenNumbers, } from './utils/written-list/written-list.js';
|
|
130
146
|
export { VERSION } from './version.js';
|
|
147
|
+
export { formatMessage, } from './words/message.js';
|
|
148
|
+
export { clearWords, localeChain, refreshWords, registerWords, setDefaultWordsLocale, } from './words/registry.js';
|
|
149
|
+
export { formatWords, words } from './words/words.js';
|
|
150
|
+
export { handedLocale, wordsLocale } from './words/words-locale.js';
|
|
@@ -132,8 +132,8 @@ export declare class MixinChartSourceInterface {
|
|
|
132
132
|
* The locale the chart's own numbers are written in: its axis, its
|
|
133
133
|
* percentages and its totals, such as `de` for `1.240` and `32 %`.
|
|
134
134
|
*
|
|
135
|
-
* Absent
|
|
136
|
-
* writes them, whatever this says.
|
|
135
|
+
* Absent reads the nearest `lang`, then the runtime's own. The table's
|
|
136
|
+
* cells are shown as the table writes them, whatever this says.
|
|
137
137
|
*/
|
|
138
138
|
locale: string;
|
|
139
139
|
/**
|
|
@@ -178,6 +178,11 @@ export declare class MixinChartSourceInterface {
|
|
|
178
178
|
* hid.
|
|
179
179
|
*/
|
|
180
180
|
showsColumn(cell: number): boolean;
|
|
181
|
+
/**
|
|
182
|
+
* The heading of the column at this place in a row, read from the first row
|
|
183
|
+
* that has a cell there, or `''` where none has.
|
|
184
|
+
*/
|
|
185
|
+
columnName(cell: number): string;
|
|
181
186
|
/**
|
|
182
187
|
* The number of readings, which the pointer position maps onto.
|
|
183
188
|
*/
|
|
@@ -9,6 +9,7 @@ import { ChartPointerController } from '../../controllers/chart-pointer-controll
|
|
|
9
9
|
import { SourceController } from '../../controllers/source-controller/source-controller.js';
|
|
10
10
|
import { seriesKey } from '../../utils/read-series/read-series.js';
|
|
11
11
|
import { writtenList } from '../../utils/written-list/written-list.js';
|
|
12
|
+
import { words } from '../../words/words.js';
|
|
12
13
|
export const PALETTE = 24;
|
|
13
14
|
export const seriesIndex = (depth) => (depth % PALETTE) + 1;
|
|
14
15
|
export const PLOT_WIDTH = 100;
|
|
@@ -26,6 +27,7 @@ export const MixinChartSource = (Base) => {
|
|
|
26
27
|
this.locale = '';
|
|
27
28
|
this.positionLabel = '{position} of {count}';
|
|
28
29
|
}
|
|
30
|
+
static { this.words = ''; }
|
|
29
31
|
static get observedAttributes() {
|
|
30
32
|
const inherited = Reflect.get(Base, 'observedAttributes', this);
|
|
31
33
|
return [...(inherited ?? []), 'aria-label'];
|
|
@@ -70,6 +72,9 @@ export const MixinChartSource = (Base) => {
|
|
|
70
72
|
const name = this.sourceRows[0]?.cells[cell]?.name;
|
|
71
73
|
return name === undefined || this.showsSeries(name);
|
|
72
74
|
}
|
|
75
|
+
columnName(cell) {
|
|
76
|
+
return this.sourceRows.find((row) => row.cells[cell])?.cells[cell]?.name ?? '';
|
|
77
|
+
}
|
|
73
78
|
get readings() {
|
|
74
79
|
return this.sourceRows.length;
|
|
75
80
|
}
|
|
@@ -84,6 +89,7 @@ export const MixinChartSource = (Base) => {
|
|
|
84
89
|
property()
|
|
85
90
|
], ChartSourceElement.prototype, "locale", void 0);
|
|
86
91
|
__decorate([
|
|
92
|
+
words,
|
|
87
93
|
property({ attribute: 'position-label' })
|
|
88
94
|
], ChartSourceElement.prototype, "positionLabel", void 0);
|
|
89
95
|
return ChartSourceElement;
|
|
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { html, nothing } from 'lit';
|
|
8
8
|
import { property, state } from 'lit/decorators.js';
|
|
9
|
+
import { words } from '../../words/words.js';
|
|
9
10
|
export const MixinCollection = (Base) => {
|
|
10
11
|
class Collection extends Base {
|
|
11
12
|
constructor() {
|
|
@@ -17,6 +18,7 @@ export const MixinCollection = (Base) => {
|
|
|
17
18
|
this.slotRows = 0;
|
|
18
19
|
this.announced = '';
|
|
19
20
|
}
|
|
21
|
+
static { this.words = ''; }
|
|
20
22
|
countRows(event) {
|
|
21
23
|
this.slotCounted = true;
|
|
22
24
|
this.slotRows = event.target.assignedElements().length;
|
|
@@ -59,12 +61,14 @@ export const MixinCollection = (Base) => {
|
|
|
59
61
|
}
|
|
60
62
|
}
|
|
61
63
|
__decorate([
|
|
64
|
+
words,
|
|
62
65
|
property({ attribute: 'empty-text' })
|
|
63
66
|
], Collection.prototype, "emptyText", void 0);
|
|
64
67
|
__decorate([
|
|
65
68
|
property({ reflect: true, type: Boolean })
|
|
66
69
|
], Collection.prototype, "loading", void 0);
|
|
67
70
|
__decorate([
|
|
71
|
+
words,
|
|
68
72
|
property({ attribute: 'loading-text' })
|
|
69
73
|
], Collection.prototype, "loadingText", void 0);
|
|
70
74
|
__decorate([
|
|
@@ -8,6 +8,7 @@ import { property } from 'lit/decorators.js';
|
|
|
8
8
|
import { HelixDismissEvent } from '../../events/events.js';
|
|
9
9
|
import { deepActiveElement, deepContains, } from '../../utils/focusable-elements/focusable-elements.js';
|
|
10
10
|
import { tabStops } from '../../utils/tab-stops/tab-stops.js';
|
|
11
|
+
import { words } from '../../words/words.js';
|
|
11
12
|
export const MixinDismissible = (Base) => {
|
|
12
13
|
class Dismissible extends Base {
|
|
13
14
|
constructor() {
|
|
@@ -17,6 +18,7 @@ export const MixinDismissible = (Base) => {
|
|
|
17
18
|
this.handOff = undefined;
|
|
18
19
|
this.forgetFocus = undefined;
|
|
19
20
|
}
|
|
21
|
+
static { this.words = ''; }
|
|
20
22
|
dismissEvent() {
|
|
21
23
|
const own = [...this.childNodes]
|
|
22
24
|
.filter((node) => !(node instanceof Element) || !node.slot)
|
|
@@ -110,6 +112,7 @@ export const MixinDismissible = (Base) => {
|
|
|
110
112
|
property({ reflect: true, type: Boolean })
|
|
111
113
|
], Dismissible.prototype, "dismissible", void 0);
|
|
112
114
|
__decorate([
|
|
115
|
+
words,
|
|
113
116
|
property({ attribute: 'dismiss-label' })
|
|
114
117
|
], Dismissible.prototype, "dismissLabel", void 0);
|
|
115
118
|
return Dismissible;
|
|
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { html, nothing } from 'lit';
|
|
8
8
|
import { property, state } from 'lit/decorators.js';
|
|
9
|
-
import { auditName } from '
|
|
9
|
+
import { auditName } from '@fusion.dev/helix-core/audits/name';
|
|
10
10
|
import { hostAria } from '../../utils/host-aria/host-aria.js';
|
|
11
11
|
const HINT_ID = 'helix-hint';
|
|
12
12
|
const FEEDBACK_ID = 'helix-feedback';
|
|
@@ -15,8 +15,20 @@ type SegmentedBase = HelixFormElement & MixinControllerOpenInterface & MixinCont
|
|
|
15
15
|
* anonymous class that has private members (TS4094).
|
|
16
16
|
*/
|
|
17
17
|
export declare class MixinSegmentedFieldInterface {
|
|
18
|
+
/**
|
|
19
|
+
* What a row of segments reports when the field is required and every
|
|
20
|
+
* segment is empty, where `value-missing-message` is not set. `{kind}` is
|
|
21
|
+
* `date` or `time`.
|
|
22
|
+
*/
|
|
23
|
+
emptyMessage: string;
|
|
18
24
|
/** What a screen reader hears for a segment with nothing in it. */
|
|
19
25
|
emptySegmentLabel: string;
|
|
26
|
+
/**
|
|
27
|
+
* What a row of segments reports while some segments are set and others
|
|
28
|
+
* are not, where `bad-input-message` is not set. `{kind}` is `date` or
|
|
29
|
+
* `time`.
|
|
30
|
+
*/
|
|
31
|
+
incompleteMessage: string;
|
|
20
32
|
/**
|
|
21
33
|
* Whether the field is a row of segments, one for each part of the date or
|
|
22
34
|
* time, in place of a line of text.
|
|
@@ -10,11 +10,14 @@ import { isPartial, isTwelveHourLayout, segmentKey, segmentLayout, segmentName,
|
|
|
10
10
|
import { inlineStep } from '../../utils/inline-step/inline-step.js';
|
|
11
11
|
import { appleTouch } from '../../utils/platform/platform.js';
|
|
12
12
|
import { verdictFlags } from '../../utils/verdict-flags/verdict-flags.js';
|
|
13
|
+
import { formatWords, words } from '../../words/words.js';
|
|
13
14
|
export const MixinSegmentedField = (Base) => {
|
|
14
15
|
class SegmentedFieldElement extends Base {
|
|
15
16
|
constructor() {
|
|
16
17
|
super(...arguments);
|
|
18
|
+
this.emptyMessage = '{kind, select, date {Enter a date.} other {Enter a time.}}';
|
|
17
19
|
this.emptySegmentLabel = 'Empty';
|
|
20
|
+
this.incompleteMessage = '{kind, select, date {Enter a whole date.} other {Enter a whole time.}}';
|
|
18
21
|
this.segmented = false;
|
|
19
22
|
this.parts = {};
|
|
20
23
|
this.typed = '';
|
|
@@ -92,6 +95,7 @@ export const MixinSegmentedField = (Base) => {
|
|
|
92
95
|
}
|
|
93
96
|
};
|
|
94
97
|
}
|
|
98
|
+
static { this.words = ''; }
|
|
95
99
|
get segmentable() {
|
|
96
100
|
return true;
|
|
97
101
|
}
|
|
@@ -175,11 +179,11 @@ export const MixinSegmentedField = (Base) => {
|
|
|
175
179
|
const fault = verdictFlags(this.validate());
|
|
176
180
|
if (partial) {
|
|
177
181
|
this.internals.setValidity({ badInput: true }, this.badInputMessage ||
|
|
178
|
-
(this
|
|
182
|
+
formatWords(this, 'incompleteMessage', { kind: this.segmentedKind }), anchor);
|
|
179
183
|
}
|
|
180
184
|
else if (this.required && this.value === '') {
|
|
181
185
|
this.internals.setValidity({ valueMissing: true }, this.valueMissingMessage ||
|
|
182
|
-
(this
|
|
186
|
+
formatWords(this, 'emptyMessage', { kind: this.segmentedKind }), anchor);
|
|
183
187
|
}
|
|
184
188
|
else if (fault !== null) {
|
|
185
189
|
this.internals.setValidity(fault[0], fault[1], anchor);
|
|
@@ -241,8 +245,17 @@ export const MixinSegmentedField = (Base) => {
|
|
|
241
245
|
}
|
|
242
246
|
}
|
|
243
247
|
__decorate([
|
|
248
|
+
words,
|
|
249
|
+
property({ attribute: 'empty-message' })
|
|
250
|
+
], SegmentedFieldElement.prototype, "emptyMessage", void 0);
|
|
251
|
+
__decorate([
|
|
252
|
+
words,
|
|
244
253
|
property({ attribute: 'empty-segment-label' })
|
|
245
254
|
], SegmentedFieldElement.prototype, "emptySegmentLabel", void 0);
|
|
255
|
+
__decorate([
|
|
256
|
+
words,
|
|
257
|
+
property({ attribute: 'incomplete-message' })
|
|
258
|
+
], SegmentedFieldElement.prototype, "incompleteMessage", void 0);
|
|
246
259
|
__decorate([
|
|
247
260
|
property({ type: Boolean })
|
|
248
261
|
], SegmentedFieldElement.prototype, "segmented", void 0);
|