@beeq/core 1.12.0 → 1.12.2-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 +44 -1
- package/dist/beeq/beeq.esm.js.map +1 -1
- package/dist/beeq/index.esm.js +69 -1
- package/dist/{components/p-Bi6ozE0v.js → beeq/p-1011ae42.entry.js} +89 -2
- package/dist/beeq/{p-e394c440.entry.js.map → p-1011ae42.entry.js.map} +1 -1
- package/dist/beeq/p-110c262d.entry.js +173 -0
- package/dist/beeq/{p-b4a612db.entry.js.map → p-110c262d.entry.js.map} +1 -1
- package/dist/beeq/p-11671252.entry.js +128 -0
- package/dist/beeq/{p-a7a74198.entry.js.map → p-11671252.entry.js.map} +1 -1
- package/dist/beeq/p-11fcb99b.entry.js +281 -0
- package/dist/beeq/{p-5e186220.entry.js.map → p-11fcb99b.entry.js.map} +1 -1
- package/dist/beeq/p-1aba3eec.entry.js +150 -0
- package/dist/beeq/{p-3c491238.entry.js.map → p-1aba3eec.entry.js.map} +1 -1
- package/dist/beeq/p-20162842.entry.js +151 -0
- package/dist/beeq/{p-8cd20d85.entry.js.map → p-20162842.entry.js.map} +1 -1
- package/dist/beeq/p-3a4c4de9.entry.js +188 -0
- package/dist/beeq/{p-28c6cdbc.entry.js.map → p-3a4c4de9.entry.js.map} +1 -1
- package/dist/beeq/p-426fd908.entry.js +215 -0
- package/dist/beeq/{p-8fd716b1.entry.js.map → p-426fd908.entry.js.map} +1 -1
- package/dist/beeq/p-47571092.entry.js +289 -0
- package/dist/beeq/{p-e39e3d9c.entry.js.map → p-47571092.entry.js.map} +1 -1
- package/dist/beeq/p-49e90223.entry.js +86 -0
- package/dist/beeq/{p-63f1dcd2.entry.js.map → p-49e90223.entry.js.map} +1 -1
- package/dist/beeq/p-4b00a155.entry.js +747 -0
- package/dist/beeq/{p-f477b7ac.entry.js.map → p-4b00a155.entry.js.map} +1 -1
- package/dist/beeq/p-54ddd09f.entry.js +392 -0
- package/dist/beeq/{p-59cb331c.entry.js.map → p-54ddd09f.entry.js.map} +1 -1
- package/dist/{components/p-BcmnHFqE.js → beeq/p-6b68123f.entry.js} +246 -2
- package/dist/beeq/{p-96a79f9b.entry.js.map → p-6b68123f.entry.js.map} +1 -1
- package/dist/beeq/p-6d708caf.entry.js +339 -0
- package/dist/beeq/{p-a09d8901.entry.js.map → p-6d708caf.entry.js.map} +1 -1
- package/dist/beeq/p-70607940.entry.js +174 -0
- package/dist/beeq/{p-552d3e73.entry.js.map → p-70607940.entry.js.map} +1 -1
- package/dist/beeq/p-72c376a9.entry.js +165 -0
- package/dist/beeq/{p-6cac6da2.entry.js.map → p-72c376a9.entry.js.map} +1 -1
- package/dist/beeq/p-78bbd845.entry.js +109 -0
- package/dist/beeq/{p-be1b3e87.entry.js.map → p-78bbd845.entry.js.map} +1 -1
- package/dist/beeq/p-8012f01d.entry.js +556 -0
- package/dist/beeq/{p-ecef6efa.entry.js.map → p-8012f01d.entry.js.map} +1 -1
- package/dist/beeq/p-8b5934a3.entry.js +158 -0
- package/dist/beeq/{p-c414e7c0.entry.js.map → p-8b5934a3.entry.js.map} +1 -1
- package/dist/beeq/p-94c2081a.entry.js +681 -0
- package/dist/beeq/{p-8379d440.entry.js.map → p-94c2081a.entry.js.map} +1 -1
- package/dist/beeq/p-95979cb0.entry.js +289 -0
- package/dist/beeq/{p-76d65605.entry.js.map → p-95979cb0.entry.js.map} +1 -1
- package/dist/beeq/p-978b2249.entry.js +196 -0
- package/dist/beeq/{p-22e2de76.entry.js.map → p-978b2249.entry.js.map} +1 -1
- package/dist/beeq/p-9a78587d.entry.js +138 -0
- package/dist/beeq/{p-258e890f.entry.js.map → p-9a78587d.entry.js.map} +1 -1
- package/dist/beeq/p-B4sM1t6Z.js +8 -1
- package/dist/beeq/p-BNvWMggA.js +23 -1
- package/dist/beeq/p-BRMw_HGf.js +8 -1
- package/dist/beeq/p-BRbYDZoo.js +10 -1
- package/dist/beeq/p-BcPwGxIn.js +9 -1
- package/dist/beeq/p-BsSDkLU5.js +26 -1
- package/dist/beeq/p-BtYhUEAn.js +9 -0
- package/dist/beeq/p-BtYhUEAn.js.map +1 -0
- package/dist/beeq/p-C33fRBEf.js +151 -1
- package/dist/beeq/p-CCNjsDdb.js +88 -1
- package/dist/beeq/p-CVw85-WU.js +64 -1
- package/dist/beeq/p-Cau9SvT4.js +12 -1
- package/dist/beeq/p-CmKvDWiL.js +1787 -0
- package/dist/beeq/p-CmKvDWiL.js.map +1 -0
- package/dist/beeq/p-CpKQ7XUL.js +284 -1
- package/dist/beeq/p-D0hQxkOP.js +2816 -0
- package/dist/beeq/p-D0hQxkOP.js.map +1 -0
- package/dist/beeq/p-D1A0LpG_.js +10 -1
- package/dist/beeq/p-DdvbF5yL.js +119 -1
- package/dist/beeq/p-DnkZCdMA.js +8 -1
- package/dist/beeq/p-Ds7rcaFH.js +65 -1
- package/dist/beeq/p-Dx-CEPSQ.js +13 -1
- package/dist/beeq/p-_RvVpeh2.js +29 -1
- package/dist/beeq/p-ac7cd72b.entry.js +322 -0
- package/dist/beeq/{p-8a5e127b.entry.js.map → p-ac7cd72b.entry.js.map} +1 -1
- package/dist/beeq/p-ae85a23a.entry.js +408 -0
- package/dist/beeq/{p-a9cc76af.entry.js.map → p-ae85a23a.entry.js.map} +1 -1
- package/dist/beeq/p-b0f9a0cb.entry.js +296 -0
- package/dist/beeq/{p-043a472a.entry.js.map → p-b0f9a0cb.entry.js.map} +1 -1
- package/dist/beeq/p-b194e120.entry.js +293 -0
- package/dist/beeq/{p-b7de07f5.entry.js.map → p-b194e120.entry.js.map} +1 -1
- package/dist/beeq/p-b2858324.entry.js +210 -0
- package/dist/beeq/{p-dfd80d40.entry.js.map → p-b2858324.entry.js.map} +1 -1
- package/dist/beeq/p-c34fc2c7.entry.js +351 -0
- package/dist/beeq/{p-039f7907.entry.js.map → p-c34fc2c7.entry.js.map} +1 -1
- package/dist/beeq/p-c630a8b8.entry.js +442 -0
- package/dist/beeq/{p-d4ffd9f1.entry.js.map → p-c630a8b8.entry.js.map} +1 -1
- package/dist/beeq/p-cb9b1edc.entry.js +232 -0
- package/dist/beeq/{p-20de0359.entry.js.map → p-cb9b1edc.entry.js.map} +1 -1
- package/dist/beeq/p-cc6b349e.entry.js +172 -0
- package/dist/beeq/{p-904e521c.entry.js.map → p-cc6b349e.entry.js.map} +1 -1
- package/dist/beeq/p-d0edfaa5.entry.js +388 -0
- package/dist/beeq/{p-90b0fef1.entry.js.map → p-d0edfaa5.entry.js.map} +1 -1
- package/dist/beeq/{p-be1b3e87.entry.js → p-db09cc1e.entry.js} +83 -2
- package/dist/beeq/{p-1b988f57.entry.js.map → p-db09cc1e.entry.js.map} +1 -1
- package/dist/beeq/p-f6d82c39.entry.js +206 -0
- package/dist/beeq/{p-52334e53.entry.js.map → p-f6d82c39.entry.js.map} +1 -1
- package/dist/beeq/p-f83010e9.entry.js +118 -0
- package/dist/beeq/{p-8e9d8445.entry.js.map → p-f83010e9.entry.js.map} +1 -1
- package/dist/beeq/p-f97c679f.entry.js +233 -0
- package/dist/beeq/{p-55b686b4.entry.js.map → p-f97c679f.entry.js.map} +1 -1
- package/dist/beeq/{p-63f1dcd2.entry.js → p-ff327b98.entry.js} +116 -2
- package/dist/beeq/{p-47404d61.entry.js.map → p-ff327b98.entry.js.map} +1 -1
- package/dist/beeq/p-ff73f344.entry.js +396 -0
- package/dist/beeq/{p-50cbee50.entry.js.map → p-ff73f344.entry.js.map} +1 -1
- package/dist/beeq/p-lysmVw2n.js +12 -1
- package/dist/beeq/p-uqkxeAeG.js +88 -1
- package/dist/beeq/p-zh4P02Kn.js +21 -1
- package/dist/beeq.html-custom-data.json +80 -80
- package/dist/cjs/app-globals-BY_z0SzA.js +12 -0
- package/dist/cjs/app-globals-BY_z0SzA.js.map +1 -0
- package/dist/cjs/beeq.cjs.js +3 -2
- package/dist/cjs/beeq.cjs.js.map +1 -1
- package/dist/cjs/bq-accordion-group.cjs.entry.js +2 -2
- package/dist/cjs/bq-accordion-group.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-accordion.cjs.entry.js +1 -1
- package/dist/cjs/bq-alert.cjs.entry.js +2 -2
- package/dist/cjs/bq-alert.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-avatar.cjs.entry.js +2 -2
- package/dist/cjs/bq-avatar.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-badge.cjs.entry.js +1 -1
- package/dist/cjs/bq-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/bq-breadcrumb-item.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/bq-breadcrumb.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-button_2.cjs.entry.js +2 -2
- package/dist/cjs/bq-button_2.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-card.cjs.entry.js +2 -2
- package/dist/cjs/bq-card.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/bq-checkbox.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/bq-date-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-dialog.cjs.entry.js +2 -2
- package/dist/cjs/bq-dialog.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-divider.cjs.entry.js +1 -1
- package/dist/cjs/bq-drawer.cjs.entry.js +2 -2
- package/dist/cjs/bq-drawer.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-dropdown_2.cjs.entry.js +4 -4
- package/dist/cjs/bq-dropdown_2.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/bq-empty-state.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-input.cjs.entry.js +2 -2
- package/dist/cjs/bq-input.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-notification.cjs.entry.js +2 -2
- package/dist/cjs/bq-notification.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-option-group.cjs.entry.js +2 -2
- package/dist/cjs/bq-option-group.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-option-list_2.cjs.entry.js +3 -3
- package/dist/cjs/bq-option-list_2.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-option.cjs.entry.js +1 -1
- package/dist/cjs/bq-page-title.cjs.entry.js +2 -2
- package/dist/cjs/bq-page-title.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-progress.cjs.entry.js +2 -2
- package/dist/cjs/bq-progress.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-radio-group.cjs.entry.js +1 -1
- package/dist/cjs/bq-radio.cjs.entry.js +1 -1
- package/dist/cjs/bq-select.cjs.entry.js +2 -2
- package/dist/cjs/bq-select.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-side-menu-item.cjs.entry.js +2 -2
- package/dist/cjs/bq-side-menu-item.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-side-menu.cjs.entry.js +1 -1
- package/dist/cjs/bq-slider.cjs.entry.js +1 -1
- package/dist/cjs/bq-spinner.cjs.entry.js +2 -2
- package/dist/cjs/bq-spinner.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-status.cjs.entry.js +2 -2
- package/dist/cjs/bq-status.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-step-item.cjs.entry.js +2 -2
- package/dist/cjs/bq-step-item.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-steps.cjs.entry.js +1 -1
- package/dist/cjs/bq-switch.cjs.entry.js +2 -2
- package/dist/cjs/bq-switch.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/bq-tab.cjs.entry.js +2 -2
- package/dist/cjs/bq-tab.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-textarea.cjs.entry.js +2 -2
- package/dist/cjs/bq-textarea.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-toast.cjs.entry.js +2 -2
- package/dist/cjs/bq-toast.cjs.entry.js.map +1 -1
- package/dist/cjs/bq-tooltip.cjs.entry.js +2 -2
- package/dist/cjs/{index-Cnm84YLJ.js → index-BwvwUnfB.js} +21 -15
- package/dist/cjs/index-BwvwUnfB.js.map +1 -0
- package/dist/cjs/{index-D7RDSS0K.js → index-CxAIhsq5.js} +81 -75
- package/dist/cjs/index-CxAIhsq5.js.map +1 -0
- package/dist/cjs/loader.cjs.js +3 -2
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/collection/components/select/bq-select.js +2 -2
- package/dist/collection/components/select/scss/bq-select.css +1 -1
- package/dist/collection/components/step-item/scss/bq-step-item.css +1 -1
- package/dist/collection/components/tag/scss/bq-tag.css +1 -1
- package/dist/components/bq-accordion-group.js +157 -1
- package/dist/components/bq-accordion-group.js.map +1 -1
- package/dist/components/bq-accordion.js +444 -1
- package/dist/components/bq-accordion.js.map +1 -1
- package/dist/components/bq-alert.js +354 -1
- package/dist/components/bq-alert.js.map +1 -1
- package/dist/components/bq-avatar.js +206 -1
- package/dist/components/bq-avatar.js.map +1 -1
- package/dist/components/bq-badge.js +8 -1
- package/dist/components/bq-breadcrumb-item.js +129 -1
- package/dist/components/bq-breadcrumb-item.js.map +1 -1
- package/dist/components/bq-breadcrumb.js +138 -1
- package/dist/components/bq-breadcrumb.js.map +1 -1
- package/dist/components/bq-button.js +8 -1
- package/dist/components/bq-card.js +118 -1
- package/dist/components/bq-card.js.map +1 -1
- package/dist/components/bq-checkbox.js +314 -1
- package/dist/components/bq-checkbox.js.map +1 -1
- package/dist/components/bq-date-picker.js +1113 -1
- package/dist/components/bq-date-picker.js.map +1 -1
- package/dist/components/bq-dialog.js +347 -1
- package/dist/components/bq-dialog.js.map +1 -1
- package/dist/components/bq-divider.js +8 -1
- package/dist/components/bq-drawer.js +356 -1
- package/dist/components/bq-drawer.js.map +1 -1
- package/dist/components/bq-dropdown.js +8 -1
- package/dist/components/bq-empty-state.js +192 -1
- package/dist/components/bq-empty-state.js.map +1 -1
- package/dist/components/bq-icon.js +8 -1
- package/dist/components/bq-input.js +502 -1
- package/dist/components/bq-input.js.map +1 -1
- package/dist/components/bq-notification.js +381 -1
- package/dist/components/bq-notification.js.map +1 -1
- package/dist/components/bq-option-group.js +104 -1
- package/dist/components/bq-option-group.js.map +1 -1
- package/dist/components/bq-option-list.js +8 -1
- package/dist/components/bq-option.js +200 -1
- package/dist/components/bq-option.js.map +1 -1
- package/dist/components/bq-page-title.js +150 -1
- package/dist/components/bq-page-title.js.map +1 -1
- package/dist/components/bq-panel.js +8 -1
- package/dist/components/bq-progress.js +220 -1
- package/dist/components/bq-progress.js.map +1 -1
- package/dist/components/bq-radio-group.js +457 -1
- package/dist/components/bq-radio-group.js.map +1 -1
- package/dist/components/bq-radio.js +219 -1
- package/dist/components/bq-radio.js.map +1 -1
- package/dist/components/bq-select.js +794 -1
- package/dist/components/bq-select.js.map +1 -1
- package/dist/components/bq-side-menu-item.js +181 -1
- package/dist/components/bq-side-menu-item.js.map +1 -1
- package/dist/components/bq-side-menu.js +200 -1
- package/dist/components/bq-side-menu.js.map +1 -1
- package/dist/components/bq-slider.js +443 -1
- package/dist/components/bq-slider.js.map +1 -1
- package/dist/components/bq-spinner.js +248 -1
- package/dist/components/bq-spinner.js.map +1 -1
- package/dist/components/bq-status.js +119 -1
- package/dist/components/bq-status.js.map +1 -1
- package/dist/components/bq-step-item.js +236 -1
- package/dist/components/bq-step-item.js.map +1 -1
- package/dist/components/bq-steps.js +175 -1
- package/dist/components/bq-steps.js.map +1 -1
- package/dist/components/bq-switch.js +330 -1
- package/dist/components/bq-switch.js.map +1 -1
- package/dist/components/bq-tab-group.js +273 -1
- package/dist/components/bq-tab-group.js.map +1 -1
- package/dist/components/bq-tab.js +248 -1
- package/dist/components/bq-tab.js.map +1 -1
- package/dist/components/bq-tag.js +8 -1
- package/dist/components/bq-textarea.js +393 -1
- package/dist/components/bq-textarea.js.map +1 -1
- package/dist/components/bq-toast.js +281 -1
- package/dist/components/bq-toast.js.map +1 -1
- package/dist/components/bq-tooltip.js +8 -1
- package/dist/components/index.js +149 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/p-B4sM1t6Z.js +8 -1
- package/dist/components/p-B4sM1t6Z.js.map +1 -1
- package/dist/components/p-BRMw_HGf.js +8 -1
- package/dist/components/p-BRMw_HGf.js.map +1 -1
- package/dist/components/p-BRbYDZoo.js +10 -1
- package/dist/components/p-BRbYDZoo.js.map +1 -1
- package/dist/components/p-BcPwGxIn.js +9 -1
- package/dist/components/p-BcPwGxIn.js.map +1 -1
- package/dist/components/p-BsSDkLU5.js +26 -1
- package/dist/components/p-BsSDkLU5.js.map +1 -1
- package/dist/{beeq/p-8cd20d85.entry.js → components/p-C8_OKNHL.js} +221 -2
- package/dist/components/{p-plkW8XNd.js.map → p-C8_OKNHL.js.map} +1 -1
- package/dist/components/p-C97BzPa8.js +177 -0
- package/dist/components/{p-DhVt1fuD.js.map → p-C97BzPa8.js.map} +1 -1
- package/dist/components/p-CMejKLsB.js +248 -0
- package/dist/components/{p-SKH1pCPg.js.map → p-CMejKLsB.js.map} +1 -1
- package/dist/components/p-CVw85-WU.js +64 -1
- package/dist/components/p-CVw85-WU.js.map +1 -1
- package/dist/{beeq/p-55b686b4.entry.js → components/p-CXLw0i9p.js} +291 -2
- package/dist/components/{p-BcmnHFqE.js.map → p-CXLw0i9p.js.map} +1 -1
- package/dist/components/p-CmKvDWiL.js +1787 -0
- package/dist/components/p-CmKvDWiL.js.map +1 -0
- package/dist/components/p-D1A0LpG_.js +10 -1
- package/dist/components/p-D1A0LpG_.js.map +1 -1
- package/dist/{beeq/p-ecef6efa.entry.js → components/p-DBPU_cIr.js} +334 -2
- package/dist/components/{p-yO5LAmkd.js.map → p-DBPU_cIr.js.map} +1 -1
- package/dist/components/p-DDCN9O42.js +2669 -0
- package/dist/components/p-DDCN9O42.js.map +1 -0
- package/dist/components/p-DHhUeR-_.js +377 -0
- package/dist/components/{p-qVvRSuP7.js.map → p-DHhUeR-_.js.map} +1 -1
- package/dist/components/p-DSqLegVR.js +100 -0
- package/dist/components/{p-C6pBQ61U.js.map → p-DSqLegVR.js.map} +1 -1
- package/dist/components/p-DdvbF5yL.js +119 -1
- package/dist/components/p-DdvbF5yL.js.map +1 -1
- package/dist/components/p-DnkZCdMA.js +8 -1
- package/dist/components/p-DnkZCdMA.js.map +1 -1
- package/dist/components/p-Dx-CEPSQ.js +13 -1
- package/dist/components/p-Dx-CEPSQ.js.map +1 -1
- package/dist/{beeq/p-96a79f9b.entry.js → components/p-YyF6_fWE.js} +381 -2
- package/dist/components/{p-Bi6ozE0v.js.map → p-YyF6_fWE.js.map} +1 -1
- package/dist/components/p-_RvVpeh2.js +29 -1
- package/dist/components/p-_RvVpeh2.js.map +1 -1
- package/dist/components/p-lysmVw2n.js +12 -1
- package/dist/components/p-lysmVw2n.js.map +1 -1
- package/dist/components/p-qOL6hl5s.js +298 -0
- package/dist/components/{p-B93kqFqH.js.map → p-qOL6hl5s.js.map} +1 -1
- package/dist/components/p-uqkxeAeG.js +88 -1
- package/dist/components/p-uqkxeAeG.js.map +1 -1
- package/dist/components/p-zh4P02Kn.js +21 -1
- package/dist/components/p-zh4P02Kn.js.map +1 -1
- package/dist/custom-elements.json +1514 -1514
- package/dist/esm/app-globals-BtYhUEAn.js +10 -0
- package/dist/esm/app-globals-BtYhUEAn.js.map +1 -0
- package/dist/esm/beeq.js +3 -2
- package/dist/esm/beeq.js.map +1 -1
- package/dist/esm/bq-accordion-group.entry.js +2 -2
- package/dist/esm/bq-accordion-group.entry.js.map +1 -1
- package/dist/esm/bq-accordion.entry.js +1 -1
- package/dist/esm/bq-alert.entry.js +2 -2
- package/dist/esm/bq-alert.entry.js.map +1 -1
- package/dist/esm/bq-avatar.entry.js +2 -2
- package/dist/esm/bq-avatar.entry.js.map +1 -1
- package/dist/esm/bq-badge.entry.js +1 -1
- package/dist/esm/bq-breadcrumb-item.entry.js +2 -2
- package/dist/esm/bq-breadcrumb-item.entry.js.map +1 -1
- package/dist/esm/bq-breadcrumb.entry.js +2 -2
- package/dist/esm/bq-breadcrumb.entry.js.map +1 -1
- package/dist/esm/bq-button_2.entry.js +2 -2
- package/dist/esm/bq-button_2.entry.js.map +1 -1
- package/dist/esm/bq-card.entry.js +2 -2
- package/dist/esm/bq-card.entry.js.map +1 -1
- package/dist/esm/bq-checkbox.entry.js +2 -2
- package/dist/esm/bq-checkbox.entry.js.map +1 -1
- package/dist/esm/bq-date-picker.entry.js +2 -2
- package/dist/esm/bq-date-picker.entry.js.map +1 -1
- package/dist/esm/bq-dialog.entry.js +2 -2
- package/dist/esm/bq-dialog.entry.js.map +1 -1
- package/dist/esm/bq-divider.entry.js +1 -1
- package/dist/esm/bq-drawer.entry.js +2 -2
- package/dist/esm/bq-drawer.entry.js.map +1 -1
- package/dist/esm/bq-dropdown_2.entry.js +4 -4
- package/dist/esm/bq-dropdown_2.entry.js.map +1 -1
- package/dist/esm/bq-empty-state.entry.js +2 -2
- package/dist/esm/bq-empty-state.entry.js.map +1 -1
- package/dist/esm/bq-input.entry.js +2 -2
- package/dist/esm/bq-input.entry.js.map +1 -1
- package/dist/esm/bq-notification.entry.js +2 -2
- package/dist/esm/bq-notification.entry.js.map +1 -1
- package/dist/esm/bq-option-group.entry.js +2 -2
- package/dist/esm/bq-option-group.entry.js.map +1 -1
- package/dist/esm/bq-option-list_2.entry.js +3 -3
- package/dist/esm/bq-option-list_2.entry.js.map +1 -1
- package/dist/esm/bq-option.entry.js +1 -1
- package/dist/esm/bq-page-title.entry.js +2 -2
- package/dist/esm/bq-page-title.entry.js.map +1 -1
- package/dist/esm/bq-progress.entry.js +2 -2
- package/dist/esm/bq-progress.entry.js.map +1 -1
- package/dist/esm/bq-radio-group.entry.js +1 -1
- package/dist/esm/bq-radio.entry.js +1 -1
- package/dist/esm/bq-select.entry.js +2 -2
- package/dist/esm/bq-select.entry.js.map +1 -1
- package/dist/esm/bq-side-menu-item.entry.js +2 -2
- package/dist/esm/bq-side-menu-item.entry.js.map +1 -1
- package/dist/esm/bq-side-menu.entry.js +1 -1
- package/dist/esm/bq-slider.entry.js +1 -1
- package/dist/esm/bq-spinner.entry.js +2 -2
- package/dist/esm/bq-spinner.entry.js.map +1 -1
- package/dist/esm/bq-status.entry.js +2 -2
- package/dist/esm/bq-status.entry.js.map +1 -1
- package/dist/esm/bq-step-item.entry.js +2 -2
- package/dist/esm/bq-step-item.entry.js.map +1 -1
- package/dist/esm/bq-steps.entry.js +1 -1
- package/dist/esm/bq-switch.entry.js +2 -2
- package/dist/esm/bq-switch.entry.js.map +1 -1
- package/dist/esm/bq-tab-group.entry.js +1 -1
- package/dist/esm/bq-tab.entry.js +2 -2
- package/dist/esm/bq-tab.entry.js.map +1 -1
- package/dist/esm/bq-textarea.entry.js +2 -2
- package/dist/esm/bq-textarea.entry.js.map +1 -1
- package/dist/esm/bq-toast.entry.js +2 -2
- package/dist/esm/bq-toast.entry.js.map +1 -1
- package/dist/esm/bq-tooltip.entry.js +2 -2
- package/dist/esm/{index-CgIw4Syg.js → index-CmKvDWiL.js} +81 -75
- package/dist/esm/index-CmKvDWiL.js.map +1 -0
- package/dist/esm/{index-BIw6Ac7W.js → index-D0hQxkOP.js} +22 -15
- package/dist/esm/index-D0hQxkOP.js.map +1 -0
- package/dist/esm/loader.js +3 -2
- package/dist/esm/loader.js.map +1 -1
- package/dist/hydrate/index.js +82 -82
- package/dist/hydrate/index.mjs +82 -82
- package/dist/stencil.config.js +1 -0
- package/dist/stencil.config.js.map +1 -1
- package/package.json +4 -4
- package/dist/beeq/p-039f7907.entry.js +0 -6
- package/dist/beeq/p-043a472a.entry.js +0 -6
- package/dist/beeq/p-1b988f57.entry.js +0 -6
- package/dist/beeq/p-20de0359.entry.js +0 -6
- package/dist/beeq/p-22e2de76.entry.js +0 -6
- package/dist/beeq/p-258e890f.entry.js +0 -6
- package/dist/beeq/p-28c6cdbc.entry.js +0 -6
- package/dist/beeq/p-3c491238.entry.js +0 -6
- package/dist/beeq/p-47404d61.entry.js +0 -6
- package/dist/beeq/p-50cbee50.entry.js +0 -6
- package/dist/beeq/p-52334e53.entry.js +0 -6
- package/dist/beeq/p-552d3e73.entry.js +0 -6
- package/dist/beeq/p-59cb331c.entry.js +0 -6
- package/dist/beeq/p-5e186220.entry.js +0 -6
- package/dist/beeq/p-6cac6da2.entry.js +0 -6
- package/dist/beeq/p-76d65605.entry.js +0 -6
- package/dist/beeq/p-8379d440.entry.js +0 -6
- package/dist/beeq/p-8a5e127b.entry.js +0 -6
- package/dist/beeq/p-8e9d8445.entry.js +0 -6
- package/dist/beeq/p-8fd716b1.entry.js +0 -6
- package/dist/beeq/p-904e521c.entry.js +0 -6
- package/dist/beeq/p-90b0fef1.entry.js +0 -6
- package/dist/beeq/p-BIw6Ac7W.js +0 -7
- package/dist/beeq/p-BIw6Ac7W.js.map +0 -1
- package/dist/beeq/p-CgIw4Syg.js +0 -6
- package/dist/beeq/p-CgIw4Syg.js.map +0 -1
- package/dist/beeq/p-a09d8901.entry.js +0 -6
- package/dist/beeq/p-a7a74198.entry.js +0 -6
- package/dist/beeq/p-a9cc76af.entry.js +0 -6
- package/dist/beeq/p-b4a612db.entry.js +0 -6
- package/dist/beeq/p-b7de07f5.entry.js +0 -6
- package/dist/beeq/p-c414e7c0.entry.js +0 -6
- package/dist/beeq/p-d4ffd9f1.entry.js +0 -6
- package/dist/beeq/p-dfd80d40.entry.js +0 -6
- package/dist/beeq/p-e394c440.entry.js +0 -6
- package/dist/beeq/p-e39e3d9c.entry.js +0 -6
- package/dist/beeq/p-f477b7ac.entry.js +0 -6
- package/dist/cjs/index-Cnm84YLJ.js.map +0 -1
- package/dist/cjs/index-D7RDSS0K.js.map +0 -1
- package/dist/components/p-B93kqFqH.js +0 -6
- package/dist/components/p-C6pBQ61U.js +0 -6
- package/dist/components/p-CCQ_5HvV.js +0 -6
- package/dist/components/p-CCQ_5HvV.js.map +0 -1
- package/dist/components/p-CgIw4Syg.js +0 -6
- package/dist/components/p-CgIw4Syg.js.map +0 -1
- package/dist/components/p-DhVt1fuD.js +0 -6
- package/dist/components/p-SKH1pCPg.js +0 -6
- package/dist/components/p-plkW8XNd.js +0 -6
- package/dist/components/p-qVvRSuP7.js +0 -6
- package/dist/components/p-yO5LAmkd.js +0 -6
- package/dist/esm/index-BIw6Ac7W.js.map +0 -1
- package/dist/esm/index-CgIw4Syg.js.map +0 -1
- /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/packages/beeq/jest.config.d.ts +0 -0
- /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/packages/beeq/stencil.config.d.ts +0 -0
- /package/dist/types/{home/runner/work/BEEQ/BEEQ → Users/dramos/PROJECTs/ENDAVA/BEEQ-Design-System}/.stencil/tailwind.config.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NOTIFICATION_TYPE","bqNotificationCss","NOTIFICATION_PORTAL_SELECTOR","BqNotification","autoDismissDebounce","bodyElem","footerElem","notificationElem","hasContent","hasFooter","notificationPortal","isClient","document","querySelector","autoDismiss","border","disableClose","hideIcon","open","time","type","handleTimeout","this","cancel","debounce","hide","handleOpenChange","checkPropValues","validatePropValue","el","bqHide","bqShow","bqAfterOpen","bqAfterClose","connectedCallback","Object","assign","createElement","className","componentWillLoad","componentDidLoad","handleSlotChange","afterNotificationClose","removeChild","tagName","toLowerCase","remove","error","DOMException","handleHide","show","handleShow","toast","parentElement","body","append","appendChild","requestAnimationFrame","async","ev","emit","defaultPrevented","leave","handleTransitionEnd","enter","hasSlotContent","iconName","typeMap","success","warning","render","style","_jsx","Host","class","hidden","role","children","_jsxs","part","ref","div","appearance","label","onBqClick","onlyIcon","size","name","exportparts","onSlotchange"],"sources":["../../packages/beeq/src/components/notification/bq-notification.types.ts","../../packages/beeq/src/components/notification/scss/bq-notification.scss?tag=bq-notification&encapsulation=shadow","../../packages/beeq/src/components/notification/bq-notification.tsx"],"sourcesContent":["export const NOTIFICATION_TYPE = ['error', 'info', 'neutral', 'success', 'warning'] as const;\nexport type TNotificationType = (typeof NOTIFICATION_TYPE)[number];\n\nexport const NOTIFICATION_BORDER_RADIUS = ['none', 'xs2', 'xs', 's', 'm', 'l', 'full'] as const;\nexport type TNotificationBorderRadius = (typeof NOTIFICATION_BORDER_RADIUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Notification styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-notification.variables';\n\n:host {\n @apply block;\n}\n\n:host(.is-hidden) {\n @apply hidden;\n}\n\n.bq-notification {\n @apply relative flex transition-all min-is-[--bq-notification--min-width] p-b-[--bq-notification--padding] p-i-[--bq-notification--padding];\n @apply rounded-[--bq-notification--border-radius] bg-[--bq-notification--background] shadow-[shadow:--bq-notification--box-shadow];\n}\n\n/**\n * Set the notification icon color based on the type value selected\n */\n.notification--icon.color {\n &-error {\n @apply text-[color:--bq-notification--icon-color-error];\n }\n\n &-info {\n @apply text-[color:--bq-notification--icon-color-info];\n }\n\n &-neutral {\n @apply text-[color:--bq-notification--icon-color-neutral];\n }\n\n &-success {\n @apply text-[color:--bq-notification--icon-color-success];\n }\n\n &-warning {\n @apply text-[color:--bq-notification--icon-color-warning];\n }\n}\n\n/**\n * Here we guarantee that if the footer actions are wrapped in a div container from the consumer side,\n * the styles get applied to the that wrapping container directly\n */\n[part='footer'] ::slotted(*) {\n @apply flex items-start gap-xs;\n}\n\n[part='body'],\n[part='footer'] {\n ::slotted(*) {\n @apply block m-bs-m;\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport {\n debounce,\n enter,\n hasSlotContent,\n isClient,\n leave,\n type TDebounce,\n validatePropValue,\n} from '../../shared/utils';\nimport type { TNotificationBorderRadius, TNotificationType } from './bq-notification.types';\nimport { NOTIFICATION_TYPE } from './bq-notification.types';\n\nconst NOTIFICATION_PORTAL_SELECTOR = 'bq-notification-portal';\n\n/**\n * The Notification component is a user interface element used to provide information or alerts to users in a non-intrusive manner.\n *\n * @example How to use it\n * ```html\n * <bq-notification border=\"s\" time=\"3000\" type=\"info\">\n * Title\n * <span slot=\"body\">\n * This is some description text text\n * <a class=\"bq-link\" href=\"https://example.com\">Link</a>\n * </span>\n * <div class=\"flex gap-xs\" slot=\"footer\">\n * <bq-button appearance=\"primary\" size=\"small\">Button</bq-button>\n * <bq-button appearance=\"link\" size=\"small\">Button</bq-button>\n * </div>\n * </bq-notification>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/945cb6-notification\n * @status stable\n *\n * @dependency bq-button\n * @dependency bq-icon\n *\n * @attr {boolean} auto-dismiss - If true, the notification will automatically hide after the specified amount of time\n * @attr {string} border - The corder radius of the notification component\n * @attr {boolean} disable-close - If true, the close button at the top right of the notification won't be shown\n * @attr {boolean} hide-icon - If true, the notification icon won't be shown\n * @attr {boolean} open - If true, the notification will be shown\n * @attr {number} time - The length of time, in milliseconds, after which the notification will close itself. Only valid if `auto-dismiss=\"true\"`\n * @attr {string} type - Type of Notification\n *\n * @event bqAfterClose - Callback handler to be called after the notification has been closed\n * @event bqAfterOpen - Callback handler to be called after the notification has been opened\n * @event bqHide - Callback handler to be called when the notification is hidden\n * @event bqShow - Callback handler to be called when the notification is shown\n *\n * @slot - The notification title content\n * @slot body - The notification description content\n * @slot footer - The notification footer content\n * @slot icon - The icon to be displayed in the notification\n * @slot btn-close - The close button of the notification\n *\n * @part base - The `<div>` container of the predefined bq-icon component.\n * @part body - The container `<div>` that wraps the notification description content\n * @part btn-close - The `bq-button` used to close the notification\n * @part content - The container `<div>` that wraps all the notification content (title, description, footer)\n * @part footer - The container `<div>` that wraps the notification footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the notification type\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the notification main content (title, description)\n * @part svg - The `<svg>` element of the predefined bq-icon component.\n * @part title - The container `<div>` that wraps the notification title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n *\n * @cssprop --bq-notification--background - The notification background color\n * @cssprop --bq-notification--box-shadow - The notification box shadow\n * @cssprop --bq-notification--border-color - The notification border color\n * @cssprop --bq-notification--border-radius - The notification border radius\n * @cssprop --bq-notification--border-style - The notification border style\n * @cssprop --bq-notification--border-width - The notification border width\n * @cssprop --bq-notification--content-footer-gap - The notification content and footer gap\n * @cssprop --bq-notification--title-body-gap - The notification title and body gap\n * @cssprop --bq-notification--icon-color-error - The notification icon color for error type\n * @cssprop --bq-notification--icon-color-info - The notification icon color for info type\n * @cssprop --bq-notification--icon-color-neutral - The notification icon color for neutral type\n * @cssprop --bq-notification--icon-color-success - The notification icon color for success type\n * @cssprop --bq-notification--icon-color-warning - The notification icon color for warning type\n * @cssprop --bq-notification--padding - The notification padding\n * @cssprop --bq-notification--min-width - The notification min width\n */\n@Component({\n tag: 'bq-notification',\n styleUrl: './scss/bq-notification.scss',\n shadow: true,\n})\nexport class BqNotification {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private notificationElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqNotificationElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n @State() private notificationPortal = isClient() ? document.querySelector(`.${NOTIFICATION_PORTAL_SELECTOR}`) : null;\n\n // Public Property API\n // ========================\n\n /** If true, the notification will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corder radius of the notification component */\n @Prop({ reflect: true }) border: TNotificationBorderRadius = 's';\n\n /** If true, the close button at the top right of the notification won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the notification icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the notification will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Notification */\n @Prop({ reflect: true }) type: TNotificationType = 'info';\n\n // Prop lifecycle events\n // =======================\n @Watch('autoDismiss')\n @Watch('time')\n handleTimeout() {\n this.autoDismissDebounce?.cancel();\n if (!this.autoDismiss) return;\n\n this.autoDismissDebounce = debounce(() => {\n this.hide();\n }, this.time);\n // Make sure to autodismiss the notification if the `auto-dismiss` value changed while open\n if (this.open) this.autoDismissDebounce();\n }\n\n @Watch('open')\n handleOpenChange() {\n this.autoDismissDebounce?.cancel();\n\n if (!(this.autoDismiss && this.open)) return;\n this.autoDismissDebounce();\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(NOTIFICATION_TYPE, 'info', this.el, 'type');\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler to be called when the notification is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the notification has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the notification has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n if (!isClient()) return;\n\n const { notificationPortal } = this;\n if (!notificationPortal) {\n this.notificationPortal = Object.assign(document.createElement('div'), {\n className: NOTIFICATION_PORTAL_SELECTOR,\n });\n }\n }\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n componentDidLoad() {\n this.handleSlotChange();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqAfterClose')\n afterNotificationClose() {\n try {\n const { notificationPortal } = this;\n notificationPortal.removeChild(this.el);\n // Remove the notification portal from the DOM when there are no more notifications\n if (notificationPortal.querySelector(this.el.tagName.toLowerCase()) === null) {\n notificationPortal.remove();\n }\n } catch (error) {\n /**\n * Skip DOMException error since it could be possible that\n * in some situations the notification portal is missing\n */\n if (error instanceof DOMException) return;\n throw error;\n }\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /** Method to be called to hide the notification component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n\n /** Method to be called to show the notification component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n /** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */\n @Method()\n async toast() {\n if (!isClient()) return;\n\n const { notificationPortal } = this;\n if (notificationPortal?.parentElement === null) {\n document.body.append(notificationPortal);\n }\n\n notificationPortal?.appendChild(this.el);\n requestAnimationFrame(() => {\n this.show();\n });\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.notificationElem);\n this.open = false;\n this.handleTransitionEnd();\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n await enter(this.notificationElem);\n this.handleTransitionEnd();\n }\n };\n\n private handleTransitionEnd = () => {\n if (this.open) {\n this.bqAfterOpen.emit();\n return;\n }\n\n this.bqAfterClose.emit();\n };\n\n private handleSlotChange = () => {\n this.hasContent = hasSlotContent(this.bodyElem);\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n const typeMap = {\n error: 'x-circle',\n success: 'check-circle',\n warning: 'warning-circle',\n };\n\n return typeMap[this.type] || 'info';\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-notification--border-radius': `var(--bq-radius--${this.border})` }),\n };\n\n return (\n <Host\n aria-hidden={!this.open ? 'true' : 'false'}\n class={{ 'is-hidden': !this.open }}\n hidden={!this.open ? 'true' : 'false'}\n role=\"alert\"\n style={style}\n >\n <div\n class=\"bq-notification\"\n data-transition-enter=\"transform transition ease-out duration-300\"\n data-transition-enter-end=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-enter-start=\"translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-leave=\"transform transition ease-in duration-100\"\n data-transition-leave-end=\"-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-leave-start=\"translate-y-0 opacity-100 sm:translate-x-0\"\n part=\"wrapper\"\n ref={(div) => {\n this.notificationElem = div;\n }}\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n appearance=\"text\"\n border=\"s\"\n class=\"absolute inset-ie-m [&::part(button)]:p-0\"\n label=\"Close\"\n onBqClick={() => this.hide()}\n onlyIcon\n part=\"btn-close\"\n size=\"small\"\n >\n <slot name=\"btn-close\">\n <bq-icon aria-hidden=\"true\" name=\"x\" />\n </slot>\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n '!hidden': this.hideIcon,\n [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)\n 'notification--icon me-xs flex text-left align-top': true,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n <bq-icon exportparts=\"base,svg\" name={this.iconName} part=\"icon\" />\n </slot>\n </div>\n {/* MAIN */}\n <div class=\"flex flex-col items-start gap-[--bq-notification--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-notification--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div class=\"title-font font-semibold leading-regular\" part=\"title\">\n <slot />\n </div>\n {/* BODY */}\n <div\n class={{ 'text-s leading-regular': true, '!hidden': !this.hasContent }}\n part=\"body\"\n ref={(div) => {\n this.bodyElem = div;\n }}\n >\n <slot name=\"body\" onSlotchange={this.handleSlotChange} />\n </div>\n </div>\n {/* FOOTER */}\n <div\n class={{ 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }}\n part=\"footer\"\n ref={(div) => {\n this.footerElem = div;\n }}\n >\n <slot name=\"footer\" onSlotchange={this.handleSlotChange} />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["NOTIFICATION_TYPE","bqNotificationCss","NOTIFICATION_PORTAL_SELECTOR","BqNotification","autoDismissDebounce","bodyElem","footerElem","notificationElem","hasContent","hasFooter","notificationPortal","isClient","document","querySelector","autoDismiss","border","disableClose","hideIcon","open","time","type","handleTimeout","this","cancel","debounce","hide","handleOpenChange","checkPropValues","validatePropValue","el","bqHide","bqShow","bqAfterOpen","bqAfterClose","connectedCallback","Object","assign","createElement","className","componentWillLoad","componentDidLoad","handleSlotChange","afterNotificationClose","removeChild","tagName","toLowerCase","remove","error","DOMException","handleHide","show","handleShow","toast","parentElement","body","append","appendChild","requestAnimationFrame","async","ev","emit","defaultPrevented","leave","handleTransitionEnd","enter","hasSlotContent","iconName","typeMap","success","warning","render","style","_jsx","Host","class","hidden","role","children","_jsxs","part","ref","div","appearance","label","onBqClick","onlyIcon","size","name","exportparts","onSlotchange"],"sources":["../../packages/beeq/src/components/notification/bq-notification.types.ts","../../packages/beeq/src/components/notification/scss/bq-notification.scss?tag=bq-notification&encapsulation=shadow","../../packages/beeq/src/components/notification/bq-notification.tsx"],"sourcesContent":["export const NOTIFICATION_TYPE = ['error', 'info', 'neutral', 'success', 'warning'] as const;\nexport type TNotificationType = (typeof NOTIFICATION_TYPE)[number];\n\nexport const NOTIFICATION_BORDER_RADIUS = ['none', 'xs2', 'xs', 's', 'm', 'l', 'full'] as const;\nexport type TNotificationBorderRadius = (typeof NOTIFICATION_BORDER_RADIUS)[number];\n","/* -------------------------------------------------------------------------- */\n/* Notification styles */\n/* -------------------------------------------------------------------------- */\n\n@import './bq-notification.variables';\n\n:host {\n @apply block;\n}\n\n:host(.is-hidden) {\n @apply hidden;\n}\n\n.bq-notification {\n @apply relative flex transition-all min-is-[--bq-notification--min-width] p-b-[--bq-notification--padding] p-i-[--bq-notification--padding];\n @apply rounded-[--bq-notification--border-radius] bg-[--bq-notification--background] shadow-[shadow:--bq-notification--box-shadow];\n}\n\n/**\n * Set the notification icon color based on the type value selected\n */\n.notification--icon.color {\n &-error {\n @apply text-[color:--bq-notification--icon-color-error];\n }\n\n &-info {\n @apply text-[color:--bq-notification--icon-color-info];\n }\n\n &-neutral {\n @apply text-[color:--bq-notification--icon-color-neutral];\n }\n\n &-success {\n @apply text-[color:--bq-notification--icon-color-success];\n }\n\n &-warning {\n @apply text-[color:--bq-notification--icon-color-warning];\n }\n}\n\n/**\n * Here we guarantee that if the footer actions are wrapped in a div container from the consumer side,\n * the styles get applied to the that wrapping container directly\n */\n[part='footer'] ::slotted(*) {\n @apply flex items-start gap-xs;\n}\n\n[part='body'],\n[part='footer'] {\n ::slotted(*) {\n @apply block m-bs-m;\n }\n}\n","import type { EventEmitter } from '@stencil/core';\nimport { Component, Element, Event, Host, Listen, Method, Prop, State, Watch } from '@stencil/core';\n\nimport {\n debounce,\n enter,\n hasSlotContent,\n isClient,\n leave,\n type TDebounce,\n validatePropValue,\n} from '../../shared/utils';\nimport type { TNotificationBorderRadius, TNotificationType } from './bq-notification.types';\nimport { NOTIFICATION_TYPE } from './bq-notification.types';\n\nconst NOTIFICATION_PORTAL_SELECTOR = 'bq-notification-portal';\n\n/**\n * The Notification component is a user interface element used to provide information or alerts to users in a non-intrusive manner.\n *\n * @example How to use it\n * ```html\n * <bq-notification border=\"s\" time=\"3000\" type=\"info\">\n * Title\n * <span slot=\"body\">\n * This is some description text text\n * <a class=\"bq-link\" href=\"https://example.com\">Link</a>\n * </span>\n * <div class=\"flex gap-xs\" slot=\"footer\">\n * <bq-button appearance=\"primary\" size=\"small\">Button</bq-button>\n * <bq-button appearance=\"link\" size=\"small\">Button</bq-button>\n * </div>\n * </bq-notification>\n * ```\n *\n * @documentation https://www.beeq.design/3d466e231/p/945cb6-notification\n * @status stable\n *\n * @dependency bq-button\n * @dependency bq-icon\n *\n * @attr {boolean} auto-dismiss - If true, the notification will automatically hide after the specified amount of time\n * @attr {string} border - The corder radius of the notification component\n * @attr {boolean} disable-close - If true, the close button at the top right of the notification won't be shown\n * @attr {boolean} hide-icon - If true, the notification icon won't be shown\n * @attr {boolean} open - If true, the notification will be shown\n * @attr {number} time - The length of time, in milliseconds, after which the notification will close itself. Only valid if `auto-dismiss=\"true\"`\n * @attr {string} type - Type of Notification\n *\n * @event bqAfterClose - Callback handler to be called after the notification has been closed\n * @event bqAfterOpen - Callback handler to be called after the notification has been opened\n * @event bqHide - Callback handler to be called when the notification is hidden\n * @event bqShow - Callback handler to be called when the notification is shown\n *\n * @slot - The notification title content\n * @slot body - The notification description content\n * @slot footer - The notification footer content\n * @slot icon - The icon to be displayed in the notification\n * @slot btn-close - The close button of the notification\n *\n * @part base - The `<div>` container of the predefined bq-icon component.\n * @part body - The container `<div>` that wraps the notification description content\n * @part btn-close - The `bq-button` used to close the notification\n * @part content - The container `<div>` that wraps all the notification content (title, description, footer)\n * @part footer - The container `<div>` that wraps the notification footer content\n * @part icon - The `<bq-icon>` element used to render a predefined icon based on the notification type\n * @part icon-outline - The container `<div>` that wraps the icon element\n * @part main - The container `<div>` that wraps the notification main content (title, description)\n * @part svg - The `<svg>` element of the predefined bq-icon component.\n * @part title - The container `<div>` that wraps the notification title content\n * @part wrapper - The wrapper container `<div>` of the element inside the shadow DOM\n *\n * @cssprop --bq-notification--background - The notification background color\n * @cssprop --bq-notification--box-shadow - The notification box shadow\n * @cssprop --bq-notification--border-color - The notification border color\n * @cssprop --bq-notification--border-radius - The notification border radius\n * @cssprop --bq-notification--border-style - The notification border style\n * @cssprop --bq-notification--border-width - The notification border width\n * @cssprop --bq-notification--content-footer-gap - The notification content and footer gap\n * @cssprop --bq-notification--title-body-gap - The notification title and body gap\n * @cssprop --bq-notification--icon-color-error - The notification icon color for error type\n * @cssprop --bq-notification--icon-color-info - The notification icon color for info type\n * @cssprop --bq-notification--icon-color-neutral - The notification icon color for neutral type\n * @cssprop --bq-notification--icon-color-success - The notification icon color for success type\n * @cssprop --bq-notification--icon-color-warning - The notification icon color for warning type\n * @cssprop --bq-notification--padding - The notification padding\n * @cssprop --bq-notification--min-width - The notification min width\n */\n@Component({\n tag: 'bq-notification',\n styleUrl: './scss/bq-notification.scss',\n shadow: true,\n})\nexport class BqNotification {\n // Own Properties\n // ====================\n\n private autoDismissDebounce: TDebounce<void>;\n private bodyElem: HTMLDivElement;\n private footerElem: HTMLDivElement;\n private notificationElem: HTMLDivElement;\n\n // Reference to host HTML element\n // ===================================\n\n @Element() el!: HTMLBqNotificationElement;\n\n // State() variables\n // Inlined decorator, alphabetical order\n // =======================================\n\n @State() private hasContent = false;\n @State() private hasFooter = false;\n @State() private notificationPortal = isClient() ? document.querySelector(`.${NOTIFICATION_PORTAL_SELECTOR}`) : null;\n\n // Public Property API\n // ========================\n\n /** If true, the notification will automatically hide after the specified amount of time */\n @Prop({ reflect: true }) autoDismiss: boolean;\n\n /** The corder radius of the notification component */\n @Prop({ reflect: true }) border: TNotificationBorderRadius = 's';\n\n /** If true, the close button at the top right of the notification won't be shown */\n @Prop({ reflect: true }) disableClose: boolean;\n\n /** If true, the notification icon won't be shown */\n @Prop({ reflect: true }) hideIcon: boolean;\n\n /** If true, the notification will be shown */\n @Prop({ reflect: true, mutable: true }) open: boolean;\n\n /** The length of time, in milliseconds, after which the notification will close itself. Only valid if `autoDismiss=\"true\"` */\n @Prop({ reflect: true }) time: number = 3000;\n\n /** Type of Notification */\n @Prop({ reflect: true }) type: TNotificationType = 'info';\n\n // Prop lifecycle events\n // =======================\n @Watch('autoDismiss')\n @Watch('time')\n handleTimeout() {\n this.autoDismissDebounce?.cancel();\n if (!this.autoDismiss) return;\n\n this.autoDismissDebounce = debounce(() => {\n this.hide();\n }, this.time);\n // Make sure to autodismiss the notification if the `auto-dismiss` value changed while open\n if (this.open) this.autoDismissDebounce();\n }\n\n @Watch('open')\n handleOpenChange() {\n this.autoDismissDebounce?.cancel();\n\n if (!(this.autoDismiss && this.open)) return;\n this.autoDismissDebounce();\n }\n\n @Watch('type')\n checkPropValues() {\n validatePropValue(NOTIFICATION_TYPE, 'info', this.el, 'type');\n }\n\n // Events section\n // Requires JSDocs for public API documentation\n // ==============================================\n\n /** Callback handler to be called when the notification is hidden */\n @Event() bqHide!: EventEmitter;\n\n /** Callback handler to be called when the notification is shown */\n @Event() bqShow!: EventEmitter;\n\n /** Callback handler to be called after the notification has been opened */\n @Event() bqAfterOpen!: EventEmitter;\n\n /** Callback handler to be called after the notification has been closed */\n @Event() bqAfterClose!: EventEmitter;\n\n // Component lifecycle events\n // Ordered by their natural call order\n // =====================================\n\n connectedCallback() {\n if (!isClient()) return;\n\n const { notificationPortal } = this;\n if (!notificationPortal) {\n this.notificationPortal = Object.assign(document.createElement('div'), {\n className: NOTIFICATION_PORTAL_SELECTOR,\n });\n }\n }\n\n componentWillLoad() {\n this.checkPropValues();\n this.handleTimeout();\n }\n\n componentDidLoad() {\n this.handleSlotChange();\n }\n\n // Listeners\n // ==============\n\n @Listen('bqAfterClose')\n afterNotificationClose() {\n try {\n const { notificationPortal } = this;\n notificationPortal.removeChild(this.el);\n // Remove the notification portal from the DOM when there are no more notifications\n if (notificationPortal.querySelector(this.el.tagName.toLowerCase()) === null) {\n notificationPortal.remove();\n }\n } catch (error) {\n /**\n * Skip DOMException error since it could be possible that\n * in some situations the notification portal is missing\n */\n if (error instanceof DOMException) return;\n throw error;\n }\n }\n\n // Public methods API\n // These methods are exposed on the host element.\n // Always use two lines.\n // Public Methods must be async.\n // Requires JSDocs for public API documentation.\n // ===============================================\n\n /** Method to be called to hide the notification component */\n @Method()\n async hide(): Promise<void> {\n await this.handleHide();\n }\n\n /** Method to be called to show the notification component */\n @Method()\n async show(): Promise<void> {\n await this.handleShow();\n }\n\n /** This method can be used to display notifications in a fixed-position element that allows for stacking multiple notifications vertically */\n @Method()\n async toast() {\n if (!isClient()) return;\n\n const { notificationPortal } = this;\n if (notificationPortal?.parentElement === null) {\n document.body.append(notificationPortal);\n }\n\n notificationPortal?.appendChild(this.el);\n requestAnimationFrame(() => {\n this.show();\n });\n }\n\n // Local methods\n // Internal business logic.\n // These methods cannot be called from the host element.\n // =======================================================\n\n private handleHide = async () => {\n const ev = this.bqHide.emit(this.el);\n if (!ev.defaultPrevented) {\n await leave(this.notificationElem);\n this.open = false;\n this.handleTransitionEnd();\n }\n };\n\n private handleShow = async () => {\n const ev = this.bqShow.emit(this.el);\n if (!ev.defaultPrevented) {\n this.open = true;\n await enter(this.notificationElem);\n this.handleTransitionEnd();\n }\n };\n\n private handleTransitionEnd = () => {\n if (this.open) {\n this.bqAfterOpen.emit();\n return;\n }\n\n this.bqAfterClose.emit();\n };\n\n private handleSlotChange = () => {\n this.hasContent = hasSlotContent(this.bodyElem);\n this.hasFooter = hasSlotContent(this.footerElem, 'footer');\n };\n\n private get iconName(): string {\n const typeMap = {\n error: 'x-circle',\n success: 'check-circle',\n warning: 'warning-circle',\n };\n\n return typeMap[this.type] || 'info';\n }\n\n // render() function\n // Always the last one in the class.\n // ===================================\n\n render() {\n const style = {\n ...(this.border && { '--bq-notification--border-radius': `var(--bq-radius--${this.border})` }),\n };\n\n return (\n <Host\n aria-hidden={!this.open ? 'true' : 'false'}\n class={{ 'is-hidden': !this.open }}\n hidden={!this.open ? 'true' : 'false'}\n role=\"alert\"\n style={style}\n >\n <div\n class=\"bq-notification\"\n data-transition-enter=\"transform transition ease-out duration-300\"\n data-transition-enter-end=\"translate-y-0 opacity-100 sm:translate-x-0\"\n data-transition-enter-start=\"translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-leave=\"transform transition ease-in duration-100\"\n data-transition-leave-end=\"-translate-y-xs opacity-0 sm:translate-y-0 sm:translate-x-s\"\n data-transition-leave-start=\"translate-y-0 opacity-100 sm:translate-x-0\"\n part=\"wrapper\"\n ref={(div) => {\n this.notificationElem = div;\n }}\n >\n {/* CLOSE BUTTON */}\n {!this.disableClose && (\n <bq-button\n appearance=\"text\"\n border=\"s\"\n class=\"absolute inset-ie-m [&::part(button)]:p-0\"\n label=\"Close\"\n onBqClick={() => this.hide()}\n onlyIcon\n part=\"btn-close\"\n size=\"small\"\n >\n <slot name=\"btn-close\">\n <bq-icon aria-hidden=\"true\" name=\"x\" />\n </slot>\n </bq-button>\n )}\n {/* ICON */}\n <div\n class={{\n '!hidden': this.hideIcon,\n [`color-${this.type}`]: true, // The icon color will be based on the type (info, success, warning, error)\n 'notification--icon me-xs flex text-left align-top': true,\n }}\n part=\"icon-outline\"\n >\n <slot name=\"icon\">\n <bq-icon exportparts=\"base,svg\" name={this.iconName} part=\"icon\" />\n </slot>\n </div>\n {/* MAIN */}\n <div class=\"flex flex-col items-start gap-[--bq-notification--content-footer-gap]\" part=\"main\">\n <div class=\"flex flex-col gap-[--bq-notification--title-body-gap]\" part=\"content\">\n {/* TITLE */}\n <div class=\"title-font font-semibold leading-regular\" part=\"title\">\n <slot />\n </div>\n {/* BODY */}\n <div\n class={{ 'text-s leading-regular': true, '!hidden': !this.hasContent }}\n part=\"body\"\n ref={(div) => {\n this.bodyElem = div;\n }}\n >\n <slot name=\"body\" onSlotchange={this.handleSlotChange} />\n </div>\n </div>\n {/* FOOTER */}\n <div\n class={{ 'flex items-start gap-xs': true, '!hidden': !this.hasFooter }}\n part=\"footer\"\n ref={(div) => {\n this.footerElem = div;\n }}\n >\n <slot name=\"footer\" onSlotchange={this.handleSlotChange} />\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,408 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by Endavans
|
|
3
|
+
* © https://beeq.design - Apache 2 License.
|
|
4
|
+
*/
|
|
5
|
+
import { r as a, c as r, g as e, a as b } from "./p-D0hQxkOP.js";
|
|
6
|
+
|
|
7
|
+
import { a as n, j as q } from "./p-C33fRBEf.js";
|
|
8
|
+
|
|
9
|
+
import { d as t } from "./p-CVw85-WU.js";
|
|
10
|
+
|
|
11
|
+
import { i } from "./p-Dx-CEPSQ.js";
|
|
12
|
+
|
|
13
|
+
import { i as o } from "./p-BRbYDZoo.js";
|
|
14
|
+
|
|
15
|
+
import { g as s } from "./p-BsSDkLU5.js";
|
|
16
|
+
|
|
17
|
+
import { i as d } from "./p-BcPwGxIn.js";
|
|
18
|
+
|
|
19
|
+
import { v as l } from "./p-zh4P02Kn.js";
|
|
20
|
+
|
|
21
|
+
import "./p-lysmVw2n.js";
|
|
22
|
+
|
|
23
|
+
const c = [ "horizontal", "vertical" ];
|
|
24
|
+
|
|
25
|
+
const bqRadioGroupCss = () => `::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{text-size-adjust:none;font-family:var(--bq-font-family);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);line-height:var(--bq-font-line-height--regular);min-height:100vb;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}}:where(: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:not([bq-mode]),.light,:root:not([bq-theme]):not([bq-mode]),:root[bq-theme=beeq]:not([bq-mode]),[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-100);--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}.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-950);--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}:where(.endava),:where([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,.endava:not([bq-mode]),[bq-theme=endava]:not([bq-mode]),[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-100);--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-950);--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}.inline-block{display:inline-block}.flex{display:flex}.flex-col{flex-direction:column}.border-0{border-width:0}.p-b-0{padding-block:0}.p-i-0{padding-inline:0}.m-b-0{margin-block:0}.m-i-0{margin-inline:0}@-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{display:inline-block}.bq-radio-group{margin-block:0;margin-inline:0}.bq-radio-group:not(.has-fieldset){border-width:0;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.bq-radio-group--horizontal{display:flex}.bq-radio-group--vertical{display:flex;flex-direction:column}.static{position:static}.focus{outline:var(--bq-ring-width,2px) solid var(--bq-ring-color-focus,var(--bq-focus));outline-offset:var(--bq-ring-offset-width,1px)}`;
|
|
26
|
+
|
|
27
|
+
const u = {
|
|
28
|
+
ArrowDown: "forward",
|
|
29
|
+
ArrowRight: "forward",
|
|
30
|
+
ArrowUp: "backward",
|
|
31
|
+
ArrowLeft: "backward"
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
const v = class {
|
|
35
|
+
constructor(e) {
|
|
36
|
+
a(this, e);
|
|
37
|
+
this.bqChange = r(this, "bqChange");
|
|
38
|
+
this.bqBlur = r(this, "bqBlur");
|
|
39
|
+
if (e.$hostElement$["s-ei"]) {
|
|
40
|
+
this.internals = e.$hostElement$["s-ei"];
|
|
41
|
+
} else {
|
|
42
|
+
this.internals = e.$hostElement$.attachInternals();
|
|
43
|
+
e.$hostElement$["s-ei"] = this.internals;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// Own Properties
|
|
47
|
+
// ====================
|
|
48
|
+
initialValue;
|
|
49
|
+
debouncedBqChange;
|
|
50
|
+
focusedBqRadio=null;
|
|
51
|
+
radioElementsSet=new Set;
|
|
52
|
+
cachedRadioElements=[];
|
|
53
|
+
// Reference to host HTML element
|
|
54
|
+
// ===================================
|
|
55
|
+
internals;
|
|
56
|
+
get el() {
|
|
57
|
+
return e(this);
|
|
58
|
+
}
|
|
59
|
+
// State() variables
|
|
60
|
+
// Inlined decorator, alphabetical order
|
|
61
|
+
// =======================================
|
|
62
|
+
checkedRadio;
|
|
63
|
+
tabIndex="0";
|
|
64
|
+
// Public Property API
|
|
65
|
+
// ========================
|
|
66
|
+
/** If true, all radio inputs in the group will display a background on hover */
|
|
67
|
+
backgroundOnHover=false;
|
|
68
|
+
/** A number representing the delay time (in milliseconds) that `bqChange` event handler gets triggered once the value change */
|
|
69
|
+
debounceTime=0;
|
|
70
|
+
/** If true radio inputs are disabled */
|
|
71
|
+
disabled=false;
|
|
72
|
+
/** If true displays fieldset */
|
|
73
|
+
fieldset=false;
|
|
74
|
+
/** Name of the HTML input form control. Submitted with the form as part of a name/value pair. */
|
|
75
|
+
name;
|
|
76
|
+
/** The display orientation of the radio inputs */
|
|
77
|
+
orientation="vertical";
|
|
78
|
+
/** If true, the radio group is required */
|
|
79
|
+
required=false;
|
|
80
|
+
/** The native form validation message when the radio group is required */
|
|
81
|
+
requiredValidationMessage;
|
|
82
|
+
/** A string representing the value of the radio. */
|
|
83
|
+
value;
|
|
84
|
+
// Prop lifecycle events
|
|
85
|
+
// =======================
|
|
86
|
+
handleDebounceTimeChange() {
|
|
87
|
+
const a = 0;
|
|
88
|
+
const r = Math.max(a, this.debounceTime);
|
|
89
|
+
if (r !== this.debounceTime) {
|
|
90
|
+
this.debounceTime = r;
|
|
91
|
+
}
|
|
92
|
+
this.debouncedBqChange?.cancel();
|
|
93
|
+
this.debouncedBqChange = t((a => {
|
|
94
|
+
this.bqChange?.emit(a);
|
|
95
|
+
}), this.debounceTime);
|
|
96
|
+
}
|
|
97
|
+
handleDisabledChange() {
|
|
98
|
+
this.tabIndex = this.disabled ? "-1" : "0";
|
|
99
|
+
this.updateRadioTabIndexes();
|
|
100
|
+
}
|
|
101
|
+
handleGroupProperties() {
|
|
102
|
+
this.updateRadioProperties();
|
|
103
|
+
}
|
|
104
|
+
checkPropValues() {
|
|
105
|
+
l(c, "vertical", this.el, "orientation");
|
|
106
|
+
}
|
|
107
|
+
handleRequiredChange() {
|
|
108
|
+
this.updateFormValidity();
|
|
109
|
+
}
|
|
110
|
+
handleValueChange() {
|
|
111
|
+
this.updateRadioProperties();
|
|
112
|
+
this.updateFormValidity();
|
|
113
|
+
// Find and update the checked radio based on the new value
|
|
114
|
+
const a = this.cachedRadioElements.find((a => a.value === this.value));
|
|
115
|
+
if (a) {
|
|
116
|
+
this.checkedRadio = a;
|
|
117
|
+
this.debouncedBqChange?.({
|
|
118
|
+
value: this.value,
|
|
119
|
+
target: a
|
|
120
|
+
});
|
|
121
|
+
} else {
|
|
122
|
+
this.checkedRadio = undefined;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// Events section
|
|
126
|
+
// Requires JSDocs for public API documentation
|
|
127
|
+
// ==============================================
|
|
128
|
+
/** Handler to be called when the radio state changes */
|
|
129
|
+
bqChange;
|
|
130
|
+
/** Handler to be called when the radio loses focus */
|
|
131
|
+
bqBlur;
|
|
132
|
+
// Component lifecycle events
|
|
133
|
+
// Ordered by their natural call order
|
|
134
|
+
// =====================================
|
|
135
|
+
componentWillLoad() {
|
|
136
|
+
this.initialValue = this.value;
|
|
137
|
+
this.handleDebounceTimeChange();
|
|
138
|
+
this.internals.setFormValue(this.value ?? null);
|
|
139
|
+
this.updateCustomStates();
|
|
140
|
+
this.updateFormValidity();
|
|
141
|
+
}
|
|
142
|
+
disconnectedCallback() {
|
|
143
|
+
this.debouncedBqChange?.cancel();
|
|
144
|
+
}
|
|
145
|
+
formAssociatedCallback() {
|
|
146
|
+
this.internals.setFormValue(this.value ?? null);
|
|
147
|
+
this.updateFormValidity();
|
|
148
|
+
}
|
|
149
|
+
formResetCallback() {
|
|
150
|
+
this.value = this.initialValue;
|
|
151
|
+
this.internals.setFormValue(this.value ?? null);
|
|
152
|
+
this.updateFormValidity();
|
|
153
|
+
this.updateCustomStates();
|
|
154
|
+
}
|
|
155
|
+
// Listeners
|
|
156
|
+
// ==============
|
|
157
|
+
async onBqClick(a) {
|
|
158
|
+
if (!i(a, this.el)) return;
|
|
159
|
+
const {target: r, value: e} = a.detail;
|
|
160
|
+
if (e === this.value) return;
|
|
161
|
+
requestAnimationFrame((() => {
|
|
162
|
+
if (a.defaultPrevented) return;
|
|
163
|
+
this.updateRadioSelection(r);
|
|
164
|
+
}));
|
|
165
|
+
}
|
|
166
|
+
onBqKeyDown(a) {
|
|
167
|
+
if (!i(a, this.el)) return;
|
|
168
|
+
const r = u[a.detail.key];
|
|
169
|
+
if (!r) return;
|
|
170
|
+
this.focusRadioInputSibling(a.detail.target, r);
|
|
171
|
+
}
|
|
172
|
+
onBqFocus(a) {
|
|
173
|
+
if (!i(a, this.el)) return;
|
|
174
|
+
const r = o(this.focusedBqRadio);
|
|
175
|
+
this.focusedBqRadio = a.detail;
|
|
176
|
+
if (r) {
|
|
177
|
+
a.stopPropagation();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
onBqBlur(a) {
|
|
181
|
+
if (!i(a, this.el)) return;
|
|
182
|
+
// NOTE: if focusedBqRadio is nil that means the event occurred from this component
|
|
183
|
+
if (d(this.focusedBqRadio)) return;
|
|
184
|
+
a.stopPropagation();
|
|
185
|
+
requestAnimationFrame((() => {
|
|
186
|
+
if (this.focusedBqRadio !== a.detail) return;
|
|
187
|
+
this.focusedBqRadio = null;
|
|
188
|
+
this.bqBlur.emit(a.detail);
|
|
189
|
+
}));
|
|
190
|
+
}
|
|
191
|
+
// Public methods API
|
|
192
|
+
// These methods are exposed on the host element.
|
|
193
|
+
// Always use two lines.
|
|
194
|
+
// Public Methods must be async.
|
|
195
|
+
// Requires JSDocs for public API documentation.
|
|
196
|
+
// ===============================================
|
|
197
|
+
// Local methods
|
|
198
|
+
// Internal business logic.
|
|
199
|
+
// These methods cannot be called from the host element.
|
|
200
|
+
// =======================================================
|
|
201
|
+
/**
|
|
202
|
+
* Initializes the radio elements set by querying the host element for `ds-radio` elements.
|
|
203
|
+
* This is done to avoid re-querying the host element for radio elements on every change.
|
|
204
|
+
*/
|
|
205
|
+
initializeRadioElements=() => {
|
|
206
|
+
this.radioElementsSet.clear();
|
|
207
|
+
this.el.querySelectorAll("bq-radio").forEach((a => {
|
|
208
|
+
this.radioElementsSet.add(a);
|
|
209
|
+
}));
|
|
210
|
+
// Caching the radio elements in an array for faster access and iteration
|
|
211
|
+
this.cachedRadioElements = Array.from(this.radioElementsSet);
|
|
212
|
+
// Set the tabIndex of the host element to -1 if there are no radio elements or the group is disabled, otherwise set it to 0
|
|
213
|
+
this.tabIndex = this.cachedRadioElements.length === 0 || this.disabled ? "-1" : "0";
|
|
214
|
+
// Set initial tabIndex for all radios
|
|
215
|
+
this.updateRadioTabIndexes();
|
|
216
|
+
};
|
|
217
|
+
/**
|
|
218
|
+
* Sets tabIndex for all radio elements based on current state
|
|
219
|
+
* Handles all scenarios: disabled state, checked radio, value matching, fallback to first
|
|
220
|
+
*/
|
|
221
|
+
updateRadioTabIndexes=() => {
|
|
222
|
+
if (this.cachedRadioElements.length === 0) return;
|
|
223
|
+
// If disabled, all radios get tabIndex -1
|
|
224
|
+
if (this.disabled) {
|
|
225
|
+
this.cachedRadioElements.forEach((a => {
|
|
226
|
+
a.tabIndex = -1;
|
|
227
|
+
}));
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
// Find which radio should be focusable
|
|
231
|
+
let a;
|
|
232
|
+
// Priority 1: Currently checked radio
|
|
233
|
+
a = this.cachedRadioElements.find((a => a.checked));
|
|
234
|
+
// Priority 2: Radio matching current value
|
|
235
|
+
if (!a && this.value) {
|
|
236
|
+
a = this.cachedRadioElements.find((a => a.value === this.value));
|
|
237
|
+
}
|
|
238
|
+
// Priority 3: First enabled radio (fallback)
|
|
239
|
+
if (!a) {
|
|
240
|
+
a = this.cachedRadioElements.find((a => !a.disabled));
|
|
241
|
+
}
|
|
242
|
+
// Apply tabIndex to all radios
|
|
243
|
+
this.cachedRadioElements.forEach((r => {
|
|
244
|
+
r.tabIndex = r === a ? 0 : -1;
|
|
245
|
+
}));
|
|
246
|
+
};
|
|
247
|
+
/**
|
|
248
|
+
* Updates the radio selection and focus.
|
|
249
|
+
* @param target - The radio element to update.
|
|
250
|
+
*/
|
|
251
|
+
updateRadioSelection=a => {
|
|
252
|
+
// Only uncheck the previously checked radio if it's different
|
|
253
|
+
if (this.checkedRadio && this.checkedRadio !== a) {
|
|
254
|
+
this.checkedRadio.checked = false;
|
|
255
|
+
this.checkedRadio.tabIndex = -1;
|
|
256
|
+
}
|
|
257
|
+
a.checked = true;
|
|
258
|
+
a.tabIndex = 0;
|
|
259
|
+
a.vFocus();
|
|
260
|
+
this.checkedRadio = a;
|
|
261
|
+
this.value = a.value;
|
|
262
|
+
this.internals?.setFormValue(this.value ?? null);
|
|
263
|
+
this.updateRadioTabIndexes();
|
|
264
|
+
};
|
|
265
|
+
/**
|
|
266
|
+
* Synchronizes properties of child radio elements with the group's state.
|
|
267
|
+
*/
|
|
268
|
+
updateRadioProperties=() => {
|
|
269
|
+
if (this.cachedRadioElements.length === 0) return;
|
|
270
|
+
const {backgroundOnHover: a, disabled: r, name: e, required: b, value: n} = this;
|
|
271
|
+
for (const q of this.cachedRadioElements) {
|
|
272
|
+
q.backgroundOnHover = a;
|
|
273
|
+
q.checked = n === q.value;
|
|
274
|
+
// This will allows us to force all radio elements to be disabled
|
|
275
|
+
// while keeping the disabled state of the radio element if it was set individually by the user
|
|
276
|
+
q.forceDisabled = r;
|
|
277
|
+
q.name = e;
|
|
278
|
+
q.required = b;
|
|
279
|
+
}
|
|
280
|
+
};
|
|
281
|
+
/**
|
|
282
|
+
* Focuses the next/previous radio element in the group based on the current target.
|
|
283
|
+
* Handles circular navigation and skips disabled elements.
|
|
284
|
+
* @param currentTarget - The currently focused radio element
|
|
285
|
+
* @param direction - The navigation direction ('forward' | 'backward')
|
|
286
|
+
*/
|
|
287
|
+
focusRadioInputSibling=(a, r) => {
|
|
288
|
+
// If there is none or only one radio element, there will be no sibling to focus
|
|
289
|
+
if (this.cachedRadioElements.length <= 1) return;
|
|
290
|
+
const e = this.cachedRadioElements.indexOf(a);
|
|
291
|
+
// If the index of the radio element target is not found, it means that it's not part of the group
|
|
292
|
+
if (e === -1) return;
|
|
293
|
+
const b = s(this.cachedRadioElements, e, r);
|
|
294
|
+
this.updateRadioSelection(b);
|
|
295
|
+
};
|
|
296
|
+
updateFormValidity=async () => {
|
|
297
|
+
const {internals: a, required: r, requiredValidationMessage: e, value: b} = this;
|
|
298
|
+
// Clear the validity state
|
|
299
|
+
a?.states.clear();
|
|
300
|
+
if (!r || r && !d(b)) {
|
|
301
|
+
// If the radio group is not required or has a value, set the validity state to valid
|
|
302
|
+
a?.states.add("valid");
|
|
303
|
+
a?.setValidity({});
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
const n = this.cachedRadioElements[0];
|
|
307
|
+
if (!n) return;
|
|
308
|
+
// If the radio group is required and has no value, set the validity state to invalid
|
|
309
|
+
a?.states.add("invalid");
|
|
310
|
+
// We need to pass the native input element to the setValidity method as anchor element
|
|
311
|
+
a?.setValidity({
|
|
312
|
+
valueMissing: true
|
|
313
|
+
}, e ?? "Please select an option", await n.getNativeInput());
|
|
314
|
+
};
|
|
315
|
+
/**
|
|
316
|
+
* Updates the custom states based on the component properties.
|
|
317
|
+
* The custom states can be used to style the component based on the component properties.
|
|
318
|
+
* The custom states are `disabled`, based on the component properties.
|
|
319
|
+
*/
|
|
320
|
+
updateCustomStates=() => {
|
|
321
|
+
const a = new Set;
|
|
322
|
+
if (this.disabled) a.add("disabled");
|
|
323
|
+
if (this.orientation) a.add(this.orientation);
|
|
324
|
+
// Update states
|
|
325
|
+
this.internals?.states.clear();
|
|
326
|
+
a.forEach((a => {
|
|
327
|
+
this.internals?.states.add(a);
|
|
328
|
+
}));
|
|
329
|
+
};
|
|
330
|
+
handleSlotChange=() => {
|
|
331
|
+
this.initializeRadioElements();
|
|
332
|
+
this.updateRadioProperties();
|
|
333
|
+
};
|
|
334
|
+
// render() function
|
|
335
|
+
// Always the last one in the class.
|
|
336
|
+
// ===================================
|
|
337
|
+
render() {
|
|
338
|
+
return n(b, {
|
|
339
|
+
tabindex: this.tabIndex,
|
|
340
|
+
children: q("fieldset", {
|
|
341
|
+
"aria-controls": "bq-radiogroup",
|
|
342
|
+
"aria-disabled": this.disabled,
|
|
343
|
+
"aria-labelledby": "bq-radio-group__label",
|
|
344
|
+
class: {
|
|
345
|
+
"bq-radio-group": true,
|
|
346
|
+
"has-fieldset": this.fieldset
|
|
347
|
+
},
|
|
348
|
+
disabled: this.disabled,
|
|
349
|
+
part: "base",
|
|
350
|
+
children: [ n("legend", {
|
|
351
|
+
part: "label",
|
|
352
|
+
children: n("slot", {
|
|
353
|
+
id: "bq-radiogroup__label",
|
|
354
|
+
name: "label"
|
|
355
|
+
}, "2d93d0a2f8221720db47166c17d895a47775c072")
|
|
356
|
+
}, "a69f7d64021961d1e6661f0557f5b35302ecff62"), n("div", {
|
|
357
|
+
class: `bq-radio-group--${this.orientation}`,
|
|
358
|
+
part: "group",
|
|
359
|
+
children: n("slot", {
|
|
360
|
+
id: "bq-radiogroup",
|
|
361
|
+
onSlotchange: this.handleSlotChange
|
|
362
|
+
}, "17c0d89bba704ab545c3af8d55e711d20860f136")
|
|
363
|
+
}, "85f121e16f40e45ee6812844aacb3893f067101f") ]
|
|
364
|
+
}, "33ebb252ebcf5dda6d69bf3992c4474fea32723c")
|
|
365
|
+
}, "2bca24f2a90e889546558e2787b44af2ff437f80");
|
|
366
|
+
}
|
|
367
|
+
static get delegatesFocus() {
|
|
368
|
+
return true;
|
|
369
|
+
}
|
|
370
|
+
static get formAssociated() {
|
|
371
|
+
return true;
|
|
372
|
+
}
|
|
373
|
+
static get watchers() {
|
|
374
|
+
return {
|
|
375
|
+
debounceTime: [ {
|
|
376
|
+
handleDebounceTimeChange: 0
|
|
377
|
+
} ],
|
|
378
|
+
disabled: [ {
|
|
379
|
+
handleDisabledChange: 0
|
|
380
|
+
}, {
|
|
381
|
+
handleGroupProperties: 0
|
|
382
|
+
} ],
|
|
383
|
+
backgroundOnHover: [ {
|
|
384
|
+
handleGroupProperties: 0
|
|
385
|
+
} ],
|
|
386
|
+
name: [ {
|
|
387
|
+
handleGroupProperties: 0
|
|
388
|
+
} ],
|
|
389
|
+
required: [ {
|
|
390
|
+
handleGroupProperties: 0
|
|
391
|
+
}, {
|
|
392
|
+
handleRequiredChange: 0
|
|
393
|
+
} ],
|
|
394
|
+
orientation: [ {
|
|
395
|
+
checkPropValues: 0
|
|
396
|
+
} ],
|
|
397
|
+
value: [ {
|
|
398
|
+
handleValueChange: 0
|
|
399
|
+
} ]
|
|
400
|
+
};
|
|
401
|
+
}
|
|
402
|
+
};
|
|
403
|
+
|
|
404
|
+
v.style = bqRadioGroupCss();
|
|
405
|
+
|
|
406
|
+
export { v as bq_radio_group };
|
|
407
|
+
//# sourceMappingURL=bq-radio-group.entry.esm.js.map
|
|
408
|
+
//# sourceMappingURL=p-ae85a23a.entry.js.map
|