@askrjs/askr 0.0.51 → 0.0.53
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/README.md +5 -1
- package/dist/{runtime/scheduler.js → access-Bg4RJNC8.js} +190 -20
- package/dist/actions/index.d.ts +2 -0
- package/dist/actions/index.js +103 -0
- package/dist/{common/attr-names.js → attr-names-CjhzmHOn.js} +1 -3
- package/dist/benchmark.d.ts +7 -4
- package/dist/benchmark.js +63 -13
- package/dist/boot/index.d.ts +62 -4
- package/dist/boot/index.js +1 -194
- package/dist/boot-j2KoN6ss.js +647 -0
- package/dist/cleanup-COv77su2.js +487 -0
- package/dist/component-internal-B3z7GXlD.js +614 -0
- package/dist/component-lifecycle-CO4hXlP4.js +357 -0
- package/dist/{runtime/component-scope.js → component-scope-CC3cojX9.js} +35 -9
- package/dist/component-scope-CvPba6O6.d.ts +12 -0
- package/dist/components/index.d.ts +17 -2
- package/dist/components/index.js +39 -1
- package/dist/compose-ref-Cc_YkUpM.js +92 -0
- package/dist/{foundations/utilities/compose-ref.d.ts → compose-ref-Cizq72-x.d.ts} +1 -2
- package/dist/control/index.d.ts +1 -3
- package/dist/control/index.js +1 -3
- package/dist/control-BQvNVfAd.d.ts +436 -0
- package/dist/control-BYyLTFyw.js +165 -0
- package/dist/control-Bf4Wkdvv.d.ts +9 -0
- package/dist/{common/control.js → control-DhFRTIoE.js} +1 -3
- package/dist/data/index.d.ts +2 -6
- package/dist/data/index.js +4 -5
- package/dist/data-DnxnDxD-.js +559 -0
- package/dist/{data/data-runtime.js → data-runtime-SJ1BSUvk.js} +35 -36
- package/dist/deferred-lKE8uR0z.js +386 -0
- package/dist/effect-BwnIvLah.js +260 -0
- package/dist/fastlane-Dw8SOBr9.js +343 -0
- package/dist/for-internal-BKf_Tnv1.js +1563 -0
- package/dist/foundations/icon/index.d.ts +68 -2
- package/dist/foundations/icon/index.js +85 -1
- package/dist/foundations/index.d.ts +2 -5
- package/dist/foundations/index.js +2 -5
- package/dist/foundations/interactions/index.d.ts +264 -6
- package/dist/foundations/interactions/index.js +1 -6
- package/dist/foundations/state/index.d.ts +32 -1
- package/dist/foundations/state/index.js +78 -1
- package/dist/foundations/structures/index.d.ts +2 -7
- package/dist/foundations/structures/index.js +2 -7
- package/dist/foundations/utilities/index.d.ts +2 -6
- package/dist/foundations/utilities/index.js +2 -5
- package/dist/fx/index.d.ts +190 -3
- package/dist/fx/index.js +454 -4
- package/dist/index-31Uoz_NS.d.ts +239 -0
- package/dist/index-Bki2rqcr.d.ts +233 -0
- package/dist/index-BnU0NPwM.d.ts +101 -0
- package/dist/index-D73jgYx1.d.ts +48 -0
- package/dist/{runtime/runtime.d.ts → index-R2JJIbM-.d.ts} +31 -9
- package/dist/index-SJXJkssx.d.ts +44 -0
- package/dist/index.d.ts +8 -13
- package/dist/index.js +150 -17
- package/dist/interactions-w7gQN4ha.js +280 -0
- package/dist/{data/invalidation-listeners.js → invalidation-listeners-Des3AHYs.js} +1 -3
- package/dist/{common/props.d.ts → jsx-CP0gmYwJ.d.ts} +17 -6
- package/dist/{common/jsx.js → jsx-CUpRxrLH.js} +1 -3
- package/dist/jsx-dev-runtime.d.ts +17 -5
- package/dist/jsx-dev-runtime.js +3 -10
- package/dist/jsx-runtime-92bV2hSa.d.ts +34 -0
- package/dist/jsx-runtime-BVVgDSdq.d.ts +1 -0
- package/dist/jsx-runtime.d.ts +3 -22
- package/dist/jsx-runtime.js +17 -20
- package/dist/{runtime/lifecycle-operations.js → lifecycle-operations-D9va7GOU.js} +9 -11
- package/dist/navigate-BVDCzOuB.d.ts +34 -0
- package/dist/navigate-CmPLSXyw.js +1449 -0
- package/dist/{runtime/portal.js → portal-CyU3Ucf2.js} +124 -35
- package/dist/query-registry-CQIT4mXr.js +73 -0
- package/dist/{common/render-context.js → render-context-Clw3rFiO.js} +14 -8
- package/dist/renderer-DzPjeLby.js +6197 -0
- package/dist/resource-operation-CEzfpnDk.js +276 -0
- package/dist/resources/index.d.ts +42 -3
- package/dist/resources/index.js +3 -4
- package/dist/{common/route-activity.js → route-activity-CNJfpwx-.js} +1 -3
- package/dist/route-matching-vJpvLVbX.js +515 -0
- package/dist/router/index.d.ts +166 -14
- package/dist/router/index.js +150 -12
- package/dist/{common/router.d.ts → router-CeYvjj5_.d.ts} +72 -29
- package/dist/{common/router-internal.js → router-internal-BC0w1_xk.js} +1 -3
- package/dist/{runtime/scheduler.d.ts → scheduler-CmLO4Dfm.d.ts} +1 -4
- package/dist/{runtime/selector.js → selector-DafVYzV4.js} +35 -20
- package/dist/{runtime/snapshot-source.js → snapshot-source-BB42xgwb.js} +1 -3
- package/dist/ssg/index.d.ts +252 -4
- package/dist/ssg/index.js +857 -1
- package/dist/ssr/index.d.ts +225 -8
- package/dist/ssr/index.js +3 -6
- package/dist/{common/ssr.js → ssr-CbQO5xd3.js} +1 -3
- package/dist/ssr-D3t80Rc0.js +1413 -0
- package/dist/{runtime/state.js → state-DPl8lffD.js} +4 -8
- package/dist/structures-DUB3HchX.js +221 -0
- package/dist/testing/index.d.ts +4 -4
- package/dist/testing/index.js +2 -7
- package/dist/{jsx/types.d.ts → types-DnQVG4ZY.d.ts} +2 -6
- package/dist/{foundations/utilities/use-id.js → utilities-C_CGX4Dz.js} +1 -3
- package/dist/{ssr/verify-hydration.js → verify-hydration-io9ahUeq.js} +2 -4
- package/dist/{common/vnode.js → vnode-CGMJYPMB.js} +2 -4
- package/package.json +63 -45
- package/dist/bench/components/benchmark-row.d.ts +0 -20
- package/dist/bench/components/benchmark-row.d.ts.map +0 -1
- package/dist/bench/components/benchmark-row.js +0 -42
- package/dist/bench/components/benchmark-row.js.map +0 -1
- package/dist/bench/components/benchmark-table.js +0 -25
- package/dist/bench/components/benchmark-table.js.map +0 -1
- package/dist/benchmark.d.ts.map +0 -1
- package/dist/benchmark.js.map +0 -1
- package/dist/bin/askr-ssg.d.ts +0 -28
- package/dist/bin/askr-ssg.d.ts.map +0 -1
- package/dist/bin/askr-ssg.js +0 -171
- package/dist/bin/askr-ssg.js.map +0 -1
- package/dist/boot/hydration.js +0 -140
- package/dist/boot/hydration.js.map +0 -1
- package/dist/boot/index.d.ts.map +0 -1
- package/dist/boot/index.js.map +0 -1
- package/dist/boot/root-lifecycle.d.ts +0 -15
- package/dist/boot/root-lifecycle.d.ts.map +0 -1
- package/dist/boot/root-lifecycle.js +0 -205
- package/dist/boot/root-lifecycle.js.map +0 -1
- package/dist/boot/route-startup.js +0 -45
- package/dist/boot/route-startup.js.map +0 -1
- package/dist/boot/types.d.ts +0 -62
- package/dist/boot/types.d.ts.map +0 -1
- package/dist/common/attr-names.js.map +0 -1
- package/dist/common/component.d.ts +0 -19
- package/dist/common/component.d.ts.map +0 -1
- package/dist/common/control.d.ts +0 -13
- package/dist/common/control.d.ts.map +0 -1
- package/dist/common/control.js.map +0 -1
- package/dist/common/env.js +0 -47
- package/dist/common/env.js.map +0 -1
- package/dist/common/error-boundary.d.ts +0 -16
- package/dist/common/error-boundary.d.ts.map +0 -1
- package/dist/common/invariant.js +0 -17
- package/dist/common/invariant.js.map +0 -1
- package/dist/common/jsx.d.ts +0 -23
- package/dist/common/jsx.d.ts.map +0 -1
- package/dist/common/jsx.js.map +0 -1
- package/dist/common/logger.js +0 -36
- package/dist/common/logger.js.map +0 -1
- package/dist/common/promise.js +0 -8
- package/dist/common/promise.js.map +0 -1
- package/dist/common/props.d.ts.map +0 -1
- package/dist/common/render-context.js.map +0 -1
- package/dist/common/route-activity.js.map +0 -1
- package/dist/common/router-internal.js.map +0 -1
- package/dist/common/router.d.ts.map +0 -1
- package/dist/common/ssr-errors.d.ts +0 -11
- package/dist/common/ssr-errors.d.ts.map +0 -1
- package/dist/common/ssr-errors.js +0 -16
- package/dist/common/ssr-errors.js.map +0 -1
- package/dist/common/ssr.d.ts +0 -42
- package/dist/common/ssr.d.ts.map +0 -1
- package/dist/common/ssr.js.map +0 -1
- package/dist/common/vnode.d.ts +0 -22
- package/dist/common/vnode.d.ts.map +0 -1
- package/dist/common/vnode.js.map +0 -1
- package/dist/components/error-boundary.d.ts +0 -15
- package/dist/components/error-boundary.d.ts.map +0 -1
- package/dist/components/error-boundary.js +0 -43
- package/dist/components/error-boundary.js.map +0 -1
- package/dist/components/link.d.ts +0 -68
- package/dist/components/link.d.ts.map +0 -1
- package/dist/components/link.js +0 -76
- package/dist/components/link.js.map +0 -1
- package/dist/control/case.d.ts +0 -19
- package/dist/control/case.d.ts.map +0 -1
- package/dist/control/case.js +0 -70
- package/dist/control/case.js.map +0 -1
- package/dist/control/for.d.ts +0 -24
- package/dist/control/for.d.ts.map +0 -1
- package/dist/control/for.js +0 -63
- package/dist/control/for.js.map +0 -1
- package/dist/control/shared.d.ts +0 -9
- package/dist/control/shared.d.ts.map +0 -1
- package/dist/control/shared.js +0 -20
- package/dist/control/shared.js.map +0 -1
- package/dist/control/show.d.ts +0 -15
- package/dist/control/show.d.ts.map +0 -1
- package/dist/control/show.js +0 -34
- package/dist/control/show.js.map +0 -1
- package/dist/data/data-runtime.d.ts +0 -28
- package/dist/data/data-runtime.d.ts.map +0 -1
- package/dist/data/data-runtime.js.map +0 -1
- package/dist/data/invalidation-listeners.js.map +0 -1
- package/dist/data/invalidation.d.ts +0 -9
- package/dist/data/invalidation.d.ts.map +0 -1
- package/dist/data/invalidation.js +0 -27
- package/dist/data/invalidation.js.map +0 -1
- package/dist/data/mutation-cell.d.ts +0 -28
- package/dist/data/mutation-cell.d.ts.map +0 -1
- package/dist/data/mutation-cell.js +0 -132
- package/dist/data/mutation-cell.js.map +0 -1
- package/dist/data/query-cell.d.ts +0 -46
- package/dist/data/query-cell.d.ts.map +0 -1
- package/dist/data/query-cell.js +0 -290
- package/dist/data/query-cell.js.map +0 -1
- package/dist/data/query-key.js +0 -42
- package/dist/data/query-key.js.map +0 -1
- package/dist/data/shared.js +0 -21
- package/dist/data/shared.js.map +0 -1
- package/dist/data/testing.js +0 -2
- package/dist/data/types.d.ts +0 -161
- package/dist/data/types.d.ts.map +0 -1
- package/dist/foundations/icon/icon.d.ts +0 -53
- package/dist/foundations/icon/icon.d.ts.map +0 -1
- package/dist/foundations/icon/icon.js +0 -88
- package/dist/foundations/icon/icon.js.map +0 -1
- package/dist/foundations/icon/icon.types.d.ts +0 -22
- package/dist/foundations/icon/icon.types.d.ts.map +0 -1
- package/dist/foundations/interactions/dismissable.d.ts +0 -72
- package/dist/foundations/interactions/dismissable.d.ts.map +0 -1
- package/dist/foundations/interactions/dismissable.js +0 -26
- package/dist/foundations/interactions/dismissable.js.map +0 -1
- package/dist/foundations/interactions/focusable.d.ts +0 -22
- package/dist/foundations/interactions/focusable.d.ts.map +0 -1
- package/dist/foundations/interactions/focusable.js +0 -18
- package/dist/foundations/interactions/focusable.js.map +0 -1
- package/dist/foundations/interactions/hoverable.d.ts +0 -26
- package/dist/foundations/interactions/hoverable.d.ts.map +0 -1
- package/dist/foundations/interactions/hoverable.js +0 -15
- package/dist/foundations/interactions/hoverable.js.map +0 -1
- package/dist/foundations/interactions/interaction-policy.d.ts +0 -50
- package/dist/foundations/interactions/interaction-policy.d.ts.map +0 -1
- package/dist/foundations/interactions/interaction-policy.js +0 -122
- package/dist/foundations/interactions/interaction-policy.js.map +0 -1
- package/dist/foundations/interactions/pressable.d.ts +0 -61
- package/dist/foundations/interactions/pressable.d.ts.map +0 -1
- package/dist/foundations/interactions/pressable.js +0 -51
- package/dist/foundations/interactions/pressable.js.map +0 -1
- package/dist/foundations/interactions/roving-focus.d.ts +0 -52
- package/dist/foundations/interactions/roving-focus.d.ts.map +0 -1
- package/dist/foundations/interactions/roving-focus.js +0 -71
- package/dist/foundations/interactions/roving-focus.js.map +0 -1
- package/dist/foundations/state/controllable.d.ts +0 -33
- package/dist/foundations/state/controllable.d.ts.map +0 -1
- package/dist/foundations/state/controllable.js +0 -82
- package/dist/foundations/state/controllable.js.map +0 -1
- package/dist/foundations/structures/collection.d.ts +0 -52
- package/dist/foundations/structures/collection.d.ts.map +0 -1
- package/dist/foundations/structures/collection.js +0 -51
- package/dist/foundations/structures/collection.js.map +0 -1
- package/dist/foundations/structures/layer.d.ts +0 -81
- package/dist/foundations/structures/layer.d.ts.map +0 -1
- package/dist/foundations/structures/layer.js +0 -81
- package/dist/foundations/structures/layer.js.map +0 -1
- package/dist/foundations/structures/layout.d.ts +0 -33
- package/dist/foundations/structures/layout.d.ts.map +0 -1
- package/dist/foundations/structures/layout.js +0 -13
- package/dist/foundations/structures/layout.js.map +0 -1
- package/dist/foundations/structures/portal.d.ts +0 -2
- package/dist/foundations/structures/portal.js +0 -3
- package/dist/foundations/structures/presence.d.ts +0 -37
- package/dist/foundations/structures/presence.d.ts.map +0 -1
- package/dist/foundations/structures/presence.js +0 -39
- package/dist/foundations/structures/presence.js.map +0 -1
- package/dist/foundations/structures/slot.d.ts +0 -35
- package/dist/foundations/structures/slot.d.ts.map +0 -1
- package/dist/foundations/structures/slot.js +0 -41
- package/dist/foundations/structures/slot.js.map +0 -1
- package/dist/foundations/utilities/aria.d.ts +0 -16
- package/dist/foundations/utilities/aria.d.ts.map +0 -1
- package/dist/foundations/utilities/aria.js +0 -17
- package/dist/foundations/utilities/aria.js.map +0 -1
- package/dist/foundations/utilities/compose-handlers.d.ts +0 -37
- package/dist/foundations/utilities/compose-handlers.d.ts.map +0 -1
- package/dist/foundations/utilities/compose-handlers.js +0 -20
- package/dist/foundations/utilities/compose-handlers.js.map +0 -1
- package/dist/foundations/utilities/compose-ref.d.ts.map +0 -1
- package/dist/foundations/utilities/compose-ref.js +0 -18
- package/dist/foundations/utilities/compose-ref.js.map +0 -1
- package/dist/foundations/utilities/event-types.d.ts +0 -20
- package/dist/foundations/utilities/event-types.d.ts.map +0 -1
- package/dist/foundations/utilities/merge-props.d.ts +0 -5
- package/dist/foundations/utilities/merge-props.d.ts.map +0 -1
- package/dist/foundations/utilities/merge-props.js +0 -49
- package/dist/foundations/utilities/merge-props.js.map +0 -1
- package/dist/foundations/utilities/use-id.d.ts +0 -32
- package/dist/foundations/utilities/use-id.d.ts.map +0 -1
- package/dist/foundations/utilities/use-id.js.map +0 -1
- package/dist/fx/fx.d.ts +0 -33
- package/dist/fx/fx.d.ts.map +0 -1
- package/dist/fx/fx.js +0 -213
- package/dist/fx/fx.js.map +0 -1
- package/dist/fx/noop.js +0 -9
- package/dist/fx/noop.js.map +0 -1
- package/dist/fx/timing.d.ts +0 -159
- package/dist/fx/timing.d.ts.map +0 -1
- package/dist/fx/timing.js +0 -243
- package/dist/fx/timing.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/jsx/index.d.ts +0 -2
- package/dist/jsx/index.js +0 -4
- package/dist/jsx/types.d.ts.map +0 -1
- package/dist/jsx/types.js +0 -2
- package/dist/jsx/utils.d.ts +0 -5
- package/dist/jsx/utils.d.ts.map +0 -1
- package/dist/jsx/utils.js +0 -19
- package/dist/jsx/utils.js.map +0 -1
- package/dist/jsx-dev-runtime.d.ts.map +0 -1
- package/dist/jsx-dev-runtime.js.map +0 -1
- package/dist/jsx-runtime.d.ts.map +0 -1
- package/dist/jsx-runtime.js.map +0 -1
- package/dist/jsx-runtime2.d.ts +0 -3
- package/dist/jsx-runtime2.js +0 -4
- package/dist/renderer/attributes.js +0 -232
- package/dist/renderer/attributes.js.map +0 -1
- package/dist/renderer/boundaries.js +0 -266
- package/dist/renderer/boundaries.js.map +0 -1
- package/dist/renderer/child-shape.js +0 -85
- package/dist/renderer/child-shape.js.map +0 -1
- package/dist/renderer/children-fastpath.js +0 -149
- package/dist/renderer/children-fastpath.js.map +0 -1
- package/dist/renderer/children.js +0 -160
- package/dist/renderer/children.js.map +0 -1
- package/dist/renderer/cleanup.js +0 -210
- package/dist/renderer/cleanup.js.map +0 -1
- package/dist/renderer/component-host-cleanup.js +0 -68
- package/dist/renderer/component-host-cleanup.js.map +0 -1
- package/dist/renderer/component-host-instances.js +0 -65
- package/dist/renderer/component-host-instances.js.map +0 -1
- package/dist/renderer/component-host.js +0 -247
- package/dist/renderer/component-host.js.map +0 -1
- package/dist/renderer/dom-host.js +0 -13
- package/dist/renderer/dom-host.js.map +0 -1
- package/dist/renderer/dom-internal.js +0 -186
- package/dist/renderer/dom-internal.js.map +0 -1
- package/dist/renderer/dom.js +0 -10
- package/dist/renderer/element-children.js +0 -279
- package/dist/renderer/element-children.js.map +0 -1
- package/dist/renderer/env.js +0 -2
- package/dist/renderer/error-boundary-dom.js +0 -78
- package/dist/renderer/error-boundary-dom.js.map +0 -1
- package/dist/renderer/evaluate-dom-range.js +0 -85
- package/dist/renderer/evaluate-dom-range.js.map +0 -1
- package/dist/renderer/evaluate-reconcile.js +0 -282
- package/dist/renderer/evaluate-reconcile.js.map +0 -1
- package/dist/renderer/evaluate.js +0 -84
- package/dist/renderer/evaluate.js.map +0 -1
- package/dist/renderer/fastpath.js +0 -150
- package/dist/renderer/fastpath.js.map +0 -1
- package/dist/renderer/for-commit-dom-map.js +0 -83
- package/dist/renderer/for-commit-dom-map.js.map +0 -1
- package/dist/renderer/for-commit-removal.js +0 -36
- package/dist/renderer/for-commit-removal.js.map +0 -1
- package/dist/renderer/for-commit-reorder.js +0 -89
- package/dist/renderer/for-commit-reorder.js.map +0 -1
- package/dist/renderer/for-commit.js +0 -314
- package/dist/renderer/for-commit.js.map +0 -1
- package/dist/renderer/index.js +0 -38
- package/dist/renderer/index.js.map +0 -1
- package/dist/renderer/keyed-children.js +0 -32
- package/dist/renderer/keyed-children.js.map +0 -1
- package/dist/renderer/keyed.js +0 -167
- package/dist/renderer/keyed.js.map +0 -1
- package/dist/renderer/namespaces.js +0 -23
- package/dist/renderer/namespaces.js.map +0 -1
- package/dist/renderer/prop-bindings.js +0 -280
- package/dist/renderer/prop-bindings.js.map +0 -1
- package/dist/renderer/reactive-child-dom.js +0 -133
- package/dist/renderer/reactive-child-dom.js.map +0 -1
- package/dist/renderer/reactive-child-sources.js +0 -184
- package/dist/renderer/reactive-child-sources.js.map +0 -1
- package/dist/renderer/reactive-children.js +0 -294
- package/dist/renderer/reactive-children.js.map +0 -1
- package/dist/renderer/reconcile-commit.js +0 -38
- package/dist/renderer/reconcile-commit.js.map +0 -1
- package/dist/renderer/reconcile-fastpaths.js +0 -107
- package/dist/renderer/reconcile-fastpaths.js.map +0 -1
- package/dist/renderer/reconcile-resolution.js +0 -187
- package/dist/renderer/reconcile-resolution.js.map +0 -1
- package/dist/renderer/reconcile.js +0 -39
- package/dist/renderer/reconcile.js.map +0 -1
- package/dist/renderer/retained-element-rollback.js +0 -277
- package/dist/renderer/retained-element-rollback.js.map +0 -1
- package/dist/renderer/stable-patch.js +0 -81
- package/dist/renderer/stable-patch.js.map +0 -1
- package/dist/renderer/static-reuse.js +0 -96
- package/dist/renderer/static-reuse.js.map +0 -1
- package/dist/renderer/types.js +0 -2
- package/dist/renderer/utils.js +0 -256
- package/dist/renderer/utils.js.map +0 -1
- package/dist/router/access.js +0 -36
- package/dist/router/access.js.map +0 -1
- package/dist/router/activity.d.ts +0 -10
- package/dist/router/activity.d.ts.map +0 -1
- package/dist/router/activity.js +0 -87
- package/dist/router/activity.js.map +0 -1
- package/dist/router/authoring.d.ts +0 -22
- package/dist/router/authoring.d.ts.map +0 -1
- package/dist/router/authoring.js +0 -198
- package/dist/router/authoring.js.map +0 -1
- package/dist/router/internal-types.d.ts +0 -31
- package/dist/router/internal-types.d.ts.map +0 -1
- package/dist/router/lazy.d.ts +0 -19
- package/dist/router/lazy.d.ts.map +0 -1
- package/dist/router/lazy.js +0 -52
- package/dist/router/lazy.js.map +0 -1
- package/dist/router/manifest.d.ts +0 -10
- package/dist/router/manifest.d.ts.map +0 -1
- package/dist/router/manifest.js +0 -49
- package/dist/router/manifest.js.map +0 -1
- package/dist/router/match.js +0 -122
- package/dist/router/match.js.map +0 -1
- package/dist/router/navigate.d.ts +0 -11
- package/dist/router/navigate.d.ts.map +0 -1
- package/dist/router/navigate.js +0 -76
- package/dist/router/navigate.js.map +0 -1
- package/dist/router/navigation-registry.d.ts +0 -32
- package/dist/router/navigation-registry.d.ts.map +0 -1
- package/dist/router/navigation-registry.js +0 -105
- package/dist/router/navigation-registry.js.map +0 -1
- package/dist/router/navigation-scroll.d.ts +0 -14
- package/dist/router/navigation-scroll.d.ts.map +0 -1
- package/dist/router/navigation-scroll.js +0 -93
- package/dist/router/navigation-scroll.js.map +0 -1
- package/dist/router/navigation-targets.d.ts +0 -31
- package/dist/router/navigation-targets.d.ts.map +0 -1
- package/dist/router/navigation-targets.js +0 -255
- package/dist/router/navigation-targets.js.map +0 -1
- package/dist/router/policy.d.ts +0 -28
- package/dist/router/policy.d.ts.map +0 -1
- package/dist/router/policy.js +0 -132
- package/dist/router/policy.js.map +0 -1
- package/dist/router/rendering.d.ts +0 -10
- package/dist/router/rendering.d.ts.map +0 -1
- package/dist/router/rendering.js +0 -46
- package/dist/router/rendering.js.map +0 -1
- package/dist/router/resolution.d.ts +0 -4
- package/dist/router/resolution.d.ts.map +0 -1
- package/dist/router/resolution.js +0 -86
- package/dist/router/resolution.js.map +0 -1
- package/dist/router/route-context.js +0 -79
- package/dist/router/route-context.js.map +0 -1
- package/dist/router/route-matching.d.ts +0 -20
- package/dist/router/route-matching.d.ts.map +0 -1
- package/dist/router/route-matching.js +0 -175
- package/dist/router/route-matching.js.map +0 -1
- package/dist/router/route-query.d.ts +0 -17
- package/dist/router/route-query.d.ts.map +0 -1
- package/dist/router/route-query.js +0 -47
- package/dist/router/route-query.js.map +0 -1
- package/dist/router/route.d.ts +0 -8
- package/dist/router/route.js +0 -10
- package/dist/router/store.d.ts +0 -50
- package/dist/router/store.d.ts.map +0 -1
- package/dist/router/store.js +0 -171
- package/dist/router/store.js.map +0 -1
- package/dist/router/testing.js +0 -4
- package/dist/runtime/access.d.ts +0 -20
- package/dist/runtime/access.d.ts.map +0 -1
- package/dist/runtime/access.js +0 -45
- package/dist/runtime/access.js.map +0 -1
- package/dist/runtime/child-scope.d.ts +0 -22
- package/dist/runtime/child-scope.d.ts.map +0 -1
- package/dist/runtime/child-scope.js +0 -87
- package/dist/runtime/child-scope.js.map +0 -1
- package/dist/runtime/component-cleanup.d.ts +0 -16
- package/dist/runtime/component-cleanup.d.ts.map +0 -1
- package/dist/runtime/component-cleanup.js +0 -70
- package/dist/runtime/component-cleanup.js.map +0 -1
- package/dist/runtime/component-commit.js +0 -165
- package/dist/runtime/component-commit.js.map +0 -1
- package/dist/runtime/component-facade.d.ts +0 -5
- package/dist/runtime/component-facade.js +0 -4
- package/dist/runtime/component-internal.d.ts +0 -100
- package/dist/runtime/component-internal.d.ts.map +0 -1
- package/dist/runtime/component-internal.js +0 -219
- package/dist/runtime/component-internal.js.map +0 -1
- package/dist/runtime/component-lifecycle.d.ts +0 -49
- package/dist/runtime/component-lifecycle.d.ts.map +0 -1
- package/dist/runtime/component-lifecycle.js +0 -176
- package/dist/runtime/component-lifecycle.js.map +0 -1
- package/dist/runtime/component-scope.d.ts +0 -55
- package/dist/runtime/component-scope.d.ts.map +0 -1
- package/dist/runtime/component-scope.js.map +0 -1
- package/dist/runtime/component.d.ts +0 -5
- package/dist/runtime/component.js +0 -5
- package/dist/runtime/context.d.ts +0 -69
- package/dist/runtime/context.d.ts.map +0 -1
- package/dist/runtime/context.js +0 -210
- package/dist/runtime/context.js.map +0 -1
- package/dist/runtime/control.d.ts +0 -43
- package/dist/runtime/control.d.ts.map +0 -1
- package/dist/runtime/control.js +0 -126
- package/dist/runtime/control.js.map +0 -1
- package/dist/runtime/derive.d.ts +0 -17
- package/dist/runtime/derive.d.ts.map +0 -1
- package/dist/runtime/derive.js +0 -142
- package/dist/runtime/derive.js.map +0 -1
- package/dist/runtime/dev-namespace.d.ts +0 -31
- package/dist/runtime/dev-namespace.d.ts.map +0 -1
- package/dist/runtime/dev-namespace.js +0 -57
- package/dist/runtime/dev-namespace.js.map +0 -1
- package/dist/runtime/effect.d.ts +0 -32
- package/dist/runtime/effect.d.ts.map +0 -1
- package/dist/runtime/effect.js +0 -177
- package/dist/runtime/effect.js.map +0 -1
- package/dist/runtime/error-boundary.d.ts +0 -5
- package/dist/runtime/error-boundary.d.ts.map +0 -1
- package/dist/runtime/error-boundary.js +0 -31
- package/dist/runtime/error-boundary.js.map +0 -1
- package/dist/runtime/events.d.ts +0 -58
- package/dist/runtime/events.d.ts.map +0 -1
- package/dist/runtime/events.js +0 -204
- package/dist/runtime/events.js.map +0 -1
- package/dist/runtime/execution-model.d.ts +0 -7
- package/dist/runtime/execution-model.d.ts.map +0 -1
- package/dist/runtime/execution-model.js +0 -15
- package/dist/runtime/execution-model.js.map +0 -1
- package/dist/runtime/fastlane.d.ts +0 -34
- package/dist/runtime/fastlane.d.ts.map +0 -1
- package/dist/runtime/fastlane.js +0 -175
- package/dist/runtime/fastlane.js.map +0 -1
- package/dist/runtime/for-bench.d.ts +0 -41
- package/dist/runtime/for-bench.d.ts.map +0 -1
- package/dist/runtime/for-bench.js +0 -171
- package/dist/runtime/for-bench.js.map +0 -1
- package/dist/runtime/for-internal.d.ts +0 -43
- package/dist/runtime/for-internal.d.ts.map +0 -1
- package/dist/runtime/for-internal.js +0 -98
- package/dist/runtime/for-internal.js.map +0 -1
- package/dist/runtime/for-reconcile.d.ts +0 -8
- package/dist/runtime/for-reconcile.d.ts.map +0 -1
- package/dist/runtime/for-reconcile.js +0 -389
- package/dist/runtime/for-reconcile.js.map +0 -1
- package/dist/runtime/for-scopes.d.ts +0 -26
- package/dist/runtime/for-scopes.d.ts.map +0 -1
- package/dist/runtime/for-scopes.js +0 -160
- package/dist/runtime/for-scopes.js.map +0 -1
- package/dist/runtime/for-signals.d.ts +0 -30
- package/dist/runtime/for-signals.d.ts.map +0 -1
- package/dist/runtime/for-signals.js +0 -139
- package/dist/runtime/for-signals.js.map +0 -1
- package/dist/runtime/for-types.d.ts +0 -9
- package/dist/runtime/for-types.d.ts.map +0 -1
- package/dist/runtime/for.d.ts +0 -4
- package/dist/runtime/for.js +0 -5
- package/dist/runtime/index.d.ts +0 -24
- package/dist/runtime/index.js +0 -31
- package/dist/runtime/lifecycle-operations.d.ts +0 -31
- package/dist/runtime/lifecycle-operations.d.ts.map +0 -1
- package/dist/runtime/lifecycle-operations.js.map +0 -1
- package/dist/runtime/operations.d.ts +0 -3
- package/dist/runtime/operations.js +0 -3
- package/dist/runtime/perf-metrics.d.ts +0 -26
- package/dist/runtime/perf-metrics.d.ts.map +0 -1
- package/dist/runtime/perf-metrics.js +0 -70
- package/dist/runtime/perf-metrics.js.map +0 -1
- package/dist/runtime/portal.d.ts +0 -22
- package/dist/runtime/portal.d.ts.map +0 -1
- package/dist/runtime/portal.js.map +0 -1
- package/dist/runtime/readable.d.ts +0 -29
- package/dist/runtime/readable.d.ts.map +0 -1
- package/dist/runtime/readable.js +0 -159
- package/dist/runtime/readable.js.map +0 -1
- package/dist/runtime/resource-cell.js +0 -114
- package/dist/runtime/resource-cell.js.map +0 -1
- package/dist/runtime/resource-operation.d.ts +0 -13
- package/dist/runtime/resource-operation.d.ts.map +0 -1
- package/dist/runtime/resource-operation.js +0 -170
- package/dist/runtime/resource-operation.js.map +0 -1
- package/dist/runtime/runtime.d.ts.map +0 -1
- package/dist/runtime/runtime.js +0 -59
- package/dist/runtime/runtime.js.map +0 -1
- package/dist/runtime/scheduler.d.ts.map +0 -1
- package/dist/runtime/scheduler.js.map +0 -1
- package/dist/runtime/selector-store.js +0 -24
- package/dist/runtime/selector-store.js.map +0 -1
- package/dist/runtime/selector.d.ts +0 -11
- package/dist/runtime/selector.d.ts.map +0 -1
- package/dist/runtime/selector.js.map +0 -1
- package/dist/runtime/snapshot-source.d.ts +0 -10
- package/dist/runtime/snapshot-source.d.ts.map +0 -1
- package/dist/runtime/snapshot-source.js.map +0 -1
- package/dist/runtime/state.d.ts +0 -55
- package/dist/runtime/state.d.ts.map +0 -1
- package/dist/runtime/state.js.map +0 -1
- package/dist/ssg/batch-render.js +0 -103
- package/dist/ssg/batch-render.js.map +0 -1
- package/dist/ssg/create-static-gen.d.ts +0 -64
- package/dist/ssg/create-static-gen.d.ts.map +0 -1
- package/dist/ssg/create-static-gen.js +0 -199
- package/dist/ssg/create-static-gen.js.map +0 -1
- package/dist/ssg/generate-metadata.js +0 -94
- package/dist/ssg/generate-metadata.js.map +0 -1
- package/dist/ssg/generation-plan.js +0 -70
- package/dist/ssg/generation-plan.js.map +0 -1
- package/dist/ssg/incremental-manifest.js +0 -56
- package/dist/ssg/incremental-manifest.js.map +0 -1
- package/dist/ssg/resolve-ssg-data.js +0 -105
- package/dist/ssg/resolve-ssg-data.js.map +0 -1
- package/dist/ssg/route-utils.js +0 -24
- package/dist/ssg/route-utils.js.map +0 -1
- package/dist/ssg/static-routes.js +0 -102
- package/dist/ssg/static-routes.js.map +0 -1
- package/dist/ssg/types.d.ts +0 -189
- package/dist/ssg/types.d.ts.map +0 -1
- package/dist/ssg/write-static-files.js +0 -73
- package/dist/ssg/write-static-files.js.map +0 -1
- package/dist/ssr/attrs.js +0 -94
- package/dist/ssr/attrs.js.map +0 -1
- package/dist/ssr/boundaries.js +0 -113
- package/dist/ssr/boundaries.js.map +0 -1
- package/dist/ssr/component-runtime.js +0 -111
- package/dist/ssr/component-runtime.js.map +0 -1
- package/dist/ssr/context.d.ts +0 -50
- package/dist/ssr/context.d.ts.map +0 -1
- package/dist/ssr/context.js +0 -91
- package/dist/ssr/context.js.map +0 -1
- package/dist/ssr/errors.d.ts +0 -10
- package/dist/ssr/errors.d.ts.map +0 -1
- package/dist/ssr/errors.js +0 -14
- package/dist/ssr/errors.js.map +0 -1
- package/dist/ssr/escape.js +0 -193
- package/dist/ssr/escape.js.map +0 -1
- package/dist/ssr/hydration-data.js +0 -10
- package/dist/ssr/hydration-data.js.map +0 -1
- package/dist/ssr/hydration-verify.d.ts +0 -12
- package/dist/ssr/hydration-verify.d.ts.map +0 -1
- package/dist/ssr/hydration-verify.js +0 -144
- package/dist/ssr/hydration-verify.js.map +0 -1
- package/dist/ssr/index-internal.d.ts +0 -15
- package/dist/ssr/index-internal.d.ts.map +0 -1
- package/dist/ssr/index-internal.js +0 -19
- package/dist/ssr/index-internal.js.map +0 -1
- package/dist/ssr/render-keys.js +0 -16
- package/dist/ssr/render-keys.js.map +0 -1
- package/dist/ssr/render-resolved.d.ts +0 -20
- package/dist/ssr/render-resolved.d.ts.map +0 -1
- package/dist/ssr/render-resolved.js +0 -35
- package/dist/ssr/render-resolved.js.map +0 -1
- package/dist/ssr/render-sync.d.ts +0 -21
- package/dist/ssr/render-sync.d.ts.map +0 -1
- package/dist/ssr/render-sync.js +0 -275
- package/dist/ssr/render-sync.js.map +0 -1
- package/dist/ssr/route-policy-resolution.js +0 -78
- package/dist/ssr/route-policy-resolution.js.map +0 -1
- package/dist/ssr/route-render.d.ts +0 -77
- package/dist/ssr/route-render.d.ts.map +0 -1
- package/dist/ssr/route-render.js +0 -120
- package/dist/ssr/route-render.js.map +0 -1
- package/dist/ssr/sink.d.ts +0 -26
- package/dist/ssr/sink.d.ts.map +0 -1
- package/dist/ssr/sink.js +0 -86
- package/dist/ssr/sink.js.map +0 -1
- package/dist/ssr/types.d.ts +0 -23
- package/dist/ssr/types.d.ts.map +0 -1
- package/dist/ssr/verify-hydration.js.map +0 -1
- package/dist/testing/index.d.ts.map +0 -1
- package/dist/testing/index.js.map +0 -1
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/structures/layer.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* createLayer
|
|
4
|
-
*
|
|
5
|
-
* Manages stacking order and coordination for overlays (modals, popovers, etc).
|
|
6
|
-
*
|
|
7
|
-
* INVARIANTS:
|
|
8
|
-
* 1. Layers are ordered by registration time (FIFO)
|
|
9
|
-
* 2. Only the top layer handles Escape key
|
|
10
|
-
* 3. Only the top layer handles outside pointer events
|
|
11
|
-
* 4. Nested layers are supported
|
|
12
|
-
* 5. Does not implement portals (orthogonal concern)
|
|
13
|
-
* 6. No automatic DOM insertion (caller controls mounting)
|
|
14
|
-
*
|
|
15
|
-
* DESIGN:
|
|
16
|
-
* - Returns a layer manager with register/unregister API
|
|
17
|
-
* - Each layer has a unique ID and can query if it's the top layer
|
|
18
|
-
* - Escape and outside pointer coordination via callbacks
|
|
19
|
-
* - No z-index management (CSS concern)
|
|
20
|
-
*
|
|
21
|
-
* USAGE:
|
|
22
|
-
* const manager = createLayer();
|
|
23
|
-
*
|
|
24
|
-
* const layer = manager.register({
|
|
25
|
-
* onEscape: () => { ... },
|
|
26
|
-
* onOutsidePointer: () => { ... }
|
|
27
|
-
* });
|
|
28
|
-
*
|
|
29
|
-
* layer.isTop(); // true if this is the topmost layer
|
|
30
|
-
* layer.unregister();
|
|
31
|
-
*/
|
|
32
|
-
interface LayerOptions {
|
|
33
|
-
/**
|
|
34
|
-
* Called when Escape is pressed and this is the top layer
|
|
35
|
-
*/
|
|
36
|
-
onEscape?: () => void;
|
|
37
|
-
/**
|
|
38
|
-
* Called when pointer event occurs outside and this is the top layer
|
|
39
|
-
*/
|
|
40
|
-
onOutsidePointer?: (e: PointerEvent) => void;
|
|
41
|
-
/**
|
|
42
|
-
* Optional node reference for outside pointer detection
|
|
43
|
-
*/
|
|
44
|
-
node?: Node | null;
|
|
45
|
-
}
|
|
46
|
-
interface Layer {
|
|
47
|
-
/**
|
|
48
|
-
* Unique layer ID
|
|
49
|
-
*/
|
|
50
|
-
id: number;
|
|
51
|
-
/**
|
|
52
|
-
* Check if this layer is the topmost
|
|
53
|
-
*/
|
|
54
|
-
isTop(): boolean;
|
|
55
|
-
/**
|
|
56
|
-
* Remove this layer from the stack
|
|
57
|
-
*/
|
|
58
|
-
unregister(): void;
|
|
59
|
-
}
|
|
60
|
-
interface LayerManager {
|
|
61
|
-
/**
|
|
62
|
-
* Register a new layer
|
|
63
|
-
*/
|
|
64
|
-
register(options: LayerOptions): Layer;
|
|
65
|
-
/**
|
|
66
|
-
* Get all active layers in order
|
|
67
|
-
*/
|
|
68
|
-
layers(): ReadonlyArray<Layer>;
|
|
69
|
-
/**
|
|
70
|
-
* Manually trigger escape handling on the top layer
|
|
71
|
-
*/
|
|
72
|
-
handleEscape(): void;
|
|
73
|
-
/**
|
|
74
|
-
* Manually trigger outside pointer handling on the top layer
|
|
75
|
-
*/
|
|
76
|
-
handleOutsidePointer(e: PointerEvent): void;
|
|
77
|
-
}
|
|
78
|
-
declare function createLayer(): LayerManager;
|
|
79
|
-
//#endregion
|
|
80
|
-
export { Layer, LayerManager, LayerOptions, createLayer };
|
|
81
|
-
//# sourceMappingURL=layer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layer.d.ts","names":[],"sources":["../../../src/foundations/structures/layer.ts"],"mappings":";;AA+BA;;;;;;;;;;;AAca;AAGb;;;;;;;;AAcY;AAGZ;;;;;;;;UAlCiB,YAAA;EAqDqB;;;EAjDpC,QAAA;EAkCiC;;;EA7BjC,gBAAA,IAAoB,CAAA,EAAG,YAAA;EAuCvB;;;EAlCA,IAAA,GAAO,IAAI;AAAA;AAAA,UAGI,KAAA;EAuCD;;;EAnCd,EAAA;EAmCyC;;;EA9BzC,KAAA;;;;EAKA,UAAA;AAAA;AAAA,UAGe,YAAA;;;;EAIf,QAAA,CAAS,OAAA,EAAS,YAAA,GAAe,KAAA;;;;EAKjC,MAAA,IAAU,aAAA,CAAc,KAAA;;;;EAKxB,YAAA;;;;EAKA,oBAAA,CAAqB,CAAA,EAAG,YAAA;AAAA;AAAA,iBAGV,WAAA,IAAe,YAAY"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/structures/layer.ts
|
|
2
|
-
function createLayer() {
|
|
3
|
-
const stack = [];
|
|
4
|
-
let nextId = 1;
|
|
5
|
-
function register(options) {
|
|
6
|
-
const id = nextId++;
|
|
7
|
-
const entry = {
|
|
8
|
-
id,
|
|
9
|
-
options
|
|
10
|
-
};
|
|
11
|
-
stack.push(entry);
|
|
12
|
-
function isTop() {
|
|
13
|
-
return stack[stack.length - 1]?.id === id;
|
|
14
|
-
}
|
|
15
|
-
function unregister() {
|
|
16
|
-
const index = stack.findIndex((e) => e.id === id);
|
|
17
|
-
if (index !== -1) stack.splice(index, 1);
|
|
18
|
-
}
|
|
19
|
-
return {
|
|
20
|
-
id,
|
|
21
|
-
isTop,
|
|
22
|
-
unregister
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
function layers() {
|
|
26
|
-
return stack.map((entry) => ({
|
|
27
|
-
id: entry.id,
|
|
28
|
-
isTop: () => stack[stack.length - 1]?.id === entry.id,
|
|
29
|
-
unregister: () => {
|
|
30
|
-
const index = stack.findIndex((e) => e.id === entry.id);
|
|
31
|
-
if (index !== -1) stack.splice(index, 1);
|
|
32
|
-
}
|
|
33
|
-
}));
|
|
34
|
-
}
|
|
35
|
-
function handleEscape() {
|
|
36
|
-
const top = stack[stack.length - 1];
|
|
37
|
-
if (top) top.options.onEscape?.();
|
|
38
|
-
}
|
|
39
|
-
function handleOutsidePointer(e) {
|
|
40
|
-
const top = stack[stack.length - 1];
|
|
41
|
-
if (!top) return;
|
|
42
|
-
const node = top.options.node;
|
|
43
|
-
if (node && e.target instanceof Node) {
|
|
44
|
-
if (!node.contains(e.target)) top.options.onOutsidePointer?.(e);
|
|
45
|
-
} else top.options.onOutsidePointer?.(e);
|
|
46
|
-
}
|
|
47
|
-
return {
|
|
48
|
-
register,
|
|
49
|
-
layers,
|
|
50
|
-
handleEscape,
|
|
51
|
-
handleOutsidePointer
|
|
52
|
-
};
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* USAGE EXAMPLE:
|
|
56
|
-
*
|
|
57
|
-
* const layerManager = createLayer();
|
|
58
|
-
*
|
|
59
|
-
* function Modal({ onClose }) {
|
|
60
|
-
* const modalRef = ref<HTMLDivElement>();
|
|
61
|
-
*
|
|
62
|
-
* const layer = layerManager.register({
|
|
63
|
-
* node: modalRef.current,
|
|
64
|
-
* onEscape: onClose,
|
|
65
|
-
* onOutsidePointer: onClose,
|
|
66
|
-
* });
|
|
67
|
-
*
|
|
68
|
-
* onUnmount(() => layer.unregister());
|
|
69
|
-
*
|
|
70
|
-
* return (
|
|
71
|
-
* <div ref={modalRef}>
|
|
72
|
-
* <h1>Modal</h1>
|
|
73
|
-
* {layer.isTop() && <p>I am on top!</p>}
|
|
74
|
-
* </div>
|
|
75
|
-
* );
|
|
76
|
-
* }
|
|
77
|
-
*/
|
|
78
|
-
//#endregion
|
|
79
|
-
export { createLayer };
|
|
80
|
-
|
|
81
|
-
//# sourceMappingURL=layer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layer.js","names":[],"sources":["../../../src/foundations/structures/layer.ts"],"sourcesContent":["/**\n * createLayer\n *\n * Manages stacking order and coordination for overlays (modals, popovers, etc).\n *\n * INVARIANTS:\n * 1. Layers are ordered by registration time (FIFO)\n * 2. Only the top layer handles Escape key\n * 3. Only the top layer handles outside pointer events\n * 4. Nested layers are supported\n * 5. Does not implement portals (orthogonal concern)\n * 6. No automatic DOM insertion (caller controls mounting)\n *\n * DESIGN:\n * - Returns a layer manager with register/unregister API\n * - Each layer has a unique ID and can query if it's the top layer\n * - Escape and outside pointer coordination via callbacks\n * - No z-index management (CSS concern)\n *\n * USAGE:\n * const manager = createLayer();\n *\n * const layer = manager.register({\n * onEscape: () => { ... },\n * onOutsidePointer: () => { ... }\n * });\n *\n * layer.isTop(); // true if this is the topmost layer\n * layer.unregister();\n */\n\nexport interface LayerOptions {\n /**\n * Called when Escape is pressed and this is the top layer\n */\n onEscape?: () => void;\n\n /**\n * Called when pointer event occurs outside and this is the top layer\n */\n onOutsidePointer?: (e: PointerEvent) => void;\n\n /**\n * Optional node reference for outside pointer detection\n */\n node?: Node | null;\n}\n\nexport interface Layer {\n /**\n * Unique layer ID\n */\n id: number;\n\n /**\n * Check if this layer is the topmost\n */\n isTop(): boolean;\n\n /**\n * Remove this layer from the stack\n */\n unregister(): void;\n}\n\nexport interface LayerManager {\n /**\n * Register a new layer\n */\n register(options: LayerOptions): Layer;\n\n /**\n * Get all active layers in order\n */\n layers(): ReadonlyArray<Layer>;\n\n /**\n * Manually trigger escape handling on the top layer\n */\n handleEscape(): void;\n\n /**\n * Manually trigger outside pointer handling on the top layer\n */\n handleOutsidePointer(e: PointerEvent): void;\n}\n\nexport function createLayer(): LayerManager {\n const stack: Array<{\n id: number;\n options: LayerOptions;\n }> = [];\n\n let nextId = 1;\n\n function register(options: LayerOptions): Layer {\n const id = nextId++;\n const entry = { id, options };\n stack.push(entry);\n\n function isTop(): boolean {\n return stack[stack.length - 1]?.id === id;\n }\n\n function unregister(): void {\n const index = stack.findIndex((e) => e.id === id);\n if (index !== -1) {\n stack.splice(index, 1);\n }\n }\n\n return {\n id,\n isTop,\n unregister,\n };\n }\n\n function layers(): ReadonlyArray<Layer> {\n return stack.map((entry) => ({\n id: entry.id,\n isTop: () => stack[stack.length - 1]?.id === entry.id,\n unregister: () => {\n const index = stack.findIndex((e) => e.id === entry.id);\n if (index !== -1) {\n stack.splice(index, 1);\n }\n },\n }));\n }\n\n function handleEscape(): void {\n const top = stack[stack.length - 1];\n if (top) {\n top.options.onEscape?.();\n }\n }\n\n function handleOutsidePointer(e: PointerEvent): void {\n const top = stack[stack.length - 1];\n if (!top) return;\n\n const node = top.options.node;\n if (node && e.target instanceof Node) {\n // Check if the event target is outside the layer node\n if (!node.contains(e.target)) {\n top.options.onOutsidePointer?.(e);\n }\n } else {\n // No node provided, always trigger\n top.options.onOutsidePointer?.(e);\n }\n }\n\n return {\n register,\n layers,\n handleEscape,\n handleOutsidePointer,\n };\n}\n\n/**\n * USAGE EXAMPLE:\n *\n * const layerManager = createLayer();\n *\n * function Modal({ onClose }) {\n * const modalRef = ref<HTMLDivElement>();\n *\n * const layer = layerManager.register({\n * node: modalRef.current,\n * onEscape: onClose,\n * onOutsidePointer: onClose,\n * });\n *\n * onUnmount(() => layer.unregister());\n *\n * return (\n * <div ref={modalRef}>\n * <h1>Modal</h1>\n * {layer.isTop() && <p>I am on top!</p>}\n * </div>\n * );\n * }\n */\n"],"mappings":";AAuFA,SAAgB,cAA4B;CAC1C,MAAM,QAGD,CAAC;CAEN,IAAI,SAAS;CAEb,SAAS,SAAS,SAA8B;EAC9C,MAAM,KAAK;EACX,MAAM,QAAQ;GAAE;GAAI;EAAQ;EAC5B,MAAM,KAAK,KAAK;EAEhB,SAAS,QAAiB;GACxB,OAAO,MAAM,MAAM,SAAS,EAAE,EAAE,OAAO;EACzC;EAEA,SAAS,aAAmB;GAC1B,MAAM,QAAQ,MAAM,WAAW,MAAM,EAAE,OAAO,EAAE;GAChD,IAAI,UAAU,IACZ,MAAM,OAAO,OAAO,CAAC;EAEzB;EAEA,OAAO;GACL;GACA;GACA;EACF;CACF;CAEA,SAAS,SAA+B;EACtC,OAAO,MAAM,KAAK,WAAW;GAC3B,IAAI,MAAM;GACV,aAAa,MAAM,MAAM,SAAS,EAAE,EAAE,OAAO,MAAM;GACnD,kBAAkB;IAChB,MAAM,QAAQ,MAAM,WAAW,MAAM,EAAE,OAAO,MAAM,EAAE;IACtD,IAAI,UAAU,IACZ,MAAM,OAAO,OAAO,CAAC;GAEzB;EACF,EAAE;CACJ;CAEA,SAAS,eAAqB;EAC5B,MAAM,MAAM,MAAM,MAAM,SAAS;EACjC,IAAI,KACF,IAAI,QAAQ,WAAW;CAE3B;CAEA,SAAS,qBAAqB,GAAuB;EACnD,MAAM,MAAM,MAAM,MAAM,SAAS;EACjC,IAAI,CAAC,KAAK;EAEV,MAAM,OAAO,IAAI,QAAQ;EACzB,IAAI,QAAQ,EAAE,kBAAkB,MAE9B;OAAI,CAAC,KAAK,SAAS,EAAE,MAAM,GACzB,IAAI,QAAQ,mBAAmB,CAAC;EAClC,OAGA,IAAI,QAAQ,mBAAmB,CAAC;CAEpC;CAEA,OAAO;EACL;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { RenderableChild } from "../../common/vnode.js";
|
|
2
|
-
|
|
3
|
-
//#region src/foundations/structures/layout.d.ts
|
|
4
|
-
/**
|
|
5
|
-
* Layout helper.
|
|
6
|
-
*
|
|
7
|
-
* A layout is just a normal component that wraps children.
|
|
8
|
-
* Persistence and reuse are handled by the runtime via component identity.
|
|
9
|
-
*
|
|
10
|
-
* This helper exists purely for readability and convention.
|
|
11
|
-
*
|
|
12
|
-
* POLICY DECISIONS (LOCKED):
|
|
13
|
-
*
|
|
14
|
-
* 1. Return Type is Opaque (unknown)
|
|
15
|
-
* Layout components return `unknown` to remain runtime-agnostic.
|
|
16
|
-
* The runtime owns concrete JSX element types.
|
|
17
|
-
*
|
|
18
|
-
* 2. Children Positioning
|
|
19
|
-
* Layout receives children as first argument (router-friendly).
|
|
20
|
-
* Props come second. This matches route layout conventions where
|
|
21
|
-
* children represent the nested route content.
|
|
22
|
-
*
|
|
23
|
-
* 3. Props Spreading
|
|
24
|
-
* Props are spread into the layout component. This is intentional
|
|
25
|
-
* and deterministic — no merging or composition.
|
|
26
|
-
*/
|
|
27
|
-
type LayoutComponent<P = object> = (props: P & {
|
|
28
|
-
children?: RenderableChild;
|
|
29
|
-
}) => unknown;
|
|
30
|
-
declare function layout<P = object>(Layout: LayoutComponent<P>): (children?: RenderableChild, props?: P) => unknown;
|
|
31
|
-
//#endregion
|
|
32
|
-
export { LayoutComponent, layout };
|
|
33
|
-
//# sourceMappingURL=layout.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","names":[],"sources":["../../../src/foundations/structures/layout.tsx"],"mappings":";;;;;AA0BA;;;;;;;;;;AAC2C;AAG3C;;;;;;;;;;KAJY,eAAA,gBACV,KAAA,EAAO,CAAA;EAAM,QAAA,GAAW,eAAe;AAAA;AAAA,iBAGzB,MAAA,aAAmB,MAAA,EAAQ,eAAA,CAAgB,CAAA,KACjD,QAAA,GAAW,eAAA,EAAiB,KAAA,GAAQ,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"layout.js","names":[],"sources":["../../../src/foundations/structures/layout.tsx"],"sourcesContent":["import type { RenderableChild } from '../../common/vnode';\n\n/**\n * Layout helper.\n *\n * A layout is just a normal component that wraps children.\n * Persistence and reuse are handled by the runtime via component identity.\n *\n * This helper exists purely for readability and convention.\n *\n * POLICY DECISIONS (LOCKED):\n *\n * 1. Return Type is Opaque (unknown)\n * Layout components return `unknown` to remain runtime-agnostic.\n * The runtime owns concrete JSX element types.\n *\n * 2. Children Positioning\n * Layout receives children as first argument (router-friendly).\n * Props come second. This matches route layout conventions where\n * children represent the nested route content.\n *\n * 3. Props Spreading\n * Props are spread into the layout component. This is intentional\n * and deterministic — no merging or composition.\n */\n\nexport type LayoutComponent<P = object> = (\n props: P & { children?: RenderableChild }\n) => unknown;\n\nexport function layout<P = object>(Layout: LayoutComponent<P>) {\n return (children?: RenderableChild, props?: P) => {\n const mergedProps = { ...props, children } as P & {\n children?: RenderableChild;\n };\n return Layout(mergedProps);\n };\n}\n"],"mappings":";AA8BA,SAAgB,OAAmB,QAA4B;CAC7D,QAAQ,UAA4B,UAAc;EAIhD,OAAO,OAAO;GAHQ,GAAG;GAAO;EAGlB,CAAW;CAC3B;AACF"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { JSXElement } from "../../common/jsx.js";
|
|
2
|
-
import { RenderableChild } from "../../common/vnode.js";
|
|
3
|
-
//#region src/foundations/structures/presence.d.ts
|
|
4
|
-
interface PresenceProps {
|
|
5
|
-
present: boolean | (() => boolean);
|
|
6
|
-
children?: RenderableChild;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Presence
|
|
10
|
-
*
|
|
11
|
-
* Structural policy primitive for conditional mount/unmount.
|
|
12
|
-
* - No timers
|
|
13
|
-
* - No animation coupling
|
|
14
|
-
* - No DOM side-effects
|
|
15
|
-
*
|
|
16
|
-
* POLICY DECISIONS (LOCKED):
|
|
17
|
-
*
|
|
18
|
-
* 1. Present as Function
|
|
19
|
-
* Accepts boolean OR function to support lazy evaluation patterns.
|
|
20
|
-
* Function is called once per render. Use boolean form for static values.
|
|
21
|
-
*
|
|
22
|
-
* 2. Children Type
|
|
23
|
-
* Presence forwards normal renderable child content only.
|
|
24
|
-
* Imperative DOM nodes are not part of the public contract.
|
|
25
|
-
*
|
|
26
|
-
* 3. Immediate Mount/Unmount
|
|
27
|
-
* No exit animations or transitions. When `present` becomes false,
|
|
28
|
-
* children are removed immediately. Animation must be layered above
|
|
29
|
-
* this primitive.
|
|
30
|
-
*/
|
|
31
|
-
declare function Presence({
|
|
32
|
-
present,
|
|
33
|
-
children
|
|
34
|
-
}: PresenceProps): JSXElement | null;
|
|
35
|
-
//#endregion
|
|
36
|
-
export { Presence, PresenceProps };
|
|
37
|
-
//# sourceMappingURL=presence.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"presence.d.ts","names":[],"sources":["../../../src/foundations/structures/presence.ts"],"mappings":";;;UAIiB,aAAA;EACf,OAAA;EACA,QAAA,GAAW,eAAe;AAAA;;;;;;;;AAAA;AA0B5B;;;;;;;;;;;;;;;iBAAgB,QAAA;EACd,OAAA;EACA;AAAA,GACC,aAAA,GAAgB,UAAA"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { ELEMENT_TYPE, Fragment } from "../../common/jsx.js";
|
|
2
|
-
import "../../jsx/index.js";
|
|
3
|
-
//#region src/foundations/structures/presence.ts
|
|
4
|
-
/**
|
|
5
|
-
* Presence
|
|
6
|
-
*
|
|
7
|
-
* Structural policy primitive for conditional mount/unmount.
|
|
8
|
-
* - No timers
|
|
9
|
-
* - No animation coupling
|
|
10
|
-
* - No DOM side-effects
|
|
11
|
-
*
|
|
12
|
-
* POLICY DECISIONS (LOCKED):
|
|
13
|
-
*
|
|
14
|
-
* 1. Present as Function
|
|
15
|
-
* Accepts boolean OR function to support lazy evaluation patterns.
|
|
16
|
-
* Function is called once per render. Use boolean form for static values.
|
|
17
|
-
*
|
|
18
|
-
* 2. Children Type
|
|
19
|
-
* Presence forwards normal renderable child content only.
|
|
20
|
-
* Imperative DOM nodes are not part of the public contract.
|
|
21
|
-
*
|
|
22
|
-
* 3. Immediate Mount/Unmount
|
|
23
|
-
* No exit animations or transitions. When `present` becomes false,
|
|
24
|
-
* children are removed immediately. Animation must be layered above
|
|
25
|
-
* this primitive.
|
|
26
|
-
*/
|
|
27
|
-
function Presence({ present, children }) {
|
|
28
|
-
if (!(typeof present === "function" ? present() : Boolean(present))) return null;
|
|
29
|
-
return {
|
|
30
|
-
$$typeof: ELEMENT_TYPE,
|
|
31
|
-
type: Fragment,
|
|
32
|
-
props: { children },
|
|
33
|
-
key: null
|
|
34
|
-
};
|
|
35
|
-
}
|
|
36
|
-
//#endregion
|
|
37
|
-
export { Presence };
|
|
38
|
-
|
|
39
|
-
//# sourceMappingURL=presence.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"presence.js","names":[],"sources":["../../../src/foundations/structures/presence.ts"],"sourcesContent":["import { ELEMENT_TYPE, Fragment } from '../../jsx';\nimport type { JSXElement } from '../../jsx';\nimport type { RenderableChild } from '../../common/vnode';\n\nexport interface PresenceProps {\n present: boolean | (() => boolean);\n children?: RenderableChild;\n}\n\n/**\n * Presence\n *\n * Structural policy primitive for conditional mount/unmount.\n * - No timers\n * - No animation coupling\n * - No DOM side-effects\n *\n * POLICY DECISIONS (LOCKED):\n *\n * 1. Present as Function\n * Accepts boolean OR function to support lazy evaluation patterns.\n * Function is called once per render. Use boolean form for static values.\n *\n * 2. Children Type\n * Presence forwards normal renderable child content only.\n * Imperative DOM nodes are not part of the public contract.\n *\n * 3. Immediate Mount/Unmount\n * No exit animations or transitions. When `present` becomes false,\n * children are removed immediately. Animation must be layered above\n * this primitive.\n */\nexport function Presence({\n present,\n children,\n}: PresenceProps): JSXElement | null {\n const isPresent =\n typeof present === 'function' ? present() : Boolean(present);\n if (!isPresent) return null;\n\n const element: JSXElement = {\n $$typeof: ELEMENT_TYPE,\n type: Fragment,\n props: { children },\n key: null,\n };\n return element;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,SAAgB,SAAS,EACvB,SACA,YACmC;CAGnC,IAAI,EADF,OAAO,YAAY,aAAa,QAAQ,IAAI,QAAQ,OAAO,IAC7C,OAAO;CAQvB,OAAO;EALL,UAAU;EACV,MAAM;EACN,OAAO,EAAE,SAAS;EAClB,KAAK;CAEA;AACT"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { JSXElement } from "../../common/jsx.js";
|
|
2
|
-
import { RenderableChild } from "../../common/vnode.js";
|
|
3
|
-
//#region src/foundations/structures/slot.d.ts
|
|
4
|
-
type SlotProps = {
|
|
5
|
-
asChild: true;
|
|
6
|
-
children: JSXElement;
|
|
7
|
-
[key: string]: unknown;
|
|
8
|
-
} | {
|
|
9
|
-
asChild?: false;
|
|
10
|
-
children?: RenderableChild;
|
|
11
|
-
};
|
|
12
|
-
/**
|
|
13
|
-
* Slot
|
|
14
|
-
*
|
|
15
|
-
* Structural primitive for prop forwarding patterns.
|
|
16
|
-
*
|
|
17
|
-
* POLICY DECISIONS (LOCKED):
|
|
18
|
-
*
|
|
19
|
-
* 1. asChild Pattern
|
|
20
|
-
* When asChild=true, merges props into the single child element.
|
|
21
|
-
* Child must be a valid JSXElement; non-element children return null.
|
|
22
|
-
* **Slot props override child props** (injection pattern).
|
|
23
|
-
*
|
|
24
|
-
* 2. Fallback Behavior
|
|
25
|
-
* When asChild=false, returns a Fragment (structural no-op).
|
|
26
|
-
* No DOM element is introduced.
|
|
27
|
-
*
|
|
28
|
-
* 3. Type Safety
|
|
29
|
-
* asChild=true requires exactly one JSXElement child (enforced by type).
|
|
30
|
-
* Runtime validates with isElement() check.
|
|
31
|
-
*/
|
|
32
|
-
declare function Slot(props: SlotProps): JSXElement | null;
|
|
33
|
-
//#endregion
|
|
34
|
-
export { Slot, SlotProps };
|
|
35
|
-
//# sourceMappingURL=slot.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slot.d.ts","names":[],"sources":["../../../src/foundations/structures/slot.tsx"],"mappings":";;;KAIY,SAAA;EAEN,OAAA;EACA,QAAA,EAAU,UAAA;EAAA,CACT,GAAA;AAAA;EAGD,OAAA;EACA,QAAA,GAAW,eAAe;AAAA;;;;;;;;AAAA;AAuBhC;;;;;;;;AAAkD;;;;iBAAlC,IAAA,CAAK,KAAA,EAAO,SAAA,GAAY,UAAU"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { ELEMENT_TYPE, Fragment } from "../../common/jsx.js";
|
|
2
|
-
import { cloneElement, isElement } from "../../jsx/utils.js";
|
|
3
|
-
import "../../jsx/index.js";
|
|
4
|
-
//#region src/foundations/structures/slot.tsx
|
|
5
|
-
/**
|
|
6
|
-
* Slot
|
|
7
|
-
*
|
|
8
|
-
* Structural primitive for prop forwarding patterns.
|
|
9
|
-
*
|
|
10
|
-
* POLICY DECISIONS (LOCKED):
|
|
11
|
-
*
|
|
12
|
-
* 1. asChild Pattern
|
|
13
|
-
* When asChild=true, merges props into the single child element.
|
|
14
|
-
* Child must be a valid JSXElement; non-element children return null.
|
|
15
|
-
* **Slot props override child props** (injection pattern).
|
|
16
|
-
*
|
|
17
|
-
* 2. Fallback Behavior
|
|
18
|
-
* When asChild=false, returns a Fragment (structural no-op).
|
|
19
|
-
* No DOM element is introduced.
|
|
20
|
-
*
|
|
21
|
-
* 3. Type Safety
|
|
22
|
-
* asChild=true requires exactly one JSXElement child (enforced by type).
|
|
23
|
-
* Runtime validates with isElement() check.
|
|
24
|
-
*/
|
|
25
|
-
function Slot(props) {
|
|
26
|
-
if (props.asChild) {
|
|
27
|
-
const { children, asChild: _asChild, ...rest } = props;
|
|
28
|
-
if (isElement(children)) return cloneElement(children, rest);
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
return {
|
|
32
|
-
$$typeof: ELEMENT_TYPE,
|
|
33
|
-
type: Fragment,
|
|
34
|
-
props: { children: props.children },
|
|
35
|
-
key: null
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
//#endregion
|
|
39
|
-
export { Slot };
|
|
40
|
-
|
|
41
|
-
//# sourceMappingURL=slot.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"slot.js","names":[],"sources":["../../../src/foundations/structures/slot.tsx"],"sourcesContent":["import { Fragment, cloneElement, isElement, ELEMENT_TYPE } from '../../jsx';\nimport type { JSXElement } from '../../jsx';\nimport type { RenderableChild } from '../../common/vnode';\n\nexport type SlotProps =\n | {\n asChild: true;\n children: JSXElement;\n [key: string]: unknown;\n }\n | {\n asChild?: false;\n children?: RenderableChild;\n };\n\n/**\n * Slot\n *\n * Structural primitive for prop forwarding patterns.\n *\n * POLICY DECISIONS (LOCKED):\n *\n * 1. asChild Pattern\n * When asChild=true, merges props into the single child element.\n * Child must be a valid JSXElement; non-element children return null.\n * **Slot props override child props** (injection pattern).\n *\n * 2. Fallback Behavior\n * When asChild=false, returns a Fragment (structural no-op).\n * No DOM element is introduced.\n *\n * 3. Type Safety\n * asChild=true requires exactly one JSXElement child (enforced by type).\n * Runtime validates with isElement() check.\n */\nexport function Slot(props: SlotProps): JSXElement | null {\n if (props.asChild) {\n const { children, asChild: _asChild, ...rest } = props;\n\n if (isElement(children)) {\n return cloneElement(children, rest);\n }\n return null;\n }\n\n // Structural no-op: Slot does not introduce DOM\n // Return a vnode object for the fragment with the internal element marker.\n const element: JSXElement = {\n $$typeof: ELEMENT_TYPE,\n type: Fragment,\n props: { children: props.children },\n key: null,\n };\n return element;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAmCA,SAAgB,KAAK,OAAqC;CACxD,IAAI,MAAM,SAAS;EACjB,MAAM,EAAE,UAAU,SAAS,UAAU,GAAG,SAAS;EAEjD,IAAI,UAAU,QAAQ,GACpB,OAAO,aAAa,UAAU,IAAI;EAEpC,OAAO;CACT;CAUA,OAAO;EALL,UAAU;EACV,MAAM;EACN,OAAO,EAAE,UAAU,MAAM,SAAS;EAClC,KAAK;CAEA;AACT"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/utilities/aria.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* Tiny aria helpers
|
|
4
|
-
*/
|
|
5
|
-
declare function ariaDisabled(disabled?: boolean): {
|
|
6
|
-
'aria-disabled'?: 'true';
|
|
7
|
-
};
|
|
8
|
-
declare function ariaExpanded(expanded?: boolean): {
|
|
9
|
-
'aria-expanded'?: 'true' | 'false';
|
|
10
|
-
};
|
|
11
|
-
declare function ariaSelected(selected?: boolean): {
|
|
12
|
-
'aria-selected'?: 'true' | 'false';
|
|
13
|
-
};
|
|
14
|
-
//#endregion
|
|
15
|
-
export { ariaDisabled, ariaExpanded, ariaSelected };
|
|
16
|
-
//# sourceMappingURL=aria.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aria.d.ts","names":[],"sources":["../../../src/foundations/utilities/aria.ts"],"mappings":";;AAIA;;iBAAgB,YAAA,CAAa,QAAA;EAAuB,eAAe;AAAA;AAAA,iBAInD,YAAA,CAAa,QAAA;EAC3B,eAAe;AAAA;AAAA,iBAOD,YAAA,CAAa,QAAA;EAC3B,eAAe;AAAA"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/utilities/aria.ts
|
|
2
|
-
/**
|
|
3
|
-
* Tiny aria helpers
|
|
4
|
-
*/
|
|
5
|
-
function ariaDisabled(disabled) {
|
|
6
|
-
return disabled ? { "aria-disabled": "true" } : {};
|
|
7
|
-
}
|
|
8
|
-
function ariaExpanded(expanded) {
|
|
9
|
-
return expanded === void 0 ? {} : { "aria-expanded": String(expanded) };
|
|
10
|
-
}
|
|
11
|
-
function ariaSelected(selected) {
|
|
12
|
-
return selected === void 0 ? {} : { "aria-selected": String(selected) };
|
|
13
|
-
}
|
|
14
|
-
//#endregion
|
|
15
|
-
export { ariaDisabled, ariaExpanded, ariaSelected };
|
|
16
|
-
|
|
17
|
-
//# sourceMappingURL=aria.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aria.js","names":[],"sources":["../../../src/foundations/utilities/aria.ts"],"sourcesContent":["/**\n * Tiny aria helpers\n */\n\nexport function ariaDisabled(disabled?: boolean): { 'aria-disabled'?: 'true' } {\n return disabled ? { 'aria-disabled': 'true' } : {};\n}\n\nexport function ariaExpanded(expanded?: boolean): {\n 'aria-expanded'?: 'true' | 'false';\n} {\n return expanded === undefined\n ? {}\n : { 'aria-expanded': String(expanded) as 'true' | 'false' };\n}\n\nexport function ariaSelected(selected?: boolean): {\n 'aria-selected'?: 'true' | 'false';\n} {\n return selected === undefined\n ? {}\n : { 'aria-selected': String(selected) as 'true' | 'false' };\n}\n"],"mappings":";;;;AAIA,SAAgB,aAAa,UAAkD;CAC7E,OAAO,WAAW,EAAE,iBAAiB,OAAO,IAAI,CAAC;AACnD;AAEA,SAAgB,aAAa,UAE3B;CACA,OAAO,aAAa,SAChB,CAAC,IACD,EAAE,iBAAiB,OAAO,QAAQ,EAAsB;AAC9D;AAEA,SAAgB,aAAa,UAE3B;CACA,OAAO,aAAa,SAChB,CAAC,IACD,EAAE,iBAAiB,OAAO,QAAQ,EAAsB;AAC9D"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/utilities/compose-handlers.d.ts
|
|
2
|
-
/**
|
|
3
|
-
* composeHandlers
|
|
4
|
-
*
|
|
5
|
-
* Compose two event handlers into one. The first handler runs, and unless it
|
|
6
|
-
* calls `event.preventDefault()` (or sets `defaultPrevented`), the second
|
|
7
|
-
* handler runs. This prevents accidental clobbering of child handlers when
|
|
8
|
-
* injecting props.
|
|
9
|
-
*
|
|
10
|
-
* POLICY DECISIONS (LOCKED):
|
|
11
|
-
*
|
|
12
|
-
* 1. Execution Order
|
|
13
|
-
* First handler runs before second (injected before base).
|
|
14
|
-
* This allows injected handlers to prevent default behavior.
|
|
15
|
-
*
|
|
16
|
-
* 2. Default Prevention Check
|
|
17
|
-
* By default, checks `defaultPrevented` on first argument.
|
|
18
|
-
* Can be disabled via options.checkDefaultPrevented = false.
|
|
19
|
-
*
|
|
20
|
-
* 3. Undefined Handler Support
|
|
21
|
-
* Undefined handlers are skipped (no-op). This simplifies usage
|
|
22
|
-
* where handlers are optional.
|
|
23
|
-
*
|
|
24
|
-
* 4. Type Safety
|
|
25
|
-
* Args are readonly to prevent mutation. Return type matches input.
|
|
26
|
-
*/
|
|
27
|
-
interface ComposeHandlersOptions {
|
|
28
|
-
/**
|
|
29
|
-
* When true (default), do not run the second handler if the first prevented default.
|
|
30
|
-
* When false, always run both handlers.
|
|
31
|
-
*/
|
|
32
|
-
checkDefaultPrevented?: boolean;
|
|
33
|
-
}
|
|
34
|
-
declare function composeHandlers<A extends readonly unknown[]>(first?: (...args: A) => void, second?: (...args: A) => void, options?: ComposeHandlersOptions): (...args: A) => void;
|
|
35
|
-
//#endregion
|
|
36
|
-
export { ComposeHandlersOptions, composeHandlers };
|
|
37
|
-
//# sourceMappingURL=compose-handlers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compose-handlers.d.ts","names":[],"sources":["../../../src/foundations/utilities/compose-handlers.ts"],"mappings":";;AA0BA;;;;AAKuB;AAcvB;;;;;;;;;;;;;;;;;;;UAnBiB,sBAAA;EAuBH;AAAA;;;EAlBZ,qBAAqB;AAAA;AAAA,iBAcP,eAAA,+BACd,KAAA,OAAY,IAAA,EAAM,CAAA,WAClB,MAAA,OAAa,IAAA,EAAM,CAAA,WACnB,OAAA,GAAU,sBAAA,OACL,IAAA,EAAM,CAAA"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/utilities/compose-handlers.ts
|
|
2
|
-
function isDefaultPrevented(value) {
|
|
3
|
-
return typeof value === "object" && value !== null && "defaultPrevented" in value && value.defaultPrevented === true;
|
|
4
|
-
}
|
|
5
|
-
function composeHandlers(first, second, options) {
|
|
6
|
-
if (!first && !second) return noop;
|
|
7
|
-
if (!first) return second;
|
|
8
|
-
if (!second) return first;
|
|
9
|
-
const checkDefaultPrevented = options?.checkDefaultPrevented !== false;
|
|
10
|
-
return function composed(...args) {
|
|
11
|
-
first(...args);
|
|
12
|
-
if (checkDefaultPrevented && isDefaultPrevented(args[0])) return;
|
|
13
|
-
second(...args);
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
function noop() {}
|
|
17
|
-
//#endregion
|
|
18
|
-
export { composeHandlers };
|
|
19
|
-
|
|
20
|
-
//# sourceMappingURL=compose-handlers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compose-handlers.js","names":[],"sources":["../../../src/foundations/utilities/compose-handlers.ts"],"sourcesContent":["/**\n * composeHandlers\n *\n * Compose two event handlers into one. The first handler runs, and unless it\n * calls `event.preventDefault()` (or sets `defaultPrevented`), the second\n * handler runs. This prevents accidental clobbering of child handlers when\n * injecting props.\n *\n * POLICY DECISIONS (LOCKED):\n *\n * 1. Execution Order\n * First handler runs before second (injected before base).\n * This allows injected handlers to prevent default behavior.\n *\n * 2. Default Prevention Check\n * By default, checks `defaultPrevented` on first argument.\n * Can be disabled via options.checkDefaultPrevented = false.\n *\n * 3. Undefined Handler Support\n * Undefined handlers are skipped (no-op). This simplifies usage\n * where handlers are optional.\n *\n * 4. Type Safety\n * Args are readonly to prevent mutation. Return type matches input.\n */\n\nexport interface ComposeHandlersOptions {\n /**\n * When true (default), do not run the second handler if the first prevented default.\n * When false, always run both handlers.\n */\n checkDefaultPrevented?: boolean;\n}\n\nfunction isDefaultPrevented(\n value: unknown\n): value is { defaultPrevented: true } {\n return (\n typeof value === 'object' &&\n value !== null &&\n 'defaultPrevented' in value &&\n (value as { defaultPrevented?: boolean }).defaultPrevented === true\n );\n}\n\nexport function composeHandlers<A extends readonly unknown[]>(\n first?: (...args: A) => void,\n second?: (...args: A) => void,\n options?: ComposeHandlersOptions\n): (...args: A) => void {\n // Fast path: if neither handler exists, return stable no-op\n if (!first && !second) {\n return noop as (...args: A) => void;\n }\n\n // Fast path: if only one handler exists, return it directly\n if (!first) return second!;\n if (!second) return first;\n\n // Composition path: both handlers exist\n const checkDefaultPrevented = options?.checkDefaultPrevented !== false;\n\n return function composed(...args: A) {\n first(...args);\n\n if (checkDefaultPrevented && isDefaultPrevented(args[0])) {\n return;\n }\n\n second(...args);\n } as (...args: A) => void;\n}\n\n// Stable no-op for fast path\nfunction noop() {}\n"],"mappings":";AAkCA,SAAS,mBACP,OACqC;CACrC,OACE,OAAO,UAAU,YACjB,UAAU,QACV,sBAAsB,SACrB,MAAyC,qBAAqB;AAEnE;AAEA,SAAgB,gBACd,OACA,QACA,SACsB;CAEtB,IAAI,CAAC,SAAS,CAAC,QACb,OAAO;CAIT,IAAI,CAAC,OAAO,OAAO;CACnB,IAAI,CAAC,QAAQ,OAAO;CAGpB,MAAM,wBAAwB,SAAS,0BAA0B;CAEjE,OAAO,SAAS,SAAS,GAAG,MAAS;EACnC,MAAM,GAAG,IAAI;EAEb,IAAI,yBAAyB,mBAAmB,KAAK,EAAE,GACrD;EAGF,OAAO,GAAG,IAAI;CAChB;AACF;AAGA,SAAS,OAAO,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compose-ref.d.ts","names":[],"sources":["../../../src/foundations/utilities/compose-ref.ts"],"mappings":";;AAmBA;;;;;;;;;;AAEgB;AAIhB;;;;;;KANY,GAAA,QACN,KAAA,EAAO,CAAA;EACP,OAAA,EAAS,CAAC;AAAA;AAAA,iBAIA,MAAA,IAAU,GAAA,EAAK,GAAA,CAAI,CAAA,GAAI,KAAA,EAAO,CAAA;AAAA,iBAY9B,WAAA,OACX,IAAA,EAAM,KAAA,CAAM,GAAA,CAAI,CAAA,MACjB,KAAA,EAAO,CAAA"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/utilities/compose-ref.ts
|
|
2
|
-
function setRef(ref, value) {
|
|
3
|
-
if (!ref) return;
|
|
4
|
-
if (typeof ref === "function") {
|
|
5
|
-
ref(value);
|
|
6
|
-
return;
|
|
7
|
-
}
|
|
8
|
-
if (Object.isExtensible(ref)) ref.current = value;
|
|
9
|
-
}
|
|
10
|
-
function composeRefs(...refs) {
|
|
11
|
-
return (value) => {
|
|
12
|
-
for (const ref of refs) setRef(ref, value);
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
//#endregion
|
|
16
|
-
export { composeRefs, setRef };
|
|
17
|
-
|
|
18
|
-
//# sourceMappingURL=compose-ref.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compose-ref.js","names":[],"sources":["../../../src/foundations/utilities/compose-ref.ts"],"sourcesContent":["/**\n * Ref composition utilities\n *\n * POLICY DECISIONS (LOCKED):\n *\n * 1. Ref Types Supported\n * - Callback refs: (value: T | null) => void\n * - Object refs: { current: T | null }\n * - null/undefined (no-op)\n *\n * 2. Write Failure Handling\n * setRef catches write failures (readonly refs) and ignores them.\n * This is intentional — refs may be readonly in some contexts.\n *\n * 3. Composition Order\n * composeRefs applies refs in array order (left to right).\n * All refs are called even if one fails.\n */\n\nexport type Ref<T> =\n | ((value: T | null) => void)\n | { current: T | null }\n | null\n | undefined;\n\nexport function setRef<T>(ref: Ref<T>, value: T | null): void {\n if (!ref) return;\n if (typeof ref === 'function') {\n ref(value);\n return;\n }\n // Fast path: use Object.isExtensible check instead of try/catch for better performance\n if (Object.isExtensible(ref)) {\n (ref as { current: T | null }).current = value;\n }\n}\n\nexport function composeRefs<T>(\n ...refs: Array<Ref<T>>\n): (value: T | null) => void {\n return (value: T | null) => {\n for (const ref of refs) setRef(ref, value);\n };\n}\n"],"mappings":";AAyBA,SAAgB,OAAU,KAAa,OAAuB;CAC5D,IAAI,CAAC,KAAK;CACV,IAAI,OAAO,QAAQ,YAAY;EAC7B,IAAI,KAAK;EACT;CACF;CAEA,IAAI,OAAO,aAAa,GAAG,GACzB,IAA+B,UAAU;AAE7C;AAEA,SAAgB,YACd,GAAG,MACwB;CAC3B,QAAQ,UAAoB;EAC1B,KAAK,MAAM,OAAO,MAAM,OAAO,KAAK,KAAK;CAC3C;AACF"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
//#region src/foundations/utilities/event-types.d.ts
|
|
2
|
-
interface DefaultPreventable {
|
|
3
|
-
defaultPrevented?: boolean;
|
|
4
|
-
preventDefault?: () => void;
|
|
5
|
-
}
|
|
6
|
-
interface PropagationStoppable {
|
|
7
|
-
stopPropagation?: () => void;
|
|
8
|
-
}
|
|
9
|
-
interface KeyboardLikeEvent extends DefaultPreventable, PropagationStoppable {
|
|
10
|
-
key: string;
|
|
11
|
-
}
|
|
12
|
-
interface PointerLikeEvent extends DefaultPreventable, PropagationStoppable {
|
|
13
|
-
target?: unknown;
|
|
14
|
-
}
|
|
15
|
-
interface FocusLikeEvent extends DefaultPreventable, PropagationStoppable {
|
|
16
|
-
relatedTarget?: unknown;
|
|
17
|
-
}
|
|
18
|
-
//#endregion
|
|
19
|
-
export { DefaultPreventable, FocusLikeEvent, KeyboardLikeEvent, PointerLikeEvent, PropagationStoppable };
|
|
20
|
-
//# sourceMappingURL=event-types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"event-types.d.ts","names":[],"sources":["../../../src/foundations/utilities/event-types.ts"],"mappings":";UAAiB,kBAAA;EACf,gBAAA;EACA,cAAc;AAAA;AAAA,UAGC,oBAAA;EACf,eAAe;AAAA;AAAA,UAGA,iBAAA,SACP,kBAAA,EAAoB,oBAAoB;EAChD,GAAA;AAAA;AAAA,UAGe,gBAAA,SACP,kBAAA,EAAoB,oBAAoB;EAChD,MAAA;AAAA;AAAA,UAGe,cAAA,SACP,kBAAA,EAAoB,oBAAoB;EAChD,aAAA;AAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"merge-props.d.ts","names":[],"sources":["../../../src/foundations/utilities/merge-props.ts"],"mappings":";iBAiCgB,UAAA,iDACd,IAAA,EAAM,KAAA,EACN,QAAA,EAAU,SAAA,GACT,SAAA,GAAY,KAAA"}
|