@fusion.dev/helix-core 0.143.0 → 0.145.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.
Files changed (107) hide show
  1. package/custom-elements.json +10266 -4161
  2. package/dist/controllers/aria-forward-controller/aria-forward-controller.d.ts +10 -0
  3. package/dist/controllers/aria-forward-controller/aria-forward-controller.js +6 -0
  4. package/dist/controllers/chart-pointer-controller/chart-pointer-controller.d.ts +89 -0
  5. package/dist/controllers/chart-pointer-controller/chart-pointer-controller.js +102 -1
  6. package/dist/controllers/chart-pointer-controller/reading-step.d.ts +57 -0
  7. package/dist/controllers/chart-pointer-controller/reading-step.js +45 -0
  8. package/dist/controllers/copy-controller/copy-controller.d.ts +11 -6
  9. package/dist/controllers/copy-controller/copy-controller.js +11 -9
  10. package/dist/controllers/countdown-controller/countdown-controller.d.ts +55 -0
  11. package/dist/controllers/countdown-controller/countdown-controller.js +57 -0
  12. package/dist/controllers/delay-controller/delay-controller.d.ts +50 -0
  13. package/dist/controllers/delay-controller/delay-controller.js +54 -0
  14. package/dist/controllers/focus-scope-controller/focus-scope-controller.d.ts +56 -0
  15. package/dist/controllers/focus-scope-controller/focus-scope-controller.js +71 -0
  16. package/dist/controllers/keyboard-navigation-controller/keyboard-navigation-controller.d.ts +11 -2
  17. package/dist/controllers/keyboard-navigation-controller/keyboard-navigation-controller.js +4 -1
  18. package/dist/controllers/open-phase-controller/open-phase-controller.d.ts +49 -0
  19. package/dist/controllers/open-phase-controller/open-phase-controller.js +41 -0
  20. package/dist/controllers/source-controller/source-controller.d.ts +16 -0
  21. package/dist/controllers/source-controller/source-controller.js +44 -1
  22. package/dist/controllers/status-controller/status-controller.d.ts +47 -0
  23. package/dist/controllers/status-controller/status-controller.js +34 -0
  24. package/dist/controllers/swipe-controller/swipe-controller.d.ts +61 -0
  25. package/dist/controllers/swipe-controller/swipe-controller.js +106 -0
  26. package/dist/controllers/virtualize-controller/virtualize-controller.d.ts +68 -35
  27. package/dist/controllers/virtualize-controller/virtualize-controller.js +77 -10
  28. package/dist/events/events.d.ts +221 -0
  29. package/dist/events/events.js +150 -0
  30. package/dist/helix-element/helix-element.js +14 -1
  31. package/dist/helix-element/react-bridge.d.ts +9 -4
  32. package/dist/helix-element/react-bridge.js +14 -1
  33. package/dist/index.d.ts +31 -9
  34. package/dist/index.js +29 -7
  35. package/dist/mixins/mixin-chart-source/mixin-chart-source.d.ts +7 -2
  36. package/dist/mixins/mixin-chart-source/mixin-chart-source.js +5 -1
  37. package/dist/mixins/mixin-controller-checked/mixin-controller-checked.d.ts +10 -0
  38. package/dist/mixins/mixin-controller-checked/mixin-controller-checked.js +9 -0
  39. package/dist/mixins/mixin-dismissible/mixin-dismissible.d.ts +2 -0
  40. package/dist/mixins/mixin-dismissible/mixin-dismissible.js +7 -3
  41. package/dist/mixins/mixin-field/mixin-field.d.ts +2 -0
  42. package/dist/mixins/mixin-field/mixin-field.js +8 -0
  43. package/dist/mixins/mixin-picker-editing/mixin-picker-editing.d.ts +16 -6
  44. package/dist/mixins/mixin-picker-editing/mixin-picker-editing.js +19 -1
  45. package/dist/mixins/mixin-picker-field/mixin-picker-field.d.ts +5 -4
  46. package/dist/mixins/mixin-picker-field/mixin-picker-field.js +12 -1
  47. package/dist/mixins/mixin-segmented-field/mixin-segmented-field.d.ts +67 -0
  48. package/dist/mixins/mixin-segmented-field/mixin-segmented-field.js +243 -0
  49. package/dist/utils/arrow/arrow.d.ts +15 -0
  50. package/dist/utils/arrow/arrow.js +2 -0
  51. package/dist/utils/audit-name/audit-name.d.ts +28 -0
  52. package/dist/utils/audit-name/audit-name.js +95 -0
  53. package/dist/utils/calendar/calendar.d.ts +117 -0
  54. package/dist/utils/calendar/calendar.js +96 -0
  55. package/dist/utils/chord/chord.d.ts +43 -0
  56. package/dist/utils/chord/chord.js +53 -0
  57. package/dist/utils/clock/clock.d.ts +87 -0
  58. package/dist/utils/clock/clock.js +68 -0
  59. package/dist/utils/color-name/color-name.d.ts +28 -0
  60. package/dist/utils/color-name/color-name.js +150 -0
  61. package/dist/utils/count-label/count-label.d.ts +13 -0
  62. package/dist/utils/count-label/count-label.js +5 -0
  63. package/dist/utils/css-color/css-color.d.ts +12 -0
  64. package/dist/utils/css-color/css-color.js +2 -2
  65. package/dist/utils/date-segments/date-segments.d.ts +122 -0
  66. package/dist/utils/date-segments/date-segments.js +206 -0
  67. package/dist/utils/draw-dismiss/draw-dismiss.d.ts +30 -0
  68. package/dist/utils/draw-dismiss/draw-dismiss.js +16 -0
  69. package/dist/utils/draw-icon/draw-icon.d.ts +7 -6
  70. package/dist/utils/draw-tooltip/draw-tooltip.d.ts +15 -21
  71. package/dist/utils/draw-tooltip/draw-tooltip.js +11 -5
  72. package/dist/utils/draw-tooltip/spoken-reading.d.ts +10 -0
  73. package/dist/utils/draw-tooltip/spoken-reading.js +10 -0
  74. package/dist/utils/follow-link/follow-link.d.ts +46 -0
  75. package/dist/utils/follow-link/follow-link.js +37 -0
  76. package/dist/utils/heading-in/heading-in.d.ts +19 -0
  77. package/dist/utils/heading-in/heading-in.js +14 -0
  78. package/dist/utils/number-format/number-format.d.ts +23 -0
  79. package/dist/utils/number-format/number-format.js +55 -0
  80. package/dist/utils/platform/platform.d.ts +23 -0
  81. package/dist/utils/platform/platform.js +11 -0
  82. package/dist/utils/range-add/range-add.d.ts +19 -0
  83. package/dist/utils/range-add/range-add.js +5 -0
  84. package/dist/utils/read-color/read-color.d.ts +14 -0
  85. package/dist/utils/read-color/read-color.js +13 -0
  86. package/dist/utils/read-series/read-series.d.ts +6 -0
  87. package/dist/utils/read-series/read-series.js +1 -0
  88. package/dist/utils/reflect-elements/reflect-elements.d.ts +37 -0
  89. package/dist/utils/reflect-elements/reflect-elements.js +40 -0
  90. package/dist/utils/relative-time/relative-time.d.ts +13 -1
  91. package/dist/utils/relative-time/relative-time.js +7 -4
  92. package/dist/utils/report-runtime/report-runtime.d.ts +5 -1
  93. package/dist/utils/roving-stop/roving-stop.d.ts +20 -0
  94. package/dist/utils/roving-stop/roving-stop.js +3 -0
  95. package/dist/utils/swipe/swipe.d.ts +63 -0
  96. package/dist/utils/swipe/swipe.js +48 -0
  97. package/dist/utils/tab-stops/tab-stops.d.ts +16 -0
  98. package/dist/utils/tab-stops/tab-stops.js +22 -0
  99. package/dist/utils/value-as/value-as.d.ts +20 -0
  100. package/dist/utils/value-as/value-as.js +16 -0
  101. package/dist/utils/write-time/write-time.d.ts +15 -5
  102. package/dist/utils/write-time/write-time.js +7 -7
  103. package/dist/utils/written-list/written-list.d.ts +18 -0
  104. package/dist/utils/written-list/written-list.js +8 -0
  105. package/dist/version.d.ts +1 -1
  106. package/dist/version.js +1 -1
  107. package/package.json +4 -4
