@prestack/thread-ui 0.1.1 → 0.1.3
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/CHANGELOG.md +518 -0
- package/dist/ui/animations/anm_appear.d.ts +8 -8
- package/dist/ui/animations/anm_blur_in.d.ts +12 -12
- package/dist/ui/animations/anm_blur_out.d.ts +12 -12
- package/dist/ui/animations/anm_dismiss.d.ts +12 -12
- package/dist/ui/animations/anm_drop.d.ts +12 -12
- package/dist/ui/animations/anm_fall.d.ts +12 -12
- package/dist/ui/animations/anm_flash.d.ts +9 -9
- package/dist/ui/animations/anm_glow.d.ts +8 -8
- package/dist/ui/animations/anm_lift.d.ts +8 -8
- package/dist/ui/animations/anm_nudge.d.ts +8 -8
- package/dist/ui/animations/anm_pop_in.d.ts +16 -16
- package/dist/ui/animations/anm_pop_out.d.ts +16 -16
- package/dist/ui/animations/anm_press.d.ts +9 -9
- package/dist/ui/animations/anm_pulse.d.ts +10 -10
- package/dist/ui/animations/anm_rise.d.ts +12 -12
- package/dist/ui/animations/anm_shake.d.ts +11 -11
- package/dist/ui/animations/anm_slide_in_left.d.ts +12 -12
- package/dist/ui/animations/anm_slide_in_right.d.ts +12 -12
- package/dist/ui/animations/anm_slide_out_left.d.ts +12 -12
- package/dist/ui/animations/anm_slide_out_right.d.ts +12 -12
- package/dist/ui/animations/anm_spin.d.ts +8 -8
- package/dist/ui/animations/anm_swell.d.ts +8 -8
- package/dist/ui/animations/anm_wobble.d.ts +13 -13
- package/dist/ui/animations/anm_zoom_in.d.ts +12 -12
- package/dist/ui/animations/anm_zoom_out.d.ts +12 -12
- package/dist/ui/animations.d.ts +8 -8
- package/dist/ui/animations.js +4 -4
- package/dist/ui/animations.ts +1 -1
- package/dist/ui/attach.js +25 -80
- package/dist/ui/attach.ts +12 -69
- package/dist/ui/charts.d.ts +0 -3
- package/dist/ui/charts.js +3 -7
- package/dist/ui/charts.tsx +0 -4
- package/dist/ui/checked.d.ts +1 -1
- package/dist/ui/checked.ts +1 -1
- package/dist/ui/collector.js +1 -1
- package/dist/ui/collector.ts +1 -1
- package/dist/ui/compositions.d.ts +9 -3
- package/dist/ui/compositions.js +9 -158
- package/dist/ui/compositions.ts +6 -170
- package/dist/ui/content.js +4 -7
- package/dist/ui/content.tsx +4 -15
- package/dist/ui/controls.js +1 -1
- package/dist/ui/door.d.ts +1 -1
- package/dist/ui/elements/accordion.d.ts +2 -1
- package/dist/ui/elements/accordion.js +4 -4
- package/dist/ui/elements/accordion.tsx +2 -1
- package/dist/ui/elements/aspect-ratio.d.ts +2 -1
- package/dist/ui/elements/aspect-ratio.js +1 -1
- package/dist/ui/elements/aspect-ratio.tsx +2 -1
- package/dist/ui/elements/avatar.d.ts +2 -1
- package/dist/ui/elements/avatar.js +3 -3
- package/dist/ui/elements/avatar.tsx +2 -1
- package/dist/ui/elements/badge.d.ts +2 -1
- package/dist/ui/elements/badge.js +3 -3
- package/dist/ui/elements/badge.tsx +2 -1
- package/dist/ui/elements/bars.d.ts +2 -1
- package/dist/ui/elements/bars.js +5 -5
- package/dist/ui/elements/bars.tsx +2 -1
- package/dist/ui/elements/bars.works.js +3 -3
- package/dist/ui/elements/box.d.ts +2 -1
- package/dist/ui/elements/box.js +1 -1
- package/dist/ui/elements/box.tsx +2 -1
- package/dist/ui/elements/breadcrumb.d.ts +2 -1
- package/dist/ui/elements/breadcrumb.js +5 -5
- package/dist/ui/elements/breadcrumb.tsx +2 -1
- package/dist/ui/elements/breadcrumb.works.js +1 -1
- package/dist/ui/elements/button.d.ts +2 -1
- package/dist/ui/elements/button.js +3 -3
- package/dist/ui/elements/button.tsx +2 -1
- package/dist/ui/elements/button.works.js +2 -2
- package/dist/ui/elements/column.d.ts +2 -1
- package/dist/ui/elements/column.js +1 -1
- package/dist/ui/elements/column.tsx +2 -1
- package/dist/ui/elements/consent.d.ts +2 -1
- package/dist/ui/elements/consent.js +10 -10
- package/dist/ui/elements/consent.tsx +2 -1
- package/dist/ui/elements/consent.works.js +1 -1
- package/dist/ui/elements/donut.d.ts +2 -1
- package/dist/ui/elements/donut.js +4 -4
- package/dist/ui/elements/donut.tsx +2 -1
- package/dist/ui/elements/donut.works.js +2 -2
- package/dist/ui/elements/each.d.ts +2 -1
- package/dist/ui/elements/each.js +3 -3
- package/dist/ui/elements/each.tsx +2 -1
- package/dist/ui/elements/each.works.js +2 -2
- package/dist/ui/elements/empty.d.ts +2 -1
- package/dist/ui/elements/empty.js +2 -2
- package/dist/ui/elements/empty.tsx +2 -1
- package/dist/ui/elements/field.d.ts +2 -1
- package/dist/ui/elements/field.js +3 -3
- package/dist/ui/elements/field.tsx +2 -1
- package/dist/ui/elements/field.works.js +1 -1
- package/dist/ui/elements/funnel.d.ts +2 -1
- package/dist/ui/elements/funnel.js +5 -5
- package/dist/ui/elements/funnel.tsx +2 -1
- package/dist/ui/elements/funnel.works.js +3 -3
- package/dist/ui/elements/gauge.d.ts +2 -1
- package/dist/ui/elements/gauge.js +3 -3
- package/dist/ui/elements/gauge.tsx +2 -1
- package/dist/ui/elements/gauge.works.js +1 -1
- package/dist/ui/elements/glyph.d.ts +2 -1
- package/dist/ui/elements/glyph.js +3 -3
- package/dist/ui/elements/glyph.tsx +2 -1
- package/dist/ui/elements/glyph.works.js +1 -1
- package/dist/ui/elements/grid.d.ts +2 -1
- package/dist/ui/elements/grid.js +1 -1
- package/dist/ui/elements/grid.tsx +2 -1
- package/dist/ui/elements/heatmap.d.ts +2 -1
- package/dist/ui/elements/heatmap.js +5 -5
- package/dist/ui/elements/heatmap.tsx +2 -1
- package/dist/ui/elements/heatmap.works.js +1 -1
- package/dist/ui/elements/hit-box.d.ts +2 -1
- package/dist/ui/elements/hit-box.js +2 -2
- package/dist/ui/elements/hit-box.tsx +2 -1
- package/dist/ui/elements/hit-box.works.d.ts +2 -2
- package/dist/ui/elements/hit-box.works.js +5 -5
- package/dist/ui/elements/hit-box.works.tsx +2 -1
- package/dist/ui/elements/image.d.ts +2 -1
- package/dist/ui/elements/image.js +2 -2
- package/dist/ui/elements/image.tsx +2 -1
- package/dist/ui/elements/line-chart.d.ts +2 -1
- package/dist/ui/elements/line-chart.js +4 -4
- package/dist/ui/elements/line-chart.tsx +2 -1
- package/dist/ui/elements/line-chart.works.js +2 -2
- package/dist/ui/elements/link.d.ts +2 -1
- package/dist/ui/elements/link.js +3 -3
- package/dist/ui/elements/link.tsx +2 -1
- package/dist/ui/elements/link.works.js +1 -1
- package/dist/ui/elements/media.d.ts +2 -1
- package/dist/ui/elements/media.js +2 -2
- package/dist/ui/elements/media.tsx +2 -1
- package/dist/ui/elements/menu.d.ts +2 -1
- package/dist/ui/elements/menu.js +5 -5
- package/dist/ui/elements/menu.tsx +2 -1
- package/dist/ui/elements/menu.works.d.ts +2 -1
- package/dist/ui/elements/menu.works.js +5 -5
- package/dist/ui/elements/menu.works.tsx +2 -1
- package/dist/ui/elements/money.d.ts +3 -1
- package/dist/ui/elements/money.js +10 -5
- package/dist/ui/elements/money.tsx +12 -3
- package/dist/ui/elements/money.works.js +1 -1
- package/dist/ui/elements/pagination.d.ts +2 -1
- package/dist/ui/elements/pagination.js +5 -5
- package/dist/ui/elements/pagination.tsx +2 -1
- package/dist/ui/elements/progress.d.ts +2 -1
- package/dist/ui/elements/progress.js +3 -3
- package/dist/ui/elements/progress.tsx +2 -1
- package/dist/ui/elements/radio-group.d.ts +2 -1
- package/dist/ui/elements/radio-group.js +4 -4
- package/dist/ui/elements/radio-group.tsx +2 -1
- package/dist/ui/elements/radio-group.works.js +1 -1
- package/dist/ui/elements/row.d.ts +2 -1
- package/dist/ui/elements/row.js +1 -1
- package/dist/ui/elements/row.tsx +2 -1
- package/dist/ui/elements/scatter.d.ts +2 -1
- package/dist/ui/elements/scatter.js +3 -3
- package/dist/ui/elements/scatter.tsx +2 -1
- package/dist/ui/elements/scatter.works.js +1 -1
- package/dist/ui/elements/select.d.ts +2 -1
- package/dist/ui/elements/select.js +4 -4
- package/dist/ui/elements/select.tsx +2 -1
- package/dist/ui/elements/separator.d.ts +2 -1
- package/dist/ui/elements/separator.js +2 -2
- package/dist/ui/elements/separator.tsx +2 -1
- package/dist/ui/elements/skeleton.d.ts +2 -1
- package/dist/ui/elements/skeleton.js +2 -2
- package/dist/ui/elements/skeleton.tsx +2 -1
- package/dist/ui/elements/slider.d.ts +2 -1
- package/dist/ui/elements/slider.js +3 -3
- package/dist/ui/elements/slider.tsx +2 -1
- package/dist/ui/elements/sparkline.d.ts +2 -1
- package/dist/ui/elements/sparkline.js +3 -3
- package/dist/ui/elements/sparkline.tsx +2 -1
- package/dist/ui/elements/sparkline.works.js +1 -1
- package/dist/ui/elements/spinner.d.ts +2 -1
- package/dist/ui/elements/spinner.js +2 -2
- package/dist/ui/elements/spinner.tsx +2 -1
- package/dist/ui/elements/stack.d.ts +2 -1
- package/dist/ui/elements/stack.js +1 -1
- package/dist/ui/elements/stack.tsx +2 -1
- package/dist/ui/elements/stat.d.ts +2 -1
- package/dist/ui/elements/stat.js +3 -3
- package/dist/ui/elements/stat.tsx +2 -1
- package/dist/ui/elements/stat.works.js +1 -1
- package/dist/ui/elements/surface.d.ts +2 -1
- package/dist/ui/elements/surface.js +2 -2
- package/dist/ui/elements/surface.tsx +2 -1
- package/dist/ui/elements/surface.works.js +1 -1
- package/dist/ui/elements/table.d.ts +2 -1
- package/dist/ui/elements/table.js +4 -4
- package/dist/ui/elements/table.tsx +2 -1
- package/dist/ui/elements/table.works.js +1 -1
- package/dist/ui/elements/tabs.d.ts +2 -1
- package/dist/ui/elements/tabs.js +4 -4
- package/dist/ui/elements/tabs.tsx +2 -1
- package/dist/ui/elements/tabs.works.js +1 -1
- package/dist/ui/elements/text.d.ts +2 -1
- package/dist/ui/elements/text.js +2 -2
- package/dist/ui/elements/text.tsx +2 -1
- package/dist/ui/elements/textarea.d.ts +2 -1
- package/dist/ui/elements/textarea.js +4 -4
- package/dist/ui/elements/textarea.tsx +2 -1
- package/dist/ui/elements/time.d.ts +3 -1
- package/dist/ui/elements/time.js +7 -4
- package/dist/ui/elements/time.tsx +9 -2
- package/dist/ui/elements/time.works.d.ts +1 -0
- package/dist/ui/elements/time.works.js +7 -3
- package/dist/ui/elements/time.works.ts +6 -2
- package/dist/ui/elements/toggle.d.ts +2 -1
- package/dist/ui/elements/toggle.js +3 -3
- package/dist/ui/elements/toggle.tsx +2 -1
- package/dist/ui/elements/tooltip.d.ts +2 -1
- package/dist/ui/elements/tooltip.js +2 -2
- package/dist/ui/elements/tooltip.tsx +2 -1
- package/dist/ui/elements/tooltip.works.js +2 -2
- package/dist/ui/elements/value.d.ts +3 -1
- package/dist/ui/elements/value.js +10 -5
- package/dist/ui/elements/value.tsx +12 -3
- package/dist/ui/elements/value.works.js +1 -1
- package/dist/ui/elements.d.ts +15 -11
- package/dist/ui/elements.js +6 -6
- package/dist/ui/elements.ts +7 -7
- package/dist/ui/fonts.d.ts +1 -1
- package/dist/ui/fonts.js +1 -1
- package/dist/ui/generators/dev.d.ts +1 -2
- package/dist/ui/generators/dev.js +33 -37
- package/dist/ui/generators/dev.ts +30 -37
- package/dist/ui/generators/elements.d.ts +1 -0
- package/dist/ui/generators/elements.js +11 -9
- package/dist/ui/generators/elements.ts +12 -9
- package/dist/ui/generators/i18n.js +6 -23
- package/dist/ui/generators/i18n.ts +1 -18
- package/dist/ui/generators/icons.js +5 -14
- package/dist/ui/generators/icons.ts +1 -10
- package/dist/ui/generators/react.js +4 -5
- package/dist/ui/generators/react.ts +2 -3
- package/dist/ui/generators/routes.js +66 -51
- package/dist/ui/generators/routes.ts +67 -46
- package/dist/ui/generators/show.js +9 -6
- package/dist/ui/generators/show.ts +4 -2
- package/dist/ui/generators/styles.js +12 -16
- package/dist/ui/generators/styles.ts +1 -5
- package/dist/ui/generators/variants.js +3 -3
- package/dist/ui/generators/variants.ts +1 -1
- package/dist/ui/i18n/catalogs/en.js +1 -1
- package/dist/ui/i18n/format.js +1 -1
- package/dist/ui/i18n/translator.js +2 -2
- package/dist/ui/material.d.ts +11 -11
- package/dist/ui/material.js +1 -1
- package/dist/ui/materials/mat_bordered.d.ts +13 -13
- package/dist/ui/materials/mat_bordered.js +1 -1
- package/dist/ui/materials/mat_ceramic.d.ts +13 -13
- package/dist/ui/materials/mat_ceramic.js +1 -1
- package/dist/ui/materials/mat_clay.d.ts +13 -13
- package/dist/ui/materials/mat_clay.js +1 -1
- package/dist/ui/materials/mat_elevated.d.ts +13 -13
- package/dist/ui/materials/mat_elevated.js +1 -1
- package/dist/ui/materials/mat_flat.d.ts +25 -25
- package/dist/ui/materials/mat_flat.js +1 -1
- package/dist/ui/materials/mat_glass.d.ts +17 -17
- package/dist/ui/materials/mat_glass.js +1 -1
- package/dist/ui/materials/mat_lit.d.ts +13 -13
- package/dist/ui/materials/mat_lit.js +1 -1
- package/dist/ui/materials/mat_moulded.d.ts +9 -9
- package/dist/ui/materials/mat_moulded.js +1 -1
- package/dist/ui/materials.d.ts +30 -30
- package/dist/ui/materials.js +3 -3
- package/dist/ui/materials.ts +1 -1
- package/dist/ui/modes.d.ts +2 -2
- package/dist/ui/presented.js +5 -5
- package/dist/ui/provider.d.ts +3 -0
- package/dist/ui/provider.js +9 -10
- package/dist/ui/provider.tsx +7 -5
- package/dist/ui/screens.js +6 -6
- package/dist/ui/screens.ts +1 -1
- package/dist/ui/scroll-lock.js +1 -1
- package/dist/ui/series.js +1 -1
- package/dist/ui/styleguide.js +1 -1
- package/dist/ui/tokens.d.ts +2 -2
- package/dist/ui/tokens.js +3 -3
- package/dist/ui/tokens.ts +1 -1
- package/dist/ui/validators.js +1 -1
- package/dist/ui/variant.d.ts +37 -37
- package/dist/ui/variant.js +2 -2
- package/dist/ui/variants/var_avatar-round.d.ts +13 -13
- package/dist/ui/variants/var_avatar-round.js +1 -1
- package/dist/ui/variants/var_bubble-me.d.ts +12 -12
- package/dist/ui/variants/var_bubble-me.js +1 -1
- package/dist/ui/variants/var_bubble-them.d.ts +10 -10
- package/dist/ui/variants/var_bubble-them.js +1 -1
- package/dist/ui/variants/var_button-border.d.ts +61 -61
- package/dist/ui/variants/var_button-border.js +1 -1
- package/dist/ui/variants/var_button-cta.d.ts +61 -61
- package/dist/ui/variants/var_button-cta.js +1 -1
- package/dist/ui/variants/var_button-destructive-ghost.d.ts +59 -59
- package/dist/ui/variants/var_button-destructive-ghost.js +1 -1
- package/dist/ui/variants/var_button-destructive.d.ts +61 -61
- package/dist/ui/variants/var_button-destructive.js +1 -1
- package/dist/ui/variants/var_button-fill.d.ts +61 -61
- package/dist/ui/variants/var_button-fill.js +1 -1
- package/dist/ui/variants/var_button-ghost.d.ts +59 -59
- package/dist/ui/variants/var_button-ghost.js +1 -1
- package/dist/ui/variants/var_button-glass.d.ts +40 -40
- package/dist/ui/variants/var_button-glass.js +1 -1
- package/dist/ui/variants/var_button-normal.d.ts +61 -61
- package/dist/ui/variants/var_button-normal.js +1 -1
- package/dist/ui/variants/var_button-quiet.d.ts +63 -63
- package/dist/ui/variants/var_button-quiet.js +1 -1
- package/dist/ui/variants/var_card.d.ts +17 -17
- package/dist/ui/variants/var_card.js +1 -1
- package/dist/ui/variants/var_chip.d.ts +10 -10
- package/dist/ui/variants/var_chip.js +1 -1
- package/dist/ui/variants/var_choice.d.ts +15 -15
- package/dist/ui/variants/var_choice.js +1 -1
- package/dist/ui/variants/var_framed.d.ts +5 -5
- package/dist/ui/variants/var_framed.js +1 -1
- package/dist/ui/variants/var_glyph-plain.d.ts +7 -7
- package/dist/ui/variants/var_glyph-plain.js +1 -1
- package/dist/ui/variants/var_input.d.ts +30 -30
- package/dist/ui/variants/var_input.js +1 -1
- package/dist/ui/variants/var_link-inline.d.ts +17 -17
- package/dist/ui/variants/var_link-inline.js +1 -1
- package/dist/ui/variants/var_list-row.d.ts +22 -22
- package/dist/ui/variants/var_list-row.js +1 -1
- package/dist/ui/variants/var_rule.d.ts +5 -5
- package/dist/ui/variants/var_rule.js +1 -1
- package/dist/ui/variants/var_skeleton-block.d.ts +9 -9
- package/dist/ui/variants/var_skeleton-block.js +1 -1
- package/dist/ui/variants/var_spinner-turning.d.ts +9 -9
- package/dist/ui/variants/var_spinner-turning.js +1 -1
- package/dist/ui/variants/var_stat-tile.d.ts +10 -10
- package/dist/ui/variants/var_stat-tile.js +1 -1
- package/dist/ui/variants/var_tab-bar.d.ts +14 -14
- package/dist/ui/variants/var_tab-bar.js +1 -1
- package/dist/ui/variants/var_tap-target.d.ts +11 -11
- package/dist/ui/variants/var_tap-target.js +1 -1
- package/dist/ui/variants.d.ts +88 -88
- package/dist/ui/wrappers.d.ts +7 -6
- package/dist/ui/wrappers.js +16 -14
- package/dist/ui/wrappers.tsx +21 -18
- package/package.json +2 -2
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from 'react';
|
|
2
2
|
import type { Subject } from '../drag.ts';
|
|
3
|
+
import type { Dispatching } from '../checked.ts';
|
|
3
4
|
import { type Element } from '../wrappers.tsx';
|
|
4
5
|
export interface HitBoxProps {
|
|
5
6
|
readonly children: ReactNode;
|
|
@@ -12,8 +13,8 @@ export interface HitBoxProps {
|
|
|
12
13
|
readonly dwell?: number;
|
|
13
14
|
readonly moves?: boolean;
|
|
14
15
|
readonly onDrop?: () => void;
|
|
15
|
-
readonly dispatch?: string;
|
|
16
16
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
17
|
+
readonly dispatch?: keyof Dispatching;
|
|
17
18
|
readonly invokeOn?: 'press' | 'shown';
|
|
18
19
|
}
|
|
19
20
|
export declare const HitBox: Element<'HitBox', HitBoxProps>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { element, useSurface } from
|
|
4
|
-
import { shown, uses, wires } from
|
|
3
|
+
import { element, useSurface } from '../wrappers.js';
|
|
4
|
+
import { shown, uses, wires } from './hit-box.works.js';
|
|
5
5
|
export const HitBox = element('HitBox', (props, className) => {
|
|
6
6
|
const kept = uses(props);
|
|
7
7
|
const surface = useSurface({ className,
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import type { ReactNode } from 'react'
|
|
4
4
|
import type { Subject } from '../drag.ts'
|
|
5
5
|
|
|
6
|
+
import type { Dispatching } from '../checked.ts'
|
|
6
7
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
7
8
|
import { shown, uses, wires } from './hit-box.works.tsx'
|
|
8
9
|
|
|
@@ -18,8 +19,8 @@ export interface HitBoxProps {
|
|
|
18
19
|
readonly dwell?: number
|
|
19
20
|
readonly moves?: boolean
|
|
20
21
|
readonly onDrop?: () => void
|
|
21
|
-
readonly dispatch?: string
|
|
22
22
|
readonly input?: Readonly<Record<string, unknown>>
|
|
23
|
+
readonly dispatch?: keyof Dispatching
|
|
23
24
|
readonly invokeOn?: 'press' | 'shown'
|
|
24
25
|
}
|
|
25
26
|
|
|
@@ -20,7 +20,7 @@ export declare function uses(props: HitBoxProps): {
|
|
|
20
20
|
readonly speed?: number;
|
|
21
21
|
} | undefined;
|
|
22
22
|
animates: boolean;
|
|
23
|
-
holds: ("
|
|
23
|
+
holds: ("active" | "arriving" | "carrying" | "disabled" | "doubleTapped" | "draggedOver" | "dragging" | "empty" | "focus" | "hover" | "invalid" | "leaving" | "loading" | "pinching" | "pressing" | "refusing" | "rotating" | "scrolling" | "spinner" | "swiping" | "tapped")[];
|
|
24
24
|
id: string;
|
|
25
25
|
claimed: import("../signals.ts").GestureEntry;
|
|
26
26
|
down: boolean;
|
|
@@ -52,7 +52,7 @@ export declare function uses(props: HitBoxProps): {
|
|
|
52
52
|
setLean: import("react").Dispatch<import("react").SetStateAction<number>>;
|
|
53
53
|
leanSpeed: import("react").RefObject<number>;
|
|
54
54
|
lastTick: import("react").RefObject<number>;
|
|
55
|
-
grabbed: import("react").RefObject<
|
|
55
|
+
grabbed: import("react").RefObject<readonly Subject[] | Subject | undefined>;
|
|
56
56
|
grabsKey: string;
|
|
57
57
|
tuned: import("react").RefObject<Readonly<Record<string, number>> | undefined>;
|
|
58
58
|
tuningKey: string;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { gestureFor, gestureNames, holds as declared, recognise } from
|
|
3
|
+
import { gestureFor, gestureNames, holds as declared, recognise } from '../signals.js';
|
|
4
4
|
import { useCallback, useEffect, useId, useRef, useState, useSyncExternalStore } from 'react';
|
|
5
5
|
import { createPortal } from 'react-dom';
|
|
6
|
-
import { accepted, beginDrag, claimGesture, collect, currentLayout, dragSession, dragStatusOf, dwell, endDrag, innermostTarget, moveDrag, pullEdges, registerTarget, releaseGesture, subscribeDrag, } from
|
|
7
|
-
import { measured, placed } from
|
|
8
|
-
import { nameOf } from
|
|
9
|
-
import { useUi } from
|
|
6
|
+
import { accepted, beginDrag, claimGesture, collect, currentLayout, dragSession, dragStatusOf, dwell, endDrag, innermostTarget, moveDrag, pullEdges, registerTarget, releaseGesture, subscribeDrag, } from '../drag.js';
|
|
7
|
+
import { measured, placed } from '../charts.js';
|
|
8
|
+
import { nameOf } from '../token.js';
|
|
9
|
+
import { useUi } from '../wrappers.js';
|
|
10
10
|
const held = (row) => `var(${nameOf(row)})`;
|
|
11
11
|
const TOUCH_ACTION = {
|
|
12
12
|
x: 'touch-down',
|
|
@@ -28,6 +28,7 @@ import {
|
|
|
28
28
|
import { measured, placed } from '../charts.tsx'
|
|
29
29
|
import { nameOf } from '../token.ts'
|
|
30
30
|
import { useSurface, useUi } from '../wrappers.tsx'
|
|
31
|
+
import type { Dispatching } from '../checked.ts'
|
|
31
32
|
import type { HitBoxProps } from './hit-box.tsx'
|
|
32
33
|
|
|
33
34
|
export type Axis = 'x' | 'y' | 'both'
|
|
@@ -289,7 +290,7 @@ export function wires(props: HitBoxProps, kept: ReturnType<typeof uses>, surface
|
|
|
289
290
|
)
|
|
290
291
|
|
|
291
292
|
const onDrop = props.onDrop
|
|
292
|
-
const named = props.dispatch
|
|
293
|
+
const named: keyof Dispatching | undefined = props.dispatch
|
|
293
294
|
const carriedInput = props.input
|
|
294
295
|
const collects = props.collects
|
|
295
296
|
useEffect(() => {
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
|
+
import type { Dispatching } from '../checked.ts';
|
|
2
3
|
import { type Element } from '../wrappers.tsx';
|
|
3
4
|
export interface ImageProps {
|
|
4
5
|
readonly src: string;
|
|
5
6
|
readonly altKey: MessageKey;
|
|
6
|
-
readonly dispatch?:
|
|
7
|
+
readonly dispatch?: keyof Dispatching;
|
|
7
8
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
8
9
|
readonly invokeOn?: 'press' | 'shown';
|
|
9
10
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { element, useSurface } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
5
|
export const Image = element('Image', (props, className) => {
|
|
6
6
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
7
7
|
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) }, });
|
|
@@ -3,13 +3,14 @@
|
|
|
3
3
|
import type { MessageKey } from '../content.tsx'
|
|
4
4
|
import { roleClass } from '../fonts.ts'
|
|
5
5
|
|
|
6
|
+
import type { Dispatching } from '../checked.ts'
|
|
6
7
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
7
8
|
|
|
8
9
|
|
|
9
10
|
export interface ImageProps {
|
|
10
11
|
readonly src: string
|
|
11
12
|
readonly altKey: MessageKey
|
|
12
|
-
readonly dispatch?:
|
|
13
|
+
readonly dispatch?: keyof Dispatching
|
|
13
14
|
readonly input?: Readonly<Record<string, unknown>>
|
|
14
15
|
readonly invokeOn?: 'press' | 'shown'
|
|
15
16
|
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
2
|
import type { Row } from '../charts.tsx';
|
|
3
|
+
import type { Dispatching } from '../checked.ts';
|
|
3
4
|
import { type Element } from '../wrappers.tsx';
|
|
4
5
|
export interface LineChartProps {
|
|
5
6
|
readonly rows: readonly Row[];
|
|
6
7
|
readonly by?: string;
|
|
7
8
|
readonly value: string;
|
|
8
9
|
readonly titleKey?: MessageKey;
|
|
9
|
-
readonly dispatch?:
|
|
10
|
+
readonly dispatch?: keyof Dispatching;
|
|
10
11
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
11
12
|
readonly invokeOn?: 'press' | 'shown';
|
|
12
13
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { element, useSurface } from
|
|
5
|
-
import { Each } from
|
|
6
|
-
import { drawing, lines, uses } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
|
+
import { Each } from '../elements/each.js';
|
|
6
|
+
import { drawing, lines, uses } from './line-chart.works.js';
|
|
7
7
|
export const LineChart = element('LineChart', (props, className) => {
|
|
8
8
|
const kept = uses(props);
|
|
9
9
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
@@ -4,6 +4,7 @@ import type { MessageKey } from '../content.tsx'
|
|
|
4
4
|
import type { Row } from '../charts.tsx'
|
|
5
5
|
import { roleClass } from '../fonts.ts'
|
|
6
6
|
|
|
7
|
+
import type { Dispatching } from '../checked.ts'
|
|
7
8
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
8
9
|
import { Each } from '../elements/each.tsx'
|
|
9
10
|
import { drawing, lines, uses } from './line-chart.works.ts'
|
|
@@ -14,7 +15,7 @@ export interface LineChartProps {
|
|
|
14
15
|
readonly by?: string
|
|
15
16
|
readonly value: string
|
|
16
17
|
readonly titleKey?: MessageKey
|
|
17
|
-
readonly dispatch?:
|
|
18
|
+
readonly dispatch?: keyof Dispatching
|
|
18
19
|
readonly input?: Readonly<Record<string, unknown>>
|
|
19
20
|
readonly invokeOn?: 'press' | 'shown'
|
|
20
21
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { seriesColour } from
|
|
2
|
-
import { num, polyline, str, useRamp } from
|
|
1
|
+
import { seriesColour } from '../series.js';
|
|
2
|
+
import { num, polyline, str, useRamp } from '../charts.js';
|
|
3
3
|
const WIDE = 300;
|
|
4
4
|
const TALL = 120;
|
|
5
5
|
export function lines(props, _kept) {
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
2
|
import { type FontRoleId } from '../fonts.ts';
|
|
3
|
+
import type { Dispatching } from '../checked.ts';
|
|
3
4
|
import { type Element } from '../wrappers.tsx';
|
|
4
5
|
export interface LinkProps {
|
|
5
6
|
readonly navigateTo: string;
|
|
6
7
|
readonly labelKey: MessageKey;
|
|
7
8
|
readonly is?: FontRoleId;
|
|
8
|
-
readonly dispatch?:
|
|
9
|
+
readonly dispatch?: keyof Dispatching;
|
|
9
10
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
10
11
|
readonly invokeOn?: 'press' | 'shown';
|
|
11
12
|
}
|
package/dist/ui/elements/link.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { element, useSurface } from
|
|
5
|
-
import { uses } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
|
+
import { uses } from './link.works.js';
|
|
6
6
|
export const Link = element('Link', (props, className) => {
|
|
7
7
|
const kept = uses(props);
|
|
8
8
|
const surface = useSurface({ className: roleClass(props.is, className),
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import type { MessageKey } from '../content.tsx'
|
|
4
4
|
import { roleClass, type FontRoleId } from '../fonts.ts'
|
|
5
5
|
|
|
6
|
+
import type { Dispatching } from '../checked.ts'
|
|
6
7
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
7
8
|
import { uses } from './link.works.ts'
|
|
8
9
|
|
|
@@ -11,7 +12,7 @@ export interface LinkProps {
|
|
|
11
12
|
readonly navigateTo: string
|
|
12
13
|
readonly labelKey: MessageKey
|
|
13
14
|
readonly is?: FontRoleId
|
|
14
|
-
readonly dispatch?:
|
|
15
|
+
readonly dispatch?: keyof Dispatching
|
|
15
16
|
readonly input?: Readonly<Record<string, unknown>>
|
|
16
17
|
readonly invokeOn?: 'press' | 'shown'
|
|
17
18
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
|
+
import type { Dispatching } from '../checked.ts';
|
|
2
3
|
import { type Element } from '../wrappers.tsx';
|
|
3
4
|
export interface MediaProps {
|
|
4
5
|
readonly as: 'image' | 'video' | 'audio' | 'file';
|
|
5
6
|
readonly src: string;
|
|
6
7
|
readonly altKey: MessageKey;
|
|
7
|
-
readonly dispatch?:
|
|
8
|
+
readonly dispatch?: keyof Dispatching;
|
|
8
9
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
9
10
|
readonly invokeOn?: 'press' | 'shown';
|
|
10
11
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { element, useSurface } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
5
|
export const Media = element('Media', (props, className) => {
|
|
6
6
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
7
7
|
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) }, });
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import type { MessageKey } from '../content.tsx'
|
|
4
4
|
import { roleClass } from '../fonts.ts'
|
|
5
5
|
|
|
6
|
+
import type { Dispatching } from '../checked.ts'
|
|
6
7
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
7
8
|
|
|
8
9
|
|
|
@@ -10,7 +11,7 @@ export interface MediaProps {
|
|
|
10
11
|
readonly as: 'image' | 'video' | 'audio' | 'file'
|
|
11
12
|
readonly src: string
|
|
12
13
|
readonly altKey: MessageKey
|
|
13
|
-
readonly dispatch?:
|
|
14
|
+
readonly dispatch?: keyof Dispatching
|
|
14
15
|
readonly input?: Readonly<Record<string, unknown>>
|
|
15
16
|
readonly invokeOn?: 'press' | 'shown'
|
|
16
17
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
2
|
import type { Row } from '../charts.tsx';
|
|
3
|
+
import type { Dispatching } from '../checked.ts';
|
|
3
4
|
import { type Element } from '../wrappers.tsx';
|
|
4
5
|
export interface MenuProps {
|
|
5
6
|
readonly labelKey: MessageKey;
|
|
6
7
|
readonly items: readonly Row[];
|
|
7
8
|
readonly side?: string;
|
|
8
|
-
readonly dispatch?:
|
|
9
|
+
readonly dispatch?: keyof Dispatching;
|
|
9
10
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
10
11
|
readonly invokeOn?: 'press' | 'shown';
|
|
11
12
|
}
|
package/dist/ui/elements/menu.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { Presented, MenuRow } from
|
|
5
|
-
import { element, useSurface } from
|
|
6
|
-
import { Each } from
|
|
7
|
-
import { measured, opener, portal, listing, row, uses } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { Presented, MenuRow } from './menu.works.js';
|
|
5
|
+
import { element, useSurface } from '../wrappers.js';
|
|
6
|
+
import { Each } from '../elements/each.js';
|
|
7
|
+
import { measured, opener, portal, listing, row, uses } from './menu.works.js';
|
|
8
8
|
export const Menu = element('Menu', (props, className) => {
|
|
9
9
|
const kept = uses(props);
|
|
10
10
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
@@ -5,6 +5,7 @@ import type { Row } from '../charts.tsx'
|
|
|
5
5
|
import { roleClass } from '../fonts.ts'
|
|
6
6
|
import { Presented, MenuRow } from './menu.works.tsx'
|
|
7
7
|
|
|
8
|
+
import type { Dispatching } from '../checked.ts'
|
|
8
9
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
9
10
|
import { Each } from '../elements/each.tsx'
|
|
10
11
|
import { measured, opener, portal, listing, row, uses } from './menu.works.tsx'
|
|
@@ -14,7 +15,7 @@ export interface MenuProps {
|
|
|
14
15
|
readonly labelKey: MessageKey
|
|
15
16
|
readonly items: readonly Row[]
|
|
16
17
|
readonly side?: string
|
|
17
|
-
readonly dispatch?:
|
|
18
|
+
readonly dispatch?: keyof Dispatching
|
|
18
19
|
readonly input?: Readonly<Record<string, unknown>>
|
|
19
20
|
readonly invokeOn?: 'press' | 'shown'
|
|
20
21
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
+
import type { Dispatching } from '../checked.ts';
|
|
2
3
|
import type { MessageKey } from '../content.tsx';
|
|
3
4
|
import { type Position } from '../positioning.ts';
|
|
4
5
|
import type { MenuProps } from './menu.tsx';
|
|
5
6
|
export interface MenuItem {
|
|
6
7
|
readonly labelKey: MessageKey;
|
|
7
|
-
readonly dispatch?:
|
|
8
|
+
readonly dispatch?: keyof Dispatching;
|
|
8
9
|
readonly navigateTo?: string;
|
|
9
10
|
readonly icon?: string;
|
|
10
11
|
readonly disabled?: boolean;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useEffect, useId, useRef, useState } from 'react';
|
|
4
|
-
import { positionOf } from
|
|
5
|
-
import { ITEM_ATTR, useRovingFocus } from
|
|
6
|
-
import { pressOf, usePress, useSurface } from
|
|
7
|
-
import { drawn } from
|
|
8
|
-
export { Presented } from
|
|
4
|
+
import { positionOf } from '../positioning.js';
|
|
5
|
+
import { ITEM_ATTR, useRovingFocus } from '../roving-focus.js';
|
|
6
|
+
import { pressOf, usePress, useSurface } from '../wrappers.js';
|
|
7
|
+
import { drawn } from './glyph.works.js';
|
|
8
|
+
export { Presented } from '../presented.js';
|
|
9
9
|
const SIDE = 'bottom';
|
|
10
10
|
export function MenuRow({ item, onDone, }) {
|
|
11
11
|
const { text } = useSurface({});
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { useEffect, useId, useRef, useState, type ReactNode } from 'react'
|
|
4
4
|
|
|
5
|
+
import type { Dispatching } from '../checked.ts'
|
|
5
6
|
import type { MessageKey } from '../content.tsx'
|
|
6
7
|
import { positionOf, type AnchorOptions, type Position } from '../positioning.ts'
|
|
7
8
|
import { ITEM_ATTR, useRovingFocus } from '../roving-focus.ts'
|
|
@@ -11,7 +12,7 @@ import type { MenuProps } from './menu.tsx'
|
|
|
11
12
|
|
|
12
13
|
export interface MenuItem {
|
|
13
14
|
readonly labelKey: MessageKey
|
|
14
|
-
readonly dispatch?:
|
|
15
|
+
readonly dispatch?: keyof Dispatching
|
|
15
16
|
readonly navigateTo?: string
|
|
16
17
|
readonly icon?: string
|
|
17
18
|
readonly disabled?: boolean
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { type FontRoleId } from '../fonts.ts';
|
|
2
|
+
import type { Dispatching } from '../checked.ts';
|
|
2
3
|
import { type Element } from '../wrappers.tsx';
|
|
3
4
|
export interface MoneyProps {
|
|
4
5
|
readonly value?: unknown;
|
|
5
6
|
readonly is?: FontRoleId;
|
|
6
|
-
readonly
|
|
7
|
+
readonly invalid?: boolean;
|
|
8
|
+
readonly dispatch?: keyof Dispatching;
|
|
7
9
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
8
10
|
readonly invokeOn?: 'press' | 'shown';
|
|
9
11
|
}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
|
+
import { shows } from './money.works.js';
|
|
5
6
|
export const Money = element('Money', (props, className) => {
|
|
6
7
|
const surface = useSurface({ className: roleClass(props.is, className),
|
|
7
|
-
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) },
|
|
8
|
-
|
|
8
|
+
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) },
|
|
9
|
+
holds: [
|
|
10
|
+
...(props.invalid === true ? ['invalid'] : []),
|
|
11
|
+
],
|
|
12
|
+
raises: ['invalid'], });
|
|
13
|
+
return (_jsx("span", { className: surface.className, ...surface.marks, ...surface.invokes, ...surface.a11y, children: shows(props, surface) }));
|
|
9
14
|
}, 'e-money', {});
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
'use client'
|
|
2
2
|
|
|
3
|
+
import type { MessageKey } from '../content.tsx'
|
|
3
4
|
import { roleClass, type FontRoleId } from '../fonts.ts'
|
|
4
5
|
|
|
6
|
+
import type { Dispatching } from '../checked.ts'
|
|
5
7
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
6
8
|
import { shows } from './money.works.ts'
|
|
7
9
|
|
|
@@ -9,7 +11,8 @@ import { shows } from './money.works.ts'
|
|
|
9
11
|
export interface MoneyProps {
|
|
10
12
|
readonly value?: unknown
|
|
11
13
|
readonly is?: FontRoleId
|
|
12
|
-
readonly
|
|
14
|
+
readonly invalid?: boolean
|
|
15
|
+
readonly dispatch?: keyof Dispatching
|
|
13
16
|
readonly input?: Readonly<Record<string, unknown>>
|
|
14
17
|
readonly invokeOn?: 'press' | 'shown'
|
|
15
18
|
}
|
|
@@ -18,9 +21,15 @@ export const Money: Element<'Money', MoneyProps> = element(
|
|
|
18
21
|
'Money',
|
|
19
22
|
(props: MoneyProps, className) => {
|
|
20
23
|
const surface = useSurface({ className: roleClass(props.is, className),
|
|
21
|
-
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) },
|
|
24
|
+
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) },
|
|
25
|
+
holds: [
|
|
26
|
+
...(props.invalid === true ? ['invalid' as const] : []),
|
|
27
|
+
],
|
|
28
|
+
raises: ['invalid' as const], })
|
|
22
29
|
return (
|
|
23
|
-
|
|
30
|
+
<span className={surface.className} {...surface.marks} {...surface.invokes} {...surface.a11y}>
|
|
31
|
+
{shows(props, surface)}
|
|
32
|
+
</span>
|
|
24
33
|
)
|
|
25
34
|
},
|
|
26
35
|
'e-money',
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { MapIsland } from '../islands/map.ts';
|
|
2
|
+
import type { Dispatching } from '../checked.ts';
|
|
2
3
|
import { type Element } from '../wrappers.tsx';
|
|
3
4
|
export interface PaginationProps {
|
|
4
5
|
readonly map: MapIsland;
|
|
5
6
|
readonly sequence: readonly string[];
|
|
6
7
|
readonly current: string;
|
|
7
|
-
readonly dispatch?:
|
|
8
|
+
readonly dispatch?: keyof Dispatching;
|
|
8
9
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
9
10
|
readonly invokeOn?: 'press' | 'shown';
|
|
10
11
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { Link } from
|
|
5
|
-
import { element, useSurface } from
|
|
6
|
-
import { Each } from
|
|
7
|
-
import { step, steps } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { Link } from './link.js';
|
|
5
|
+
import { element, useSurface } from '../wrappers.js';
|
|
6
|
+
import { Each } from '../elements/each.js';
|
|
7
|
+
import { step, steps } from './pagination.works.js';
|
|
8
8
|
export const Pagination = element('Pagination', (props, className) => {
|
|
9
9
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
10
10
|
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) }, });
|
|
@@ -4,6 +4,7 @@ import { roleClass } from '../fonts.ts'
|
|
|
4
4
|
import type { MapIsland } from '../islands/map.ts'
|
|
5
5
|
import { Link } from './link.tsx'
|
|
6
6
|
|
|
7
|
+
import type { Dispatching } from '../checked.ts'
|
|
7
8
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
8
9
|
import { Each } from '../elements/each.tsx'
|
|
9
10
|
import { step, steps } from './pagination.works.ts'
|
|
@@ -13,7 +14,7 @@ export interface PaginationProps {
|
|
|
13
14
|
readonly map: MapIsland
|
|
14
15
|
readonly sequence: readonly string[]
|
|
15
16
|
readonly current: string
|
|
16
|
-
readonly dispatch?:
|
|
17
|
+
readonly dispatch?: keyof Dispatching
|
|
17
18
|
readonly input?: Readonly<Record<string, unknown>>
|
|
18
19
|
readonly invokeOn?: 'press' | 'shown'
|
|
19
20
|
}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
|
+
import type { Dispatching } from '../checked.ts';
|
|
2
3
|
import { type Element } from '../wrappers.tsx';
|
|
3
4
|
export interface ProgressProps {
|
|
4
5
|
readonly value?: number;
|
|
5
6
|
readonly target?: number;
|
|
6
7
|
readonly labelKey: MessageKey;
|
|
7
|
-
readonly dispatch?:
|
|
8
|
+
readonly dispatch?: keyof Dispatching;
|
|
8
9
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
9
10
|
readonly invokeOn?: 'press' | 'shown';
|
|
10
11
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { element, useSurface } from
|
|
5
|
-
import { measured } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
|
+
import { measured } from './progress.works.js';
|
|
6
6
|
export const Progress = element('Progress', (props, className) => {
|
|
7
7
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
8
8
|
invokes: { ...(props.dispatch === undefined ? {} : { dispatch: props.dispatch }), ...(props.input === undefined ? {} : { input: props.input }), ...(props.invokeOn === undefined ? {} : { on: props.invokeOn }) },
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
import type { MessageKey } from '../content.tsx'
|
|
4
4
|
import { roleClass } from '../fonts.ts'
|
|
5
5
|
|
|
6
|
+
import type { Dispatching } from '../checked.ts'
|
|
6
7
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
7
8
|
import { measured } from './progress.works.ts'
|
|
8
9
|
|
|
@@ -11,7 +12,7 @@ export interface ProgressProps {
|
|
|
11
12
|
readonly value?: number
|
|
12
13
|
readonly target?: number
|
|
13
14
|
readonly labelKey: MessageKey
|
|
14
|
-
readonly dispatch?:
|
|
15
|
+
readonly dispatch?: keyof Dispatching
|
|
15
16
|
readonly input?: Readonly<Record<string, unknown>>
|
|
16
17
|
readonly invokeOn?: 'press' | 'shown'
|
|
17
18
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { MessageKey } from '../content.tsx';
|
|
2
2
|
import type { Row } from '../charts.tsx';
|
|
3
|
+
import type { Dispatching } from '../checked.ts';
|
|
3
4
|
import { type Element } from '../wrappers.tsx';
|
|
4
5
|
export interface RadioGroupProps {
|
|
5
6
|
readonly name: string;
|
|
@@ -8,7 +9,7 @@ export interface RadioGroupProps {
|
|
|
8
9
|
readonly chosen?: string;
|
|
9
10
|
readonly onValue?: (said: string) => void;
|
|
10
11
|
readonly disabled?: boolean;
|
|
11
|
-
readonly dispatch?:
|
|
12
|
+
readonly dispatch?: keyof Dispatching;
|
|
12
13
|
readonly input?: Readonly<Record<string, unknown>>;
|
|
13
14
|
readonly invokeOn?: 'press' | 'shown';
|
|
14
15
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { roleClass } from
|
|
4
|
-
import { element, useSurface } from
|
|
5
|
-
import { Each } from
|
|
6
|
-
import { shown, option, uses } from
|
|
3
|
+
import { roleClass } from '../fonts.js';
|
|
4
|
+
import { element, useSurface } from '../wrappers.js';
|
|
5
|
+
import { Each } from '../elements/each.js';
|
|
6
|
+
import { shown, option, uses } from './radio-group.works.js';
|
|
7
7
|
export const RadioGroup = element('RadioGroup', (props, className) => {
|
|
8
8
|
const kept = uses(props);
|
|
9
9
|
const surface = useSurface({ className: roleClass(undefined, className),
|
|
@@ -4,6 +4,7 @@ import type { MessageKey } from '../content.tsx'
|
|
|
4
4
|
import type { Row } from '../charts.tsx'
|
|
5
5
|
import { roleClass } from '../fonts.ts'
|
|
6
6
|
|
|
7
|
+
import type { Dispatching } from '../checked.ts'
|
|
7
8
|
import { type Element, element, useSurface } from '../wrappers.tsx'
|
|
8
9
|
import { Each } from '../elements/each.tsx'
|
|
9
10
|
import { shown, option, uses } from './radio-group.works.ts'
|
|
@@ -16,7 +17,7 @@ export interface RadioGroupProps {
|
|
|
16
17
|
readonly chosen?: string
|
|
17
18
|
readonly onValue?: (said: string) => void
|
|
18
19
|
readonly disabled?: boolean
|
|
19
|
-
readonly dispatch?:
|
|
20
|
+
readonly dispatch?: keyof Dispatching
|
|
20
21
|
readonly input?: Readonly<Record<string, unknown>>
|
|
21
22
|
readonly invokeOn?: 'press' | 'shown'
|
|
22
23
|
}
|