@fusion.dev/helix-core 0.148.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 +8518 -6050
- 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/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/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.js +2 -1
- 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 +10 -4
- package/dist/index.js +10 -4
- package/dist/mixins/mixin-chart-source/mixin-chart-source.d.ts +2 -2
- package/dist/mixins/mixin-chart-source/mixin-chart-source.js +3 -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 +15 -34
- package/dist/utils/calendar/calendar.d.ts +27 -0
- package/dist/utils/calendar/calendar.js +17 -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/date-segments/date-segments.d.ts +2 -1
- package/dist/utils/date-segments/date-segments.js +10 -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/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 +7 -4
- package/dist/utils/slotted-words/slotted-words.d.ts +3 -2
- package/dist/utils/slotted-words/slotted-words.js +3 -1
- 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,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,4 +1,4 @@
|
|
|
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';
|
|
@@ -26,13 +26,14 @@ export { PlacementController } from './controllers/placement-controller/placemen
|
|
|
26
26
|
export { PopoverController, type PopoverOptions, } from './controllers/popover-controller/popover-controller.js';
|
|
27
27
|
export { RelativeClockController, type RelativeClockOptions, } from './controllers/relative-clock-controller/relative-clock-controller.js';
|
|
28
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';
|
|
29
30
|
export { SourceController, type SourceHost, } from './controllers/source-controller/source-controller.js';
|
|
30
31
|
export { drawStatus, type SayOptions, StatusController, } from './controllers/status-controller/status-controller.js';
|
|
31
32
|
export { SwipeController, type SwipeOptions, } from './controllers/swipe-controller/swipe-controller.js';
|
|
32
33
|
export { type TokenColor, TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
|
|
33
34
|
export { type Rendered, VirtualizeController, type VirtualizeOptions, type Window as VirtualizeWindow, } from './controllers/virtualize-controller/virtualize-controller.js';
|
|
34
35
|
export { eventsForTag, registerElementEvents } from './events/element-events.js';
|
|
35
|
-
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';
|
|
36
37
|
export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
|
|
37
38
|
export { HelixFormElement } from './helix-form-element/helix-form-element.js';
|
|
38
39
|
export { MixinChartSource, type MixinChartSourceInterface, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, POSITION_LABEL, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
|
|
@@ -54,7 +55,7 @@ export { anchorElement } from './utils/anchor-element/anchor-element.js';
|
|
|
54
55
|
export { arrowReach, sideOf } from './utils/arrow/arrow.js';
|
|
55
56
|
export { assignSlots } from './utils/assign-slots/assign-slots.js';
|
|
56
57
|
export { type DrawAutofillOptions, drawAutofill, } from './utils/autofill-select/autofill-select.js';
|
|
57
|
-
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';
|
|
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';
|
|
58
59
|
export { capturePointer } from './utils/capture-pointer/capture-pointer.js';
|
|
59
60
|
export { centerInView } from './utils/center-in-view/center-in-view.js';
|
|
60
61
|
export { ariaChord, type ChordPress, chordParts, matchesChord, printableChord, selectsAll, } from './utils/chord/chord.js';
|
|
@@ -94,7 +95,7 @@ export { isRtl } from './utils/is-rtl/is-rtl.js';
|
|
|
94
95
|
export { keyClaimed } from './utils/key-claimed/key-claimed.js';
|
|
95
96
|
export { type Curve, linePath, type Point } from './utils/line-path/line-path.js';
|
|
96
97
|
export { type EndInSight, endInSight } from './utils/load-more/load-more.js';
|
|
97
|
-
export { localeOf } from './utils/locale-of/locale-of.js';
|
|
98
|
+
export { localeOf, runtimeLocale } from './utils/locale-of/locale-of.js';
|
|
98
99
|
export { markRegion, type RegionOptions } from './utils/mark-region/mark-region.js';
|
|
99
100
|
export { copiesOf, type MediaCopy, sameCopies, } from './utils/media-copy/media-copy.js';
|
|
100
101
|
export { nameText } from './utils/name-text/name-text.js';
|
|
@@ -110,6 +111,7 @@ export { type ColorBytes, readColor, rgbOf } from './utils/read-color/read-color
|
|
|
110
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';
|
|
111
112
|
export { type ElementsProperty, linkDescription, reflectElements, unlinkDescription, } from './utils/reflect-elements/reflect-elements.js';
|
|
112
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';
|
|
113
115
|
export { measuring, RENDER_SLOT, reportRender } from './utils/report-render/report-render.js';
|
|
114
116
|
export { RUNTIME_LOG, RUNTIME_SLOT, type RuntimeEvent, type RuntimeKind, reportRuntime, } from './utils/report-runtime/report-runtime.js';
|
|
115
117
|
export { noteVersion, reportUsage, USAGE_SLOT, VERSIONS_SLOT, } from './utils/report-usage/report-usage.js';
|
|
@@ -142,3 +144,7 @@ export { wordsConverter } from './utils/words-converter/words-converter.js';
|
|
|
142
144
|
export { writeClock, writeTime } from './utils/write-time/write-time.js';
|
|
143
145
|
export { anchorAt, commaList, everyState, inRowOrder, pressedValue, prunedValue, type SelectionMode, toggleEvery, toggleValue, writtenList, writtenNumbers, } from './utils/written-list/written-list.js';
|
|
144
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,4 +1,4 @@
|
|
|
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';
|
|
@@ -26,13 +26,14 @@ export { PlacementController } from './controllers/placement-controller/placemen
|
|
|
26
26
|
export { PopoverController, } from './controllers/popover-controller/popover-controller.js';
|
|
27
27
|
export { RelativeClockController, } from './controllers/relative-clock-controller/relative-clock-controller.js';
|
|
28
28
|
export { RemotePlaybackController, } from './controllers/remote-playback-controller/remote-playback-controller.js';
|
|
29
|
+
export { ReorderController, requestReorder, } from './controllers/reorder-controller/reorder-controller.js';
|
|
29
30
|
export { SourceController, } from './controllers/source-controller/source-controller.js';
|
|
30
31
|
export { drawStatus, StatusController, } from './controllers/status-controller/status-controller.js';
|
|
31
32
|
export { SwipeController, } from './controllers/swipe-controller/swipe-controller.js';
|
|
32
33
|
export { TokenColorController, } from './controllers/token-color-controller/token-color-controller.js';
|
|
33
34
|
export { VirtualizeController, } from './controllers/virtualize-controller/virtualize-controller.js';
|
|
34
35
|
export { eventsForTag, registerElementEvents } from './events/element-events.js';
|
|
35
|
-
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';
|
|
36
37
|
export { HelixElement, whenHydrated } from './helix-element/helix-element.js';
|
|
37
38
|
export { HelixFormElement } from './helix-form-element/helix-form-element.js';
|
|
38
39
|
export { MixinChartSource, PALETTE, PLOT_HEIGHT, PLOT_WIDTH, POSITION_LABEL, seriesIndex, seriesNames, } from './mixins/mixin-chart-source/mixin-chart-source.js';
|
|
@@ -54,7 +55,7 @@ export { anchorElement } from './utils/anchor-element/anchor-element.js';
|
|
|
54
55
|
export { arrowReach, sideOf } from './utils/arrow/arrow.js';
|
|
55
56
|
export { assignSlots } from './utils/assign-slots/assign-slots.js';
|
|
56
57
|
export { drawAutofill, } from './utils/autofill-select/autofill-select.js';
|
|
57
|
-
export { addDays, addMonths, barredBy, localToday, monthOf, monthOut, periodCells, periodKey, periodMove, sameMonth, weekStartOf, YEARS_SHOWN, yearOut, yearPageOf, } from './utils/calendar/calendar.js';
|
|
58
|
+
export { addDays, addMonths, barredBy, calendarLocale, localToday, monthOf, monthOut, periodCells, periodKey, periodMove, sameMonth, weekStartOf, YEARS_SHOWN, yearOut, yearPageOf, } from './utils/calendar/calendar.js';
|
|
58
59
|
export { capturePointer } from './utils/capture-pointer/capture-pointer.js';
|
|
59
60
|
export { centerInView } from './utils/center-in-view/center-in-view.js';
|
|
60
61
|
export { ariaChord, chordParts, matchesChord, printableChord, selectsAll, } from './utils/chord/chord.js';
|
|
@@ -94,7 +95,7 @@ export { isRtl } from './utils/is-rtl/is-rtl.js';
|
|
|
94
95
|
export { keyClaimed } from './utils/key-claimed/key-claimed.js';
|
|
95
96
|
export { linePath } from './utils/line-path/line-path.js';
|
|
96
97
|
export { endInSight } from './utils/load-more/load-more.js';
|
|
97
|
-
export { localeOf } from './utils/locale-of/locale-of.js';
|
|
98
|
+
export { localeOf, runtimeLocale } from './utils/locale-of/locale-of.js';
|
|
98
99
|
export { markRegion } from './utils/mark-region/mark-region.js';
|
|
99
100
|
export { copiesOf, sameCopies, } from './utils/media-copy/media-copy.js';
|
|
100
101
|
export { nameText } from './utils/name-text/name-text.js';
|
|
@@ -110,6 +111,7 @@ export { readColor, rgbOf } from './utils/read-color/read-color.js';
|
|
|
110
111
|
export { byRow, extremesOf, readRows, readSeries, seriesKey, unbroken, } from './utils/read-series/read-series.js';
|
|
111
112
|
export { linkDescription, reflectElements, unlinkDescription, } from './utils/reflect-elements/reflect-elements.js';
|
|
112
113
|
export { relativeTime, } from './utils/relative-time/relative-time.js';
|
|
114
|
+
export { centersOf, dropMark, edgeSpeed, passedCount, placeKey, reorderKey, reorderStep, } from './utils/reorder/reorder.js';
|
|
113
115
|
export { measuring, RENDER_SLOT, reportRender } from './utils/report-render/report-render.js';
|
|
114
116
|
export { RUNTIME_LOG, RUNTIME_SLOT, reportRuntime, } from './utils/report-runtime/report-runtime.js';
|
|
115
117
|
export { noteVersion, reportUsage, USAGE_SLOT, VERSIONS_SLOT, } from './utils/report-usage/report-usage.js';
|
|
@@ -142,3 +144,7 @@ export { wordsConverter } from './utils/words-converter/words-converter.js';
|
|
|
142
144
|
export { writeClock, writeTime } from './utils/write-time/write-time.js';
|
|
143
145
|
export { anchorAt, commaList, everyState, inRowOrder, pressedValue, prunedValue, toggleEvery, toggleValue, writtenList, writtenNumbers, } from './utils/written-list/written-list.js';
|
|
144
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
|
/**
|
|
@@ -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'];
|
|
@@ -87,6 +89,7 @@ export const MixinChartSource = (Base) => {
|
|
|
87
89
|
property()
|
|
88
90
|
], ChartSourceElement.prototype, "locale", void 0);
|
|
89
91
|
__decorate([
|
|
92
|
+
words,
|
|
90
93
|
property({ attribute: 'position-label' })
|
|
91
94
|
], ChartSourceElement.prototype, "positionLabel", void 0);
|
|
92
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);
|
|
@@ -52,6 +52,11 @@ export declare class MixinTokensInterface {
|
|
|
52
52
|
* either way and this is what says what pressing it does.
|
|
53
53
|
*/
|
|
54
54
|
collapseLabel: string;
|
|
55
|
+
/**
|
|
56
|
+
* The count of the tokens past `max-tags`, as it is shown, with `{count}`
|
|
57
|
+
* for the number, written in the element's locale. `+{count}` by default.
|
|
58
|
+
*/
|
|
59
|
+
restText: string;
|
|
55
60
|
/**
|
|
56
61
|
* The cap in force right now, which is none while the reader has expanded it.
|
|
57
62
|
*
|
|
@@ -8,6 +8,7 @@ import { caretUp } from '@fusion.dev/helix-icons';
|
|
|
8
8
|
import { html, nothing } from 'lit';
|
|
9
9
|
import { property, state } from 'lit/decorators.js';
|
|
10
10
|
import { drawIcon } from '../../utils/draw-icon/draw-icon.js';
|
|
11
|
+
import { formatWords, words } from '../../words/words.js';
|
|
11
12
|
export const MixinTokens = (Base) => {
|
|
12
13
|
class TokensElement extends Base {
|
|
13
14
|
constructor() {
|
|
@@ -16,11 +17,13 @@ export const MixinTokens = (Base) => {
|
|
|
16
17
|
this.expandable = false;
|
|
17
18
|
this.expandLabel = 'Show all';
|
|
18
19
|
this.maxTags = 0;
|
|
20
|
+
this.restText = '+{count}';
|
|
19
21
|
this.expanded = false;
|
|
20
22
|
this.toggleExpanded = () => {
|
|
21
23
|
this.expanded = !this.expanded;
|
|
22
24
|
};
|
|
23
25
|
}
|
|
26
|
+
static { this.words = ''; }
|
|
24
27
|
get shownLimit() {
|
|
25
28
|
return this.expanded ? 0 : this.maxTags;
|
|
26
29
|
}
|
|
@@ -29,7 +32,9 @@ export const MixinTokens = (Base) => {
|
|
|
29
32
|
}
|
|
30
33
|
renderRest(over) {
|
|
31
34
|
if (!this.expandable) {
|
|
32
|
-
return over > 0
|
|
35
|
+
return over > 0
|
|
36
|
+
? html `<span part="rest">${formatWords(this, 'restText', { count: over })}</span>`
|
|
37
|
+
: nothing;
|
|
33
38
|
}
|
|
34
39
|
if (over < 1 && !this.expanded) {
|
|
35
40
|
return nothing;
|
|
@@ -39,7 +44,7 @@ export const MixinTokens = (Base) => {
|
|
|
39
44
|
type="button"
|
|
40
45
|
aria-label=${this.expanded ? this.collapseLabel : this.expandLabel}
|
|
41
46
|
@click=${this.toggleExpanded}
|
|
42
|
-
>${this.expanded ? drawIcon(caretUp) :
|
|
47
|
+
>${this.expanded ? drawIcon(caretUp) : formatWords(this, 'restText', { count: over })}</button
|
|
43
48
|
>`;
|
|
44
49
|
}
|
|
45
50
|
hideOverflow(slot) {
|
|
@@ -64,17 +69,23 @@ export const MixinTokens = (Base) => {
|
|
|
64
69
|
removeLastToken() { }
|
|
65
70
|
}
|
|
66
71
|
__decorate([
|
|
72
|
+
words,
|
|
67
73
|
property({ attribute: 'collapse-label' })
|
|
68
74
|
], TokensElement.prototype, "collapseLabel", void 0);
|
|
69
75
|
__decorate([
|
|
70
76
|
property({ type: Boolean })
|
|
71
77
|
], TokensElement.prototype, "expandable", void 0);
|
|
72
78
|
__decorate([
|
|
79
|
+
words,
|
|
73
80
|
property({ attribute: 'expand-label' })
|
|
74
81
|
], TokensElement.prototype, "expandLabel", void 0);
|
|
75
82
|
__decorate([
|
|
76
83
|
property({ attribute: 'max-tags', type: Number })
|
|
77
84
|
], TokensElement.prototype, "maxTags", void 0);
|
|
85
|
+
__decorate([
|
|
86
|
+
words,
|
|
87
|
+
property({ attribute: 'rest-text' })
|
|
88
|
+
], TokensElement.prototype, "restText", void 0);
|
|
78
89
|
__decorate([
|
|
79
90
|
state()
|
|
80
91
|
], TokensElement.prototype, "expanded", void 0);
|
|
@@ -15,7 +15,13 @@ export type ViewportGestures = 'activate' | 'always' | 'cooperative';
|
|
|
15
15
|
* the cooperative set, or none, while an `activate` surface waits to be pressed.
|
|
16
16
|
*/
|
|
17
17
|
export type ViewportGestureMode = 'cooperative' | 'free' | 'off';
|
|
18
|
-
/**
|
|
18
|
+
/**
|
|
19
|
+
* The words a surface says about its gestures.
|
|
20
|
+
*
|
|
21
|
+
* @deprecated Each family declares its gesture words as word properties,
|
|
22
|
+
* `activate-hint-label` and its three, which a page registers by locale.
|
|
23
|
+
* Removed in the next major version.
|
|
24
|
+
*/
|
|
19
25
|
export interface ViewportGestureLabels {
|
|
20
26
|
/** The hint while an `activate` surface waits to be pressed. */
|
|
21
27
|
activate: string;
|
|
@@ -38,18 +44,16 @@ export declare class ViewportElement {
|
|
|
38
44
|
fullscreenLabel: string;
|
|
39
45
|
/** Which gestures the surface takes from the page. Unset is the family's own. */
|
|
40
46
|
gestures?: ViewportGestures;
|
|
41
|
-
/** The hint while a surface with `gestures="activate"` waits to be pressed. */
|
|
42
|
-
activateHintLabel
|
|
43
|
-
/** The hint when one finger swipes over a surface with `gestures="cooperative"
|
|
44
|
-
twoFingerHintLabel
|
|
45
|
-
/** The line while a surface with `gestures="activate"` has the gestures. */
|
|
46
|
-
usingLabel
|
|
47
|
-
/** The hint when the wheel scrolls past a surface with `gestures="cooperative"`, with `{key}
|
|
48
|
-
wheelHintLabel
|
|
47
|
+
/** The hint while a surface with `gestures="activate"` waits to be pressed, a word property each family declares. */
|
|
48
|
+
activateHintLabel: string;
|
|
49
|
+
/** The hint when one finger swipes over a surface with `gestures="cooperative"`, a word property each family declares. */
|
|
50
|
+
twoFingerHintLabel: string;
|
|
51
|
+
/** The line while a surface with `gestures="activate"` has the gestures, a word property each family declares. */
|
|
52
|
+
usingLabel: string;
|
|
53
|
+
/** The hint when the wheel scrolls past a surface with `gestures="cooperative"`, with `{key}`, a word property each family declares. */
|
|
54
|
+
wheelHintLabel: string;
|
|
49
55
|
/** @internal Which gestures the thing drawing the surface takes right now. */
|
|
50
56
|
get gestureMode(): ViewportGestureMode;
|
|
51
|
-
/** What the surface says about its gestures where the page does not say it, which each family says for itself. */
|
|
52
|
-
protected get restingGestureLabels(): ViewportGestureLabels;
|
|
53
57
|
/** Whether an `activate` surface has been pressed, and has the gestures. */
|
|
54
58
|
protected gesturesTaken: boolean;
|
|
55
59
|
/** Whether a gesture that started with this event is the surface's to answer. */
|
|
@@ -92,10 +96,8 @@ export declare class ViewportElement {
|
|
|
92
96
|
protected readonly fullscreen: FullscreenController;
|
|
93
97
|
/** The key relay, bound by the family's own frame. */
|
|
94
98
|
protected handleKeydown: (event: KeyboardEvent) => void;
|
|
95
|
-
/** The name of the group of controls, read by screen readers. */
|
|
96
|
-
controlsLabel: string
|
|
97
|
-
/** What the group of controls is called where the page does not say, which each family says for itself. */
|
|
98
|
-
protected get restingControlsLabel(): string;
|
|
99
|
+
/** The name of the group of controls, read by screen readers, a word property each family declares. */
|
|
100
|
+
controlsLabel: string;
|
|
99
101
|
/** The pan event, built and not dispatched, for a family that names its own. */
|
|
100
102
|
protected panEvent(detail: ViewportPanDetail): Event;
|
|
101
103
|
/** The zoom event, built and not dispatched, for a family that names its own. */
|