@@ -152,6 +152,17 @@ export class HelixCanvasEditEvent extends CustomEvent {
152
152
  });
153
153
  }
154
154
  }
155
+ export class HelixRejectEvent extends CustomEvent {
156
+ static { this.eventName = 'helix-reject'; }
157
+ constructor(detail) {
158
+ super(HelixRejectEvent.eventName, {
159
+ bubbles: true,
160
+ cancelable: false,
161
+ composed: true,
162
+ detail,
163
+ });
164
+ }
165
+ }
155
166
  export class HelixRemoveEvent extends CustomEvent {
156
167
  static { this.eventName = 'helix-remove'; }
157
168
  constructor(detail) {
@@ -429,6 +440,17 @@ export class HelixBeforeSplitEvent extends CustomEvent {
429
440
  });
430
441
  }
431
442
  }
443
+ export class HelixSplitEvent extends CustomEvent {
444
+ static { this.eventName = 'helix-split'; }
445
+ constructor(detail) {
446
+ super(HelixSplitEvent.eventName, {
447
+ bubbles: true,
448
+ cancelable: false,
449
+ composed: true,
450
+ detail,
451
+ });
452
+ }
453
+ }
432
454
  export class HelixBeforePanelResizeEvent extends CustomEvent {
433
455
  static { this.eventName = 'helix-before-panel-resize'; }
434
456
  constructor(detail) {
@@ -440,6 +462,17 @@ export class HelixBeforePanelResizeEvent extends CustomEvent {
440
462
  });
441
463
  }
442
464
  }
465
+ export class HelixPanelResizeEvent extends CustomEvent {
466
+ static { this.eventName = 'helix-panel-resize'; }
467
+ constructor(detail) {
468
+ super(HelixPanelResizeEvent.eventName, {
469
+ bubbles: true,
470
+ cancelable: false,
471
+ composed: true,
472
+ detail,
473
+ });
474
+ }
475
+ }
443
476
  export class HelixBeforeCollapseEvent extends CustomEvent {
444
477
  static { this.eventName = 'helix-before-collapse'; }
445
478
  constructor(detail) {
@@ -473,6 +506,17 @@ export class HelixBeforeEditEvent extends CustomEvent {
473
506
  });
474
507
  }
475
508
  }
509
+ export class HelixEditEvent extends CustomEvent {
510
+ static { this.eventName = 'helix-edit'; }
511
+ constructor(detail) {
512
+ super(HelixEditEvent.eventName, {
513
+ bubbles: true,
514
+ cancelable: false,
515
+ composed: true,
516
+ detail,
517
+ });
518
+ }
519
+ }
476
520
  export class HelixBeforeChangeEvent extends CustomEvent {
477
521
  static { this.eventName = 'helix-before-change'; }
478
522
  constructor(detail) {
@@ -506,6 +550,97 @@ export class HelixCreateEvent extends CustomEvent {
506
550
  });
507
551
  }
508
552
  }
