@otto-de/b2b-core-components 1.38.1 → 1.38.3
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/b2b-core-components/b2b-core-components.esm.js +1 -1
- package/dist/b2b-core-components/{p-8cbbea6a.entry.js → p-012f9a77.entry.js} +1 -1
- package/dist/b2b-core-components/{p-bbdaefcd.entry.js → p-092b4262.entry.js} +1 -1
- package/dist/b2b-core-components/{p-525e498c.entry.js → p-12e88e5a.entry.js} +1 -1
- package/dist/b2b-core-components/{p-89c22770.entry.js → p-1ae5bf79.entry.js} +1 -1
- package/dist/b2b-core-components/{p-6a3dd5e8.entry.js → p-1e38b22e.entry.js} +1 -1
- package/dist/b2b-core-components/{p-ec6b2805.entry.js → p-1e401aee.entry.js} +1 -1
- package/dist/b2b-core-components/p-2ce43490.entry.js +1 -0
- package/dist/b2b-core-components/{p-d537d092.entry.js → p-303e0518.entry.js} +1 -1
- package/dist/b2b-core-components/p-330592d1.entry.js +1 -0
- package/dist/b2b-core-components/{p-c4dabb68.entry.js → p-351d52af.entry.js} +1 -1
- package/dist/b2b-core-components/{p-3f8ed6c4.entry.js → p-3c19ebc5.entry.js} +1 -1
- package/dist/b2b-core-components/{p-692f7937.entry.js → p-41113bfa.entry.js} +1 -1
- package/dist/b2b-core-components/{p-42348722.entry.js → p-45e198c7.entry.js} +1 -1
- package/dist/b2b-core-components/{p-d74582d5.entry.js → p-490b21ac.entry.js} +1 -1
- package/dist/b2b-core-components/{p-1875aef7.entry.js → p-4d0f7ee5.entry.js} +1 -1
- package/dist/b2b-core-components/{p-c9ed893d.entry.js → p-50b8562f.entry.js} +1 -1
- package/dist/b2b-core-components/p-5bfcd77e.entry.js +1 -0
- package/dist/b2b-core-components/{p-1ced75c1.entry.js → p-5e4e7118.entry.js} +1 -1
- package/dist/b2b-core-components/{p-f9fb31fa.entry.js → p-5fe4ecda.entry.js} +1 -1
- package/dist/b2b-core-components/{p-5e5898cf.entry.js → p-756b15c5.entry.js} +1 -1
- package/dist/b2b-core-components/{p-4489a1b3.entry.js → p-7adb0f00.entry.js} +1 -1
- package/dist/b2b-core-components/{p-a1448a4a.entry.js → p-83d50990.entry.js} +1 -1
- package/dist/b2b-core-components/{p-4b29c057.entry.js → p-8b82cf0f.entry.js} +1 -1
- package/dist/b2b-core-components/{p-e6120fd7.entry.js → p-8b8fb118.entry.js} +1 -1
- package/dist/b2b-core-components/{p-1b0232ee.entry.js → p-905514d8.entry.js} +1 -1
- package/dist/b2b-core-components/{p-aef6ea16.entry.js → p-91013241.entry.js} +1 -1
- package/dist/b2b-core-components/p-95d5ae1e.entry.js +1 -0
- package/dist/b2b-core-components/{p-c3cccd65.entry.js → p-9b794de2.entry.js} +1 -1
- package/dist/b2b-core-components/{p-46409eab.entry.js → p-9da070a1.entry.js} +1 -1
- package/dist/b2b-core-components/{p-d26ec4d5.entry.js → p-a52d843b.entry.js} +1 -1
- package/dist/b2b-core-components/{p-20878717.entry.js → p-a8ef83ae.entry.js} +1 -1
- package/dist/b2b-core-components/p-af2bd305.entry.js +1 -0
- package/dist/b2b-core-components/{p-6602703c.entry.js → p-b522f822.entry.js} +1 -1
- package/dist/b2b-core-components/{p-2cc90fc3.entry.js → p-bfb07ba8.entry.js} +1 -1
- package/dist/b2b-core-components/{p-ef43233a.entry.js → p-c1055487.entry.js} +1 -1
- package/dist/b2b-core-components/{p-d8b518a4.entry.js → p-c883a89a.entry.js} +1 -1
- package/dist/b2b-core-components/{p-f23fb424.entry.js → p-cc6c38c0.entry.js} +1 -1
- package/dist/b2b-core-components/{p-d4c92d91.entry.js → p-de0fb449.entry.js} +1 -1
- package/dist/b2b-core-components/{p-f087a103.entry.js → p-e21fd46f.entry.js} +1 -1
- package/dist/b2b-core-components/{p-00441b2d.entry.js → p-e2b759eb.entry.js} +1 -1
- package/dist/b2b-core-components/{p-8968ac38.entry.js → p-e5c8c58b.entry.js} +1 -1
- package/dist/b2b-core-components/p-e835a3ef.entry.js +1 -0
- package/dist/b2b-core-components/{p-3ace65d8.entry.js → p-eeec1ea5.entry.js} +1 -1
- package/dist/b2b-core-components/p-ef1fa1de.entry.js +1 -0
- package/dist/b2b-core-components/{p-c54525d6.entry.js → p-f7049240.entry.js} +1 -1
- package/dist/b2b-core-components/{p-487561b8.entry.js → p-f8188029.entry.js} +1 -1
- package/dist/b2b-core-components/{p-257c89a5.entry.js → p-f9ff8727.entry.js} +1 -1
- package/dist/b2b-core-components/{p-0ac46136.entry.js → p-fa03ee6f.entry.js} +1 -1
- package/dist/b2b-core-components/{p-e52728b3.entry.js → p-fbbaef26.entry.js} +1 -1
- package/dist/b2b-core-components/{p-6de324ba.entry.js → p-fcc5b72c.entry.js} +1 -1
- package/dist/cjs/b2b-button_2.cjs.entry.js +1 -1
- package/dist/cjs/b2b-chip-component_2.cjs.entry.js +2 -2
- package/dist/cjs/b2b-core-components.cjs.js +1 -1
- package/dist/cjs/b2b-custom-dropdown-option-category.cjs.entry.js +21 -0
- package/dist/cjs/b2b-custom-dropdown-option.cjs.entry.js +2 -2
- package/dist/cjs/b2b-custom-dropdown.cjs.entry.js +25 -6
- package/dist/cjs/b2b-date-picker-days-header_4.cjs.entry.js +8 -8
- package/dist/cjs/b2b-date-picker-days.cjs.entry.js +1 -1
- package/dist/cjs/b2b-date-range-picker-days_2.cjs.entry.js +3 -3
- package/dist/cjs/b2b-date-range-picker.cjs.entry.js +5 -5
- package/dist/cjs/b2b-dropdown.cjs.entry.js +2 -2
- package/dist/cjs/b2b-flyout-menu-option.cjs.entry.js +1 -1
- package/dist/cjs/b2b-flyout-menu.cjs.entry.js +3 -3
- package/dist/cjs/b2b-grid-col.cjs.entry.js +1 -1
- package/dist/cjs/b2b-grid-row.cjs.entry.js +2 -2
- package/dist/cjs/b2b-grid.cjs.entry.js +1 -1
- package/dist/cjs/b2b-input-group_2.cjs.entry.js +3 -3
- package/dist/cjs/b2b-input-label.cjs.entry.js +2 -2
- package/dist/cjs/b2b-input-list-option.cjs.entry.js +1 -1
- package/dist/cjs/b2b-input.cjs.entry.js +4 -4
- package/dist/cjs/b2b-label.cjs.entry.js +2 -2
- package/dist/cjs/b2b-modal.cjs.entry.js +2 -2
- package/dist/cjs/b2b-multiselect-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/b2b-pagination.cjs.entry.js +1 -1
- package/dist/cjs/b2b-progress-bar.cjs.entry.js +3 -3
- package/dist/cjs/b2b-radio-button.cjs.entry.js +2 -2
- package/dist/cjs/b2b-radio-group.cjs.entry.js +2 -2
- package/dist/cjs/b2b-required-separator.cjs.entry.js +1 -1
- package/dist/cjs/b2b-rounded-icon.cjs.entry.js +4 -4
- package/dist/cjs/b2b-scrollable-container.cjs.entry.js +1 -1
- package/dist/cjs/b2b-search.cjs.entry.js +1 -1
- package/dist/cjs/b2b-separator.cjs.entry.js +1 -1
- package/dist/cjs/b2b-shimmer.cjs.entry.js +1 -1
- package/dist/cjs/b2b-snackbar.cjs.entry.js +4 -4
- package/dist/cjs/b2b-tab-group.cjs.entry.js +1 -1
- package/dist/cjs/b2b-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/b2b-tab.cjs.entry.js +2 -2
- package/dist/cjs/b2b-table-cell_2.cjs.entry.js +4 -4
- package/dist/cjs/b2b-table-row.cjs.entry.js +3 -3
- package/dist/cjs/b2b-table-rowgroup.cjs.entry.js +3 -3
- package/dist/cjs/b2b-table.cjs.entry.js +3 -3
- package/dist/cjs/b2b-textarea.cjs.entry.js +2 -2
- package/dist/cjs/b2b-time-picker.cjs.entry.js +6 -6
- package/dist/cjs/b2b-toggle-button.cjs.entry.js +3 -3
- package/dist/cjs/b2b-toggle-chip.cjs.entry.js +3 -3
- package/dist/cjs/b2b-toggle-group.cjs.entry.js +2 -2
- package/dist/cjs/b2b-toggle-switch.cjs.entry.js +4 -4
- package/dist/cjs/b2b-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/b2b-wizard-icon.cjs.entry.js +1 -1
- package/dist/cjs/b2b-wizard-step.cjs.entry.js +2 -2
- package/dist/cjs/b2b-wizard.cjs.entry.js +1 -1
- package/dist/cjs/index-668808fd.js +4 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{utils-499e9db5.js → utils-2c68ef15.js} +1 -2
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/custom-dropdown/custom-dropdown-option-category.css +255 -0
- package/dist/collection/components/custom-dropdown/custom-dropdown-option-category.js +43 -0
- package/dist/collection/components/custom-dropdown/custom-dropdown-option.js +2 -2
- package/dist/collection/components/custom-dropdown/custom-dropdown.css +3 -0
- package/dist/collection/components/custom-dropdown/custom-dropdown.e2e.js +89 -0
- package/dist/collection/components/custom-dropdown/custom-dropdown.js +24 -5
- package/dist/collection/components/custom-dropdown/custom-dropdown.stories.js +67 -0
- package/dist/collection/components/date-picker/date-picker-days-header.js +1 -1
- package/dist/collection/components/date-picker/date-picker-days.js +1 -1
- package/dist/collection/components/date-picker/date-picker-header.js +5 -5
- package/dist/collection/components/date-picker/date-picker-months.js +1 -1
- package/dist/collection/components/date-picker/date-picker-years.js +1 -1
- package/dist/collection/components/date-range-picker/date-range-picker-days.js +1 -1
- package/dist/collection/components/date-range-picker/date-range-picker.js +5 -5
- package/dist/collection/components/dropdown/dropdown.js +2 -2
- package/dist/collection/components/flyout-menu/flyout-menu-option.js +1 -1
- package/dist/collection/components/flyout-menu/flyout-menu.js +3 -3
- package/dist/collection/components/grid/column.js +1 -1
- package/dist/collection/components/grid/grid.js +1 -1
- package/dist/collection/components/grid/row.js +2 -2
- package/dist/collection/components/input/input.js +4 -4
- package/dist/collection/components/input-group/input-group.js +1 -1
- package/dist/collection/components/input-label/input-label.js +2 -2
- package/dist/collection/components/input-list/input-list-option.js +1 -1
- package/dist/collection/components/input-list/input-list.js +2 -2
- package/dist/collection/components/label/label.js +2 -2
- package/dist/collection/components/modal/modal.js +2 -2
- package/dist/collection/components/multiselect-dropdown/multiselect-dropdown.css +2 -1
- package/dist/collection/components/multiselect-dropdown/multiselect-dropdown.js +3 -3
- package/dist/collection/components/multiselect-dropdown/multiselect-option/multiselect-option.js +2 -2
- package/dist/collection/components/pagination/pagination.js +1 -1
- package/dist/collection/components/paragraph/paragraph.js +2 -2
- package/dist/collection/components/progress-bar/progress-bar.js +3 -3
- package/dist/collection/components/radio/radio.js +2 -2
- package/dist/collection/components/radio-group/radio-group.js +2 -2
- package/dist/collection/components/required-separator/required-separator.js +1 -1
- package/dist/collection/components/rounded-icon/rounded-icon.js +4 -4
- package/dist/collection/components/scrollable-container/scrollable-container.js +1 -1
- package/dist/collection/components/search/search.js +1 -1
- package/dist/collection/components/separator/separator.js +1 -1
- package/dist/collection/components/shimmer/shimmer.js +1 -1
- package/dist/collection/components/snackbar/snackbar.js +4 -4
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/tab/tab.js +2 -2
- package/dist/collection/components/tab-group/tab-group.js +1 -1
- package/dist/collection/components/tab-panel/tab-panel.js +1 -1
- package/dist/collection/components/table/table-cell/table-cell.js +2 -2
- package/dist/collection/components/table/table-header/table-header.js +1 -1
- package/dist/collection/components/table/table-row/table-row.js +2 -2
- package/dist/collection/components/table/table-rowgroup/table-rowgroup.js +2 -2
- package/dist/collection/components/table/table.js +2 -2
- package/dist/collection/components/table/utils.js +1 -2
- package/dist/collection/components/textarea/textarea.js +2 -2
- package/dist/collection/components/time-picker/time-picker.js +6 -6
- package/dist/collection/components/toggle-button/toggle-button.js +3 -3
- package/dist/collection/components/toggle-chip/toggle-chip.js +3 -3
- package/dist/collection/components/toggle-group/toggle-group.js +2 -2
- package/dist/collection/components/toggle-switch/toggle-switch.js +4 -4
- package/dist/collection/components/tooltip/tooltip.js +3 -3
- package/dist/collection/components/wizard/wizard-step.js +2 -2
- package/dist/collection/components/wizard/wizard.js +1 -1
- package/dist/collection/components/wizard-icon/wizard-icon.js +1 -1
- package/dist/components/b2b-custom-dropdown-option-category.d.ts +11 -0
- package/dist/components/b2b-custom-dropdown-option-category.js +37 -0
- package/dist/components/b2b-custom-dropdown-option.js +2 -2
- package/dist/components/b2b-custom-dropdown.js +25 -6
- package/dist/components/b2b-date-range-picker.js +5 -5
- package/dist/components/b2b-dropdown.js +2 -2
- package/dist/components/b2b-flyout-menu-option.js +1 -1
- package/dist/components/b2b-flyout-menu.js +3 -3
- package/dist/components/b2b-grid-col.js +1 -1
- package/dist/components/b2b-grid-row.js +2 -2
- package/dist/components/b2b-grid.js +1 -1
- package/dist/components/b2b-label.js +2 -2
- package/dist/components/b2b-modal.js +2 -2
- package/dist/components/b2b-multiselect-dropdown.js +4 -4
- package/dist/components/b2b-pagination.js +1 -1
- package/dist/components/b2b-progress-bar.js +3 -3
- package/dist/components/b2b-radio-button.js +2 -2
- package/dist/components/b2b-radio-group.js +2 -2
- package/dist/components/b2b-required-separator.js +1 -1
- package/dist/components/b2b-scrollable-container.js +1 -1
- package/dist/components/b2b-search.js +1 -1
- package/dist/components/b2b-shimmer.js +1 -1
- package/dist/components/b2b-snackbar.js +4 -4
- package/dist/components/b2b-tab-group.js +1 -1
- package/dist/components/b2b-tab-panel.js +1 -1
- package/dist/components/b2b-tab.js +2 -2
- package/dist/components/b2b-table-row.js +2 -2
- package/dist/components/b2b-table-rowgroup.js +2 -2
- package/dist/components/b2b-table.js +2 -2
- package/dist/components/b2b-textarea.js +2 -2
- package/dist/components/b2b-time-picker.js +6 -6
- package/dist/components/b2b-toggle-button.js +3 -3
- package/dist/components/b2b-toggle-chip.js +3 -3
- package/dist/components/b2b-toggle-group.js +2 -2
- package/dist/components/b2b-toggle-switch.js +4 -4
- package/dist/components/b2b-tooltip.js +3 -3
- package/dist/components/b2b-wizard-step.js +2 -2
- package/dist/components/b2b-wizard.js +1 -1
- package/dist/components/date-picker-days-header.js +1 -1
- package/dist/components/date-picker-days.js +1 -1
- package/dist/components/date-picker-header.js +5 -5
- package/dist/components/date-picker-months.js +1 -1
- package/dist/components/date-picker-years.js +1 -1
- package/dist/components/date-range-picker-days.js +1 -1
- package/dist/components/input-group.js +1 -1
- package/dist/components/input-label.js +2 -2
- package/dist/components/input-list-option.js +1 -1
- package/dist/components/input-list.js +2 -2
- package/dist/components/input.js +4 -4
- package/dist/components/multiselect-option.js +2 -2
- package/dist/components/paragraph.js +2 -2
- package/dist/components/rounded-icon.js +4 -4
- package/dist/components/separator.js +1 -1
- package/dist/components/spinner.js +1 -1
- package/dist/components/table-cell.js +2 -2
- package/dist/components/table-header.js +1 -1
- package/dist/components/utils2.js +1 -2
- package/dist/components/wizard-icon.js +1 -1
- package/dist/custom-elements.json +13 -0
- package/dist/esm/b2b-button_2.entry.js +1 -1
- package/dist/esm/b2b-chip-component_2.entry.js +2 -2
- package/dist/esm/b2b-core-components.js +1 -1
- package/dist/esm/b2b-custom-dropdown-option-category.entry.js +17 -0
- package/dist/esm/b2b-custom-dropdown-option.entry.js +2 -2
- package/dist/esm/b2b-custom-dropdown.entry.js +25 -6
- package/dist/esm/b2b-date-picker-days-header_4.entry.js +8 -8
- package/dist/esm/b2b-date-picker-days.entry.js +1 -1
- package/dist/esm/b2b-date-range-picker-days_2.entry.js +3 -3
- package/dist/esm/b2b-date-range-picker.entry.js +5 -5
- package/dist/esm/b2b-dropdown.entry.js +2 -2
- package/dist/esm/b2b-flyout-menu-option.entry.js +1 -1
- package/dist/esm/b2b-flyout-menu.entry.js +3 -3
- package/dist/esm/b2b-grid-col.entry.js +1 -1
- package/dist/esm/b2b-grid-row.entry.js +2 -2
- package/dist/esm/b2b-grid.entry.js +1 -1
- package/dist/esm/b2b-input-group_2.entry.js +3 -3
- package/dist/esm/b2b-input-label.entry.js +2 -2
- package/dist/esm/b2b-input-list-option.entry.js +1 -1
- package/dist/esm/b2b-input.entry.js +4 -4
- package/dist/esm/b2b-label.entry.js +2 -2
- package/dist/esm/b2b-modal.entry.js +2 -2
- package/dist/esm/b2b-multiselect-dropdown.entry.js +4 -4
- package/dist/esm/b2b-pagination.entry.js +1 -1
- package/dist/esm/b2b-progress-bar.entry.js +3 -3
- package/dist/esm/b2b-radio-button.entry.js +2 -2
- package/dist/esm/b2b-radio-group.entry.js +2 -2
- package/dist/esm/b2b-required-separator.entry.js +1 -1
- package/dist/esm/b2b-rounded-icon.entry.js +4 -4
- package/dist/esm/b2b-scrollable-container.entry.js +1 -1
- package/dist/esm/b2b-search.entry.js +1 -1
- package/dist/esm/b2b-separator.entry.js +1 -1
- package/dist/esm/b2b-shimmer.entry.js +1 -1
- package/dist/esm/b2b-snackbar.entry.js +4 -4
- package/dist/esm/b2b-tab-group.entry.js +1 -1
- package/dist/esm/b2b-tab-panel.entry.js +1 -1
- package/dist/esm/b2b-tab.entry.js +2 -2
- package/dist/esm/b2b-table-cell_2.entry.js +4 -4
- package/dist/esm/b2b-table-row.entry.js +3 -3
- package/dist/esm/b2b-table-rowgroup.entry.js +3 -3
- package/dist/esm/b2b-table.entry.js +3 -3
- package/dist/esm/b2b-textarea.entry.js +2 -2
- package/dist/esm/b2b-time-picker.entry.js +6 -6
- package/dist/esm/b2b-toggle-button.entry.js +3 -3
- package/dist/esm/b2b-toggle-chip.entry.js +3 -3
- package/dist/esm/b2b-toggle-group.entry.js +2 -2
- package/dist/esm/b2b-toggle-switch.entry.js +4 -4
- package/dist/esm/b2b-tooltip.entry.js +3 -3
- package/dist/esm/b2b-wizard-icon.entry.js +1 -1
- package/dist/esm/b2b-wizard-step.entry.js +2 -2
- package/dist/esm/b2b-wizard.entry.js +1 -1
- package/dist/esm/index-ab9eb36d.js +4 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{utils-868299de.js → utils-462ede36.js} +1 -2
- package/dist/types/components/custom-dropdown/custom-dropdown-option-category.d.ts +6 -0
- package/dist/types/components/custom-dropdown/custom-dropdown.d.ts +2 -0
- package/dist/types/components/custom-dropdown/custom-dropdown.stories.d.ts +1 -0
- package/dist/types/components.d.ts +21 -0
- package/dist/web-types.json +24 -1
- package/package.json +3 -2
- package/dist/b2b-core-components/p-02bb4145.entry.js +0 -1
- package/dist/b2b-core-components/p-22967672.entry.js +0 -1
- package/dist/b2b-core-components/p-42996f1a.entry.js +0 -1
- package/dist/b2b-core-components/p-51086123.entry.js +0 -1
- package/dist/b2b-core-components/p-9626c6e2.entry.js +0 -1
- package/dist/b2b-core-components/p-a2d97f5d.entry.js +0 -1
- /package/dist/b2b-core-components/{p-19392020.js → p-373cb472.js} +0 -0
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Do not edit directly, this file was auto-generated.
|
|
3
|
+
*/
|
|
4
|
+
:root, :host {
|
|
5
|
+
--b2b-color-black-50: #333333;
|
|
6
|
+
--b2b-color-black-100: #222222;
|
|
7
|
+
--b2b-color-white-100: #FFFFFF;
|
|
8
|
+
--b2b-color-grey-25: #F6F6F6;
|
|
9
|
+
--b2b-color-grey-35: #F0F0F0;
|
|
10
|
+
--b2b-color-grey-50: #EEEEEE;
|
|
11
|
+
--b2b-color-grey-100: #E6E6E6;
|
|
12
|
+
--b2b-color-grey-150: #D5D5D5;
|
|
13
|
+
--b2b-color-grey-200: #C4C4C4;
|
|
14
|
+
--b2b-color-grey-250: #B1B1B1;
|
|
15
|
+
--b2b-color-grey-300: #9E9E9E;
|
|
16
|
+
--b2b-color-grey-400: #777777;
|
|
17
|
+
--b2b-color-red-50: #FFDDE3;
|
|
18
|
+
--b2b-color-red-100: #D4021D;
|
|
19
|
+
--b2b-color-red-150: #E6344B;
|
|
20
|
+
--b2b-color-red-200: #BB0004;
|
|
21
|
+
--b2b-color-red-250: #850012;
|
|
22
|
+
--b2b-color-blue-10: #F2F7FF;
|
|
23
|
+
--b2b-color-blue-25: #DBE7FA;
|
|
24
|
+
--b2b-color-blue-50: #87B1F0;
|
|
25
|
+
--b2b-color-blue-100: #0F63E1;
|
|
26
|
+
--b2b-color-blue-200: #093E90;
|
|
27
|
+
--b2b-color-primary: #D4021D;
|
|
28
|
+
--b2b-color-error-100: #E6344B;
|
|
29
|
+
--b2b-color-warning-50: #FFD998;
|
|
30
|
+
--b2b-color-warning-100: #FFB432;
|
|
31
|
+
--b2b-color-success-50: #D6E0CC;
|
|
32
|
+
--b2b-color-success-100: #326400;
|
|
33
|
+
--b2b-color-info-50: #CCD6E0;
|
|
34
|
+
--b2b-color-info-100: #003264;
|
|
35
|
+
--b2b-color-hover-default: #DBE7FA;
|
|
36
|
+
--b2b-color-hover-black: #3B3B3B;
|
|
37
|
+
--b2b-color-background-overlay-transparent-80: #22222280;
|
|
38
|
+
--b2b-color-background-overlay-transparent-40: #22222240;
|
|
39
|
+
--b2b-color-table-selected-default: #CCE9FF;
|
|
40
|
+
--b2b-color-table-expand-hover: #DBE7FA;
|
|
41
|
+
--b2b-font-family-default: OttoSans, Arial, Helvetica, sans-serif;
|
|
42
|
+
--b2b-font-weight-thin: 100;
|
|
43
|
+
--b2b-font-weight-normal: 500;
|
|
44
|
+
--b2b-font-weight-bold: 700;
|
|
45
|
+
--b2b-size-1: 0.0625rem; /** 1px */
|
|
46
|
+
--b2b-size-5: 0.125rem; /** 2px */
|
|
47
|
+
--b2b-size-7: 0.1875rem; /** 3px */
|
|
48
|
+
--b2b-size-10: 0.25rem; /** 4px */
|
|
49
|
+
--b2b-size-13: 0.3125rem; /** 5px */
|
|
50
|
+
--b2b-size-15: 0.375rem; /** 6px */
|
|
51
|
+
--b2b-size-20: 0.5rem; /** 8px */
|
|
52
|
+
--b2b-size-25: 0.625rem; /** 10px */
|
|
53
|
+
--b2b-size-30: 0.75rem; /** 12px */
|
|
54
|
+
--b2b-size-35: 0.875rem; /** 14px */
|
|
55
|
+
--b2b-size-40: 1rem; /** 16px */
|
|
56
|
+
--b2b-size-45: 1.125rem; /** 18px */
|
|
57
|
+
--b2b-size-50: 1.25rem; /** 20px */
|
|
58
|
+
--b2b-size-53: 1.3125rem; /** 21px */
|
|
59
|
+
--b2b-size-55: 1.375rem; /** 22px */
|
|
60
|
+
--b2b-size-60: 1.5rem; /** 24px */
|
|
61
|
+
--b2b-size-70: 1.75rem; /** 28px */
|
|
62
|
+
--b2b-size-80: 2rem; /** 32px */
|
|
63
|
+
--b2b-size-90: 2.25rem; /** 36px */
|
|
64
|
+
--b2b-size-100: 2.5rem; /** 40px */
|
|
65
|
+
--b2b-size-120: 3rem; /** 48px */
|
|
66
|
+
--b2b-size-140: 3.5rem; /** 56px */
|
|
67
|
+
--b2b-size-150: 3.75rem; /** 60px */
|
|
68
|
+
--b2b-size-160: 4rem; /** 64px */
|
|
69
|
+
--b2b-size-200: 5rem; /** 80px */
|
|
70
|
+
--b2b-color-error-50: var(--b2b-color-red-50);
|
|
71
|
+
--b2b-color-background-page: var(--b2b-color-grey-35);
|
|
72
|
+
--b2b-color-background-box: var(--b2b-color-white-100);
|
|
73
|
+
--b2b-color-background-card: var(--b2b-color-white-100);
|
|
74
|
+
--b2b-color-background-overlay: var(--b2b-color-black-100);
|
|
75
|
+
--b2b-color-border-100: var(--b2b-color-grey-200);
|
|
76
|
+
--b2b-color-copy-default: var(--b2b-color-black-100);
|
|
77
|
+
--b2b-color-copy-secondary: var(--b2b-color-grey-400);
|
|
78
|
+
--b2b-color-copy-inverted: var(--b2b-color-white-100);
|
|
79
|
+
--b2b-color-copy-overlay: var(--b2b-color-white-100);
|
|
80
|
+
--b2b-color-headline-title: var(--b2b-color-red-100);
|
|
81
|
+
--b2b-color-headline-default: var(--b2b-color-black-100);
|
|
82
|
+
--b2b-color-headline-inverted: var(--b2b-color-white-100);
|
|
83
|
+
--b2b-color-icon-default: var(--b2b-color-black-100);
|
|
84
|
+
--b2b-color-icon-secondary: var(--b2b-color-grey-400);
|
|
85
|
+
--b2b-color-icon-inverted: var(--b2b-color-white-100);
|
|
86
|
+
--b2b-color-table-expand-default: var(--b2b-color-grey-25);
|
|
87
|
+
--b2b-size-icon-50: var(--b2b-size-40);
|
|
88
|
+
--b2b-size-icon-100: var(--b2b-size-60);
|
|
89
|
+
--b2b-size-icon-200: var(--b2b-size-80);
|
|
90
|
+
--b2b-size-icon-400: var(--b2b-size-120);
|
|
91
|
+
--b2b-size-space-25: var(--b2b-size-10);
|
|
92
|
+
--b2b-size-space-50: var(--b2b-size-20);
|
|
93
|
+
--b2b-size-space-75: var(--b2b-size-30);
|
|
94
|
+
--b2b-size-space-100: var(--b2b-size-40);
|
|
95
|
+
--b2b-size-space-150: var(--b2b-size-60);
|
|
96
|
+
--b2b-size-space-175: var(--b2b-size-80);
|
|
97
|
+
--b2b-size-space-200: var(--b2b-size-100);
|
|
98
|
+
--b2b-size-space-250: var(--b2b-size-160);
|
|
99
|
+
--b2b-size-space-300: var(--b2b-size-200);
|
|
100
|
+
--b2b-size-padding-50: var(--b2b-size-20);
|
|
101
|
+
--b2b-size-padding-100: var(--b2b-size-40);
|
|
102
|
+
--b2b-size-padding-150: var(--b2b-size-60);
|
|
103
|
+
--b2b-size-padding-175: var(--b2b-size-80);
|
|
104
|
+
--b2b-size-border-width-50: var(--b2b-size-1);
|
|
105
|
+
--b2b-size-border-width-100: var(--b2b-size-5);
|
|
106
|
+
--b2b-size-border-width-150: var(--b2b-size-10);
|
|
107
|
+
--b2b-size-border-radius-100: var(--b2b-size-7);
|
|
108
|
+
--b2b-size-border-no-radius-left: 0 var(--b2b-size-7) var(--b2b-size-7) 0;
|
|
109
|
+
--b2b-size-border-no-radius-right: var(--b2b-size-7) 0 0 var(--b2b-size-7);
|
|
110
|
+
--b2b-size-border-no-radius-top: 0 0 var(--b2b-size-7) var(--b2b-size-7);
|
|
111
|
+
--b2b-size-border-no-radius-bottom: var(--b2b-size-7) var(--b2b-size-7) 0 0;
|
|
112
|
+
--b2b-size-copy-50: var(--b2b-size-30);
|
|
113
|
+
--b2b-size-copy-100: var(--b2b-size-35);
|
|
114
|
+
--b2b-size-copy-125: var(--b2b-size-40);
|
|
115
|
+
--b2b-size-copy-200: var(--b2b-size-45);
|
|
116
|
+
--b2b-size-copy-300: var(--b2b-size-60);
|
|
117
|
+
--b2b-size-copy-line-height-50: var(--b2b-size-40);
|
|
118
|
+
--b2b-size-copy-line-height-75: var(--b2b-size-45); /** Will use 18px until design facelift */
|
|
119
|
+
--b2b-size-copy-line-height-100: var(--b2b-size-53); /** Will use 21px until design facelift */
|
|
120
|
+
--b2b-size-copy-line-height-125: var(--b2b-size-60);
|
|
121
|
+
--b2b-size-copy-line-height-200: var(--b2b-size-60);
|
|
122
|
+
--b2b-size-copy-line-height-300: var(--b2b-size-90);
|
|
123
|
+
--b2b-size-headline-100: var(--b2b-size-40);
|
|
124
|
+
--b2b-size-headline-200: var(--b2b-size-45);
|
|
125
|
+
--b2b-size-headline-400: var(--b2b-size-60);
|
|
126
|
+
--b2b-size-headline-line-height-100: var(--b2b-size-60);
|
|
127
|
+
--b2b-size-headline-line-height-200: var(--b2b-size-60);
|
|
128
|
+
--b2b-size-headline-line-height-400: var(--b2b-size-60);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Do not edit directly, this file was auto-generated.
|
|
132
|
+
*/
|
|
133
|
+
:root [data-theme="dark"] {
|
|
134
|
+
--b2b-color-black-50: #333333;
|
|
135
|
+
--b2b-color-black-100: #222222;
|
|
136
|
+
--b2b-color-white-100: #FFFFFF;
|
|
137
|
+
--b2b-color-grey-25: #F6F6F6;
|
|
138
|
+
--b2b-color-grey-35: #F0F0F0;
|
|
139
|
+
--b2b-color-grey-50: #EEEEEE;
|
|
140
|
+
--b2b-color-grey-100: #E6E6E6;
|
|
141
|
+
--b2b-color-grey-150: #D5D5D5;
|
|
142
|
+
--b2b-color-grey-200: #C4C4C4;
|
|
143
|
+
--b2b-color-grey-250: #B1B1B1;
|
|
144
|
+
--b2b-color-grey-300: #9E9E9E;
|
|
145
|
+
--b2b-color-grey-400: #777777;
|
|
146
|
+
--b2b-color-red-50: #FFDDE3;
|
|
147
|
+
--b2b-color-red-100: #D4021D;
|
|
148
|
+
--b2b-color-red-150: #E6344B;
|
|
149
|
+
--b2b-color-red-200: #BB0004;
|
|
150
|
+
--b2b-color-red-250: #850012;
|
|
151
|
+
--b2b-color-blue-10: #F2F7FF;
|
|
152
|
+
--b2b-color-blue-25: #DBE7FA;
|
|
153
|
+
--b2b-color-blue-50: #87B1F0;
|
|
154
|
+
--b2b-color-blue-100: #0F63E1;
|
|
155
|
+
--b2b-color-blue-200: #093E90;
|
|
156
|
+
--b2b-color-primary: #D4021D;
|
|
157
|
+
--b2b-color-error-100: #E6344B;
|
|
158
|
+
--b2b-color-warning-50: #FFD998;
|
|
159
|
+
--b2b-color-warning-100: #FFB432;
|
|
160
|
+
--b2b-color-success-50: #D6E0CC;
|
|
161
|
+
--b2b-color-success-100: #326400;
|
|
162
|
+
--b2b-color-info-50: #CCD6E0;
|
|
163
|
+
--b2b-color-info-100: #003264;
|
|
164
|
+
--b2b-color-hover-default: #DBE7FA;
|
|
165
|
+
--b2b-color-hover-black: #3B3B3B;
|
|
166
|
+
--b2b-font-family-default: OttoSans, Arial, Helvetica, sans-serif;
|
|
167
|
+
--b2b-font-weight-thin: 100;
|
|
168
|
+
--b2b-font-weight-normal: 500;
|
|
169
|
+
--b2b-font-weight-bold: 700;
|
|
170
|
+
--b2b-size-1: 0.0625rem; /** 1px */
|
|
171
|
+
--b2b-size-5: 0.125rem; /** 2px */
|
|
172
|
+
--b2b-size-7: 0.1875rem; /** 3px */
|
|
173
|
+
--b2b-size-10: 0.25rem; /** 4px */
|
|
174
|
+
--b2b-size-13: 0.3125rem; /** 5px */
|
|
175
|
+
--b2b-size-15: 0.375rem; /** 6px */
|
|
176
|
+
--b2b-size-20: 0.5rem; /** 8px */
|
|
177
|
+
--b2b-size-25: 0.625rem; /** 10px */
|
|
178
|
+
--b2b-size-30: 0.75rem; /** 12px */
|
|
179
|
+
--b2b-size-35: 0.875rem; /** 14px */
|
|
180
|
+
--b2b-size-40: 1rem; /** 16px */
|
|
181
|
+
--b2b-size-45: 1.125rem; /** 18px */
|
|
182
|
+
--b2b-size-50: 1.25rem; /** 20px */
|
|
183
|
+
--b2b-size-53: 1.3125rem; /** 21px */
|
|
184
|
+
--b2b-size-55: 1.375rem; /** 22px */
|
|
185
|
+
--b2b-size-60: 1.5rem; /** 24px */
|
|
186
|
+
--b2b-size-70: 1.75rem; /** 28px */
|
|
187
|
+
--b2b-size-80: 2rem; /** 32px */
|
|
188
|
+
--b2b-size-90: 2.25rem; /** 36px */
|
|
189
|
+
--b2b-size-100: 2.5rem; /** 40px */
|
|
190
|
+
--b2b-size-120: 3rem; /** 48px */
|
|
191
|
+
--b2b-size-140: 3.5rem; /** 56px */
|
|
192
|
+
--b2b-size-150: 3.75rem; /** 60px */
|
|
193
|
+
--b2b-size-160: 4rem; /** 64px */
|
|
194
|
+
--b2b-size-200: 5rem; /** 80px */
|
|
195
|
+
--b2b-color-error-50: var(--b2b-color-red-50);
|
|
196
|
+
--b2b-color-background-box: var(--b2b-color-black-50);
|
|
197
|
+
--b2b-color-background-card: var(--b2b-color-black-50);
|
|
198
|
+
--b2b-color-background-page: var(--b2b-color-grey-100);
|
|
199
|
+
--b2b-color-border-100: var(--b2b-color-white-100);
|
|
200
|
+
--b2b-color-copy-default: var(--b2b-color-white-100);
|
|
201
|
+
--b2b-color-copy-secondary: var(--b2b-color-grey-100);
|
|
202
|
+
--b2b-color-copy-inverted: var(--b2b-color-black-100);
|
|
203
|
+
--b2b-color-headline-title: var(--b2b-color-red-50);
|
|
204
|
+
--b2b-color-headline-default: var(--b2b-color-white-100);
|
|
205
|
+
--b2b-color-headline-inverted: var(--b2b-color-black-100);
|
|
206
|
+
--b2b-color-icon-default: var(--b2b-color-white-100);
|
|
207
|
+
--b2b-color-icon-secondary: var(--b2b-color-grey-400);
|
|
208
|
+
--b2b-color-icon-inverted: var(--b2b-color-black-100);
|
|
209
|
+
}
|
|
210
|
+
@font-face {
|
|
211
|
+
font-family: OttoSans;
|
|
212
|
+
src: url("https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans.ttf");
|
|
213
|
+
font-weight: normal;
|
|
214
|
+
font-style: normal;
|
|
215
|
+
}
|
|
216
|
+
@font-face {
|
|
217
|
+
font-family: OttoSans;
|
|
218
|
+
src: url("https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.woff") format("woff"), url("https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-bold.ttf") format("truetype");
|
|
219
|
+
font-weight: bold;
|
|
220
|
+
font-style: normal;
|
|
221
|
+
}
|
|
222
|
+
@font-face {
|
|
223
|
+
font-family: OttoSans;
|
|
224
|
+
src: url("https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.woff") format("woff"), url("https://pattern-library.portal.otto.market/static/assets/fonts/otto-sans-thin.ttf") format("truetype");
|
|
225
|
+
font-weight: 100;
|
|
226
|
+
font-style: normal;
|
|
227
|
+
}
|
|
228
|
+
@font-face {
|
|
229
|
+
font-family: ObcIcons;
|
|
230
|
+
src: url("https://pattern-library.portal.otto.market/static/assets/fonts/obc-icons.woff");
|
|
231
|
+
}
|
|
232
|
+
:host {
|
|
233
|
+
display: block;
|
|
234
|
+
width: 100%;
|
|
235
|
+
max-width: 100%;
|
|
236
|
+
box-sizing: border-box;
|
|
237
|
+
overflow: hidden;
|
|
238
|
+
border-bottom: 1px solid var(--b2b-color-grey-200);
|
|
239
|
+
}
|
|
240
|
+
.b2b-custom-dropdown__option-category-label {
|
|
241
|
+
display: block;
|
|
242
|
+
min-height: 22px;
|
|
243
|
+
width: 100%;
|
|
244
|
+
max-width: 100%;
|
|
245
|
+
overflow: hidden;
|
|
246
|
+
padding: 4px 16px;
|
|
247
|
+
box-sizing: border-box;
|
|
248
|
+
font-family: var(--b2b-font-family-default), sans-serif;
|
|
249
|
+
font-size: var(--b2b-size-copy-50);
|
|
250
|
+
font-weight: 400;
|
|
251
|
+
line-height: 18px;
|
|
252
|
+
letter-spacing: 0;
|
|
253
|
+
color: var(--b2b-color-grey-400);
|
|
254
|
+
background-color: var(--b2b-color-white-100);
|
|
255
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
|
+
export class CustomDropdownWithOptionHeadingComponent {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.label = '';
|
|
5
|
+
}
|
|
6
|
+
render() {
|
|
7
|
+
return (h(Host, { key: '111d82b1ea150f72a5f4c49783693a21714e37fb', class: "b2b-custom-dropdown__option-category" }, this.label && (h("div", { class: "b2b-custom-dropdown__option-category-label" }, this.label)), h("slot", { key: '0d08b0fabb98ac5e3c042125cf0e8888a5eb1c91' })));
|
|
8
|
+
}
|
|
9
|
+
static get is() { return "b2b-custom-dropdown-option-category"; }
|
|
10
|
+
static get encapsulation() { return "shadow"; }
|
|
11
|
+
static get originalStyleUrls() {
|
|
12
|
+
return {
|
|
13
|
+
"$": ["custom-dropdown-option-category.scss"]
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
static get styleUrls() {
|
|
17
|
+
return {
|
|
18
|
+
"$": ["custom-dropdown-option-category.css"]
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
static get properties() {
|
|
22
|
+
return {
|
|
23
|
+
"label": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"mutable": false,
|
|
26
|
+
"complexType": {
|
|
27
|
+
"original": "string",
|
|
28
|
+
"resolved": "string",
|
|
29
|
+
"references": {}
|
|
30
|
+
},
|
|
31
|
+
"required": false,
|
|
32
|
+
"optional": false,
|
|
33
|
+
"docs": {
|
|
34
|
+
"tags": [],
|
|
35
|
+
"text": "The label/heading text for the option category."
|
|
36
|
+
},
|
|
37
|
+
"attribute": "label",
|
|
38
|
+
"reflect": false,
|
|
39
|
+
"defaultValue": "''"
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -29,13 +29,13 @@ export class CustomDropdownOptionComponent {
|
|
|
29
29
|
return `var(--${color})`;
|
|
30
30
|
}
|
|
31
31
|
render() {
|
|
32
|
-
return (h(Host, { key: '
|
|
32
|
+
return (h(Host, { key: 'a359c42ad0ab610198027a1cba088c64f4e3e0c2', class: {
|
|
33
33
|
'b2b-custom-dropdown__option': true,
|
|
34
34
|
'b2b-custom-dropdown__option-hover': this.isHovered && !this.selected,
|
|
35
35
|
'b2b-custom-dropdown__option--disabled': this.disabled,
|
|
36
36
|
'b2b-custom-dropdown__option--separator': this.separator,
|
|
37
37
|
'b2b-custom-dropdown__option--selected': this.selected,
|
|
38
|
-
}, onClick: this.handleClick, disabled: this.disabled, "aria-disabled": this.disabled, role: "option", "aria-selected": this.selected.toString() }, h("div", { key: '
|
|
38
|
+
}, onClick: this.handleClick, disabled: this.disabled, "aria-disabled": this.disabled, role: "option", "aria-selected": this.selected.toString() }, h("div", { key: '11b25a959672c9bad2c0b222f5c458e9fda2fb18', class: "b2b-option-container" }, h("div", { key: '1eee7a415084b4595ecc674785fbffdc341d81b2', class: "b2b-custom-dropdown__text-content" }, this.option), h("div", { key: 'ccc571d8dad1719aa3c33a8e5b8c6141fecac1ac', class: "b2b-custom-dropdown__icon-container" }, this.isHovered && !this.selected && this.hoverIcon ? (h("b2b-icon-100", { icon: this.hoverIcon, style: {
|
|
39
39
|
color: this.formatColorVariable(this.hoverIconColor),
|
|
40
40
|
} })) : this.selected && this.selectedIcon ? (h("b2b-icon-100", { icon: this.selectedIcon, style: {
|
|
41
41
|
color: this.formatColorVariable(this.selectedIconColor),
|
|
@@ -297,6 +297,9 @@
|
|
|
297
297
|
::slotted(b2b-custom-dropdown-option.b2b-custom-dropdown__option--hidden) {
|
|
298
298
|
display: none;
|
|
299
299
|
}
|
|
300
|
+
::slotted(b2b-custom-dropdown-option-category.b2b-custom-dropdown__option-category--hidden) {
|
|
301
|
+
display: none;
|
|
302
|
+
}
|
|
300
303
|
.b2b-custom-dropdown__empty {
|
|
301
304
|
padding: var(--b2b-size-30);
|
|
302
305
|
color: var(--b2b-color-grey-400);
|
|
@@ -132,4 +132,93 @@ describe('b2b-custom-dropdown - Alignment Tests', () => {
|
|
|
132
132
|
const dropdownContainer = await page.find('b2b-custom-dropdown >>> .b2b-custom-dropdown');
|
|
133
133
|
expect(dropdownContainer).toHaveClass('b2b-custom-dropdown--align-right');
|
|
134
134
|
});
|
|
135
|
+
describe('b2b-custom-dropdown-option-category', () => {
|
|
136
|
+
it('should render category label when provided', async () => {
|
|
137
|
+
const page = await newE2EPage();
|
|
138
|
+
await page.setContent(`
|
|
139
|
+
<b2b-custom-dropdown placeholder="Select an option">
|
|
140
|
+
<b2b-icon-100 icon="b2b_icon-ellipsis" slot='trigger' clickable focusable></b2b-icon-100>
|
|
141
|
+
<b2b-custom-dropdown-option-category label="Category 1">
|
|
142
|
+
<b2b-custom-dropdown-option option='option1'>
|
|
143
|
+
</b2b-custom-dropdown-option>
|
|
144
|
+
</b2b-custom-dropdown-option-category>
|
|
145
|
+
</b2b-custom-dropdown>
|
|
146
|
+
`);
|
|
147
|
+
const trigger = await page.find('b2b-custom-dropdown [slot="trigger"]');
|
|
148
|
+
await trigger.click();
|
|
149
|
+
await page.waitForChanges();
|
|
150
|
+
const categoryLabel = await page.find('b2b-custom-dropdown-option-category >>> .b2b-custom-dropdown__option-category-label');
|
|
151
|
+
expect(categoryLabel).not.toBeNull();
|
|
152
|
+
expect(categoryLabel.textContent).toEqual('Category 1');
|
|
153
|
+
});
|
|
154
|
+
it('should render category without label', async () => {
|
|
155
|
+
const page = await newE2EPage();
|
|
156
|
+
await page.setContent(`
|
|
157
|
+
<b2b-custom-dropdown placeholder="Select an option">
|
|
158
|
+
<b2b-icon-100 icon="b2b_icon-ellipsis" slot='trigger' clickable focusable></b2b-icon-100>
|
|
159
|
+
<b2b-custom-dropdown-option-category>
|
|
160
|
+
<b2b-custom-dropdown-option option='option1'>
|
|
161
|
+
</b2b-custom-dropdown-option>
|
|
162
|
+
</b2b-custom-dropdown-option-category>
|
|
163
|
+
</b2b-custom-dropdown>
|
|
164
|
+
`);
|
|
165
|
+
const trigger = await page.find('b2b-custom-dropdown [slot="trigger"]');
|
|
166
|
+
await trigger.click();
|
|
167
|
+
await page.waitForChanges();
|
|
168
|
+
const category = await page.find('b2b-custom-dropdown-option-category');
|
|
169
|
+
expect(category).not.toBeNull();
|
|
170
|
+
const categoryLabel = await page.find('b2b-custom-dropdown-option-category >>> .b2b-custom-dropdown__option-category-label');
|
|
171
|
+
expect(categoryLabel).toBeNull();
|
|
172
|
+
});
|
|
173
|
+
it('should contain multiple options within category', async () => {
|
|
174
|
+
const page = await newE2EPage();
|
|
175
|
+
await page.setContent(`
|
|
176
|
+
<b2b-custom-dropdown placeholder="Select an option">
|
|
177
|
+
<b2b-icon-100 icon="b2b_icon-ellipsis" slot='trigger' clickable focusable></b2b-icon-100>
|
|
178
|
+
<b2b-custom-dropdown-option-category label="Category 1">
|
|
179
|
+
<b2b-custom-dropdown-option option='option1'>
|
|
180
|
+
</b2b-custom-dropdown-option>
|
|
181
|
+
<b2b-custom-dropdown-option option='option2'>
|
|
182
|
+
</b2b-custom-dropdown-option>
|
|
183
|
+
<b2b-custom-dropdown-option option='option3'>
|
|
184
|
+
</b2b-custom-dropdown-option>
|
|
185
|
+
</b2b-custom-dropdown-option-category>
|
|
186
|
+
</b2b-custom-dropdown>
|
|
187
|
+
`);
|
|
188
|
+
const trigger = await page.find('b2b-custom-dropdown [slot="trigger"]');
|
|
189
|
+
await trigger.click();
|
|
190
|
+
await page.waitForChanges();
|
|
191
|
+
const optionsInCategory = await page.findAll('b2b-custom-dropdown-option-category b2b-custom-dropdown-option');
|
|
192
|
+
expect(optionsInCategory.length).toEqual(3);
|
|
193
|
+
});
|
|
194
|
+
it('should support multiple categories', async () => {
|
|
195
|
+
const page = await newE2EPage();
|
|
196
|
+
await page.setContent(`
|
|
197
|
+
<b2b-custom-dropdown placeholder="Select an option">
|
|
198
|
+
<b2b-icon-100 icon="b2b_icon-ellipsis" slot='trigger' clickable focusable></b2b-icon-100>
|
|
199
|
+
<b2b-custom-dropdown-option-category label="Category 1">
|
|
200
|
+
<b2b-custom-dropdown-option option='option1'>
|
|
201
|
+
</b2b-custom-dropdown-option>
|
|
202
|
+
<b2b-custom-dropdown-option option='option2'>
|
|
203
|
+
</b2b-custom-dropdown-option>
|
|
204
|
+
</b2b-custom-dropdown-option-category>
|
|
205
|
+
<b2b-custom-dropdown-option-category label="Category 2">
|
|
206
|
+
<b2b-custom-dropdown-option option='option3'>
|
|
207
|
+
</b2b-custom-dropdown-option>
|
|
208
|
+
<b2b-custom-dropdown-option option='option4'>
|
|
209
|
+
</b2b-custom-dropdown-option>
|
|
210
|
+
</b2b-custom-dropdown-option-category>
|
|
211
|
+
</b2b-custom-dropdown>
|
|
212
|
+
`);
|
|
213
|
+
const trigger = await page.find('b2b-custom-dropdown [slot="trigger"]');
|
|
214
|
+
await trigger.click();
|
|
215
|
+
await page.waitForChanges();
|
|
216
|
+
const categories = await page.findAll('b2b-custom-dropdown-option-category');
|
|
217
|
+
expect(categories.length).toEqual(2);
|
|
218
|
+
const categoryLabels = await page.findAll('b2b-custom-dropdown-option-category >>> .b2b-custom-dropdown__option-category-label');
|
|
219
|
+
expect(categoryLabels.length).toEqual(2);
|
|
220
|
+
expect(categoryLabels[0].textContent).toEqual('Category 1');
|
|
221
|
+
expect(categoryLabels[1].textContent).toEqual('Category 2');
|
|
222
|
+
});
|
|
223
|
+
});
|
|
135
224
|
});
|
|
@@ -2,6 +2,7 @@ import { h, Host, } from "@stencil/core";
|
|
|
2
2
|
import { isClickOutside } from "../../utils/utils";
|
|
3
3
|
export class B2bCustomDropdownComponent {
|
|
4
4
|
constructor() {
|
|
5
|
+
this.allOptionCategories = [];
|
|
5
6
|
this.toggleMenu = () => {
|
|
6
7
|
this.opened = !this.opened;
|
|
7
8
|
};
|
|
@@ -23,6 +24,11 @@ export class B2bCustomDropdownComponent {
|
|
|
23
24
|
if (match)
|
|
24
25
|
visibleCount++;
|
|
25
26
|
});
|
|
27
|
+
// Update option category visibility based on its visible options
|
|
28
|
+
this.allOptionCategories.forEach(optionCategory => {
|
|
29
|
+
const visibleOptionsInCategory = Array.from(optionCategory.querySelectorAll('b2b-custom-dropdown-option')).filter(opt => !opt.classList.contains('b2b-custom-dropdown__option--hidden')).length;
|
|
30
|
+
optionCategory.classList.toggle('b2b-custom-dropdown__option-category--hidden', visibleOptionsInCategory === 0);
|
|
31
|
+
});
|
|
26
32
|
this.hasVisibleOptions = visibleCount > 0;
|
|
27
33
|
};
|
|
28
34
|
this.placeholder = undefined;
|
|
@@ -53,6 +59,12 @@ export class B2bCustomDropdownComponent {
|
|
|
53
59
|
}
|
|
54
60
|
connectedCallback() {
|
|
55
61
|
this.initializeSlottedOptions();
|
|
62
|
+
const trigger = this.hostElement.querySelector('[slot="trigger"]');
|
|
63
|
+
if (trigger) {
|
|
64
|
+
this.triggerEl = trigger;
|
|
65
|
+
this.triggerEl.addEventListener('click', this.toggleMenu, true);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
56
68
|
const children = Array.from(this.hostElement.children).filter(x => !x.hasAttribute('option'));
|
|
57
69
|
if (children.length === 0) {
|
|
58
70
|
return;
|
|
@@ -60,8 +72,15 @@ export class B2bCustomDropdownComponent {
|
|
|
60
72
|
this.triggerEl = children[0];
|
|
61
73
|
this.triggerEl.addEventListener('click', this.toggleMenu, true);
|
|
62
74
|
}
|
|
75
|
+
disconnectedCallback() {
|
|
76
|
+
var _a;
|
|
77
|
+
(_a = this.triggerEl) === null || _a === void 0 ? void 0 : _a.removeEventListener('click', this.toggleMenu, true);
|
|
78
|
+
}
|
|
63
79
|
initializeSlottedOptions() {
|
|
64
|
-
|
|
80
|
+
// Find all option categories
|
|
81
|
+
this.allOptionCategories = Array.from(this.hostElement.querySelectorAll('b2b-custom-dropdown-option-category'));
|
|
82
|
+
// Find all options, including those inside option categories
|
|
83
|
+
this.allOptions = Array.from(this.hostElement.querySelectorAll('b2b-custom-dropdown-option'));
|
|
65
84
|
}
|
|
66
85
|
handleClickOutside(event) {
|
|
67
86
|
if (isClickOutside(event, this.hostElement)) {
|
|
@@ -69,7 +88,7 @@ export class B2bCustomDropdownComponent {
|
|
|
69
88
|
}
|
|
70
89
|
}
|
|
71
90
|
render() {
|
|
72
|
-
return (h(Host, { key: '
|
|
91
|
+
return (h(Host, { key: '3ebf0a1fd00e73bd92e9586ff826f2bd6411eb77' }, h("div", { key: 'bfa6d9fb45247bd080a750a16d208a471598106b', class: "b2b-custom-dropdown__trigger" }, h("slot", { key: '178e859cc10114b68740d189d5ad8407cad20bd4', name: "trigger" })), h("div", { key: 'f77c498d65b62b5710d4758f51c883231903c0b7', class: {
|
|
73
92
|
'b2b-custom-dropdown': true,
|
|
74
93
|
'b2b-custom-dropdown--on': this.opened && !this.disabled,
|
|
75
94
|
'b2b-custom-dropdown--drop-shadow': this.dropshadow,
|
|
@@ -77,12 +96,12 @@ export class B2bCustomDropdownComponent {
|
|
|
77
96
|
'b2b-custom-dropdown--align-left': this.alignment === 'left',
|
|
78
97
|
'b2b-custom-dropdown--align-center': this.alignment === 'center',
|
|
79
98
|
'b2b-custom-dropdown--align-right': this.alignment === 'right',
|
|
80
|
-
} }, h("b2b-background-box", { key: '
|
|
99
|
+
} }, h("b2b-background-box", { key: 'e7d60dff330be21c9e7032e48ce6d50f75b9c81d', noPadding: true, borderTop: "none", borderBottom: "none", borderRight: "none", borderLeft: "none" }, h("div", { key: 'bbf4c8895c70b8dbcb8e226506b2c88b899e5389', class: {
|
|
81
100
|
'b2b-custom-dropdown-search': true,
|
|
82
101
|
'b2b-custom-dropdown-search--enabled': this.allOptions.length > 6 && !this.disabled,
|
|
83
|
-
} }, h("b2b-input", { key: '
|
|
102
|
+
} }, h("b2b-input", { key: 'ec6a81db0a47d0d187f6c63700120c6360c7de6d', placeholder: this.placeholder, "onB2b-input": this.handleInput }, h("b2b-icon-100", { key: '93d95a333dd155fc054c1d71b7f8964ccb0051db', icon: "b2b_icon-search", slot: "start" })))), h("div", { key: 'da211321b0347074984ff31f2138270a7d2117b5', class: this.allOptions.length > 6
|
|
84
103
|
? 'b2b-custom-dropdown__options-scroll-container'
|
|
85
|
-
: 'b2b-custom-dropdown__options-container' }, h("slot", { key: '
|
|
104
|
+
: 'b2b-custom-dropdown__options-container' }, h("slot", { key: '512507ff8a3b2866d9b870bbd91f6ac5c764e397', name: "option" }), h("slot", { key: '1e5bff1d4559492f4ca082ad61af034f6476439c' })), this.value && !this.hasVisibleOptions && (h("div", { class: "b2b-custom-dropdown__empty", role: "status" }, h("slot", { name: "empty" }, this.noResultsText))))));
|
|
86
105
|
}
|
|
87
106
|
static get is() { return "b2b-custom-dropdown"; }
|
|
88
107
|
static get encapsulation() { return "shadow"; }
|
|
@@ -136,6 +136,73 @@ export const WithSeparator = {
|
|
|
136
136
|
export const WithIcon = {
|
|
137
137
|
args: Object.assign(Object.assign({}, meta.args), { opened: true, selected: true, hoverIcon: 'b2b_icon-arrow-long-right', hoverIconColor: 'b2b-color-grey-400', selectedIcon: 'b2b_icon-success', selectedIconColor: 'b2b-color-success-100' }),
|
|
138
138
|
};
|
|
139
|
+
export const WithOptionCategory = {
|
|
140
|
+
args: Object.assign(Object.assign({}, meta.args), { opened: true, selected: true, hoverIcon: 'b2b_icon-arrow-long-right', hoverIconColor: 'b2b-color-grey-400', selectedIcon: 'b2b_icon-success', selectedIconColor: 'b2b-color-success-100' }),
|
|
141
|
+
render: (_a) => {
|
|
142
|
+
var args = __rest(_a, []);
|
|
143
|
+
return html `<div style="margin-left: 16px;width: 300px">
|
|
144
|
+
<b2b-custom-dropdown
|
|
145
|
+
placeholder=${args.placeholder}
|
|
146
|
+
dropshadow=${args.dropshadow}
|
|
147
|
+
border=${args.border}
|
|
148
|
+
alignment=${args.alignment}
|
|
149
|
+
opened=${args.opened}>
|
|
150
|
+
<b2b-paragraph slot="trigger">
|
|
151
|
+
This is a custom dropdown
|
|
152
|
+
<b2b-icon-100
|
|
153
|
+
icon="b2b_icon-arrow-down"
|
|
154
|
+
focusable
|
|
155
|
+
clickable></b2b-icon-100>
|
|
156
|
+
</b2b-paragraph>
|
|
157
|
+
<b2b-custom-dropdown-option-category label="Option Category 1">
|
|
158
|
+
<b2b-custom-dropdown-option
|
|
159
|
+
option="Option 1"
|
|
160
|
+
hover-icon=${args.hoverIcon}
|
|
161
|
+
selected-icon=${args.selectedIcon}
|
|
162
|
+
hover-icon-color=${args.hoverIconColor}
|
|
163
|
+
selected-icon-color=${args.selectedIconColor}
|
|
164
|
+
selected=${args.selected}
|
|
165
|
+
disabled=${args.disabled}>
|
|
166
|
+
</b2b-custom-dropdown-option>
|
|
167
|
+
<b2b-custom-dropdown-option
|
|
168
|
+
option="Option 2"
|
|
169
|
+
hover-icon=${args.hoverIcon}
|
|
170
|
+
selected-icon=${args.selectedIcon}
|
|
171
|
+
hover-icon-color=${args.hoverIconColor}
|
|
172
|
+
selected-icon-color=${args.selectedIconColor}
|
|
173
|
+
disabled=${args.disabled}>
|
|
174
|
+
</b2b-custom-dropdown-option>
|
|
175
|
+
<b2b-custom-dropdown-option
|
|
176
|
+
option="Option 3"
|
|
177
|
+
hover-icon=${args.hoverIcon}
|
|
178
|
+
selected-icon=${args.selectedIcon}
|
|
179
|
+
hover-icon-color=${args.hoverIconColor}
|
|
180
|
+
selected-icon-color=${args.selectedIconColor}
|
|
181
|
+
disabled=${args.disabled}>
|
|
182
|
+
</b2b-custom-dropdown-option>
|
|
183
|
+
</b2b-custom-dropdown-option-category>
|
|
184
|
+
<b2b-custom-dropdown-option-category label="Option Category 2">
|
|
185
|
+
<b2b-custom-dropdown-option
|
|
186
|
+
option="Option 4"
|
|
187
|
+
hover-icon=${args.hoverIcon}
|
|
188
|
+
selected-icon=${args.selectedIcon}
|
|
189
|
+
hover-icon-color=${args.hoverIconColor}
|
|
190
|
+
selected-icon-color=${args.selectedIconColor}
|
|
191
|
+
disabled=${args.disabled}>
|
|
192
|
+
</b2b-custom-dropdown-option>
|
|
193
|
+
<b2b-custom-dropdown-option
|
|
194
|
+
option="Option 5"
|
|
195
|
+
hover-icon=${args.hoverIcon}
|
|
196
|
+
selected-icon=${args.selectedIcon}
|
|
197
|
+
hover-icon-color=${args.hoverIconColor}
|
|
198
|
+
selected-icon-color=${args.selectedIconColor}
|
|
199
|
+
disabled=${args.disabled}>
|
|
200
|
+
</b2b-custom-dropdown-option>
|
|
201
|
+
</b2b-custom-dropdown-option-category>
|
|
202
|
+
</b2b-custom-dropdown>
|
|
203
|
+
</div>`;
|
|
204
|
+
},
|
|
205
|
+
};
|
|
139
206
|
export const CustomDropdownOptionsDisabled = {
|
|
140
207
|
args: Object.assign(Object.assign({}, meta.args), { disabled: true, opened: true }),
|
|
141
208
|
};
|
|
@@ -13,7 +13,7 @@ export class B2bDatePickerDaysHeader {
|
|
|
13
13
|
this.language = 'de';
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
|
-
return (h(Host, { key: '
|
|
16
|
+
return (h(Host, { key: 'b263de3bc9e2189a320bd0f1a3c43b15e6a9e0b8' }, h("div", { key: 'ddf44663f7bbf839aa6a365590e9b641711547c8', class: "b2b-date-picker-days-header" }, this.displayWeekDays())));
|
|
17
17
|
}
|
|
18
18
|
static get is() { return "b2b-date-picker-days-header"; }
|
|
19
19
|
static get encapsulation() { return "shadow"; }
|
|
@@ -160,7 +160,7 @@ export class B2bDatePickerDays {
|
|
|
160
160
|
});
|
|
161
161
|
}
|
|
162
162
|
render() {
|
|
163
|
-
return (h(Host, { key: '
|
|
163
|
+
return (h(Host, { key: 'e1b82227a7d6f35bd707296d356f91c0724d161c' }, h("div", { key: '6dc28f794b1f81fbce7363dd33b8fa54c0cbb9d0', class: "b2b-date-picker-days" }, this.renderDatePickerDays())));
|
|
164
164
|
}
|
|
165
165
|
static get is() { return "b2b-date-picker-days"; }
|
|
166
166
|
static get encapsulation() { return "shadow"; }
|
|
@@ -8,9 +8,9 @@ export class B2bDatePickerHeader {
|
|
|
8
8
|
}
|
|
9
9
|
render() {
|
|
10
10
|
const Months = this.language === 'en' ? MonthsEnglish : MonthsGerman;
|
|
11
|
-
return (h(Host, { key: '
|
|
11
|
+
return (h(Host, { key: '7b757dbe383afbbde516f8aa8153b6192599ec66' }, h("div", { key: '93ba06b2e60a0dc8f688a7878abdb0c47898edb0', class: "b2b-date-picker-header" }, h("button", { key: '905bfce876914038ded90e28c051a87dae2e9577', class: "b2b-date-picker-nav--left", onClick: this.b2bDatePickerPreviousMonth.emit, onMouseOut: event => {
|
|
12
12
|
event.target.blur();
|
|
13
|
-
}, "aria-label": "previous month" }, h("b2b-icon-100", { key: '
|
|
13
|
+
}, "aria-label": "previous month" }, h("b2b-icon-100", { key: 'e001e6d00bcbb13b56c4dd5e34604d3099ffabef', icon: "b2b_icon-arrow-left", clickable: true })), h("b2b-headline", { key: 'fd2d92a0be0314b846e958edf9bccf3c398a247a', size: '100', align: 'center', class: "b2b-date-picker-month", "aria-label": "select month", tabindex: 0, onClick: () => {
|
|
14
14
|
this.b2bDatePickerViewChanged.emit({
|
|
15
15
|
value: "Months" /* DatePickerView.Months */,
|
|
16
16
|
});
|
|
@@ -20,7 +20,7 @@ export class B2bDatePickerHeader {
|
|
|
20
20
|
value: "Months" /* DatePickerView.Months */,
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
-
} }, Months[this.selectedMonth]), h("b2b-headline", { key: '
|
|
23
|
+
} }, Months[this.selectedMonth]), h("b2b-headline", { key: '2911aaded910b96beead35c2829468a244c49832', size: '100', align: 'center', class: "b2b-date-picker-year", "aria-label": "select year", tabindex: 0, onClick: () => {
|
|
24
24
|
this.b2bDatePickerViewChanged.emit({
|
|
25
25
|
value: "Years" /* DatePickerView.Years */,
|
|
26
26
|
});
|
|
@@ -30,9 +30,9 @@ export class B2bDatePickerHeader {
|
|
|
30
30
|
value: "Years" /* DatePickerView.Years */,
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
-
} }, this.selectedYear), h("button", { key: '
|
|
33
|
+
} }, this.selectedYear), h("button", { key: 'c36292f29993f17e1b3597086714e680d390f2b9', class: "b2b-date-picker-nav--right", onClick: this.b2bDatePickerNextMonth.emit, onMouseOut: event => {
|
|
34
34
|
event.target.blur();
|
|
35
|
-
}, "aria-label": "next month" }, h("b2b-icon-100", { key: '
|
|
35
|
+
}, "aria-label": "next month" }, h("b2b-icon-100", { key: '7b7391d2f476a1b4170368caf58e26a265f4af87', icon: "b2b_icon-arrow-right", clickable: true })))));
|
|
36
36
|
}
|
|
37
37
|
static get is() { return "b2b-date-picker-header"; }
|
|
38
38
|
static get encapsulation() { return "shadow"; }
|
|
@@ -80,7 +80,7 @@ export class B2bDatePickerMonths {
|
|
|
80
80
|
(_a = this.getCurrentMonth()) === null || _a === void 0 ? void 0 : _a.focus();
|
|
81
81
|
}
|
|
82
82
|
render() {
|
|
83
|
-
return (h(Host, { key: '
|
|
83
|
+
return (h(Host, { key: '33365006ef661b018a70e1f0712e22e0dd9c5dec' }, h("div", { key: 'a06fa2fa936f5fcb51a3d90d6f9ef7463785997a', class: "b2b-date-picker-months" }, this.renderDatePickerMonths())));
|
|
84
84
|
}
|
|
85
85
|
static get is() { return "b2b-date-picker-months"; }
|
|
86
86
|
static get encapsulation() { return "shadow"; }
|
|
@@ -97,7 +97,7 @@ export class B2bDatePickerYears {
|
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
render() {
|
|
100
|
-
return (h(Host, { key: '
|
|
100
|
+
return (h(Host, { key: '66a4e371ba765166025c8addfd5e8ca3ef6a1223' }, h("div", { key: '2ec5a10c6c605d91b3eb5b18a558ade240980154', class: "b2b-date-picker-years" }, this.renderDatePickerYears())));
|
|
101
101
|
}
|
|
102
102
|
static get is() { return "b2b-date-picker-years"; }
|
|
103
103
|
static get encapsulation() { return "shadow"; }
|