@beeq/core 1.8.0-beta.0 → 1.8.0-beta.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/dist/beeq/beeq.esm.js +43 -1
- package/dist/beeq/beeq.esm.js.map +1 -1
- package/dist/beeq/index.esm.js +64 -1
- package/dist/beeq/index.esm.js.map +1 -1
- package/dist/beeq/p-063a3968.entry.js +388 -0
- package/dist/beeq/{p-9acfedb8.entry.js.map → p-063a3968.entry.js.map} +1 -1
- package/dist/beeq/p-0979fdfd.entry.js +297 -0
- package/dist/beeq/{p-7f23cde7.entry.js.map → p-0979fdfd.entry.js.map} +1 -1
- package/dist/beeq/p-0ab0b58d.js +25 -1
- package/dist/beeq/p-0ab0b58d.js.map +1 -1
- package/dist/beeq/p-0c42c08a.js +1811 -0
- package/dist/beeq/p-0c42c08a.js.map +1 -0
- package/dist/beeq/p-0f48adcc.entry.js +117 -0
- package/dist/beeq/{p-9f40249f.entry.js.map → p-0f48adcc.entry.js.map} +1 -1
- package/dist/beeq/p-115ed5b2.js +25 -1
- package/dist/beeq/p-115ed5b2.js.map +1 -1
- package/dist/beeq/p-14b44a4b.entry.js +205 -0
- package/dist/beeq/{p-8059836c.entry.js.map → p-14b44a4b.entry.js.map} +1 -1
- package/dist/beeq/p-1715ac80.entry.js +274 -0
- package/dist/beeq/{p-eab59153.entry.js.map → p-1715ac80.entry.js.map} +1 -1
- package/dist/beeq/p-1c8b6eb4.js +12 -1
- package/dist/beeq/p-1c8b6eb4.js.map +1 -1
- package/dist/beeq/p-1f3a4359.js +11 -1
- package/dist/beeq/p-1f3a4359.js.map +1 -1
- package/dist/beeq/p-242ac28a.entry.js +145 -0
- package/dist/beeq/{p-90c5851d.entry.js.map → p-242ac28a.entry.js.map} +1 -1
- package/dist/beeq/p-297fb76b.entry.js +220 -0
- package/dist/beeq/{p-79b7547b.entry.js.map → p-297fb76b.entry.js.map} +1 -1
- package/dist/beeq/p-2bb65f53.entry.js +204 -0
- package/dist/beeq/{p-a8cb8989.entry.js.map → p-2bb65f53.entry.js.map} +1 -1
- package/dist/beeq/p-2e66fc4f.entry.js +434 -0
- package/dist/beeq/{p-ddb23180.entry.js.map → p-2e66fc4f.entry.js.map} +1 -1
- package/dist/beeq/p-36652891.entry.js +102 -0
- package/dist/beeq/{p-633319f3.entry.js.map → p-36652891.entry.js.map} +1 -1
- package/dist/beeq/p-38d4bd8a.js +1934 -1
- package/dist/beeq/p-38d4bd8a.js.map +1 -1
- package/dist/beeq/p-39b7c578.entry.js +84 -0
- package/dist/beeq/{p-94d62f1b.entry.js.map → p-39b7c578.entry.js.map} +1 -1
- package/dist/beeq/p-39d77ba6.entry.js +90 -0
- package/dist/beeq/{p-be664fb0.entry.js.map → p-39d77ba6.entry.js.map} +1 -1
- package/dist/beeq/p-3fd0d92d.js +1228 -1
- package/dist/beeq/p-3fd0d92d.js.map +1 -1
- package/dist/beeq/p-4688e046.js +16 -0
- package/dist/beeq/{p-aee056e5.js.map → p-4688e046.js.map} +1 -1
- package/dist/beeq/p-49249dda.entry.js +156 -0
- package/dist/beeq/{p-235328ee.entry.js.map → p-49249dda.entry.js.map} +1 -1
- package/dist/beeq/p-548b45b7.entry.js +104 -0
- package/dist/beeq/{p-ae8ffb81.entry.js.map → p-548b45b7.entry.js.map} +1 -1
- package/dist/beeq/p-57621be1.js +9 -1
- package/dist/beeq/p-57621be1.js.map +1 -1
- package/dist/beeq/p-57a55ac5.entry.js +261 -0
- package/dist/beeq/{p-52577f3a.entry.js.map → p-57a55ac5.entry.js.map} +1 -1
- package/dist/beeq/p-5e11b866.entry.js +102 -0
- package/dist/beeq/{p-b7281046.entry.js.map → p-5e11b866.entry.js.map} +1 -1
- package/dist/beeq/p-687da041.js +20 -1
- package/dist/beeq/p-687da041.js.map +1 -1
- package/dist/beeq/p-6a4e104b.entry.js +263 -0
- package/dist/beeq/{p-3aa41d80.entry.js.map → p-6a4e104b.entry.js.map} +1 -1
- package/dist/beeq/p-6a5a79a3.entry.js +184 -0
- package/dist/beeq/{p-606c080c.entry.js.map → p-6a5a79a3.entry.js.map} +1 -1
- package/dist/beeq/p-7f301da8.entry.js +508 -0
- package/dist/beeq/p-7f301da8.entry.js.map +1 -0
- package/dist/beeq/p-81f1c3ba.entry.js +121 -0
- package/dist/beeq/{p-c9c942e6.entry.js.map → p-81f1c3ba.entry.js.map} +1 -1
- package/dist/beeq/p-822773ae.entry.js +195 -0
- package/dist/beeq/{p-a7b0fd0b.entry.js.map → p-822773ae.entry.js.map} +1 -1
- package/dist/beeq/p-951ba558.js +64 -1
- package/dist/beeq/p-951ba558.js.map +1 -1
- package/dist/beeq/p-99829fc7.js +8 -1
- package/dist/beeq/p-99829fc7.js.map +1 -1
- package/dist/beeq/p-9990889d.entry.js +222 -0
- package/dist/beeq/{p-9cd26e8d.entry.js.map → p-9990889d.entry.js.map} +1 -1
- package/dist/beeq/p-a1b43de6.entry.js +248 -0
- package/dist/beeq/{p-4ba2bec7.entry.js.map → p-a1b43de6.entry.js.map} +1 -1
- package/dist/beeq/p-a5dc1c94.js +118 -1
- package/dist/beeq/p-a5dc1c94.js.map +1 -1
- package/dist/beeq/p-a6489187.entry.js +103 -0
- package/dist/beeq/{p-b90c6de9.entry.js.map → p-a6489187.entry.js.map} +1 -1
- package/dist/beeq/p-a8cad5ab.js +5 -1
- package/dist/beeq/p-a8cad5ab.js.map +1 -1
- package/dist/beeq/p-ac969486.entry.js +330 -0
- package/dist/beeq/{p-4739f5c3.entry.js.map → p-ac969486.entry.js.map} +1 -1
- package/dist/beeq/p-af062402.js +7 -1
- package/dist/beeq/p-af062402.js.map +1 -1
- package/dist/beeq/p-afc9fd80.entry.js +144 -0
- package/dist/beeq/{p-6e026fad.entry.js.map → p-afc9fd80.entry.js.map} +1 -1
- package/dist/beeq/p-bef53750.js +79 -0
- package/dist/beeq/p-bef53750.js.map +1 -0
- package/dist/beeq/p-bf2320dd.entry.js +329 -0
- package/dist/beeq/{p-e6382462.entry.js.map → p-bf2320dd.entry.js.map} +1 -1
- package/dist/beeq/p-c34e292e.entry.js +127 -0
- package/dist/beeq/{p-268dc1e3.entry.js.map → p-c34e292e.entry.js.map} +1 -1
- package/dist/beeq/p-d7a88b16.js +87 -1
- package/dist/beeq/p-d7a88b16.js.map +1 -1
- package/dist/beeq/p-db18eba1.entry.js +173 -0
- package/dist/beeq/{p-eddb77c7.entry.js.map → p-db18eba1.entry.js.map} +1 -1
- package/dist/beeq/p-dd950c12.entry.js +309 -0
- package/dist/beeq/{p-63ad9702.entry.js.map → p-dd950c12.entry.js.map} +1 -1
- package/dist/beeq/p-e301647a.entry.js +87 -0
- package/dist/beeq/{p-3b2ce34b.entry.js.map → p-e301647a.entry.js.map} +1 -1
- package/dist/beeq/p-e3aa2886.entry.js +203 -0
- package/dist/beeq/{p-a006be9e.entry.js.map → p-e3aa2886.entry.js.map} +1 -1
- package/dist/beeq/p-e41f07ae.entry.js +173 -0
- package/dist/beeq/{p-9c6c6646.entry.js.map → p-e41f07ae.entry.js.map} +1 -1
- package/dist/beeq/p-e88257a8.entry.js +259 -0
- package/dist/beeq/{p-d2bbae3b.entry.js.map → p-e88257a8.entry.js.map} +1 -1
- package/dist/beeq/p-e9a54b49.entry.js +145 -0
- package/dist/beeq/{p-96d7f361.entry.js.map → p-e9a54b49.entry.js.map} +1 -1
- package/dist/beeq/p-ecd27cf2.js +11 -1
- package/dist/beeq/p-ecd27cf2.js.map +1 -1
- package/dist/beeq/p-f77d9b8b.entry.js +144 -0
- package/dist/beeq/{p-41bac721.entry.js.map → p-f77d9b8b.entry.js.map} +1 -1
- package/dist/beeq/p-fd658de1.entry.js +135 -0
- package/dist/beeq/{p-255fcbe4.entry.js.map → p-fd658de1.entry.js.map} +1 -1
- package/dist/beeq/p-ffb48c40.entry.js +258 -0
- package/dist/beeq/{p-b9544567.entry.js.map → p-ffb48c40.entry.js.map} +1 -1
- package/dist/beeq/p-ffddc425.entry.js +149 -0
- package/dist/beeq/{p-571b40ff.entry.js.map → p-ffddc425.entry.js.map} +1 -1
- package/dist/cjs/app-globals-b11284b9.js.map +1 -1
- package/dist/cjs/assetsPath-3938a05d.js +78 -0
- package/dist/cjs/assetsPath-3938a05d.js.map +1 -0
- package/dist/cjs/beeq.cjs.js +1 -1
- package/dist/cjs/bq-accordion-group.cjs.entry.js +2 -2
- package/dist/cjs/bq-accordion.cjs.entry.js +2 -2
- package/dist/cjs/bq-alert.cjs.entry.js +2 -2
- package/dist/cjs/bq-avatar.cjs.entry.js +2 -2
- package/dist/cjs/bq-badge.cjs.entry.js +2 -2
- package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +3 -3
- package/dist/cjs/bq-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/bq-button_2.cjs.entry.js +3 -3
- package/dist/cjs/bq-card.cjs.entry.js +2 -2
- package/dist/cjs/bq-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/bq-date-picker.cjs.entry.js +3 -3
- package/dist/cjs/bq-dialog.cjs.entry.js +2 -2
- package/dist/cjs/bq-divider.cjs.entry.js +2 -2
- package/dist/cjs/bq-drawer.cjs.entry.js +3 -3
- package/dist/cjs/bq-dropdown_2.cjs.entry.js +1 -1
- package/dist/cjs/bq-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/bq-input.cjs.entry.js +3 -3
- package/dist/cjs/bq-notification.cjs.entry.js +2 -2
- package/dist/cjs/bq-option-group.cjs.entry.js +1 -1
- package/dist/cjs/bq-option-list_2.cjs.entry.js +2 -2
- package/dist/cjs/bq-option.cjs.entry.js +2 -2
- package/dist/cjs/bq-page-title.cjs.entry.js +2 -2
- package/dist/cjs/bq-progress.cjs.entry.js +2 -2
- package/dist/cjs/bq-radio-group.cjs.entry.js +2 -2
- package/dist/cjs/bq-radio.cjs.entry.js +1 -1
- package/dist/cjs/bq-select.cjs.entry.js +12 -12
- package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-side-menu-item.cjs.entry.js +2 -2
- package/dist/cjs/bq-side-menu.cjs.entry.js +2 -2
- package/dist/cjs/bq-slider.cjs.entry.js +2 -2
- package/dist/cjs/bq-spinner.cjs.entry.js +2 -2
- package/dist/cjs/bq-status.cjs.entry.js +2 -2
- package/dist/cjs/bq-step-item.cjs.entry.js +2 -2
- package/dist/cjs/bq-steps.cjs.entry.js +2 -2
- package/dist/cjs/bq-switch.cjs.entry.js +2 -2
- package/dist/cjs/bq-tab-group.cjs.entry.js +2 -2
- package/dist/cjs/bq-tab.cjs.entry.js +2 -2
- package/dist/cjs/bq-textarea.cjs.entry.js +2 -2
- package/dist/cjs/bq-toast.cjs.entry.js +2 -2
- package/dist/cjs/bq-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/{index-e6d59dbb.js → index-1d3aac65.js} +20 -2
- package/dist/cjs/index-1d3aac65.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/{isDefined-4f4a320b.js → isDefined-750bffc4.js} +2 -2
- package/dist/cjs/{isDefined-4f4a320b.js.map → isDefined-750bffc4.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
- package/dist/collection/components/select/bq-select.js +10 -10
- package/dist/collection/components/select/bq-select.js.map +1 -1
- package/dist/collection/components/select/scss/bq-select.css +1 -1
- package/dist/collection/shared/utils/assetsPath.js +52 -26
- package/dist/collection/shared/utils/assetsPath.js.map +1 -1
- package/dist/components/assetsPath.js +52 -26
- package/dist/components/assetsPath.js.map +1 -1
- package/dist/components/bq-drawer.js +1 -1
- package/dist/components/bq-select.js +10 -10
- package/dist/components/bq-select.js.map +1 -1
- package/dist/esm/app-globals-de5a646b.js.map +1 -1
- package/dist/esm/assetsPath-a1b58980.js +75 -0
- package/dist/esm/assetsPath-a1b58980.js.map +1 -0
- package/dist/esm/beeq.js +2 -2
- package/dist/esm/bq-accordion-group.entry.js +2 -2
- package/dist/esm/bq-accordion.entry.js +2 -2
- package/dist/esm/bq-alert.entry.js +2 -2
- package/dist/esm/bq-avatar.entry.js +2 -2
- package/dist/esm/bq-badge.entry.js +2 -2
- package/dist/esm/bq-breadcrumb-item.entry.js +3 -3
- package/dist/esm/bq-breadcrumb.entry.js +2 -2
- package/dist/esm/bq-button_2.entry.js +3 -3
- package/dist/esm/bq-card.entry.js +2 -2
- package/dist/esm/bq-checkbox.entry.js +2 -2
- package/dist/esm/bq-date-picker.entry.js +3 -3
- package/dist/esm/bq-dialog.entry.js +2 -2
- package/dist/esm/bq-divider.entry.js +2 -2
- package/dist/esm/bq-drawer.entry.js +3 -3
- package/dist/esm/bq-dropdown_2.entry.js +1 -1
- package/dist/esm/bq-empty-state.entry.js +2 -2
- package/dist/esm/bq-input.entry.js +3 -3
- package/dist/esm/bq-notification.entry.js +2 -2
- package/dist/esm/bq-option-group.entry.js +1 -1
- package/dist/esm/bq-option-list_2.entry.js +2 -2
- package/dist/esm/bq-option.entry.js +2 -2
- package/dist/esm/bq-page-title.entry.js +2 -2
- package/dist/esm/bq-progress.entry.js +2 -2
- package/dist/esm/bq-radio-group.entry.js +2 -2
- package/dist/esm/bq-radio.entry.js +1 -1
- package/dist/esm/bq-select.entry.js +13 -13
- package/dist/esm/bq-select.entry.js.map +1 -1
- package/dist/esm/bq-side-menu-item.entry.js +2 -2
- package/dist/esm/bq-side-menu.entry.js +2 -2
- package/dist/esm/bq-slider.entry.js +2 -2
- package/dist/esm/bq-spinner.entry.js +2 -2
- package/dist/esm/bq-status.entry.js +2 -2
- package/dist/esm/bq-step-item.entry.js +2 -2
- package/dist/esm/bq-steps.entry.js +2 -2
- package/dist/esm/bq-switch.entry.js +2 -2
- package/dist/esm/bq-tab-group.entry.js +2 -2
- package/dist/esm/bq-tab.entry.js +2 -2
- package/dist/esm/bq-textarea.entry.js +2 -2
- package/dist/esm/bq-toast.entry.js +2 -2
- package/dist/esm/bq-tooltip.entry.js +1 -1
- package/dist/esm/{index-efc1c2ef.js → index-f69556fe.js} +20 -2
- package/dist/esm/index-f69556fe.js.map +1 -0
- package/dist/esm/index.js +3 -3
- package/dist/esm/{isDefined-91ae4cd3.js → isDefined-170f3095.js} +2 -2
- package/dist/esm/{isDefined-91ae4cd3.js.map → isDefined-170f3095.js.map} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/hydrate/index.js +62 -36
- package/dist/hydrate/index.mjs +62 -36
- package/dist/stencil.config.js +4 -1
- package/dist/stencil.config.js.map +1 -1
- package/dist/types/home/workflows/workspace/packages/beeq/.stencil/packages/beeq/stencil.config.d.ts +2 -0
- package/dist/types/shared/utils/assetsPath.d.ts +18 -11
- package/package.json +1 -1
- package/dist/beeq/p-235328ee.entry.js +0 -6
- package/dist/beeq/p-255fcbe4.entry.js +0 -6
- package/dist/beeq/p-268dc1e3.entry.js +0 -6
- package/dist/beeq/p-3aa41d80.entry.js +0 -6
- package/dist/beeq/p-3b2ce34b.entry.js +0 -6
- package/dist/beeq/p-41bac721.entry.js +0 -6
- package/dist/beeq/p-4739f5c3.entry.js +0 -6
- package/dist/beeq/p-4ba2bec7.entry.js +0 -6
- package/dist/beeq/p-52577f3a.entry.js +0 -6
- package/dist/beeq/p-571b40ff.entry.js +0 -6
- package/dist/beeq/p-606c080c.entry.js +0 -6
- package/dist/beeq/p-633319f3.entry.js +0 -6
- package/dist/beeq/p-63ad9702.entry.js +0 -6
- package/dist/beeq/p-6e026fad.entry.js +0 -6
- package/dist/beeq/p-6edc8a33.js +0 -6
- package/dist/beeq/p-6edc8a33.js.map +0 -1
- package/dist/beeq/p-76e714c6.js +0 -7
- package/dist/beeq/p-76e714c6.js.map +0 -1
- package/dist/beeq/p-79b7547b.entry.js +0 -6
- package/dist/beeq/p-7f23cde7.entry.js +0 -6
- package/dist/beeq/p-8059836c.entry.js +0 -6
- package/dist/beeq/p-8b7c7049.entry.js +0 -6
- package/dist/beeq/p-8b7c7049.entry.js.map +0 -1
- package/dist/beeq/p-90c5851d.entry.js +0 -6
- package/dist/beeq/p-94d62f1b.entry.js +0 -6
- package/dist/beeq/p-96d7f361.entry.js +0 -6
- package/dist/beeq/p-9acfedb8.entry.js +0 -6
- package/dist/beeq/p-9c6c6646.entry.js +0 -6
- package/dist/beeq/p-9cd26e8d.entry.js +0 -6
- package/dist/beeq/p-9f40249f.entry.js +0 -6
- package/dist/beeq/p-a006be9e.entry.js +0 -6
- package/dist/beeq/p-a7b0fd0b.entry.js +0 -6
- package/dist/beeq/p-a8cb8989.entry.js +0 -6
- package/dist/beeq/p-ae8ffb81.entry.js +0 -6
- package/dist/beeq/p-aee056e5.js +0 -6
- package/dist/beeq/p-b7281046.entry.js +0 -6
- package/dist/beeq/p-b90c6de9.entry.js +0 -6
- package/dist/beeq/p-b9544567.entry.js +0 -6
- package/dist/beeq/p-be664fb0.entry.js +0 -6
- package/dist/beeq/p-c9c942e6.entry.js +0 -6
- package/dist/beeq/p-d2bbae3b.entry.js +0 -6
- package/dist/beeq/p-ddb23180.entry.js +0 -6
- package/dist/beeq/p-e6382462.entry.js +0 -6
- package/dist/beeq/p-eab59153.entry.js +0 -6
- package/dist/beeq/p-eddb77c7.entry.js +0 -6
- package/dist/cjs/assetsPath-eac0a3bf.js +0 -52
- package/dist/cjs/assetsPath-eac0a3bf.js.map +0 -1
- package/dist/cjs/index-e6d59dbb.js.map +0 -1
- package/dist/esm/assetsPath-ae18c25e.js +0 -49
- package/dist/esm/assetsPath-ae18c25e.js.map +0 -1
- package/dist/esm/index-efc1c2ef.js.map +0 -1
- package/dist/types/Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System/packages/beeq/.stencil/packages/beeq/stencil.config.d.ts +0 -2
- /package/dist/types/{Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System → home/workflows/workspace}/packages/beeq/.stencil/tailwind.config.d.ts +0 -0
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by Endavans
|
|
3
|
+
* © https://beeq.design - Apache 2 License.
|
|
4
|
+
*/
|
|
5
|
+
import { r as a, c as r, h as e, a as t, g as n } from "./p-0c42c08a.js";
|
|
6
|
+
|
|
7
|
+
import "./p-bef53750.js";
|
|
8
|
+
|
|
9
|
+
import { d as b } from "./p-951ba558.js";
|
|
10
|
+
|
|
11
|
+
import { v as i } from "./p-687da041.js";
|
|
12
|
+
|
|
13
|
+
import { b as o } from "./p-d7a88b16.js";
|
|
14
|
+
|
|
15
|
+
import { l as q, e as s } from "./p-a5dc1c94.js";
|
|
16
|
+
|
|
17
|
+
import "./p-99829fc7.js";
|
|
18
|
+
|
|
19
|
+
const c = [ "error", "info", "neutral", "success", "warning" ];
|
|
20
|
+
|
|
21
|
+
const d = '::backdrop,:root{--bq-blue-100:#e7f0fd;--bq-blue-200:#d0e2fb;--bq-blue-300:#a1c5f7;--bq-blue-400:#73a8f3;--bq-blue-500:#448bef;--bq-blue-600:#156eeb;--bq-blue-700:#1158bc;--bq-blue-800:#0d428d;--bq-blue-900:#082c5e;--bq-blue-1000:#04162f;--bq-corai-100:#fff2f2;--bq-corai-200:#ffe6e6;--bq-corai-300:#ffccce;--bq-corai-400:#ffb3b5;--bq-corai-500:#ff999d;--bq-corai-600:#ff8084;--bq-corai-700:#cc666a;--bq-corai-800:#994d4f;--bq-corai-900:#663335;--bq-corai-1000:#331a1a;--bq-cyan-100:#e8f7fb;--bq-cyan-200:#d2f0f8;--bq-cyan-300:#a5e1f1;--bq-cyan-400:#78d1e9;--bq-cyan-500:#4bc2e2;--bq-cyan-600:#1eb3db;--bq-cyan-700:#188faf;--bq-cyan-800:#126b83;--bq-cyan-900:#0c4858;--bq-cyan-1000:#06242c;--bq-gold-100:#fbf4ec;--bq-gold-200:#f7e9da;--bq-gold-300:#f0d3b6;--bq-gold-400:#e8bc91;--bq-gold-500:#e1a66d;--bq-gold-600:#d99048;--bq-gold-700:#ae733a;--bq-gold-800:#82562b;--bq-gold-900:#573a1d;--bq-gold-1000:#2b1d0e;--bq-green-100:#e8f8ef;--bq-green-200:#d2f1e0;--bq-green-300:#a5e3c1;--bq-green-400:#78d5a1;--bq-green-500:#4bc782;--bq-green-600:#1eb963;--bq-green-700:#18944f;--bq-green-800:#126f3b;--bq-green-900:#0c4a28;--bq-green-1000:#062514;--bq-grey-100:#f1f2f4;--bq-grey-200:#e7e8eb;--bq-grey-300:#caccd2;--bq-grey-400:#a6aab3;--bq-grey-50:#f6f6f8;--bq-grey-500:#898e99;--bq-grey-600:#646a77;--bq-grey-700:#3f4350;--bq-grey-800:#2a2c35;--bq-grey-900:#1c1d23;--bq-grey-950:#15161a;--bq-grey-1000:#0d0e11;--bq-indigo-100:#edecfc;--bq-indigo-200:#dcdafa;--bq-indigo-300:#b9b5f5;--bq-indigo-400:#9590ef;--bq-indigo-500:#726bea;--bq-indigo-600:#4f46e5;--bq-indigo-700:#3f38b7;--bq-indigo-800:#2f2a89;--bq-indigo-900:#201c5c;--bq-indigo-1000:#100e2e;--bq-iris-100:#e9f0ff;--bq-iris-200:#d6e0ff;--bq-iris-300:#b2c0fe;--bq-iris-400:#8691f8;--bq-iris-500:#6061ee;--bq-iris-600:#4f46e5;--bq-iris-700:#413abd;--bq-iris-800:#332e95;--bq-iris-900:#26216d;--bq-iris-1000:#181545;--bq-lime-100:#f5fae8;--bq-lime-200:#ecf6d2;--bq-lime-300:#d9eda5;--bq-lime-400:#c5e379;--bq-lime-500:#b2da4c;--bq-lime-600:#9fd11f;--bq-lime-700:#7fa719;--bq-lime-800:#5f7d13;--bq-lime-900:#40540c;--bq-lime-1000:#202a06;--bq-magenta-100:#fce7f4;--bq-magenta-200:#f9cfea;--bq-magenta-300:#f39fd6;--bq-magenta-400:#ee6fbf;--bq-magenta-500:#e83fab;--bq-magenta-600:#de1395;--bq-magenta-700:#b20f77;--bq-magenta-800:#850c59;--bq-magenta-900:#58083c;--bq-magenta-1000:#2c041e;--bq-neutral-white:#fbfbfc;--bq-neutral-black:#060708;--bq-orange-100:#fbf0e9;--bq-orange-200:#f8e1d4;--bq-orange-300:#f1c2a8;--bq-orange-400:#eaa47d;--bq-orange-500:#e38551;--bq-orange-600:#dc6726;--bq-orange-700:#b0521e;--bq-orange-800:#843e17;--bq-orange-900:#58290f;--bq-orange-1000:#2c1508;--bq-purple-100:#efebf8;--bq-purple-200:#e0d7f2;--bq-purple-300:#c1afe5;--bq-purple-400:#a388d8;--bq-purple-500:#8460cb;--bq-purple-600:#6538be;--bq-purple-700:#512d98;--bq-purple-800:#3d2272;--bq-purple-900:#28164c;--bq-purple-1000:#140b26;--bq-red-100:#fce7ea;--bq-red-200:#f9d1d5;--bq-red-300:#f3a2ac;--bq-red-400:#ed7482;--bq-red-500:#e74559;--bq-red-600:#e1172f;--bq-red-700:#b41226;--bq-red-800:#870e1c;--bq-red-900:#5a0913;--bq-red-1000:#2d0509;--bq-sky-100:#eff4fb;--bq-sky-200:#dfeaf8;--bq-sky-300:#bfd5f1;--bq-sky-400:#9ec1e9;--bq-sky-500:#7eace2;--bq-sky-600:#5e97db;--bq-sky-700:#4b79af;--bq-sky-800:#385b83;--bq-sky-900:#263c58;--bq-sky-1000:#131e2c;--bq-teal-100:#e5f7f5;--bq-teal-200:#ccf0eb;--bq-teal-300:#99e1d8;--bq-teal-400:#66d2c4;--bq-teal-500:#33c3b1;--bq-teal-600:#00b49d;--bq-teal-700:#00907e;--bq-teal-800:#006c5e;--bq-teal-900:#00483f;--bq-teal-1000:#00241f;--bq-volcano-100:#feede7;--bq-volcano-200:#fddbd1;--bq-volcano-300:#fbb8a3;--bq-volcano-400:#fa9474;--bq-volcano-500:#f87146;--bq-volcano-600:#f64d18;--bq-volcano-700:#c53e13;--bq-volcano-800:#942e0e;--bq-volcano-900:#621f0a;--bq-volcano-1000:#310f05;--bq-yellow-100:#fefbe7;--bq-yellow-200:#fcf6d0;--bq-yellow-300:#faeea0;--bq-yellow-400:#f7e571;--bq-yellow-500:#f5dd41;--bq-yellow-600:#f2d412;--bq-yellow-700:#c2aa0e;--bq-yellow-800:#917f0b;--bq-yellow-900:#615507;--bq-yellow-1000:#302a04;--bq-endava-grey-50:#f7f7f8;--bq-endava-grey-100:#e4e6e7;--bq-endava-grey-200:#b5babe;--bq-endava-grey-300:#949ca1;--bq-endava-grey-400:#737d84;--bq-endava-grey-500:#525f67;--bq-endava-grey-600:#30404b;--bq-endava-grey-700:#2b3942;--bq-endava-grey-800:#263139;--bq-endava-grey-900:#192b37;--bq-endava-grey-950:#151b1e;--bq-endava-grey-1000:#0f1316;--bq-endava-neutral-white:#fafbfb;--bq-endava-neutral-black:#060708;--bq-endava-orange-100:#fef3f1;--bq-endava-orange-200:#fbd6d1;--bq-endava-orange-300:#fab7af;--bq-endava-orange-400:#fa988b;--bq-endava-orange-500:#fc7866;--bq-endava-orange-600:#ff5640;--bq-endava-orange-700:#ce4a39;--bq-endava-orange-800:#a03d30;--bq-endava-orange-900:#722e25;--bq-endava-orange-1000:#471e19}*,:after,:before{box-sizing:border-box}*{font:inherit;margin:0}ol[role=list],ul[role=list]{list-style-type:none}html{font-size:var(--bq-font-size--m)}html:focus-within{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bq-background--primary);color:var(--bq-text--primary);font-family:var(--bq-font-family);line-height:var(--bq-font-line-height--regular);min-height:100vh;text-rendering:optimizeSpeed}a:not([class]){text-decoration-skip-ink:auto}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto;transition-duration:.01ms!important}}:root{--bq-white:#fff;--bq-black:#060708;--bq-neutral-50:var(--bq-grey-50);--bq-neutral-100:var(--bq-grey-100);--bq-neutral-200:var(--bq-grey-200);--bq-neutral-300:var(--bq-grey-300);--bq-neutral-400:var(--bq-grey-400);--bq-neutral-500:var(--bq-grey-500);--bq-neutral-600:var(--bq-grey-600);--bq-neutral-700:var(--bq-grey-700);--bq-neutral-800:var(--bq-grey-800);--bq-neutral-900:var(--bq-grey-900);--bq-neutral-950:var(--bq-grey-950);--bq-neutral-1000:var(--bq-grey-1000);--bq-brand-light:var(--bq-iris-100);--bq-brand:var(--bq-iris-600);--bq-brand-dark:var(--bq-iris-1000);--bq-accent-light:var(--bq-purple-100);--bq-accent:var(--bq-purple-600);--bq-accent-dark:var(--bq-purple-1000);--bq-success-light:var(--bq-teal-100);--bq-success:var(--bq-teal-600);--bq-success-dark:var(--bq-teal-1000);--bq-danger-light:var(--bq-red-100);--bq-danger:var(--bq-red-600);--bq-danger-dark:var(--bq-red-1000);--bq-warning-light:var(--bq-gold-100);--bq-warning:var(--bq-gold-600);--bq-warning-dark:var(--bq-gold-1000);--bq-info-light:var(--bq-iris-100);--bq-info:var(--bq-iris-600);--bq-info-dark:var(--bq-iris-1000);--bq-focus:var(--bq-iris-600);--bq-data-01:var(--bq-brand);--bq-data-02:var(--bq-purple-600);--bq-data-03:var(--bq-magenta-600);--bq-data-04:var(--bq-cyan-600);--bq-data-05:var(--bq-teal-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-yellow-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-blue-600);--bq-data-10:var(--bq-grey-600);--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white);--bq-radius--none:0;--bq-radius--xs2:0.125rem;--bq-radius--xs:0.25rem;--bq-radius--s:0.5rem;--bq-radius--m:0.75rem;--bq-radius--l:1.5rem;--bq-radius--full:9999px;--bq-box-shadow--xs:0 2px 0 rgba(0,0,0,.016);--bq-box-shadow--s:0 8px 24px rgba(0,0,0,.04);--bq-box-shadow--m:0 10px 48px -16px rgba(0,0,0,.12);--bq-box-shadow--l:0 20px 58px -16px rgba(0,0,0,.16);--bq-font-family:"Outfit",sans-serif;--bq-font-size--xs:0.75rem;--bq-font-size--s:0.875rem;--bq-font-size--m:1rem;--bq-font-size--l:1.125rem;--bq-font-size--xl:1.5rem;--bq-font-size--xxl:2rem;--bq-font-size--xxl2:2.5rem;--bq-font-size--xxl3:3rem;--bq-font-size--xxl4:3.5rem;--bq-font-size--xxl5:4rem;--bq-font-weight--thin:100;--bq-font-weight--light:300;--bq-font-weight--regular:400;--bq-font-weight--medium:500;--bq-font-weight--semibold:600;--bq-font-weight--bold:700;--bq-font-line-height--small:1.2;--bq-font-line-height--regular:1.5;--bq-font-line-height--large:1.5;--bq-spacing-xs3:0.125rem;--bq-spacing-xs2:0.25rem;--bq-spacing-xs:0.5rem;--bq-spacing-s:0.75rem;--bq-spacing-m:1rem;--bq-spacing-l:1.5rem;--bq-spacing-xl:2rem;--bq-spacing-xxl:2.5rem;--bq-spacing-xxl2:3.5rem;--bq-spacing-xxl3:4rem;--bq-spacing-xxl4:4.5rem;--bq-stroke-s:1px;--bq-stroke-m:2px;--bq-stroke-l:3px}.beeq.light,.light,:root,[bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--alt:var(--bq-white);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-200);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-light);--bq-hover:#bcbfc5;--bq-active:#444546}.beeq.dark,.dark,[bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-950);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-brand);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-brand);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-brand);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-800);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-brand);--bq-ui--info-alt:var(--bq-brand-dark);--bq-hover:#444546;--bq-active:#1f2026}.endava,[bq-theme=endava]{--bq-font-family:"Poppins",sans-serif;--bq-white:#fafbfb;--bq-black:#030406;--bq-neutral-50:var(--bq-endava-grey-50);--bq-neutral-100:var(--bq-endava-grey-100);--bq-neutral-200:var(--bq-endava-grey-200);--bq-neutral-300:var(--bq-endava-grey-300);--bq-neutral-400:var(--bq-endava-grey-400);--bq-neutral-500:var(--bq-endava-grey-500);--bq-neutral-600:var(--bq-endava-grey-600);--bq-neutral-700:var(--bq-endava-grey-700);--bq-neutral-800:var(--bq-endava-grey-800);--bq-neutral-900:var(--bq-endava-grey-900);--bq-neutral-950:var(--bq-endava-grey-950);--bq-neutral-1000:var(--bq-endava-grey-1000);--bq-brand-light:var(--bq-endava-orange-100);--bq-brand:var(--bq-endava-orange-600);--bq-brand-dark:var(--bq-endava-orange-1000);--bq-accent-light:var(--bq-endava-orange-100);--bq-accent:var(--bq-endava-orange-600);--bq-accent-dark:var(--bq-endava-orange-1000);--bq-success-light:var(--bq-green-100);--bq-success:var(--bq-green-600);--bq-success-dark:var(--bq-green-1000);--bq-danger-light:var(--bq-corai-100);--bq-danger:var(--bq-corai-600);--bq-danger-dark:var(--bq-corai-1000);--bq-warning-light:var(--bq-yellow-100);--bq-warning:var(--bq-yellow-600);--bq-warning-dark:var(--bq-yellow-1000);--bq-info-light:var(--bq-blue-100);--bq-info:var(--bq-blue-600);--bq-info-dark:var(--bq-blue-1000);--bq-focus:var(--bq-endava-orange-600);--bq-data-01:var(--bq-brand);--bq-data-02:#af0cd8;--bq-data-03:#0ca8d8;--bq-data-04:var(--bq-teal-600);--bq-data-05:var(--bq-yellow-600);--bq-data-06:var(--bq-orange-600);--bq-data-07:var(--bq-blue-600);--bq-data-08:var(--bq-red-600);--bq-data-09:var(--bq-purple-600);--bq-data-10:#394b56;--bq-data-11:var(--bq-black);--bq-data-12:var(--bq-white)}.endava.light,[bq-theme=endava][bq-mode=light]{--bq-background--primary:var(--bq-white);--bq-background--secondary:var(--bq-neutral-100);--bq-background--tertiary:var(--bq-neutral-200);--bq-background--alt:var(--bq-neutral-300);--bq-background--inverse:var(--bq-neutral-900);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-800);--bq-icon--secondary:var(--bq-neutral-600);--bq-icon--inverse:var(--bq-neutral-50);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-200);--bq-stroke--secondary:var(--bq-neutral-600);--bq-stroke--tertiary:var(--bq-neutral-900);--bq-stroke--inverse:var(--bq-white);--bq-stroke--brand:var(--bq-brand);--bq-stroke--alt:var(--bq-neutral-50);--bq-stroke--brand-alt:var(--bq-brand-light);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-800);--bq-text--secondary:var(--bq-neutral-600);--bq-text--inverse:var(--bq-neutral-50);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-white);--bq-ui--secondary:var(--bq-neutral-200);--bq-ui--tertiary:var(--bq-neutral-500);--bq-ui--inverse:var(--bq-neutral-900);--bq-ui--alt:var(--bq-neutral-50);--bq-ui--brand-alt:var(--bq-brand-light);--bq-ui--brand:var(--bq-brand);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-light);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-light);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-light);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-light);--bq-hover:#444546;--bq-active:#1f2026}.endava.dark,[bq-theme=endava][bq-mode=dark]{--bq-background--primary:var(--bq-neutral-1000);--bq-background--secondary:var(--bq-neutral-900);--bq-background--tertiary:var(--bq-neutral-800);--bq-background--alt:var(--bq-neutral-700);--bq-background--inverse:var(--bq-neutral-600);--bq-background--brand:var(--bq-brand);--bq-background--overlay:var(--bq-neutral-900);--bq-icon--primary:var(--bq-neutral-100);--bq-icon--secondary:var(--bq-neutral-400);--bq-icon--inverse:var(--bq-neutral-800);--bq-icon--brand:var(--bq-brand);--bq-icon--alt:var(--bq-white);--bq-icon--info:var(--bq-info);--bq-icon--success:var(--bq-success);--bq-icon--warning:var(--bq-warning);--bq-icon--danger:var(--bq-danger);--bq-stroke--primary:var(--bq-neutral-900);--bq-stroke--secondary:var(--bq-neutral-700);--bq-stroke--tertiary:var(--bq-neutral-400);--bq-stroke--inverse:var(--bq-neutral-950);--bq-stroke--brand:var(--bq-brand);--bq-stroke--brand-alt:var(--bq-brand-dark);--bq-stroke--alt:var(--bq-neutral-1000);--bq-stroke--success:var(--bq-success);--bq-stroke--warning:var(--bq-warning);--bq-stroke--danger:var(--bq-danger);--bq-stroke--info:var(--bq-info);--bq-text--primary:var(--bq-neutral-100);--bq-text--secondary:var(--bq-neutral-400);--bq-text--inverse:var(--bq-neutral-800);--bq-text--brand:var(--bq-brand);--bq-text--alt:var(--bq-neutral-white);--bq-text--info:var(--bq-info);--bq-text--success:var(--bq-success);--bq-text--warning:var(--bq-warning);--bq-text--danger:var(--bq-danger);--bq-ui--primary:var(--bq-neutral-900);--bq-ui--secondary:var(--bq-neutral-800);--bq-ui--tertiary:var(--bq-neutral-700);--bq-ui--inverse:var(--bq-neutral-100);--bq-ui--brand:var(--bq-brand);--bq-ui--brand-alt:var(--bq-brand-dark);--bq-ui--alt:var(--bq-neutral-950);--bq-ui--success:var(--bq-success);--bq-ui--success-alt:var(--bq-success-dark);--bq-ui--warning:var(--bq-warning);--bq-ui--warning-alt:var(--bq-warning-dark);--bq-ui--danger:var(--bq-danger);--bq-ui--danger-alt:var(--bq-danger-dark);--bq-ui--info:var(--bq-info);--bq-ui--info-alt:var(--bq-info-dark);--bq-hover:#444546;--bq-active:#1f2026}.transform{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.bq-notification,.shadow-\\[shadow\\:--bq-notification--box-shadow\\]{--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000}.relative{position:relative}.block{display:block}.flex{display:flex}.hidden{display:none}.items-start{align-items:flex-start}.gap-xs{gap:var(--bq-spacing-xs)}.rounded-\\[--bq-notification--border-radius\\]{border-radius:var(--bq-notification--border-radius)}.rounded-s{border-radius:var(--bq-radius--s)}.border-0{border-width:0}.bg-\\[--bq-notification--background\\]{background-color:var(--bq-notification--background)}.text-\\[color\\:--bq-notification--icon-color-error\\]{color:var(--bq-notification--icon-color-error)}.text-\\[color\\:--bq-notification--icon-color-info\\]{color:var(--bq-notification--icon-color-info)}.text-\\[color\\:--bq-notification--icon-color-neutral\\]{color:var(--bq-notification--icon-color-neutral)}.text-\\[color\\:--bq-notification--icon-color-success\\]{color:var(--bq-notification--icon-color-success)}.text-\\[color\\:--bq-notification--icon-color-warning\\]{color:var(--bq-notification--icon-color-warning)}.shadow-\\[shadow\\:--bq-notification--box-shadow\\]{--tw-shadow:var(--bq-notification--box-shadow);--tw-shadow-colored:var(--bq-notification--box-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.bs-fit{block-size:fit-content}.min-is-\\[--bq-notification--min-width\\]{min-inline-size:var(--bq-notification--min-width)}.p-b-0{padding-block:0}.p-b-\\[--bq-notification--padding\\]{padding-block:var(--bq-notification--padding)}.p-i-0{padding-inline:0}.p-i-\\[--bq-notification--padding\\]{padding-inline:var(--bq-notification--padding)}.m-bs-m{margin-block-start:var(--bq-spacing-m)}@-webkit-keyframes fade-in{0%{opacity:0}}@keyframes fade-in{0%{opacity:0}}@-webkit-keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@keyframes slide-in{0%{-webkit-transform:translateY(10px);transform:translateY(10px)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}:host{--bq-notification--background:var(--bq-ui--primary);--bq-notification--box-shadow:var(--bq-box-shadow--l);--bq-notification--border-color:transparent;--bq-notification--border-radius:var(--bq-radius--s);--bq-notification--border-style:none;--bq-notification--border-width:unset;--bq-notification--content-footer-gap:var(--bq-spacing-m);--bq-notification--title-body-gap:var(--bq-spacing-s);--bq-notification--icon-color-error:var(--bq-icon--danger);--bq-notification--icon-color-info:var(--bq-icon--brand);--bq-notification--icon-color-neutral:var(--bq-icon--primary);--bq-notification--icon-color-success:var(--bq-icon--success);--bq-notification--icon-color-warning:var(--bq-icon--warning);--bq-notification--padding:var(--bq-spacing-m);--bq-notification--min-width:320px;display:block}:host(.is-hidden){display:none}.bq-notification{--tw-shadow:var(--bq-notification--box-shadow);--tw-shadow-colored:var(--bq-notification--box-shadow);background-color:var(--bq-notification--background);border-radius:var(--bq-notification--border-radius);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);display:flex;min-inline-size:var(--bq-notification--min-width);padding-block:var(--bq-notification--padding);padding-inline:var(--bq-notification--padding);position:relative;transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.notification--icon.color-error{color:var(--bq-notification--icon-color-error)}.notification--icon.color-info{color:var(--bq-notification--icon-color-info)}.notification--icon.color-neutral{color:var(--bq-notification--icon-color-neutral)}.notification--icon.color-success{color:var(--bq-notification--icon-color-success)}.notification--icon.color-warning{color:var(--bq-notification--icon-color-warning)}.notification--close::part(button){block-size:fit-content;border-radius:var(--bq-radius--s);border-width:0;padding-block:0;padding-inline:0}[part=footer] ::slotted(*){align-items:flex-start;display:flex;gap:var(--bq-spacing-xs)}[part=body] ::slotted(*),[part=footer] ::slotted(*){display:block;margin-block-start:var(--bq-spacing-m)}.-translate-y-xs,.sm\\:translate-x-0,.sm\\:translate-x-s,.sm\\:translate-y-0,.transform,.translate-y-0,.translate-y-xs{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1}.static{position:static}.absolute{position:absolute}.me-xs{margin-inline-end:var(--bq-spacing-xs)}.\\!hidden{display:none!important}.-translate-y-xs{--tw-translate-y:calc(var(--bq-spacing-xs)*-1)}.-translate-y-xs,.translate-y-0{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y:0px}.translate-y-xs{--tw-translate-y:var(--bq-spacing-xs)}.transform,.translate-y-xs{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.gap-\\[--bq-notification--content-footer-gap\\]{gap:var(--bq-notification--content-footer-gap)}.gap-\\[--bq-notification--title-body-gap\\]{gap:var(--bq-notification--title-body-gap)}.text-left{text-align:left}.align-top{vertical-align:top}.text-s{font-size:var(--bq-font-size--s)}.font-semibold{font-weight:var(--bq-font-weight--semibold)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.opacity-0{opacity:0}.opacity-100{opacity:1}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-100{transition-duration:.1s}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.inset-ie-5{inset-inline-end:1.25rem}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}@media (min-width:640px){.sm\\:translate-x-0{--tw-translate-x:0px}.sm\\:translate-x-0,.sm\\:translate-x-s{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sm\\:translate-x-s{--tw-translate-x:var(--bq-spacing-s)}.sm\\:translate-y-0{--tw-translate-y:0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}}.text-\\[color\\:--bq-icon--color\\]{color:var(--bq-icon--color)}.bs-\\[--bq-icon--size\\]{block-size:var(--bq-icon--size)}.is-\\[--bq-icon--size\\]{inline-size:var(--bq-icon--size)}';
|
|
22
|
+
|
|
23
|
+
const l = d;
|
|
24
|
+
|
|
25
|
+
const v = Object.assign(document.createElement("div"), {
|
|
26
|
+
className: "bq-notification-portal"
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
const f = class {
|
|
30
|
+
constructor(e) {
|
|
31
|
+
a(this, e);
|
|
32
|
+
this.bqHide = r(this, "bqHide", 7);
|
|
33
|
+
this.bqShow = r(this, "bqShow", 7);
|
|
34
|
+
this.bqAfterOpen = r(this, "bqAfterOpen", 7);
|
|
35
|
+
this.bqAfterClose = r(this, "bqAfterClose", 7);
|
|
36
|
+
// Local methods
|
|
37
|
+
// Internal business logic.
|
|
38
|
+
// These methods cannot be called from the host element.
|
|
39
|
+
// =======================================================
|
|
40
|
+
this.handleHide = async () => {
|
|
41
|
+
const a = this.bqHide.emit(this.el);
|
|
42
|
+
if (!a.defaultPrevented) {
|
|
43
|
+
await q(this.notificationElem);
|
|
44
|
+
this.open = false;
|
|
45
|
+
this.handleTransitionEnd();
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
this.handleShow = async () => {
|
|
49
|
+
const a = this.bqShow.emit(this.el);
|
|
50
|
+
if (!a.defaultPrevented) {
|
|
51
|
+
this.open = true;
|
|
52
|
+
await s(this.notificationElem);
|
|
53
|
+
this.handleTransitionEnd();
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
this.handleTransitionEnd = () => {
|
|
57
|
+
if (this.open) {
|
|
58
|
+
this.bqAfterOpen.emit();
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
this.bqAfterClose.emit();
|
|
62
|
+
};
|
|
63
|
+
this.handleContentSlotChange = () => {
|
|
64
|
+
this.hasContent = o(this.bodyElem);
|
|
65
|
+
};
|
|
66
|
+
this.handleFooterSlotChange = () => {
|
|
67
|
+
this.hasFooter = o(this.footerElem, "footer");
|
|
68
|
+
};
|
|
69
|
+
this.hasContent = false;
|
|
70
|
+
this.hasFooter = false;
|
|
71
|
+
this.autoDismiss = undefined;
|
|
72
|
+
this.border = "s";
|
|
73
|
+
this.disableClose = undefined;
|
|
74
|
+
this.hideIcon = undefined;
|
|
75
|
+
this.open = undefined;
|
|
76
|
+
this.time = 3e3;
|
|
77
|
+
this.type = "info";
|
|
78
|
+
}
|
|
79
|
+
// Prop lifecycle events
|
|
80
|
+
// =======================
|
|
81
|
+
handleTimeout() {
|
|
82
|
+
var a;
|
|
83
|
+
(a = this.autoDismissDebounce) === null || a === void 0 ? void 0 : a.cancel();
|
|
84
|
+
if (!this.autoDismiss) return;
|
|
85
|
+
this.autoDismissDebounce = b((() => {
|
|
86
|
+
this.hide();
|
|
87
|
+
}), this.time);
|
|
88
|
+
// Make sure to autodismiss the notification if the `auto-dismiss` value changed while open
|
|
89
|
+
if (this.open) this.autoDismissDebounce();
|
|
90
|
+
}
|
|
91
|
+
handleOpenChange() {
|
|
92
|
+
var a;
|
|
93
|
+
(a = this.autoDismissDebounce) === null || a === void 0 ? void 0 : a.cancel();
|
|
94
|
+
if (!(this.autoDismiss && this.open)) return;
|
|
95
|
+
this.autoDismissDebounce();
|
|
96
|
+
}
|
|
97
|
+
checkPropValues() {
|
|
98
|
+
i(c, "info", this.el, "type");
|
|
99
|
+
}
|
|
100
|
+
// Component lifecycle events
|
|
101
|
+
// Ordered by their natural call order
|
|
102
|
+
// =====================================
|
|
103
|
+
componentWillLoad() {
|
|
104
|
+
this.checkPropValues();
|
|
105
|
+
this.handleTimeout();
|
|
106
|
+
}
|
|
107
|
+
// Listeners
|
|
108
|
+
// ==============
|
|
109
|
+
afterNotificationClose() {
|
|
110
|
+
try {
|
|
111
|
+
v.removeChild(this.el);
|
|
112
|
+
// Remove the notification portal from the DOM when there are no more notifications
|
|
113
|
+
if (v.querySelector("bq-notification") === null) {
|
|
114
|
+
v.remove();
|
|
115
|
+
}
|
|
116
|
+
} catch (a) {
|
|
117
|
+
/**
|
|
118
|
+
* Skip DOMException error since it could be possible that
|
|
119
|
+
* in some situations the notification portal is missing
|
|
120
|
+
*/
|
|
121
|
+
if (a instanceof DOMException) return;
|
|
122
|
+
throw a;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// Public methods API
|
|
126
|
+
// These methods are exposed on the host element.
|
|
127
|
+
// Always use two lines.
|
|
128
|
+
// Public Methods must be async.
|
|
129
|
+
// Requires JSDocs for public API documentation.
|
|
130
|
+
// ===============================================
|
|
131
|
+
/** Method to be called to hide the notification component */
|
|
132
|
+
async hide() {
|
|
133
|
+
await this.handleHide();
|
|
134
|
+
}
|
|
135
|
+
/** Method to be called to show the notification component */ async show() {
|
|
136
|
+
await this.handleShow();
|
|
137
|
+
}
|
|
138
|
+
/** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */ async toast() {
|
|
139
|
+
if (v.parentElement === null) {
|
|
140
|
+
document.body.append(v);
|
|
141
|
+
}
|
|
142
|
+
v.appendChild(this.el);
|
|
143
|
+
requestAnimationFrame((() => {
|
|
144
|
+
this.show();
|
|
145
|
+
}));
|
|
146
|
+
}
|
|
147
|
+
get iconName() {
|
|
148
|
+
switch (this.type) {
|
|
149
|
+
case "error":
|
|
150
|
+
return "x-circle";
|
|
151
|
+
|
|
152
|
+
case "success":
|
|
153
|
+
return "check-circle";
|
|
154
|
+
|
|
155
|
+
case "warning":
|
|
156
|
+
return "warning-circle";
|
|
157
|
+
|
|
158
|
+
default:
|
|
159
|
+
return "info";
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
// render() function
|
|
163
|
+
// Always the last one in the class.
|
|
164
|
+
// ===================================
|
|
165
|
+
render() {
|
|
166
|
+
const a = {
|
|
167
|
+
...this.border && {
|
|
168
|
+
"--bq-notification--border-radius": `var(--bq-radius--${this.border})`
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
return e(t, {
|
|
172
|
+
key: "1e67fa4060bf1d2f984bf721deb67795df6d8739",
|
|
173
|
+
style: a,
|
|
174
|
+
class: {
|
|
175
|
+
"is-hidden": !this.open
|
|
176
|
+
},
|
|
177
|
+
"aria-hidden": !this.open ? "true" : "false",
|
|
178
|
+
hidden: !this.open ? "true" : "false",
|
|
179
|
+
role: "alert"
|
|
180
|
+
}, e("div", {
|
|
181
|
+
key: "cab0d46840368ff89ad7610cddcab8cdc4f865b1",
|
|
182
|
+
class: "bq-notification",
|
|
183
|
+
"data-transition-enter": "transform transition ease-out duration-300",
|
|
184
|
+
"data-transition-enter-start": "translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s",
|
|
185
|
+
"data-transition-enter-end": "translate-y-0 opacity-100 sm:translate-x-0",
|
|
186
|
+
"data-transition-leave": "transform transition ease-in duration-100",
|
|
187
|
+
"data-transition-leave-start": "translate-y-0 opacity-100 sm:translate-x-0",
|
|
188
|
+
"data-transition-leave-end": "-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s",
|
|
189
|
+
ref: a => this.notificationElem = a,
|
|
190
|
+
part: "wrapper"
|
|
191
|
+
}, !this.disableClose && e("bq-button", {
|
|
192
|
+
key: "7c65d537da079924637f7ccea87b6d690236cf2b",
|
|
193
|
+
class: "notification--close absolute inset-ie-5",
|
|
194
|
+
appearance: "text",
|
|
195
|
+
size: "small",
|
|
196
|
+
onClick: () => this.hide(),
|
|
197
|
+
part: "btn-close"
|
|
198
|
+
}, e("bq-icon", {
|
|
199
|
+
key: "ba649babc47708fb866bf976bee6c05c485e7013",
|
|
200
|
+
name: "x"
|
|
201
|
+
})), e("div", {
|
|
202
|
+
key: "571369c005f0ee05dcfbcb2456c3909e8df2065b",
|
|
203
|
+
class: {
|
|
204
|
+
"!hidden": this.hideIcon,
|
|
205
|
+
[`color-${this.type}`]: true,
|
|
206
|
+
// The icon color will be based on the type (info, success, warning, error)
|
|
207
|
+
"notification--icon me-xs flex text-left align-top": true
|
|
208
|
+
},
|
|
209
|
+
part: "icon-outline"
|
|
210
|
+
}, e("slot", {
|
|
211
|
+
key: "5e027aee231ed52ab73cd3e7fa298541038103da",
|
|
212
|
+
name: "icon"
|
|
213
|
+
}, e("bq-icon", {
|
|
214
|
+
key: "cfe0f397487cbd7680228400290f6efcf5c40ea2",
|
|
215
|
+
name: this.iconName,
|
|
216
|
+
part: "icon",
|
|
217
|
+
exportparts: "base,svg"
|
|
218
|
+
}))), e("div", {
|
|
219
|
+
key: "fa673a938aa0a8c988acc4d39ea6e49d374cb64e",
|
|
220
|
+
class: "flex flex-col items-start gap-[--bq-notification--content-footer-gap]",
|
|
221
|
+
part: "main"
|
|
222
|
+
}, e("div", {
|
|
223
|
+
key: "a145f425bf0fe0487d212a55cd3599a0ce428ce7",
|
|
224
|
+
class: "flex flex-col gap-[--bq-notification--title-body-gap]",
|
|
225
|
+
part: "content"
|
|
226
|
+
}, e("div", {
|
|
227
|
+
key: "235a808554b7e274e6a1d654114fc803510c4b61",
|
|
228
|
+
class: "title-font font-semibold leading-regular",
|
|
229
|
+
part: "title"
|
|
230
|
+
}, e("slot", {
|
|
231
|
+
key: "597ce6212b45c4a5f9eeaaf241933d793706f1f7"
|
|
232
|
+
})), e("div", {
|
|
233
|
+
key: "785144a527dc95f25c45ac500b6b8da732e6d25e",
|
|
234
|
+
class: {
|
|
235
|
+
"text-s leading-regular": true,
|
|
236
|
+
"!hidden": !this.hasContent
|
|
237
|
+
},
|
|
238
|
+
ref: a => this.bodyElem = a,
|
|
239
|
+
part: "body"
|
|
240
|
+
}, e("slot", {
|
|
241
|
+
key: "916905e82bc4b486cb3d7800edadf71d231ae85c",
|
|
242
|
+
name: "body",
|
|
243
|
+
onSlotchange: this.handleContentSlotChange
|
|
244
|
+
}))), e("div", {
|
|
245
|
+
key: "6bd42d15d7d793075a5445ec909454955cb8e3c1",
|
|
246
|
+
class: {
|
|
247
|
+
"flex items-start gap-xs": true,
|
|
248
|
+
"!hidden": !this.hasFooter
|
|
249
|
+
},
|
|
250
|
+
ref: a => this.footerElem = a,
|
|
251
|
+
part: "footer"
|
|
252
|
+
}, e("slot", {
|
|
253
|
+
key: "ebe254ab8c6c687c68c7bbbcb7427b9ac051f725",
|
|
254
|
+
name: "footer",
|
|
255
|
+
onSlotchange: this.handleFooterSlotChange
|
|
256
|
+
})))));
|
|
257
|
+
}
|
|
258
|
+
get el() {
|
|
259
|
+
return n(this);
|
|
260
|
+
}
|
|
261
|
+
static get watchers() {
|
|
262
|
+
return {
|
|
263
|
+
autoDismiss: [ "handleTimeout" ],
|
|
264
|
+
time: [ "handleTimeout" ],
|
|
265
|
+
open: [ "handleOpenChange" ],
|
|
266
|
+
type: [ "checkPropValues" ]
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
};
|
|
270
|
+
|
|
271
|
+
f.style = l;
|
|
272
|
+
|
|
273
|
+
export { f as bq_notification };
|
|
274
|
+
//# sourceMappingURL=p-1715ac80.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NOTIFICATION_TYPE","bqNotificationCss","BqNotificationStyle0","notificationPortal","Object","assign","document","createElement","className","BqNotification","this","handleHide","async","ev","bqHide","emit","el","defaultPrevented","leave","notificationElem","open","handleTransitionEnd","handleShow","bqShow","enter","bqAfterOpen","bqAfterClose","handleContentSlotChange","hasContent","hasSlotContent","bodyElem","handleFooterSlotChange","hasFooter","footerElem","handleTimeout","_a","autoDismissDebounce","cancel","autoDismiss","debounce","hide","time","handleOpenChange","checkPropValues","validatePropValue","componentWillLoad","afterNotificationClose","removeChild","querySelector","remove","error","DOMException","show","toast","parentElement","body","append","appendChild","requestAnimationFrame","iconName","type","render","style","border","h","Host","key","class","hidden","role","ref","div","part","disableClose","appearance","size","onClick","name","hideIcon","exportparts","onSlotchange"],"sources":["../../packages/beeq/src/components/notification/bq-notification.types.ts","../../packages/beeq/src/components/notification/scss/bq-notification.scss?tag=bq-notification&encapsulation=shadow","../../packages/beeq/src/components/notification/bq-notification.tsx"],"sourcesContent":["export const NOTIFICATION_TYPE = ['error', 'info', 'neutral', 'success', 'warning'] as const;\nexport type TNotificationType = (typeof NOTIFICATION_TYPE)[number];\n\nexport const NOTIFICATION_BORDER_RADIUS = ['none', 'xs2', 'xs', 's', 'm', 'l', 'full'] as const;\nexport type TNotificationBorderRadius = (typeof NOTIFICATION_BORDER_RADIUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Notification styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-notification.variables';\n\n:host {\n @apply block;\n}\n\n:host(.is-hidden) {\n @apply hidden;\n}\n\n.bq-notification {\n @apply relative flex transition-all min-is-[--bq-notification--min-width] p-b-[--bq-notification--padding] p-i-[--bq-notification--padding];\n @apply rounded-[--bq-notification--border-radius] bg-[--bq-notification--background] shadow-[shadow:--bq-notification--box-shadow];\n}\n\n/**\n * Set the notification icon color based on the type value selected\n */\n.notification--icon.color {\n &-error {\n @apply text-[color:--bq-notification--icon-color-error];\n }\n\n &-info {\n @apply text-[color:--bq-notification--icon-color-info];\n }\n\n &-neutral {\n @apply text-[color:--bq-notification--icon-color-neutral];\n }\n\n &-success {\n @apply text-[color:--bq-notification--icon-color-success];\n }\n\n &-warning {\n @apply text-[color:--bq-notification--icon-color-warning];\n }\n}\n\n/**\n * Tweak the close bq-button styles so it remain small without extra padding\n */\n.notification--close::part(button) {\n @apply rounded-s border-0 bs-fit p-b-0 p-i-0;\n}\n\n/**\n * Here we guarantee that if the footer actions are wrapped in a div container from the consumer side,\n * the styles get applied to the that wrapping container directly\n */\n[part='footer'] ::slotted(*) {\n @apply flex items-start gap-xs;\n}\n\n[part='body'],\n[part='footer'] {\n ::slotted(*) {\n @apply block m-bs-m;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { NOTIFICATION_TYPE, TNotificationBorderRadius, TNotificationType } from './bq-notification.types';\nimport { debounce, enter, hasSlotContent, leave, TDebounce, validatePropValue } from '../../shared/utils';\n\nconst notificationPortal = Object.assign(document.createElement('div'), { className: 'bq-notification-portal' });\n\n/**\n * @part base - The `<div>` container of the predefined bq-icon component.\n * @part body - The container `<div>` that wraps the notification description content\n * @part btn-close - The `bq-button` used to close the notification\n * @part content - The container `<div>` that wraps all the notification content (title, description, footer)\n * @part footer - The container `<div>` that wraps the notification footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the notification type\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the notification main content (title, description)\n * @part svg - The `<svg>` element of the predefined bq-icon component.\n * @part title - The container `<div>` that wraps the notification title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n */\n\n@Component({\n tag: 'bq-notification',\n styleUrl: './scss/bq-notification.scss',\n shadow: true,\n})\nexport class BqNotification {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private notificationElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqNotificationElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n\n // Public Property API\n // ========================\n\n /** If true, the notification will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corder radius of the notification component */\n @Prop({ reflect: true }) border: TNotificationBorderRadius = 's';\n\n /** If true, the close button at the top right of the notification won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the notification icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the notification will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Notification */\n @Prop({ reflect: true }) type: TNotificationType = 'info';\n\n // Prop lifecycle events\n // =======================\n @Watch('autoDismiss')\n @Watch('time')\n handleTimeout() {\n this.autoDismissDebounce?.cancel();\n if (!this.autoDismiss) return;\n\n this.autoDismissDebounce = debounce(() => {\n this.hide();\n }, this.time);\n // Make sure to autodismiss the notification if the `auto-dismiss` value changed while open\n if (this.open) this.autoDismissDebounce();\n }\n\n @Watch('open')\n handleOpenChange() {\n this.autoDismissDebounce?.cancel();\n\n if (!(this.autoDismiss && this.open)) return;\n this.autoDismissDebounce();\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(NOTIFICATION_TYPE, 'info', this.el, 'type');\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler to be called when the notification is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the notification has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the notification has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqAfterClose')\n afterNotificationClose() {\n try {\n notificationPortal.removeChild(this.el);\n // Remove the notification portal from the DOM when there are no more notifications\n if (notificationPortal.querySelector('bq-notification') === null) {\n notificationPortal.remove();\n }\n } catch (error) {\n /**\n * Skip DOMException error since it could be possible that\n * in some situations the notification portal is missing\n */\n if (error instanceof DOMException) return;\n throw error;\n }\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /** Method to be called to hide the notification component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n\n /** Method to be called to show the notification component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n /** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */\n @Method()\n async toast() {\n if (notificationPortal.parentElement === null) {\n document.body.append(notificationPortal);\n }\n\n notificationPortal.appendChild(this.el);\n requestAnimationFrame(() => {\n this.show();\n });\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.notificationElem);\n this.open = false;\n this.handleTransitionEnd();\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n await enter(this.notificationElem);\n this.handleTransitionEnd();\n }\n };\n\n private handleTransitionEnd = () => {\n if (this.open) {\n this.bqAfterOpen.emit();\n return;\n }\n\n this.bqAfterClose.emit();\n };\n\n private handleContentSlotChange = () => {\n this.hasContent = hasSlotContent(this.bodyElem);\n };\n\n private handleFooterSlotChange = () => {\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n switch (this.type) {\n case 'error':\n return 'x-circle';\n case 'success':\n return 'check-circle';\n case 'warning':\n return 'warning-circle';\n default:\n return 'info';\n }\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-notification--border-radius': `var(--bq-radius--${this.border})` }),\n };\n\n return (\n <Host\n style={style}\n class={{ 'is-hidden': !this.open }}\n aria-hidden={!this.open ? 'true' : 'false'}\n hidden={!this.open ? 'true' : 'false'}\n role=\"alert\"\n >\n <div\n class=\"bq-notification\"\n data-transition-enter=\"transform transition ease-out duration-300\"\n data-transition-enter-start=\"translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-enter-end=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave=\"transform transition ease-in duration-100\"\n data-transition-leave-start=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave-end=\"-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n ref={(div) => (this.notificationElem = div)}\n part=\"wrapper\"\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n class=\"notification--close absolute inset-ie-5\"\n appearance=\"text\"\n size=\"small\"\n onClick={() => this.hide()}\n part=\"btn-close\"\n >\n <bq-icon name=\"x\" />\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n '!hidden': this.hideIcon,\n [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)\n 'notification--icon me-xs flex text-left align-top': true,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n <bq-icon name={this.iconName} part=\"icon\" exportparts=\"base,svg\" />\n </slot>\n </div>\n {/* MAIN */}\n <div class=\"flex flex-col items-start gap-[--bq-notification--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-notification--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div class=\"title-font font-semibold leading-regular\" part=\"title\">\n <slot />\n </div>\n {/* BODY */}\n <div\n class={{ 'text-s leading-regular': true, '!hidden': !this.hasContent }}\n ref={(div) => (this.bodyElem = div)}\n part=\"body\"\n >\n <slot name=\"body\" onSlotchange={this.handleContentSlotChange} />\n </div>\n </div>\n {/* FOOTER */}\n <div\n class={{ 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }}\n ref={(div) => (this.footerElem = div)}\n part=\"footer\"\n >\n <slot name=\"footer\" onSlotchange={this.handleFooterSlotChange} />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["NOTIFICATION_TYPE","bqNotificationCss","BqNotificationStyle0","notificationPortal","Object","assign","document","createElement","className","BqNotification","this","handleHide","async","ev","bqHide","emit","el","defaultPrevented","leave","notificationElem","open","handleTransitionEnd","handleShow","bqShow","enter","bqAfterOpen","bqAfterClose","handleContentSlotChange","hasContent","hasSlotContent","bodyElem","handleFooterSlotChange","hasFooter","footerElem","handleTimeout","_a","autoDismissDebounce","cancel","autoDismiss","debounce","hide","time","handleOpenChange","checkPropValues","validatePropValue","componentWillLoad","afterNotificationClose","removeChild","querySelector","remove","error","DOMException","show","toast","parentElement","body","append","appendChild","requestAnimationFrame","iconName","type","render","style","border","h","Host","key","class","hidden","role","ref","div","part","disableClose","appearance","size","onClick","name","hideIcon","exportparts","onSlotchange"],"sources":["../../packages/beeq/src/components/notification/bq-notification.types.ts","../../packages/beeq/src/components/notification/scss/bq-notification.scss?tag=bq-notification&encapsulation=shadow","../../packages/beeq/src/components/notification/bq-notification.tsx"],"sourcesContent":["export const NOTIFICATION_TYPE = ['error', 'info', 'neutral', 'success', 'warning'] as const;\nexport type TNotificationType = (typeof NOTIFICATION_TYPE)[number];\n\nexport const NOTIFICATION_BORDER_RADIUS = ['none', 'xs2', 'xs', 's', 'm', 'l', 'full'] as const;\nexport type TNotificationBorderRadius = (typeof NOTIFICATION_BORDER_RADIUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Notification styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-notification.variables';\n\n:host {\n @apply block;\n}\n\n:host(.is-hidden) {\n @apply hidden;\n}\n\n.bq-notification {\n @apply relative flex transition-all min-is-[--bq-notification--min-width] p-b-[--bq-notification--padding] p-i-[--bq-notification--padding];\n @apply rounded-[--bq-notification--border-radius] bg-[--bq-notification--background] shadow-[shadow:--bq-notification--box-shadow];\n}\n\n/**\n * Set the notification icon color based on the type value selected\n */\n.notification--icon.color {\n &-error {\n @apply text-[color:--bq-notification--icon-color-error];\n }\n\n &-info {\n @apply text-[color:--bq-notification--icon-color-info];\n }\n\n &-neutral {\n @apply text-[color:--bq-notification--icon-color-neutral];\n }\n\n &-success {\n @apply text-[color:--bq-notification--icon-color-success];\n }\n\n &-warning {\n @apply text-[color:--bq-notification--icon-color-warning];\n }\n}\n\n/**\n * Tweak the close bq-button styles so it remain small without extra padding\n */\n.notification--close::part(button) {\n @apply rounded-s border-0 bs-fit p-b-0 p-i-0;\n}\n\n/**\n * Here we guarantee that if the footer actions are wrapped in a div container from the consumer side,\n * the styles get applied to the that wrapping container directly\n */\n[part='footer'] ::slotted(*) {\n @apply flex items-start gap-xs;\n}\n\n[part='body'],\n[part='footer'] {\n ::slotted(*) {\n @apply block m-bs-m;\n }\n}\n","import { Component, Element, Event, EventEmitter, h, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport { NOTIFICATION_TYPE, TNotificationBorderRadius, TNotificationType } from './bq-notification.types';\nimport { debounce, enter, hasSlotContent, leave, TDebounce, validatePropValue } from '../../shared/utils';\n\nconst notificationPortal = Object.assign(document.createElement('div'), { className: 'bq-notification-portal' });\n\n/**\n * @part base - The `<div>` container of the predefined bq-icon component.\n * @part body - The container `<div>` that wraps the notification description content\n * @part btn-close - The `bq-button` used to close the notification\n * @part content - The container `<div>` that wraps all the notification content (title, description, footer)\n * @part footer - The container `<div>` that wraps the notification footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the notification type\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the notification main content (title, description)\n * @part svg - The `<svg>` element of the predefined bq-icon component.\n * @part title - The container `<div>` that wraps the notification title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n */\n\n@Component({\n tag: 'bq-notification',\n styleUrl: './scss/bq-notification.scss',\n shadow: true,\n})\nexport class BqNotification {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private notificationElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqNotificationElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n\n // Public Property API\n // ========================\n\n /** If true, the notification will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corder radius of the notification component */\n @Prop({ reflect: true }) border: TNotificationBorderRadius = 's';\n\n /** If true, the close button at the top right of the notification won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the notification icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the notification will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Notification */\n @Prop({ reflect: true }) type: TNotificationType = 'info';\n\n // Prop lifecycle events\n // =======================\n @Watch('autoDismiss')\n @Watch('time')\n handleTimeout() {\n this.autoDismissDebounce?.cancel();\n if (!this.autoDismiss) return;\n\n this.autoDismissDebounce = debounce(() => {\n this.hide();\n }, this.time);\n // Make sure to autodismiss the notification if the `auto-dismiss` value changed while open\n if (this.open) this.autoDismissDebounce();\n }\n\n @Watch('open')\n handleOpenChange() {\n this.autoDismissDebounce?.cancel();\n\n if (!(this.autoDismiss && this.open)) return;\n this.autoDismissDebounce();\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(NOTIFICATION_TYPE, 'info', this.el, 'type');\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler to be called when the notification is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the notification has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the notification has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqAfterClose')\n afterNotificationClose() {\n try {\n notificationPortal.removeChild(this.el);\n // Remove the notification portal from the DOM when there are no more notifications\n if (notificationPortal.querySelector('bq-notification') === null) {\n notificationPortal.remove();\n }\n } catch (error) {\n /**\n * Skip DOMException error since it could be possible that\n * in some situations the notification portal is missing\n */\n if (error instanceof DOMException) return;\n throw error;\n }\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /** Method to be called to hide the notification component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n\n /** Method to be called to show the notification component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n /** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */\n @Method()\n async toast() {\n if (notificationPortal.parentElement === null) {\n document.body.append(notificationPortal);\n }\n\n notificationPortal.appendChild(this.el);\n requestAnimationFrame(() => {\n this.show();\n });\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.notificationElem);\n this.open = false;\n this.handleTransitionEnd();\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n await enter(this.notificationElem);\n this.handleTransitionEnd();\n }\n };\n\n private handleTransitionEnd = () => {\n if (this.open) {\n this.bqAfterOpen.emit();\n return;\n }\n\n this.bqAfterClose.emit();\n };\n\n private handleContentSlotChange = () => {\n this.hasContent = hasSlotContent(this.bodyElem);\n };\n\n private handleFooterSlotChange = () => {\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n switch (this.type) {\n case 'error':\n return 'x-circle';\n case 'success':\n return 'check-circle';\n case 'warning':\n return 'warning-circle';\n default:\n return 'info';\n }\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-notification--border-radius': `var(--bq-radius--${this.border})` }),\n };\n\n return (\n <Host\n style={style}\n class={{ 'is-hidden': !this.open }}\n aria-hidden={!this.open ? 'true' : 'false'}\n hidden={!this.open ? 'true' : 'false'}\n role=\"alert\"\n >\n <div\n class=\"bq-notification\"\n data-transition-enter=\"transform transition ease-out duration-300\"\n data-transition-enter-start=\"translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-enter-end=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave=\"transform transition ease-in duration-100\"\n data-transition-leave-start=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-leave-end=\"-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n ref={(div) => (this.notificationElem = div)}\n part=\"wrapper\"\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n class=\"notification--close absolute inset-ie-5\"\n appearance=\"text\"\n size=\"small\"\n onClick={() => this.hide()}\n part=\"btn-close\"\n >\n <bq-icon name=\"x\" />\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n '!hidden': this.hideIcon,\n [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)\n 'notification--icon me-xs flex text-left align-top': true,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n <bq-icon name={this.iconName} part=\"icon\" exportparts=\"base,svg\" />\n </slot>\n </div>\n {/* MAIN */}\n <div class=\"flex flex-col items-start gap-[--bq-notification--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-notification--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div class=\"title-font font-semibold leading-regular\" part=\"title\">\n <slot />\n </div>\n {/* BODY */}\n <div\n class={{ 'text-s leading-regular': true, '!hidden': !this.hasContent }}\n ref={(div) => (this.bodyElem = div)}\n part=\"body\"\n >\n <slot name=\"body\" onSlotchange={this.handleContentSlotChange} />\n </div>\n </div>\n {/* FOOTER */}\n <div\n class={{ 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }}\n ref={(div) => (this.footerElem = div)}\n part=\"footer\"\n >\n <slot name=\"footer\" onSlotchange={this.handleFooterSlotChange} />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/beeq/p-1c8b6eb4.js
CHANGED
|
@@ -2,5 +2,16 @@
|
|
|
2
2
|
* Built by Endavans
|
|
3
3
|
* © https://beeq.design - Apache 2 License.
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Check if the event target is a child of the host element
|
|
7
|
+
* @param event - The event to check
|
|
8
|
+
* @param hostElement - The host element to check against
|
|
9
|
+
* @returns True if the event target is a child of the host element
|
|
10
|
+
*/
|
|
11
|
+
const isEventTargetChildOfElement = (t, n) => {
|
|
12
|
+
const o = t.composedPath();
|
|
13
|
+
return o.includes(n);
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
export { isEventTargetChildOfElement as i };
|
|
6
17
|
//# sourceMappingURL=p-1c8b6eb4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["isEventTargetChildOfElement","event","hostElement","path","composedPath","includes"],"sources":["../../packages/beeq/src/shared/utils/event.ts"],"sourcesContent":["/**\n * Check if the event target is a child of the host element\n * @param event - The event to check\n * @param hostElement - The host element to check against\n * @returns True if the event target is a child of the host element\n */\nexport const isEventTargetChildOfElement = (event: Event, hostElement: HTMLElement): boolean => {\n const path = event.composedPath();\n\n return path.includes(hostElement);\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["isEventTargetChildOfElement","event","hostElement","path","composedPath","includes"],"sources":["../../packages/beeq/src/shared/utils/event.ts"],"sourcesContent":["/**\n * Check if the event target is a child of the host element\n * @param event - The event to check\n * @param hostElement - The host element to check against\n * @returns True if the event target is a child of the host element\n */\nexport const isEventTargetChildOfElement = (event: Event, hostElement: HTMLElement): boolean => {\n const path = event.composedPath();\n\n return path.includes(hostElement);\n};\n"],"mappings":";;;;;;;;;;MAMaA,8BAA8B,CAACC,GAAcC;EACxD,MAAMC,IAAOF,EAAMG;EAEnB,OAAOD,EAAKE,SAASH;AAAY","ignoreList":[]}
|
package/dist/beeq/p-1f3a4359.js
CHANGED
|
@@ -2,5 +2,15 @@
|
|
|
2
2
|
* Built by Endavans
|
|
3
3
|
* © https://beeq.design - Apache 2 License.
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Restricts value to a specified interval [min, max]
|
|
7
|
+
*
|
|
8
|
+
* @param value - value
|
|
9
|
+
* @param min - lower end of the interval
|
|
10
|
+
* @param max - upper end of the interval
|
|
11
|
+
* @returns - value in interval [min, max]
|
|
12
|
+
*/
|
|
13
|
+
const clamp = (t, a = Number.MIN_SAFE_INTEGER, e = Number.MAX_SAFE_INTEGER) => Math.min(Math.max(a, t), e);
|
|
14
|
+
|
|
15
|
+
export { clamp as c };
|
|
6
16
|
//# sourceMappingURL=p-1f3a4359.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clamp","value","min","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math"],"sources":["../../packages/beeq/src/shared/utils/clamp.ts"],"sourcesContent":["/**\n * Restricts value to a specified interval [min, max]\n *\n * @param value - value\n * @param min - lower end of the interval\n * @param max - upper end of the interval\n * @returns - value in interval [min, max]\n */\nexport const clamp = (value: number, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) => {\n return Math.min(Math.max(min, value), max);\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["clamp","value","min","Number","MIN_SAFE_INTEGER","max","MAX_SAFE_INTEGER","Math"],"sources":["../../packages/beeq/src/shared/utils/clamp.ts"],"sourcesContent":["/**\n * Restricts value to a specified interval [min, max]\n *\n * @param value - value\n * @param min - lower end of the interval\n * @param max - upper end of the interval\n * @returns - value in interval [min, max]\n */\nexport const clamp = (value: number, min = Number.MIN_SAFE_INTEGER, max = Number.MAX_SAFE_INTEGER) => {\n return Math.min(Math.max(min, value), max);\n};\n"],"mappings":";;;;;;;;;;;;MAQaA,QAAQ,CAACC,GAAeC,IAAMC,OAAOC,kBAAkBC,IAAMF,OAAOG,qBACxEC,KAAKL,IAAIK,KAAKF,IAAIH,GAAKD,IAAQI","ignoreList":[]}
|