@beeq/core 1.8.1 → 1.8.3-beta.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/dist/beeq/beeq.esm.js +1 -1
- package/dist/beeq/beeq.esm.js.map +1 -1
- package/dist/beeq/index.esm.js +1 -1
- package/dist/beeq/{p-00702295.entry.js → p-0f9ecc0c.entry.js} +2 -2
- package/dist/beeq/p-0f9ecc0c.entry.js.map +1 -0
- package/dist/beeq/{p-0cab9a82.entry.js → p-1499deaf.entry.js} +2 -2
- package/dist/beeq/p-1499deaf.entry.js.map +1 -0
- package/dist/beeq/{p-b83f174c.entry.js → p-15bf8ffd.entry.js} +2 -2
- package/dist/beeq/{p-b83f174c.entry.js.map → p-15bf8ffd.entry.js.map} +1 -1
- package/dist/beeq/{p-2eab5223.entry.js → p-19f5a833.entry.js} +2 -2
- package/dist/beeq/{p-2eab5223.entry.js.map → p-19f5a833.entry.js.map} +1 -1
- package/dist/beeq/{p-cb3b24e6.entry.js → p-2c4cdf27.entry.js} +2 -2
- package/dist/beeq/p-2c4cdf27.entry.js.map +1 -0
- package/dist/{components/p-55b0aea8.js → beeq/p-34611c2f.js} +2 -2
- package/dist/beeq/p-34611c2f.js.map +1 -0
- package/dist/beeq/{p-20d91acf.entry.js → p-3806d9e3.entry.js} +2 -2
- package/dist/beeq/{p-20d91acf.entry.js.map → p-3806d9e3.entry.js.map} +1 -1
- package/dist/beeq/{p-c78ae3c2.js → p-397bc507.js} +2 -2
- package/dist/beeq/p-397bc507.js.map +1 -0
- package/dist/beeq/{p-4d6a9646.entry.js → p-39a80765.entry.js} +2 -2
- package/dist/beeq/{p-4d6a9646.entry.js.map → p-39a80765.entry.js.map} +1 -1
- package/dist/beeq/{p-f84ae6a1.entry.js → p-3d9ed4fa.entry.js} +2 -2
- package/dist/beeq/{p-f84ae6a1.entry.js.map → p-3d9ed4fa.entry.js.map} +1 -1
- package/dist/beeq/{p-5c7a719c.entry.js → p-3f654a12.entry.js} +2 -2
- package/dist/beeq/{p-5c7a719c.entry.js.map → p-3f654a12.entry.js.map} +1 -1
- package/dist/beeq/{p-7f124d61.entry.js → p-3fe626f1.entry.js} +2 -2
- package/dist/beeq/{p-7f124d61.entry.js.map → p-3fe626f1.entry.js.map} +1 -1
- package/dist/beeq/{p-0c12aa01.entry.js → p-4500ffe5.entry.js} +2 -2
- package/dist/beeq/{p-0c12aa01.entry.js.map → p-4500ffe5.entry.js.map} +1 -1
- package/dist/beeq/p-4a3784e1.js +7 -0
- package/dist/beeq/p-4a3784e1.js.map +1 -0
- package/dist/beeq/{p-0f72dbb6.entry.js → p-4d21a49d.entry.js} +2 -2
- package/dist/beeq/{p-0f72dbb6.entry.js.map → p-4d21a49d.entry.js.map} +1 -1
- package/dist/beeq/{p-36b653f6.entry.js → p-5546f242.entry.js} +2 -2
- package/dist/beeq/p-5546f242.entry.js.map +1 -0
- package/dist/beeq/{p-1cdea079.entry.js → p-65d67b85.entry.js} +2 -2
- package/dist/beeq/p-65d67b85.entry.js.map +1 -0
- package/dist/beeq/{p-43dc9906.entry.js → p-66b6d69a.entry.js} +2 -2
- package/dist/beeq/{p-43dc9906.entry.js.map → p-66b6d69a.entry.js.map} +1 -1
- package/dist/beeq/{p-dc544089.entry.js → p-70310ac8.entry.js} +2 -2
- package/dist/beeq/{p-dc544089.entry.js.map → p-70310ac8.entry.js.map} +1 -1
- package/dist/beeq/{p-a7fb6ffd.entry.js → p-7585f825.entry.js} +2 -2
- package/dist/beeq/{p-a7fb6ffd.entry.js.map → p-7585f825.entry.js.map} +1 -1
- package/dist/beeq/{p-75cc6789.entry.js → p-7efff703.entry.js} +2 -2
- package/dist/beeq/{p-75cc6789.entry.js.map → p-7efff703.entry.js.map} +1 -1
- package/dist/beeq/{p-19b7bbe0.entry.js → p-803269b3.entry.js} +2 -2
- package/dist/beeq/{p-19b7bbe0.entry.js.map → p-803269b3.entry.js.map} +1 -1
- package/dist/beeq/{p-1b0cfcd6.entry.js → p-8ed41b69.entry.js} +2 -2
- package/dist/beeq/{p-1b0cfcd6.entry.js.map → p-8ed41b69.entry.js.map} +1 -1
- package/dist/beeq/{p-7636aff3.entry.js → p-90165aef.entry.js} +2 -2
- package/dist/beeq/{p-7636aff3.entry.js.map → p-90165aef.entry.js.map} +1 -1
- package/dist/beeq/{p-921fa1ea.entry.js → p-9a7af424.entry.js} +2 -2
- package/dist/beeq/{p-921fa1ea.entry.js.map → p-9a7af424.entry.js.map} +1 -1
- package/dist/beeq/{p-d8a257b7.entry.js → p-a4e11bbc.entry.js} +2 -2
- package/dist/beeq/{p-d8a257b7.entry.js.map → p-a4e11bbc.entry.js.map} +1 -1
- package/dist/beeq/{p-4c1f6afc.entry.js → p-a56ea1e0.entry.js} +2 -2
- package/dist/beeq/{p-4c1f6afc.entry.js.map → p-a56ea1e0.entry.js.map} +1 -1
- package/dist/beeq/{p-c70c6b00.entry.js → p-a8075be3.entry.js} +2 -2
- package/dist/beeq/{p-c70c6b00.entry.js.map → p-a8075be3.entry.js.map} +1 -1
- package/dist/beeq/{p-026fad0d.entry.js → p-a8d64d1b.entry.js} +2 -2
- package/dist/beeq/{p-026fad0d.entry.js.map → p-a8d64d1b.entry.js.map} +1 -1
- package/dist/beeq/p-b129db1a.entry.js +6 -0
- package/dist/beeq/{p-2c566eb0.entry.js.map → p-b129db1a.entry.js.map} +1 -1
- package/dist/beeq/p-b69f347d.entry.js +6 -0
- package/dist/beeq/p-b69f347d.entry.js.map +1 -0
- package/dist/beeq/{p-c09dac58.entry.js → p-b7b3f7c6.entry.js} +2 -2
- package/dist/beeq/{p-29d9487c.entry.js → p-bbaad491.entry.js} +2 -2
- package/dist/beeq/{p-29d9487c.entry.js.map → p-bbaad491.entry.js.map} +1 -1
- package/dist/beeq/p-c42f9ac5.entry.js +6 -0
- package/dist/beeq/{p-6079f9b2.entry.js.map → p-c42f9ac5.entry.js.map} +1 -1
- package/dist/beeq/{p-cf523684.entry.js → p-cb9fa154.entry.js} +2 -2
- package/dist/beeq/{p-cf523684.entry.js.map → p-cb9fa154.entry.js.map} +1 -1
- package/dist/beeq/p-cf923c68.js +6 -0
- package/dist/beeq/p-dafa4162.entry.js +6 -0
- package/dist/beeq/p-dafa4162.entry.js.map +1 -0
- package/dist/beeq/{p-3c472097.js → p-e4dd6ff4.js} +2 -2
- package/dist/beeq/{p-e056c02a.entry.js → p-e655938a.entry.js} +2 -2
- package/dist/beeq/{p-e056c02a.entry.js.map → p-e655938a.entry.js.map} +1 -1
- package/dist/beeq/{p-0c0bd129.entry.js → p-e8f147c2.entry.js} +2 -2
- package/dist/beeq/{p-0c0bd129.entry.js.map → p-e8f147c2.entry.js.map} +1 -1
- package/dist/beeq/{p-2ef4ed54.entry.js → p-ed569a61.entry.js} +2 -2
- package/dist/beeq/{p-2ef4ed54.entry.js.map → p-ed569a61.entry.js.map} +1 -1
- package/dist/beeq/{p-4c66663c.entry.js → p-ee1ecb6e.entry.js} +2 -2
- package/dist/beeq/{p-4c66663c.entry.js.map → p-ee1ecb6e.entry.js.map} +1 -1
- package/dist/beeq/{p-d8221b88.entry.js → p-f4e8ebd3.entry.js} +2 -2
- package/dist/beeq/{p-d8221b88.entry.js.map → p-f4e8ebd3.entry.js.map} +1 -1
- package/dist/beeq/{p-2e0e325b.entry.js → p-f83857ac.entry.js} +2 -2
- package/dist/beeq/p-f83857ac.entry.js.map +1 -0
- package/dist/beeq.html-custom-data.json +208 -208
- package/dist/cjs/{assetsPath-5e03c40e.js → assetsPath-32c4030b.js} +2 -2
- package/dist/cjs/{assetsPath-5e03c40e.js.map → assetsPath-32c4030b.js.map} +1 -1
- package/dist/cjs/beeq.cjs.js +2 -2
- package/dist/cjs/beeq.cjs.js.map +1 -1
- package/dist/cjs/bq-accordion-group.cjs.entry.js +19 -6
- package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-accordion.cjs.entry.js +32 -18
- package/dist/cjs/bq-accordion.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-alert.cjs.entry.js +24 -11
- package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-avatar.cjs.entry.js +19 -8
- package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-badge.cjs.entry.js +13 -5
- package/dist/cjs/bq-badge.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +13 -5
- package/dist/cjs/bq-breadcrumb-item.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-breadcrumb.cjs.entry.js +8 -2
- package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-button_2.cjs.entry.js +62 -24
- package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-card.cjs.entry.js +10 -3
- package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-checkbox.cjs.entry.js +24 -10
- package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-date-picker.cjs.entry.js +102 -48
- package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-dialog.cjs.entry.js +24 -11
- package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-divider.cjs.entry.js +25 -11
- package/dist/cjs/bq-divider.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-drawer.cjs.entry.js +21 -10
- package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-dropdown_2.cjs.entry.js +42 -17
- package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-empty-state.cjs.entry.js +10 -4
- package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-input.cjs.entry.js +106 -31
- package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-notification.cjs.entry.js +23 -11
- package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-option-group.cjs.entry.js +1 -1
- package/dist/cjs/bq-option-list_2.cjs.entry.js +34 -12
- package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-option.cjs.entry.js +16 -7
- package/dist/cjs/bq-option.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-page-title.cjs.entry.js +7 -4
- package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-progress.cjs.entry.js +20 -8
- package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-radio-group.cjs.entry.js +24 -10
- package/dist/cjs/bq-radio-group.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-radio.cjs.entry.js +20 -8
- package/dist/cjs/bq-radio.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-select.cjs.entry.js +74 -32
- package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-side-menu-item.cjs.entry.js +13 -5
- package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-side-menu.cjs.entry.js +15 -5
- package/dist/cjs/bq-side-menu.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-slider.cjs.entry.js +51 -17
- package/dist/cjs/bq-slider.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-spinner.cjs.entry.js +15 -7
- package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-status.cjs.entry.js +8 -2
- package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-step-item.cjs.entry.js +12 -4
- package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-steps.cjs.entry.js +12 -4
- package/dist/cjs/bq-steps.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-switch.cjs.entry.js +32 -13
- package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-tab-group.cjs.entry.js +18 -7
- package/dist/cjs/bq-tab-group.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-tab.cjs.entry.js +22 -10
- package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-textarea.cjs.entry.js +77 -24
- package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-toast.cjs.entry.js +19 -8
- package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-tooltip.cjs.entry.js +25 -9
- package/dist/cjs/bq-tooltip.cjs.entry.js.map +1 -1
- package/dist/cjs/{cally-9297cdd8.js → cally-1bde2e82.js} +3 -2
- package/dist/cjs/cally-1bde2e82.js.map +1 -0
- package/dist/cjs/{index-c4edfa07.js → index-0c8d249a.js} +1128 -920
- package/dist/cjs/index-0c8d249a.js.map +1 -0
- package/dist/cjs/{index-fc7876d6.js → index-30fbd193.js} +54 -29
- package/dist/cjs/index-30fbd193.js.map +1 -0
- package/dist/cjs/index.cjs.js +3 -3
- package/dist/cjs/{isDefined-e538d669.js → isDefined-5e8aae9d.js} +2 -2
- package/dist/cjs/{isDefined-e538d669.js.map → isDefined-5e8aae9d.js.map} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/accordion/bq-accordion.js +30 -18
- package/dist/collection/components/accordion/bq-accordion.js.map +1 -1
- package/dist/collection/components/accordion/scss/bq-accordion.css +1 -1
- package/dist/collection/components/accordion-group/bq-accordion-group.js +18 -7
- package/dist/collection/components/accordion-group/bq-accordion-group.js.map +1 -1
- package/dist/collection/components/alert/bq-alert.js +23 -12
- package/dist/collection/components/alert/bq-alert.js.map +1 -1
- package/dist/collection/components/avatar/bq-avatar.js +18 -9
- package/dist/collection/components/avatar/bq-avatar.js.map +1 -1
- package/dist/collection/components/badge/bq-badge.js +12 -6
- package/dist/collection/components/badge/bq-badge.js.map +1 -1
- package/dist/collection/components/breadcrumb/bq-breadcrumb.js +7 -3
- package/dist/collection/components/breadcrumb/bq-breadcrumb.js.map +1 -1
- package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js +11 -5
- package/dist/collection/components/breadcrumb-item/bq-breadcrumb-item.js.map +1 -1
- package/dist/collection/components/button/bq-button.js +37 -16
- package/dist/collection/components/button/bq-button.js.map +1 -1
- package/dist/collection/components/card/bq-card.js +9 -4
- package/dist/collection/components/card/bq-card.js.map +1 -1
- package/dist/collection/components/checkbox/bq-checkbox.js +23 -11
- package/dist/collection/components/checkbox/bq-checkbox.js.map +1 -1
- package/dist/collection/components/date-picker/bq-date-picker.js +98 -46
- package/dist/collection/components/date-picker/bq-date-picker.js.map +1 -1
- package/dist/collection/components/date-picker/scss/bq-date-picker.css +1 -1
- package/dist/collection/components/dialog/bq-dialog.js +23 -12
- package/dist/collection/components/dialog/bq-dialog.js.map +1 -1
- package/dist/collection/components/divider/bq-divider.js +24 -12
- package/dist/collection/components/divider/bq-divider.js.map +1 -1
- package/dist/collection/components/drawer/bq-drawer.js +19 -10
- package/dist/collection/components/drawer/bq-drawer.js.map +1 -1
- package/dist/collection/components/drawer/scss/bq-drawer.css +1 -1
- package/dist/collection/components/dropdown/bq-dropdown.js +23 -11
- package/dist/collection/components/dropdown/bq-dropdown.js.map +1 -1
- package/dist/collection/components/empty-state/bq-empty-state.js +9 -5
- package/dist/collection/components/empty-state/bq-empty-state.js.map +1 -1
- package/dist/collection/components/icon/bq-icon.js +22 -9
- package/dist/collection/components/icon/bq-icon.js.map +1 -1
- package/dist/collection/components/input/bq-input.js +104 -31
- package/dist/collection/components/input/bq-input.js.map +1 -1
- package/dist/collection/components/notification/bq-notification.js +22 -12
- package/dist/collection/components/notification/bq-notification.js.map +1 -1
- package/dist/collection/components/option/bq-option.js +15 -8
- package/dist/collection/components/option/bq-option.js.map +1 -1
- package/dist/collection/components/option-list/bq-option-list.js +9 -3
- package/dist/collection/components/option-list/bq-option-list.js.map +1 -1
- package/dist/collection/components/page-title/bq-page-title.js +6 -5
- package/dist/collection/components/page-title/bq-page-title.js.map +1 -1
- package/dist/collection/components/panel/bq-panel.js +17 -8
- package/dist/collection/components/panel/bq-panel.js.map +1 -1
- package/dist/collection/components/progress/bq-progress.js +19 -9
- package/dist/collection/components/progress/bq-progress.js.map +1 -1
- package/dist/collection/components/radio/bq-radio.js +19 -9
- package/dist/collection/components/radio/bq-radio.js.map +1 -1
- package/dist/collection/components/radio-group/bq-radio-group.js +23 -11
- package/dist/collection/components/radio-group/bq-radio-group.js.map +1 -1
- package/dist/collection/components/select/bq-select.js +72 -32
- 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/components/side-menu/bq-side-menu.js +14 -6
- package/dist/collection/components/side-menu/bq-side-menu.js.map +1 -1
- package/dist/collection/components/side-menu-item/bq-side-menu-item.js +12 -6
- package/dist/collection/components/side-menu-item/bq-side-menu-item.js.map +1 -1
- package/dist/collection/components/slider/bq-slider.js +50 -18
- package/dist/collection/components/slider/bq-slider.js.map +1 -1
- package/dist/collection/components/spinner/bq-spinner.js +14 -8
- package/dist/collection/components/spinner/bq-spinner.js.map +1 -1
- package/dist/collection/components/status/bq-status.js +7 -3
- package/dist/collection/components/status/bq-status.js.map +1 -1
- package/dist/collection/components/step-item/bq-step-item.js +11 -5
- package/dist/collection/components/step-item/bq-step-item.js.map +1 -1
- package/dist/collection/components/steps/bq-steps.js +11 -5
- package/dist/collection/components/steps/bq-steps.js.map +1 -1
- package/dist/collection/components/switch/bq-switch.js +31 -14
- package/dist/collection/components/switch/bq-switch.js.map +1 -1
- package/dist/collection/components/tab/bq-tab.js +21 -11
- package/dist/collection/components/tab/bq-tab.js.map +1 -1
- package/dist/collection/components/tab-group/bq-tab-group.js +17 -8
- package/dist/collection/components/tab-group/bq-tab-group.js.map +1 -1
- package/dist/collection/components/tag/bq-tag.js +24 -12
- package/dist/collection/components/tag/bq-tag.js.map +1 -1
- package/dist/collection/components/textarea/bq-textarea.js +75 -24
- package/dist/collection/components/textarea/bq-textarea.js.map +1 -1
- package/dist/collection/components/textarea/scss/bq-textarea.css +1 -1
- package/dist/collection/components/toast/bq-toast.js +18 -9
- package/dist/collection/components/toast/bq-toast.js.map +1 -1
- package/dist/collection/components/tooltip/bq-tooltip.js +23 -9
- package/dist/collection/components/tooltip/bq-tooltip.js.map +1 -1
- package/dist/collection/global/scripts/zeroheight-svg-loader.js +6 -5
- package/dist/components/bq-accordion-group.js +1 -1
- package/dist/components/bq-accordion-group.js.map +1 -1
- package/dist/components/bq-accordion.js +1 -1
- package/dist/components/bq-accordion.js.map +1 -1
- package/dist/components/bq-alert.js +1 -1
- package/dist/components/bq-alert.js.map +1 -1
- package/dist/components/bq-avatar.js +1 -1
- package/dist/components/bq-avatar.js.map +1 -1
- package/dist/components/bq-badge.js +1 -1
- package/dist/components/bq-breadcrumb-item.js +1 -1
- package/dist/components/bq-breadcrumb-item.js.map +1 -1
- package/dist/components/bq-breadcrumb.js +1 -1
- package/dist/components/bq-breadcrumb.js.map +1 -1
- package/dist/components/bq-button.js +1 -1
- package/dist/components/bq-card.js +1 -1
- package/dist/components/bq-card.js.map +1 -1
- package/dist/components/bq-checkbox.js +1 -1
- package/dist/components/bq-checkbox.js.map +1 -1
- package/dist/components/bq-date-picker.js +1 -1
- package/dist/components/bq-date-picker.js.map +1 -1
- package/dist/components/bq-dialog.js +1 -1
- package/dist/components/bq-dialog.js.map +1 -1
- package/dist/components/bq-divider.js +1 -1
- package/dist/components/bq-drawer.js +1 -1
- package/dist/components/bq-drawer.js.map +1 -1
- package/dist/components/bq-dropdown.js +1 -1
- package/dist/components/bq-empty-state.js +1 -1
- package/dist/components/bq-empty-state.js.map +1 -1
- package/dist/components/bq-icon.js +1 -1
- package/dist/components/bq-input.js +1 -1
- package/dist/components/bq-input.js.map +1 -1
- package/dist/components/bq-notification.js +1 -1
- package/dist/components/bq-notification.js.map +1 -1
- package/dist/components/bq-option-group.js +1 -1
- package/dist/components/bq-option-list.js +1 -1
- package/dist/components/bq-option.js +1 -1
- package/dist/components/bq-option.js.map +1 -1
- package/dist/components/bq-page-title.js +1 -1
- package/dist/components/bq-page-title.js.map +1 -1
- package/dist/components/bq-panel.js +1 -1
- package/dist/components/bq-progress.js +1 -1
- package/dist/components/bq-progress.js.map +1 -1
- package/dist/components/bq-radio-group.js +1 -1
- package/dist/components/bq-radio-group.js.map +1 -1
- package/dist/components/bq-radio.js +1 -1
- package/dist/components/bq-radio.js.map +1 -1
- package/dist/components/bq-select.js +1 -1
- package/dist/components/bq-select.js.map +1 -1
- package/dist/components/bq-side-menu-item.js +1 -1
- package/dist/components/bq-side-menu-item.js.map +1 -1
- package/dist/components/bq-side-menu.js +1 -1
- package/dist/components/bq-side-menu.js.map +1 -1
- package/dist/components/bq-slider.js +1 -1
- package/dist/components/bq-slider.js.map +1 -1
- package/dist/components/bq-spinner.js +1 -1
- package/dist/components/bq-spinner.js.map +1 -1
- package/dist/components/bq-status.js +1 -1
- package/dist/components/bq-status.js.map +1 -1
- package/dist/components/bq-step-item.js +1 -1
- package/dist/components/bq-step-item.js.map +1 -1
- package/dist/components/bq-steps.js +1 -1
- package/dist/components/bq-steps.js.map +1 -1
- package/dist/components/bq-switch.js +1 -1
- package/dist/components/bq-switch.js.map +1 -1
- package/dist/components/bq-tab-group.js +1 -1
- package/dist/components/bq-tab-group.js.map +1 -1
- package/dist/components/bq-tab.js +1 -1
- package/dist/components/bq-tab.js.map +1 -1
- package/dist/components/bq-tag.js +1 -1
- package/dist/components/bq-textarea.js +1 -1
- package/dist/components/bq-textarea.js.map +1 -1
- package/dist/components/bq-toast.js +1 -1
- package/dist/components/bq-toast.js.map +1 -1
- package/dist/components/bq-tooltip.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/{beeq/p-55b0aea8.js → components/p-34611c2f.js} +2 -2
- package/dist/components/p-34611c2f.js.map +1 -0
- package/dist/components/p-37483f1c.js +6 -0
- package/dist/components/{p-d62fdbae.js.map → p-37483f1c.js.map} +1 -1
- package/dist/components/{p-c78ae3c2.js → p-397bc507.js} +2 -2
- package/dist/components/p-397bc507.js.map +1 -0
- package/dist/components/{p-c2d43340.js → p-5b34bd04.js} +2 -2
- package/dist/components/{p-c2d43340.js.map → p-5b34bd04.js.map} +1 -1
- package/dist/components/{p-78d23ddc.js → p-6e0c7ab4.js} +2 -2
- package/dist/components/{p-33371480.js → p-8d8eeb62.js} +2 -2
- package/dist/components/{p-33371480.js.map → p-8d8eeb62.js.map} +1 -1
- package/dist/components/{p-27c1b08e.js → p-9a115ee5.js} +2 -2
- package/dist/components/{p-27c1b08e.js.map → p-9a115ee5.js.map} +1 -1
- package/dist/components/p-a02c6b73.js +6 -0
- package/dist/components/{p-1566efe3.js.map → p-a02c6b73.js.map} +1 -1
- package/dist/components/p-ac26ffcd.js +6 -0
- package/dist/components/{p-603c898d.js.map → p-ac26ffcd.js.map} +1 -1
- package/dist/components/{p-d62fdbae.js → p-b50adb19.js} +2 -2
- package/dist/components/p-b50adb19.js.map +1 -0
- package/dist/components/p-c58e0d87.js +6 -0
- package/dist/components/{p-28da2321.js.map → p-c58e0d87.js.map} +1 -1
- package/dist/components/p-d16482dc.js +6 -0
- package/dist/components/p-d16482dc.js.map +1 -0
- package/dist/components/p-f5588ccd.js +6 -0
- package/dist/components/{p-7d7f1f7e.js.map → p-f5588ccd.js.map} +1 -1
- package/dist/custom-elements.json +3113 -3113
- package/dist/esm/{assetsPath-eed21007.js → assetsPath-57848212.js} +2 -2
- package/dist/esm/{assetsPath-eed21007.js.map → assetsPath-57848212.js.map} +1 -1
- package/dist/esm/beeq.js +3 -3
- package/dist/esm/beeq.js.map +1 -1
- package/dist/esm/bq-accordion-group.entry.js +19 -6
- package/dist/esm/bq-accordion-group.entry.js.map +1 -1
- package/dist/esm/bq-accordion.entry.js +32 -18
- package/dist/esm/bq-accordion.entry.js.map +1 -1
- package/dist/esm/bq-alert.entry.js +24 -11
- package/dist/esm/bq-alert.entry.js.map +1 -1
- package/dist/esm/bq-avatar.entry.js +19 -8
- package/dist/esm/bq-avatar.entry.js.map +1 -1
- package/dist/esm/bq-badge.entry.js +13 -5
- package/dist/esm/bq-badge.entry.js.map +1 -1
- package/dist/esm/bq-breadcrumb-item.entry.js +13 -5
- package/dist/esm/bq-breadcrumb-item.entry.js.map +1 -1
- package/dist/esm/bq-breadcrumb.entry.js +8 -2
- package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
- package/dist/esm/bq-button_2.entry.js +62 -24
- package/dist/esm/bq-button_2.entry.js.map +1 -1
- package/dist/esm/bq-card.entry.js +10 -3
- package/dist/esm/bq-card.entry.js.map +1 -1
- package/dist/esm/bq-checkbox.entry.js +24 -10
- package/dist/esm/bq-checkbox.entry.js.map +1 -1
- package/dist/esm/bq-date-picker.entry.js +102 -48
- package/dist/esm/bq-date-picker.entry.js.map +1 -1
- package/dist/esm/bq-dialog.entry.js +24 -11
- package/dist/esm/bq-dialog.entry.js.map +1 -1
- package/dist/esm/bq-divider.entry.js +25 -11
- package/dist/esm/bq-divider.entry.js.map +1 -1
- package/dist/esm/bq-drawer.entry.js +21 -10
- package/dist/esm/bq-drawer.entry.js.map +1 -1
- package/dist/esm/bq-dropdown_2.entry.js +42 -17
- package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
- package/dist/esm/bq-empty-state.entry.js +10 -4
- package/dist/esm/bq-empty-state.entry.js.map +1 -1
- package/dist/esm/bq-input.entry.js +106 -31
- package/dist/esm/bq-input.entry.js.map +1 -1
- package/dist/esm/bq-notification.entry.js +23 -11
- package/dist/esm/bq-notification.entry.js.map +1 -1
- package/dist/esm/bq-option-group.entry.js +1 -1
- package/dist/esm/bq-option-list_2.entry.js +34 -12
- package/dist/esm/bq-option-list_2.entry.js.map +1 -1
- package/dist/esm/bq-option.entry.js +16 -7
- package/dist/esm/bq-option.entry.js.map +1 -1
- package/dist/esm/bq-page-title.entry.js +7 -4
- package/dist/esm/bq-page-title.entry.js.map +1 -1
- package/dist/esm/bq-progress.entry.js +20 -8
- package/dist/esm/bq-progress.entry.js.map +1 -1
- package/dist/esm/bq-radio-group.entry.js +24 -10
- package/dist/esm/bq-radio-group.entry.js.map +1 -1
- package/dist/esm/bq-radio.entry.js +20 -8
- package/dist/esm/bq-radio.entry.js.map +1 -1
- package/dist/esm/bq-select.entry.js +74 -32
- package/dist/esm/bq-select.entry.js.map +1 -1
- package/dist/esm/bq-side-menu-item.entry.js +13 -5
- package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
- package/dist/esm/bq-side-menu.entry.js +15 -5
- package/dist/esm/bq-side-menu.entry.js.map +1 -1
- package/dist/esm/bq-slider.entry.js +51 -17
- package/dist/esm/bq-slider.entry.js.map +1 -1
- package/dist/esm/bq-spinner.entry.js +15 -7
- package/dist/esm/bq-spinner.entry.js.map +1 -1
- package/dist/esm/bq-status.entry.js +8 -2
- package/dist/esm/bq-status.entry.js.map +1 -1
- package/dist/esm/bq-step-item.entry.js +12 -4
- package/dist/esm/bq-step-item.entry.js.map +1 -1
- package/dist/esm/bq-steps.entry.js +12 -4
- package/dist/esm/bq-steps.entry.js.map +1 -1
- package/dist/esm/bq-switch.entry.js +32 -13
- package/dist/esm/bq-switch.entry.js.map +1 -1
- package/dist/esm/bq-tab-group.entry.js +18 -7
- package/dist/esm/bq-tab-group.entry.js.map +1 -1
- package/dist/esm/bq-tab.entry.js +22 -10
- package/dist/esm/bq-tab.entry.js.map +1 -1
- package/dist/esm/bq-textarea.entry.js +77 -24
- package/dist/esm/bq-textarea.entry.js.map +1 -1
- package/dist/esm/bq-toast.entry.js +19 -8
- package/dist/esm/bq-toast.entry.js.map +1 -1
- package/dist/esm/bq-tooltip.entry.js +25 -9
- package/dist/esm/bq-tooltip.entry.js.map +1 -1
- package/dist/esm/{cally-1a3258d6.js → cally-49a83be1.js} +3 -2
- package/dist/esm/cally-49a83be1.js.map +1 -0
- package/dist/esm/{index-c7d02072.js → index-59610291.js} +1128 -920
- package/dist/esm/index-59610291.js.map +1 -0
- package/dist/esm/{index-1618c78b.js → index-d4eea621.js} +54 -29
- package/dist/esm/index-d4eea621.js.map +1 -0
- package/dist/esm/index.js +4 -4
- package/dist/esm/{isDefined-48de6db5.js → isDefined-30b8b652.js} +2 -2
- package/dist/esm/{isDefined-48de6db5.js.map → isDefined-30b8b652.js.map} +1 -1
- package/dist/esm/loader.js +2 -2
- package/dist/hydrate/index.js +2358 -1518
- package/dist/hydrate/index.mjs +2358 -1518
- package/dist/stencil.config.js +3 -0
- package/dist/stencil.config.js.map +1 -1
- package/dist/types/components/accordion/bq-accordion.d.ts +1 -1
- package/dist/types/components/date-picker/bq-date-picker.d.ts +2 -2
- package/package.json +5 -5
- package/dist/beeq/p-00702295.entry.js.map +0 -1
- package/dist/beeq/p-01de6133.js +0 -6
- package/dist/beeq/p-0cab9a82.entry.js.map +0 -1
- package/dist/beeq/p-19c94c6d.entry.js +0 -6
- package/dist/beeq/p-19c94c6d.entry.js.map +0 -1
- package/dist/beeq/p-1cdea079.entry.js.map +0 -1
- package/dist/beeq/p-2c566eb0.entry.js +0 -6
- package/dist/beeq/p-2e0e325b.entry.js.map +0 -1
- package/dist/beeq/p-36b653f6.entry.js.map +0 -1
- package/dist/beeq/p-55b0aea8.js.map +0 -1
- package/dist/beeq/p-60094726.js +0 -7
- package/dist/beeq/p-60094726.js.map +0 -1
- package/dist/beeq/p-6079f9b2.entry.js +0 -6
- package/dist/beeq/p-c78ae3c2.js.map +0 -1
- package/dist/beeq/p-cb3b24e6.entry.js.map +0 -1
- package/dist/beeq/p-eb662058.entry.js +0 -6
- package/dist/beeq/p-eb662058.entry.js.map +0 -1
- package/dist/cjs/cally-9297cdd8.js.map +0 -1
- package/dist/cjs/index-c4edfa07.js.map +0 -1
- package/dist/cjs/index-fc7876d6.js.map +0 -1
- package/dist/components/p-1566efe3.js +0 -6
- package/dist/components/p-28da2321.js +0 -6
- package/dist/components/p-55b0aea8.js.map +0 -1
- package/dist/components/p-5940b410.js +0 -7
- package/dist/components/p-5940b410.js.map +0 -1
- package/dist/components/p-603c898d.js +0 -6
- package/dist/components/p-7d7f1f7e.js +0 -6
- package/dist/components/p-93c16753.js +0 -6
- package/dist/components/p-93c16753.js.map +0 -1
- package/dist/components/p-c78ae3c2.js.map +0 -1
- package/dist/components/p-cf496927.js +0 -6
- package/dist/components/p-cf496927.js.map +0 -1
- package/dist/esm/cally-1a3258d6.js.map +0 -1
- package/dist/esm/index-1618c78b.js.map +0 -1
- package/dist/esm/index-c7d02072.js.map +0 -1
- /package/dist/beeq/{p-c09dac58.entry.js.map → p-b7b3f7c6.entry.js.map} +0 -0
- /package/dist/beeq/{p-01de6133.js.map → p-cf923c68.js.map} +0 -0
- /package/dist/beeq/{p-3c472097.js.map → p-e4dd6ff4.js.map} +0 -0
- /package/dist/components/{p-78d23ddc.js.map → p-6e0c7ab4.js.map} +0 -0
- /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/packages/beeq/.stencil/packages/beeq/stencil.config.d.ts +0 -0
- /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/packages/beeq/.stencil/tailwind.config.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["te","t","e","Set","constructor","this","current","forEach","n","on","add","delete","Mt","tt","Symbol","for","globalThis","k","ee","At","ne","Ft","O","i","s","hooks","r","c","o","value","effect","tag","se","_","host","Rt","update","oe","f","d","l","load","id","cleanEffects","isSuspense","M","It","length","w","R","isArray","re","Array","et","HTMLStyleElement","dataset","Ut","u","a","$t","addEventListener","removeEventListener","Lt","message","target","_t","ce","q","ie","ae","true","le","type","reflect","event","attr","ue","name","map","Function","Object","defineProperty","configurable","set","m","Boolean","error","v","p","he","me","_props","jt","updated","then","_ignoreAttr","fe","get","prop","base","CustomEvent","dispatchEvent","replace","toLowerCase","removeAttribute","setAttribute","serialize","JSON","stringify","de","Number","String","parse","toString","call","isNaN","valueOf","ye","pe","hydrate","j","HTMLElement","prototype","Element","props","styles","super","_setup","_render","mounted","Promise","h","mount","parentNode","unmounted","unmount","isConnected","symbolId","symbolIdParent","b","render","be","connectedCallback","disconnectedCallback","attributeChangedCallback","observedAttributes","keys","concat","shadowRoot","appendChild","cloneNode","push","adoptedStyleSheets","Yt","$","ge","Bt","rt","T","ct","C","detail","nt","sheet","document","qt","Ee","checked","selected","ve","list","size","form","width","height","src","href","slot","De","shadowDom","staticNode","children","key","B","st","ot","Text","Se","I","Z","xt","we","Ce","Ht","zt","Node","shadow","static","raw","is","clone","vnode","localName","createElementNS","createElement","cycle","fragment","handlers","attachShadow","mode","Ne","Pe","Te","lastElementChild","previousElementSibling","before","append","markStart","markEnd","keyes","nextSibling","A","data","insertBefore","replaceChild","Map","remove","Dt","ke","slice","style","St","cssText","handleEvent","capture","once","passive","assign","indexOf","wt","z","reduce","Oe","CSSStyleSheet","replaceSync","textContent","Me","W","Ae","stopPropagation","connect","Fe","bubbles","composed","customElements","whenDefined","Re","Ie","y","U","Kt","Jt","it","Date","E","getFullYear","getMonth","getDate","at","S","getUTCDay","setUTCDate","getUTCDate","from","Zt","days","Wt","UTC","year","month","H","compare","Ue","$e","toPlainDate","day","Le","X","padStart","months","setUTCMonth","years","setUTCFullYear","toPlainYearMonth","K","equals","match","TypeError","parseInt","getUTCFullYear","getUTCMonth","x","P","_e","split","je","trim","join","L","Intl","DateTimeFormat","timeZone","Ct","format","Tt","Pt","matches","Ye","Be","qe","weekday","xe","G","ze","context","offset","firstDayOfWeek","isDateDisallowed","min","max","page","locale","focusedDate","start","Xt","mt","g","Gt","D","shiftKey","preventDefault","Qt","showOutsideDays","Vt","yt","pt","Y","bt","gt","N","F","J","Et","vt","some","part","tabindex","disabled","onkeydown","onclick","onmouseover","weeks","yearMonth","daysLong","daysShort","formatter","getDayProps","Q","lt","end","define","He","querySelector","focus","ref","scope","class","Nt","ut","role","formatVerbose","formatRange","previous","next","onselectday","onSelect","onfocusday","onFocus","onhoverday","onHover","ft","pageBy","dt","Ke","Je","V","kt","Ze","goto","Math","floor","ht","setFocusedDate","querySelectorAll","dispatch","setTimeout","We","Ot","Xe","tentative","Ge","findIndex","splice"],"sources":["../../node_modules/cally/dist/cally.js"],"sourcesContent":["class te {\n /**\n * @type {T}\n */\n #t;\n #e = /* @__PURE__ */ new Set();\n /**\n * @param {T} current\n */\n constructor(t) {\n this.#t = t;\n }\n /**\n * @return {T}\n */\n get current() {\n return this.#t;\n }\n /**\n * @param {T} value\n */\n set current(t) {\n this.#t != t && (this.#t = t, this.#e.forEach((n) => n(t)));\n }\n /**\n * @type {import(\"hooks\").Ref[\"on\"]}\n */\n on(t) {\n return this.#e.add(t), () => this.#e.delete(t);\n }\n}\nconst Mt = (e) => new te(e), tt = Symbol.for(\"atomico.hooks\");\nglobalThis[tt] = globalThis[tt] || {};\nlet k = globalThis[tt];\nconst ee = Symbol.for(\"Atomico.suspense\"), At = Symbol.for(\"Atomico.effect\"), ne = Symbol.for(\"Atomico.layoutEffect\"), Ft = Symbol.for(\"Atomico.insertionEffect\"), O = (e, t, n) => {\n const { i: s, hooks: r } = k.c, o = r[s] = r[s] || {};\n return o.value = e(o.value), o.effect = t, o.tag = n, k.c.i++, r[s].value;\n}, se = (e) => O((t = Mt(e)) => t), _ = () => O((e = Mt(k.c.host)) => e), Rt = () => k.c.update, oe = (e, t, n = 0) => {\n let s = {}, r = !1;\n const o = () => r, c = (i, f) => {\n for (const d in s) {\n const l = s[d];\n l.effect && l.tag === i && (l.value = l.effect(l.value, f));\n }\n };\n return { load: (i) => {\n k.c = { host: t, hooks: s, update: e, i: 0, id: n };\n let f;\n try {\n r = !1, f = i();\n } catch (d) {\n if (d !== ee)\n throw d;\n r = !0;\n } finally {\n k.c = null;\n }\n return f;\n }, cleanEffects: (i) => (c(Ft, i), () => (c(ne, i), () => {\n c(At, i);\n })), isSuspense: o };\n}, M = Symbol.for;\nfunction It(e, t) {\n const n = e.length;\n if (n !== t.length)\n return !1;\n for (let s = 0; s < n; s++) {\n let r = e[s], o = t[s];\n if (r !== o)\n return !1;\n }\n return !0;\n}\nconst w = (e) => typeof e == \"function\", R = (e) => typeof e == \"object\", { isArray: re } = Array, et = (e, t) => (t ? e instanceof HTMLStyleElement : !0) && \"hydrate\" in (e?.dataset || {});\nfunction Ut(e, t) {\n let n;\n const s = (r) => {\n let { length: o } = r;\n for (let c = 0; c < o; c++) {\n const u = r[c];\n if (u && Array.isArray(u))\n s(u);\n else {\n const a = typeof u;\n if (u == null || a === \"function\" || a === \"boolean\")\n continue;\n a === \"string\" || a === \"number\" ? (n == null && (n = \"\"), n += u) : (n != null && (t(n), n = null), t(u));\n }\n }\n };\n s(e), n != null && t(n);\n}\nconst $t = (e, t, n) => (e.addEventListener(t, n), () => e.removeEventListener(t, n));\nclass Lt {\n /**\n *\n * @param {HTMLElement} target\n * @param {string} message\n * @param {string} value\n */\n constructor(t, n, s) {\n this.message = n, this.target = t, this.value = s;\n }\n}\nclass _t extends Lt {\n}\nclass ce extends Lt {\n}\nconst q = \"Custom\", ie = null, ae = { true: 1, \"\": 1, 1: 1 };\nfunction le(e, t, n, s, r) {\n const {\n type: o,\n reflect: c,\n event: u,\n value: a,\n attr: i = ue(t)\n } = n?.name != q && R(n) && n != ie ? n : { type: n }, f = o?.name === q && o.map, d = a != null ? o == Function || !w(a) ? () => a : a : null;\n Object.defineProperty(e, t, {\n configurable: !0,\n /**\n * @this {import(\"dom\").AtomicoThisInternal}\n * @param {any} newValue\n */\n set(l) {\n const m = this[t];\n d && o != Boolean && l == null && (l = d());\n const { error: v, value: p } = (f ? he : me)(\n o,\n l\n );\n if (v && p != null)\n throw new _t(\n this,\n `The value defined for prop '${t}' must be of type '${o.name}'`,\n p\n );\n m != p && (this._props[t] = p ?? void 0, this.update(), u && jt(this, u), this.updated.then(() => {\n c && (this._ignoreAttr = i, fe(this, o, i, this[t]), this._ignoreAttr = null);\n }));\n },\n /**\n * @this {import(\"dom\").AtomicoThisInternal}\n */\n get() {\n return this._props[t];\n }\n }), d && (r[t] = d()), s[i] = { prop: t, type: o };\n}\nconst jt = (e, { type: t, base: n = CustomEvent, ...s }) => e.dispatchEvent(new n(t, s)), ue = (e) => e.replace(/([A-Z])/g, \"-$1\").toLowerCase(), fe = (e, t, n, s) => s == null || t == Boolean && !s ? e.removeAttribute(n) : e.setAttribute(\n n,\n t?.name === q && t?.serialize ? t?.serialize(s) : R(s) ? JSON.stringify(s) : t == Boolean ? \"\" : s\n), de = (e, t) => e == Boolean ? !!ae[t] : e == Number ? Number(t) : e == String ? t : e == Array || e == Object ? JSON.parse(t) : e.name == q ? t : (\n // TODO: If when defining reflect the prop can also be of type string?\n new e(t)\n), he = ({ map: e }, t) => {\n try {\n return { value: e(t), error: !1 };\n } catch {\n return { value: t, error: !0 };\n }\n}, me = (e, t) => e == null || t == null ? { value: t, error: !1 } : e != String && t === \"\" ? { value: void 0, error: !1 } : e == Object || e == Array || e == Symbol ? {\n value: t,\n error: {}.toString.call(t) !== `[object ${e.name}]`\n} : t instanceof e ? {\n value: t,\n error: e == Number && Number.isNaN(t.valueOf())\n} : e == String || e == Number || e == Boolean ? {\n value: t,\n error: e == Number ? typeof t != \"number\" ? !0 : Number.isNaN(t) : e == String ? typeof t != \"string\" : typeof t != \"boolean\"\n} : { value: t, error: !0 };\nlet ye = 0;\nconst pe = (e) => {\n const t = (e?.dataset || {})?.hydrate || \"\";\n return t || \"c\" + ye++;\n}, j = (e, t = HTMLElement) => {\n const n = {}, s = {}, r = \"prototype\" in t && t.prototype instanceof Element, o = r ? t : \"base\" in t ? t.base : HTMLElement, { props: c, styles: u } = r ? e : t;\n class a extends o {\n constructor() {\n super(), this._setup(), this._render = () => e({ ...this._props });\n for (const f in s)\n this[f] = s[f];\n }\n /**\n * @returns {import(\"core\").Sheets[]}\n */\n static get styles() {\n return [super.styles, u];\n }\n async _setup() {\n if (this._props)\n return;\n this._props = {};\n let f, d;\n this.mounted = new Promise(\n (h) => this.mount = () => {\n h(), f != this.parentNode && (d != f ? this.unmounted.then(this.update) : this.update()), f = this.parentNode;\n }\n ), this.unmounted = new Promise(\n (h) => this.unmount = () => {\n h(), (f != this.parentNode || !this.isConnected) && (l.cleanEffects(!0)()(), d = this.parentNode, f = null);\n }\n ), this.symbolId = this.symbolId || Symbol(), this.symbolIdParent = Symbol();\n const l = oe(\n () => this.update(),\n this,\n pe(this)\n );\n let m, v = !0;\n const p = et(this);\n this.update = () => (m || (m = !0, this.updated = (this.updated || this.mounted).then(() => {\n try {\n const h = l.load(this._render), b = l.cleanEffects();\n return h && //@ts-ignore\n h.render(this, this.symbolId, p), m = !1, v && !l.isSuspense() && (v = !1, !p && be(this)), b();\n } finally {\n m = !1;\n }\n }).then(\n /**\n * @param {import(\"internal/hooks.js\").CleanUseEffects} [cleanUseEffect]\n */\n (h) => {\n h && h();\n }\n )), this.updated), this.update();\n }\n connectedCallback() {\n this.mount(), super.connectedCallback && super.connectedCallback();\n }\n disconnectedCallback() {\n super.disconnectedCallback && super.disconnectedCallback(), this.unmount();\n }\n /**\n * @this {import(\"dom\").AtomicoThisInternal}\n * @param {string} attr\n * @param {(string|null)} oldValue\n * @param {(string|null)} value\n */\n attributeChangedCallback(f, d, l) {\n if (n[f]) {\n if (f === this._ignoreAttr || d === l)\n return;\n const { prop: m, type: v } = n[f];\n try {\n this[m] = de(v, l);\n } catch {\n throw new ce(\n this,\n `The value defined as attr '${f}' cannot be parsed by type '${v.name}'`,\n l\n );\n }\n } else\n super.attributeChangedCallback(f, d, l);\n }\n static get props() {\n return { ...super.props, ...c };\n }\n static get observedAttributes() {\n const f = super.observedAttributes || [];\n for (const d in c)\n le(this.prototype, d, c[d], n, s);\n return Object.keys(n).concat(f);\n }\n }\n return a;\n};\nfunction be(e) {\n const { styles: t } = e.constructor, { shadowRoot: n } = e;\n if (n && t.length) {\n const s = [];\n Ut(t, (r) => {\n r && (r instanceof Element ? n.appendChild(r.cloneNode(!0)) : s.push(r));\n }), s.length && (n.adoptedStyleSheets = s);\n }\n}\nconst Yt = (e) => (t, n) => {\n O(\n /**\n * Clean the effect hook\n * @type {import(\"internal/hooks.js\").CollectorEffect}\n */\n ([s, r] = []) => ((r || !r) && (r && It(r, n) ? s = s || !0 : (w(s) && s(), s = null)), [s, n]),\n /**\n * @returns {any}\n */\n ([s, r], o) => o ? (w(s) && s(), []) : [s || t(), r],\n e\n );\n}, $ = Yt(At), ge = Yt(Ft);\nclass Bt extends Array {\n /**\n *\n * @param {any} initialState\n * @param {(nextState: any, state:any[], mount: boolean )=>void} mapState\n */\n constructor(t, n) {\n let s = !0;\n const r = (o) => {\n try {\n n(o, this, s);\n } finally {\n s = !1;\n }\n };\n super(void 0, r, n), r(t);\n }\n /**\n * The following code allows a mutable approach to useState\n * and useProp this with the idea of allowing an alternative\n * approach similar to Vue or Qwik of state management\n * @todo pending review with the community\n */\n // get value() {\n // return this[0];\n // }\n // set value(nextState) {\n // this[2](nextState, this);\n // }\n}\nconst rt = (e) => {\n const t = Rt();\n return O(\n (n = new Bt(e, (s, r, o) => {\n s = w(s) ? s(r[0]) : s, s !== r[0] && (r[0] = s, o || t());\n })) => n\n );\n}, T = (e, t) => {\n const [n] = O(([s, r, o = 0] = []) => ((!r || r && !It(r, t)) && (s = e()), [s, t, o]));\n return n;\n}, ct = (e) => {\n const { current: t } = _();\n if (!(e in t))\n throw new _t(\n t,\n `For useProp(\"${e}\"), the prop does not exist on the host.`,\n e\n );\n return O(\n (n = new Bt(t[e], (s, r) => {\n s = w(s) ? s(t[e]) : s, t[e] = s;\n })) => (n[0] = t[e], n)\n );\n}, C = (e, t = {}) => {\n const n = _();\n return n[e] || (n[e] = (s = t.detail) => jt(n.current, {\n type: e,\n ...t,\n detail: s\n })), n[e];\n}, nt = M(\"atomico/options\");\nglobalThis[nt] = globalThis[nt] || {\n sheet: !!document.adoptedStyleSheets\n};\nconst qt = globalThis[nt], Ee = {\n checked: 1,\n value: 1,\n selected: 1\n}, ve = {\n list: 1,\n type: 1,\n size: 1,\n form: 1,\n width: 1,\n height: 1,\n src: 1,\n href: 1,\n slot: 1\n}, De = {\n shadowDom: 1,\n staticNode: 1,\n cloneNode: 1,\n children: 1,\n key: 1\n}, B = {}, st = [];\nclass ot extends Text {\n}\nconst Se = M(\"atomico/id\"), I = M(\"atomico/type\"), Z = M(\"atomico/ref\"), xt = M(\"atomico/vnode\"), we = () => {\n};\nfunction Ce(e, t, n) {\n return Ht(this, e, t, n);\n}\nconst zt = (e, t, ...n) => {\n const s = t || B;\n let { children: r } = s;\n if (r = r ?? (n.length ? n : st), e === we)\n return r;\n const o = e ? e instanceof Node ? 1 : (\n //@ts-ignore\n e.prototype instanceof HTMLElement && 2\n ) : 0;\n if (o === !1 && e instanceof Function)\n return e(\n r != st ? { children: r, ...s } : s\n );\n const c = qt.render || Ce;\n return {\n [I]: xt,\n type: e,\n props: s,\n children: r,\n key: s.key,\n // key for lists by keys\n // define if the node declares its shadowDom\n shadow: s.shadowDom,\n // allows renderings to run only once\n static: s.staticNode,\n // defines whether the type is a childNode `1` or a constructor `2`\n raw: o,\n // defines whether to use the second parameter for document.createElement\n is: s.is,\n // clone the node if it comes from a reference\n clone: s.cloneNode,\n render: c\n };\n};\nfunction Ht(e, t, n = Se, s, r) {\n let o;\n if (t && t[n] && t[n].vnode == e || e[I] != xt)\n return t;\n (e || !t) && (r = r || e.type == \"svg\", o = e.type != \"host\" && (e.raw == 1 ? (t && e.clone ? t[Z] : t) != e.type : e.raw == 2 ? !(t instanceof e.type) : t ? t[Z] || t.localName != e.type : !t), o && e.type != null && (e.raw == 1 && e.clone ? (s = !0, t = e.type.cloneNode(!0), t[Z] = e.type) : t = e.raw == 1 ? e.type : e.raw == 2 ? new e.type() : r ? document.createElementNS(\n \"http://www.w3.org/2000/svg\",\n e.type\n ) : document.createElement(\n e.type,\n e.is ? { is: e.is } : void 0\n )));\n const c = t[n] ? t[n] : B, { vnode: u = B, cycle: a = 0 } = c;\n let { fragment: i, handlers: f } = c;\n const { children: d = st, props: l = B } = u;\n if (f = o ? {} : f || {}, e.static && !o)\n return t;\n if (e.shadow && !t.shadowRoot && // @ts-ignore\n t.attachShadow({ mode: \"open\", ...e.shadow }), e.props != l && Ne(t, l, e.props, f, r), e.children !== d) {\n const m = e.shadow ? t.shadowRoot : t;\n i = Pe(\n e.children,\n /**\n * @todo for hydration use attribute and send childNodes\n */\n i,\n m,\n n,\n // add support to foreignObject, children will escape from svg\n !a && s,\n r && e.type == \"foreignObject\" ? !1 : r\n );\n }\n return t[n] = { vnode: e, handlers: f, fragment: i, cycle: a + 1 }, t;\n}\nfunction Te(e, t) {\n const n = new ot(\"\"), s = new ot(\"\");\n let r;\n if (e[t ? \"prepend\" : \"append\"](n), t) {\n let { lastElementChild: o } = e;\n for (; o; ) {\n const { previousElementSibling: c } = o;\n if (et(o, !0) && !et(c, !0)) {\n r = o;\n break;\n }\n o = c;\n }\n }\n return r ? r.before(s) : e.append(s), {\n markStart: n,\n markEnd: s\n };\n}\nfunction Pe(e, t, n, s, r, o) {\n e = e == null ? null : re(e) ? e : [e];\n const c = t || Te(n, r), { markStart: u, markEnd: a, keyes: i } = c;\n let f;\n const d = i && /* @__PURE__ */ new Set();\n let l = u;\n if (e && Ut(e, (m) => {\n if (typeof m == \"object\" && !m[I])\n return;\n const v = m[I] && m.key, p = i && v != null && i.get(v);\n l != a && l === p ? d.delete(l) : l = l == a ? a : l.nextSibling;\n const h = i ? p : l;\n let b = h;\n if (m[I])\n b = Ht(m, h, s, r, o);\n else {\n const A = m + \"\";\n !(b instanceof Text) || b instanceof ot ? b = new Text(A) : b.data != A && (b.data = A);\n }\n b != l && (i && d.delete(b), !h || i ? (n.insertBefore(b, l), i && l != a && d.add(l)) : h == a ? n.insertBefore(b, a) : (n.replaceChild(b, h), l = b)), v != null && (f = f || /* @__PURE__ */ new Map(), f.set(v, b));\n }), l = l == a ? a : l.nextSibling, t && l != a)\n for (; l != a; ) {\n const m = l;\n l = l.nextSibling, m.remove();\n }\n return d && d.forEach((m) => m.remove()), c.keyes = f, c;\n}\nfunction Ne(e, t, n, s, r) {\n for (const o in t)\n !(o in n) && Dt(e, o, t[o], null, r, s);\n for (const o in n)\n Dt(e, o, t[o], n[o], r, s);\n}\nfunction Dt(e, t, n, s, r, o) {\n if (t = t == \"class\" && !r ? \"className\" : t, n = n ?? null, s = s ?? null, t in e && Ee[t] && (n = e[t]), !(s === n || De[t] || t[0] == \"_\"))\n if (t[0] == \"o\" && t[1] == \"n\" && (w(s) || w(n)))\n ke(e, t.slice(2), s, o);\n else if (t == \"ref\")\n s && (w(s) ? s(e) : s.current = e);\n else if (t == \"style\") {\n const { style: c } = e;\n n = n || \"\", s = s || \"\";\n const u = R(n), a = R(s);\n if (u)\n for (const i in n)\n if (a)\n !(i in s) && St(c, i, null);\n else\n break;\n if (a)\n for (const i in s) {\n const f = s[i];\n u && n[i] === f || St(c, i, f);\n }\n else\n c.cssText = s;\n } else {\n const c = t[0] == \"$\" ? t.slice(1) : t;\n c === t && (!r && !ve[t] && t in e || w(s) || w(n)) ? e[t] = s ?? \"\" : s == null ? e.removeAttribute(c) : e.setAttribute(\n c,\n R(s) ? JSON.stringify(s) : s\n );\n }\n}\nfunction ke(e, t, n, s) {\n if (s.handleEvent || (s.handleEvent = (r) => s[r.type].call(e, r)), n) {\n if (!s[t]) {\n const r = n.capture || n.once || n.passive ? Object.assign({}, n) : null;\n e.addEventListener(t, s, r);\n }\n s[t] = n;\n } else\n s[t] && (e.removeEventListener(t, s), delete s[t]);\n}\nfunction St(e, t, n) {\n let s = \"setProperty\";\n n == null && (s = \"removeProperty\", n = null), ~t.indexOf(\"-\") ? e[s](t, n) : e[t] = n;\n}\nconst wt = {};\nfunction z(e, ...t) {\n const n = (e.raw || e).reduce(\n (s, r, o) => s + r + (t[o] || \"\"),\n \"\"\n );\n return wt[n] = wt[n] || Oe(n);\n}\nfunction Oe(e) {\n if (qt.sheet) {\n const t = new CSSStyleSheet();\n return t.replaceSync(e), t;\n } else {\n const t = document.createElement(\"style\");\n return t.textContent = e, t;\n }\n}\nconst Me = zt(\"host\", { style: \"display: contents\" }), W = M(\"atomico/context\"), Ae = (e, t) => {\n const n = _();\n ge(\n () => $t(\n n.current,\n \"ConnectContext\",\n /**\n * @param {CustomEvent<import(\"context\").DetailConnectContext>} event\n */\n (s) => {\n e === s.detail.id && (s.stopPropagation(), s.detail.connect(t));\n }\n ),\n [e]\n );\n}, Fe = (e) => {\n const t = C(\"ConnectContext\", {\n bubbles: !0,\n composed: !0\n }), n = () => {\n let o;\n return t({\n id: e,\n connect(c) {\n o = c;\n }\n }), o;\n }, [s, r] = rt(\n n\n );\n return $(() => {\n s || (e[W] || (e[W] = customElements.whenDefined(\n new e().localName\n )), e[W].then(\n () => r(n)\n ));\n }, [e]), s;\n}, Re = (e) => {\n const t = Fe(e), n = Rt();\n return $(() => {\n if (t)\n return $t(t, \"UpdatedValue\", n);\n }, [t]), (t || e).value;\n}, Ie = (e) => {\n const t = j(\n () => (Ae(t, _().current), Me),\n {\n props: {\n value: {\n type: Object,\n event: { type: \"UpdatedValue\" },\n value: () => e\n }\n }\n }\n );\n return t.value = e, t;\n}, y = (e, t, n) => (t == null ? t = { key: n } : t.key = n, zt(e, t)), U = y, Kt = z`*,*:before,*:after{box-sizing:border-box}button{padding:0;touch-action:manipulation;cursor:pointer;user-select:none}`, Jt = z`.vh{position:absolute;transform:scale(0)}`;\nfunction it() {\n const e = /* @__PURE__ */ new Date();\n return new E(e.getFullYear(), e.getMonth() + 1, e.getDate());\n}\nfunction at(e, t = 0) {\n const n = S(e), s = n.getUTCDay(), r = (s < t ? 7 : 0) + s - t;\n return n.setUTCDate(n.getUTCDate() - r), E.from(n);\n}\nfunction Zt(e, t = 0) {\n return at(e, t).add({ days: 6 });\n}\nfunction Wt(e) {\n return E.from(new Date(Date.UTC(e.year, e.month, 0)));\n}\nfunction H(e, t, n) {\n return t && E.compare(e, t) < 0 ? t : n && E.compare(e, n) > 0 ? n : e;\n}\nconst Ue = { days: 1 };\nfunction $e(e, t = 0) {\n let n = at(e.toPlainDate(), t);\n const s = Zt(Wt(e), t), r = [];\n for (; E.compare(n, s) < 0; ) {\n const o = [];\n for (let c = 0; c < 7; c++)\n o.push(n), n = n.add(Ue);\n r.push(o);\n }\n return r;\n}\nfunction S(e) {\n return new Date(Date.UTC(e.year, e.month - 1, e.day ?? 1));\n}\nconst Le = /^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[0-1])$/, X = (e, t) => e.toString().padStart(t, \"0\");\nclass E {\n constructor(t, n, s) {\n this.year = t, this.month = n, this.day = s;\n }\n // this is an incomplete implementation that only handles arithmetic on a single unit at a time.\n // i didn't want to get into more complex arithmetic since it get tricky fast\n // this is enough to serve my needs and will still be a drop-in replacement when actual Temporal API lands\n add(t) {\n const n = S(this);\n if (\"days\" in t)\n return n.setUTCDate(this.day + t.days), E.from(n);\n let { year: s, month: r } = this;\n \"months\" in t ? (r = this.month + t.months, n.setUTCMonth(r - 1)) : (s = this.year + t.years, n.setUTCFullYear(s));\n const o = E.from(S({ year: s, month: r, day: 1 }));\n return H(E.from(n), o, Wt(o));\n }\n toString() {\n return `${X(this.year, 4)}-${X(this.month, 2)}-${X(this.day, 2)}`;\n }\n toPlainYearMonth() {\n return new K(this.year, this.month);\n }\n equals(t) {\n return E.compare(this, t) === 0;\n }\n static compare(t, n) {\n return t.year < n.year ? -1 : t.year > n.year ? 1 : t.month < n.month ? -1 : t.month > n.month ? 1 : t.day < n.day ? -1 : t.day > n.day ? 1 : 0;\n }\n static from(t) {\n if (typeof t == \"string\") {\n const n = t.match(Le);\n if (!n)\n throw new TypeError(t);\n const [, s, r, o] = n;\n return new E(\n parseInt(s, 10),\n parseInt(r, 10),\n parseInt(o, 10)\n );\n }\n return new E(\n t.getUTCFullYear(),\n t.getUTCMonth() + 1,\n t.getUTCDate()\n );\n }\n}\nclass K {\n constructor(t, n) {\n this.year = t, this.month = n;\n }\n add(t) {\n const n = S(this), s = (t.months ?? 0) + (t.years ?? 0) * 12;\n return n.setUTCMonth(n.getUTCMonth() + s), new K(n.getUTCFullYear(), n.getUTCMonth() + 1);\n }\n equals(t) {\n return this.year === t.year && this.month === t.month;\n }\n toPlainDate() {\n return new E(this.year, this.month, 1);\n }\n}\nfunction x(e, t) {\n if (t)\n try {\n return e.from(t);\n } catch {\n }\n}\nfunction P(e) {\n const [t, n] = ct(e);\n return [T(() => x(E, t), [t]), (o) => n(o?.toString())];\n}\nfunction _e(e) {\n const [t = \"\", n] = ct(e);\n return [T(() => {\n const [o, c] = t.split(\"/\"), u = x(E, o), a = x(E, c);\n return u && a ? [u, a] : [];\n }, [t]), (o) => n(`${o[0]}/${o[1]}`)];\n}\nfunction je(e) {\n const [t = \"\", n] = ct(e);\n return [T(() => {\n const o = [];\n for (const c of t.trim().split(/\\s+/)) {\n const u = x(E, c);\n u && o.push(u);\n }\n return o;\n }, [t]), (o) => n(o.join(\" \"))];\n}\nfunction L(e, t) {\n return T(\n () => new Intl.DateTimeFormat(t, { timeZone: \"UTC\", ...e }),\n [t, e]\n );\n}\nfunction Ct(e, t, n) {\n const s = L(e, n);\n return T(() => {\n const r = [], o = /* @__PURE__ */ new Date();\n for (var c = 0; c < 7; c++) {\n const u = (o.getUTCDay() - t + 7) % 7;\n r[u] = s.format(o), o.setUTCDate(o.getUTCDate() + 1);\n }\n return r;\n }, [t, s]);\n}\nconst Tt = (e, t, n) => H(e, t, n) === e, Pt = (e) => e.target.matches(\":dir(ltr)\"), Ye = { month: \"long\", day: \"numeric\" }, Be = { month: \"long\" }, qe = { weekday: \"narrow\" }, xe = { weekday: \"long\" }, G = { bubbles: !0 };\nfunction ze({ props: e, context: t }) {\n const { offset: n } = e, {\n firstDayOfWeek: s,\n isDateDisallowed: r,\n min: o,\n max: c,\n page: u,\n locale: a,\n focusedDate: i\n } = t, f = it(), d = Ct(xe, s, a), l = Ct(qe, s, a), m = L(Ye, a), v = L(Be, a), p = T(\n () => u.start.add({ months: n }),\n [u, n]\n ), h = T(\n () => $e(p, s),\n [p, s]\n ), b = C(\"focusday\", G), A = C(\"selectday\", G), Xt = C(\"hoverday\", G);\n function mt(g) {\n b(H(g, o, c));\n }\n function Gt(g) {\n let D;\n switch (g.key) {\n case \"ArrowRight\":\n D = i.add({ days: Pt(g) ? 1 : -1 });\n break;\n case \"ArrowLeft\":\n D = i.add({ days: Pt(g) ? -1 : 1 });\n break;\n case \"ArrowDown\":\n D = i.add({ days: 7 });\n break;\n case \"ArrowUp\":\n D = i.add({ days: -7 });\n break;\n case \"PageUp\":\n D = i.add(g.shiftKey ? { years: -1 } : { months: -1 });\n break;\n case \"PageDown\":\n D = i.add(g.shiftKey ? { years: 1 } : { months: 1 });\n break;\n case \"Home\":\n D = at(i, s);\n break;\n case \"End\":\n D = Zt(i, s);\n break;\n default:\n return;\n }\n mt(D), g.preventDefault();\n }\n function Qt(g) {\n const D = p.equals(g);\n if (!t.showOutsideDays && !D)\n return;\n const Vt = g.equals(i), yt = g.equals(f), pt = S(g), Y = r?.(pt), bt = !Tt(g, o, c);\n let gt = \"\", N;\n if (t.type === \"range\") {\n const [F, J] = t.value, Et = F?.equals(g), vt = J?.equals(g);\n N = F && J && Tt(g, F, J), gt = `${Et ? \"range-start\" : \"\"} ${vt ? \"range-end\" : \"\"} ${N && !Et && !vt ? \"range-inner\" : \"\"}`;\n } else\n t.type === \"multi\" ? N = t.value.some((F) => F.equals(g)) : N = t.value?.equals(g);\n return {\n part: `${`button day ${// we don't want outside days to ever be shown as selected\n D ? N ? \"selected\" : \"\" : \"outside\"} ${Y ? \"disallowed\" : \"\"} ${yt ? \"today\" : \"\"}`} ${gt}`,\n tabindex: D && Vt ? 0 : -1,\n disabled: bt,\n \"aria-disabled\": Y ? \"true\" : void 0,\n \"aria-pressed\": D && N,\n \"aria-current\": yt ? \"date\" : void 0,\n \"aria-label\": m.format(pt),\n onkeydown: Gt,\n onclick() {\n Y || A(g), mt(g);\n },\n onmouseover() {\n !Y && !bt && Xt(g);\n }\n };\n }\n return {\n weeks: h,\n yearMonth: p,\n daysLong: d,\n daysShort: l,\n formatter: v,\n getDayProps: Qt\n };\n}\nconst Q = it(), lt = Ie({\n type: \"date\",\n firstDayOfWeek: 1,\n isDateDisallowed: () => !1,\n focusedDate: Q,\n page: { start: Q.toPlainYearMonth(), end: Q.toPlainYearMonth() }\n});\ncustomElements.define(\"calendar-month-ctx\", lt);\nconst He = j(\n (e) => {\n const t = Re(lt), n = se(), s = ze({ props: e, context: t });\n function r() {\n n.current.querySelector(\"button[tabindex='0']\")?.focus();\n }\n return /* @__PURE__ */ U(\"host\", { shadowDom: !0, focus: r, children: [\n /* @__PURE__ */ y(\"div\", { id: \"h\", part: \"heading\", children: s.formatter.format(S(s.yearMonth)) }),\n /* @__PURE__ */ U(\"table\", { ref: n, \"aria-labelledby\": \"h\", part: \"table\", children: [\n /* @__PURE__ */ y(\"thead\", { children: /* @__PURE__ */ y(\"tr\", { part: \"tr head\", children: s.daysLong.map((o, c) => /* @__PURE__ */ U(\"th\", { part: \"th\", scope: \"col\", children: [\n /* @__PURE__ */ y(\"span\", { class: \"vh\", children: o }),\n /* @__PURE__ */ y(\"span\", { \"aria-hidden\": \"true\", children: s.daysShort[c] })\n ] })) }) }),\n /* @__PURE__ */ y(\"tbody\", { children: s.weeks.map((o, c) => /* @__PURE__ */ y(\"tr\", { part: \"tr week\", children: o.map((u, a) => {\n const i = s.getDayProps(u);\n return /* @__PURE__ */ y(\"td\", { part: \"td\", children: i && /* @__PURE__ */ y(\"button\", { ...i, children: u.day }) }, a);\n }) }, c)) })\n ] })\n ] });\n },\n {\n props: {\n offset: {\n type: Number,\n value: 0\n }\n },\n styles: [\n Kt,\n Jt,\n z`:host{--color-accent: black;--color-text-on-accent: white;display:flex;flex-direction:column;gap:.25rem;text-align:center;inline-size:fit-content}table{border-collapse:collapse;font-size:.875rem}th{font-weight:700;block-size:2.25rem}td{padding-inline:0}button{color:inherit;font-size:inherit;background:transparent;border:0;font-variant-numeric:tabular-nums;block-size:2.25rem;inline-size:2.25rem}button:hover:where(:not(:disabled,[aria-disabled])){background:#0000000d}button:is([aria-pressed=true],:focus-visible){background:var(--color-accent);color:var(--color-text-on-accent)}button:focus-visible{outline:1px solid var(--color-text-on-accent);outline-offset:-2px}button:disabled,:host::part(outside),:host::part(disallowed){cursor:default;opacity:.5}`\n ]\n }\n);\ncustomElements.define(\"calendar-month\", He);\nfunction Nt(e) {\n return /* @__PURE__ */ y(\n \"button\",\n {\n part: `button ${e.name} ${e.onclick ? \"\" : \"disabled\"}`,\n onclick: e.onclick,\n \"aria-disabled\": e.onclick ? null : \"true\",\n children: /* @__PURE__ */ y(\"slot\", { name: e.name, children: e.children })\n }\n );\n}\nfunction ut(e) {\n const t = S(e.page.start), n = S(e.page.end);\n return /* @__PURE__ */ U(\"div\", { role: \"group\", \"aria-labelledby\": \"h\", part: \"container\", children: [\n /* @__PURE__ */ y(\"div\", { id: \"h\", class: \"vh\", \"aria-live\": \"polite\", \"aria-atomic\": \"true\", children: e.formatVerbose.formatRange(t, n) }),\n /* @__PURE__ */ U(\"div\", { part: \"header\", children: [\n /* @__PURE__ */ y(Nt, { name: \"previous\", onclick: e.previous, children: \"Previous\" }),\n /* @__PURE__ */ y(\"slot\", { part: \"heading\", name: \"heading\", children: /* @__PURE__ */ y(\"div\", { \"aria-hidden\": \"true\", children: e.format.formatRange(t, n) }) }),\n /* @__PURE__ */ y(Nt, { name: \"next\", onclick: e.next, children: \"Next\" })\n ] }),\n /* @__PURE__ */ y(\n lt,\n {\n value: e,\n onselectday: e.onSelect,\n onfocusday: e.onFocus,\n onhoverday: e.onHover,\n children: /* @__PURE__ */ y(\"slot\", {})\n }\n )\n ] });\n}\nconst ft = {\n value: {\n type: String,\n value: \"\"\n },\n min: {\n type: String,\n value: \"\"\n },\n max: {\n type: String,\n value: \"\"\n },\n isDateDisallowed: {\n type: Function,\n value: (e) => !1\n },\n firstDayOfWeek: {\n type: Number,\n value: () => 1\n },\n showOutsideDays: {\n type: Boolean,\n value: !1\n },\n locale: {\n type: String,\n value: () => {\n }\n },\n months: {\n type: Number,\n value: 1\n },\n focusedDate: {\n type: String,\n value: () => {\n }\n },\n pageBy: {\n type: String,\n value: () => \"months\"\n }\n}, dt = [\n Kt,\n Jt,\n z`:host{display:block;inline-size:fit-content}[role=group]{display:flex;flex-direction:column;gap:1em}:host::part(header){display:flex;align-items:center;justify-content:space-between}:host::part(heading){font-weight:700;font-size:1.25em}button{display:flex;align-items:center;justify-content:center}button[aria-disabled]{cursor:default;opacity:.5}`\n], Ke = { year: \"numeric\" }, Je = { year: \"numeric\", month: \"long\" };\nfunction V(e, t) {\n return (t.year - e.year) * 12 + t.month - e.month;\n}\nconst kt = (e, t) => (e = t === 12 ? new K(e.year, 1) : e, {\n start: e,\n end: e.add({ months: t - 1 })\n});\nfunction Ze({\n pageBy: e,\n focusedDate: t,\n months: n,\n max: s,\n min: r,\n goto: o\n}) {\n const c = e === \"single\" ? 1 : n, [u, a] = rt(\n () => kt(t.toPlainYearMonth(), n)\n ), i = (d) => a(kt(u.start.add({ months: d }), n)), f = (d) => {\n const l = V(u.start, d.toPlainYearMonth());\n return l >= 0 && l < n;\n };\n return $(() => {\n if (f(t))\n return;\n const d = V(t.toPlainYearMonth(), u.start);\n o(t.add({ months: d }));\n }, [u.start]), $(() => {\n if (f(t))\n return;\n const d = V(u.start, t.toPlainYearMonth());\n i(d === -1 ? -c : d === n ? c : Math.floor(d / n) * n);\n }, [t, c, n]), {\n page: u,\n previous: !r || !f(r) ? () => i(-c) : void 0,\n next: !s || !f(s) ? () => i(c) : void 0\n };\n}\nfunction ht({\n months: e,\n pageBy: t,\n locale: n,\n focusedDate: s,\n setFocusedDate: r\n}) {\n const [o] = P(\"min\"), [c] = P(\"max\"), u = C(\"focusday\"), a = C(\"change\"), i = T(\n () => H(s ?? it(), o, c),\n [s, o, c]\n );\n function f(h) {\n r(h), u(S(h));\n }\n const { next: d, previous: l, page: m } = Ze({\n pageBy: t,\n focusedDate: i,\n months: e,\n min: o,\n max: c,\n goto: f\n }), v = _();\n function p() {\n v.current.querySelectorAll(\"calendar-month\").forEach((h) => h.focus());\n }\n return {\n format: L(Ke, n),\n formatVerbose: L(Je, n),\n page: m,\n focusedDate: i,\n dispatch: a,\n onFocus(h) {\n h.stopPropagation(), f(h.detail), setTimeout(p);\n },\n min: o,\n max: c,\n next: d,\n previous: l,\n focus: p\n };\n}\nconst We = j(\n (e) => {\n const [t, n] = P(\"value\"), [s = t, r] = P(\"focusedDate\"), o = ht({\n ...e,\n focusedDate: s,\n setFocusedDate: r\n });\n function c(u) {\n n(u.detail), o.dispatch();\n }\n return /* @__PURE__ */ y(\"host\", { shadowDom: !0, focus: o.focus, children: /* @__PURE__ */ y(\n ut,\n {\n ...e,\n ...o,\n type: \"date\",\n value: t,\n onSelect: c\n }\n ) });\n },\n { props: ft, styles: dt }\n);\ncustomElements.define(\"calendar-date\", We);\nconst Ot = (e, t) => E.compare(e, t) < 0 ? [e, t] : [t, e], Xe = j(\n (e) => {\n const [t, n] = _e(\"value\"), [s = t[0], r] = P(\"focusedDate\"), o = ht({\n ...e,\n focusedDate: s,\n setFocusedDate: r\n }), c = C(\"rangestart\"), u = C(\"rangeend\"), [a, i] = P(\n \"tentative\"\n ), [f, d] = rt();\n $(() => d(void 0), [a]);\n function l(h) {\n o.onFocus(h), m(h);\n }\n function m(h) {\n h.stopPropagation(), a && d(h.detail);\n }\n function v(h) {\n const b = h.detail;\n h.stopPropagation(), a ? (n(Ot(a, b)), i(void 0), u(S(b)), o.dispatch()) : (i(b), c(S(b)));\n }\n const p = a ? Ot(a, f ?? a) : t;\n return /* @__PURE__ */ y(\"host\", { shadowDom: !0, focus: o.focus, children: /* @__PURE__ */ y(\n ut,\n {\n ...e,\n ...o,\n type: \"range\",\n value: p,\n onFocus: l,\n onHover: m,\n onSelect: v\n }\n ) });\n },\n {\n props: {\n ...ft,\n tentative: {\n type: String,\n value: \"\"\n }\n },\n styles: dt\n }\n);\ncustomElements.define(\"calendar-range\", Xe);\nconst Ge = j(\n (e) => {\n const [t, n] = je(\"value\"), [s = t[0], r] = P(\"focusedDate\"), o = ht({\n ...e,\n focusedDate: s,\n setFocusedDate: r\n });\n function c(u) {\n const a = [...t], i = t.findIndex((f) => f.equals(u.detail));\n i < 0 ? a.push(u.detail) : a.splice(i, 1), n(a), o.dispatch();\n }\n return /* @__PURE__ */ y(\"host\", { shadowDom: !0, focus: o.focus, children: /* @__PURE__ */ y(\n ut,\n {\n ...e,\n ...o,\n type: \"multi\",\n value: t,\n onSelect: c\n }\n ) });\n },\n { props: ft, styles: dt }\n);\ncustomElements.define(\"calendar-multi\", Ge);\nexport {\n We as CalendarDate,\n He as CalendarMonth,\n Ge as CalendarMulti,\n Xe as CalendarRange\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
* Built by Endavans
|
|
3
3
|
* © https://beeq.design - Apache 2 License.
|
|
4
4
|
*/
|
|
5
|
-
import{r,c as a,g as e,h as b}from"./p-60094726.js";import{c as t}from"./p-1f3a4359.js";import{d as n}from"./p-1defeea3.js";import{i}from"./p-99829fc7.js";import{i as s}from"./p-ecd27cf2.js";const o='.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))}::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}.pointer-events-auto{pointer-events:auto}.box-content{box-sizing:content-box}.block{display:block}.size-\\[--bq-slider--thumb-size\\]{height:var(--bq-slider--thumb-size);width:var(--bq-slider--thumb-size)}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.rounded-full{border-radius:var(--bq-radius--full)}.border-m{border-width:var(--bq-stroke-m)}.border-solid{border-style:solid}.border-brand{border-color:var(--bq-stroke--brand)}.transition-\\[background-color\\2c border-color\\2c box-shadow\\]{transition-duration:.15s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.bg-active-ui-brand{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%)}.border-active-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%)}.border-hover-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.is-full{inline-size:100%}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}.thumb-focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb-hover{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.thumb-active{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}@-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-slider--size:4px;--bq-slider--border-radius:var(--bq-radius--xs);--bq-slider--thumb-size:13px;--bq-slider--progress-color:var(--bq-ui--brand);--bq-slider--trackarea-color:var(--bq-ui--secondary);display:block;inline-size:100%}input[type=range]::-webkit-slider-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-webkit-slider-runnable-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-webkit-slider-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-webkit-slider-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-webkit-slider-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-webkit-slider-thumb{cursor:not-allowed}input[type=range]::-moz-range-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-moz-range-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-moz-range-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-moz-range-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-moz-range-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-moz-range-thumb{cursor:not-allowed}.-translate-y-1\\/2{--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;--tw-translate-y:-50%;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))}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.start-0{inset-inline-start:0}.me-xs{margin-inline-end:var(--bq-spacing-xs)}.ms-xs{margin-inline-start:var(--bq-spacing-xs)}.flex{display:flex}.hidden{display:none}.rounded-xs{border-radius:var(--bq-radius--xs)}.bg-\\[--bq-slider--progress-color\\]{background-color:var(--bq-slider--progress-color)}.bg-\\[--bq-slider--trackarea-color\\]{background-color:var(--bq-slider--trackarea-color)}.bg-transparent{background-color:transparent}.text-start{text-align:start}.text-end{text-align:end}.text-s{font-size:var(--bq-font-size--s)}.font-medium{font-weight:var(--bq-font-weight--medium)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.text-primary{color:var(--bq-text--primary)}.opacity-60{opacity:.6}.outline-none{outline:2px solid transparent;outline-offset:2px}.bs-1{block-size:.25rem}.is-1{inline-size:.25rem}.is-\\[50\\%\\]{inline-size:50%}.is-fit{inline-size:fit-content}.min-is-8{min-inline-size:2rem}.inset-bs-\\[50\\%\\]{inset-block-start:50%}.\\[font-variant\\:tabular-nums\\]{font-variant:tabular-nums}.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}}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.\\[\\&\\:\\:part\\(panel\\)\\]\\:absolute::part(panel){position:absolute}.visible{visibility:visible}.fixed{position:fixed}';const q=o;const d=class{constructor(e){r(this,e);this.bqChange=a(this,"bqChange",7);this.bqBlur=a(this,"bqBlur",7);this.bqFocus=a(this,"bqFocus",7);if(e.$hostElement$["s-ei"]){this.internals=e.$hostElement$["s-ei"]}else{this.internals=e.$hostElement$.attachInternals();e.$hostElement$["s-ei"]=this.internals}this.minValue=undefined;this.maxValue=undefined;this.minThumbPosition=undefined;this.maxThumbPosition=undefined;this.debounceTime=0;this.disabled=false;this.enableValueIndicator=false;this.gap=0;this.max=100;this.min=0;this.name=undefined;this.step=1;this.type="single";this.value=undefined;this.enableTooltip=false;this.tooltipAlwaysVisible=false}inputMinElem;inputMaxElem;minTooltipElem;maxTooltipElem;progressElem;trackElem;debounceBqChange;internals;get el(){return e(this)}handleValuePropChange(r){this.setState(r);this.emitBqChange()}handleStepPropChange(){this.minValue=Math.round(this.minValue/this.step)*this.step;this.maxValue=Math.round(this.maxValue/this.step)*this.step}handleGapChange(r){if(!this.isRangeType)return;const a=!i(this.min)&&!i(this.max)?[this.min,this.max]:this.stringToObject(this.value);this.gap=r<a[0]||r>a[1]?0:r}bqChange;bqBlur;bqFocus;componentWillLoad(){this.init()}componentDidLoad(){this.runUpdates()}componentDidUpdate(){this.runUpdates()}formAssociatedCallback(){this.internals?.setFormValue(`${this.value}`)}init=()=>{this.handleGapChange(this.gap);this.setState(this.value);this.handleStepPropChange()};runUpdates=()=>{this.updateProgressTrack();this.syncInputsValue();this.setThumbPosition()};setState=r=>{const a=this.isRangeType;const e=this.stringToObject(r);this.minValue=a?t(e[0],this.min,this.max-this.gap):e;this.maxValue=a?t(e[1],this.minValue+this.gap,this.max):this.minValue};setThumbPosition=()=>{if(!this.enableTooltip)return;({minThumbPosition:this.minThumbPosition,maxThumbPosition:this.maxThumbPosition}=this.thumbPosition())};syncInputsValue=()=>{this.inputMinElem?.setAttribute("value",this.minValue.toString());this.inputMaxElem?.setAttribute("value",this.maxValue.toString())};stringToObject=r=>s(r)?JSON.parse(r):r;handleInputChange=(r,a)=>{const e=a.target;const b=parseFloat(e.value);if(r==="min"){this.minValue=this.isRangeType?Math.min(b,this.maxValue-this.gap):b}else if(r==="max"){this.maxValue=this.isRangeType?Math.max(b,this.minValue+this.gap):b}const t=(r==="min"?this.minValue:this.maxValue).toString();e.value=t;e.setAttribute("value",t);const{internals:n,isRangeType:i,maxValue:s,minValue:o}=this;this.value=i?[o,s]:o;n?.setFormValue(i?JSON.stringify(this.value):this.value.toString())};calculatePercent=r=>{const a=Number(this.max)-Number(this.min);return r/a*100};updateProgressTrack=()=>{if(!this.progressElem)return;const r=this.isRangeType?this.calculatePercent(this.minValue):0;const a=this.isRangeType?this.calculatePercent(Number(this.maxValue)-Number(this.minValue)):this.calculatePercent(this.minValue);this.progressElem.style.insetInlineStart=`${r}%`;this.progressElem.style.inlineSize=`${a}%`};calculateThumbPosition=r=>{if(!this.progressElem)return;const a=this.trackElem.getBoundingClientRect().width;const e=parseInt(getComputedStyle(this.el).getPropertyValue("--bq-slider--thumb-size"),10)+4;const b=a-e;return(r-this.min)/(this.max-this.min)*b+e/2};thumbPosition=()=>{const r=this.calculateThumbPosition(this.minValue);const a=this.isRangeType?this.calculateThumbPosition(this.maxValue):undefined;return{minThumbPosition:r,maxThumbPosition:a}};emitBqChange=()=>{this.debounceBqChange?.cancel();const r=this.isRangeType?[this.minValue,this.maxValue]:this.minValue;this.debounceBqChange=n((()=>this.bqChange.emit({value:r,el:this.el})),this.debounceTime);this.debounceBqChange()};handleBlur=()=>{this.bqBlur.emit(this.el)};handleFocus=()=>{this.bqFocus.emit(this.el)};handleMouseDown=r=>{this.handleTooltipVisibility(r,"remove")};handleMouseUp=r=>{this.handleTooltipVisibility(r,"add")};handleTooltipVisibility=(r,a)=>{if(!this.enableTooltip||this.tooltipAlwaysVisible)return;const e=r.target;const b=e===this.inputMinElem?this.minTooltipElem:this.maxTooltipElem;b.classList[a]("hidden")};get decimalCount(){return(this.step%1).toFixed(10).split(".")[1].replace(/0+$/,"").length}get isRangeType(){return this.type==="range"}get isTooltipAlwaysVisible(){return this.tooltipAlwaysVisible&&this.enableTooltip}renderLabel=(r,a,e)=>b("span",{class:{[`${e} box-content block text-s font-medium leading-regular text-primary is-fit min-is-8 [font-variant:tabular-nums]`]:true,hidden:a==="start"?!this.enableValueIndicator:!this.enableValueIndicator||!this.isRangeType},part:`label-${a}`},r.toFixed(this.decimalCount));renderInput=(r,a,e)=>{const t=r=>{const a={min:this.minValue===this.min&&this.maxValue===this.minValue,max:this.maxValue===this.max&&this.minValue===this.maxValue};return a[r]?"-1":"0"};return b("input",{type:"range",class:{"absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed":true,"pointer-events-none":this.isRangeType},style:this.isRangeType?{zIndex:t(r)}:undefined,disabled:this.disabled,min:this.min,max:this.max,name:this.name,step:this.step,ref:e,onInput:a=>this.handleInputChange(r,a),onBlur:this.handleBlur,onFocus:this.handleFocus,onMouseDown:this.handleMouseDown,onMouseUp:this.handleMouseUp,value:a,part:`input-${r}`})};renderTooltip=(r,a,e)=>b("bq-tooltip",{class:{"absolute [&::part(panel)]:absolute":true,hidden:!this.isTooltipAlwaysVisible},exportparts:"base,trigger,panel",alwaysVisible:true,distance:this.enableValueIndicator?6:16,style:{insetInlineStart:`${a}px`,fontVariant:"tabular-nums"},ref:e},b("div",{class:"absolute bs-1 is-1",slot:"trigger"}),r.toFixed(this.decimalCount));render(){return b("div",{key:"295ad3ada29d51d1eca68a7efab8507c36e09008","aria-disabled":this.disabled?"true":"false",class:{"flex is-full":true,"cursor-not-allowed opacity-60":this.disabled},part:"base"},this.renderLabel(this.minValue,"start","me-xs text-end"),b("div",{key:"0bfa885d663c505c5492c43072ae696401f7bbae",class:"relative is-full",part:"container"},b("span",{key:"85becad69dcfae733c4720a7ff0380a98e4df815",class:"absolute start-0 -translate-y-1/2 rounded-xs bg-[--bq-slider--trackarea-color] bs-1 is-full inset-bs-[50%]",ref:r=>this.trackElem=r,part:"track-area"}),b("span",{key:"4dfc2ac0be5dadc762c201b8e90ba0dadbce5ddb",class:"absolute -translate-y-1/2 rounded-xs bg-[--bq-slider--progress-color] bs-1 is-[50%] inset-bs-[50%]",ref:r=>this.progressElem=r,part:"progress-area"}),this.enableTooltip&&this.renderTooltip(this.minValue,this.minThumbPosition,(r=>this.minTooltipElem=r)),this.renderInput("min",this.minValue,(r=>this.inputMinElem=r)),this.enableTooltip&&this.isRangeType&&this.renderTooltip(this.maxValue,this.maxThumbPosition,(r=>this.maxTooltipElem=r)),this.isRangeType&&this.renderInput("max",this.maxValue,(r=>this.inputMaxElem=r))),this.renderLabel(this.maxValue,"end","ms-xs text-start"))}static get delegatesFocus(){return true}static get formAssociated(){return true}static get watchers(){return{value:["handleValuePropChange"],step:["handleStepPropChange"],gap:["handleGapChange"]}}};d.style=q;export{d as bq_slider};
|
|
6
|
-
//# sourceMappingURL=p-
|
|
5
|
+
import{r,c as a,g as e,h as b}from"./p-4a3784e1.js";import{c as t}from"./p-1f3a4359.js";import{d as n}from"./p-1defeea3.js";import{i}from"./p-99829fc7.js";import{i as s}from"./p-ecd27cf2.js";const o='.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))}::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}.pointer-events-auto{pointer-events:auto}.box-content{box-sizing:content-box}.block{display:block}.size-\\[--bq-slider--thumb-size\\]{height:var(--bq-slider--thumb-size);width:var(--bq-slider--thumb-size)}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.appearance-none{appearance:none}.rounded-full{border-radius:var(--bq-radius--full)}.border-m{border-width:var(--bq-stroke-m)}.border-solid{border-style:solid}.border-brand{border-color:var(--bq-stroke--brand)}.transition-\\[background-color\\2c border-color\\2c box-shadow\\]{transition-duration:.15s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.bg-active-ui-brand{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%)}.border-active-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%)}.border-hover-brand{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.is-full{inline-size:100%}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}.thumb-focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}.thumb-hover{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}.thumb-active{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}@-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-slider--size:4px;--bq-slider--border-radius:var(--bq-radius--xs);--bq-slider--thumb-size:13px;--bq-slider--progress-color:var(--bq-ui--brand);--bq-slider--trackarea-color:var(--bq-ui--secondary);display:block;inline-size:100%}input[type=range]::-webkit-slider-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-webkit-slider-runnable-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-webkit-slider-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-webkit-slider-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-webkit-slider-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-webkit-slider-thumb{cursor:not-allowed}input[type=range]::-moz-range-thumb{appearance:none;background-color:var(--bq-ui--primary);border-color:var(--bq-stroke--brand);border-radius:var(--bq-radius--full);border-style:solid;border-width:var(--bq-stroke-m);box-sizing:content-box;cursor:pointer;height:var(--bq-slider--thumb-size);pointer-events:auto;transition-duration:.3s;transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);width:var(--bq-slider--thumb-size)}input[type=range]::-moz-range-track{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,1,1)}input[type=range]:focus-visible::-moz-range-thumb{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}input[type=range]:hover::-moz-range-thumb{border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-hover) 20%)}input[type=range]:active::-moz-range-thumb{background-color:color-mix(in srgb,var(--bq-ui--brand),var(--bq-active) 20%);border-color:color-mix(in srgb,var(--bq-stroke--brand),var(--bq-active) 20%);cursor:grabbing}input[type=range][disabled]::-moz-range-thumb{cursor:not-allowed}.-translate-y-1\\/2{--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;--tw-translate-y:-50%;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))}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.pointer-events-none{pointer-events:none}.static{position:static}.absolute{position:absolute}.relative{position:relative}.start-0{inset-inline-start:0}.me-xs{margin-inline-end:var(--bq-spacing-xs)}.ms-xs{margin-inline-start:var(--bq-spacing-xs)}.flex{display:flex}.hidden{display:none}.rounded-xs{border-radius:var(--bq-radius--xs)}.bg-\\[--bq-slider--progress-color\\]{background-color:var(--bq-slider--progress-color)}.bg-\\[--bq-slider--trackarea-color\\]{background-color:var(--bq-slider--trackarea-color)}.bg-transparent{background-color:transparent}.text-start{text-align:start}.text-end{text-align:end}.text-s{font-size:var(--bq-font-size--s)}.font-medium{font-weight:var(--bq-font-weight--medium)}.leading-regular{line-height:var(--bq-font-line-height--regular)}.text-primary{color:var(--bq-text--primary)}.opacity-60{opacity:.6}.outline-none{outline:2px solid transparent;outline-offset:2px}.bs-1{block-size:.25rem}.is-1{inline-size:.25rem}.is-\\[50\\%\\]{inline-size:50%}.is-fit{inline-size:fit-content}.min-is-8{min-inline-size:2rem}.inset-bs-\\[50\\%\\]{inset-block-start:50%}.\\[font-variant\\:tabular-nums\\]{font-variant:tabular-nums}.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}}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.\\[\\&\\:\\:part\\(panel\\)\\]\\:absolute::part(panel){position:absolute}.visible{visibility:visible}.fixed{position:fixed}';const q=o;const l=class{constructor(e){r(this,e);this.bqChange=a(this,"bqChange",7);this.bqBlur=a(this,"bqBlur",7);this.bqFocus=a(this,"bqFocus",7);if(e.$hostElement$["s-ei"]){this.internals=e.$hostElement$["s-ei"]}else{this.internals=e.$hostElement$.attachInternals();e.$hostElement$["s-ei"]=this.internals}}inputMinElem;inputMaxElem;minTooltipElem;maxTooltipElem;progressElem;trackElem;debounceBqChange;internals;get el(){return e(this)}minValue;maxValue;minThumbPosition;maxThumbPosition;debounceTime=0;disabled=false;enableValueIndicator=false;gap=0;max=100;min=0;name;step=1;type="single";value;enableTooltip=false;tooltipAlwaysVisible=false;handleValuePropChange(r){this.setState(r);this.emitBqChange()}handleStepPropChange(){this.minValue=Math.round(this.minValue/this.step)*this.step;this.maxValue=Math.round(this.maxValue/this.step)*this.step}handleGapChange(r){if(!this.isRangeType)return;const a=!i(this.min)&&!i(this.max)?[this.min,this.max]:this.stringToObject(this.value);this.gap=r<a[0]||r>a[1]?0:r}bqChange;bqBlur;bqFocus;componentWillLoad(){this.init()}componentDidLoad(){this.runUpdates()}componentDidUpdate(){this.runUpdates()}formAssociatedCallback(){this.internals?.setFormValue(`${this.value}`)}init=()=>{this.handleGapChange(this.gap);this.setState(this.value);this.handleStepPropChange()};runUpdates=()=>{this.updateProgressTrack();this.syncInputsValue();this.setThumbPosition()};setState=r=>{const a=this.isRangeType;const e=this.stringToObject(r);this.minValue=a?t(e[0],this.min,this.max-this.gap):e;this.maxValue=a?t(e[1],this.minValue+this.gap,this.max):this.minValue};setThumbPosition=()=>{if(!this.enableTooltip)return;({minThumbPosition:this.minThumbPosition,maxThumbPosition:this.maxThumbPosition}=this.thumbPosition())};syncInputsValue=()=>{this.inputMinElem?.setAttribute("value",this.minValue.toString());this.inputMaxElem?.setAttribute("value",this.maxValue.toString())};stringToObject=r=>s(r)?JSON.parse(r):r;handleInputChange=(r,a)=>{const e=a.target;const b=parseFloat(e.value);if(r==="min"){this.minValue=this.isRangeType?Math.min(b,this.maxValue-this.gap):b}else if(r==="max"){this.maxValue=this.isRangeType?Math.max(b,this.minValue+this.gap):b}const t=(r==="min"?this.minValue:this.maxValue).toString();e.value=t;e.setAttribute("value",t);const{internals:n,isRangeType:i,maxValue:s,minValue:o}=this;this.value=i?[o,s]:o;n?.setFormValue(i?JSON.stringify(this.value):this.value.toString())};calculatePercent=r=>{const a=Number(this.max)-Number(this.min);return r/a*100};updateProgressTrack=()=>{if(!this.progressElem)return;const r=this.isRangeType?this.calculatePercent(this.minValue):0;const a=this.isRangeType?this.calculatePercent(Number(this.maxValue)-Number(this.minValue)):this.calculatePercent(this.minValue);this.progressElem.style.insetInlineStart=`${r}%`;this.progressElem.style.inlineSize=`${a}%`};calculateThumbPosition=r=>{if(!this.progressElem)return;const a=this.trackElem.getBoundingClientRect().width;const e=parseInt(getComputedStyle(this.el).getPropertyValue("--bq-slider--thumb-size"),10)+4;const b=a-e;return(r-this.min)/(this.max-this.min)*b+e/2};thumbPosition=()=>{const r=this.calculateThumbPosition(this.minValue);const a=this.isRangeType?this.calculateThumbPosition(this.maxValue):undefined;return{minThumbPosition:r,maxThumbPosition:a}};emitBqChange=()=>{this.debounceBqChange?.cancel();const r=this.isRangeType?[this.minValue,this.maxValue]:this.minValue;this.debounceBqChange=n((()=>this.bqChange.emit({value:r,el:this.el})),this.debounceTime);this.debounceBqChange()};handleBlur=()=>{this.bqBlur.emit(this.el)};handleFocus=()=>{this.bqFocus.emit(this.el)};handleMouseDown=r=>{this.handleTooltipVisibility(r,"remove")};handleMouseUp=r=>{this.handleTooltipVisibility(r,"add")};handleTooltipVisibility=(r,a)=>{if(!this.enableTooltip||this.tooltipAlwaysVisible)return;const e=r.target;const b=e===this.inputMinElem?this.minTooltipElem:this.maxTooltipElem;b.classList[a]("hidden")};get decimalCount(){return(this.step%1).toFixed(10).split(".")[1].replace(/0+$/,"").length}get isRangeType(){return this.type==="range"}get isTooltipAlwaysVisible(){return this.tooltipAlwaysVisible&&this.enableTooltip}renderLabel=(r,a,e)=>b("span",{class:{[`${e} box-content block text-s font-medium leading-regular text-primary is-fit min-is-8 [font-variant:tabular-nums]`]:true,hidden:a==="start"?!this.enableValueIndicator:!this.enableValueIndicator||!this.isRangeType},part:`label-${a}`},r.toFixed(this.decimalCount));renderInput=(r,a,e)=>{const t=r=>{const a={min:this.minValue===this.min&&this.maxValue===this.minValue,max:this.maxValue===this.max&&this.minValue===this.maxValue};return a[r]?"-1":"0"};return b("input",{type:"range",class:{"absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed":true,"pointer-events-none":this.isRangeType},style:this.isRangeType?{zIndex:t(r)}:undefined,disabled:this.disabled,min:this.min,max:this.max,name:this.name,step:this.step,ref:e,onInput:a=>this.handleInputChange(r,a),onBlur:this.handleBlur,onFocus:this.handleFocus,onMouseDown:this.handleMouseDown,onMouseUp:this.handleMouseUp,value:a,part:`input-${r}`})};renderTooltip=(r,a,e)=>b("bq-tooltip",{class:{"absolute [&::part(panel)]:absolute":true,hidden:!this.isTooltipAlwaysVisible},exportparts:"base,trigger,panel",alwaysVisible:true,distance:this.enableValueIndicator?6:16,style:{insetInlineStart:`${a}px`,fontVariant:"tabular-nums"},ref:e},b("div",{class:"absolute bs-1 is-1",slot:"trigger"}),r.toFixed(this.decimalCount));render(){return b("div",{key:"295ad3ada29d51d1eca68a7efab8507c36e09008","aria-disabled":this.disabled?"true":"false",class:{"flex is-full":true,"cursor-not-allowed opacity-60":this.disabled},part:"base"},this.renderLabel(this.minValue,"start","me-xs text-end"),b("div",{key:"0bfa885d663c505c5492c43072ae696401f7bbae",class:"relative is-full",part:"container"},b("span",{key:"85becad69dcfae733c4720a7ff0380a98e4df815",class:"absolute start-0 -translate-y-1/2 rounded-xs bg-[--bq-slider--trackarea-color] bs-1 is-full inset-bs-[50%]",ref:r=>this.trackElem=r,part:"track-area"}),b("span",{key:"4dfc2ac0be5dadc762c201b8e90ba0dadbce5ddb",class:"absolute -translate-y-1/2 rounded-xs bg-[--bq-slider--progress-color] bs-1 is-[50%] inset-bs-[50%]",ref:r=>this.progressElem=r,part:"progress-area"}),this.enableTooltip&&this.renderTooltip(this.minValue,this.minThumbPosition,(r=>this.minTooltipElem=r)),this.renderInput("min",this.minValue,(r=>this.inputMinElem=r)),this.enableTooltip&&this.isRangeType&&this.renderTooltip(this.maxValue,this.maxThumbPosition,(r=>this.maxTooltipElem=r)),this.isRangeType&&this.renderInput("max",this.maxValue,(r=>this.inputMaxElem=r))),this.renderLabel(this.maxValue,"end","ms-xs text-start"))}static get delegatesFocus(){return true}static get formAssociated(){return true}static get watchers(){return{value:["handleValuePropChange"],step:["handleStepPropChange"],gap:["handleGapChange"]}}};l.style=q;export{l as bq_slider};
|
|
6
|
+
//# sourceMappingURL=p-3806d9e3.entry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["bqSliderCss","BqSliderStyle0","BqSlider","inputMinElem","inputMaxElem","minTooltipElem","maxTooltipElem","progressElem","trackElem","debounceBqChange","internals","handleValuePropChange","newValue","this","setState","emitBqChange","handleStepPropChange","minValue","Math","round","step","maxValue","handleGapChange","isRangeType","value","isNil","min","max","stringToObject","gap","bqChange","bqBlur","bqFocus","componentWillLoad","init","componentDidLoad","runUpdates","componentDidUpdate","formAssociatedCallback","setFormValue","updateProgressTrack","syncInputsValue","setThumbPosition","clamp","enableTooltip","minThumbPosition","maxThumbPosition","thumbPosition","setAttribute","toString","isString","JSON","parse","handleInputChange","type","event","target","parseFloat","reflectedValue","stringify","calculatePercent","totalRange","Number","left","width","style","insetInlineStart","inlineSize","calculateThumbPosition","trackAreaWidth","getBoundingClientRect","inputThumbSize","parseInt","getComputedStyle","el","getPropertyValue","totalWidth","undefined","cancel","debounce","emit","debounceTime","handleBlur","handleFocus","handleMouseDown","handleTooltipVisibility","handleMouseUp","action","tooltipAlwaysVisible","tooltipElem","classList","decimalCount","toFixed","split","replace","length","isTooltipAlwaysVisible","renderLabel","position","css","h","class","hidden","enableValueIndicator","part","renderInput","refCallback","zIndexValue","zIndex","disabled","name","ref","onInput","ev","onBlur","onFocus","onMouseDown","onMouseUp","renderTooltip","exportparts","alwaysVisible","distance","fontVariant","slot","render","key","elem","input"],"sources":["../../packages/beeq/src/components/slider/scss/bq-slider.scss?tag=bq-slider&encapsulation=shadow","../../packages/beeq/src/components/slider/bq-slider.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Slider styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-slider.variables';\n\n@layer components {\n .thumb {\n @apply pointer-events-auto box-content size-[--bq-slider--thumb-size] cursor-pointer appearance-none rounded-full border-m border-solid border-brand bg-ui-primary;\n @apply transition-[background-color,border-color,box-shadow] duration-300;\n }\n\n .thumb-focus {\n @apply focus;\n }\n\n .thumb-hover {\n @apply border-hover-brand;\n }\n\n .thumb-active {\n @apply cursor-grabbing bg-active-ui-brand border-active-brand;\n }\n}\n\n:host {\n @apply block is-full;\n}\n\n/* ---------------------- Webkit (Chrome, Safari, Edge) --------------------- */\n\ninput[type='range']::-webkit-slider-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-webkit-slider-runnable-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-webkit-slider-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-webkit-slider-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-webkit-slider-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-webkit-slider-thumb {\n @apply cursor-not-allowed;\n}\n\n/* ---------------------------- Mozilla (Firefox) --------------------------- */\n\ninput[type='range']::-moz-range-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-moz-range-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-moz-range-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-moz-range-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-moz-range-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-moz-range-thumb {\n @apply cursor-not-allowed;\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\n\nimport { TSliderType, TSliderValue } from './bq-slider.types';\nimport { clamp, debounce, isNil, isString, TDebounce } from '../../shared/utils';\n\n/**\n * Sliders provide a visual representation of adjustable content, enabling users to change values by dragging a handle along a horizontal track.\n *\n * @example How to use it\n * ```html\n * <bq-slider max=\"100\" value=\"30\"></bq-slider>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/509cbc-slider/b/09d7b1\n * @status stable\n *\n * @dependency bq-tooltip\n *\n * @attr {number} debounce-time - The amount of time, in milliseconds, to wait to trigger the bqChange event after each value change.\n * @attr {boolean} disabled - If `true` the slider is disabled.\n * @attr {boolean} enable-tooltip - If `true`, a tooltip will be shown displaying the progress value.\n * @attr {boolean} enable-value-indicator - If `true` it will show the value label on the side of the slider track area.\n * @attr {number} gap - A number representing the amount to remain between the minimum and maximum values (only for range type).\n * @attr {number} max - A number representing the max value of the slider.\n * @attr {number} min - A number representing the min value of the slider.\n * @attr {number} step - A number represents the step of the slider. ⚠️ Please notice that the value (or list of values if the slider type is range) will be rounded to the nearest multiple of step.\n * @attr {boolean} tooltip-always-visible - If `true`, a tooltip will always display the progress value. It relies on enableTooltip and if enableTooltip is false, tooltipAlwaysVisible cannot be true.\n * @attr {\"range\" | \"single\"} type - It defines the type of slider to display.\n * @attr {\"[number, number]\" | \"number\" | \"string\"} value - The value of the slider. If the slider type is single, the value is a number.\n * If the slider type is range, the value is an array of two numbers (the first number represents the min value and the second number represents the max value).\n *\n * @event bqBlur - Handler to be called when the slider loses focus.\n * @event bqChange - Handler to be called when changing the value on range inputs.\n * @event bqFocus - Handler to be called when the slider gets focused.\n *\n * @part base - The component's base wrapper.\n * @part container - The container of the slider.\n * @part track-area - The track area of the slider.\n * @part progress-area - The progress area of the slider.\n * @part input-min - The input element for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part input-max - The input element for the maximum value.\n * @part label-start - The label for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part label-end - The label for maximum value when the slider type is `range`.\n *\n * @cssprop --bq-slider--size - The height of the slider track/progress area\n * @cssprop --bq-slider--border-radius - Slider border radius\n * @cssprop --bq-slider--thumb-size - Slider hover thumb size\n * @cssprop --bq-slider--progress-color - Slider progress background color\n * @cssprop --bq-slider--trackarea-color - Slider track background color\n */\n@Component({\n tag: 'bq-slider',\n styleUrl: './scss/bq-slider.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSlider {\n // Own Properties\n // ====================\n\n private inputMinElem: HTMLInputElement;\n private inputMaxElem: HTMLInputElement;\n private minTooltipElem: HTMLBqTooltipElement;\n private maxTooltipElem: HTMLBqTooltipElement;\n private progressElem: HTMLSpanElement;\n private trackElem: HTMLSpanElement;\n private debounceBqChange: TDebounce<void>;\n\n // Reference to host HTML element\n // ===================================\n\n @AttachInternals() internals!: ElementInternals;\n @Element() el!: HTMLBqSliderElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n /**\n * The `minValue` state is the only value when the slider type is `single`\n * and the minimum value when the slider type is `range`.\n */\n @State() minValue: number;\n /** The `maxValue` state is only used when the slider type is `range`. */\n @State() maxValue: number;\n /** It hold the left position of the Thumb for the value or the minimum value (if the slider type is `range`) */\n @State() minThumbPosition: number;\n /** It hold the left position of the Thumb for the maximum value (if the slider type is `range`) */\n @State() maxThumbPosition: number;\n\n // Public Property API\n // ========================\n\n /** The amount of time, in milliseconds, to wait to trigger the `bqChange` event after each value change. */\n @Prop({ reflect: true }) debounceTime = 0;\n\n /** If `true` the slider is disabled. */\n @Prop({ reflect: true }) disabled? = false;\n\n /** If `true` it will show the value label on a side of the slider track area */\n @Prop({ reflect: true }) enableValueIndicator? = false;\n\n /** A number representing the amount to remain between the minimum and maximum values (only for range type). */\n @Prop({ reflect: true, mutable: true }) gap = 0;\n\n /** A number representing the max value of the slider. */\n @Prop({ reflect: true }) max = 100;\n\n /** A number representing the min value of the slider. */\n @Prop({ reflect: true }) min = 0;\n\n /** Name of the form control. Submitted with the form as part of a name/value pair */\n @Prop({ reflect: true }) name: string;\n\n /**\n * A number representing the step of the slider.\n * ⚠️ Please notice that the value (or list of values if the slider type is `range`) will be rounded to the nearest multiple of `step`.\n */\n @Prop({ reflect: true }) step = 1;\n\n /** It defines the type of slider to display */\n @Prop({ reflect: true }) type: TSliderType = 'single';\n\n /**\n * The value of the slider.\n * - If the slider type is `single`, the value is a number.\n * - If the slider type is `range`, the value is an array of two numbers (the first number represents the `min` value and the second number represents the `max` value).\n */\n @Prop({ reflect: true, mutable: true }) value: TSliderValue;\n\n /** If `true`, a tooltip will be shown displaying the progress value */\n @Prop({ reflect: true }) enableTooltip: boolean = false;\n\n /**\n * If `true`, a tooltip will always display the progress value.\n * It relies on enableTooltip and if enableTooltip is false, tooltipAlwaysVisible cannot be true.\n */\n @Prop({ reflect: true }) tooltipAlwaysVisible: boolean = false;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValuePropChange(newValue: TSliderValue) {\n this.setState(newValue);\n this.emitBqChange();\n }\n\n @Watch('step')\n handleStepPropChange() {\n this.minValue = Math.round(this.minValue / this.step) * this.step;\n this.maxValue = Math.round(this.maxValue / this.step) * this.step;\n }\n\n @Watch('gap')\n handleGapChange(newValue: number) {\n if (!this.isRangeType) return;\n // Use the this.value prop value when the component is initialized\n // Otherwise, use the current this.min and this.max state values\n const value = !isNil(this.min) && !isNil(this.max) ? [this.min, this.max] : this.stringToObject(this.value);\n // If the gap is less than the min or greater than the max, set it to 0\n this.gap = newValue < value[0] || newValue > value[1] ? 0 : newValue;\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when change the value on range inputs */\n @Event() bqChange: EventEmitter<{ value: Exclude<TSliderValue, string>; el: HTMLBqSliderElement }>;\n\n /** Handler to be called when the slider loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqSliderElement>;\n\n /** Handler to be called when the slider gets focused */\n @Event() bqFocus: EventEmitter<HTMLBqSliderElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.init();\n }\n\n componentDidLoad() {\n this.runUpdates();\n }\n\n componentDidUpdate() {\n this.runUpdates();\n }\n\n formAssociatedCallback() {\n this.internals?.setFormValue(`${this.value}`);\n }\n\n // Listeners\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 // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private init = () => {\n this.handleGapChange(this.gap);\n this.setState(this.value);\n this.handleStepPropChange();\n };\n\n private runUpdates = () => {\n this.updateProgressTrack();\n this.syncInputsValue();\n this.setThumbPosition();\n };\n\n private setState = (newValue: TSliderValue) => {\n const isRangeType = this.isRangeType;\n const value = this.stringToObject(newValue);\n\n this.minValue = isRangeType ? clamp(value[0], this.min, this.max - this.gap) : value;\n this.maxValue = isRangeType ? clamp(value[1], this.minValue + this.gap, this.max) : this.minValue;\n };\n\n private setThumbPosition = () => {\n if (!this.enableTooltip) return;\n\n // Destructure the returned object from this.thumbPosition() and assign the properties to this.minThumbPosition and this.maxThumbPosition\n ({ minThumbPosition: this.minThumbPosition, maxThumbPosition: this.maxThumbPosition } = this.thumbPosition());\n };\n\n private syncInputsValue = () => {\n this.inputMinElem?.setAttribute('value', this.minValue.toString());\n this.inputMaxElem?.setAttribute('value', this.maxValue.toString());\n };\n\n private stringToObject = (value: TSliderValue) => (isString(value) ? JSON.parse(value) : value);\n\n private handleInputChange = (type: 'min' | 'max', event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n const value = parseFloat(target.value);\n\n if (type === 'min') {\n this.minValue = this.isRangeType ? Math.min(value, this.maxValue - this.gap) : value;\n } else if (type === 'max') {\n this.maxValue = this.isRangeType ? Math.max(value, this.minValue + this.gap) : value;\n }\n\n // Update the input value to reflect the clamped value\n const reflectedValue = (type === 'min' ? this.minValue : this.maxValue).toString();\n target.value = reflectedValue;\n target.setAttribute('value', reflectedValue);\n\n // Sync the prop value.\n // This will trigger the `@Watch('value')` method and emit the `bqChange` event.\n const { internals, isRangeType, maxValue, minValue } = this;\n this.value = isRangeType ? [minValue, maxValue] : minValue;\n internals?.setFormValue(isRangeType ? JSON.stringify(this.value) : this.value.toString());\n };\n\n private calculatePercent = (value: number) => {\n const totalRange = Number(this.max) - Number(this.min);\n return (value / totalRange) * 100;\n };\n\n private updateProgressTrack = () => {\n if (!this.progressElem) return;\n\n // For range type, left starts from the `min` value and width is the difference between `max` and `min`.\n // For non-range type, left starts from 0 and width is the `min` value.\n const left = this.isRangeType ? this.calculatePercent(this.minValue) : 0;\n const width = this.isRangeType\n ? this.calculatePercent(Number(this.maxValue) - Number(this.minValue))\n : this.calculatePercent(this.minValue);\n\n this.progressElem.style.insetInlineStart = `${left}%`;\n this.progressElem.style.inlineSize = `${width}%`;\n };\n\n private calculateThumbPosition = (value: number): number => {\n if (!this.progressElem) return;\n\n // Get the width of the track area and the size of the input range thumb\n const trackAreaWidth = this.trackElem.getBoundingClientRect().width;\n // We need to also add 4px to the thumb size,\n // this is because the thumb is 2px border (`border-m`)\n const inputThumbSize = parseInt(getComputedStyle(this.el).getPropertyValue('--bq-slider--thumb-size'), 10) + 4;\n const totalWidth = trackAreaWidth - inputThumbSize;\n\n return ((value - this.min) / (this.max - this.min)) * totalWidth + inputThumbSize / 2;\n };\n\n private thumbPosition = (): { minThumbPosition: number; maxThumbPosition?: number } => {\n const minThumbPosition = this.calculateThumbPosition(this.minValue);\n const maxThumbPosition = this.isRangeType ? this.calculateThumbPosition(this.maxValue) : undefined;\n\n return { minThumbPosition, maxThumbPosition };\n };\n\n private emitBqChange = () => {\n this.debounceBqChange?.cancel();\n\n const value: Exclude<TSliderValue, string> = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;\n this.debounceBqChange = debounce(() => this.bqChange.emit({ value, el: this.el }), this.debounceTime);\n\n this.debounceBqChange();\n };\n\n private handleBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'remove');\n };\n\n private handleMouseUp = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'add');\n };\n\n private handleTooltipVisibility = (event: MouseEvent, action: 'add' | 'remove') => {\n if (!this.enableTooltip || this.tooltipAlwaysVisible) return;\n\n const target = event.target as HTMLElement;\n const tooltipElem = target === this.inputMinElem ? this.minTooltipElem : this.maxTooltipElem;\n tooltipElem.classList[action]('hidden');\n };\n\n private get decimalCount(): number {\n // Return the length of the decimal part of the step value.\n return (this.step % 1).toFixed(10).split('.')[1].replace(/0+$/, '').length;\n }\n\n private get isRangeType() {\n return this.type === 'range';\n }\n\n private get isTooltipAlwaysVisible(): boolean {\n return this.tooltipAlwaysVisible && this.enableTooltip;\n }\n\n private renderLabel = (value: number, position: 'start' | 'end', css?: string) => {\n return (\n <span\n class={{\n [`${css} box-content block text-s font-medium leading-regular text-primary is-fit min-is-8 [font-variant:tabular-nums]`]:\n true,\n hidden: position === 'start' ? !this.enableValueIndicator : !this.enableValueIndicator || !this.isRangeType,\n }}\n part={`label-${position}`}\n >\n {value.toFixed(this.decimalCount)}\n </span>\n );\n };\n\n private renderInput = (type: 'max' | 'min', value: number, refCallback: (input: HTMLInputElement) => void) => {\n // Determine the zIndex value based on the type and the current min and max values.\n const zIndexValue = (type: 'min' | 'max'): string => {\n const zIndex = {\n min: this.minValue === this.min && this.maxValue === this.minValue,\n max: this.maxValue === this.max && this.minValue === this.maxValue,\n };\n\n // If the value of both thumbs is the same as the min or max value, set the zIndex to -1\n return zIndex[type] ? '-1' : '0';\n };\n\n return (\n <input\n type=\"range\"\n class={{\n 'absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed':\n true,\n 'pointer-events-none': this.isRangeType,\n }}\n style={this.isRangeType ? { zIndex: zIndexValue(type) } : undefined}\n disabled={this.disabled}\n min={this.min}\n max={this.max}\n name={this.name}\n step={this.step}\n ref={refCallback}\n onInput={(ev) => this.handleInputChange(type, ev)}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseDown={this.handleMouseDown}\n onMouseUp={this.handleMouseUp}\n value={value}\n part={`input-${type}`}\n />\n );\n };\n\n private renderTooltip = (\n value: number,\n thumbPosition: number,\n refCallback: (elem: HTMLBqTooltipElement) => void,\n ): HTMLBqTooltipElement => (\n <bq-tooltip\n class={{\n 'absolute [&::part(panel)]:absolute': true,\n hidden: !this.isTooltipAlwaysVisible,\n }}\n exportparts=\"base,trigger,panel\"\n alwaysVisible={true}\n distance={this.enableValueIndicator ? 6 : 16}\n style={{ insetInlineStart: `${thumbPosition}px`, fontVariant: 'tabular-nums' }}\n ref={refCallback}\n >\n <div class=\"absolute bs-1 is-1\" slot=\"trigger\" />\n {value.toFixed(this.decimalCount)}\n </bq-tooltip>\n );\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n aria-disabled={this.disabled ? 'true' : 'false'}\n class={{ 'flex is-full': true, 'cursor-not-allowed opacity-60': this.disabled }}\n part=\"base\"\n >\n {/* LABEL (start) */}\n {this.renderLabel(this.minValue, 'start', 'me-xs text-end')}\n {/* SLIDER */}\n <div class=\"relative is-full\" part=\"container\">\n {/* TRACK AREA */}\n <span\n class=\"absolute start-0 -translate-y-1/2 rounded-xs bg-[--bq-slider--trackarea-color] bs-1 is-full inset-bs-[50%]\"\n ref={(elem) => (this.trackElem = elem)}\n part=\"track-area\"\n />\n {/* PROGRESS AREA */}\n <span\n class=\"absolute -translate-y-1/2 rounded-xs bg-[--bq-slider--progress-color] bs-1 is-[50%] inset-bs-[50%]\"\n ref={(elem) => (this.progressElem = elem)}\n part=\"progress-area\"\n />\n {/* TOOLTIP on top of the value or min value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.renderTooltip(this.minValue, this.minThumbPosition, (elem) => (this.minTooltipElem = elem))}\n {/* INPUT (Min), used on single type */}\n {this.renderInput('min', this.minValue, (input) => (this.inputMinElem = input))}\n {/* TOOLTIP on top of the max value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.isRangeType &&\n this.renderTooltip(this.maxValue, this.maxThumbPosition, (elem) => (this.maxTooltipElem = elem))}\n {/* INPUT (Max) */}\n {this.isRangeType && this.renderInput('max', this.maxValue, (input) => (this.inputMaxElem = input))}\n </div>\n {/* LABEL (end) */}\n {this.renderLabel(this.maxValue, 'end', 'ms-xs text-start')}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["bqSliderCss","BqSliderStyle0","BqSlider","inputMinElem","inputMaxElem","minTooltipElem","maxTooltipElem","progressElem","trackElem","debounceBqChange","internals","minValue","maxValue","minThumbPosition","maxThumbPosition","debounceTime","disabled","enableValueIndicator","gap","max","min","name","step","type","value","enableTooltip","tooltipAlwaysVisible","handleValuePropChange","newValue","this","setState","emitBqChange","handleStepPropChange","Math","round","handleGapChange","isRangeType","isNil","stringToObject","bqChange","bqBlur","bqFocus","componentWillLoad","init","componentDidLoad","runUpdates","componentDidUpdate","formAssociatedCallback","setFormValue","updateProgressTrack","syncInputsValue","setThumbPosition","clamp","thumbPosition","setAttribute","toString","isString","JSON","parse","handleInputChange","event","target","parseFloat","reflectedValue","stringify","calculatePercent","totalRange","Number","left","width","style","insetInlineStart","inlineSize","calculateThumbPosition","trackAreaWidth","getBoundingClientRect","inputThumbSize","parseInt","getComputedStyle","el","getPropertyValue","totalWidth","undefined","cancel","debounce","emit","handleBlur","handleFocus","handleMouseDown","handleTooltipVisibility","handleMouseUp","action","tooltipElem","classList","decimalCount","toFixed","split","replace","length","isTooltipAlwaysVisible","renderLabel","position","css","h","class","hidden","part","renderInput","refCallback","zIndexValue","zIndex","ref","onInput","ev","onBlur","onFocus","onMouseDown","onMouseUp","renderTooltip","exportparts","alwaysVisible","distance","fontVariant","slot","render","key","elem","input"],"sources":["../../packages/beeq/src/components/slider/scss/bq-slider.scss?tag=bq-slider&encapsulation=shadow","../../packages/beeq/src/components/slider/bq-slider.tsx"],"sourcesContent":["/* -------------------------------------------------------------------------- */\n/* Slider styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-slider.variables';\n\n@layer components {\n .thumb {\n @apply pointer-events-auto box-content size-[--bq-slider--thumb-size] cursor-pointer appearance-none rounded-full border-m border-solid border-brand bg-ui-primary;\n @apply transition-[background-color,border-color,box-shadow] duration-300;\n }\n\n .thumb-focus {\n @apply focus;\n }\n\n .thumb-hover {\n @apply border-hover-brand;\n }\n\n .thumb-active {\n @apply cursor-grabbing bg-active-ui-brand border-active-brand;\n }\n}\n\n:host {\n @apply block is-full;\n}\n\n/* ---------------------- Webkit (Chrome, Safari, Edge) --------------------- */\n\ninput[type='range']::-webkit-slider-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-webkit-slider-runnable-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-webkit-slider-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-webkit-slider-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-webkit-slider-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-webkit-slider-thumb {\n @apply cursor-not-allowed;\n}\n\n/* ---------------------------- Mozilla (Firefox) --------------------------- */\n\ninput[type='range']::-moz-range-thumb {\n @apply thumb;\n}\n\ninput[type='range']::-moz-range-track {\n @apply transition-all duration-300 ease-in;\n}\n\ninput[type='range']:focus-visible::-moz-range-thumb {\n @apply thumb-focus;\n}\n\ninput[type='range']:hover::-moz-range-thumb {\n @apply thumb-hover;\n}\n\ninput[type='range']:active::-moz-range-thumb {\n @apply thumb-active;\n}\n\ninput[type='range'][disabled]::-moz-range-thumb {\n @apply cursor-not-allowed;\n}\n","import { AttachInternals, Component, Element, Event, EventEmitter, h, Prop, State, Watch } from '@stencil/core';\n\nimport { TSliderType, TSliderValue } from './bq-slider.types';\nimport { clamp, debounce, isNil, isString, TDebounce } from '../../shared/utils';\n\n/**\n * Sliders provide a visual representation of adjustable content, enabling users to change values by dragging a handle along a horizontal track.\n *\n * @example How to use it\n * ```html\n * <bq-slider max=\"100\" value=\"30\"></bq-slider>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/509cbc-slider/b/09d7b1\n * @status stable\n *\n * @dependency bq-tooltip\n *\n * @attr {number} debounce-time - The amount of time, in milliseconds, to wait to trigger the bqChange event after each value change.\n * @attr {boolean} disabled - If `true` the slider is disabled.\n * @attr {boolean} enable-tooltip - If `true`, a tooltip will be shown displaying the progress value.\n * @attr {boolean} enable-value-indicator - If `true` it will show the value label on the side of the slider track area.\n * @attr {number} gap - A number representing the amount to remain between the minimum and maximum values (only for range type).\n * @attr {number} max - A number representing the max value of the slider.\n * @attr {number} min - A number representing the min value of the slider.\n * @attr {number} step - A number represents the step of the slider. ⚠️ Please notice that the value (or list of values if the slider type is range) will be rounded to the nearest multiple of step.\n * @attr {boolean} tooltip-always-visible - If `true`, a tooltip will always display the progress value. It relies on enableTooltip and if enableTooltip is false, tooltipAlwaysVisible cannot be true.\n * @attr {\"range\" | \"single\"} type - It defines the type of slider to display.\n * @attr {\"[number, number]\" | \"number\" | \"string\"} value - The value of the slider. If the slider type is single, the value is a number.\n * If the slider type is range, the value is an array of two numbers (the first number represents the min value and the second number represents the max value).\n *\n * @event bqBlur - Handler to be called when the slider loses focus.\n * @event bqChange - Handler to be called when changing the value on range inputs.\n * @event bqFocus - Handler to be called when the slider gets focused.\n *\n * @part base - The component's base wrapper.\n * @part container - The container of the slider.\n * @part track-area - The track area of the slider.\n * @part progress-area - The progress area of the slider.\n * @part input-min - The input element for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part input-max - The input element for the maximum value.\n * @part label-start - The label for the value when the slider type is `single` or the minimum value when the slider type is `range`.\n * @part label-end - The label for maximum value when the slider type is `range`.\n *\n * @cssprop --bq-slider--size - The height of the slider track/progress area\n * @cssprop --bq-slider--border-radius - Slider border radius\n * @cssprop --bq-slider--thumb-size - Slider hover thumb size\n * @cssprop --bq-slider--progress-color - Slider progress background color\n * @cssprop --bq-slider--trackarea-color - Slider track background color\n */\n@Component({\n tag: 'bq-slider',\n styleUrl: './scss/bq-slider.scss',\n formAssociated: true,\n shadow: {\n delegatesFocus: true,\n },\n})\nexport class BqSlider {\n // Own Properties\n // ====================\n\n private inputMinElem: HTMLInputElement;\n private inputMaxElem: HTMLInputElement;\n private minTooltipElem: HTMLBqTooltipElement;\n private maxTooltipElem: HTMLBqTooltipElement;\n private progressElem: HTMLSpanElement;\n private trackElem: HTMLSpanElement;\n private debounceBqChange: TDebounce<void>;\n\n // Reference to host HTML element\n // ===================================\n\n @AttachInternals() internals!: ElementInternals;\n @Element() el!: HTMLBqSliderElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n /**\n * The `minValue` state is the only value when the slider type is `single`\n * and the minimum value when the slider type is `range`.\n */\n @State() minValue: number;\n /** The `maxValue` state is only used when the slider type is `range`. */\n @State() maxValue: number;\n /** It hold the left position of the Thumb for the value or the minimum value (if the slider type is `range`) */\n @State() minThumbPosition: number;\n /** It hold the left position of the Thumb for the maximum value (if the slider type is `range`) */\n @State() maxThumbPosition: number;\n\n // Public Property API\n // ========================\n\n /** The amount of time, in milliseconds, to wait to trigger the `bqChange` event after each value change. */\n @Prop({ reflect: true }) debounceTime = 0;\n\n /** If `true` the slider is disabled. */\n @Prop({ reflect: true }) disabled? = false;\n\n /** If `true` it will show the value label on a side of the slider track area */\n @Prop({ reflect: true }) enableValueIndicator? = false;\n\n /** A number representing the amount to remain between the minimum and maximum values (only for range type). */\n @Prop({ reflect: true, mutable: true }) gap = 0;\n\n /** A number representing the max value of the slider. */\n @Prop({ reflect: true }) max = 100;\n\n /** A number representing the min value of the slider. */\n @Prop({ reflect: true }) min = 0;\n\n /** Name of the form control. Submitted with the form as part of a name/value pair */\n @Prop({ reflect: true }) name: string;\n\n /**\n * A number representing the step of the slider.\n * ⚠️ Please notice that the value (or list of values if the slider type is `range`) will be rounded to the nearest multiple of `step`.\n */\n @Prop({ reflect: true }) step = 1;\n\n /** It defines the type of slider to display */\n @Prop({ reflect: true }) type: TSliderType = 'single';\n\n /**\n * The value of the slider.\n * - If the slider type is `single`, the value is a number.\n * - If the slider type is `range`, the value is an array of two numbers (the first number represents the `min` value and the second number represents the `max` value).\n */\n @Prop({ reflect: true, mutable: true }) value: TSliderValue;\n\n /** If `true`, a tooltip will be shown displaying the progress value */\n @Prop({ reflect: true }) enableTooltip: boolean = false;\n\n /**\n * If `true`, a tooltip will always display the progress value.\n * It relies on enableTooltip and if enableTooltip is false, tooltipAlwaysVisible cannot be true.\n */\n @Prop({ reflect: true }) tooltipAlwaysVisible: boolean = false;\n\n // Prop lifecycle events\n // =======================\n\n @Watch('value')\n handleValuePropChange(newValue: TSliderValue) {\n this.setState(newValue);\n this.emitBqChange();\n }\n\n @Watch('step')\n handleStepPropChange() {\n this.minValue = Math.round(this.minValue / this.step) * this.step;\n this.maxValue = Math.round(this.maxValue / this.step) * this.step;\n }\n\n @Watch('gap')\n handleGapChange(newValue: number) {\n if (!this.isRangeType) return;\n // Use the this.value prop value when the component is initialized\n // Otherwise, use the current this.min and this.max state values\n const value = !isNil(this.min) && !isNil(this.max) ? [this.min, this.max] : this.stringToObject(this.value);\n // If the gap is less than the min or greater than the max, set it to 0\n this.gap = newValue < value[0] || newValue > value[1] ? 0 : newValue;\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Handler to be called when change the value on range inputs */\n @Event() bqChange: EventEmitter<{ value: Exclude<TSliderValue, string>; el: HTMLBqSliderElement }>;\n\n /** Handler to be called when the slider loses focus */\n @Event() bqBlur: EventEmitter<HTMLBqSliderElement>;\n\n /** Handler to be called when the slider gets focused */\n @Event() bqFocus: EventEmitter<HTMLBqSliderElement>;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n componentWillLoad() {\n this.init();\n }\n\n componentDidLoad() {\n this.runUpdates();\n }\n\n componentDidUpdate() {\n this.runUpdates();\n }\n\n formAssociatedCallback() {\n this.internals?.setFormValue(`${this.value}`);\n }\n\n // Listeners\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 // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private init = () => {\n this.handleGapChange(this.gap);\n this.setState(this.value);\n this.handleStepPropChange();\n };\n\n private runUpdates = () => {\n this.updateProgressTrack();\n this.syncInputsValue();\n this.setThumbPosition();\n };\n\n private setState = (newValue: TSliderValue) => {\n const isRangeType = this.isRangeType;\n const value = this.stringToObject(newValue);\n\n this.minValue = isRangeType ? clamp(value[0], this.min, this.max - this.gap) : value;\n this.maxValue = isRangeType ? clamp(value[1], this.minValue + this.gap, this.max) : this.minValue;\n };\n\n private setThumbPosition = () => {\n if (!this.enableTooltip) return;\n\n // Destructure the returned object from this.thumbPosition() and assign the properties to this.minThumbPosition and this.maxThumbPosition\n ({ minThumbPosition: this.minThumbPosition, maxThumbPosition: this.maxThumbPosition } = this.thumbPosition());\n };\n\n private syncInputsValue = () => {\n this.inputMinElem?.setAttribute('value', this.minValue.toString());\n this.inputMaxElem?.setAttribute('value', this.maxValue.toString());\n };\n\n private stringToObject = (value: TSliderValue) => (isString(value) ? JSON.parse(value) : value);\n\n private handleInputChange = (type: 'min' | 'max', event: InputEvent) => {\n const target = event.target as HTMLInputElement;\n const value = parseFloat(target.value);\n\n if (type === 'min') {\n this.minValue = this.isRangeType ? Math.min(value, this.maxValue - this.gap) : value;\n } else if (type === 'max') {\n this.maxValue = this.isRangeType ? Math.max(value, this.minValue + this.gap) : value;\n }\n\n // Update the input value to reflect the clamped value\n const reflectedValue = (type === 'min' ? this.minValue : this.maxValue).toString();\n target.value = reflectedValue;\n target.setAttribute('value', reflectedValue);\n\n // Sync the prop value.\n // This will trigger the `@Watch('value')` method and emit the `bqChange` event.\n const { internals, isRangeType, maxValue, minValue } = this;\n this.value = isRangeType ? [minValue, maxValue] : minValue;\n internals?.setFormValue(isRangeType ? JSON.stringify(this.value) : this.value.toString());\n };\n\n private calculatePercent = (value: number) => {\n const totalRange = Number(this.max) - Number(this.min);\n return (value / totalRange) * 100;\n };\n\n private updateProgressTrack = () => {\n if (!this.progressElem) return;\n\n // For range type, left starts from the `min` value and width is the difference between `max` and `min`.\n // For non-range type, left starts from 0 and width is the `min` value.\n const left = this.isRangeType ? this.calculatePercent(this.minValue) : 0;\n const width = this.isRangeType\n ? this.calculatePercent(Number(this.maxValue) - Number(this.minValue))\n : this.calculatePercent(this.minValue);\n\n this.progressElem.style.insetInlineStart = `${left}%`;\n this.progressElem.style.inlineSize = `${width}%`;\n };\n\n private calculateThumbPosition = (value: number): number => {\n if (!this.progressElem) return;\n\n // Get the width of the track area and the size of the input range thumb\n const trackAreaWidth = this.trackElem.getBoundingClientRect().width;\n // We need to also add 4px to the thumb size,\n // this is because the thumb is 2px border (`border-m`)\n const inputThumbSize = parseInt(getComputedStyle(this.el).getPropertyValue('--bq-slider--thumb-size'), 10) + 4;\n const totalWidth = trackAreaWidth - inputThumbSize;\n\n return ((value - this.min) / (this.max - this.min)) * totalWidth + inputThumbSize / 2;\n };\n\n private thumbPosition = (): { minThumbPosition: number; maxThumbPosition?: number } => {\n const minThumbPosition = this.calculateThumbPosition(this.minValue);\n const maxThumbPosition = this.isRangeType ? this.calculateThumbPosition(this.maxValue) : undefined;\n\n return { minThumbPosition, maxThumbPosition };\n };\n\n private emitBqChange = () => {\n this.debounceBqChange?.cancel();\n\n const value: Exclude<TSliderValue, string> = this.isRangeType ? [this.minValue, this.maxValue] : this.minValue;\n this.debounceBqChange = debounce(() => this.bqChange.emit({ value, el: this.el }), this.debounceTime);\n\n this.debounceBqChange();\n };\n\n private handleBlur = () => {\n this.bqBlur.emit(this.el);\n };\n\n private handleFocus = () => {\n this.bqFocus.emit(this.el);\n };\n\n private handleMouseDown = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'remove');\n };\n\n private handleMouseUp = (event: MouseEvent) => {\n this.handleTooltipVisibility(event, 'add');\n };\n\n private handleTooltipVisibility = (event: MouseEvent, action: 'add' | 'remove') => {\n if (!this.enableTooltip || this.tooltipAlwaysVisible) return;\n\n const target = event.target as HTMLElement;\n const tooltipElem = target === this.inputMinElem ? this.minTooltipElem : this.maxTooltipElem;\n tooltipElem.classList[action]('hidden');\n };\n\n private get decimalCount(): number {\n // Return the length of the decimal part of the step value.\n return (this.step % 1).toFixed(10).split('.')[1].replace(/0+$/, '').length;\n }\n\n private get isRangeType() {\n return this.type === 'range';\n }\n\n private get isTooltipAlwaysVisible(): boolean {\n return this.tooltipAlwaysVisible && this.enableTooltip;\n }\n\n private renderLabel = (value: number, position: 'start' | 'end', css?: string) => {\n return (\n <span\n class={{\n [`${css} box-content block text-s font-medium leading-regular text-primary is-fit min-is-8 [font-variant:tabular-nums]`]:\n true,\n hidden: position === 'start' ? !this.enableValueIndicator : !this.enableValueIndicator || !this.isRangeType,\n }}\n part={`label-${position}`}\n >\n {value.toFixed(this.decimalCount)}\n </span>\n );\n };\n\n private renderInput = (type: 'max' | 'min', value: number, refCallback: (input: HTMLInputElement) => void) => {\n // Determine the zIndex value based on the type and the current min and max values.\n const zIndexValue = (type: 'min' | 'max'): string => {\n const zIndex = {\n min: this.minValue === this.min && this.maxValue === this.minValue,\n max: this.maxValue === this.max && this.minValue === this.maxValue,\n };\n\n // If the value of both thumbs is the same as the min or max value, set the zIndex to -1\n return zIndex[type] ? '-1' : '0';\n };\n\n return (\n <input\n type=\"range\"\n class={{\n 'absolute start-0 -translate-y-1/2 cursor-pointer appearance-none bg-transparent outline-none is-full inset-bs-[50%] disabled:cursor-not-allowed':\n true,\n 'pointer-events-none': this.isRangeType,\n }}\n style={this.isRangeType ? { zIndex: zIndexValue(type) } : undefined}\n disabled={this.disabled}\n min={this.min}\n max={this.max}\n name={this.name}\n step={this.step}\n ref={refCallback}\n onInput={(ev) => this.handleInputChange(type, ev)}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onMouseDown={this.handleMouseDown}\n onMouseUp={this.handleMouseUp}\n value={value}\n part={`input-${type}`}\n />\n );\n };\n\n private renderTooltip = (\n value: number,\n thumbPosition: number,\n refCallback: (elem: HTMLBqTooltipElement) => void,\n ): HTMLBqTooltipElement => (\n <bq-tooltip\n class={{\n 'absolute [&::part(panel)]:absolute': true,\n hidden: !this.isTooltipAlwaysVisible,\n }}\n exportparts=\"base,trigger,panel\"\n alwaysVisible={true}\n distance={this.enableValueIndicator ? 6 : 16}\n style={{ insetInlineStart: `${thumbPosition}px`, fontVariant: 'tabular-nums' }}\n ref={refCallback}\n >\n <div class=\"absolute bs-1 is-1\" slot=\"trigger\" />\n {value.toFixed(this.decimalCount)}\n </bq-tooltip>\n );\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n return (\n <div\n aria-disabled={this.disabled ? 'true' : 'false'}\n class={{ 'flex is-full': true, 'cursor-not-allowed opacity-60': this.disabled }}\n part=\"base\"\n >\n {/* LABEL (start) */}\n {this.renderLabel(this.minValue, 'start', 'me-xs text-end')}\n {/* SLIDER */}\n <div class=\"relative is-full\" part=\"container\">\n {/* TRACK AREA */}\n <span\n class=\"absolute start-0 -translate-y-1/2 rounded-xs bg-[--bq-slider--trackarea-color] bs-1 is-full inset-bs-[50%]\"\n ref={(elem) => (this.trackElem = elem)}\n part=\"track-area\"\n />\n {/* PROGRESS AREA */}\n <span\n class=\"absolute -translate-y-1/2 rounded-xs bg-[--bq-slider--progress-color] bs-1 is-[50%] inset-bs-[50%]\"\n ref={(elem) => (this.progressElem = elem)}\n part=\"progress-area\"\n />\n {/* TOOLTIP on top of the value or min value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.renderTooltip(this.minValue, this.minThumbPosition, (elem) => (this.minTooltipElem = elem))}\n {/* INPUT (Min), used on single type */}\n {this.renderInput('min', this.minValue, (input) => (this.inputMinElem = input))}\n {/* TOOLTIP on top of the max value (if the slider type is `range`) */}\n {this.enableTooltip &&\n this.isRangeType &&\n this.renderTooltip(this.maxValue, this.maxThumbPosition, (elem) => (this.maxTooltipElem = elem))}\n {/* INPUT (Max) */}\n {this.isRangeType && this.renderInput('max', this.maxValue, (input) => (this.inputMaxElem = input))}\n </div>\n {/* LABEL (end) */}\n {this.renderLabel(this.maxValue, 'end', 'ms-xs text-start')}\n </div>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|