@six-group/ui-library 3.0.0-beta.1.7 → 3.0.0-beta.1.8
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/cjs/{event-listeners-4a8d66d5.js → event-listeners-74715e62.js} +38 -38
- package/dist/cjs/{execution-control-3bc9c7c4.js → execution-control-46f388e0.js} +35 -35
- package/dist/cjs/{focus-visible-b08d956f.js → focus-visible-0b352c74.js} +40 -40
- package/dist/cjs/{form-control-9e4dffd1.js → form-control-866bbece.js} +25 -25
- package/dist/cjs/{modal-a9679ddf.js → modal-48d42228.js} +41 -41
- package/dist/cjs/{popover-e3781f5a.js → popover-1d2a037c.js} +95 -95
- package/dist/cjs/{scroll-5b8676ba.js → scroll-76e6f5d7.js} +57 -57
- package/dist/cjs/set-attributes_2.cjs.entry.js +57 -57
- package/dist/cjs/six-alert.cjs.entry.js +131 -131
- package/dist/cjs/six-avatar.cjs.entry.js +28 -28
- package/dist/cjs/six-badge.cjs.entry.js +26 -26
- package/dist/cjs/six-button.cjs.entry.js +97 -97
- package/dist/cjs/six-card.cjs.entry.js +8 -8
- package/dist/cjs/six-checkbox.cjs.entry.js +152 -152
- package/dist/cjs/six-datepicker.cjs.entry.js +1189 -1189
- package/dist/cjs/six-details.cjs.entry.js +139 -139
- package/dist/cjs/six-dialog.cjs.entry.js +152 -152
- package/dist/cjs/six-drawer.cjs.entry.js +174 -174
- package/dist/cjs/six-dropdown_3.cjs.entry.js +728 -728
- package/dist/cjs/six-error-page.cjs.entry.js +94 -94
- package/dist/cjs/six-file-list-item.cjs.entry.js +38 -38
- package/dist/cjs/six-file-list.cjs.entry.js +8 -8
- package/dist/cjs/six-file-upload.cjs.entry.js +96 -96
- package/dist/cjs/six-footer.cjs.entry.js +8 -8
- package/dist/cjs/six-form.cjs.entry.js +219 -219
- package/dist/cjs/six-group-label.cjs.entry.js +46 -46
- package/dist/cjs/six-header.cjs.entry.js +149 -149
- package/dist/cjs/six-icon-button.cjs.entry.js +33 -33
- package/dist/cjs/six-icon.cjs.entry.js +24 -24
- package/dist/cjs/six-input.cjs.entry.js +230 -230
- package/dist/cjs/six-item-picker.cjs.entry.js +361 -361
- package/dist/cjs/six-language-switcher.cjs.entry.js +52 -52
- package/dist/cjs/six-layout-grid.cjs.entry.js +19 -19
- package/dist/cjs/six-main-container.cjs.entry.js +11 -11
- package/dist/cjs/six-menu-divider.cjs.entry.js +8 -8
- package/dist/cjs/six-menu-label.cjs.entry.js +8 -8
- package/dist/cjs/six-picto.cjs.entry.js +15 -15
- package/dist/cjs/six-progress-bar.cjs.entry.js +17 -17
- package/dist/cjs/six-progress-ring.cjs.entry.js +31 -31
- package/dist/cjs/six-radio.cjs.entry.js +121 -121
- package/dist/cjs/six-range.cjs.entry.js +198 -198
- package/dist/cjs/six-root.cjs.entry.js +34 -34
- package/dist/cjs/six-search-field.cjs.entry.js +43 -43
- package/dist/cjs/six-select.cjs.entry.js +447 -447
- package/dist/cjs/six-sidebar-item-group.cjs.entry.js +42 -42
- package/dist/cjs/six-sidebar-item.cjs.entry.js +18 -18
- package/dist/cjs/six-sidebar.cjs.entry.js +171 -171
- package/dist/cjs/six-spinner.cjs.entry.js +16 -16
- package/dist/cjs/six-switch.cjs.entry.js +100 -100
- package/dist/cjs/six-tab-group.cjs.entry.js +226 -226
- package/dist/cjs/six-tab-panel.cjs.entry.js +17 -17
- package/dist/cjs/six-tab.cjs.entry.js +42 -42
- package/dist/cjs/six-table-cell_4.cjs.entry.js +70 -70
- package/dist/cjs/six-table.cjs.entry.js +145 -145
- package/dist/cjs/six-tag.cjs.entry.js +40 -40
- package/dist/cjs/six-textarea.cjs.entry.js +211 -211
- package/dist/cjs/six-tile.cjs.entry.js +89 -89
- package/dist/cjs/six-timepicker.cjs.entry.js +489 -489
- package/dist/cjs/{six-timepicker.types-c58cc88b.js → six-timepicker.types-c19ebff3.js} +43 -43
- package/dist/cjs/six-tooltip.cjs.entry.js +172 -172
- package/dist/cjs/{slot-8abe833c.js → slot-ad537f24.js} +42 -42
- package/dist/cjs/{types-65e5c95b.js → types-581e8ff0.js} +12 -12
- package/dist/cjs/{types-0c28e484.js → types-64878648.js} +12 -12
- package/dist/collection/components/six-alert/six-alert.js +366 -366
- package/dist/collection/components/six-avatar/six-avatar.js +131 -131
- package/dist/collection/components/six-badge/six-badge.js +101 -101
- package/dist/collection/components/six-button/six-button.js +466 -466
- package/dist/collection/components/six-card/six-card.js +21 -21
- package/dist/collection/components/six-checkbox/six-checkbox.js +550 -550
- package/dist/collection/components/six-datepicker/components/day-selection.js +13 -13
- package/dist/collection/components/six-datepicker/components/month-selection.js +12 -12
- package/dist/collection/components/six-datepicker/components/year-selection.js +10 -10
- package/dist/collection/components/six-datepicker/six-date-formats.js +23 -23
- package/dist/collection/components/six-datepicker/six-datepicker.js +1343 -1343
- package/dist/collection/components/six-datepicker/test/six-datepicker.test-helpers.js +16 -16
- package/dist/collection/components/six-details/six-details.js +432 -432
- package/dist/collection/components/six-dialog/six-dialog.js +401 -401
- package/dist/collection/components/six-drawer/six-drawer.js +458 -458
- package/dist/collection/components/six-dropdown/six-dropdown.js +939 -939
- package/dist/collection/components/six-error-page/six-error-page.js +199 -199
- package/dist/collection/components/six-file-list/six-file-list.js +20 -20
- package/dist/collection/components/six-file-list-item/six-file-list-item.js +203 -203
- package/dist/collection/components/six-file-upload/six-file-upload.js +272 -272
- package/dist/collection/components/six-footer/six-footer.js +21 -21
- package/dist/collection/components/six-form/six-form.js +408 -408
- package/dist/collection/components/six-group-label/six-group-label.js +166 -166
- package/dist/collection/components/six-header/six-header.js +420 -420
- package/dist/collection/components/six-icon/six-icon.js +77 -77
- package/dist/collection/components/six-icon-button/six-icon-button.js +142 -142
- package/dist/collection/components/six-input/six-input.js +1141 -1141
- package/dist/collection/components/six-item-picker/six-item-picker.js +688 -688
- package/dist/collection/components/six-item-picker/types.js +13 -13
- package/dist/collection/components/six-language-switcher/six-language-switcher.js +128 -128
- package/dist/collection/components/six-layout-grid/six-layout-grid.js +52 -52
- package/dist/collection/components/six-main-container/six-main-container.js +53 -53
- package/dist/collection/components/six-menu/six-menu.js +406 -406
- package/dist/collection/components/six-menu-divider/six-menu-divider.js +22 -22
- package/dist/collection/components/six-menu-item/six-menu-item.js +177 -177
- package/dist/collection/components/six-menu-label/six-menu-label.js +25 -25
- package/dist/collection/components/six-picto/six-picto.js +50 -50
- package/dist/collection/components/six-progress-bar/six-progress-bar.js +77 -77
- package/dist/collection/components/six-progress-ring/six-progress-ring.js +111 -111
- package/dist/collection/components/six-radio/six-radio.js +410 -410
- package/dist/collection/components/six-range/six-range.js +620 -620
- package/dist/collection/components/six-root/six-root.js +167 -167
- package/dist/collection/components/six-search-field/six-search-field.js +171 -171
- package/dist/collection/components/six-select/six-select.js +1105 -1105
- package/dist/collection/components/six-sidebar/six-sidebar.js +455 -455
- package/dist/collection/components/six-sidebar-item/six-sidebar-item.js +89 -89
- package/dist/collection/components/six-sidebar-item-group/six-sidebar-item-group.js +158 -158
- package/dist/collection/components/six-spinner/six-spinner.js +55 -55
- package/dist/collection/components/six-stage-indicator/six-stage-indicator.js +46 -46
- package/dist/collection/components/six-switch/six-switch.js +393 -393
- package/dist/collection/components/six-tab/six-tab.js +198 -198
- package/dist/collection/components/six-tab-group/six-tab-group.js +362 -362
- package/dist/collection/components/six-tab-panel/six-tab-panel.js +75 -75
- package/dist/collection/components/six-table/six-table.js +209 -209
- package/dist/collection/components/six-table/test/helpers.js +13 -13
- package/dist/collection/components/six-table/types.js +8 -8
- package/dist/collection/components/six-table/util/filter-by.js +34 -34
- package/dist/collection/components/six-table/util/from-data.js +33 -33
- package/dist/collection/components/six-table/util/is.js +3 -3
- package/dist/collection/components/six-table/util/quick-filter-by.js +13 -13
- package/dist/collection/components/six-table/util/sort-by.js +25 -25
- package/dist/collection/components/six-table-cell/six-table-cell.js +21 -21
- package/dist/collection/components/six-table-header/six-table-header.js +21 -21
- package/dist/collection/components/six-table-header-cell/get-next-state.js +7 -7
- package/dist/collection/components/six-table-header-cell/icons.js +12 -12
- package/dist/collection/components/six-table-header-cell/six-table-header-cell.js +174 -174
- package/dist/collection/components/six-table-header-cell/types.js +13 -13
- package/dist/collection/components/six-table-header-cell/util/create-model.js +6 -6
- package/dist/collection/components/six-table-header-cell/util/get-next-state.js +7 -7
- package/dist/collection/components/six-table-row/six-table-row.js +21 -21
- package/dist/collection/components/six-tag/six-tag.js +157 -157
- package/dist/collection/components/six-textarea/six-textarea.js +912 -912
- package/dist/collection/components/six-tile/six-tile.js +315 -315
- package/dist/collection/components/six-timepicker/six-time-format.js +14 -14
- package/dist/collection/components/six-timepicker/six-timepicker.js +980 -980
- package/dist/collection/components/six-timepicker/six-timepicker.types.js +40 -40
- package/dist/collection/components/six-tooltip/six-tooltip.js +435 -435
- package/dist/collection/functional-components/form-control/form-control.js +28 -28
- package/dist/collection/index.js +1 -1
- package/dist/collection/testUtil/delay.js +3 -3
- package/dist/collection/utils/as-array.js +1 -1
- package/dist/collection/utils/date-util.js +712 -712
- package/dist/collection/utils/event-listeners.js +39 -39
- package/dist/collection/utils/execution-control.js +38 -38
- package/dist/collection/utils/focus-visible.js +41 -41
- package/dist/collection/utils/matchers.js +2 -2
- package/dist/collection/utils/modal.js +28 -28
- package/dist/collection/utils/offset.js +13 -13
- package/dist/collection/utils/popover.js +113 -113
- package/dist/collection/utils/scroll.js +47 -47
- package/dist/collection/utils/slot.js +59 -59
- package/dist/collection/utils/support.js +15 -15
- package/dist/collection/utils/tabbable.js +22 -22
- package/dist/collection/utils/testing.js +38 -38
- package/dist/collection/utils/time.util.js +74 -74
- package/dist/collection/utils/type-check.js +5 -5
- package/dist/collection/utils/types.js +1 -1
- package/dist/collection/wrappers/set-attributes/set-attributes.js +68 -68
- package/dist/components.json +1 -1
- package/dist/custom-elements/index.js +7595 -7595
- package/dist/esm/{event-listeners-1bef934e.js → event-listeners-570a24ea.js} +38 -38
- package/dist/esm/{execution-control-235f5126.js → execution-control-1a60d709.js} +35 -35
- package/dist/esm/{focus-visible-4b7946aa.js → focus-visible-97933ea9.js} +40 -40
- package/dist/esm/{form-control-17478ad2.js → form-control-24f446af.js} +25 -25
- package/dist/esm/{modal-e5709f6b.js → modal-5ebdc320.js} +41 -41
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/{popover-5a51f84d.js → popover-1c7a1139.js} +95 -95
- package/dist/esm/{scroll-99b214c2.js → scroll-180b53fd.js} +57 -57
- package/dist/esm/set-attributes_2.entry.js +57 -57
- package/dist/esm/six-alert.entry.js +131 -131
- package/dist/esm/six-avatar.entry.js +28 -28
- package/dist/esm/six-badge.entry.js +26 -26
- package/dist/esm/six-button.entry.js +97 -97
- package/dist/esm/six-card.entry.js +8 -8
- package/dist/esm/six-checkbox.entry.js +152 -152
- package/dist/esm/six-datepicker.entry.js +1189 -1189
- package/dist/esm/six-details.entry.js +139 -139
- package/dist/esm/six-dialog.entry.js +152 -152
- package/dist/esm/six-drawer.entry.js +174 -174
- package/dist/esm/six-dropdown_3.entry.js +728 -728
- package/dist/esm/six-error-page.entry.js +94 -94
- package/dist/esm/six-file-list-item.entry.js +38 -38
- package/dist/esm/six-file-list.entry.js +8 -8
- package/dist/esm/six-file-upload.entry.js +96 -96
- package/dist/esm/six-footer.entry.js +8 -8
- package/dist/esm/six-form.entry.js +219 -219
- package/dist/esm/six-group-label.entry.js +46 -46
- package/dist/esm/six-header.entry.js +149 -149
- package/dist/esm/six-icon-button.entry.js +33 -33
- package/dist/esm/six-icon.entry.js +24 -24
- package/dist/esm/six-input.entry.js +230 -230
- package/dist/esm/six-item-picker.entry.js +361 -361
- package/dist/esm/six-language-switcher.entry.js +52 -52
- package/dist/esm/six-layout-grid.entry.js +19 -19
- package/dist/esm/six-main-container.entry.js +11 -11
- package/dist/esm/six-menu-divider.entry.js +8 -8
- package/dist/esm/six-menu-label.entry.js +8 -8
- package/dist/esm/six-picto.entry.js +15 -15
- package/dist/esm/six-progress-bar.entry.js +17 -17
- package/dist/esm/six-progress-ring.entry.js +31 -31
- package/dist/esm/six-radio.entry.js +121 -121
- package/dist/esm/six-range.entry.js +198 -198
- package/dist/esm/six-root.entry.js +34 -34
- package/dist/esm/six-search-field.entry.js +43 -43
- package/dist/esm/six-select.entry.js +447 -447
- package/dist/esm/six-sidebar-item-group.entry.js +42 -42
- package/dist/esm/six-sidebar-item.entry.js +18 -18
- package/dist/esm/six-sidebar.entry.js +171 -171
- package/dist/esm/six-spinner.entry.js +16 -16
- package/dist/esm/six-switch.entry.js +100 -100
- package/dist/esm/six-tab-group.entry.js +226 -226
- package/dist/esm/six-tab-panel.entry.js +17 -17
- package/dist/esm/six-tab.entry.js +42 -42
- package/dist/esm/six-table-cell_4.entry.js +70 -70
- package/dist/esm/six-table.entry.js +145 -145
- package/dist/esm/six-tag.entry.js +40 -40
- package/dist/esm/six-textarea.entry.js +211 -211
- package/dist/esm/six-tile.entry.js +89 -89
- package/dist/esm/six-timepicker.entry.js +489 -489
- package/dist/esm/{six-timepicker.types-cd6bac03.js → six-timepicker.types-e161a447.js} +43 -43
- package/dist/esm/six-tooltip.entry.js +172 -172
- package/dist/esm/{slot-5253e199.js → slot-6f3984c7.js} +42 -42
- package/dist/esm/{types-a37c1695.js → types-4b10b413.js} +12 -12
- package/dist/esm/{types-33d15673.js → types-ed860f7c.js} +12 -12
- package/dist/types/components/six-alert/six-alert.d.ts +60 -60
- package/dist/types/components/six-avatar/six-avatar.d.ts +27 -27
- package/dist/types/components/six-badge/six-badge.d.ts +20 -20
- package/dist/types/components/six-button/six-button.d.ts +69 -69
- package/dist/types/components/six-card/six-card.d.ts +9 -9
- package/dist/types/components/six-checkbox/six-checkbox.d.ts +86 -86
- package/dist/types/components/six-datepicker/components/day-selection.d.ts +5 -5
- package/dist/types/components/six-datepicker/components/month-selection.d.ts +5 -5
- package/dist/types/components/six-datepicker/components/year-selection.d.ts +5 -5
- package/dist/types/components/six-datepicker/six-date-formats.d.ts +22 -22
- package/dist/types/components/six-datepicker/six-datepicker.d.ts +214 -214
- package/dist/types/components/six-datepicker/test/six-datepicker.test-helpers.d.ts +1 -1
- package/dist/types/components/six-details/six-details.d.ts +61 -61
- package/dist/types/components/six-dialog/six-dialog.d.ts +75 -75
- package/dist/types/components/six-drawer/six-drawer.d.ts +82 -82
- package/dist/types/components/six-dropdown/six-dropdown.d.ts +140 -140
- package/dist/types/components/six-error-page/six-error-page.d.ts +27 -27
- package/dist/types/components/six-file-list/six-file-list.d.ts +8 -8
- package/dist/types/components/six-file-list-item/six-file-list-item.d.ts +35 -35
- package/dist/types/components/six-file-upload/six-file-upload.d.ts +42 -42
- package/dist/types/components/six-footer/six-footer.d.ts +9 -9
- package/dist/types/components/six-form/six-form.d.ts +69 -69
- package/dist/types/components/six-group-label/six-group-label.d.ts +37 -37
- package/dist/types/components/six-header/six-header.d.ts +90 -90
- package/dist/types/components/six-icon/six-icon.d.ts +13 -13
- package/dist/types/components/six-icon-button/six-icon-button.d.ts +28 -28
- package/dist/types/components/six-input/six-input.d.ts +165 -165
- package/dist/types/components/six-item-picker/six-item-picker.d.ts +106 -106
- package/dist/types/components/six-item-picker/types.d.ts +11 -11
- package/dist/types/components/six-language-switcher/six-language-switcher.d.ts +25 -25
- package/dist/types/components/six-layout-grid/six-layout-grid.d.ts +14 -14
- package/dist/types/components/six-main-container/six-main-container.d.ts +16 -16
- package/dist/types/components/six-menu/six-menu.d.ts +81 -81
- package/dist/types/components/six-menu-divider/six-menu-divider.d.ts +11 -11
- package/dist/types/components/six-menu-item/six-menu-item.d.ts +36 -36
- package/dist/types/components/six-menu-label/six-menu-label.d.ts +13 -13
- package/dist/types/components/six-picto/six-picto.d.ts +14 -14
- package/dist/types/components/six-progress-bar/six-progress-bar.d.ts +19 -19
- package/dist/types/components/six-progress-ring/six-progress-ring.d.ts +24 -24
- package/dist/types/components/six-radio/six-radio.d.ts +66 -66
- package/dist/types/components/six-range/six-range.d.ts +101 -101
- package/dist/types/components/six-root/six-root.d.ts +34 -34
- package/dist/types/components/six-search-field/six-search-field.d.ts +32 -32
- package/dist/types/components/six-select/six-select.d.ts +163 -163
- package/dist/types/components/six-sidebar/six-sidebar.d.ts +55 -55
- package/dist/types/components/six-sidebar-item/six-sidebar-item.d.ts +15 -15
- package/dist/types/components/six-sidebar-item-group/six-sidebar-item-group.d.ts +26 -26
- package/dist/types/components/six-spinner/six-spinner.d.ts +15 -15
- package/dist/types/components/six-stage-indicator/six-stage-indicator.d.ts +6 -6
- package/dist/types/components/six-switch/six-switch.d.ts +62 -62
- package/dist/types/components/six-tab/six-tab.d.ts +35 -35
- package/dist/types/components/six-tab-group/six-tab-group.d.ts +62 -62
- package/dist/types/components/six-tab-panel/six-tab-panel.d.ts +19 -19
- package/dist/types/components/six-table/six-table.d.ts +30 -30
- package/dist/types/components/six-table/test/helpers.d.ts +2 -2
- package/dist/types/components/six-table/types.d.ts +33 -33
- package/dist/types/components/six-table/util/filter-by.d.ts +2 -2
- package/dist/types/components/six-table/util/from-data.d.ts +8 -8
- package/dist/types/components/six-table/util/is.d.ts +3 -3
- package/dist/types/components/six-table/util/quick-filter-by.d.ts +2 -2
- package/dist/types/components/six-table/util/sort-by.d.ts +2 -2
- package/dist/types/components/six-table-cell/six-table-cell.d.ts +9 -9
- package/dist/types/components/six-table-header/six-table-header.d.ts +9 -9
- package/dist/types/components/six-table-header-cell/get-next-state.d.ts +2 -2
- package/dist/types/components/six-table-header-cell/icons.d.ts +3 -3
- package/dist/types/components/six-table-header-cell/six-table-header-cell.d.ts +32 -32
- package/dist/types/components/six-table-header-cell/types.d.ts +11 -11
- package/dist/types/components/six-table-header-cell/util/create-model.d.ts +4 -4
- package/dist/types/components/six-table-header-cell/util/get-next-state.d.ts +3 -3
- package/dist/types/components/six-table-row/six-table-row.d.ts +9 -9
- package/dist/types/components/six-tag/six-tag.d.ts +30 -30
- package/dist/types/components/six-textarea/six-textarea.d.ts +134 -134
- package/dist/types/components/six-tile/six-tile.d.ts +40 -40
- package/dist/types/components/six-timepicker/six-time-format.d.ts +13 -13
- package/dist/types/components/six-timepicker/six-timepicker.d.ts +184 -184
- package/dist/types/components/six-timepicker/six-timepicker.types.d.ts +36 -36
- package/dist/types/components/six-tooltip/six-tooltip.d.ts +72 -72
- package/dist/types/functional-components/form-control/form-control.d.ts +34 -34
- package/dist/types/index.d.ts +1 -1
- package/dist/types/testUtil/delay.d.ts +1 -1
- package/dist/types/utils/as-array.d.ts +1 -1
- package/dist/types/utils/date-util.d.ts +194 -194
- package/dist/types/utils/event-listeners.d.ts +15 -15
- package/dist/types/utils/execution-control.d.ts +26 -26
- package/dist/types/utils/focus-visible.d.ts +6 -6
- package/dist/types/utils/matchers.d.ts +2 -2
- package/dist/types/utils/modal.d.ts +13 -13
- package/dist/types/utils/offset.d.ts +4 -4
- package/dist/types/utils/popover.d.ts +27 -27
- package/dist/types/utils/scroll.d.ts +3 -3
- package/dist/types/utils/slot.d.ts +9 -9
- package/dist/types/utils/support.d.ts +1 -1
- package/dist/types/utils/tabbable.d.ts +2 -2
- package/dist/types/utils/testing.d.ts +2 -2
- package/dist/types/utils/time.util.d.ts +10 -10
- package/dist/types/utils/type-check.d.ts +4 -4
- package/dist/types/utils/types.d.ts +4 -4
- package/dist/types/wrappers/set-attributes/set-attributes.d.ts +9 -9
- package/dist/ui-library/{p-a8c225f2.entry.js → p-007bc8e8.entry.js} +1 -1
- package/dist/ui-library/{p-f9c0cfb7.entry.js → p-044b784e.entry.js} +1 -1
- package/dist/ui-library/{p-c733dead.js → p-0786fa7c.js} +0 -0
- package/dist/ui-library/{p-12cc24c3.js → p-07d1e830.js} +0 -0
- package/dist/ui-library/{p-48ea4419.entry.js → p-09cb13fa.entry.js} +1 -1
- package/dist/ui-library/{p-e96dcf96.entry.js → p-0c596054.entry.js} +1 -1
- package/dist/ui-library/{p-a77a6442.entry.js → p-1b8dc7b7.entry.js} +1 -1
- package/dist/ui-library/{p-68d31736.js → p-25a3bf57.js} +0 -0
- package/dist/ui-library/{p-ebaea182.entry.js → p-281e8c2d.entry.js} +1 -1
- package/dist/ui-library/{p-9f2dc381.entry.js → p-2924f82f.entry.js} +1 -1
- package/dist/ui-library/{p-ea1fcff2.entry.js → p-2d7ed407.entry.js} +1 -1
- package/dist/ui-library/{p-89f68e76.entry.js → p-4162dcdd.entry.js} +1 -1
- package/dist/ui-library/{p-6f67f986.entry.js → p-4d3a4e93.entry.js} +1 -1
- package/dist/ui-library/{p-8bd0873f.entry.js → p-4ed023b8.entry.js} +1 -1
- package/dist/ui-library/{p-af3d757c.js → p-4f8394d7.js} +0 -0
- package/dist/ui-library/{p-1b92cc7a.entry.js → p-530ea6ec.entry.js} +1 -1
- package/dist/ui-library/{p-19543c96.entry.js → p-531ab886.entry.js} +1 -1
- package/dist/ui-library/{p-fdb455d7.entry.js → p-54c48654.entry.js} +1 -1
- package/dist/ui-library/{p-c948d3db.entry.js → p-55c64cbc.entry.js} +1 -1
- package/dist/ui-library/{p-1c9f0dc6.js → p-5f1c6a5f.js} +0 -0
- package/dist/ui-library/{p-60491176.entry.js → p-675a8243.entry.js} +1 -1
- package/dist/ui-library/{p-b9fb8455.entry.js → p-6d622ed0.entry.js} +1 -1
- package/dist/ui-library/{p-572e3690.js → p-75297ad7.js} +0 -0
- package/dist/ui-library/{p-2ff97cdf.entry.js → p-90b26447.entry.js} +1 -1
- package/dist/ui-library/{p-fcd2356c.entry.js → p-93945629.entry.js} +1 -1
- package/dist/ui-library/{p-7735d99f.js → p-9a860acc.js} +0 -0
- package/dist/ui-library/{p-4cc01afc.entry.js → p-aa37e45a.entry.js} +1 -1
- package/dist/ui-library/{p-191f958b.js → p-b1e66136.js} +0 -0
- package/dist/ui-library/{p-c09dc3a9.js → p-b4dfb7cf.js} +0 -0
- package/dist/ui-library/{p-968c5169.entry.js → p-c24292b3.entry.js} +1 -1
- package/dist/ui-library/{p-ed21cc57.entry.js → p-cd79de73.entry.js} +1 -1
- package/dist/ui-library/{p-34e6d8e8.js → p-d12c6092.js} +0 -0
- package/dist/ui-library/{p-f0e91e17.entry.js → p-d28ac80a.entry.js} +1 -1
- package/dist/ui-library/{p-5ead7b2f.entry.js → p-d837e5a8.entry.js} +1 -1
- package/dist/ui-library/{p-ec1ecc2a.entry.js → p-dd3cae68.entry.js} +1 -1
- package/dist/ui-library/{p-044c6bf9.js → p-eb8f05a9.js} +0 -0
- package/dist/ui-library/ui-library.esm.js +1 -1
- package/package.json +1 -1
|
@@ -1,49 +1,49 @@
|
|
|
1
1
|
import { r as registerInstance, h, g as getElement } from './index-a2605a62.js';
|
|
2
|
-
import { h as hasSlot } from './slot-
|
|
2
|
+
import { h as hasSlot } from './slot-6f3984c7.js';
|
|
3
3
|
|
|
4
4
|
const sixSidebarItemGroupCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block}.six-sidebar-item-group--childless::part(content){padding:0 !important}.six-sidebar-item-group--subgroup::part(header){background-color:transparent !important}.six-sidebar-item-group__header-icon{margin-left:16px;transform:translate(0px, -3px)}.six-sidebar-details__header{display:flex}.six-sidebar-details__header-icon{margin-right:1em}";
|
|
5
5
|
|
|
6
|
-
let SixSidebarItemGroup = class {
|
|
7
|
-
constructor(hostRef) {
|
|
8
|
-
registerInstance(this, hostRef);
|
|
9
|
-
this.hasItems = false;
|
|
10
|
-
/** Title of item group */
|
|
11
|
-
this.name = '';
|
|
12
|
-
/** Icon of the group */
|
|
13
|
-
this.icon = '';
|
|
14
|
-
/** A unique value to store in the sidebar item of the group label. This can be used as a way to identify sidebar items when selected. */
|
|
15
|
-
this.value = '';
|
|
16
|
-
this.open = false;
|
|
17
|
-
this.provideSlot = (name) => {
|
|
18
|
-
if (this.summaryIconHasContent) {
|
|
19
|
-
return (h("div", { slot: name }, h("slot", { name: name })));
|
|
20
|
-
}
|
|
21
|
-
return (h("slot", { name: name, onSlotchange: () => {
|
|
22
|
-
this.summaryIconHasContent =
|
|
23
|
-
this.host.shadowRoot.querySelector(`slot[name="${name}"]`).assignedNodes().length > 0;
|
|
24
|
-
} }));
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
connectedCallback() {
|
|
28
|
-
this.handleSlotChange = this.handleSlotChange.bind(this);
|
|
29
|
-
}
|
|
30
|
-
componentWillLoad() {
|
|
31
|
-
this.handleSlotChange();
|
|
32
|
-
}
|
|
33
|
-
handleSlotChange() {
|
|
34
|
-
this.hasItems = hasSlot(this.host);
|
|
35
|
-
}
|
|
36
|
-
isSubgroup() {
|
|
37
|
-
return !!this.host.parentElement.closest('six-sidebar-item-group');
|
|
38
|
-
}
|
|
39
|
-
render() {
|
|
40
|
-
return (h("six-details", { class: {
|
|
41
|
-
'six-sidebar-item-group--childless': !this.hasItems,
|
|
42
|
-
'six-sidebar-item-group--subgroup': this.isSubgroup(),
|
|
43
|
-
}, inline: true, open: this.open, "summary-icon": this.summaryIcon, hasContent: this.hasItems }, h("div", { slot: "summary" }, h("div", { class: "six-sidebar-details__header" }, this.icon && h("six-icon", { class: "six-sidebar-details__header-icon" }, this.icon), this.name)), this.provideSlot('summary-icon'), h("slot", null)));
|
|
44
|
-
}
|
|
45
|
-
get host() { return getElement(this); }
|
|
46
|
-
};
|
|
6
|
+
let SixSidebarItemGroup = class {
|
|
7
|
+
constructor(hostRef) {
|
|
8
|
+
registerInstance(this, hostRef);
|
|
9
|
+
this.hasItems = false;
|
|
10
|
+
/** Title of item group */
|
|
11
|
+
this.name = '';
|
|
12
|
+
/** Icon of the group */
|
|
13
|
+
this.icon = '';
|
|
14
|
+
/** A unique value to store in the sidebar item of the group label. This can be used as a way to identify sidebar items when selected. */
|
|
15
|
+
this.value = '';
|
|
16
|
+
this.open = false;
|
|
17
|
+
this.provideSlot = (name) => {
|
|
18
|
+
if (this.summaryIconHasContent) {
|
|
19
|
+
return (h("div", { slot: name }, h("slot", { name: name })));
|
|
20
|
+
}
|
|
21
|
+
return (h("slot", { name: name, onSlotchange: () => {
|
|
22
|
+
this.summaryIconHasContent =
|
|
23
|
+
this.host.shadowRoot.querySelector(`slot[name="${name}"]`).assignedNodes().length > 0;
|
|
24
|
+
} }));
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
connectedCallback() {
|
|
28
|
+
this.handleSlotChange = this.handleSlotChange.bind(this);
|
|
29
|
+
}
|
|
30
|
+
componentWillLoad() {
|
|
31
|
+
this.handleSlotChange();
|
|
32
|
+
}
|
|
33
|
+
handleSlotChange() {
|
|
34
|
+
this.hasItems = hasSlot(this.host);
|
|
35
|
+
}
|
|
36
|
+
isSubgroup() {
|
|
37
|
+
return !!this.host.parentElement.closest('six-sidebar-item-group');
|
|
38
|
+
}
|
|
39
|
+
render() {
|
|
40
|
+
return (h("six-details", { class: {
|
|
41
|
+
'six-sidebar-item-group--childless': !this.hasItems,
|
|
42
|
+
'six-sidebar-item-group--subgroup': this.isSubgroup(),
|
|
43
|
+
}, inline: true, open: this.open, "summary-icon": this.summaryIcon, hasContent: this.hasItems }, h("div", { slot: "summary" }, h("div", { class: "six-sidebar-details__header" }, this.icon && h("six-icon", { class: "six-sidebar-details__header-icon" }, this.icon), this.name)), this.provideSlot('summary-icon'), h("slot", null)));
|
|
44
|
+
}
|
|
45
|
+
get host() { return getElement(this); }
|
|
46
|
+
};
|
|
47
47
|
SixSidebarItemGroup.style = sixSidebarItemGroupCss;
|
|
48
48
|
|
|
49
49
|
export { SixSidebarItemGroup as six_sidebar_item_group };
|
|
@@ -2,24 +2,24 @@ import { r as registerInstance, h } from './index-a2605a62.js';
|
|
|
2
2
|
|
|
3
3
|
const sixSidebarItemCss = ":host{display:block}.sidebar-item{font-size:0.9rem;color:var(--six-sidebar-color);cursor:pointer;padding:8px 8px 16px 16px;font-family:var(--six-font-family)}.sidebar-item:hover:not(.sidebar-item--disabled){color:var(--six-color-web-rock-600)}.sidebar-item.sidebar-item--disabled{outline:none;color:var(--six-input-color-disabled);cursor:not-allowed}.sidebar-item.sidebar-item--selected{font-weight:var(--six-font-weight-bold)}";
|
|
4
4
|
|
|
5
|
-
let SixSidebarItem = class {
|
|
6
|
-
constructor(hostRef) {
|
|
7
|
-
registerInstance(this, hostRef);
|
|
8
|
-
/** A unique value to store in the sidebar item. This can be used as a way to identify sidebar items when selected. */
|
|
9
|
-
this.value = '';
|
|
10
|
-
/** Set to true to draw the item in a selected state. */
|
|
11
|
-
this.selected = false;
|
|
12
|
-
/** Set to true to draw the sidebar item in a disabled state. */
|
|
13
|
-
this.disabled = false;
|
|
14
|
-
}
|
|
15
|
-
render() {
|
|
16
|
-
return (h("div", { class: {
|
|
17
|
-
'sidebar-item': true,
|
|
18
|
-
'sidebar-item--selected': this.selected,
|
|
19
|
-
'sidebar-item--disabled': this.disabled,
|
|
20
|
-
}, role: "menuitem", "aria-selected": this.selected ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false' }, h("slot", null)));
|
|
21
|
-
}
|
|
22
|
-
};
|
|
5
|
+
let SixSidebarItem = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
/** A unique value to store in the sidebar item. This can be used as a way to identify sidebar items when selected. */
|
|
9
|
+
this.value = '';
|
|
10
|
+
/** Set to true to draw the item in a selected state. */
|
|
11
|
+
this.selected = false;
|
|
12
|
+
/** Set to true to draw the sidebar item in a disabled state. */
|
|
13
|
+
this.disabled = false;
|
|
14
|
+
}
|
|
15
|
+
render() {
|
|
16
|
+
return (h("div", { class: {
|
|
17
|
+
'sidebar-item': true,
|
|
18
|
+
'sidebar-item--selected': this.selected,
|
|
19
|
+
'sidebar-item--disabled': this.disabled,
|
|
20
|
+
}, role: "menuitem", "aria-selected": this.selected ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false' }, h("slot", null)));
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
23
|
SixSidebarItem.style = sixSidebarItemCss;
|
|
24
24
|
|
|
25
25
|
export { SixSidebarItem as six_sidebar_item };
|
|
@@ -1,178 +1,178 @@
|
|
|
1
1
|
import { r as registerInstance, c as createEvent, h } from './index-a2605a62.js';
|
|
2
|
-
import { s as scrollIntoView } from './scroll-
|
|
2
|
+
import { s as scrollIntoView } from './scroll-180b53fd.js';
|
|
3
3
|
|
|
4
4
|
const sixSidebarCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{display:block;height:100%}.sidebar__container{height:100%;overflow:auto}.sidebar__container.sidebar--open{box-shadow:var(--six-elevation-1dp)}.sidebar__container:not(.sidebar--visible){position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;pointer-events:none;visibility:hidden}.sidebar--left{color:var(--six-sidebar-color);background-color:var(--six-sidebar-background-color);transition:var(--six-transition-medium) margin-left;background-size:300vw 70%;background-position:bottom;background-repeat:no-repeat}.sidebar--right{transition:var(--six-transition-medium) margin-right}.sidebar--open.sidebar--left{margin-right:2px}.sidebar--open.sidebar--right{margin-left:2px}";
|
|
5
5
|
|
|
6
|
-
const isSidebarItemGroup = (node) => node.tagName.toLowerCase() === 'six-sidebar-item-group';
|
|
7
|
-
let SixSidebar = class {
|
|
8
|
-
constructor(hostRef) {
|
|
9
|
-
registerInstance(this, hostRef);
|
|
10
|
-
this.sixShow = createEvent(this, "six-sidebar-show", 7);
|
|
11
|
-
this.sixAfterShow = createEvent(this, "six-sidebar-after-show", 7);
|
|
12
|
-
this.sixHide = createEvent(this, "six-sidebar-hide", 7);
|
|
13
|
-
this.sixAfterHide = createEvent(this, "six-sidebar-after-hide", 7);
|
|
14
|
-
this.sixInitialFocus = createEvent(this, "six-sidebar-initial-focus", 7);
|
|
15
|
-
this.willShow = false;
|
|
16
|
-
this.willHide = false;
|
|
17
|
-
this.isVisible = false;
|
|
18
|
-
/** Sidebar position */
|
|
19
|
-
this.position = 'left';
|
|
20
|
-
/** Indicates whether or not the sidebar is open. You can use this in lieu of the show/hide methods. */
|
|
21
|
-
this.open = false;
|
|
22
|
-
/** Sidebar width */
|
|
23
|
-
this.width = '16rem';
|
|
24
|
-
/** Define whether sidebar is toggled meaning only one menu can be open at the same time*/
|
|
25
|
-
this.toggled = false;
|
|
26
|
-
this.handleTransitionEnd = (event) => {
|
|
27
|
-
const target = event.target;
|
|
28
|
-
// Ensure we only emit one event when the target element is no longer visible
|
|
29
|
-
if (event.type === 'transitionend' && target.classList.contains('sidebar__container')) {
|
|
30
|
-
this.resetTransitionVariables();
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
this.closeSiblingDetailsOnShow = (event) => {
|
|
34
|
-
const clickedMenuItem = event.target;
|
|
35
|
-
scrollIntoView(clickedMenuItem, this.sidebar);
|
|
36
|
-
const closeAllSiblingsBySiblingProperty = (getSibling) => {
|
|
37
|
-
let node = clickedMenuItem;
|
|
38
|
-
while (getSibling(node) !== null) {
|
|
39
|
-
node = getSibling(node);
|
|
40
|
-
if (isSidebarItemGroup(node)) {
|
|
41
|
-
node.shadowRoot.querySelector('six-details').open = false;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
// close all previous siblings
|
|
46
|
-
closeAllSiblingsBySiblingProperty((node) => node.previousElementSibling);
|
|
47
|
-
// close all further siblings
|
|
48
|
-
closeAllSiblingsBySiblingProperty((node) => node.nextElementSibling);
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
handleOpenChange() {
|
|
52
|
-
this.open ? this.show() : this.hide();
|
|
53
|
-
}
|
|
54
|
-
componentWillLoad() {
|
|
55
|
-
// Show on init if open
|
|
56
|
-
if (this.open) {
|
|
57
|
-
void this.show();
|
|
58
|
-
// if the sidebar is open by default we need to manually reset the
|
|
59
|
-
// transition variables since there will be no transition event
|
|
60
|
-
this.resetTransitionVariables();
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
componentDidRender() {
|
|
64
|
-
this.setupTogglableMenuItems();
|
|
65
|
-
}
|
|
66
|
-
disconnectedCallback() {
|
|
67
|
-
this.sidebar.removeEventListener('six-details-show', this.closeSiblingDetailsOnShow);
|
|
68
|
-
}
|
|
69
|
-
setupTogglableMenuItems() {
|
|
70
|
-
if (!this.toggled) {
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
this.markAllMenuItemsAsSelectableEmpty();
|
|
74
|
-
this.sidebar.addEventListener('six-details-show', this.closeSiblingDetailsOnShow);
|
|
75
|
-
}
|
|
76
|
-
markAllMenuItemsAsSelectableEmpty() {
|
|
77
|
-
// when you have a toggled menu you also want to close other menu items when you click on an item without children
|
|
78
|
-
// nice benefit this item will then also be highlighted
|
|
79
|
-
const slot = this.sidebar.querySelector('slot');
|
|
80
|
-
const nodes = slot.assignedElements();
|
|
81
|
-
// since we don't just want to make the top level empty menuItems selectable in toggled mode,
|
|
82
|
-
// but also nested items we need to traverse the whole menu item tree
|
|
83
|
-
const menuItems = [];
|
|
84
|
-
while (nodes.length > 0) {
|
|
85
|
-
const node = nodes.pop();
|
|
86
|
-
// collect six-details in the current shadowDOM
|
|
87
|
-
const menuItemsForCurrentNode = node.shadowRoot.querySelectorAll('six-details');
|
|
88
|
-
menuItems.push(...menuItemsForCurrentNode);
|
|
89
|
-
// collect all six-sidebar-item-group children of the current node to afterwards check their shadowDOM too
|
|
90
|
-
const newItemGroups = Array.from(node.children).filter(isSidebarItemGroup);
|
|
91
|
-
nodes.push(...newItemGroups);
|
|
92
|
-
}
|
|
93
|
-
menuItems.forEach((details) => (details.selectableEmpty = true));
|
|
94
|
-
}
|
|
95
|
-
/** Toggles whether the sidebar should be shown or hidden */
|
|
96
|
-
async toggle() {
|
|
97
|
-
if (this.willShow || this.willHide) {
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
if (this.open) {
|
|
101
|
-
await this.hide();
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
await this.show();
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
/** Shows the sidebar */
|
|
108
|
-
async show() {
|
|
109
|
-
if (this.willShow) {
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
const sixShow = this.sixShow.emit();
|
|
113
|
-
if (sixShow.defaultPrevented) {
|
|
114
|
-
this.open = false;
|
|
115
|
-
return;
|
|
116
|
-
}
|
|
117
|
-
this.willShow = true;
|
|
118
|
-
this.isVisible = true;
|
|
119
|
-
this.open = true;
|
|
120
|
-
}
|
|
121
|
-
/** Hides the sidebar */
|
|
122
|
-
async hide() {
|
|
123
|
-
if (this.willHide) {
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
const sixHide = this.sixHide.emit();
|
|
127
|
-
if (sixHide.defaultPrevented) {
|
|
128
|
-
this.open = true;
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
this.willHide = true;
|
|
132
|
-
this.open = false;
|
|
133
|
-
}
|
|
134
|
-
/** Allows to select a menu item programmatically by index */
|
|
135
|
-
async selectItemByIndex(index) {
|
|
136
|
-
const slot = this.sidebar.querySelector('slot');
|
|
137
|
-
const menuItemsOnRootLevel = slot
|
|
138
|
-
.assignedElements()
|
|
139
|
-
.map((el) => el.shadowRoot.querySelector('six-details'));
|
|
140
|
-
if (index < 0 || index > menuItemsOnRootLevel.length - 1) {
|
|
141
|
-
console.error(`Tried to access sidebar menu item by index, but provided index out of range. Provided index: ${index}`);
|
|
142
|
-
return;
|
|
143
|
-
}
|
|
144
|
-
await menuItemsOnRootLevel[index].show();
|
|
145
|
-
}
|
|
146
|
-
/** Allows to select a menu item programmatically by name */
|
|
147
|
-
async selectItemByName(value) {
|
|
148
|
-
const slot = this.sidebar.querySelector('slot');
|
|
149
|
-
const sidebarItemGroups = slot.assignedElements();
|
|
150
|
-
const indexOfSelectedElement = sidebarItemGroups.findIndex((el) => (el === null || el === void 0 ? void 0 : el.name) === value);
|
|
151
|
-
const selectedItem = sidebarItemGroups[indexOfSelectedElement].shadowRoot.querySelector('six-details');
|
|
152
|
-
await selectedItem.show();
|
|
153
|
-
}
|
|
154
|
-
resetTransitionVariables() {
|
|
155
|
-
this.isVisible = this.open;
|
|
156
|
-
this.willShow = false;
|
|
157
|
-
this.willHide = false;
|
|
158
|
-
this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();
|
|
159
|
-
}
|
|
160
|
-
render() {
|
|
161
|
-
return (h("host", { class: "six-sidebar" }, h("div", { class: {
|
|
162
|
-
sidebar__container: true,
|
|
163
|
-
'sidebar--visible': this.isVisible,
|
|
164
|
-
'sidebar--open': this.open,
|
|
165
|
-
'sidebar--left': this.position === 'left',
|
|
166
|
-
'sidebar--right': this.position === 'right',
|
|
167
|
-
}, style: {
|
|
168
|
-
width: this.width,
|
|
169
|
-
[`margin-${this.position}`]: this.open ? '0' : `calc(1rem - ${this.width})`,
|
|
170
|
-
}, ref: (el) => (this.sidebar = el), "aria-hidden": this.open ? 'false' : 'true', onTransitionEnd: this.handleTransitionEnd }, h("slot", null))));
|
|
171
|
-
}
|
|
172
|
-
static get watchers() { return {
|
|
173
|
-
"open": ["handleOpenChange"]
|
|
174
|
-
}; }
|
|
175
|
-
};
|
|
6
|
+
const isSidebarItemGroup = (node) => node.tagName.toLowerCase() === 'six-sidebar-item-group';
|
|
7
|
+
let SixSidebar = class {
|
|
8
|
+
constructor(hostRef) {
|
|
9
|
+
registerInstance(this, hostRef);
|
|
10
|
+
this.sixShow = createEvent(this, "six-sidebar-show", 7);
|
|
11
|
+
this.sixAfterShow = createEvent(this, "six-sidebar-after-show", 7);
|
|
12
|
+
this.sixHide = createEvent(this, "six-sidebar-hide", 7);
|
|
13
|
+
this.sixAfterHide = createEvent(this, "six-sidebar-after-hide", 7);
|
|
14
|
+
this.sixInitialFocus = createEvent(this, "six-sidebar-initial-focus", 7);
|
|
15
|
+
this.willShow = false;
|
|
16
|
+
this.willHide = false;
|
|
17
|
+
this.isVisible = false;
|
|
18
|
+
/** Sidebar position */
|
|
19
|
+
this.position = 'left';
|
|
20
|
+
/** Indicates whether or not the sidebar is open. You can use this in lieu of the show/hide methods. */
|
|
21
|
+
this.open = false;
|
|
22
|
+
/** Sidebar width */
|
|
23
|
+
this.width = '16rem';
|
|
24
|
+
/** Define whether sidebar is toggled meaning only one menu can be open at the same time*/
|
|
25
|
+
this.toggled = false;
|
|
26
|
+
this.handleTransitionEnd = (event) => {
|
|
27
|
+
const target = event.target;
|
|
28
|
+
// Ensure we only emit one event when the target element is no longer visible
|
|
29
|
+
if (event.type === 'transitionend' && target.classList.contains('sidebar__container')) {
|
|
30
|
+
this.resetTransitionVariables();
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
this.closeSiblingDetailsOnShow = (event) => {
|
|
34
|
+
const clickedMenuItem = event.target;
|
|
35
|
+
scrollIntoView(clickedMenuItem, this.sidebar);
|
|
36
|
+
const closeAllSiblingsBySiblingProperty = (getSibling) => {
|
|
37
|
+
let node = clickedMenuItem;
|
|
38
|
+
while (getSibling(node) !== null) {
|
|
39
|
+
node = getSibling(node);
|
|
40
|
+
if (isSidebarItemGroup(node)) {
|
|
41
|
+
node.shadowRoot.querySelector('six-details').open = false;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
// close all previous siblings
|
|
46
|
+
closeAllSiblingsBySiblingProperty((node) => node.previousElementSibling);
|
|
47
|
+
// close all further siblings
|
|
48
|
+
closeAllSiblingsBySiblingProperty((node) => node.nextElementSibling);
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
handleOpenChange() {
|
|
52
|
+
this.open ? this.show() : this.hide();
|
|
53
|
+
}
|
|
54
|
+
componentWillLoad() {
|
|
55
|
+
// Show on init if open
|
|
56
|
+
if (this.open) {
|
|
57
|
+
void this.show();
|
|
58
|
+
// if the sidebar is open by default we need to manually reset the
|
|
59
|
+
// transition variables since there will be no transition event
|
|
60
|
+
this.resetTransitionVariables();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
componentDidRender() {
|
|
64
|
+
this.setupTogglableMenuItems();
|
|
65
|
+
}
|
|
66
|
+
disconnectedCallback() {
|
|
67
|
+
this.sidebar.removeEventListener('six-details-show', this.closeSiblingDetailsOnShow);
|
|
68
|
+
}
|
|
69
|
+
setupTogglableMenuItems() {
|
|
70
|
+
if (!this.toggled) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
this.markAllMenuItemsAsSelectableEmpty();
|
|
74
|
+
this.sidebar.addEventListener('six-details-show', this.closeSiblingDetailsOnShow);
|
|
75
|
+
}
|
|
76
|
+
markAllMenuItemsAsSelectableEmpty() {
|
|
77
|
+
// when you have a toggled menu you also want to close other menu items when you click on an item without children
|
|
78
|
+
// nice benefit this item will then also be highlighted
|
|
79
|
+
const slot = this.sidebar.querySelector('slot');
|
|
80
|
+
const nodes = slot.assignedElements();
|
|
81
|
+
// since we don't just want to make the top level empty menuItems selectable in toggled mode,
|
|
82
|
+
// but also nested items we need to traverse the whole menu item tree
|
|
83
|
+
const menuItems = [];
|
|
84
|
+
while (nodes.length > 0) {
|
|
85
|
+
const node = nodes.pop();
|
|
86
|
+
// collect six-details in the current shadowDOM
|
|
87
|
+
const menuItemsForCurrentNode = node.shadowRoot.querySelectorAll('six-details');
|
|
88
|
+
menuItems.push(...menuItemsForCurrentNode);
|
|
89
|
+
// collect all six-sidebar-item-group children of the current node to afterwards check their shadowDOM too
|
|
90
|
+
const newItemGroups = Array.from(node.children).filter(isSidebarItemGroup);
|
|
91
|
+
nodes.push(...newItemGroups);
|
|
92
|
+
}
|
|
93
|
+
menuItems.forEach((details) => (details.selectableEmpty = true));
|
|
94
|
+
}
|
|
95
|
+
/** Toggles whether the sidebar should be shown or hidden */
|
|
96
|
+
async toggle() {
|
|
97
|
+
if (this.willShow || this.willHide) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
if (this.open) {
|
|
101
|
+
await this.hide();
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
await this.show();
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/** Shows the sidebar */
|
|
108
|
+
async show() {
|
|
109
|
+
if (this.willShow) {
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
const sixShow = this.sixShow.emit();
|
|
113
|
+
if (sixShow.defaultPrevented) {
|
|
114
|
+
this.open = false;
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
this.willShow = true;
|
|
118
|
+
this.isVisible = true;
|
|
119
|
+
this.open = true;
|
|
120
|
+
}
|
|
121
|
+
/** Hides the sidebar */
|
|
122
|
+
async hide() {
|
|
123
|
+
if (this.willHide) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
const sixHide = this.sixHide.emit();
|
|
127
|
+
if (sixHide.defaultPrevented) {
|
|
128
|
+
this.open = true;
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
this.willHide = true;
|
|
132
|
+
this.open = false;
|
|
133
|
+
}
|
|
134
|
+
/** Allows to select a menu item programmatically by index */
|
|
135
|
+
async selectItemByIndex(index) {
|
|
136
|
+
const slot = this.sidebar.querySelector('slot');
|
|
137
|
+
const menuItemsOnRootLevel = slot
|
|
138
|
+
.assignedElements()
|
|
139
|
+
.map((el) => el.shadowRoot.querySelector('six-details'));
|
|
140
|
+
if (index < 0 || index > menuItemsOnRootLevel.length - 1) {
|
|
141
|
+
console.error(`Tried to access sidebar menu item by index, but provided index out of range. Provided index: ${index}`);
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
await menuItemsOnRootLevel[index].show();
|
|
145
|
+
}
|
|
146
|
+
/** Allows to select a menu item programmatically by name */
|
|
147
|
+
async selectItemByName(value) {
|
|
148
|
+
const slot = this.sidebar.querySelector('slot');
|
|
149
|
+
const sidebarItemGroups = slot.assignedElements();
|
|
150
|
+
const indexOfSelectedElement = sidebarItemGroups.findIndex((el) => (el === null || el === void 0 ? void 0 : el.name) === value);
|
|
151
|
+
const selectedItem = sidebarItemGroups[indexOfSelectedElement].shadowRoot.querySelector('six-details');
|
|
152
|
+
await selectedItem.show();
|
|
153
|
+
}
|
|
154
|
+
resetTransitionVariables() {
|
|
155
|
+
this.isVisible = this.open;
|
|
156
|
+
this.willShow = false;
|
|
157
|
+
this.willHide = false;
|
|
158
|
+
this.open ? this.sixAfterShow.emit() : this.sixAfterHide.emit();
|
|
159
|
+
}
|
|
160
|
+
render() {
|
|
161
|
+
return (h("host", { class: "six-sidebar" }, h("div", { class: {
|
|
162
|
+
sidebar__container: true,
|
|
163
|
+
'sidebar--visible': this.isVisible,
|
|
164
|
+
'sidebar--open': this.open,
|
|
165
|
+
'sidebar--left': this.position === 'left',
|
|
166
|
+
'sidebar--right': this.position === 'right',
|
|
167
|
+
}, style: {
|
|
168
|
+
width: this.width,
|
|
169
|
+
[`margin-${this.position}`]: this.open ? '0' : `calc(1rem - ${this.width})`,
|
|
170
|
+
}, ref: (el) => (this.sidebar = el), "aria-hidden": this.open ? 'false' : 'true', onTransitionEnd: this.handleTransitionEnd }, h("slot", null))));
|
|
171
|
+
}
|
|
172
|
+
static get watchers() { return {
|
|
173
|
+
"open": ["handleOpenChange"]
|
|
174
|
+
}; }
|
|
175
|
+
};
|
|
176
176
|
SixSidebar.style = sixSidebarCss;
|
|
177
177
|
|
|
178
178
|
export { SixSidebar as six_sidebar };
|
|
@@ -2,22 +2,22 @@ import { r as registerInstance, h } from './index-a2605a62.js';
|
|
|
2
2
|
|
|
3
3
|
const sixSpinnerCss = ":host{position:relative;box-sizing:border-box}:host *,:host *:before,:host *:after{box-sizing:inherit}:host{--track-color:var(--six-progress-track-color);--indicator-color:var(--six-progress-indicator-color);--stroke-width:2px;display:inline-flex}.spinner{display:inline-block;width:1em;height:1em;border-radius:50%;border:solid var(--stroke-width) var(--track-color);border-top-color:var(--indicator-color);border-right-color:var(--indicator-color);animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.six-spinner{width:auto;height:auto;position:relative}.six-spinner .six-spinner__container{margin:0;transform:translateX(0)}.six-spinner .six-spinner__container svg{transform:translateX(0)}.six-spinner__container{position:relative;margin:0 auto;top:calc(50% - 20px);z-index:1}.six-spinner__container,.six-spinner__container svg{width:40px;height:40px;display:block;transform:translateX(40px)}.six-spinner path{stroke-dashoffset:70px;stroke-dasharray:70, 444;-webkit-animation:six-spinner 2s cubic-bezier(0.56, 0.39, 0.51, 0.96) infinite;animation:six-spinner 2s cubic-bezier(0.56, 0.39, 0.51, 0.96) infinite}@-webkit-keyframes six-spinner{to{stroke-dashoffset:-444}}@keyframes six-spinner{to{stroke-dashoffset:-444}}";
|
|
4
4
|
|
|
5
|
-
let SixSpinner = class {
|
|
6
|
-
constructor(hostRef) {
|
|
7
|
-
registerInstance(this, hostRef);
|
|
8
|
-
/** Indicates if the spinner is shown as animated SIX logo or simple spinner. */
|
|
9
|
-
this.six = false;
|
|
10
|
-
}
|
|
11
|
-
renderSIXLogo() {
|
|
12
|
-
return (h("span", { class: "six-spinner", "aria-busy": "true", "aria-live": "polite" }, h("div", { class: "six-spinner__container" }, h("svg", { viewBox: "0 0 40 40" }, h("path", { fill: "none", stroke: "#de3919", "stroke-width": "5", "stroke-linecap": "round", d: "M 35 5 V 35 H 5 T 5 5 H 35 V 35 H 5 V 5 H 35 V 35 H -34 V 30 H 7 A 9 8 0 0 0 14 27 L 27 14 A 8 6 0 0 1 33 12 H 42" })))));
|
|
13
|
-
}
|
|
14
|
-
renderSimple() {
|
|
15
|
-
return h("span", { part: "base", class: "spinner", "aria-busy": "true", "aria-live": "polite" });
|
|
16
|
-
}
|
|
17
|
-
render() {
|
|
18
|
-
return this.six ? this.renderSIXLogo() : this.renderSimple();
|
|
19
|
-
}
|
|
20
|
-
};
|
|
5
|
+
let SixSpinner = class {
|
|
6
|
+
constructor(hostRef) {
|
|
7
|
+
registerInstance(this, hostRef);
|
|
8
|
+
/** Indicates if the spinner is shown as animated SIX logo or simple spinner. */
|
|
9
|
+
this.six = false;
|
|
10
|
+
}
|
|
11
|
+
renderSIXLogo() {
|
|
12
|
+
return (h("span", { class: "six-spinner", "aria-busy": "true", "aria-live": "polite" }, h("div", { class: "six-spinner__container" }, h("svg", { viewBox: "0 0 40 40" }, h("path", { fill: "none", stroke: "#de3919", "stroke-width": "5", "stroke-linecap": "round", d: "M 35 5 V 35 H 5 T 5 5 H 35 V 35 H 5 V 5 H 35 V 35 H -34 V 30 H 7 A 9 8 0 0 0 14 27 L 27 14 A 8 6 0 0 1 33 12 H 42" })))));
|
|
13
|
+
}
|
|
14
|
+
renderSimple() {
|
|
15
|
+
return h("span", { part: "base", class: "spinner", "aria-busy": "true", "aria-live": "polite" });
|
|
16
|
+
}
|
|
17
|
+
render() {
|
|
18
|
+
return this.six ? this.renderSIXLogo() : this.renderSimple();
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
21
|
SixSpinner.style = sixSpinnerCss;
|
|
22
22
|
|
|
23
23
|
export { SixSpinner as six_spinner };
|