@trebired/frontend 23.3.0 → 25.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +98 -0
- package/README.md +97 -3
- package/dist/a11y/announce.d.ts +5 -0
- package/dist/a11y/announce.d.ts.map +1 -0
- package/dist/a11y/announce.js +38 -0
- package/dist/a11y/announce.js.map +1 -0
- package/dist/a11y/apply.d.ts +13 -0
- package/dist/a11y/apply.d.ts.map +1 -0
- package/dist/a11y/apply.js +81 -0
- package/dist/a11y/apply.js.map +1 -0
- package/dist/a11y/attributes.d.ts +17 -0
- package/dist/a11y/attributes.d.ts.map +1 -0
- package/dist/a11y/attributes.js +34 -0
- package/dist/a11y/attributes.js.map +1 -0
- package/dist/a11y/boot.d.ts +4 -0
- package/dist/a11y/boot.d.ts.map +1 -0
- package/dist/a11y/boot.js +30 -0
- package/dist/a11y/boot.js.map +1 -0
- package/dist/a11y/components/index.d.ts +13 -0
- package/dist/a11y/components/index.d.ts.map +1 -0
- package/dist/a11y/components/index.js +20 -0
- package/dist/a11y/components/index.js.map +1 -0
- package/dist/a11y/components/sections.d.ts +9 -0
- package/dist/a11y/components/sections.d.ts.map +1 -0
- package/dist/a11y/components/sections.js +45 -0
- package/dist/a11y/components/sections.js.map +1 -0
- package/dist/a11y/config.d.ts +12 -0
- package/dist/a11y/config.d.ts.map +1 -0
- package/dist/a11y/config.js +53 -0
- package/dist/a11y/config.js.map +1 -0
- package/dist/a11y/controls.d.ts +8 -0
- package/dist/a11y/controls.d.ts.map +1 -0
- package/dist/a11y/controls.js +78 -0
- package/dist/a11y/controls.js.map +1 -0
- package/dist/a11y/effects.d.ts +4 -0
- package/dist/a11y/effects.d.ts.map +1 -0
- package/dist/a11y/effects.js +14 -0
- package/dist/a11y/effects.js.map +1 -0
- package/dist/a11y/index.d.ts +15 -0
- package/dist/a11y/index.d.ts.map +1 -0
- package/dist/a11y/index.js +12 -0
- package/dist/a11y/index.js.map +1 -0
- package/dist/a11y/ratio.d.ts +16 -0
- package/dist/a11y/ratio.d.ts.map +1 -0
- package/dist/a11y/ratio.js +101 -0
- package/dist/a11y/ratio.js.map +1 -0
- package/dist/a11y/runtime.d.ts +11 -0
- package/dist/a11y/runtime.d.ts.map +1 -0
- package/dist/a11y/runtime.js +25 -0
- package/dist/a11y/runtime.js.map +1 -0
- package/dist/a11y/settings.d.ts +9 -0
- package/dist/a11y/settings.d.ts.map +1 -0
- package/dist/a11y/settings.js +41 -0
- package/dist/a11y/settings.js.map +1 -0
- package/dist/a11y/skip.d.ts +3 -0
- package/dist/a11y/skip.d.ts.map +1 -0
- package/dist/a11y/skip.js +22 -0
- package/dist/a11y/skip.js.map +1 -0
- package/dist/a11y/storage.d.ts +7 -0
- package/dist/a11y/storage.d.ts.map +1 -0
- package/dist/a11y/storage.js +49 -0
- package/dist/a11y/storage.js.map +1 -0
- package/dist/a11y/styles/_motion.scss +12 -0
- package/dist/a11y/styles/contrast.scss +23 -0
- package/dist/a11y/styles/forced.scss +69 -0
- package/dist/a11y/styles/index.scss +45 -0
- package/dist/a11y/styles/panel.scss +21 -0
- package/dist/a11y/styles/targets.scss +32 -0
- package/dist/a11y/types.d.ts +14 -0
- package/dist/a11y/types.d.ts.map +1 -0
- package/dist/a11y/types.js +2 -0
- package/dist/a11y/types.js.map +1 -0
- package/dist/actions/copy-components.d.ts +2 -0
- package/dist/actions/copy-components.d.ts.map +1 -1
- package/dist/actions/copy-components.js +1 -0
- package/dist/actions/copy-components.js.map +1 -1
- package/dist/actions/standard-buttons.d.ts +2 -1
- package/dist/actions/standard-buttons.d.ts.map +1 -1
- package/dist/actions/standard-buttons.js +1 -0
- package/dist/actions/standard-buttons.js.map +1 -1
- package/dist/actions/styles/index.scss +2 -2
- package/dist/config/a11y.d.ts +5 -0
- package/dist/config/a11y.d.ts.map +1 -0
- package/dist/config/a11y.js +66 -0
- package/dist/config/a11y.js.map +1 -0
- package/dist/config/default/component-tokens.d.ts +28 -8
- package/dist/config/default/component-tokens.d.ts.map +1 -1
- package/dist/config/default/component-tokens.js +94 -84
- package/dist/config/default/component-tokens.js.map +1 -1
- package/dist/config/default/config.d.ts +7 -0
- package/dist/config/default/config.d.ts.map +1 -0
- package/dist/config/default/config.js +104 -0
- package/dist/config/default/config.js.map +1 -0
- package/dist/config/glass.d.ts.map +1 -1
- package/dist/config/glass.js +10 -4
- package/dist/config/glass.js.map +1 -1
- package/dist/config/index.d.ts +7 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +3 -0
- package/dist/config/index.js.map +1 -1
- package/dist/config/money.d.ts +5 -0
- package/dist/config/money.d.ts.map +1 -0
- package/dist/config/money.js +56 -0
- package/dist/config/money.js.map +1 -0
- package/dist/config/normalize.d.ts +2 -5
- package/dist/config/normalize.d.ts.map +1 -1
- package/dist/config/normalize.js +12 -97
- package/dist/config/normalize.js.map +1 -1
- package/dist/config/scales-css.d.ts.map +1 -1
- package/dist/config/scales-css.js +11 -5
- package/dist/config/scales-css.js.map +1 -1
- package/dist/config/scss.d.ts.map +1 -1
- package/dist/config/scss.js +19 -7
- package/dist/config/scss.js.map +1 -1
- package/dist/config/text-document.d.ts +24 -0
- package/dist/config/text-document.d.ts.map +1 -0
- package/dist/config/text-document.js +74 -0
- package/dist/config/text-document.js.map +1 -0
- package/dist/config/types/a11y.d.ts +17 -0
- package/dist/config/types/a11y.d.ts.map +1 -0
- package/dist/config/types/a11y.js +2 -0
- package/dist/config/types/a11y.js.map +1 -0
- package/dist/config/types/glass.d.ts +5 -1
- package/dist/config/types/glass.d.ts.map +1 -1
- package/dist/config/types/money.d.ts +14 -0
- package/dist/config/types/money.d.ts.map +1 -0
- package/dist/config/types/money.js +2 -0
- package/dist/config/types/money.js.map +1 -0
- package/dist/config/types.d.ts +9 -2
- package/dist/config/types.d.ts.map +1 -1
- package/dist/explorer/components/file/tree/keys.d.ts +14 -0
- package/dist/explorer/components/file/tree/keys.d.ts.map +1 -0
- package/dist/explorer/components/file/tree/keys.js +94 -0
- package/dist/explorer/components/file/tree/keys.js.map +1 -0
- package/dist/explorer/components/file/tree/row.d.ts.map +1 -1
- package/dist/explorer/components/file/tree/row.js +2 -2
- package/dist/explorer/components/file/tree/row.js.map +1 -1
- package/dist/explorer/components/file/tree.d.ts.map +1 -1
- package/dist/explorer/components/file/tree.js +2 -1
- package/dist/explorer/components/file/tree.js.map +1 -1
- package/dist/explorer/components/static-file-tree.d.ts.map +1 -1
- package/dist/explorer/components/static-file-tree.js +4 -3
- package/dist/explorer/components/static-file-tree.js.map +1 -1
- package/dist/flash/styles/index.scss +3 -3
- package/dist/fullscreen/styles/index.scss +3 -2
- package/dist/heading/index.js +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -33
- package/dist/index.js.map +1 -1
- package/dist/inputs/advanced/checkbox/index.d.ts.map +1 -1
- package/dist/inputs/advanced/checkbox/index.js +4 -4
- package/dist/inputs/advanced/checkbox/index.js.map +1 -1
- package/dist/inputs/advanced/checkbox/styles.scss +14 -5
- package/dist/inputs/advanced/dropdown/index.d.ts.map +1 -1
- package/dist/inputs/advanced/dropdown/index.js +11 -8
- package/dist/inputs/advanced/dropdown/index.js.map +1 -1
- package/dist/inputs/advanced/dropdown/static/aria.d.ts +9 -0
- package/dist/inputs/advanced/dropdown/static/aria.d.ts.map +1 -0
- package/dist/inputs/advanced/dropdown/static/aria.js +47 -0
- package/dist/inputs/advanced/dropdown/static/aria.js.map +1 -0
- package/dist/inputs/advanced/dropdown/static/bind.d.ts.map +1 -1
- package/dist/inputs/advanced/dropdown/static/bind.js +25 -6
- package/dist/inputs/advanced/dropdown/static/bind.js.map +1 -1
- package/dist/inputs/advanced/dropdown/static/keys.d.ts +9 -0
- package/dist/inputs/advanced/dropdown/static/keys.d.ts.map +1 -0
- package/dist/inputs/advanced/dropdown/static/keys.js +69 -0
- package/dist/inputs/advanced/dropdown/static/keys.js.map +1 -0
- package/dist/inputs/advanced/dropdown/static/position.d.ts.map +1 -1
- package/dist/inputs/advanced/dropdown/static/position.js +4 -0
- package/dist/inputs/advanced/dropdown/static/position.js.map +1 -1
- package/dist/inputs/advanced/dropdown/styles/base.scss +14 -13
- package/dist/inputs/advanced/dropdown/styles/portaled.scss +6 -11
- package/dist/inputs/advanced/input/styles/field.scss +5 -1
- package/dist/inputs/advanced/radio/index.d.ts.map +1 -1
- package/dist/inputs/advanced/radio/index.js +5 -5
- package/dist/inputs/advanced/radio/index.js.map +1 -1
- package/dist/inputs/advanced/radio/styles.scss +14 -5
- package/dist/inputs/advanced/status/field.d.ts +14 -0
- package/dist/inputs/advanced/status/field.d.ts.map +1 -0
- package/dist/inputs/advanced/status/field.js +23 -0
- package/dist/inputs/advanced/status/field.js.map +1 -0
- package/dist/inputs/advanced/status/index.client.d.ts +2 -1
- package/dist/inputs/advanced/status/index.client.d.ts.map +1 -1
- package/dist/inputs/advanced/status/index.client.js +35 -5
- package/dist/inputs/advanced/status/index.client.js.map +1 -1
- package/dist/inputs/advanced/status/index.d.ts +1 -0
- package/dist/inputs/advanced/status/index.d.ts.map +1 -1
- package/dist/inputs/advanced/status/index.js +12 -14
- package/dist/inputs/advanced/status/index.js.map +1 -1
- package/dist/inputs/advanced/status/styles.scss +20 -0
- package/dist/inputs/advanced/tabs/styles.scss +16 -12
- package/dist/inputs/components/disclosure.d.ts +1 -0
- package/dist/inputs/components/disclosure.d.ts.map +1 -1
- package/dist/inputs/components/disclosure.js +2 -2
- package/dist/inputs/components/disclosure.js.map +1 -1
- package/dist/inputs/components/dropdown.d.ts.map +1 -1
- package/dist/inputs/components/dropdown.js +2 -2
- package/dist/inputs/components/dropdown.js.map +1 -1
- package/dist/inputs/components/status.d.ts.map +1 -1
- package/dist/inputs/components/status.js +1 -1
- package/dist/inputs/components/status.js.map +1 -1
- package/dist/inputs/status.d.ts.map +1 -1
- package/dist/inputs/status.js +4 -0
- package/dist/inputs/status.js.map +1 -1
- package/dist/inputs/styles/cropper.scss +19 -0
- package/dist/inputs/styles/primitives.scss +4 -0
- package/dist/inputs/upload/crop/keys.d.ts +26 -0
- package/dist/inputs/upload/crop/keys.d.ts.map +1 -0
- package/dist/inputs/upload/crop/keys.js +79 -0
- package/dist/inputs/upload/crop/keys.js.map +1 -0
- package/dist/inputs/upload/{crop-session.d.ts → crop/session.d.ts} +2 -2
- package/dist/inputs/upload/crop/session.d.ts.map +1 -0
- package/dist/{src/inputs/upload/crop-session.js → inputs/upload/crop/session.js} +26 -11
- package/dist/inputs/upload/crop/session.js.map +1 -0
- package/dist/inputs/upload/manager.js +1 -1
- package/dist/language/components.d.ts +1 -0
- package/dist/language/components.d.ts.map +1 -1
- package/dist/language/components.js +1 -0
- package/dist/language/components.js.map +1 -1
- package/dist/language/direction.d.ts +6 -0
- package/dist/language/direction.d.ts.map +1 -0
- package/dist/language/direction.js +21 -0
- package/dist/language/direction.js.map +1 -0
- package/dist/language/fragment.d.ts +10 -0
- package/dist/language/fragment.d.ts.map +1 -0
- package/dist/language/fragment.js +10 -0
- package/dist/language/fragment.js.map +1 -0
- package/dist/language/index.d.ts +2 -0
- package/dist/language/index.d.ts.map +1 -1
- package/dist/language/index.js +2 -0
- package/dist/language/index.js.map +1 -1
- package/dist/language/locale.d.ts.map +1 -1
- package/dist/language/locale.js +12 -6
- package/dist/language/locale.js.map +1 -1
- package/dist/language/messages.d.ts.map +1 -1
- package/dist/language/messages.js +34 -0
- package/dist/language/messages.js.map +1 -1
- package/dist/language/routing/boot.d.ts +2 -0
- package/dist/language/routing/boot.d.ts.map +1 -1
- package/dist/language/routing/boot.js +9 -2
- package/dist/language/routing/boot.js.map +1 -1
- package/dist/language/routing/document.d.ts.map +1 -1
- package/dist/language/routing/document.js +3 -1
- package/dist/language/routing/document.js.map +1 -1
- package/dist/language/routing/view.js +1 -1
- package/dist/language/routing/view.js.map +1 -1
- package/dist/language/shared.d.ts +3 -1
- package/dist/language/shared.d.ts.map +1 -1
- package/dist/language/shared.js +7 -1
- package/dist/language/shared.js.map +1 -1
- package/dist/language/styles/index.scss +5 -53
- package/dist/layout/components/index.d.ts +1 -0
- package/dist/layout/components/index.d.ts.map +1 -1
- package/dist/layout/components/index.js +1 -0
- package/dist/layout/components/index.js.map +1 -1
- package/dist/layout/components/outline.d.ts +14 -0
- package/dist/layout/components/outline.d.ts.map +1 -0
- package/dist/layout/components/outline.js +76 -0
- package/dist/layout/components/outline.js.map +1 -0
- package/dist/layout/components/site/footer.d.ts +27 -9
- package/dist/layout/components/site/footer.d.ts.map +1 -1
- package/dist/layout/components/site/footer.js +41 -4
- package/dist/layout/components/site/footer.js.map +1 -1
- package/dist/layout/components/site/header/fit.d.ts +4 -0
- package/dist/layout/components/site/header/fit.d.ts.map +1 -0
- package/dist/layout/components/site/header/fit.js +54 -0
- package/dist/layout/components/site/header/fit.js.map +1 -0
- package/dist/layout/components/site/{header_state.d.ts → header/state.d.ts} +1 -1
- package/dist/layout/components/site/header/state.d.ts.map +1 -0
- package/dist/{src/layout/components/site/header_state.js → layout/components/site/header/state.js} +1 -1
- package/dist/layout/components/site/header/state.js.map +1 -0
- package/dist/layout/components/site/header/tone.d.ts +6 -0
- package/dist/layout/components/site/header/tone.d.ts.map +1 -0
- package/dist/layout/components/site/header/tone.js +73 -0
- package/dist/layout/components/site/header/tone.js.map +1 -0
- package/dist/layout/components/site/header.d.ts +3 -8
- package/dist/layout/components/site/header.d.ts.map +1 -1
- package/dist/layout/components/site/header.js +49 -49
- package/dist/layout/components/site/header.js.map +1 -1
- package/dist/layout/components/site/link.d.ts +32 -0
- package/dist/layout/components/site/link.d.ts.map +1 -0
- package/dist/layout/components/site/link.js +73 -0
- package/dist/layout/components/site/link.js.map +1 -0
- package/dist/layout/index.d.ts.map +1 -1
- package/dist/layout/index.js +5 -1
- package/dist/layout/index.js.map +1 -1
- package/dist/layout/social.d.ts +10 -0
- package/dist/layout/social.d.ts.map +1 -0
- package/dist/layout/social.js +20 -0
- package/dist/layout/social.js.map +1 -0
- package/dist/layout/styles/index.scss +3 -0
- package/dist/layout/styles/outline.scss +56 -0
- package/dist/layout/styles/site/menu.scss +156 -0
- package/dist/layout/styles/site-footer.scss +79 -18
- package/dist/layout/styles/site-header.scss +107 -123
- package/dist/layout/styles/site-link.scss +61 -0
- package/dist/media/carousel-state.d.ts +2 -1
- package/dist/media/carousel-state.d.ts.map +1 -1
- package/dist/media/carousel-state.js +16 -6
- package/dist/media/carousel-state.js.map +1 -1
- package/dist/media/styles/carousel.scss +2 -1
- package/dist/money/config.d.ts +15 -0
- package/dist/money/config.d.ts.map +1 -0
- package/dist/money/config.js +79 -0
- package/dist/money/config.js.map +1 -0
- package/dist/money/format.d.ts +12 -0
- package/dist/money/format.d.ts.map +1 -0
- package/dist/money/format.js +66 -0
- package/dist/money/format.js.map +1 -0
- package/dist/money/index.d.ts +5 -0
- package/dist/money/index.d.ts.map +1 -0
- package/dist/money/index.js +3 -0
- package/dist/money/index.js.map +1 -0
- package/dist/money/rates.d.ts +17 -0
- package/dist/money/rates.d.ts.map +1 -0
- package/dist/money/rates.js +48 -0
- package/dist/money/rates.js.map +1 -0
- package/dist/namespace/index.d.ts +2 -1
- package/dist/namespace/index.d.ts.map +1 -1
- package/dist/namespace/index.js +7 -1
- package/dist/namespace/index.js.map +1 -1
- package/dist/popover/index.d.ts.map +1 -1
- package/dist/popover/index.js +60 -0
- package/dist/popover/index.js.map +1 -1
- package/dist/popover/styles/index.scss +55 -18
- package/dist/primitives/components/classes.d.ts +1 -1
- package/dist/primitives/components/classes.d.ts.map +1 -1
- package/dist/primitives/components/index.d.ts +1 -0
- package/dist/primitives/components/index.d.ts.map +1 -1
- package/dist/primitives/components/index.js +1 -0
- package/dist/primitives/components/index.js.map +1 -1
- package/dist/primitives/components/prose.d.ts +8 -0
- package/dist/primitives/components/prose.d.ts.map +1 -0
- package/dist/primitives/components/prose.js +64 -0
- package/dist/primitives/components/prose.js.map +1 -0
- package/dist/primitives/styles/_controls.scss +51 -7
- package/dist/primitives/styles/_indicators.scss +13 -7
- package/dist/primitives/styles/_marquee.scss +2 -1
- package/dist/primitives/styles/_wizard.scss +2 -1
- package/dist/react/index.d.ts +5 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +46 -9
- package/dist/react/index.js.map +1 -1
- package/dist/render/current_url.d.ts.map +1 -1
- package/dist/render/current_url.js +7 -0
- package/dist/render/current_url.js.map +1 -1
- package/dist/runtime/globals.d.ts +9 -0
- package/dist/runtime/globals.d.ts.map +1 -0
- package/dist/runtime/globals.js +27 -0
- package/dist/runtime/globals.js.map +1 -0
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +1 -0
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/options.d.ts +7 -0
- package/dist/runtime/options.d.ts.map +1 -0
- package/dist/runtime/options.js +27 -0
- package/dist/runtime/options.js.map +1 -0
- package/dist/spa/navigate.d.ts.map +1 -1
- package/dist/spa/navigate.js +21 -2
- package/dist/spa/navigate.js.map +1 -1
- package/dist/src/a11y/announce.d.ts +5 -0
- package/dist/src/a11y/announce.d.ts.map +1 -0
- package/dist/src/a11y/announce.js +38 -0
- package/dist/src/a11y/announce.js.map +1 -0
- package/dist/src/a11y/apply.d.ts +13 -0
- package/dist/src/a11y/apply.d.ts.map +1 -0
- package/dist/src/a11y/apply.js +81 -0
- package/dist/src/a11y/apply.js.map +1 -0
- package/dist/src/a11y/attributes.d.ts +17 -0
- package/dist/src/a11y/attributes.d.ts.map +1 -0
- package/dist/src/a11y/attributes.js +34 -0
- package/dist/src/a11y/attributes.js.map +1 -0
- package/dist/src/a11y/boot.d.ts +4 -0
- package/dist/src/a11y/boot.d.ts.map +1 -0
- package/dist/src/a11y/boot.js +30 -0
- package/dist/src/a11y/boot.js.map +1 -0
- package/dist/src/a11y/components/index.d.ts +13 -0
- package/dist/src/a11y/components/index.d.ts.map +1 -0
- package/dist/src/a11y/components/index.js +20 -0
- package/dist/src/a11y/components/index.js.map +1 -0
- package/dist/src/a11y/components/sections.d.ts +9 -0
- package/dist/src/a11y/components/sections.d.ts.map +1 -0
- package/dist/src/a11y/components/sections.js +45 -0
- package/dist/src/a11y/components/sections.js.map +1 -0
- package/dist/src/a11y/config.d.ts +12 -0
- package/dist/src/a11y/config.d.ts.map +1 -0
- package/dist/src/a11y/config.js +53 -0
- package/dist/src/a11y/config.js.map +1 -0
- package/dist/src/a11y/controls.d.ts +8 -0
- package/dist/src/a11y/controls.d.ts.map +1 -0
- package/dist/src/a11y/controls.js +78 -0
- package/dist/src/a11y/controls.js.map +1 -0
- package/dist/src/a11y/effects.d.ts +4 -0
- package/dist/src/a11y/effects.d.ts.map +1 -0
- package/dist/src/a11y/effects.js +14 -0
- package/dist/src/a11y/effects.js.map +1 -0
- package/dist/src/a11y/index.d.ts +15 -0
- package/dist/src/a11y/index.d.ts.map +1 -0
- package/dist/src/a11y/index.js +12 -0
- package/dist/src/a11y/index.js.map +1 -0
- package/dist/src/a11y/ratio.d.ts +16 -0
- package/dist/src/a11y/ratio.d.ts.map +1 -0
- package/dist/src/a11y/ratio.js +101 -0
- package/dist/src/a11y/ratio.js.map +1 -0
- package/dist/src/a11y/runtime.d.ts +11 -0
- package/dist/src/a11y/runtime.d.ts.map +1 -0
- package/dist/src/a11y/runtime.js +25 -0
- package/dist/src/a11y/runtime.js.map +1 -0
- package/dist/src/a11y/settings.d.ts +9 -0
- package/dist/src/a11y/settings.d.ts.map +1 -0
- package/dist/src/a11y/settings.js +41 -0
- package/dist/src/a11y/settings.js.map +1 -0
- package/dist/src/a11y/skip.d.ts +3 -0
- package/dist/src/a11y/skip.d.ts.map +1 -0
- package/dist/src/a11y/skip.js +22 -0
- package/dist/src/a11y/skip.js.map +1 -0
- package/dist/src/a11y/storage.d.ts +7 -0
- package/dist/src/a11y/storage.d.ts.map +1 -0
- package/dist/src/a11y/storage.js +49 -0
- package/dist/src/a11y/storage.js.map +1 -0
- package/dist/src/a11y/types.d.ts +14 -0
- package/dist/src/a11y/types.d.ts.map +1 -0
- package/dist/src/a11y/types.js +2 -0
- package/dist/src/a11y/types.js.map +1 -0
- package/dist/src/actions/copy-components.d.ts +2 -0
- package/dist/src/actions/copy-components.d.ts.map +1 -1
- package/dist/src/actions/copy-components.js +1 -0
- package/dist/src/actions/copy-components.js.map +1 -1
- package/dist/src/actions/standard-buttons.d.ts +2 -1
- package/dist/src/actions/standard-buttons.d.ts.map +1 -1
- package/dist/src/actions/standard-buttons.js +1 -0
- package/dist/src/actions/standard-buttons.js.map +1 -1
- package/dist/src/config/a11y.d.ts +5 -0
- package/dist/src/config/a11y.d.ts.map +1 -0
- package/dist/src/config/a11y.js +66 -0
- package/dist/src/config/a11y.js.map +1 -0
- package/dist/src/config/default/component-tokens.d.ts +28 -8
- package/dist/src/config/default/component-tokens.d.ts.map +1 -1
- package/dist/src/config/default/component-tokens.js +94 -84
- package/dist/src/config/default/component-tokens.js.map +1 -1
- package/dist/src/config/default/config.d.ts +7 -0
- package/dist/src/config/default/config.d.ts.map +1 -0
- package/dist/src/config/default/config.js +104 -0
- package/dist/src/config/default/config.js.map +1 -0
- package/dist/src/config/glass.d.ts.map +1 -1
- package/dist/src/config/glass.js +10 -4
- package/dist/src/config/glass.js.map +1 -1
- package/dist/src/config/index.d.ts +7 -1
- package/dist/src/config/index.d.ts.map +1 -1
- package/dist/src/config/index.js +3 -0
- package/dist/src/config/index.js.map +1 -1
- package/dist/src/config/money.d.ts +5 -0
- package/dist/src/config/money.d.ts.map +1 -0
- package/dist/src/config/money.js +56 -0
- package/dist/src/config/money.js.map +1 -0
- package/dist/src/config/normalize.d.ts +2 -5
- package/dist/src/config/normalize.d.ts.map +1 -1
- package/dist/src/config/normalize.js +12 -97
- package/dist/src/config/normalize.js.map +1 -1
- package/dist/src/config/scales-css.d.ts.map +1 -1
- package/dist/src/config/scales-css.js +11 -5
- package/dist/src/config/scales-css.js.map +1 -1
- package/dist/src/config/scss.d.ts.map +1 -1
- package/dist/src/config/scss.js +19 -7
- package/dist/src/config/scss.js.map +1 -1
- package/dist/src/config/text-document.d.ts +24 -0
- package/dist/src/config/text-document.d.ts.map +1 -0
- package/dist/src/config/text-document.js +74 -0
- package/dist/src/config/text-document.js.map +1 -0
- package/dist/src/config/types/a11y.d.ts +17 -0
- package/dist/src/config/types/a11y.d.ts.map +1 -0
- package/dist/src/config/types/a11y.js +2 -0
- package/dist/src/config/types/a11y.js.map +1 -0
- package/dist/src/config/types/glass.d.ts +5 -1
- package/dist/src/config/types/glass.d.ts.map +1 -1
- package/dist/src/config/types/money.d.ts +14 -0
- package/dist/src/config/types/money.d.ts.map +1 -0
- package/dist/src/config/types/money.js +2 -0
- package/dist/src/config/types/money.js.map +1 -0
- package/dist/src/config/types.d.ts +9 -2
- package/dist/src/config/types.d.ts.map +1 -1
- package/dist/src/explorer/components/file/tree/keys.d.ts +14 -0
- package/dist/src/explorer/components/file/tree/keys.d.ts.map +1 -0
- package/dist/src/explorer/components/file/tree/keys.js +94 -0
- package/dist/src/explorer/components/file/tree/keys.js.map +1 -0
- package/dist/src/explorer/components/file/tree/row.d.ts.map +1 -1
- package/dist/src/explorer/components/file/tree/row.js +2 -2
- package/dist/src/explorer/components/file/tree/row.js.map +1 -1
- package/dist/src/explorer/components/file/tree.d.ts.map +1 -1
- package/dist/src/explorer/components/file/tree.js +2 -1
- package/dist/src/explorer/components/file/tree.js.map +1 -1
- package/dist/src/explorer/components/static-file-tree.d.ts.map +1 -1
- package/dist/src/explorer/components/static-file-tree.js +4 -3
- package/dist/src/explorer/components/static-file-tree.js.map +1 -1
- package/dist/src/heading/index.js +2 -2
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +11 -33
- package/dist/src/index.js.map +1 -1
- package/dist/src/inputs/advanced/checkbox/index.d.ts.map +1 -1
- package/dist/src/inputs/advanced/checkbox/index.js +4 -4
- package/dist/src/inputs/advanced/checkbox/index.js.map +1 -1
- package/dist/src/inputs/advanced/dropdown/index.d.ts.map +1 -1
- package/dist/src/inputs/advanced/dropdown/index.js +11 -8
- package/dist/src/inputs/advanced/dropdown/index.js.map +1 -1
- package/dist/src/inputs/advanced/dropdown/static/aria.d.ts +9 -0
- package/dist/src/inputs/advanced/dropdown/static/aria.d.ts.map +1 -0
- package/dist/src/inputs/advanced/dropdown/static/aria.js +47 -0
- package/dist/src/inputs/advanced/dropdown/static/aria.js.map +1 -0
- package/dist/src/inputs/advanced/dropdown/static/bind.d.ts.map +1 -1
- package/dist/src/inputs/advanced/dropdown/static/bind.js +25 -6
- package/dist/src/inputs/advanced/dropdown/static/bind.js.map +1 -1
- package/dist/src/inputs/advanced/dropdown/static/keys.d.ts +9 -0
- package/dist/src/inputs/advanced/dropdown/static/keys.d.ts.map +1 -0
- package/dist/src/inputs/advanced/dropdown/static/keys.js +69 -0
- package/dist/src/inputs/advanced/dropdown/static/keys.js.map +1 -0
- package/dist/src/inputs/advanced/dropdown/static/position.d.ts.map +1 -1
- package/dist/src/inputs/advanced/dropdown/static/position.js +4 -0
- package/dist/src/inputs/advanced/dropdown/static/position.js.map +1 -1
- package/dist/src/inputs/advanced/radio/index.d.ts.map +1 -1
- package/dist/src/inputs/advanced/radio/index.js +5 -5
- package/dist/src/inputs/advanced/radio/index.js.map +1 -1
- package/dist/src/inputs/advanced/status/field.d.ts +14 -0
- package/dist/src/inputs/advanced/status/field.d.ts.map +1 -0
- package/dist/src/inputs/advanced/status/field.js +23 -0
- package/dist/src/inputs/advanced/status/field.js.map +1 -0
- package/dist/src/inputs/advanced/status/index.client.d.ts +2 -1
- package/dist/src/inputs/advanced/status/index.client.d.ts.map +1 -1
- package/dist/src/inputs/advanced/status/index.client.js +35 -5
- package/dist/src/inputs/advanced/status/index.client.js.map +1 -1
- package/dist/src/inputs/advanced/status/index.d.ts +1 -0
- package/dist/src/inputs/advanced/status/index.d.ts.map +1 -1
- package/dist/src/inputs/advanced/status/index.js +12 -14
- package/dist/src/inputs/advanced/status/index.js.map +1 -1
- package/dist/src/inputs/components/disclosure.d.ts +1 -0
- package/dist/src/inputs/components/disclosure.d.ts.map +1 -1
- package/dist/src/inputs/components/disclosure.js +2 -2
- package/dist/src/inputs/components/disclosure.js.map +1 -1
- package/dist/src/inputs/components/dropdown.d.ts.map +1 -1
- package/dist/src/inputs/components/dropdown.js +2 -2
- package/dist/src/inputs/components/dropdown.js.map +1 -1
- package/dist/src/inputs/components/status.d.ts.map +1 -1
- package/dist/src/inputs/components/status.js +1 -1
- package/dist/src/inputs/components/status.js.map +1 -1
- package/dist/src/inputs/status.d.ts.map +1 -1
- package/dist/src/inputs/status.js +4 -0
- package/dist/src/inputs/status.js.map +1 -1
- package/dist/src/inputs/upload/crop/keys.d.ts +26 -0
- package/dist/src/inputs/upload/crop/keys.d.ts.map +1 -0
- package/dist/src/inputs/upload/crop/keys.js +79 -0
- package/dist/src/inputs/upload/crop/keys.js.map +1 -0
- package/dist/src/inputs/upload/{crop-session.d.ts → crop/session.d.ts} +2 -2
- package/dist/src/inputs/upload/crop/session.d.ts.map +1 -0
- package/dist/{inputs/upload/crop-session.js → src/inputs/upload/crop/session.js} +30 -15
- package/dist/src/inputs/upload/crop/session.js.map +1 -0
- package/dist/src/inputs/upload/manager.js +1 -1
- package/dist/src/language/components.d.ts +1 -0
- package/dist/src/language/components.d.ts.map +1 -1
- package/dist/src/language/components.js +1 -0
- package/dist/src/language/components.js.map +1 -1
- package/dist/src/language/direction.d.ts +6 -0
- package/dist/src/language/direction.d.ts.map +1 -0
- package/dist/src/language/direction.js +21 -0
- package/dist/src/language/direction.js.map +1 -0
- package/dist/src/language/fragment.d.ts +10 -0
- package/dist/src/language/fragment.d.ts.map +1 -0
- package/dist/src/language/fragment.js +10 -0
- package/dist/src/language/fragment.js.map +1 -0
- package/dist/src/language/index.d.ts +2 -0
- package/dist/src/language/index.d.ts.map +1 -1
- package/dist/src/language/index.js +2 -0
- package/dist/src/language/index.js.map +1 -1
- package/dist/src/language/locale.d.ts.map +1 -1
- package/dist/src/language/locale.js +12 -6
- package/dist/src/language/locale.js.map +1 -1
- package/dist/src/language/messages.d.ts.map +1 -1
- package/dist/src/language/messages.js +34 -0
- package/dist/src/language/messages.js.map +1 -1
- package/dist/src/language/routing/boot.d.ts +2 -0
- package/dist/src/language/routing/boot.d.ts.map +1 -1
- package/dist/src/language/routing/boot.js +9 -2
- package/dist/src/language/routing/boot.js.map +1 -1
- package/dist/src/language/routing/document.d.ts.map +1 -1
- package/dist/src/language/routing/document.js +3 -1
- package/dist/src/language/routing/document.js.map +1 -1
- package/dist/src/language/routing/view.js +1 -1
- package/dist/src/language/routing/view.js.map +1 -1
- package/dist/src/language/shared.d.ts +3 -1
- package/dist/src/language/shared.d.ts.map +1 -1
- package/dist/src/language/shared.js +7 -1
- package/dist/src/language/shared.js.map +1 -1
- package/dist/src/layout/components/index.d.ts +1 -0
- package/dist/src/layout/components/index.d.ts.map +1 -1
- package/dist/src/layout/components/index.js +1 -0
- package/dist/src/layout/components/index.js.map +1 -1
- package/dist/src/layout/components/outline.d.ts +14 -0
- package/dist/src/layout/components/outline.d.ts.map +1 -0
- package/dist/src/layout/components/outline.js +76 -0
- package/dist/src/layout/components/outline.js.map +1 -0
- package/dist/src/layout/components/site/footer.d.ts +27 -9
- package/dist/src/layout/components/site/footer.d.ts.map +1 -1
- package/dist/src/layout/components/site/footer.js +41 -4
- package/dist/src/layout/components/site/footer.js.map +1 -1
- package/dist/src/layout/components/site/header/fit.d.ts +4 -0
- package/dist/src/layout/components/site/header/fit.d.ts.map +1 -0
- package/dist/src/layout/components/site/header/fit.js +54 -0
- package/dist/src/layout/components/site/header/fit.js.map +1 -0
- package/dist/src/layout/components/site/{header_state.d.ts → header/state.d.ts} +1 -1
- package/dist/src/layout/components/site/header/state.d.ts.map +1 -0
- package/dist/{layout/components/site/header_state.js → src/layout/components/site/header/state.js} +3 -3
- package/dist/src/layout/components/site/header/state.js.map +1 -0
- package/dist/src/layout/components/site/header/tone.d.ts +6 -0
- package/dist/src/layout/components/site/header/tone.d.ts.map +1 -0
- package/dist/src/layout/components/site/header/tone.js +73 -0
- package/dist/src/layout/components/site/header/tone.js.map +1 -0
- package/dist/src/layout/components/site/header.d.ts +3 -8
- package/dist/src/layout/components/site/header.d.ts.map +1 -1
- package/dist/src/layout/components/site/header.js +49 -49
- package/dist/src/layout/components/site/header.js.map +1 -1
- package/dist/src/layout/components/site/link.d.ts +32 -0
- package/dist/src/layout/components/site/link.d.ts.map +1 -0
- package/dist/src/layout/components/site/link.js +73 -0
- package/dist/src/layout/components/site/link.js.map +1 -0
- package/dist/src/layout/index.d.ts.map +1 -1
- package/dist/src/layout/index.js +5 -1
- package/dist/src/layout/index.js.map +1 -1
- package/dist/src/layout/social.d.ts +10 -0
- package/dist/src/layout/social.d.ts.map +1 -0
- package/dist/src/layout/social.js +20 -0
- package/dist/src/layout/social.js.map +1 -0
- package/dist/src/media/carousel-state.d.ts +2 -1
- package/dist/src/media/carousel-state.d.ts.map +1 -1
- package/dist/src/media/carousel-state.js +16 -6
- package/dist/src/media/carousel-state.js.map +1 -1
- package/dist/src/money/config.d.ts +15 -0
- package/dist/src/money/config.d.ts.map +1 -0
- package/dist/src/money/config.js +79 -0
- package/dist/src/money/config.js.map +1 -0
- package/dist/src/money/format.d.ts +12 -0
- package/dist/src/money/format.d.ts.map +1 -0
- package/dist/src/money/format.js +66 -0
- package/dist/src/money/format.js.map +1 -0
- package/dist/src/money/index.d.ts +5 -0
- package/dist/src/money/index.d.ts.map +1 -0
- package/dist/src/money/index.js +3 -0
- package/dist/src/money/index.js.map +1 -0
- package/dist/src/money/rates.d.ts +17 -0
- package/dist/src/money/rates.d.ts.map +1 -0
- package/dist/src/money/rates.js +48 -0
- package/dist/src/money/rates.js.map +1 -0
- package/dist/src/namespace/index.d.ts +2 -1
- package/dist/src/namespace/index.d.ts.map +1 -1
- package/dist/src/namespace/index.js +7 -1
- package/dist/src/namespace/index.js.map +1 -1
- package/dist/src/popover/index.d.ts.map +1 -1
- package/dist/src/popover/index.js +60 -0
- package/dist/src/popover/index.js.map +1 -1
- package/dist/src/primitives/components/classes.d.ts +1 -1
- package/dist/src/primitives/components/classes.d.ts.map +1 -1
- package/dist/src/primitives/components/index.d.ts +1 -0
- package/dist/src/primitives/components/index.d.ts.map +1 -1
- package/dist/src/primitives/components/index.js +1 -0
- package/dist/src/primitives/components/index.js.map +1 -1
- package/dist/src/primitives/components/prose.d.ts +8 -0
- package/dist/src/primitives/components/prose.d.ts.map +1 -0
- package/dist/src/primitives/components/prose.js +64 -0
- package/dist/src/primitives/components/prose.js.map +1 -0
- package/dist/src/react/index.d.ts +5 -0
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/react/index.js +46 -9
- package/dist/src/react/index.js.map +1 -1
- package/dist/src/render/current_url.d.ts.map +1 -1
- package/dist/src/render/current_url.js +7 -0
- package/dist/src/render/current_url.js.map +1 -1
- package/dist/src/runtime/globals.d.ts +9 -0
- package/dist/src/runtime/globals.d.ts.map +1 -0
- package/dist/src/runtime/globals.js +27 -0
- package/dist/src/runtime/globals.js.map +1 -0
- package/dist/src/runtime/index.d.ts +1 -0
- package/dist/src/runtime/index.d.ts.map +1 -1
- package/dist/src/runtime/index.js +1 -0
- package/dist/src/runtime/index.js.map +1 -1
- package/dist/src/runtime/options.d.ts +7 -0
- package/dist/src/runtime/options.d.ts.map +1 -0
- package/dist/src/runtime/options.js +27 -0
- package/dist/src/runtime/options.js.map +1 -0
- package/dist/src/spa/navigate.d.ts.map +1 -1
- package/dist/src/spa/navigate.js +21 -2
- package/dist/src/spa/navigate.js.map +1 -1
- package/dist/src/surface/components/index.d.ts.map +1 -1
- package/dist/src/surface/components/index.js +2 -2
- package/dist/src/surface/components/index.js.map +1 -1
- package/dist/src/surface/components/motif.d.ts +8 -0
- package/dist/src/surface/components/motif.d.ts.map +1 -0
- package/dist/src/surface/components/motif.js +14 -0
- package/dist/src/surface/components/motif.js.map +1 -0
- package/dist/src/surface/motif/boot.d.ts +5 -0
- package/dist/src/surface/motif/boot.d.ts.map +1 -0
- package/dist/src/surface/motif/boot.js +32 -0
- package/dist/src/surface/motif/boot.js.map +1 -0
- package/dist/src/surface/motif/program.d.ts +45 -0
- package/dist/src/surface/motif/program.d.ts.map +1 -0
- package/dist/src/surface/motif/program.js +180 -0
- package/dist/src/surface/motif/program.js.map +1 -0
- package/dist/src/surface/motif/registry.d.ts +10 -0
- package/dist/src/surface/motif/registry.d.ts.map +1 -0
- package/dist/src/surface/motif/registry.js +18 -0
- package/dist/src/surface/motif/registry.js.map +1 -0
- package/dist/src/surface/motif/runtime.d.ts +8 -0
- package/dist/src/surface/motif/runtime.d.ts.map +1 -0
- package/dist/src/surface/motif/runtime.js +62 -0
- package/dist/src/surface/motif/runtime.js.map +1 -0
- package/dist/src/theme/apply.d.ts.map +1 -1
- package/dist/src/theme/apply.js +2 -1
- package/dist/src/theme/apply.js.map +1 -1
- package/dist/src/wizard/animation.d.ts.map +1 -1
- package/dist/src/wizard/animation.js +2 -1
- package/dist/src/wizard/animation.js.map +1 -1
- package/dist/styles/tokens.scss +28 -8
- package/dist/styles/utils/_tone.scss +44 -0
- package/dist/styles/utils/a11y.scss +16 -0
- package/dist/styles/utils/alignment.scss +2 -1
- package/dist/styles/utils/base.scss +11 -4
- package/dist/styles/utils/focus.scss +13 -0
- package/dist/styles/utils/swap.scss +12 -0
- package/dist/styles/utils/text/extra.scss +1 -1
- package/dist/styles/utils.scss +2 -0
- package/dist/surface/components/index.d.ts.map +1 -1
- package/dist/surface/components/index.js +2 -2
- package/dist/surface/components/index.js.map +1 -1
- package/dist/surface/components/motif.d.ts +8 -0
- package/dist/surface/components/motif.d.ts.map +1 -0
- package/dist/surface/components/motif.js +14 -0
- package/dist/surface/components/motif.js.map +1 -0
- package/dist/surface/motif/boot.d.ts +5 -0
- package/dist/surface/motif/boot.d.ts.map +1 -0
- package/dist/surface/motif/boot.js +32 -0
- package/dist/surface/motif/boot.js.map +1 -0
- package/dist/surface/motif/program.d.ts +45 -0
- package/dist/surface/motif/program.d.ts.map +1 -0
- package/dist/surface/motif/program.js +180 -0
- package/dist/surface/motif/program.js.map +1 -0
- package/dist/surface/motif/registry.d.ts +10 -0
- package/dist/surface/motif/registry.d.ts.map +1 -0
- package/dist/surface/motif/registry.js +18 -0
- package/dist/surface/motif/registry.js.map +1 -0
- package/dist/surface/motif/runtime.d.ts +8 -0
- package/dist/surface/motif/runtime.d.ts.map +1 -0
- package/dist/surface/motif/runtime.js +62 -0
- package/dist/surface/motif/runtime.js.map +1 -0
- package/dist/surface/styles/blocks.scss +2 -2
- package/dist/surface/styles/brand-canvas.scss +1 -2
- package/dist/surface/styles/hairline.scss +8 -4
- package/dist/surface/styles/index.scss +4 -3
- package/dist/surface/styles/layout.scss +10 -5
- package/dist/surface/styles/motif.scss +11 -0
- package/dist/surface/styles/track.scss +8 -3
- package/dist/theme/apply.d.ts.map +1 -1
- package/dist/theme/apply.js +2 -1
- package/dist/theme/apply.js.map +1 -1
- package/dist/wizard/animation.d.ts.map +1 -1
- package/dist/wizard/animation.js +2 -1
- package/dist/wizard/animation.js.map +1 -1
- package/package.json +2 -1
- package/dist/contrast/boot.d.ts +0 -3
- package/dist/contrast/boot.d.ts.map +0 -1
- package/dist/contrast/boot.js +0 -31
- package/dist/contrast/boot.js.map +0 -1
- package/dist/contrast/index.d.ts +0 -8
- package/dist/contrast/index.d.ts.map +0 -1
- package/dist/contrast/index.js +0 -213
- package/dist/contrast/index.js.map +0 -1
- package/dist/contrast/selectors.d.ts +0 -18
- package/dist/contrast/selectors.d.ts.map +0 -1
- package/dist/contrast/selectors.js +0 -38
- package/dist/contrast/selectors.js.map +0 -1
- package/dist/contrast/styles/adaptive.scss +0 -17
- package/dist/contrast/styles/index.scss +0 -94
- package/dist/inputs/upload/crop-session.d.ts.map +0 -1
- package/dist/inputs/upload/crop-session.js.map +0 -1
- package/dist/layout/components/site/header_state.d.ts.map +0 -1
- package/dist/layout/components/site/header_state.js.map +0 -1
- package/dist/src/contrast/boot.d.ts +0 -3
- package/dist/src/contrast/boot.d.ts.map +0 -1
- package/dist/src/contrast/boot.js +0 -31
- package/dist/src/contrast/boot.js.map +0 -1
- package/dist/src/contrast/index.d.ts +0 -8
- package/dist/src/contrast/index.d.ts.map +0 -1
- package/dist/src/contrast/index.js +0 -213
- package/dist/src/contrast/index.js.map +0 -1
- package/dist/src/contrast/selectors.d.ts +0 -18
- package/dist/src/contrast/selectors.d.ts.map +0 -1
- package/dist/src/contrast/selectors.js +0 -38
- package/dist/src/contrast/selectors.js.map +0 -1
- package/dist/src/inputs/upload/crop-session.d.ts.map +0 -1
- package/dist/src/inputs/upload/crop-session.js.map +0 -1
- package/dist/src/layout/components/site/header_state.d.ts.map +0 -1
- package/dist/src/layout/components/site/header_state.js.map +0 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
@use "@trebired/bundler/namespace" as ns;
|
|
2
|
+
|
|
3
|
+
#{ns.class("site-link")} {
|
|
4
|
+
width: fit-content;
|
|
5
|
+
color: var(#{ns.css-var("shell-link-color")}, currentColor);
|
|
6
|
+
text-decoration-line: var(#{ns.css-var("shell-link-decoration-line")}, none);
|
|
7
|
+
transition:
|
|
8
|
+
color var(#{ns.css-var("tone-change")}),
|
|
9
|
+
background-color var(#{ns.css-var("transition-fast")}, 180ms) var(#{ns.css-var("transition-easing")}, ease);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
#{ns.class("site-link--active")} {
|
|
13
|
+
color: var(#{ns.css-var("shell-link-active-color")}, var(#{ns.css-var("text")}, currentColor));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#{ns.class("site-link")}:hover,
|
|
17
|
+
|
|
18
|
+
#{ns.class("site-link")}:focus-visible {
|
|
19
|
+
color: var(#{ns.css-var("shell-link-hover-color")}, var(#{ns.css-var("text")}, currentColor));
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
#{ns.class("site-link-label")} {
|
|
23
|
+
display: inline-block;
|
|
24
|
+
position: relative;
|
|
25
|
+
color: color-mix(in srgb, currentColor 78%, transparent);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
#{ns.class("site-link")}:hover #{ns.class("site-link-label")},
|
|
29
|
+
|
|
30
|
+
#{ns.class("site-link")}:focus-visible #{ns.class("site-link-label")},
|
|
31
|
+
|
|
32
|
+
#{ns.class("site-link--active")} #{ns.class("site-link-label")} {
|
|
33
|
+
color: currentColor;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
#{ns.class("site-link-label")}::after {
|
|
37
|
+
position: absolute;
|
|
38
|
+
inset-inline: 0;
|
|
39
|
+
bottom: var(#{ns.css-var("shell-link-underline-offset")}, -0.35rem);
|
|
40
|
+
height: var(#{ns.css-var("shell-link-underline-radius")}, 0.3rem);
|
|
41
|
+
border-block-end-style: solid;
|
|
42
|
+
border-block-end-width: var(#{ns.css-var("shell-link-underline-height")}, 1px);
|
|
43
|
+
border-block-end-color: var(#{ns.css-var("shell-link-underline-hover-color")}, currentColor);
|
|
44
|
+
border-end-end-radius: var(#{ns.css-var("shell-link-underline-radius")}, 0.3rem);
|
|
45
|
+
border-end-start-radius: var(#{ns.css-var("shell-link-underline-radius")}, 0.3rem);
|
|
46
|
+
clip-path: inset(0 100% 0 0);
|
|
47
|
+
content: "";
|
|
48
|
+
transition: clip-path var(#{ns.css-var("shell-link-underline-duration")}, 0.3s) ease;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
#{ns.class("site-link")}:hover #{ns.class("site-link-label")}::after,
|
|
52
|
+
|
|
53
|
+
#{ns.class("site-link")}:focus-visible #{ns.class("site-link-label")}::after,
|
|
54
|
+
|
|
55
|
+
#{ns.class("site-link--active")} #{ns.class("site-link-label")}::after {
|
|
56
|
+
clip-path: inset(0 0 0 0);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
#{ns.class("site-link--active")} #{ns.class("site-link-label")}::after {
|
|
60
|
+
border-block-end-color: var(#{ns.css-var("shell-link-underline-color")}, currentColor);
|
|
61
|
+
}
|
|
@@ -7,7 +7,8 @@ type CarouselState = {
|
|
|
7
7
|
showPrevious: () => void;
|
|
8
8
|
};
|
|
9
9
|
declare function prefersReducedMotion(): boolean;
|
|
10
|
+
declare function useMotionPreference(): boolean;
|
|
10
11
|
declare function useCarouselState(length: number, intervalMs: number): CarouselState;
|
|
11
|
-
export { prefersReducedMotion, useCarouselState };
|
|
12
|
+
export { prefersReducedMotion, useCarouselState, useMotionPreference };
|
|
12
13
|
export type { CarouselState };
|
|
13
14
|
//# sourceMappingURL=carousel-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel-state.d.ts","sourceRoot":"","sources":["../../../src/media/carousel-state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"carousel-state.d.ts","sourceRoot":"","sources":["../../../src/media/carousel-state.ts"],"names":[],"mappings":"AAGA,KAAK,aAAa,GAAG;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,IAAI,CAAC;CAC1B,CAAC;AAEF,iBAAS,oBAAoB,IAAI,OAAO,CAMvC;AAED,iBAAS,mBAAmB,IAAI,OAAO,CAWtC;AAED,iBAAS,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAgC3E;AAED,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;AACvE,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1,17 +1,27 @@
|
|
|
1
1
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
|
+
import { A11Y_CHANGE_EVENT, motionReduced } from "./../a11y/attributes.js";
|
|
2
3
|
function prefersReducedMotion() {
|
|
3
|
-
if (typeof window === "undefined" || typeof window.matchMedia !== "function")
|
|
4
|
-
return false;
|
|
5
4
|
try {
|
|
6
|
-
return
|
|
5
|
+
return motionReduced();
|
|
7
6
|
}
|
|
8
7
|
catch {
|
|
9
8
|
return false;
|
|
10
9
|
}
|
|
11
10
|
}
|
|
11
|
+
function useMotionPreference() {
|
|
12
|
+
const [reduced, setReduced] = useState(prefersReducedMotion);
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
const sync = () => setReduced(prefersReducedMotion());
|
|
15
|
+
sync();
|
|
16
|
+
document.addEventListener(A11Y_CHANGE_EVENT, sync);
|
|
17
|
+
return () => document.removeEventListener(A11Y_CHANGE_EVENT, sync);
|
|
18
|
+
}, []);
|
|
19
|
+
return reduced;
|
|
20
|
+
}
|
|
12
21
|
function useCarouselState(length, intervalMs) {
|
|
13
22
|
const [activeIndex, setActiveIndex] = useState(0);
|
|
14
23
|
const [paused, setPaused] = useState(false);
|
|
24
|
+
const reducedMotion = useMotionPreference();
|
|
15
25
|
const timer = useRef(undefined);
|
|
16
26
|
const showNext = useCallback(() => {
|
|
17
27
|
setActiveIndex((current) => (length ? (current + 1) % length : 0));
|
|
@@ -23,11 +33,11 @@ function useCarouselState(length, intervalMs) {
|
|
|
23
33
|
setActiveIndex(() => Math.min(Math.max(index, 0), Math.max(length - 1, 0)));
|
|
24
34
|
}, [length]);
|
|
25
35
|
useEffect(() => {
|
|
26
|
-
if (paused || length < 2 || intervalMs <= 0 ||
|
|
36
|
+
if (paused || length < 2 || intervalMs <= 0 || reducedMotion)
|
|
27
37
|
return undefined;
|
|
28
38
|
timer.current = window.setInterval(showNext, intervalMs);
|
|
29
39
|
return () => window.clearInterval(timer.current);
|
|
30
|
-
}, [activeIndex, intervalMs, length, paused, showNext]);
|
|
40
|
+
}, [activeIndex, intervalMs, length, paused, reducedMotion, showNext]);
|
|
31
41
|
return {
|
|
32
42
|
activeIndex: Math.min(activeIndex, Math.max(length - 1, 0)),
|
|
33
43
|
onEnter: () => setPaused(true),
|
|
@@ -37,5 +47,5 @@ function useCarouselState(length, intervalMs) {
|
|
|
37
47
|
showPrevious,
|
|
38
48
|
};
|
|
39
49
|
}
|
|
40
|
-
export { prefersReducedMotion, useCarouselState };
|
|
50
|
+
export { prefersReducedMotion, useCarouselState, useMotionPreference };
|
|
41
51
|
//# sourceMappingURL=carousel-state.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carousel-state.js","sourceRoot":"","sources":["../../../src/media/carousel-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"carousel-state.js","sourceRoot":"","sources":["../../../src/media/carousel-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
@use "@trebired/bundler/namespace" as ns;
|
|
2
|
+
@use "../../a11y/styles/_motion.scss" as motion;
|
|
2
3
|
|
|
3
4
|
$bottom: ns.modifier("carousel", "controls-bottom");
|
|
4
5
|
|
|
@@ -131,7 +132,7 @@ $bottom: ns.modifier("carousel", "controls-bottom");
|
|
|
131
132
|
background: oklch(100% 0 0 / 100%);
|
|
132
133
|
}
|
|
133
134
|
|
|
134
|
-
@
|
|
135
|
+
@include motion.reduced-motion {
|
|
135
136
|
#{ns.class("carousel-slide")} {
|
|
136
137
|
transition: none;
|
|
137
138
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type FrontendMoneyRound = "down" | "near" | "up";
|
|
2
|
+
type FrontendMoneyRuntimeConfig = {
|
|
3
|
+
base: string;
|
|
4
|
+
locales: Record<string, string>;
|
|
5
|
+
rates: Record<string, number>;
|
|
6
|
+
steps: Record<string, number>;
|
|
7
|
+
};
|
|
8
|
+
declare const MONEY_CONFIG_ATTR: `data-${string}`;
|
|
9
|
+
declare const DEFAULT_MONEY_BASE = "CZK";
|
|
10
|
+
declare const DEFAULT_MONEY_LOCALES: Record<string, string>;
|
|
11
|
+
declare function configureFrontendMoney(value: unknown): FrontendMoneyRuntimeConfig;
|
|
12
|
+
declare function getFrontendMoney(): FrontendMoneyRuntimeConfig;
|
|
13
|
+
export { configureFrontendMoney, DEFAULT_MONEY_BASE, DEFAULT_MONEY_LOCALES, getFrontendMoney, MONEY_CONFIG_ATTR, };
|
|
14
|
+
export type { FrontendMoneyRound, FrontendMoneyRuntimeConfig };
|
|
15
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/money/config.ts"],"names":[],"mappings":"AAEA,KAAK,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;AAEjD,KAAK,0BAA0B,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,CAAC;AAEF,QAAA,MAAM,iBAAiB,kBAAmC,CAAC;AAE3D,QAAA,MAAM,kBAAkB,QAAQ,CAAC;AAEjC,QAAA,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQjD,CAAC;AA0CF,iBAAS,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,0BAA0B,CAG1E;AAaD,iBAAS,gBAAgB,IAAI,0BAA0B,CAKtD;AAED,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,GAClB,CAAC;AACF,YAAY,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { frontendDataAttr } from "./../namespace/index.js";
|
|
2
|
+
const MONEY_CONFIG_ATTR = frontendDataAttr("money-config");
|
|
3
|
+
const DEFAULT_MONEY_BASE = "CZK";
|
|
4
|
+
const DEFAULT_MONEY_LOCALES = {
|
|
5
|
+
cs: "CZK",
|
|
6
|
+
de: "EUR",
|
|
7
|
+
en: "EUR",
|
|
8
|
+
hu: "HUF",
|
|
9
|
+
pl: "PLN",
|
|
10
|
+
sk: "EUR",
|
|
11
|
+
uk: "UAH",
|
|
12
|
+
};
|
|
13
|
+
const EMPTY = {
|
|
14
|
+
base: DEFAULT_MONEY_BASE,
|
|
15
|
+
locales: DEFAULT_MONEY_LOCALES,
|
|
16
|
+
rates: {},
|
|
17
|
+
steps: {},
|
|
18
|
+
};
|
|
19
|
+
let configured = null;
|
|
20
|
+
function numbersOf(value) {
|
|
21
|
+
if (!value || typeof value !== "object")
|
|
22
|
+
return {};
|
|
23
|
+
const out = {};
|
|
24
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
25
|
+
const amount = Number(entry);
|
|
26
|
+
if (Number.isFinite(amount) && amount > 0)
|
|
27
|
+
out[key.trim().toUpperCase()] = amount;
|
|
28
|
+
}
|
|
29
|
+
return out;
|
|
30
|
+
}
|
|
31
|
+
function localesOf(value) {
|
|
32
|
+
if (!value || typeof value !== "object")
|
|
33
|
+
return DEFAULT_MONEY_LOCALES;
|
|
34
|
+
const out = {};
|
|
35
|
+
for (const [key, entry] of Object.entries(value)) {
|
|
36
|
+
const code = String(entry || "").trim().toUpperCase();
|
|
37
|
+
if (code)
|
|
38
|
+
out[key.trim().toLowerCase()] = code;
|
|
39
|
+
}
|
|
40
|
+
return Object.keys(out).length ? out : DEFAULT_MONEY_LOCALES;
|
|
41
|
+
}
|
|
42
|
+
function normalize(value) {
|
|
43
|
+
if (!value || typeof value !== "object")
|
|
44
|
+
return EMPTY;
|
|
45
|
+
const source = value;
|
|
46
|
+
return {
|
|
47
|
+
base: String(source.base || DEFAULT_MONEY_BASE).trim().toUpperCase(),
|
|
48
|
+
locales: localesOf(source.locales),
|
|
49
|
+
rates: numbersOf(source.rates),
|
|
50
|
+
steps: numbersOf(source.steps),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
function configureFrontendMoney(value) {
|
|
54
|
+
configured = normalize(value);
|
|
55
|
+
return configured;
|
|
56
|
+
}
|
|
57
|
+
function readDocumentMoney() {
|
|
58
|
+
if (typeof document === "undefined")
|
|
59
|
+
return null;
|
|
60
|
+
const raw = document.documentElement.getAttribute(MONEY_CONFIG_ATTR);
|
|
61
|
+
if (!raw)
|
|
62
|
+
return null;
|
|
63
|
+
try {
|
|
64
|
+
return normalize(JSON.parse(raw));
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
function getFrontendMoney() {
|
|
71
|
+
if (configured)
|
|
72
|
+
return configured;
|
|
73
|
+
const fromDocument = readDocumentMoney();
|
|
74
|
+
if (fromDocument)
|
|
75
|
+
configured = fromDocument;
|
|
76
|
+
return configured || EMPTY;
|
|
77
|
+
}
|
|
78
|
+
export { configureFrontendMoney, DEFAULT_MONEY_BASE, DEFAULT_MONEY_LOCALES, getFrontendMoney, MONEY_CONFIG_ATTR, };
|
|
79
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/money/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type FrontendMoneyRound } from "./config.js";
|
|
2
|
+
type MoneyOptions = {
|
|
3
|
+
currency?: string;
|
|
4
|
+
round?: FrontendMoneyRound;
|
|
5
|
+
step?: number;
|
|
6
|
+
};
|
|
7
|
+
declare function moneyCurrencyFor(lang: string): string;
|
|
8
|
+
declare function convertMoney(amount: number, lang: string, options?: MoneyOptions): number;
|
|
9
|
+
declare function formatMoney(amount: number, lang: string, options?: MoneyOptions): string;
|
|
10
|
+
export { convertMoney, formatMoney, moneyCurrencyFor };
|
|
11
|
+
export type { MoneyOptions };
|
|
12
|
+
//# sourceMappingURL=format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/money/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAExE,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,iBAAS,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAI9C;AA6BD,iBAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,MAAM,CAOtF;AAOD,iBAAS,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,MAAM,CAarF;AAED,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC;AACvD,YAAY,EAAE,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { getFrontendMoney } from "./config.js";
|
|
2
|
+
function moneyCurrencyFor(lang) {
|
|
3
|
+
const config = getFrontendMoney();
|
|
4
|
+
const code = config.locales[String(lang || "").trim().toLowerCase()];
|
|
5
|
+
return code || config.base;
|
|
6
|
+
}
|
|
7
|
+
function moneyRateFor(currency) {
|
|
8
|
+
const config = getFrontendMoney();
|
|
9
|
+
if (currency === config.base)
|
|
10
|
+
return 1;
|
|
11
|
+
return config.rates[currency] || 0;
|
|
12
|
+
}
|
|
13
|
+
function defaultStep(amount) {
|
|
14
|
+
const size = Math.abs(amount);
|
|
15
|
+
if (size < 20)
|
|
16
|
+
return 1;
|
|
17
|
+
const digits = Math.floor(Math.log10(size)) + 1;
|
|
18
|
+
return 10 ** Math.max(0, digits - 2);
|
|
19
|
+
}
|
|
20
|
+
function stepFor(currency, amount, options) {
|
|
21
|
+
if (options.step && options.step > 0)
|
|
22
|
+
return options.step;
|
|
23
|
+
const configured = getFrontendMoney().steps[currency];
|
|
24
|
+
if (configured && configured > 0)
|
|
25
|
+
return configured;
|
|
26
|
+
return defaultStep(amount);
|
|
27
|
+
}
|
|
28
|
+
function roundTo(amount, step, round) {
|
|
29
|
+
const scaled = amount / step;
|
|
30
|
+
if (round === "down")
|
|
31
|
+
return Math.floor(scaled) * step;
|
|
32
|
+
if (round === "up")
|
|
33
|
+
return Math.ceil(scaled) * step;
|
|
34
|
+
return Math.round(scaled) * step;
|
|
35
|
+
}
|
|
36
|
+
function convertMoney(amount, lang, options = {}) {
|
|
37
|
+
const currency = options.currency || moneyCurrencyFor(lang);
|
|
38
|
+
const rate = moneyRateFor(currency);
|
|
39
|
+
if (!rate)
|
|
40
|
+
return amount;
|
|
41
|
+
if (rate === 1)
|
|
42
|
+
return amount;
|
|
43
|
+
const converted = amount * rate;
|
|
44
|
+
return roundTo(converted, stepFor(currency, converted, options), options.round || "near");
|
|
45
|
+
}
|
|
46
|
+
function moneyCurrencyOf(lang, options) {
|
|
47
|
+
const wanted = options.currency || moneyCurrencyFor(lang);
|
|
48
|
+
return moneyRateFor(wanted) ? wanted : getFrontendMoney().base;
|
|
49
|
+
}
|
|
50
|
+
function formatMoney(amount, lang, options = {}) {
|
|
51
|
+
const currency = moneyCurrencyOf(lang, options);
|
|
52
|
+
const value = convertMoney(amount, lang, { ...options, currency });
|
|
53
|
+
const locale = String(lang || "").trim() || undefined;
|
|
54
|
+
try {
|
|
55
|
+
return new Intl.NumberFormat(locale, {
|
|
56
|
+
currency,
|
|
57
|
+
maximumFractionDigits: 0,
|
|
58
|
+
style: "currency",
|
|
59
|
+
}).format(value);
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
return `${value.toLocaleString(locale)} ${currency}`;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export { convertMoney, formatMoney, moneyCurrencyFor };
|
|
66
|
+
//# sourceMappingURL=format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/money/format.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { configureFrontendMoney, DEFAULT_MONEY_BASE, DEFAULT_MONEY_LOCALES, getFrontendMoney, MONEY_CONFIG_ATTR, } from "./config.js";
|
|
2
|
+
export type { FrontendMoneyRound, FrontendMoneyRuntimeConfig } from "./config.js";
|
|
3
|
+
export { convertMoney, formatMoney, moneyCurrencyFor } from "./format.js";
|
|
4
|
+
export type { MoneyOptions } from "./format.js";
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/money/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC1E,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/money/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
declare const ECB_DAILY_URL = "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml";
|
|
2
|
+
type MoneyRatesResult = {
|
|
3
|
+
base: string;
|
|
4
|
+
date: string;
|
|
5
|
+
rates: Record<string, number>;
|
|
6
|
+
source: string;
|
|
7
|
+
};
|
|
8
|
+
type MoneyRatesOptions = {
|
|
9
|
+
base?: string;
|
|
10
|
+
currencies: string[];
|
|
11
|
+
signal?: AbortSignal;
|
|
12
|
+
url?: string;
|
|
13
|
+
};
|
|
14
|
+
declare function fetchMoneyRates(options: MoneyRatesOptions): Promise<MoneyRatesResult>;
|
|
15
|
+
export { ECB_DAILY_URL, fetchMoneyRates };
|
|
16
|
+
export type { MoneyRatesOptions, MoneyRatesResult };
|
|
17
|
+
//# sourceMappingURL=rates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rates.d.ts","sourceRoot":"","sources":["../../../src/money/rates.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,aAAa,kEAAkE,CAAC;AAEtF,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AA+BF,iBAAe,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAapF;AAED,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC;AAC1C,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
const ECB_DAILY_URL = "https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml";
|
|
2
|
+
function parseEuroRates(xml) {
|
|
3
|
+
const rates = { EUR: 1 };
|
|
4
|
+
const pattern = /currency=['"]([A-Z]{3})['"]\s+rate=['"]([\d.]+)['"]/gu;
|
|
5
|
+
for (const match of xml.matchAll(pattern)) {
|
|
6
|
+
const amount = Number(match[2]);
|
|
7
|
+
if (Number.isFinite(amount) && amount > 0)
|
|
8
|
+
rates[match[1]] = amount;
|
|
9
|
+
}
|
|
10
|
+
return rates;
|
|
11
|
+
}
|
|
12
|
+
function parseRatesDate(xml) {
|
|
13
|
+
const match = /time=['"](\d{4}-\d{2}-\d{2})['"]/u.exec(xml);
|
|
14
|
+
return match ? match[1] : "";
|
|
15
|
+
}
|
|
16
|
+
function ratesAgainst(base, euro, currencies) {
|
|
17
|
+
const baseRate = euro[base];
|
|
18
|
+
if (!baseRate)
|
|
19
|
+
throw new Error(`the reference feed does not quote ${base}`);
|
|
20
|
+
const rates = {};
|
|
21
|
+
for (const currency of currencies) {
|
|
22
|
+
const code = currency.trim().toUpperCase();
|
|
23
|
+
if (code === base)
|
|
24
|
+
continue;
|
|
25
|
+
const quoted = euro[code];
|
|
26
|
+
if (!quoted)
|
|
27
|
+
throw new Error(`the reference feed does not quote ${code}`);
|
|
28
|
+
rates[code] = quoted / baseRate;
|
|
29
|
+
}
|
|
30
|
+
return rates;
|
|
31
|
+
}
|
|
32
|
+
async function fetchMoneyRates(options) {
|
|
33
|
+
const base = String(options.base || "CZK").trim().toUpperCase();
|
|
34
|
+
const url = options.url || ECB_DAILY_URL;
|
|
35
|
+
const response = await fetch(url, options.signal ? { signal: options.signal } : {});
|
|
36
|
+
if (!response.ok)
|
|
37
|
+
throw new Error(`${url} answered ${response.status}`);
|
|
38
|
+
const xml = await response.text();
|
|
39
|
+
const euro = parseEuroRates(xml);
|
|
40
|
+
return {
|
|
41
|
+
base,
|
|
42
|
+
date: parseRatesDate(xml),
|
|
43
|
+
rates: ratesAgainst(base, euro, options.currencies),
|
|
44
|
+
source: url,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export { ECB_DAILY_URL, fetchMoneyRates };
|
|
48
|
+
//# sourceMappingURL=rates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rates.js","sourceRoot":"","sources":["../../../src/money/rates.ts"],"names":[],"mappings":"AAAA,MAAM,aAAa,GAAG,+DAA+D,CAAC;AAgBtF,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,KAAK,GAA2B,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,uDAAuD,CAAC;IACxE,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,GAAG,MAAM,CAAC;IAChF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,KAAK,GAAG,mCAAmC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5D,OAAO,KAAK,CAAC,CAAC,CAAE,KAAK,CAAC,CAAC,CAAY,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3C,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,IAA4B,EAAE,UAAoB;IACpF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;IAC5E,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,IAAI,IAAI,KAAK,IAAI;YAAE,SAAS;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,EAAE,CAAC,CAAC;QAC1E,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,QAAQ,CAAC;IAClC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,OAA0B;IACvD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAChE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,aAAa,CAAC;IACzC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACpF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,aAAa,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,cAAc,CAAC,GAAG,CAAC;QACzB,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC;QACnD,MAAM,EAAE,GAAG;KACZ,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -13,6 +13,7 @@ declare function frontendDataSelector(name: string, value?: string | number | bo
|
|
|
13
13
|
declare function frontendCssVar(name: string): FrontendCssVarName;
|
|
14
14
|
declare function frontendCssVarRef(name: string, fallback?: string): string;
|
|
15
15
|
declare function frontendEventName(name: string): string;
|
|
16
|
+
declare function frontendMarkerName(name: string): string;
|
|
16
17
|
declare function frontendToken(name: string): string;
|
|
17
|
-
export { FRONTEND_PREFIX, frontendClassName, frontendClassNames, frontendCssVar, frontendCssVarRef, frontendDataAttr, frontendDataAttrs, frontendDataSelector, frontendElementClass, frontendEventName, frontendModifierClass, frontendToken, };
|
|
18
|
+
export { FRONTEND_PREFIX, frontendClassName, frontendClassNames, frontendCssVar, frontendCssVarRef, frontendDataAttr, frontendDataAttrs, frontendDataSelector, frontendElementClass, frontendEventName, frontendMarkerName, frontendModifierClass, frontendToken, };
|
|
18
19
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/namespace/index.ts"],"names":[],"mappings":"AAeA,KAAK,sBAAsB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AACxD,KAAK,kBAAkB,GAAG,KAAK,MAAM,EAAE,CAAC;AACxC,KAAK,oBAAoB,GAAG,QAAQ,MAAM,EAAE,CAAC;AAC7C,KAAK,iBAAiB,GAAG,MAAM,CAAC,oBAAoB,EAAE,sBAAsB,GAAC,IAAI,GAAC,SAAS,CAAC,CAAC;AAE7F,QAAA,MAAM,eAAe,QAAmB,CAAC;AAEzC,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,iBAAS,kBAAkB,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD;AAED,iBAAS,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,iBAAS,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAE5D;AAED,iBAAS,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAC,IAAI,GAAC,SAAS,CAAC,GAAG,iBAAiB,CAE1G;AAED,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAErF;AAED,iBAAS,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAExD;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,GACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/namespace/index.ts"],"names":[],"mappings":"AAeA,KAAK,sBAAsB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AACxD,KAAK,kBAAkB,GAAG,KAAK,MAAM,EAAE,CAAC;AACxC,KAAK,oBAAoB,GAAG,QAAQ,MAAM,EAAE,CAAC;AAC7C,KAAK,iBAAiB,GAAG,MAAM,CAAC,oBAAoB,EAAE,sBAAsB,GAAC,IAAI,GAAC,SAAS,CAAC,CAAC;AAE7F,QAAA,MAAM,eAAe,QAAmB,CAAC;AAEzC,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iBAAS,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,iBAAS,kBAAkB,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAEtD;AAED,iBAAS,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,iBAAS,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAE5D;AAED,iBAAS,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,GAAC,IAAI,GAAC,SAAS,CAAC,GAAG,iBAAiB,CAE1G;AAED,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAErF;AAED,iBAAS,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAExD;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAElE;AAED,iBAAS,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIhD;AAED,iBAAS,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,GACd,CAAC"}
|
package/dist/namespace/index.js
CHANGED
|
@@ -31,8 +31,14 @@ function frontendCssVarRef(name, fallback) {
|
|
|
31
31
|
function frontendEventName(name) {
|
|
32
32
|
return eventName(name);
|
|
33
33
|
}
|
|
34
|
+
function frontendMarkerName(name) {
|
|
35
|
+
const marker = String(name || "").trim();
|
|
36
|
+
if (!marker)
|
|
37
|
+
throw new Error("marker name must be a non-empty string");
|
|
38
|
+
return `${FRONTEND_PREFIX}:${marker}`;
|
|
39
|
+
}
|
|
34
40
|
function frontendToken(name) {
|
|
35
41
|
return token(name);
|
|
36
42
|
}
|
|
37
|
-
export { FRONTEND_PREFIX, frontendClassName, frontendClassNames, frontendCssVar, frontendCssVarRef, frontendDataAttr, frontendDataAttrs, frontendDataSelector, frontendElementClass, frontendEventName, frontendModifierClass, frontendToken, };
|
|
43
|
+
export { FRONTEND_PREFIX, frontendClassName, frontendClassNames, frontendCssVar, frontendCssVarRef, frontendDataAttr, frontendDataAttrs, frontendDataSelector, frontendElementClass, frontendEventName, frontendMarkerName, frontendModifierClass, frontendToken, };
|
|
38
44
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/namespace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,MAAM,EACN,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,aAAa,EACb,KAAK,GACN,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAOpD,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAEzC,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,OAAe;IAC1D,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAG,KAAe;IAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa,EAAE,QAAgB;IAC5D,OAAO,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,OAAO,QAAQ,CAAC,IAAI,CAAyB,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA4D;IACrF,OAAO,SAAS,CAAC,KAAK,CAAsB,CAAC;AAC/C,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,KAAiC;IAC3E,OAAO,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAuB,CAAC;AAClE,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,QAAiB;IACxD,OAAO,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,GACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/namespace/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,SAAS,EACT,MAAM,EACN,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,aAAa,EACb,KAAK,GACN,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAOpD,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAEzC,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,OAAe;IAC1D,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAG,KAAe;IAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa,EAAE,QAAgB;IAC5D,OAAO,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY;IACpC,OAAO,QAAQ,CAAC,IAAI,CAAyB,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA4D;IACrF,OAAO,SAAS,CAAC,KAAK,CAAsB,CAAC;AAC/C,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,KAAiC;IAC3E,OAAO,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,cAAc,CAAC,IAAY;IAClC,OAAO,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAuB,CAAC;AAClE,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,QAAiB;IACxD,OAAO,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY;IACrC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACvE,OAAO,GAAG,eAAe,IAAI,MAAM,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,qBAAqB,EACrB,aAAa,GACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AASvB,QAAA,MAAM,wBAAwB,QAA8D,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AASvB,QAAA,MAAM,wBAAwB,QAA8D,CAAC;AAG7F,QAAA,MAAM,sBAAsB,QAAwC,CAAC;AAErE,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;CACtB,CAAC;AAwDF,iBAAS,WAAW,CAAC,KAAK,EAAE,YAAY,QAcvC;AAED,iBAAS,WAAW,CAAC,gBAAgB,CAAC,EAAE,WAAW,GAAG,IAAI,WAWzD;AAYD,iBAAS,aAAa,CAAC,KAAK,EAAE,YAAY,QAGzC;AA8DD,iBAAS,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,EAAE,IAAI,GAAE,QAAmB,gBAiCjF;AAED,iBAAS,YAAY,CAAC,IAAI,GAAE,QAAmB,QAI9C;AAmBD,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,WAAW,EACX,WAAW,EACX,aAAa,GACd,CAAC;AACF,YAAY,EAAE,YAAY,EAAE,CAAC"}
|
package/dist/popover/index.js
CHANGED
|
@@ -3,6 +3,7 @@ import { moveLayerElementToTop, portalElement, promoteZIndex, } from "../layer/i
|
|
|
3
3
|
import { frontendDataAttr, frontendDataSelector } from "../namespace/index.js";
|
|
4
4
|
const POPOVER_BASE_Z_INDEX = 1040;
|
|
5
5
|
const POPOVER_TRIGGER_SELECTOR = `${frontendDataSelector("popover-trigger")}[aria-controls]`;
|
|
6
|
+
const POPOVER_AUTOFOCUS_ATTR = frontendDataAttr("popover-autofocus");
|
|
6
7
|
const POPOVER_CLOSE_SELECTOR = frontendDataSelector("popover-close");
|
|
7
8
|
const entries = new Map();
|
|
8
9
|
const cleanups = new WeakMap();
|
|
@@ -64,6 +65,9 @@ function showPopover(entry) {
|
|
|
64
65
|
entry.popover.setAttribute(frontendDataAttr("open"), "true");
|
|
65
66
|
setPopoverExpanded(entry, true);
|
|
66
67
|
openEntry = entry;
|
|
68
|
+
if (entry.popover.getAttribute(POPOVER_AUTOFOCUS_ATTR) === "true") {
|
|
69
|
+
window.requestAnimationFrame(() => focusFirstItem(entry));
|
|
70
|
+
}
|
|
67
71
|
}
|
|
68
72
|
function hidePopover(popoverOrTrigger) {
|
|
69
73
|
const entry = popoverOrTrigger
|
|
@@ -105,6 +109,58 @@ function bindPopoverClose(entry) {
|
|
|
105
109
|
entry.popover.addEventListener("click", onClick);
|
|
106
110
|
return () => entry.popover.removeEventListener("click", onClick);
|
|
107
111
|
}
|
|
112
|
+
const HOVER_CLOSE_MS = 180;
|
|
113
|
+
const FOCUSABLE = 'a[href],button:not([disabled]),[tabindex]:not([tabindex="-1"])';
|
|
114
|
+
function focusFirstItem(entry) {
|
|
115
|
+
const first = entry.popover.querySelector(FOCUSABLE);
|
|
116
|
+
if (first)
|
|
117
|
+
first.focus();
|
|
118
|
+
}
|
|
119
|
+
function bindPopoverKeys(entry) {
|
|
120
|
+
const onKeyDown = (event) => {
|
|
121
|
+
if (event.key !== "Enter" && event.key !== " ")
|
|
122
|
+
return;
|
|
123
|
+
event.preventDefault();
|
|
124
|
+
if (openEntry === entry) {
|
|
125
|
+
hidePopover(entry.popover);
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
showPopover(entry);
|
|
129
|
+
window.requestAnimationFrame(() => focusFirstItem(entry));
|
|
130
|
+
};
|
|
131
|
+
entry.trigger.addEventListener("keydown", onKeyDown);
|
|
132
|
+
return () => entry.trigger.removeEventListener("keydown", onKeyDown);
|
|
133
|
+
}
|
|
134
|
+
function bindPopoverHover(entry) {
|
|
135
|
+
if (!entry.hover)
|
|
136
|
+
return () => undefined;
|
|
137
|
+
if (typeof window === "undefined" || !window.matchMedia("(hover: hover)").matches)
|
|
138
|
+
return () => undefined;
|
|
139
|
+
let timer = 0;
|
|
140
|
+
const open = () => {
|
|
141
|
+
window.clearTimeout(timer);
|
|
142
|
+
if (openEntry !== entry)
|
|
143
|
+
showPopover(entry);
|
|
144
|
+
};
|
|
145
|
+
const close = () => {
|
|
146
|
+
window.clearTimeout(timer);
|
|
147
|
+
timer = window.setTimeout(() => {
|
|
148
|
+
if (openEntry === entry)
|
|
149
|
+
hidePopover(entry.popover);
|
|
150
|
+
}, HOVER_CLOSE_MS);
|
|
151
|
+
};
|
|
152
|
+
entry.trigger.addEventListener("pointerenter", open);
|
|
153
|
+
entry.trigger.addEventListener("pointerleave", close);
|
|
154
|
+
entry.popover.addEventListener("pointerenter", open);
|
|
155
|
+
entry.popover.addEventListener("pointerleave", close);
|
|
156
|
+
return () => {
|
|
157
|
+
window.clearTimeout(timer);
|
|
158
|
+
entry.trigger.removeEventListener("pointerenter", open);
|
|
159
|
+
entry.trigger.removeEventListener("pointerleave", close);
|
|
160
|
+
entry.popover.removeEventListener("pointerenter", open);
|
|
161
|
+
entry.popover.removeEventListener("pointerleave", close);
|
|
162
|
+
};
|
|
163
|
+
}
|
|
108
164
|
function bindPopoverTrigger(trigger, root = document) {
|
|
109
165
|
if (!(trigger instanceof HTMLElement))
|
|
110
166
|
return null;
|
|
@@ -130,8 +186,12 @@ function bindPopoverTrigger(trigger, root = document) {
|
|
|
130
186
|
};
|
|
131
187
|
trigger.addEventListener("click", onClick);
|
|
132
188
|
const closeCleanup = bindPopoverClose(entry);
|
|
189
|
+
const hoverCleanup = bindPopoverHover(entry);
|
|
190
|
+
const keyCleanup = bindPopoverKeys(entry);
|
|
133
191
|
cleanups.set(trigger, () => {
|
|
134
192
|
trigger.removeEventListener("click", onClick);
|
|
193
|
+
keyCleanup();
|
|
194
|
+
hoverCleanup();
|
|
135
195
|
closeCleanup();
|
|
136
196
|
});
|
|
137
197
|
entries.set(trigger, entry);
|