@easemate/web-kit 0.2.0 → 0.3.1
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 +99 -5
- package/build/decorators.cjs +921 -0
- package/build/decorators.cjs.map +1 -0
- package/build/decorators.d.cts +123 -0
- package/build/decorators.d.ts +123 -0
- package/build/decorators.js +889 -0
- package/build/decorators.js.map +1 -0
- package/build/elements.cjs +27604 -0
- package/build/elements.cjs.map +1 -0
- package/build/elements.d.cts +373 -0
- package/build/elements.d.ts +373 -0
- package/build/elements.js +27528 -0
- package/build/elements.js.map +1 -0
- package/build/{elements/monitor/index.d.ts → index-31iOHBv0.d.cts} +26 -5
- package/build/{elements/monitor/index.d.cts → index-31iOHBv0.d.ts} +26 -5
- package/build/{elements/panel/index.d.cts → index-NzGpn7ai.d.cts} +6 -3
- package/build/{elements/panel/index.d.ts → index-NzGpn7ai.d.ts} +6 -3
- package/build/{elements/state/index.d.ts → index-qZoNKsHn.d.cts} +46 -5
- package/build/{elements/state/index.d.cts → index-qZoNKsHn.d.ts} +46 -5
- package/build/index.cjs +38651 -38
- package/build/index.cjs.map +1 -0
- package/build/index.d.cts +85 -6
- package/build/index.d.ts +85 -6
- package/build/index.js +38535 -12
- package/build/index.js.map +1 -0
- package/build/init-B7gNNyTd.d.ts +235 -0
- package/build/init-DwVGVxkx.d.cts +235 -0
- package/build/jsx.cjs +31 -0
- package/build/jsx.cjs.map +1 -0
- package/build/jsx.d.cts +317 -0
- package/build/jsx.d.ts +317 -0
- package/build/jsx.js +6 -0
- package/build/jsx.js.map +1 -0
- package/build/outside-click-rZ3Di_WX.d.cts +16 -0
- package/build/outside-click-rZ3Di_WX.d.ts +16 -0
- package/build/react.cjs +37827 -0
- package/build/react.cjs.map +1 -0
- package/build/react.d.cts +356 -0
- package/build/react.d.ts +356 -0
- package/build/react.js +37802 -0
- package/build/react.js.map +1 -0
- package/build/register.cjs +35832 -36
- package/build/register.cjs.map +1 -0
- package/build/register.d.cts +4 -33
- package/build/register.d.ts +4 -33
- package/build/register.js +35831 -35
- package/build/register.js.map +1 -0
- package/build/register.server.cjs +19 -0
- package/build/register.server.cjs.map +1 -0
- package/build/register.server.d.cts +2 -0
- package/build/register.server.d.ts +2 -0
- package/build/register.server.js +1 -0
- package/build/register.server.js.map +1 -0
- package/build/registry-9GX9KTG1.d.cts +264 -0
- package/build/registry-9GX9KTG1.d.ts +264 -0
- package/build/template-helpers-CguLXtLD.d.cts +10 -0
- package/build/template-helpers-CguLXtLD.d.ts +10 -0
- package/build/theme.cjs +746 -0
- package/build/theme.cjs.map +1 -0
- package/build/{theme/index.d.cts → theme.d.cts} +41 -21
- package/build/{theme/index.d.ts → theme.d.ts} +41 -21
- package/build/theme.js +692 -0
- package/build/theme.js.map +1 -0
- package/build/utils.cjs +205 -0
- package/build/utils.cjs.map +1 -0
- package/build/utils.d.cts +26 -0
- package/build/utils.d.ts +26 -0
- package/build/utils.js +167 -0
- package/build/utils.js.map +1 -0
- package/package.json +47 -33
- package/build/components/code/index.cjs +0 -152
- package/build/components/code/index.d.cts +0 -11
- package/build/components/code/index.d.ts +0 -11
- package/build/components/code/index.js +0 -148
- package/build/components/code/utils/highlight-api.cjs +0 -18
- package/build/components/code/utils/highlight-api.d.cts +0 -7
- package/build/components/code/utils/highlight-api.d.ts +0 -7
- package/build/components/code/utils/highlight-api.js +0 -14
- package/build/components/code/utils/syntax-grammars.cjs +0 -62
- package/build/components/code/utils/syntax-grammars.d.cts +0 -7
- package/build/components/code/utils/syntax-grammars.d.ts +0 -7
- package/build/components/code/utils/syntax-grammars.js +0 -59
- package/build/components/code/utils/syntax-highlighter-theme.cjs +0 -27
- package/build/components/code/utils/syntax-highlighter-theme.d.cts +0 -3
- package/build/components/code/utils/syntax-highlighter-theme.d.ts +0 -3
- package/build/components/code/utils/syntax-highlighter-theme.js +0 -23
- package/build/components/code/utils/syntax-highlighter-types.cjs +0 -2
- package/build/components/code/utils/syntax-highlighter-types.d.cts +0 -12
- package/build/components/code/utils/syntax-highlighter-types.d.ts +0 -12
- package/build/components/code/utils/syntax-highlighter-types.js +0 -1
- package/build/components/code/utils/syntax-tokenizer.cjs +0 -63
- package/build/components/code/utils/syntax-tokenizer.d.cts +0 -3
- package/build/components/code/utils/syntax-tokenizer.d.ts +0 -3
- package/build/components/code/utils/syntax-tokenizer.js +0 -58
- package/build/components/curve/bezier-conversion.cjs +0 -23
- package/build/components/curve/bezier-conversion.d.cts +0 -2
- package/build/components/curve/bezier-conversion.d.ts +0 -2
- package/build/components/curve/bezier-conversion.js +0 -19
- package/build/components/curve/canvas-controls.cjs +0 -300
- package/build/components/curve/canvas-controls.d.cts +0 -12
- package/build/components/curve/canvas-controls.d.ts +0 -12
- package/build/components/curve/canvas-controls.js +0 -296
- package/build/components/curve/canvas.cjs +0 -1208
- package/build/components/curve/canvas.d.cts +0 -24
- package/build/components/curve/canvas.d.ts +0 -24
- package/build/components/curve/canvas.js +0 -1204
- package/build/components/curve/constants.cjs +0 -203
- package/build/components/curve/constants.d.cts +0 -23
- package/build/components/curve/constants.d.ts +0 -23
- package/build/components/curve/constants.js +0 -200
- package/build/components/curve/controls.cjs +0 -942
- package/build/components/curve/controls.d.cts +0 -37
- package/build/components/curve/controls.d.ts +0 -37
- package/build/components/curve/controls.js +0 -938
- package/build/components/curve/index.cjs +0 -335
- package/build/components/curve/index.d.cts +0 -31
- package/build/components/curve/index.d.ts +0 -31
- package/build/components/curve/index.js +0 -330
- package/build/components/curve/output.cjs +0 -141
- package/build/components/curve/output.d.cts +0 -19
- package/build/components/curve/output.d.ts +0 -19
- package/build/components/curve/output.js +0 -137
- package/build/components/curve/styles.cjs +0 -493
- package/build/components/curve/styles.d.cts +0 -6
- package/build/components/curve/styles.d.ts +0 -6
- package/build/components/curve/styles.js +0 -490
- package/build/components/curve/svg-renderer.cjs +0 -185
- package/build/components/curve/svg-renderer.d.cts +0 -9
- package/build/components/curve/svg-renderer.d.ts +0 -9
- package/build/components/curve/svg-renderer.js +0 -175
- package/build/components/curve/toolbar.cjs +0 -368
- package/build/components/curve/toolbar.d.cts +0 -26
- package/build/components/curve/toolbar.d.ts +0 -26
- package/build/components/curve/toolbar.js +0 -364
- package/build/components/curve/types.cjs +0 -10
- package/build/components/curve/types.d.cts +0 -33
- package/build/components/curve/types.d.ts +0 -33
- package/build/components/curve/types.js +0 -7
- package/build/components/curve/utils.cjs +0 -541
- package/build/components/curve/utils.d.cts +0 -33
- package/build/components/curve/utils.d.ts +0 -33
- package/build/components/curve/utils.js +0 -521
- package/build/components/index.cjs +0 -18
- package/build/components/index.d.cts +0 -2
- package/build/components/index.d.ts +0 -2
- package/build/components/index.js +0 -2
- package/build/decorators/Component.cjs +0 -127
- package/build/decorators/Component.d.cts +0 -28
- package/build/decorators/Component.d.ts +0 -28
- package/build/decorators/Component.js +0 -123
- package/build/decorators/Listen.cjs +0 -154
- package/build/decorators/Listen.d.cts +0 -18
- package/build/decorators/Listen.d.ts +0 -18
- package/build/decorators/Listen.js +0 -151
- package/build/decorators/OutsideClick.cjs +0 -64
- package/build/decorators/OutsideClick.d.cts +0 -16
- package/build/decorators/OutsideClick.d.ts +0 -16
- package/build/decorators/OutsideClick.js +0 -59
- package/build/decorators/Prop.cjs +0 -273
- package/build/decorators/Prop.d.cts +0 -22
- package/build/decorators/Prop.d.ts +0 -22
- package/build/decorators/Prop.js +0 -270
- package/build/decorators/Query.cjs +0 -79
- package/build/decorators/Query.d.cts +0 -27
- package/build/decorators/Query.d.ts +0 -27
- package/build/decorators/Query.js +0 -76
- package/build/decorators/Watch.cjs +0 -52
- package/build/decorators/Watch.d.cts +0 -11
- package/build/decorators/Watch.d.ts +0 -11
- package/build/decorators/Watch.js +0 -49
- package/build/decorators/index.cjs +0 -15
- package/build/decorators/index.d.cts +0 -6
- package/build/decorators/index.d.ts +0 -6
- package/build/decorators/index.js +0 -6
- package/build/elements/button/index.cjs +0 -214
- package/build/elements/button/index.d.cts +0 -11
- package/build/elements/button/index.d.ts +0 -11
- package/build/elements/button/index.js +0 -210
- package/build/elements/checkbox/index.cjs +0 -316
- package/build/elements/checkbox/index.d.cts +0 -14
- package/build/elements/checkbox/index.d.ts +0 -14
- package/build/elements/checkbox/index.js +0 -312
- package/build/elements/color/index.cjs +0 -154
- package/build/elements/color/index.d.cts +0 -18
- package/build/elements/color/index.d.ts +0 -18
- package/build/elements/color/index.js +0 -150
- package/build/elements/color/picker.cjs +0 -544
- package/build/elements/color/picker.d.cts +0 -37
- package/build/elements/color/picker.d.ts +0 -37
- package/build/elements/color/picker.js +0 -540
- package/build/elements/color/utils.cjs +0 -235
- package/build/elements/color/utils.d.cts +0 -37
- package/build/elements/color/utils.d.ts +0 -37
- package/build/elements/color/utils.js +0 -218
- package/build/elements/dropdown/index.cjs +0 -875
- package/build/elements/dropdown/index.d.cts +0 -30
- package/build/elements/dropdown/index.d.ts +0 -30
- package/build/elements/dropdown/index.js +0 -871
- package/build/elements/field/index.cjs +0 -82
- package/build/elements/field/index.d.cts +0 -4
- package/build/elements/field/index.d.ts +0 -4
- package/build/elements/field/index.js +0 -78
- package/build/elements/icons/animation/chevron.cjs +0 -57
- package/build/elements/icons/animation/chevron.d.cts +0 -10
- package/build/elements/icons/animation/chevron.d.ts +0 -10
- package/build/elements/icons/animation/chevron.js +0 -53
- package/build/elements/icons/animation/clear.cjs +0 -74
- package/build/elements/icons/animation/clear.d.cts +0 -3
- package/build/elements/icons/animation/clear.d.ts +0 -3
- package/build/elements/icons/animation/clear.js +0 -70
- package/build/elements/icons/animation/grid.cjs +0 -77
- package/build/elements/icons/animation/grid.d.cts +0 -8
- package/build/elements/icons/animation/grid.d.ts +0 -8
- package/build/elements/icons/animation/grid.js +0 -73
- package/build/elements/icons/animation/loading.cjs +0 -68
- package/build/elements/icons/animation/loading.d.cts +0 -3
- package/build/elements/icons/animation/loading.d.ts +0 -3
- package/build/elements/icons/animation/loading.js +0 -64
- package/build/elements/icons/animation/snap.cjs +0 -133
- package/build/elements/icons/animation/snap.d.cts +0 -8
- package/build/elements/icons/animation/snap.d.ts +0 -8
- package/build/elements/icons/animation/snap.js +0 -129
- package/build/elements/icons/index.cjs +0 -40
- package/build/elements/icons/index.d.cts +0 -24
- package/build/elements/icons/index.d.ts +0 -24
- package/build/elements/icons/index.js +0 -24
- package/build/elements/icons/interface/anchor-add.cjs +0 -35
- package/build/elements/icons/interface/anchor-add.d.cts +0 -3
- package/build/elements/icons/interface/anchor-add.d.ts +0 -3
- package/build/elements/icons/interface/anchor-add.js +0 -31
- package/build/elements/icons/interface/anchor-remove.cjs +0 -34
- package/build/elements/icons/interface/anchor-remove.d.cts +0 -3
- package/build/elements/icons/interface/anchor-remove.d.ts +0 -3
- package/build/elements/icons/interface/anchor-remove.js +0 -30
- package/build/elements/icons/interface/arrow-up.cjs +0 -30
- package/build/elements/icons/interface/arrow-up.d.cts +0 -3
- package/build/elements/icons/interface/arrow-up.d.ts +0 -3
- package/build/elements/icons/interface/arrow-up.js +0 -26
- package/build/elements/icons/interface/arrows-vertical.cjs +0 -30
- package/build/elements/icons/interface/arrows-vertical.d.cts +0 -3
- package/build/elements/icons/interface/arrows-vertical.d.ts +0 -3
- package/build/elements/icons/interface/arrows-vertical.js +0 -26
- package/build/elements/icons/interface/bezier-angle.cjs +0 -33
- package/build/elements/icons/interface/bezier-angle.d.cts +0 -3
- package/build/elements/icons/interface/bezier-angle.d.ts +0 -3
- package/build/elements/icons/interface/bezier-angle.js +0 -29
- package/build/elements/icons/interface/bezier-distribute.cjs +0 -34
- package/build/elements/icons/interface/bezier-distribute.d.cts +0 -3
- package/build/elements/icons/interface/bezier-distribute.d.ts +0 -3
- package/build/elements/icons/interface/bezier-distribute.js +0 -30
- package/build/elements/icons/interface/bezier-length.cjs +0 -31
- package/build/elements/icons/interface/bezier-length.d.cts +0 -3
- package/build/elements/icons/interface/bezier-length.d.ts +0 -3
- package/build/elements/icons/interface/bezier-length.js +0 -27
- package/build/elements/icons/interface/bezier-mirror.cjs +0 -31
- package/build/elements/icons/interface/bezier-mirror.d.cts +0 -3
- package/build/elements/icons/interface/bezier-mirror.d.ts +0 -3
- package/build/elements/icons/interface/bezier-mirror.js +0 -27
- package/build/elements/icons/interface/bezier.cjs +0 -26
- package/build/elements/icons/interface/bezier.d.cts +0 -3
- package/build/elements/icons/interface/bezier.d.ts +0 -3
- package/build/elements/icons/interface/bezier.js +0 -22
- package/build/elements/icons/interface/check.cjs +0 -30
- package/build/elements/icons/interface/check.d.cts +0 -3
- package/build/elements/icons/interface/check.d.ts +0 -3
- package/build/elements/icons/interface/check.js +0 -26
- package/build/elements/icons/interface/circle-arrow-left.cjs +0 -30
- package/build/elements/icons/interface/circle-arrow-left.d.cts +0 -3
- package/build/elements/icons/interface/circle-arrow-left.d.ts +0 -3
- package/build/elements/icons/interface/circle-arrow-left.js +0 -26
- package/build/elements/icons/interface/circle-arrow-right.cjs +0 -30
- package/build/elements/icons/interface/circle-arrow-right.d.cts +0 -3
- package/build/elements/icons/interface/circle-arrow-right.d.ts +0 -3
- package/build/elements/icons/interface/circle-arrow-right.js +0 -26
- package/build/elements/icons/interface/code.cjs +0 -30
- package/build/elements/icons/interface/code.d.cts +0 -3
- package/build/elements/icons/interface/code.d.ts +0 -3
- package/build/elements/icons/interface/code.js +0 -26
- package/build/elements/icons/interface/dots.cjs +0 -32
- package/build/elements/icons/interface/dots.d.cts +0 -3
- package/build/elements/icons/interface/dots.d.ts +0 -3
- package/build/elements/icons/interface/dots.js +0 -28
- package/build/elements/icons/interface/mention.cjs +0 -30
- package/build/elements/icons/interface/mention.d.cts +0 -3
- package/build/elements/icons/interface/mention.d.ts +0 -3
- package/build/elements/icons/interface/mention.js +0 -26
- package/build/elements/icons/interface/minus.cjs +0 -30
- package/build/elements/icons/interface/minus.d.cts +0 -3
- package/build/elements/icons/interface/minus.d.ts +0 -3
- package/build/elements/icons/interface/minus.js +0 -26
- package/build/elements/icons/interface/picker.cjs +0 -34
- package/build/elements/icons/interface/picker.d.cts +0 -3
- package/build/elements/icons/interface/picker.d.ts +0 -3
- package/build/elements/icons/interface/picker.js +0 -30
- package/build/elements/icons/interface/plus.cjs +0 -30
- package/build/elements/icons/interface/plus.d.cts +0 -3
- package/build/elements/icons/interface/plus.d.ts +0 -3
- package/build/elements/icons/interface/plus.js +0 -26
- package/build/elements/icons/interface/settings.cjs +0 -30
- package/build/elements/icons/interface/settings.d.cts +0 -3
- package/build/elements/icons/interface/settings.d.ts +0 -3
- package/build/elements/icons/interface/settings.js +0 -26
- package/build/elements/index.cjs +0 -65
- package/build/elements/index.d.cts +0 -23
- package/build/elements/index.d.ts +0 -23
- package/build/elements/index.js +0 -23
- package/build/elements/input/index.cjs +0 -273
- package/build/elements/input/index.d.cts +0 -17
- package/build/elements/input/index.d.ts +0 -17
- package/build/elements/input/index.js +0 -269
- package/build/elements/logo/index.cjs +0 -732
- package/build/elements/logo/index.d.cts +0 -17
- package/build/elements/logo/index.d.ts +0 -17
- package/build/elements/logo/index.js +0 -728
- package/build/elements/monitor/fps.cjs +0 -432
- package/build/elements/monitor/fps.d.cts +0 -21
- package/build/elements/monitor/fps.d.ts +0 -21
- package/build/elements/monitor/fps.js +0 -428
- package/build/elements/monitor/index.cjs +0 -670
- package/build/elements/monitor/index.js +0 -666
- package/build/elements/number/index.cjs +0 -173
- package/build/elements/number/index.d.cts +0 -19
- package/build/elements/number/index.d.ts +0 -19
- package/build/elements/number/index.js +0 -169
- package/build/elements/origin/index.cjs +0 -169
- package/build/elements/origin/index.d.cts +0 -12
- package/build/elements/origin/index.d.ts +0 -12
- package/build/elements/origin/index.js +0 -165
- package/build/elements/panel/index.cjs +0 -496
- package/build/elements/panel/index.js +0 -492
- package/build/elements/popover/index.cjs +0 -209
- package/build/elements/popover/index.d.cts +0 -19
- package/build/elements/popover/index.d.ts +0 -19
- package/build/elements/popover/index.js +0 -205
- package/build/elements/radio/index.cjs +0 -301
- package/build/elements/radio/index.d.cts +0 -13
- package/build/elements/radio/index.d.ts +0 -13
- package/build/elements/radio/index.js +0 -283
- package/build/elements/radio/input.cjs +0 -329
- package/build/elements/radio/input.d.cts +0 -15
- package/build/elements/radio/input.d.ts +0 -15
- package/build/elements/radio/input.js +0 -325
- package/build/elements/radio/option.cjs +0 -15
- package/build/elements/radio/option.d.cts +0 -3
- package/build/elements/radio/option.d.ts +0 -3
- package/build/elements/radio/option.js +0 -11
- package/build/elements/shared.cjs +0 -66
- package/build/elements/shared.d.cts +0 -40
- package/build/elements/shared.d.ts +0 -40
- package/build/elements/shared.js +0 -59
- package/build/elements/slider/index.cjs +0 -232
- package/build/elements/slider/index.d.cts +0 -20
- package/build/elements/slider/index.d.ts +0 -20
- package/build/elements/slider/index.js +0 -228
- package/build/elements/state/index.cjs +0 -274
- package/build/elements/state/index.js +0 -270
- package/build/elements/toggle/index.cjs +0 -151
- package/build/elements/toggle/index.d.cts +0 -9
- package/build/elements/toggle/index.d.ts +0 -9
- package/build/elements/toggle/index.js +0 -147
- package/build/elements/tooltip/index.cjs +0 -187
- package/build/elements/tooltip/index.d.cts +0 -17
- package/build/elements/tooltip/index.d.ts +0 -17
- package/build/elements/tooltip/index.js +0 -183
- package/build/init.cjs +0 -325
- package/build/init.d.cts +0 -157
- package/build/init.d.ts +0 -157
- package/build/init.js +0 -289
- package/build/internal/component-loaders.cjs +0 -208
- package/build/internal/component-loaders.d.cts +0 -52
- package/build/internal/component-loaders.d.ts +0 -52
- package/build/internal/component-loaders.js +0 -169
- package/build/internal/fonts.cjs +0 -128
- package/build/internal/fonts.d.cts +0 -32
- package/build/internal/fonts.d.ts +0 -32
- package/build/internal/fonts.js +0 -123
- package/build/internal/lazy-load.cjs +0 -89
- package/build/internal/lazy-load.d.cts +0 -32
- package/build/internal/lazy-load.d.ts +0 -32
- package/build/internal/lazy-load.js +0 -86
- package/build/internal/style-inject.cjs +0 -236
- package/build/internal/style-inject.d.cts +0 -44
- package/build/internal/style-inject.d.ts +0 -44
- package/build/internal/style-inject.js +0 -226
- package/build/react/events.cjs +0 -25
- package/build/react/events.d.cts +0 -39
- package/build/react/events.d.ts +0 -39
- package/build/react/events.js +0 -22
- package/build/react/index.cjs +0 -19
- package/build/react/index.d.cts +0 -13
- package/build/react/index.d.ts +0 -13
- package/build/react/index.js +0 -12
- package/build/react/provider.cjs +0 -134
- package/build/react/provider.d.cts +0 -81
- package/build/react/provider.d.ts +0 -81
- package/build/react/provider.js +0 -98
- package/build/react/types.cjs +0 -8
- package/build/react/types.d.cts +0 -55
- package/build/react/types.d.ts +0 -55
- package/build/react/types.js +0 -7
- package/build/react/use-ease-state.cjs +0 -129
- package/build/react/use-ease-state.d.cts +0 -95
- package/build/react/use-ease-state.d.ts +0 -95
- package/build/react/use-ease-state.js +0 -126
- package/build/react/use-web-kit.cjs +0 -150
- package/build/react/use-web-kit.d.cts +0 -80
- package/build/react/use-web-kit.d.ts +0 -80
- package/build/react/use-web-kit.js +0 -114
- package/build/theme/index.cjs +0 -452
- package/build/theme/index.js +0 -423
- package/build/theme/presets.cjs +0 -54
- package/build/theme/presets.d.cts +0 -19
- package/build/theme/presets.d.ts +0 -19
- package/build/theme/presets.js +0 -51
- package/build/theme/registry.cjs +0 -204
- package/build/theme/registry.d.cts +0 -99
- package/build/theme/registry.d.ts +0 -99
- package/build/theme/registry.js +0 -194
- package/build/theme/tokens.cjs +0 -148
- package/build/theme/tokens.d.cts +0 -163
- package/build/theme/tokens.d.ts +0 -163
- package/build/theme/tokens.js +0 -145
- package/build/utils/dismiss-controller.cjs +0 -77
- package/build/utils/dismiss-controller.d.cts +0 -14
- package/build/utils/dismiss-controller.d.ts +0 -14
- package/build/utils/dismiss-controller.js +0 -73
- package/build/utils/index.cjs +0 -18
- package/build/utils/index.d.cts +0 -3
- package/build/utils/index.d.ts +0 -3
- package/build/utils/index.js +0 -3
- package/build/utils/outside-click.cjs +0 -82
- package/build/utils/outside-click.d.cts +0 -18
- package/build/utils/outside-click.d.ts +0 -18
- package/build/utils/outside-click.js +0 -74
- package/build/utils/template-helpers.cjs +0 -39
- package/build/utils/template-helpers.d.cts +0 -13
- package/build/utils/template-helpers.d.ts +0 -13
- package/build/utils/template-helpers.js +0 -28
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* React hook for working with ease-state component
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useEaseState = useEaseState;
|
|
7
|
-
/**
|
|
8
|
-
* React hook for working with ease-state components.
|
|
9
|
-
*
|
|
10
|
-
* Provides a reactive state object and methods for interacting
|
|
11
|
-
* with the ease-state web component.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* ```tsx
|
|
15
|
-
* import { useState, useCallback, useRef } from '../react';
|
|
16
|
-
* import { useEaseState } from '@easemate/web-kit/react';
|
|
17
|
-
*
|
|
18
|
-
* function AnimationControls() {
|
|
19
|
-
* const {
|
|
20
|
-
* stateRef,
|
|
21
|
-
* panelRef,
|
|
22
|
-
* state,
|
|
23
|
-
* set,
|
|
24
|
-
* reset
|
|
25
|
-
* } = useEaseState<{ duration: number; easing: string; loop: boolean }>(
|
|
26
|
-
* {
|
|
27
|
-
* onChange: ({ name, value }) => {
|
|
28
|
-
* console.log(`${name} changed to ${value}`);
|
|
29
|
-
* }
|
|
30
|
-
* },
|
|
31
|
-
* { useState, useCallback, useRef }
|
|
32
|
-
* );
|
|
33
|
-
*
|
|
34
|
-
* return (
|
|
35
|
-
* <ease-panel ref={panelRef}>
|
|
36
|
-
* <span slot="headline">Animation</span>
|
|
37
|
-
* <ease-state ref={stateRef}>
|
|
38
|
-
* <ease-field label="Duration">
|
|
39
|
-
* <ease-slider name="duration" value="1" min="0" max="5" />
|
|
40
|
-
* </ease-field>
|
|
41
|
-
* </ease-state>
|
|
42
|
-
* </ease-panel>
|
|
43
|
-
* );
|
|
44
|
-
* }
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
47
|
-
function useEaseState(options, hooks) {
|
|
48
|
-
const { useState, useCallback, useRef } = hooks;
|
|
49
|
-
const { initialState, onChange, onTabChange } = options;
|
|
50
|
-
const stateElementRef = useRef(null);
|
|
51
|
-
const panelElementRef = useRef(null);
|
|
52
|
-
const [state, setState] = useState((initialState ?? {}));
|
|
53
|
-
const [activeTab, setActiveTab] = useState(0);
|
|
54
|
-
// Handle state changes
|
|
55
|
-
const handleStateChange = useCallback((e) => {
|
|
56
|
-
const customEvent = e;
|
|
57
|
-
const { name, value } = customEvent.detail;
|
|
58
|
-
setState((prev) => {
|
|
59
|
-
return { ...prev, [name]: value };
|
|
60
|
-
});
|
|
61
|
-
onChange?.(customEvent.detail);
|
|
62
|
-
}, [onChange]);
|
|
63
|
-
// Handle tab changes
|
|
64
|
-
const handleTabChange = useCallback((e) => {
|
|
65
|
-
const customEvent = e;
|
|
66
|
-
setActiveTab(customEvent.detail.index);
|
|
67
|
-
onTabChange?.(customEvent.detail);
|
|
68
|
-
}, [onTabChange]);
|
|
69
|
-
// Ref callback for the ease-state element
|
|
70
|
-
const stateRef = useCallback((element) => {
|
|
71
|
-
// Cleanup previous element
|
|
72
|
-
if (stateElementRef.current) {
|
|
73
|
-
stateElementRef.current.removeEventListener('state-change', handleStateChange);
|
|
74
|
-
}
|
|
75
|
-
stateElementRef.current = element;
|
|
76
|
-
if (element) {
|
|
77
|
-
// Add event listeners
|
|
78
|
-
element.addEventListener('state-change', handleStateChange);
|
|
79
|
-
// Set initial state values
|
|
80
|
-
if (initialState) {
|
|
81
|
-
for (const [name, value] of Object.entries(initialState)) {
|
|
82
|
-
element.set(name, value);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
// Sync current state from element
|
|
86
|
-
const currentState = element.state;
|
|
87
|
-
if (Object.keys(currentState).length > 0) {
|
|
88
|
-
setState(currentState);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
}, [handleStateChange, initialState]);
|
|
92
|
-
// Ref callback for the ease-panel element
|
|
93
|
-
const panelRef = useCallback((element) => {
|
|
94
|
-
// Cleanup previous element
|
|
95
|
-
if (panelElementRef.current) {
|
|
96
|
-
panelElementRef.current.removeEventListener('tab-change', handleTabChange);
|
|
97
|
-
}
|
|
98
|
-
panelElementRef.current = element;
|
|
99
|
-
if (element) {
|
|
100
|
-
// Add event listeners
|
|
101
|
-
element.addEventListener('tab-change', handleTabChange);
|
|
102
|
-
setActiveTab(element.activeTab);
|
|
103
|
-
}
|
|
104
|
-
}, [handleTabChange]);
|
|
105
|
-
// Get a specific value
|
|
106
|
-
const get = useCallback((name) => state[name], [state]);
|
|
107
|
-
// Set a specific value
|
|
108
|
-
const set = useCallback((name, value) => {
|
|
109
|
-
stateElementRef.current?.set(name, value);
|
|
110
|
-
}, []);
|
|
111
|
-
// Reset all values
|
|
112
|
-
const reset = useCallback(() => {
|
|
113
|
-
stateElementRef.current?.reset();
|
|
114
|
-
}, []);
|
|
115
|
-
// Set active tab
|
|
116
|
-
const setTab = useCallback((index) => {
|
|
117
|
-
panelElementRef.current?.setTab(index);
|
|
118
|
-
}, []);
|
|
119
|
-
return {
|
|
120
|
-
stateRef,
|
|
121
|
-
panelRef,
|
|
122
|
-
state,
|
|
123
|
-
get,
|
|
124
|
-
set,
|
|
125
|
-
reset,
|
|
126
|
-
setTab,
|
|
127
|
-
activeTab
|
|
128
|
-
};
|
|
129
|
-
}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* React hook for working with ease-state component
|
|
3
|
-
*/
|
|
4
|
-
import type { EasePanelRef, EaseStateRef, StateChangeEventDetail, TabChangeEventDetail } from "./types.cjs";
|
|
5
|
-
/**
|
|
6
|
-
* Options for useEaseState hook
|
|
7
|
-
*/
|
|
8
|
-
export interface UseEaseStateOptions {
|
|
9
|
-
/**
|
|
10
|
-
* Initial state values to set when the component mounts
|
|
11
|
-
*/
|
|
12
|
-
initialState?: Record<string, unknown>;
|
|
13
|
-
/**
|
|
14
|
-
* Callback fired when any control value changes
|
|
15
|
-
*/
|
|
16
|
-
onChange?: (detail: StateChangeEventDetail) => void;
|
|
17
|
-
/**
|
|
18
|
-
* Callback fired when the active tab changes (requires ease-panel)
|
|
19
|
-
*/
|
|
20
|
-
onTabChange?: (detail: TabChangeEventDetail) => void;
|
|
21
|
-
}
|
|
22
|
-
type AnyFunction = (...args: any[]) => any;
|
|
23
|
-
/**
|
|
24
|
-
* React hooks interface - compatible with React's hook signatures
|
|
25
|
-
*/
|
|
26
|
-
export interface ReactHooksLike {
|
|
27
|
-
useState: <S>(initial: S) => [S, (value: S | ((prev: S) => S)) => void];
|
|
28
|
-
useCallback: <F extends AnyFunction>(callback: F, deps: unknown[]) => F;
|
|
29
|
-
useRef: <R>(initial: R) => {
|
|
30
|
-
current: R;
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Return type for useEaseState hook
|
|
35
|
-
*/
|
|
36
|
-
export interface UseEaseStateReturn<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
37
|
-
/** Ref callback to attach to the ease-state element */
|
|
38
|
-
stateRef: (element: EaseStateRef | null) => void;
|
|
39
|
-
/** Ref callback to attach to the ease-panel element (optional) */
|
|
40
|
-
panelRef: (element: EasePanelRef | null) => void;
|
|
41
|
-
/** Current state values (reactive) */
|
|
42
|
-
state: T;
|
|
43
|
-
/** Get a specific control value */
|
|
44
|
-
get: <K extends keyof T>(name: K) => T[K] | undefined;
|
|
45
|
-
/** Set a specific control value */
|
|
46
|
-
set: <K extends keyof T>(name: K, value: T[K]) => void;
|
|
47
|
-
/** Reset all controls to initial values */
|
|
48
|
-
reset: () => void;
|
|
49
|
-
/** Switch to a specific tab (requires ease-panel) */
|
|
50
|
-
setTab: (index: number) => void;
|
|
51
|
-
/** Current active tab index (requires ease-panel) */
|
|
52
|
-
activeTab: number;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* React hook for working with ease-state components.
|
|
56
|
-
*
|
|
57
|
-
* Provides a reactive state object and methods for interacting
|
|
58
|
-
* with the ease-state web component.
|
|
59
|
-
*
|
|
60
|
-
* @example
|
|
61
|
-
* ```tsx
|
|
62
|
-
* import { useState, useCallback, useRef } from '../react';
|
|
63
|
-
* import { useEaseState } from '@easemate/web-kit/react';
|
|
64
|
-
*
|
|
65
|
-
* function AnimationControls() {
|
|
66
|
-
* const {
|
|
67
|
-
* stateRef,
|
|
68
|
-
* panelRef,
|
|
69
|
-
* state,
|
|
70
|
-
* set,
|
|
71
|
-
* reset
|
|
72
|
-
* } = useEaseState<{ duration: number; easing: string; loop: boolean }>(
|
|
73
|
-
* {
|
|
74
|
-
* onChange: ({ name, value }) => {
|
|
75
|
-
* console.log(`${name} changed to ${value}`);
|
|
76
|
-
* }
|
|
77
|
-
* },
|
|
78
|
-
* { useState, useCallback, useRef }
|
|
79
|
-
* );
|
|
80
|
-
*
|
|
81
|
-
* return (
|
|
82
|
-
* <ease-panel ref={panelRef}>
|
|
83
|
-
* <span slot="headline">Animation</span>
|
|
84
|
-
* <ease-state ref={stateRef}>
|
|
85
|
-
* <ease-field label="Duration">
|
|
86
|
-
* <ease-slider name="duration" value="1" min="0" max="5" />
|
|
87
|
-
* </ease-field>
|
|
88
|
-
* </ease-state>
|
|
89
|
-
* </ease-panel>
|
|
90
|
-
* );
|
|
91
|
-
* }
|
|
92
|
-
* ```
|
|
93
|
-
*/
|
|
94
|
-
export declare function useEaseState<T extends Record<string, unknown> = Record<string, unknown>>(options: UseEaseStateOptions, hooks: ReactHooksLike): UseEaseStateReturn<T>;
|
|
95
|
-
export {};
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* React hook for working with ease-state component
|
|
3
|
-
*/
|
|
4
|
-
import type { EasePanelRef, EaseStateRef, StateChangeEventDetail, TabChangeEventDetail } from "./types.js";
|
|
5
|
-
/**
|
|
6
|
-
* Options for useEaseState hook
|
|
7
|
-
*/
|
|
8
|
-
export interface UseEaseStateOptions {
|
|
9
|
-
/**
|
|
10
|
-
* Initial state values to set when the component mounts
|
|
11
|
-
*/
|
|
12
|
-
initialState?: Record<string, unknown>;
|
|
13
|
-
/**
|
|
14
|
-
* Callback fired when any control value changes
|
|
15
|
-
*/
|
|
16
|
-
onChange?: (detail: StateChangeEventDetail) => void;
|
|
17
|
-
/**
|
|
18
|
-
* Callback fired when the active tab changes (requires ease-panel)
|
|
19
|
-
*/
|
|
20
|
-
onTabChange?: (detail: TabChangeEventDetail) => void;
|
|
21
|
-
}
|
|
22
|
-
type AnyFunction = (...args: any[]) => any;
|
|
23
|
-
/**
|
|
24
|
-
* React hooks interface - compatible with React's hook signatures
|
|
25
|
-
*/
|
|
26
|
-
export interface ReactHooksLike {
|
|
27
|
-
useState: <S>(initial: S) => [S, (value: S | ((prev: S) => S)) => void];
|
|
28
|
-
useCallback: <F extends AnyFunction>(callback: F, deps: unknown[]) => F;
|
|
29
|
-
useRef: <R>(initial: R) => {
|
|
30
|
-
current: R;
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Return type for useEaseState hook
|
|
35
|
-
*/
|
|
36
|
-
export interface UseEaseStateReturn<T extends Record<string, unknown> = Record<string, unknown>> {
|
|
37
|
-
/** Ref callback to attach to the ease-state element */
|
|
38
|
-
stateRef: (element: EaseStateRef | null) => void;
|
|
39
|
-
/** Ref callback to attach to the ease-panel element (optional) */
|
|
40
|
-
panelRef: (element: EasePanelRef | null) => void;
|
|
41
|
-
/** Current state values (reactive) */
|
|
42
|
-
state: T;
|
|
43
|
-
/** Get a specific control value */
|
|
44
|
-
get: <K extends keyof T>(name: K) => T[K] | undefined;
|
|
45
|
-
/** Set a specific control value */
|
|
46
|
-
set: <K extends keyof T>(name: K, value: T[K]) => void;
|
|
47
|
-
/** Reset all controls to initial values */
|
|
48
|
-
reset: () => void;
|
|
49
|
-
/** Switch to a specific tab (requires ease-panel) */
|
|
50
|
-
setTab: (index: number) => void;
|
|
51
|
-
/** Current active tab index (requires ease-panel) */
|
|
52
|
-
activeTab: number;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* React hook for working with ease-state components.
|
|
56
|
-
*
|
|
57
|
-
* Provides a reactive state object and methods for interacting
|
|
58
|
-
* with the ease-state web component.
|
|
59
|
-
*
|
|
60
|
-
* @example
|
|
61
|
-
* ```tsx
|
|
62
|
-
* import { useState, useCallback, useRef } from '../react';
|
|
63
|
-
* import { useEaseState } from '@easemate/web-kit/react';
|
|
64
|
-
*
|
|
65
|
-
* function AnimationControls() {
|
|
66
|
-
* const {
|
|
67
|
-
* stateRef,
|
|
68
|
-
* panelRef,
|
|
69
|
-
* state,
|
|
70
|
-
* set,
|
|
71
|
-
* reset
|
|
72
|
-
* } = useEaseState<{ duration: number; easing: string; loop: boolean }>(
|
|
73
|
-
* {
|
|
74
|
-
* onChange: ({ name, value }) => {
|
|
75
|
-
* console.log(`${name} changed to ${value}`);
|
|
76
|
-
* }
|
|
77
|
-
* },
|
|
78
|
-
* { useState, useCallback, useRef }
|
|
79
|
-
* );
|
|
80
|
-
*
|
|
81
|
-
* return (
|
|
82
|
-
* <ease-panel ref={panelRef}>
|
|
83
|
-
* <span slot="headline">Animation</span>
|
|
84
|
-
* <ease-state ref={stateRef}>
|
|
85
|
-
* <ease-field label="Duration">
|
|
86
|
-
* <ease-slider name="duration" value="1" min="0" max="5" />
|
|
87
|
-
* </ease-field>
|
|
88
|
-
* </ease-state>
|
|
89
|
-
* </ease-panel>
|
|
90
|
-
* );
|
|
91
|
-
* }
|
|
92
|
-
* ```
|
|
93
|
-
*/
|
|
94
|
-
export declare function useEaseState<T extends Record<string, unknown> = Record<string, unknown>>(options: UseEaseStateOptions, hooks: ReactHooksLike): UseEaseStateReturn<T>;
|
|
95
|
-
export {};
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* React hook for working with ease-state component
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* React hook for working with ease-state components.
|
|
6
|
-
*
|
|
7
|
-
* Provides a reactive state object and methods for interacting
|
|
8
|
-
* with the ease-state web component.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```tsx
|
|
12
|
-
* import { useState, useCallback, useRef } from '../react';
|
|
13
|
-
* import { useEaseState } from '@easemate/web-kit/react';
|
|
14
|
-
*
|
|
15
|
-
* function AnimationControls() {
|
|
16
|
-
* const {
|
|
17
|
-
* stateRef,
|
|
18
|
-
* panelRef,
|
|
19
|
-
* state,
|
|
20
|
-
* set,
|
|
21
|
-
* reset
|
|
22
|
-
* } = useEaseState<{ duration: number; easing: string; loop: boolean }>(
|
|
23
|
-
* {
|
|
24
|
-
* onChange: ({ name, value }) => {
|
|
25
|
-
* console.log(`${name} changed to ${value}`);
|
|
26
|
-
* }
|
|
27
|
-
* },
|
|
28
|
-
* { useState, useCallback, useRef }
|
|
29
|
-
* );
|
|
30
|
-
*
|
|
31
|
-
* return (
|
|
32
|
-
* <ease-panel ref={panelRef}>
|
|
33
|
-
* <span slot="headline">Animation</span>
|
|
34
|
-
* <ease-state ref={stateRef}>
|
|
35
|
-
* <ease-field label="Duration">
|
|
36
|
-
* <ease-slider name="duration" value="1" min="0" max="5" />
|
|
37
|
-
* </ease-field>
|
|
38
|
-
* </ease-state>
|
|
39
|
-
* </ease-panel>
|
|
40
|
-
* );
|
|
41
|
-
* }
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
|
-
export function useEaseState(options, hooks) {
|
|
45
|
-
const { useState, useCallback, useRef } = hooks;
|
|
46
|
-
const { initialState, onChange, onTabChange } = options;
|
|
47
|
-
const stateElementRef = useRef(null);
|
|
48
|
-
const panelElementRef = useRef(null);
|
|
49
|
-
const [state, setState] = useState((initialState ?? {}));
|
|
50
|
-
const [activeTab, setActiveTab] = useState(0);
|
|
51
|
-
// Handle state changes
|
|
52
|
-
const handleStateChange = useCallback((e) => {
|
|
53
|
-
const customEvent = e;
|
|
54
|
-
const { name, value } = customEvent.detail;
|
|
55
|
-
setState((prev) => {
|
|
56
|
-
return { ...prev, [name]: value };
|
|
57
|
-
});
|
|
58
|
-
onChange?.(customEvent.detail);
|
|
59
|
-
}, [onChange]);
|
|
60
|
-
// Handle tab changes
|
|
61
|
-
const handleTabChange = useCallback((e) => {
|
|
62
|
-
const customEvent = e;
|
|
63
|
-
setActiveTab(customEvent.detail.index);
|
|
64
|
-
onTabChange?.(customEvent.detail);
|
|
65
|
-
}, [onTabChange]);
|
|
66
|
-
// Ref callback for the ease-state element
|
|
67
|
-
const stateRef = useCallback((element) => {
|
|
68
|
-
// Cleanup previous element
|
|
69
|
-
if (stateElementRef.current) {
|
|
70
|
-
stateElementRef.current.removeEventListener('state-change', handleStateChange);
|
|
71
|
-
}
|
|
72
|
-
stateElementRef.current = element;
|
|
73
|
-
if (element) {
|
|
74
|
-
// Add event listeners
|
|
75
|
-
element.addEventListener('state-change', handleStateChange);
|
|
76
|
-
// Set initial state values
|
|
77
|
-
if (initialState) {
|
|
78
|
-
for (const [name, value] of Object.entries(initialState)) {
|
|
79
|
-
element.set(name, value);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
// Sync current state from element
|
|
83
|
-
const currentState = element.state;
|
|
84
|
-
if (Object.keys(currentState).length > 0) {
|
|
85
|
-
setState(currentState);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}, [handleStateChange, initialState]);
|
|
89
|
-
// Ref callback for the ease-panel element
|
|
90
|
-
const panelRef = useCallback((element) => {
|
|
91
|
-
// Cleanup previous element
|
|
92
|
-
if (panelElementRef.current) {
|
|
93
|
-
panelElementRef.current.removeEventListener('tab-change', handleTabChange);
|
|
94
|
-
}
|
|
95
|
-
panelElementRef.current = element;
|
|
96
|
-
if (element) {
|
|
97
|
-
// Add event listeners
|
|
98
|
-
element.addEventListener('tab-change', handleTabChange);
|
|
99
|
-
setActiveTab(element.activeTab);
|
|
100
|
-
}
|
|
101
|
-
}, [handleTabChange]);
|
|
102
|
-
// Get a specific value
|
|
103
|
-
const get = useCallback((name) => state[name], [state]);
|
|
104
|
-
// Set a specific value
|
|
105
|
-
const set = useCallback((name, value) => {
|
|
106
|
-
stateElementRef.current?.set(name, value);
|
|
107
|
-
}, []);
|
|
108
|
-
// Reset all values
|
|
109
|
-
const reset = useCallback(() => {
|
|
110
|
-
stateElementRef.current?.reset();
|
|
111
|
-
}, []);
|
|
112
|
-
// Set active tab
|
|
113
|
-
const setTab = useCallback((index) => {
|
|
114
|
-
panelElementRef.current?.setTab(index);
|
|
115
|
-
}, []);
|
|
116
|
-
return {
|
|
117
|
-
stateRef,
|
|
118
|
-
panelRef,
|
|
119
|
-
state,
|
|
120
|
-
get,
|
|
121
|
-
set,
|
|
122
|
-
reset,
|
|
123
|
-
setTab,
|
|
124
|
-
activeTab
|
|
125
|
-
};
|
|
126
|
-
}
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* React hook for initializing @easemate/web-kit
|
|
4
|
-
*
|
|
5
|
-
* This module provides hooks for React integration.
|
|
6
|
-
* React is a peer dependency - users must install it separately.
|
|
7
|
-
*
|
|
8
|
-
* @module
|
|
9
|
-
*/
|
|
10
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
|
-
if (k2 === undefined) k2 = k;
|
|
12
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
13
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
14
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
15
|
-
}
|
|
16
|
-
Object.defineProperty(o, k2, desc);
|
|
17
|
-
}) : (function(o, m, k, k2) {
|
|
18
|
-
if (k2 === undefined) k2 = k;
|
|
19
|
-
o[k2] = m[k];
|
|
20
|
-
}));
|
|
21
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
22
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
23
|
-
}) : function(o, v) {
|
|
24
|
-
o["default"] = v;
|
|
25
|
-
});
|
|
26
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
27
|
-
var ownKeys = function(o) {
|
|
28
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
29
|
-
var ar = [];
|
|
30
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
31
|
-
return ar;
|
|
32
|
-
};
|
|
33
|
-
return ownKeys(o);
|
|
34
|
-
};
|
|
35
|
-
return function (mod) {
|
|
36
|
-
if (mod && mod.__esModule) return mod;
|
|
37
|
-
var result = {};
|
|
38
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
39
|
-
__setModuleDefault(result, mod);
|
|
40
|
-
return result;
|
|
41
|
-
};
|
|
42
|
-
})();
|
|
43
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
44
|
-
exports.useWebKit = useWebKit;
|
|
45
|
-
// Singleton to track if web-kit has been initialized globally
|
|
46
|
-
let globalController = null;
|
|
47
|
-
let initCount = 0;
|
|
48
|
-
/**
|
|
49
|
-
* React hook for initializing @easemate/web-kit.
|
|
50
|
-
*
|
|
51
|
-
* This hook handles initialization and cleanup of the web kit,
|
|
52
|
-
* ensuring components are registered before rendering.
|
|
53
|
-
*
|
|
54
|
-
* **Important for Next.js App Router:**
|
|
55
|
-
* - Use this hook in a client component (`'use client'`)
|
|
56
|
-
* - Place it at the top of your component tree (e.g., in a layout)
|
|
57
|
-
* - The hook is SSR-safe and will only initialize on the client
|
|
58
|
-
*
|
|
59
|
-
* **Note:** This hook requires React to be installed. Import React hooks
|
|
60
|
-
* directly in your component and pass them to this function, or use the
|
|
61
|
-
* imperative `initWebKit()` function directly.
|
|
62
|
-
*
|
|
63
|
-
* @example
|
|
64
|
-
* ```tsx
|
|
65
|
-
* // app/providers.tsx
|
|
66
|
-
* 'use client';
|
|
67
|
-
*
|
|
68
|
-
* import { useEffect, useState, useRef } from '../react';
|
|
69
|
-
* import { initWebKit } from '@easemate/web-kit';
|
|
70
|
-
*
|
|
71
|
-
* export function Providers({ children }: { children: React.ReactNode }) {
|
|
72
|
-
* const [ready, setReady] = useState(false);
|
|
73
|
-
* const controllerRef = useRef<WebKitController | null>(null);
|
|
74
|
-
*
|
|
75
|
-
* useEffect(() => {
|
|
76
|
-
* const controller = initWebKit({
|
|
77
|
-
* theme: 'default',
|
|
78
|
-
* styles: 'main',
|
|
79
|
-
* fonts: 'default'
|
|
80
|
-
* });
|
|
81
|
-
* controllerRef.current = controller;
|
|
82
|
-
* controller.ready.then(() => setReady(true));
|
|
83
|
-
*
|
|
84
|
-
* return () => controller.dispose();
|
|
85
|
-
* }, []);
|
|
86
|
-
*
|
|
87
|
-
* return <>{children}</>;
|
|
88
|
-
* }
|
|
89
|
-
* ```
|
|
90
|
-
*/
|
|
91
|
-
function useWebKit(options, hooks) {
|
|
92
|
-
const isSSR = typeof window === 'undefined';
|
|
93
|
-
const { useState, useEffect, useRef } = hooks;
|
|
94
|
-
const { skip = false, ...initOptions } = options;
|
|
95
|
-
const [ready, setReady] = useState(false);
|
|
96
|
-
const controllerRef = useRef(null);
|
|
97
|
-
const optionsRef = useRef(initOptions);
|
|
98
|
-
useEffect(() => {
|
|
99
|
-
// Skip on SSR or if explicitly skipped
|
|
100
|
-
if (isSSR || skip) {
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
let isMounted = true;
|
|
104
|
-
const initialize = async () => {
|
|
105
|
-
// If already initialized globally, reuse the controller
|
|
106
|
-
if (globalController) {
|
|
107
|
-
initCount++;
|
|
108
|
-
controllerRef.current = globalController;
|
|
109
|
-
await globalController.ready;
|
|
110
|
-
if (isMounted) {
|
|
111
|
-
setReady(true);
|
|
112
|
-
}
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
// Dynamic import to ensure this only runs on client
|
|
116
|
-
const { initWebKit } = await Promise.resolve().then(() => __importStar(require('../init')));
|
|
117
|
-
const controller = initWebKit(optionsRef.current);
|
|
118
|
-
globalController = controller;
|
|
119
|
-
initCount++;
|
|
120
|
-
controllerRef.current = controller;
|
|
121
|
-
await controller.ready;
|
|
122
|
-
if (isMounted) {
|
|
123
|
-
setReady(true);
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
initialize();
|
|
127
|
-
return () => {
|
|
128
|
-
isMounted = false;
|
|
129
|
-
initCount--;
|
|
130
|
-
// Only dispose if this was the last user of the global controller
|
|
131
|
-
if (initCount <= 0 && globalController) {
|
|
132
|
-
globalController.dispose();
|
|
133
|
-
globalController = null;
|
|
134
|
-
initCount = 0;
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
}, [skip]);
|
|
138
|
-
return {
|
|
139
|
-
ready,
|
|
140
|
-
theme: controllerRef.current?.theme,
|
|
141
|
-
dispose: () => {
|
|
142
|
-
controllerRef.current?.dispose();
|
|
143
|
-
if (controllerRef.current === globalController) {
|
|
144
|
-
globalController = null;
|
|
145
|
-
initCount = 0;
|
|
146
|
-
}
|
|
147
|
-
controllerRef.current = null;
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* React hook for initializing @easemate/web-kit
|
|
3
|
-
*
|
|
4
|
-
* This module provides hooks for React integration.
|
|
5
|
-
* React is a peer dependency - users must install it separately.
|
|
6
|
-
*
|
|
7
|
-
* @module
|
|
8
|
-
*/
|
|
9
|
-
import type { InitWebKitOptions, WebKitController } from '../init';
|
|
10
|
-
/**
|
|
11
|
-
* Options for useWebKit hook
|
|
12
|
-
*/
|
|
13
|
-
export interface UseWebKitOptions extends InitWebKitOptions {
|
|
14
|
-
/**
|
|
15
|
-
* Skip initialization (useful for conditional rendering)
|
|
16
|
-
* @default false
|
|
17
|
-
*/
|
|
18
|
-
skip?: boolean;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Return type for useWebKit hook
|
|
22
|
-
*/
|
|
23
|
-
export interface UseWebKitReturn {
|
|
24
|
-
/** Whether the web kit is ready */
|
|
25
|
-
ready: boolean;
|
|
26
|
-
/** Theme controller (if theme was configured) */
|
|
27
|
-
theme?: WebKitController['theme'];
|
|
28
|
-
/** Dispose function for cleanup */
|
|
29
|
-
dispose: () => void;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* React hook for initializing @easemate/web-kit.
|
|
33
|
-
*
|
|
34
|
-
* This hook handles initialization and cleanup of the web kit,
|
|
35
|
-
* ensuring components are registered before rendering.
|
|
36
|
-
*
|
|
37
|
-
* **Important for Next.js App Router:**
|
|
38
|
-
* - Use this hook in a client component (`'use client'`)
|
|
39
|
-
* - Place it at the top of your component tree (e.g., in a layout)
|
|
40
|
-
* - The hook is SSR-safe and will only initialize on the client
|
|
41
|
-
*
|
|
42
|
-
* **Note:** This hook requires React to be installed. Import React hooks
|
|
43
|
-
* directly in your component and pass them to this function, or use the
|
|
44
|
-
* imperative `initWebKit()` function directly.
|
|
45
|
-
*
|
|
46
|
-
* @example
|
|
47
|
-
* ```tsx
|
|
48
|
-
* // app/providers.tsx
|
|
49
|
-
* 'use client';
|
|
50
|
-
*
|
|
51
|
-
* import { useEffect, useState, useRef } from '../react';
|
|
52
|
-
* import { initWebKit } from '@easemate/web-kit';
|
|
53
|
-
*
|
|
54
|
-
* export function Providers({ children }: { children: React.ReactNode }) {
|
|
55
|
-
* const [ready, setReady] = useState(false);
|
|
56
|
-
* const controllerRef = useRef<WebKitController | null>(null);
|
|
57
|
-
*
|
|
58
|
-
* useEffect(() => {
|
|
59
|
-
* const controller = initWebKit({
|
|
60
|
-
* theme: 'default',
|
|
61
|
-
* styles: 'main',
|
|
62
|
-
* fonts: 'default'
|
|
63
|
-
* });
|
|
64
|
-
* controllerRef.current = controller;
|
|
65
|
-
* controller.ready.then(() => setReady(true));
|
|
66
|
-
*
|
|
67
|
-
* return () => controller.dispose();
|
|
68
|
-
* }, []);
|
|
69
|
-
*
|
|
70
|
-
* return <>{children}</>;
|
|
71
|
-
* }
|
|
72
|
-
* ```
|
|
73
|
-
*/
|
|
74
|
-
export declare function useWebKit(options: UseWebKitOptions, hooks: {
|
|
75
|
-
useState: <T>(initial: T) => [T, (value: T) => void];
|
|
76
|
-
useEffect: (effect: () => (() => void) | undefined, deps?: unknown[]) => void;
|
|
77
|
-
useRef: <T>(initial: T) => {
|
|
78
|
-
current: T;
|
|
79
|
-
};
|
|
80
|
-
}): UseWebKitReturn;
|