553
+ export class HelixAuraFallbackEvent extends CustomEvent {
554
+ static { this.eventName = 'helix-aura-fallback'; }
555
+ constructor(detail) {
556
+ super(HelixAuraFallbackEvent.eventName, {
557
+ bubbles: true,
558
+ cancelable: false,
559
+ composed: true,
560
+ detail,
561
+ });
562
+ }
563
+ }
564
+ export class HelixClearEvent extends Event {
565
+ static { this.eventName = 'helix-clear'; }
566
+ constructor() {
567
+ super(HelixClearEvent.eventName, { bubbles: true, cancelable: false, composed: true });
568
+ }
569
+ }
570
+ export class HelixCopyErrorEvent extends Event {
571
+ static { this.eventName = 'helix-copy-error'; }
572
+ constructor() {
573
+ super(HelixCopyErrorEvent.eventName, { bubbles: true, cancelable: false, composed: true });
574
+ }
575
+ }
576
+ export class HelixLoadMoreEvent extends Event {
577
+ static { this.eventName = 'helix-load-more'; }
578
+ constructor() {
579
+ super(HelixLoadMoreEvent.eventName, { bubbles: true, cancelable: false, composed: true });
580
+ }
581
+ }
582
+ export class HelixLoadEvent extends Event {
583
+ static { this.eventName = 'helix-load'; }
584
+ constructor() {
585
+ super(HelixLoadEvent.eventName, { bubbles: true, cancelable: false, composed: true });
586
+ }
587
+ }
588
+ export class HelixRangeChangeEvent extends CustomEvent {
589
+ static { this.eventName = 'helix-range-change'; }
590
+ constructor(detail) {
591
+ super(HelixRangeChangeEvent.eventName, {
592
+ bubbles: true,
593
+ cancelable: false,
594
+ composed: true,
595
+ detail,
596
+ });
597
+ }
598
+ }
599
+ export class HelixExpandEvent extends CustomEvent {
600
+ static { this.eventName = 'helix-expand'; }
601
+ constructor(detail) {
602
+ super(HelixExpandEvent.eventName, {
603
+ bubbles: true,
604
+ cancelable: false,
605
+ composed: true,
606
+ detail,
607
+ });
608
+ }
609
+ }
610
+ export class HelixEndEvent extends Event {
611
+ static { this.eventName = 'helix-end'; }
612
+ constructor() {
613
+ super(HelixEndEvent.eventName, { bubbles: true, cancelable: false, composed: true });
614
+ }
615
+ }
616
+ export class HelixTypingEvent extends CustomEvent {
617
+ static { this.eventName = 'helix-typing'; }
618
+ constructor(detail) {
619
+ super(HelixTypingEvent.eventName, {
620
+ bubbles: true,
621
+ cancelable: false,
622
+ composed: true,
623
+ detail,
624
+ });
625
+ }
626
+ }
627
+ export class HelixActionEvent extends Event {
628
+ static { this.eventName = 'helix-action'; }
629
+ constructor() {
630
+ super(HelixActionEvent.eventName, { bubbles: true, cancelable: false, composed: true });
631
+ }
632
+ }
633
+ export class HelixToggleEvent extends CustomEvent {
634
+ static { this.eventName = 'helix-toggle'; }
635
+ constructor(detail) {
636
+ super(HelixToggleEvent.eventName, {
637
+ bubbles: true,
638
+ cancelable: false,
639
+ composed: true,
640
+ detail,
641
+ });
642
+ }
643
+ }
509
644
  export class HelixCopyEvent extends CustomEvent {
510
645
  static { this.eventName = 'helix-copy'; }
511
646
  constructor(detail) {
@@ -726,7 +861,9 @@ export class HelixHistoryEvent extends CustomEvent {
726
861
  }
727
862
  }
728
863
  const registry = {
864
+ HelixActionEvent,
729
865
  HelixActivateEvent,
866
+ HelixAuraFallbackEvent,
730
867
  HelixBeforeActivateEvent,
731
868
  HelixBeforeChangeEvent,
732
869
  HelixBeforeCloseEvent,
@@ -746,13 +883,18 @@ const registry = {
746
883
  HelixCanvasViewEvent,
747
884
  HelixCanvasZoomEvent,
748
885
  HelixCaretEvent,
886
+ HelixClearEvent,
749
887
  HelixCollapseEvent,
750
888
  HelixCompleteEvent,
751
889
  HelixConnectEvent,
752
890
  HelixConsoleEvent,
891
+ HelixCopyErrorEvent,
753
892
  HelixCopyEvent,
754
893
  HelixCreateEvent,
755
894
  HelixDismissEvent,
895
+ HelixEditEvent,
896
+ HelixEndEvent,
897
+ HelixExpandEvent,
756
898
  HelixFacetEvent,
757
899
  HelixFilterEvent,
758
900
  HelixFilteredEvent,
@@ -764,6 +906,8 @@ const registry = {
764
906
  HelixGraphSignalEvent,
765
907
  HelixGraphZoomEvent,
766
908
  HelixHistoryEvent,
909
+ HelixLoadEvent,
910
+ HelixLoadMoreEvent,
767
911
  HelixMapClusterEvent,
768
912
  HelixMapPanEvent,
769
913
  HelixMapPartChangeEvent,
@@ -774,10 +918,13 @@ const registry = {
774
918
  HelixMoveEvent,
775
919
  HelixNavigateEvent,
776
920
  HelixNextEvent,
921
+ HelixPanelResizeEvent,
777
922
  HelixPinEvent,
778
923
  HelixPreviousEvent,
924
+ HelixRangeChangeEvent,
779
925
  HelixReadEvent,
780
926
  HelixReconnectEvent,
927
+ HelixRejectEvent,
781
928
  HelixRelabelEvent,
782
929
  HelixRemoveEvent,
783
930
  HelixReorderEvent,
@@ -793,6 +940,9 @@ const registry = {
793
940
  HelixShortcutEvent,
794
941
  HelixSortEvent,
795
942
  HelixSortedEvent,
943
+ HelixSplitEvent,
944
+ HelixToggleEvent,
796
945
  HelixTourAskEvent,
946
+ HelixTypingEvent,
797
947
  };
798
948
  export const helixEventNames = new Set(Object.values(registry).map((event) => event.eventName));
@@ -20,6 +20,11 @@ const SCROLLER = css `
20
20
  overflow: auto;
21
21
  }
22
22
  `;
23
+ const VIRTUAL = css `
24
+ [data-virtual] {
25
+ overflow-anchor: none;
26
+ }
27
+ `;
23
28
  const MIRROR = css `
24
29
  :host(:dir(rtl)) [data-mirror] {
25
30
  scale: -1 1;
@@ -112,7 +117,15 @@ export class HelixElement extends LitElement {
112
117
  }));
113
118
  }
114
119
  static finalizeStyles(styles) {
115
- return [BOX_SIZING, HIDDEN, SCROLLER, MIRROR, SETTLED, ...LitElement.finalizeStyles(styles)];
120
+ return [
121
+ BOX_SIZING,
122
+ HIDDEN,
123
+ SCROLLER,
124
+ VIRTUAL,
125
+ MIRROR,
126
+ SETTLED,
127
+ ...LitElement.finalizeStyles(styles),
128
+ ];
116
129
  }
117
130
  performUpdate() {
118
131
  if (this.hasUpdated || !measuring()) {
@@ -52,12 +52,17 @@ export declare const auditReactProps: (host: EventTarget, props: Record<string,
52
52
  * declared public API and all of them otherwise silent in React.
53
53
  *
54
54
  * The name is React's own casing, `onError` rather than `onerror`, because that
55
- * is what a consumer writes and therefore what is in the props bag. Every
56
- * native we relay is a single word, so capitalising the first letter is the
57
- * whole of the rule; a two-word name like `loadeddata` would be `onLoadedData`
58
- * and needs the list extending rather than the rule generalising.
55
+ * is what a consumer writes and therefore what is in the props bag. See
56
+ * `reactNativeProp`.
59
57
  */
60
58
  export declare const reactPropFor: (event: Event) => string | undefined;
59
+ /**
60
+ * The prop React reads for a native event: `onError` for `error`, and
61
+ * `onTimeUpdate` for `timeupdate`.
62
+ *
63
+ * The JSX typings name the same props, so a consumer writes what this binds.
64
+ */
65
+ export declare const reactNativeProp: (type: string) => string;
61
66
  export declare const bindReactHandler: (host: EventTarget, event: Event) => void;
62
67
  /**
63
68
  * Assigns the object and function properties React is holding and never applied.
@@ -76,8 +76,21 @@ export const reactPropFor = (event) => {
76
76
  if (event.bubbles || REACT_WIRES.has(event.type)) {
77
77
  return undefined;
78
78
  }
79
- return `on${event.type.charAt(0).toUpperCase()}${event.type.slice(1)}`;
79
+ return reactNativeProp(event.type);
80
80
  };
81
+ const REACT_CASING = {
82
+ canplay: 'onCanPlay',
83
+ canplaythrough: 'onCanPlayThrough',
84
+ durationchange: 'onDurationChange',
85
+ loadeddata: 'onLoadedData',
86
+ loadedmetadata: 'onLoadedMetadata',
87
+ loadstart: 'onLoadStart',
88
+ ratechange: 'onRateChange',
89
+ scrollend: 'onScrollEnd',
90
+ timeupdate: 'onTimeUpdate',
91
+ volumechange: 'onVolumeChange',
92
+ };
93
+ export const reactNativeProp = (type) => REACT_CASING[type] ?? `on${type.charAt(0).toUpperCase()}${type.slice(1)}`;
81
94
  const lowercasePropFor = (event) => event.type.includes('-') || REACT_WIRES.has(event.type) ? undefined : `on${event.type}`;
82
95
  export const bindReactHandler = (host, event) => {
83
96
  const props = reactPropsOf(host);
package/dist/index.d.ts CHANGED
@@ -3,26 +3,32 @@ export { ArrivalController, type ArrivalOptions, } from './controllers/arrival-c
3
3
  export { ChartPointerController, type ChartPointerHost, } from './controllers/chart-pointer-controller/chart-pointer-controller.js';
4
4
  export { CommandController, type CommandOptions, HelixFallbackCommandEvent, supportsInvokers, } from './controllers/command-controller/command-controller.js';
5
5
  export { CopyController, type CopyOptions, } from './controllers/copy-controller/copy-controller.js';
6
+ export { CountdownController, type CountdownOptions, } from './controllers/countdown-controller/countdown-controller.js';
6
7
  export { activeCue, adoptTrack, type Caption, CueController, captionsAmong, captionTracks, showCaption, } from './controllers/cue-controller/cue-controller.js';
8
+ export { DelayController, type DelayOptions, } from './controllers/delay-controller/delay-controller.js';
7
9
  export { DisabledCascadeController, type DisabledCascadeOptions, } from './controllers/disabled-cascade-controller/disabled-cascade-controller.js';
8
10
  export { DismissController, type DismissOptions, } from './controllers/dismiss-controller/dismiss-controller.js';
9
11
  export { DrilldownController, type DrilldownOptions, } from './controllers/drilldown-controller/drilldown-controller.js';
10
12
  export { FloatingController, type FloatingOptions, type Placement, type Side, } from './controllers/floating-controller/floating-controller.js';
13
+ export { controlsIn, FocusScopeController, type FocusScopeOptions, } from './controllers/focus-scope-controller/focus-scope-controller.js';
11
14
  export { FullscreenController } from './controllers/fullscreen-controller/fullscreen-controller.js';
12
15
  export { HostClickController } from './controllers/host-click-controller/host-click-controller.js';
13
16
  export { IdleController } from './controllers/idle-controller/idle-controller.js';
14
17
  export { IndicatorController, type IndicatorOptions, } from './controllers/indicator-controller/indicator-controller.js';
15
- export { KeyboardNavigationController, type KeyboardNavigationOptions, type NavigableItem, Typeahead, typesCharacter, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
18
+ export { KeyboardNavigationController, type KeyboardNavigationOptions, type KeyboardOrigin, type NavigableItem, Typeahead, typesCharacter, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
16
19
  export { MediaSessionController, type SessionHandlers, SKIP_SECONDS, } from './controllers/media-session-controller/media-session-controller.js';
20
+ export { animationsSettled, type OpenPhase, OpenPhaseController, type OpenPhaseOptions, } from './controllers/open-phase-controller/open-phase-controller.js';
17
21
  export { MAX_FRAME_STEP, PaintGateController, type PaintGateOptions, } from './controllers/paint-gate-controller/paint-gate-controller.js';
18
22
  export { PlacementController } from './controllers/placement-controller/placement-controller.js';
19
23
  export { PopoverController, type PopoverOptions, } from './controllers/popover-controller/popover-controller.js';
20
24
  export { RemotePlaybackController, type RemoteReport, } from './controllers/remote-playback-controller/remote-playback-controller.js';
21
25
  export { SourceController, type SourceHost, } from './controllers/source-controller/source-controller.js';
26
+ export { drawStatus, type SayOptions, StatusController, } from './controllers/status-controller/status-controller.js';
27
+ export { SwipeController, type SwipeOptions, } from './controllers/swipe-controller/swipe-controller.js';
22
28
  export { type TokenColor, TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
23
29
  export { type Rendered, VirtualizeController, type VirtualizeOptions, type Window as VirtualizeWindow, } from './controllers/virtualize-controller/virtualize-controller.js';
24
30
  export { eventsForTag, registerElementEvents } from './events/element-events.js';
25
- export { 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, HelixActivateEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPinEvent, HelixPreviousEvent, HelixReadEvent, HelixReconnectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixTourAskEvent, type MapClusterDetail, type MapPanDetail, type MapPartChangeDetail, type MapRotateDetail, type MapTiltDetail, type MapZoomDetail, type MoveDetail, type NavigateDetail, type OpenDetail, type ReadDetail, type ReconnectDetail, type RelabelDetail, type RemoveDetail, type ResizeDetail, type ScrolledDetail, type SelectDetail, type SendDetail, type ShortcutDetail, type SkipDetail, type SortDetail, type ToggleDetail, type ViewportPanDetail, type ViewportZoomDetail, } from './events/events.js';
31
+ export { type AuraFallbackDetail, 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, 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, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTypingEvent, type MapClusterDetail, type MapPanDetail, type MapPartChangeDetail, type MapRotateDetail, type MapTiltDetail, type MapZoomDetail, type MoveDetail, type NavigateDetail, type OpenDetail, 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 TypingDetail, type ViewportPanDetail, type ViewportZoomDetail, } from './events/events.js';
26
32
  export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
27
33
  export { HelixFormElement } from './helix-form-element/helix-form-element.js';
28
34
  export { MixinChartSource, type MixinChartSourceInterface, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
@@ -35,22 +41,32 @@ export { type DismissibleElement, MixinDismissible, } from './mixins/mixin-dismi
35
41
  export { MixinField, type MixinFieldInterface } from './mixins/mixin-field/mixin-field.js';
36
42
  export { MixinPickerEditing, type MixinPickerEditingInterface, } from './mixins/mixin-picker-editing/mixin-picker-editing.js';
37
43
  export { MixinPickerField, type MixinPickerFieldInterface, } from './mixins/mixin-picker-field/mixin-picker-field.js';
44
+ export { MixinSegmentedField, type MixinSegmentedFieldInterface, } from './mixins/mixin-segmented-field/mixin-segmented-field.js';
38
45
  export { MixinSelectableItem, type MixinSelectableItemInterface, } from './mixins/mixin-selectable-item/mixin-selectable-item.js';
39
46
  export { MixinTokens, type MixinTokensInterface } from './mixins/mixin-tokens/mixin-tokens.js';
40
47
  export { MixinViewport, type ViewportControlsPlacement, type ViewportElement, type ViewportGestureLabels, type ViewportGestureMode, type ViewportGestures, type ViewportWay, } from './mixins/mixin-viewport/mixin-viewport.js';
41
48
  export { anchorElement } from './utils/anchor-element/anchor-element.js';
49
+ export { arrowReach, sideOf } from './utils/arrow/arrow.js';
50
+ export { addDays, addMonths, type Barring, barredBy, type CalendarView, localToday, monthOf, monthOut, type PeriodCell, type PeriodPage, periodCells, periodKey, periodMove, sameMonth, weekStartOf, YEARS_SHOWN, yearOut, yearPageOf, } from './utils/calendar/calendar.js';
42
51
  export { capturePointer } from './utils/capture-pointer/capture-pointer.js';
52
+ export { ariaChord, type ChordPress, chordParts, matchesChord, printableChord, } from './utils/chord/chord.js';
53
+ export { clockLocale, dayPeriod, type HourCycle, isTwelveHour, nearestTime, offeredTimes, type TimeFault, type TimeRules, timeBarred, timeFault, wheelParts, wholeHour, } from './utils/clock/clock.js';
43
54
  export { closestInstance } from './utils/closest-instance/closest-instance.js';
55
+ export { type ColorWords, colorName, hueName } from './utils/color-name/color-name.js';
56
+ export { countLabel } from './utils/count-label/count-label.js';
44
57
  export { createSheet } from './utils/create-sheet/create-sheet.js';
45
- export { type Color, type ColorFormat, formatColor, parseColor, toCss, } from './utils/css-color/css-color.js';
58
+ export { type Color, type ColorFormat, formatColor, parseColor, toCss, toHsl, toRgb, } from './utils/css-color/css-color.js';
46
59
  export { customElement, definedTags, duplicateRegistrations, } from './utils/custom-element/custom-element.js';
60
+ export { type DrawDismissOptions, drawDismiss, drawDismissGlyph, } from './utils/draw-dismiss/draw-dismiss.js';
47
61
  export { type DrawIconOptions, drawIcon } from './utils/draw-icon/draw-icon.js';
48
62
  export { CHART_PLOT, drawTooltip } from './utils/draw-tooltip/draw-tooltip.js';
49
63
  export { elapsedTime } from './utils/elapsed-time/elapsed-time.js';
50
64
  export { type ElementByIdOptions, elementById, searchableById, } from './utils/element-by-id/element-by-id.js';
51
65
  export { fillTemplate } from './utils/fill-template/fill-template.js';
52
66
  export { deepActiveElement, deepContains, focusableElements, } from './utils/focusable-elements/focusable-elements.js';
67
+ export { afterLinkFollowed, followLink, type LinkModifiers, type LinkTarget, } from './utils/follow-link/follow-link.js';
53
68
  export { formatNumbers } from './utils/format-numbers/format-numbers.js';
69
+ export { headingIn, headingsIn } from './utils/heading-in/heading-in.js';
54
70
  export { type HostAria, hostAria } from './utils/host-aria/host-aria.js';
55
71
  export { type DisableableItem, forgetDisabled, inheritDisabled, } from './utils/inherit-disabled/inherit-disabled.js';
56
72
  export { inlineStep } from './utils/inline-step/inline-step.js';
@@ -59,10 +75,14 @@ export { keyClaimed } from './utils/key-claimed/key-claimed.js';
59
75
  export { type Curve, linePath, type Point } from './utils/line-path/line-path.js';
60
76
  export { markRegion, type RegionOptions } from './utils/mark-region/mark-region.js';
61
77
  export { copiesOf, type MediaCopy, sameCopies, } from './utils/media-copy/media-copy.js';
78
+ export { formatNumber, parseNumber } from './utils/number-format/number-format.js';
62
79
  export { onUnlessFalse } from './utils/on-unless-false/on-unless-false.js';
63
- export { type ColorBytes, readColor } from './utils/read-color/read-color.js';
64
- export { byRow, type Row, type RowCell, readRows, readSeries, type Series, type SeriesPoint, unbroken, } from './utils/read-series/read-series.js';
65
- export { type Relative, relativeTime, } from './utils/relative-time/relative-time.js';
80
+ export { appleTouch, onApple, type Platform } from './utils/platform/platform.js';
81
+ export { rangeAdd } from './utils/range-add/range-add.js';
82
+ export { type ColorBytes, readColor, rgbOf } from './utils/read-color/read-color.js';
83
+ export { byRow, type Row, type RowCell, readRows, readSeries, type Series, type SeriesPoint, seriesKey, unbroken, } from './utils/read-series/read-series.js';
84
+ export { type ElementsProperty, linkDescription, reflectElements, unlinkDescription, } from './utils/reflect-elements/reflect-elements.js';
85
+ export { type Relative, type RelativeOptions, relativeTime, } from './utils/relative-time/relative-time.js';
66
86
  export { measuring, RENDER_SLOT, reportRender } from './utils/report-render/report-render.js';
67
87
  export { RUNTIME_LOG, RUNTIME_SLOT, type RuntimeEvent, type RuntimeKind, reportRuntime, } from './utils/report-runtime/report-runtime.js';
68
88
  export { noteVersion, reportUsage, USAGE_SLOT, VERSIONS_SLOT, } from './utils/report-usage/report-usage.js';
@@ -70,6 +90,7 @@ export { reportValues } from './utils/report-values/report-values.js';
70
90
  export { type ChangeRequestOptions, requestChange, } from './utils/request-change/request-change.js';
71
91
  export { type ActivatableItem, resolveActiveItem, } from './utils/resolve-active-item/resolve-active-item.js';
72
92
  export { holdCaret, restoreValue } from './utils/restore-value/restore-value.js';
93
+ export { type RovingOptions, rovingStop } from './utils/roving-stop/roving-stop.js';
73
94
  export { extent, linear, type Scale } from './utils/scale/scale.js';
74
95
  export { ticks } from './utils/scale/ticks.js';
75
96
  export { type ScrollItemOptions, scrollItemIntoView, } from './utils/scroll-item-into-view/scroll-item-into-view.js';
@@ -77,11 +98,12 @@ export { lockScroll, scrollHolders, unlockScroll } from './utils/scroll-lock/scr
77
98
  export { slotFilled } from './utils/slot-filled/slot-filled.js';
78
99
  export { slottedWords } from './utils/slotted-words/slotted-words.js';
79
100
  export { splitValues } from './utils/split-values/split-values.js';
101
+ export { edgeOffset, FLING, parseSnapPoints, type SwipeAxis, type SwipeEdge, type SwipeRelease, settleSwipe, snapTravel, swipeAxis, swipeEdge, swipeStep, towardEdge, } from './utils/swipe/swipe.js';
80
102
  export { tellDisclosure } from './utils/tell-disclosure/tell-disclosure.js';
81
103
  export { subscribe } from './utils/ticker/ticker.js';
82
104
  export { type HelixStatusTone, TONE_MARKS, type ToneMark, toneMark, } from './utils/tone-marks/tone-marks.js';
83
- export { dateAsValue, isDateValue, isTimeValue, minutesAsValue, numberAsValue, timeAsValue, valueAsDate, valueAsMinutes, valueAsNumber, valueAsTime, } from './utils/value-as/value-as.js';
105
+ export { dateAsValue, isClockValue, isDateValue, isTimeValue, minutesAsValue, numberAsValue, secondsAsValue, timeAsValue, valueAsDate, valueAsMinutes, valueAsNumber, valueAsSeconds, valueAsTime, } from './utils/value-as/value-as.js';
84
106
  export { watchTheme } from './utils/watch-theme/watch-theme.js';
85
- export { writeTime } from './utils/write-time/write-time.js';
86
- export { writtenList, writtenNumbers } from './utils/written-list/written-list.js';
107
+ export { writeClock, writeTime } from './utils/write-time/write-time.js';
108
+ export { commaList, toggleValue, writtenList, writtenNumbers, } from './utils/written-list/written-list.js';
87
109
  export { VERSION } from './version.js';
package/dist/index.js CHANGED
@@ -3,26 +3,32 @@ export { ArrivalController, } from './controllers/arrival-controller/arrival-con
3
3
  export { ChartPointerController, } from './controllers/chart-pointer-controller/chart-pointer-controller.js';
4
4
  export { CommandController, HelixFallbackCommandEvent, supportsInvokers, } from './controllers/command-controller/command-controller.js';
5
5
  export { CopyController, } from './controllers/copy-controller/copy-controller.js';
6
+ export { CountdownController, } from './controllers/countdown-controller/countdown-controller.js';
6
7
  export { activeCue, adoptTrack, CueController, captionsAmong, captionTracks, showCaption, } from './controllers/cue-controller/cue-controller.js';
8
+ export { DelayController, } from './controllers/delay-controller/delay-controller.js';
7
9
  export { DisabledCascadeController, } from './controllers/disabled-cascade-controller/disabled-cascade-controller.js';
8
10
  export { DismissController, } from './controllers/dismiss-controller/dismiss-controller.js';
9
11
  export { DrilldownController, } from './controllers/drilldown-controller/drilldown-controller.js';
10
12
  export { FloatingController, } from './controllers/floating-controller/floating-controller.js';
13
+ export { controlsIn, FocusScopeController, } from './controllers/focus-scope-controller/focus-scope-controller.js';
11
14
  export { FullscreenController } from './controllers/fullscreen-controller/fullscreen-controller.js';
12
15
  export { HostClickController } from './controllers/host-click-controller/host-click-controller.js';
13
16
  export { IdleController } from './controllers/idle-controller/idle-controller.js';
14
17
  export { IndicatorController, } from './controllers/indicator-controller/indicator-controller.js';
15
18
  export { KeyboardNavigationController, Typeahead, typesCharacter, } from './controllers/keyboard-navigation-controller/keyboard-navigation-controller.js';
16
19
  export { MediaSessionController, SKIP_SECONDS, } from './controllers/media-session-controller/media-session-controller.js';
20
+ export { animationsSettled, OpenPhaseController, } from './controllers/open-phase-controller/open-phase-controller.js';
17
21
  export { MAX_FRAME_STEP, PaintGateController, } from './controllers/paint-gate-controller/paint-gate-controller.js';
18
22
  export { PlacementController } from './controllers/placement-controller/placement-controller.js';
19
23
  export { PopoverController, } from './controllers/popover-controller/popover-controller.js';
20
24
  export { RemotePlaybackController, } from './controllers/remote-playback-controller/remote-playback-controller.js';
21
25
  export { SourceController, } from './controllers/source-controller/source-controller.js';
26
+ export { drawStatus, StatusController, } from './controllers/status-controller/status-controller.js';
27
+ export { SwipeController, } from './controllers/swipe-controller/swipe-controller.js';
22
28
  export { TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
23
29
  export { VirtualizeController, } from './controllers/virtualize-controller/virtualize-controller.js';
24
30
  export { eventsForTag, registerElementEvents } from './events/element-events.js';
25
- export { HelixActivateEvent, HelixBeforeActivateEvent, HelixBeforeChangeEvent, HelixBeforeCloseEvent, HelixBeforeCollapseEvent, HelixBeforeEditEvent, HelixBeforeMoveEvent, HelixBeforeOpenEvent, HelixBeforePanelResizeEvent, HelixBeforePinEvent, HelixBeforeReconnectEvent, HelixBeforeRelabelEvent, HelixBeforeResizeEvent, HelixBeforeSplitEvent, HelixBeforeToggleEvent, HelixCanvasEditEvent, HelixCanvasPanEvent, HelixCanvasViewEvent, HelixCanvasZoomEvent, HelixCaretEvent, HelixCollapseEvent, HelixCompleteEvent, HelixConnectEvent, HelixConsoleEvent, HelixCopyEvent, HelixCreateEvent, HelixDismissEvent, HelixFacetEvent, HelixFilterEvent, HelixFilteredEvent, HelixGraphFilterEvent, HelixGraphLayoutEvent, HelixGraphPanEvent, HelixGraphPartChangeEvent, HelixGraphReadyEvent, HelixGraphSignalEvent, HelixGraphZoomEvent, HelixHistoryEvent, HelixMapClusterEvent, HelixMapPanEvent, HelixMapPartChangeEvent, HelixMapReadyEvent, HelixMapRotateEvent, HelixMapTiltEvent, HelixMapZoomEvent, HelixMoveEvent, HelixNavigateEvent, HelixNextEvent, HelixPinEvent, HelixPreviousEvent, HelixReadEvent, HelixReconnectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixTourAskEvent, } from './events/events.js';
31
+ export { HelixActionEvent, HelixActivateEvent, HelixAuraFallbackEvent, 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, HelixPreviousEvent, HelixRangeChangeEvent, HelixReadEvent, HelixReconnectEvent, HelixRejectEvent, HelixRelabelEvent, HelixRemoveEvent, HelixReorderEvent, HelixReorderedEvent, HelixResizedEvent, HelixResizeEvent, HelixSampleEndEvent, HelixSampleStartEvent, HelixScrolledEvent, HelixSelectEvent, HelixSelectedEvent, HelixSendEvent, HelixShortcutEvent, HelixSortEvent, HelixSortedEvent, HelixSplitEvent, HelixToggleEvent, HelixTourAskEvent, HelixTypingEvent, } from './events/events.js';
26
32
  export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
27
33
  export { HelixFormElement } from './helix-form-element/helix-form-element.js';
28
34
  export { MixinChartSource, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
@@ -35,22 +41,32 @@ export { MixinDismissible, } from './mixins/mixin-dismissible/mixin-dismissible.
35
41
  export { MixinField } from './mixins/mixin-field/mixin-field.js';
36
42
  export { MixinPickerEditing, } from './mixins/mixin-picker-editing/mixin-picker-editing.js';
37
43
  export { MixinPickerField, } from './mixins/mixin-picker-field/mixin-picker-field.js';
44
+ export { MixinSegmentedField, } from './mixins/mixin-segmented-field/mixin-segmented-field.js';
38
45
  export { MixinSelectableItem, } from './mixins/mixin-selectable-item/mixin-selectable-item.js';
39
46
  export { MixinTokens } from './mixins/mixin-tokens/mixin-tokens.js';
40
47
  export { MixinViewport, } from './mixins/mixin-viewport/mixin-viewport.js';
41
48
  export { anchorElement } from './utils/anchor-element/anchor-element.js';
49
+ export { arrowReach, sideOf } from './utils/arrow/arrow.js';
50
+ export { addDays, addMonths, barredBy, localToday, monthOf, monthOut, periodCells, periodKey, periodMove, sameMonth, weekStartOf, YEARS_SHOWN, yearOut, yearPageOf, } from './utils/calendar/calendar.js';
42
51
  export { capturePointer } from './utils/capture-pointer/capture-pointer.js';
52
+ export { ariaChord, chordParts, matchesChord, printableChord, } from './utils/chord/chord.js';
53
+ export { clockLocale, dayPeriod, isTwelveHour, nearestTime, offeredTimes, timeBarred, timeFault, wheelParts, wholeHour, } from './utils/clock/clock.js';
43
54
  export { closestInstance } from './utils/closest-instance/closest-instance.js';
55
+ export { colorName, hueName } from './utils/color-name/color-name.js';
56
+ export { countLabel } from './utils/count-label/count-label.js';
44
57
  export { createSheet } from './utils/create-sheet/create-sheet.js';
45
- export { formatColor, parseColor, toCss, } from './utils/css-color/css-color.js';
58
+ export { formatColor, parseColor, toCss, toHsl, toRgb, } from './utils/css-color/css-color.js';
46
59
  export { customElement, definedTags, duplicateRegistrations, } from './utils/custom-element/custom-element.js';
60
+ export { drawDismiss, drawDismissGlyph, } from './utils/draw-dismiss/draw-dismiss.js';
47
61
  export { drawIcon } from './utils/draw-icon/draw-icon.js';
48
62
  export { CHART_PLOT, drawTooltip } from './utils/draw-tooltip/draw-tooltip.js';
49
63
  export { elapsedTime } from './utils/elapsed-time/elapsed-time.js';
50
64
  export { elementById, searchableById, } from './utils/element-by-id/element-by-id.js';
51
65
  export { fillTemplate } from './utils/fill-template/fill-template.js';
52
66
  export { deepActiveElement, deepContains, focusableElements, } from './utils/focusable-elements/focusable-elements.js';
67
+ export { afterLinkFollowed, followLink, } from './utils/follow-link/follow-link.js';
53
68
  export { formatNumbers } from './utils/format-numbers/format-numbers.js';
69
+ export { headingIn, headingsIn } from './utils/heading-in/heading-in.js';
54
70
  export { hostAria } from './utils/host-aria/host-aria.js';
55
71
  export { forgetDisabled, inheritDisabled, } from './utils/inherit-disabled/inherit-disabled.js';
56
72
  export { inlineStep } from './utils/inline-step/inline-step.js';
@@ -59,9 +75,13 @@ export { keyClaimed } from './utils/key-claimed/key-claimed.js';
59
75
  export { linePath } from './utils/line-path/line-path.js';
60
76
  export { markRegion } from './utils/mark-region/mark-region.js';
61
77
  export { copiesOf, sameCopies, } from './utils/media-copy/media-copy.js';
78
+ export { formatNumber, parseNumber } from './utils/number-format/number-format.js';
62
79
  export { onUnlessFalse } from './utils/on-unless-false/on-unless-false.js';
63
- export { readColor } from './utils/read-color/read-color.js';
64
- export { byRow, readRows, readSeries, unbroken, } from './utils/read-series/read-series.js';
80
+ export { appleTouch, onApple } from './utils/platform/platform.js';
81
+ export { rangeAdd } from './utils/range-add/range-add.js';
82
+ export { readColor, rgbOf } from './utils/read-color/read-color.js';
83
+ export { byRow, readRows, readSeries, seriesKey, unbroken, } from './utils/read-series/read-series.js';
84
+ export { linkDescription, reflectElements, unlinkDescription, } from './utils/reflect-elements/reflect-elements.js';
65
85
  export { relativeTime, } from './utils/relative-time/relative-time.js';
66
86
  export { measuring, RENDER_SLOT, reportRender } from './utils/report-render/report-render.js';
67
87
  export { RUNTIME_LOG, RUNTIME_SLOT, reportRuntime, } from './utils/report-runtime/report-runtime.js';
@@ -70,6 +90,7 @@ export { reportValues } from './utils/report-values/report-values.js';
70
90
  export { requestChange, } from './utils/request-change/request-change.js';
71
91
  export { resolveActiveItem, } from './utils/resolve-active-item/resolve-active-item.js';
72
92
  export { holdCaret, restoreValue } from './utils/restore-value/restore-value.js';
93
+ export { rovingStop } from './utils/roving-stop/roving-stop.js';
73
94
  export { extent, linear } from './utils/scale/scale.js';
74
95
  export { ticks } from './utils/scale/ticks.js';
75
96
  export { scrollItemIntoView, } from './utils/scroll-item-into-view/scroll-item-into-view.js';
@@ -77,11 +98,12 @@ export { lockScroll, scrollHolders, unlockScroll } from './utils/scroll-lock/scr
77
98
  export { slotFilled } from './utils/slot-filled/slot-filled.js';
78
99
  export { slottedWords } from './utils/slotted-words/slotted-words.js';
79
100
  export { splitValues } from './utils/split-values/split-values.js';
101
+ export { edgeOffset, FLING, parseSnapPoints, settleSwipe, snapTravel, swipeAxis, swipeEdge, swipeStep, towardEdge, } from './utils/swipe/swipe.js';
80
102
  export { tellDisclosure } from './utils/tell-disclosure/tell-disclosure.js';
81
103
  export { subscribe } from './utils/ticker/ticker.js';
82
104
  export { TONE_MARKS, toneMark, } from './utils/tone-marks/tone-marks.js';
83
- export { dateAsValue, isDateValue, isTimeValue, minutesAsValue, numberAsValue, timeAsValue, valueAsDate, valueAsMinutes, valueAsNumber, valueAsTime, } from './utils/value-as/value-as.js';
105
+ export { dateAsValue, isClockValue, isDateValue, isTimeValue, minutesAsValue, numberAsValue, secondsAsValue, timeAsValue, valueAsDate, valueAsMinutes, valueAsNumber, valueAsSeconds, valueAsTime, } from './utils/value-as/value-as.js';
84
106
  export { watchTheme } from './utils/watch-theme/watch-theme.js';
85
- export { writeTime } from './utils/write-time/write-time.js';
86
- export { writtenList, writtenNumbers } from './utils/written-list/written-list.js';
107
+ export { writeClock, writeTime } from './utils/write-time/write-time.js';
108
+ export { commaList, toggleValue, writtenList, writtenNumbers, } from './utils/written-list/written-list.js';
87
109
  export { VERSION } from './version.js';
@@ -1,6 +1,6 @@
1
1
  import { ChartPointerController } from '../../controllers/chart-pointer-controller/chart-pointer-controller.js';
2
2
  import type { HelixElement } from '../../helix-element/helix-element.js';
3
- import type { Row, Series } from '../../utils/read-series/read-series.js';
3
+ import { type Row, type Series } from '../../utils/read-series/read-series.js';
4
4
  type Constructor<T> = new (...args: any[]) => T;
5
5
  /**
6
6
  * How many colors the series palette has, and so where it starts over.
@@ -45,7 +45,7 @@ export declare const PLOT_HEIGHT = 100;
45
45
  * nothing to read off the page that says why.
46
46
  *
47
47
  * `writtenList` is the split, and carries the argument for accepting a comma.
48
- * What this adds is the lowercase, the headings being matched
48
+ * What this adds is `seriesKey`, the headings being matched
49
49
  * case-insensitively.
50
50
  */
51
51
  export declare const seriesNames: (list: string | undefined) => string[];
@@ -158,6 +158,11 @@ export declare class MixinChartSourceInterface {
158
158
  * when no series was read from that column.
159
159
  */
160
160
  seriesOf(cell: number): number | undefined;
161
+ /**
162
+ * Whether the series of this name is drawn, which it is unless a legend
163
+ * reading the same table hid it.
164
+ */
165
+ showsSeries(name: string): boolean;
161
166
  /**
162
167
  * The number of readings, which the pointer position maps onto.
163
168
  */
@@ -7,12 +7,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { property } from 'lit/decorators.js';
8
8
  import { ChartPointerController } from '../../controllers/chart-pointer-controller/chart-pointer-controller.js';
9
9
  import { SourceController } from '../../controllers/source-controller/source-controller.js';
10
+ import { seriesKey } from '../../utils/read-series/read-series.js';
10
11
  import { writtenList } from '../../utils/written-list/written-list.js';
11
12
  export const PALETTE = 24;
12
13
  export const seriesIndex = (depth) => (depth % PALETTE) + 1;
13
14
  export const PLOT_WIDTH = 100;
14
15
  export const PLOT_HEIGHT = 100;
15
- export const seriesNames = (list) => writtenList(list).map((name) => name.toLowerCase());
16
+ export const seriesNames = (list) => writtenList(list).map(seriesKey);
16
17
  export const MixinChartSource = (Base) => {
17
18
  class ChartSourceElement extends Base {
18
19
  constructor() {
@@ -47,6 +48,9 @@ export const MixinChartSource = (Base) => {
47
48
  const depth = this.plottedColumns.indexOf(cell);
48
49
  return depth < 0 ? undefined : seriesIndex(depth);
49
50
  }
51
+ showsSeries(name) {
52
+ return !this.source.hidden.has(seriesKey(name));
53
+ }
50
54
  get readings() {
51
55
  return this.sourceRows.length;
52
56
  }
@@ -20,6 +20,16 @@ export declare class MixinControllerCheckedInterface {
20
20
  * Whether the control starts checked. A form reset returns it to this state.
21
21
  */
22
22
  defaultChecked: boolean;
23
+ /**
24
+ * Whether a reader can see and focus the control and cannot change it. A
25
+ * read-only control still submits its value.
26
+ */
27
+ readOnly: boolean;
28
+ /**
29
+ * Refuses a press on the inner control while the control is read-only,
30
+ * bound to its `click`.
31
+ */
32
+ protected readonly holdReadOnly: (event: Event) => void;
23
33
  /**
24
34
  * Requests a change to `checked`, and returns whether it was applied.
25
35
  *
@@ -13,6 +13,12 @@ export const MixinControllerChecked = (Base) => {
13
13
  super(...arguments);
14
14
  this.defaultChecked = false;
15
15
  this.checkedState = undefined;
16
+ this.readOnly = false;
17
+ this.holdReadOnly = (event) => {
18
+ if (this.readOnly) {
19
+ event.preventDefault();
20
+ }
21
+ };
16
22
  }
17
23
  get checked() {
18
24
  return this.checkedState ?? this.defaultChecked;
@@ -63,5 +69,8 @@ export const MixinControllerChecked = (Base) => {
63
69
  __decorate([
64
70
  property({ attribute: 'default-checked', type: Boolean })
65
71
  ], CheckedElement.prototype, "defaultChecked", void 0);
72
+ __decorate([
73
+ property({ attribute: 'readonly', reflect: true, type: Boolean })
74
+ ], CheckedElement.prototype, "readOnly", void 0);
66
75
  return CheckedElement;
67
76
  };