@carbon/web-components 2.0.2-rc.0 → 2.1.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +78 -2
- package/dist/16-01ebcb7f.js +50 -0
- package/dist/16-08c7b6ab.js +50 -0
- package/dist/16-1664e172.js +50 -0
- package/dist/16-1c0007f3.js +50 -0
- package/dist/16-20c5edc1.js +50 -0
- package/dist/16-220724e0.js +50 -0
- package/dist/16-228e7358.js +50 -0
- package/dist/16-291af4c1.js +50 -0
- package/dist/16-36ae18bf.js +50 -0
- package/dist/16-3b37b4ba.js +50 -0
- package/dist/16-46b03826.js +50 -0
- package/dist/16-5aefc3c2.js +50 -0
- package/dist/16-60b422c4.js +50 -0
- package/dist/16-6791071b.js +50 -0
- package/dist/16-6ceb5b82.js +50 -0
- package/dist/16-758bd5d3.js +50 -0
- package/dist/16-99afca88.js +50 -0
- package/dist/16-9e41b122.js +50 -0
- package/dist/16-9f0fa955.js +50 -0
- package/dist/16-a89c399c.js +50 -0
- package/dist/16-ae0e9a56.js +50 -0
- package/dist/16-c0c1a32f.js +50 -0
- package/dist/16-c18899be.js +50 -0
- package/dist/16-c56d8c15.js +50 -0
- package/dist/16-d814df5b.js +50 -0
- package/dist/16-d9457893.js +50 -0
- package/dist/16-d9a15472.js +50 -0
- package/dist/16-f1e0111b.js +50 -0
- package/dist/16-f62d4131.js +50 -0
- package/dist/16-f7a9dffe.js +50 -0
- package/dist/16-fbf142c7.js +50 -0
- package/dist/16-fd11e4ec.js +50 -0
- package/dist/20-1dd5ae57.js +50 -0
- package/dist/20-b7ed64f4.js +50 -0
- package/dist/20-d7cf1679.js +50 -0
- package/dist/20-e51c1f39.js +50 -0
- package/dist/accordion.min.js +103 -0
- package/dist/accordion.rtl.min.js +103 -0
- package/dist/breadcrumb.min.js +64 -0
- package/dist/breadcrumb.rtl.min.js +64 -0
- package/dist/button-3dafe360.js +114 -0
- package/dist/button-582a2f3a.js +114 -0
- package/dist/button-8d4316cb.js +114 -0
- package/dist/button-e33e1c4a.js +114 -0
- package/dist/button-set-04f29086.js +50 -0
- package/dist/button-set-49c4279d.js +50 -0
- package/dist/button-set-5ee221b2.js +50 -0
- package/dist/button-set-c9335535.js +50 -0
- package/dist/button-skeleton-00620289.js +70 -0
- package/dist/button-skeleton-b2facaf2.js +70 -0
- package/dist/button-skeleton-d68066fe.js +70 -0
- package/dist/button-skeleton-f9f83011.js +70 -0
- package/dist/button.min.js +50 -0
- package/dist/button.rtl.min.js +50 -0
- package/dist/carbon-element-4ca9803f.js +58 -0
- package/dist/checkbox-1ca3f18c.js +72 -0
- package/dist/checkbox-1e621c4d.js +72 -0
- package/dist/checkbox-440be135.js +72 -0
- package/dist/checkbox-fa74151f.js +72 -0
- package/dist/checkbox.min.js +56 -0
- package/dist/checkbox.rtl.min.js +56 -0
- package/dist/class-map-0ae732f6.js +55 -0
- package/dist/class-map-ff7e8fde.js +55 -0
- package/dist/code-snippet.min.js +115 -0
- package/dist/code-snippet.rtl.min.js +115 -0
- package/dist/collection-helpers-4e32fe16.js +58 -0
- package/dist/combo-box.min.js +72 -0
- package/dist/combo-box.rtl.min.js +72 -0
- package/dist/content-switcher-item-55b2adca.js +84 -0
- package/dist/content-switcher-item-6d9b81cf.js +84 -0
- package/dist/content-switcher-item-bee4ce7e.js +84 -0
- package/dist/content-switcher-item-f758c238.js +84 -0
- package/dist/content-switcher.min.js +50 -0
- package/dist/content-switcher.rtl.min.js +50 -0
- package/dist/copy-button-0404162f.js +63 -0
- package/dist/copy-button-1d23e1bd.js +63 -0
- package/dist/copy-button-cf261260.js +63 -0
- package/dist/copy-button-d35b2079.js +63 -0
- package/dist/copy-button.min.js +50 -0
- package/dist/copy-button.rtl.min.js +50 -0
- package/dist/custom-element-975be15f.js +55 -0
- package/dist/data-table.min.js +169 -0
- package/dist/data-table.rtl.min.js +169 -0
- package/dist/date-picker.min.js +169 -0
- package/dist/date-picker.rtl.min.js +169 -0
- package/dist/directive-e2d48b9c.js +55 -0
- package/dist/dropdown-item-2ae1dc7f.js +128 -0
- package/dist/dropdown-item-64bf0a4f.js +128 -0
- package/dist/dropdown-item-7273edb2.js +128 -0
- package/dist/dropdown-item-cdd1a116.js +128 -0
- package/dist/dropdown.min.js +57 -0
- package/dist/dropdown.rtl.min.js +57 -0
- package/dist/file-uploader.min.js +128 -0
- package/dist/file-uploader.rtl.min.js +128 -0
- package/dist/floating-menu-1795f0f3.js +58 -0
- package/dist/floating-menu-26d746d4.js +58 -0
- package/dist/floating-menu.min.js +50 -0
- package/dist/floating-menu.rtl.min.js +50 -0
- package/dist/focus-4a59e420.js +58 -0
- package/dist/focus-e79b2a40.js +58 -0
- package/dist/form-54a62766.js +50 -0
- package/dist/form-f6607c5c.js +50 -0
- package/dist/form-group.min.js +61 -0
- package/dist/form-group.rtl.min.js +61 -0
- package/dist/form.min.js +50 -0
- package/dist/form.rtl.min.js +50 -0
- package/dist/get-d229c408.js +50 -0
- package/dist/host-listener-0e75581e.js +58 -0
- package/dist/host-listener-42fdb22d.js +58 -0
- package/dist/icon-button-32eafa9f.js +71 -0
- package/dist/icon-button-334ed010.js +71 -0
- package/dist/icon-button-6974bc9a.js +71 -0
- package/dist/icon-button-8f6cac1e.js +71 -0
- package/dist/icon-button.min.js +50 -0
- package/dist/icon-button.rtl.min.js +50 -0
- package/dist/if-defined-2063a6b2.js +55 -0
- package/dist/if-defined-5b102a7a.js +55 -0
- package/dist/if-non-empty-3cac5484.js +58 -0
- package/dist/if-non-empty-f97d9ca3.js +58 -0
- package/dist/inline-loading.min.js +69 -0
- package/dist/inline-loading.rtl.min.js +69 -0
- package/dist/layer.min.js +50 -0
- package/dist/layer.rtl.min.js +50 -0
- package/dist/link-40eed54e.js +74 -0
- package/dist/link-42b684df.js +74 -0
- package/dist/link.min.js +50 -0
- package/dist/link.rtl.min.js +50 -0
- package/dist/list.min.js +65 -0
- package/dist/list.rtl.min.js +65 -0
- package/dist/loading-38056720.js +50 -0
- package/dist/loading-3aa24148.js +50 -0
- package/dist/loading-638b469c.js +50 -0
- package/dist/loading-dadfb60c.js +50 -0
- package/dist/loading-icon-5f6382df.js +82 -0
- package/dist/loading-icon-64a5114e.js +82 -0
- package/dist/loading.min.js +50 -0
- package/dist/loading.rtl.min.js +50 -0
- package/dist/modal.min.js +87 -0
- package/dist/modal.rtl.min.js +87 -0
- package/dist/multi-select.min.js +119 -0
- package/dist/multi-select.rtl.min.js +119 -0
- package/dist/notification.min.js +119 -0
- package/dist/notification.rtl.min.js +119 -0
- package/dist/number-input.min.js +130 -0
- package/dist/number-input.rtl.min.js +130 -0
- package/dist/objectSpread2-8208d45c.js +50 -0
- package/dist/objectSpread2-ea408269.js +50 -0
- package/dist/on-6c264d49.js +50 -0
- package/dist/overflow-menu.min.js +77 -0
- package/dist/overflow-menu.rtl.min.js +77 -0
- package/dist/pagination.min.js +142 -0
- package/dist/pagination.rtl.min.js +142 -0
- package/dist/popover-content-091b39e0.js +61 -0
- package/dist/popover-content-9e3bbe49.js +61 -0
- package/dist/popover-content-b376ac06.js +61 -0
- package/dist/popover-content-f183f37a.js +61 -0
- package/dist/popover.min.js +50 -0
- package/dist/popover.rtl.min.js +50 -0
- package/dist/progress-bar.min.js +79 -0
- package/dist/progress-bar.rtl.min.js +79 -0
- package/dist/progress-indicator.min.js +87 -0
- package/dist/progress-indicator.rtl.min.js +87 -0
- package/dist/query-6ca5e414.js +55 -0
- package/dist/query-assigned-elements-8e88277c.js +60 -0
- package/dist/radio-button.min.js +95 -0
- package/dist/radio-button.rtl.min.js +95 -0
- package/dist/radio-group-manager-3a681292.js +58 -0
- package/dist/radio-group-manager-f79f750e.js +58 -0
- package/dist/search-28dbefa9.js +79 -0
- package/dist/search-45d09092.js +79 -0
- package/dist/search-63dc2971.js +79 -0
- package/dist/search-f633f8c0.js +79 -0
- package/dist/search.min.js +53 -0
- package/dist/search.rtl.min.js +53 -0
- package/dist/select-item-355b65a2.js +50 -0
- package/dist/select-item-ac48969e.js +50 -0
- package/dist/select.min.js +121 -0
- package/dist/select.rtl.min.js +121 -0
- package/dist/settings-a675998f.js +80 -0
- package/dist/settings-daf72103.js +80 -0
- package/dist/shared-enums-c6fe8c39.js +58 -0
- package/dist/skeleton-placeholder.min.js +50 -0
- package/dist/skeleton-placeholder.rtl.min.js +50 -0
- package/dist/skeleton-text-3f580931.js +58 -0
- package/dist/skeleton-text-5cfb8d17.js +58 -0
- package/dist/skeleton-text-bb615714.js +58 -0
- package/dist/skeleton-text-e6700c4b.js +58 -0
- package/dist/skeleton-text.min.js +50 -0
- package/dist/skeleton-text.rtl.min.js +50 -0
- package/dist/skip-to-content.min.js +54 -0
- package/dist/skip-to-content.rtl.min.js +54 -0
- package/dist/slider.min.js +125 -0
- package/dist/slider.rtl.min.js +125 -0
- package/dist/slug.min.js +84 -0
- package/dist/slug.rtl.min.js +84 -0
- package/dist/spread-6bfe3826.js +58 -0
- package/dist/spread-eaa3f2b9.js +58 -0
- package/dist/stack.min.js +59 -0
- package/dist/stack.rtl.min.js +59 -0
- package/dist/state-63312e74.js +55 -0
- package/dist/structured-list.min.js +68 -0
- package/dist/structured-list.rtl.min.js +68 -0
- package/dist/tabs.min.js +114 -0
- package/dist/tabs.rtl.min.js +114 -0
- package/dist/tag.min.js +71 -0
- package/dist/tag.rtl.min.js +71 -0
- package/dist/text-input-08a8a922.js +119 -0
- package/dist/text-input-45ea7bf7.js +119 -0
- package/dist/text-input-4616af44.js +119 -0
- package/dist/text-input-6d08528b.js +119 -0
- package/dist/text-input.min.js +53 -0
- package/dist/text-input.rtl.min.js +53 -0
- package/dist/textarea.min.js +95 -0
- package/dist/textarea.rtl.min.js +95 -0
- package/dist/tile.min.js +120 -0
- package/dist/tile.rtl.min.js +120 -0
- package/dist/toggle-tip.min.js +50 -0
- package/dist/toggle-tip.rtl.min.js +50 -0
- package/dist/toggle.min.js +92 -0
- package/dist/toggle.rtl.min.js +92 -0
- package/dist/toggletip-0aa429db.js +90 -0
- package/dist/toggletip-0c43069a.js +90 -0
- package/dist/toggletip-6a368ecf.js +90 -0
- package/dist/toggletip-f3e84381.js +90 -0
- package/dist/tooltip-content-2470a2af.js +52 -0
- package/dist/tooltip-content-267c3eb7.js +52 -0
- package/dist/tooltip-content-3096d302.js +52 -0
- package/dist/tooltip-content-a38f2e85.js +52 -0
- package/dist/tooltip.min.js +50 -0
- package/dist/tooltip.rtl.min.js +50 -0
- package/dist/ui-shell.min.js +186 -0
- package/dist/ui-shell.rtl.min.js +186 -0
- package/dist/validity-d86ffa4f.js +58 -0
- package/es/components/accordion/accordion-item.js.map +1 -1
- package/es/components/multi-select/multi-select.js +0 -1
- package/es/components/multi-select/multi-select.js.map +1 -1
- package/es/components/radio-button/radio-button-group.d.ts +13 -3
- package/es/components/radio-button/radio-button-group.js +45 -4
- package/es/components/radio-button/radio-button-group.js.map +1 -1
- package/es/components/radio-button/radio-button.css.js +1 -1
- package/es/components/radio-button/radio-button.d.ts +12 -0
- package/es/components/radio-button/radio-button.js +102 -65
- package/es/components/radio-button/radio-button.js.map +1 -1
- package/es/components/radio-button/radio-button.rtl.css.js +1 -1
- package/es/components/slug/slug.css.js +1 -1
- package/es/components/slug/slug.js +1 -1
- package/es/components/slug/slug.js.map +1 -1
- package/es/components/slug/slug.rtl.css.js +1 -1
- package/es/components/tile/clickable-tile.d.ts +14 -0
- package/es/components/tile/clickable-tile.js +72 -2
- package/es/components/tile/clickable-tile.js.map +1 -1
- package/es/components/tile/expandable-tile.d.ts +18 -0
- package/es/components/tile/expandable-tile.js +71 -5
- package/es/components/tile/expandable-tile.js.map +1 -1
- package/es/components/tile/selectable-tile.d.ts +19 -3
- package/es/components/tile/selectable-tile.js +78 -8
- package/es/components/tile/selectable-tile.js.map +1 -1
- package/es/components/tile/tile.css.js +1 -1
- package/es/components/tile/tile.d.ts +17 -0
- package/es/components/tile/tile.js +61 -3
- package/es/components/tile/tile.js.map +1 -1
- package/es/components/tile/tile.rtl.css.js +1 -1
- package/package.json +3 -3
- package/scss/components/notification/inline-notification.scss +1 -1
- package/scss/components/radio-button/radio-button.scss +27 -1
- package/scss/components/slug/slug.scss +2 -2
- package/scss/components/tile/tile.scss +101 -0
- package/es/icons/app-switcher/16.d.ts +0 -17
- package/es/icons/app-switcher/16.js +0 -15
- package/es/icons/app-switcher/20.d.ts +0 -17
- package/es/icons/app-switcher/20.js +0 -15
- package/es/icons/app-switcher/24.d.ts +0 -17
- package/es/icons/app-switcher/24.js +0 -15
- package/es/icons/app-switcher/32.d.ts +0 -17
- package/es/icons/app-switcher/32.js +0 -15
- package/es/icons/arrows/16.d.ts +0 -17
- package/es/icons/arrows/16.js +0 -15
- package/es/icons/arrows/20.d.ts +0 -17
- package/es/icons/arrows/20.js +0 -15
- package/es/icons/arrows/24.d.ts +0 -17
- package/es/icons/arrows/24.js +0 -15
- package/es/icons/arrows/32.d.ts +0 -17
- package/es/icons/arrows/32.js +0 -15
- package/es/icons/back-to-top/16.d.ts +0 -17
- package/es/icons/back-to-top/16.js +0 -15
- package/es/icons/back-to-top/20.d.ts +0 -17
- package/es/icons/back-to-top/20.js +0 -15
- package/es/icons/back-to-top/24.d.ts +0 -17
- package/es/icons/back-to-top/24.js +0 -15
- package/es/icons/back-to-top/32.d.ts +0 -17
- package/es/icons/back-to-top/32.js +0 -15
- package/es/icons/checkbox--undeterminate/16.d.ts +0 -17
- package/es/icons/checkbox--undeterminate/16.js +0 -15
- package/es/icons/checkbox--undeterminate/20.d.ts +0 -17
- package/es/icons/checkbox--undeterminate/20.js +0 -15
- package/es/icons/checkbox--undeterminate/24.d.ts +0 -17
- package/es/icons/checkbox--undeterminate/24.js +0 -15
- package/es/icons/checkbox--undeterminate/32.d.ts +0 -17
- package/es/icons/checkbox--undeterminate/32.js +0 -15
- package/es/icons/checkbox--undeterminate--filled/16.d.ts +0 -17
- package/es/icons/checkbox--undeterminate--filled/16.js +0 -15
- package/es/icons/checkbox--undeterminate--filled/20.d.ts +0 -17
- package/es/icons/checkbox--undeterminate--filled/20.js +0 -15
- package/es/icons/checkbox--undeterminate--filled/24.d.ts +0 -17
- package/es/icons/checkbox--undeterminate--filled/24.js +0 -15
- package/es/icons/checkbox--undeterminate--filled/32.d.ts +0 -17
- package/es/icons/checkbox--undeterminate--filled/32.js +0 -15
- package/es/icons/cloud--lightning/16.d.ts +0 -17
- package/es/icons/cloud--lightning/16.js +0 -15
- package/es/icons/cloud--lightning/20.d.ts +0 -17
- package/es/icons/cloud--lightning/20.js +0 -15
- package/es/icons/cloud--lightning/24.d.ts +0 -17
- package/es/icons/cloud--lightning/24.js +0 -15
- package/es/icons/cloud--lightning/32.d.ts +0 -17
- package/es/icons/cloud--lightning/32.js +0 -15
- package/es/icons/cloud--rain/16.d.ts +0 -17
- package/es/icons/cloud--rain/16.js +0 -15
- package/es/icons/cloud--rain/20.d.ts +0 -17
- package/es/icons/cloud--rain/20.js +0 -15
- package/es/icons/cloud--rain/24.d.ts +0 -17
- package/es/icons/cloud--rain/24.js +0 -15
- package/es/icons/cloud--rain/32.d.ts +0 -17
- package/es/icons/cloud--rain/32.js +0 -15
- package/es/icons/cloud--snow/16.d.ts +0 -17
- package/es/icons/cloud--snow/16.js +0 -15
- package/es/icons/cloud--snow/20.d.ts +0 -17
- package/es/icons/cloud--snow/20.js +0 -15
- package/es/icons/cloud--snow/24.d.ts +0 -17
- package/es/icons/cloud--snow/24.js +0 -15
- package/es/icons/cloud--snow/32.d.ts +0 -17
- package/es/icons/cloud--snow/32.js +0 -15
- package/es/icons/glyph--caution/index.d.ts +0 -17
- package/es/icons/glyph--caution/index.js +0 -15
- package/es/icons/glyph--caution-inverted/index.d.ts +0 -17
- package/es/icons/glyph--caution-inverted/index.js +0 -15
- package/es/icons/glyph--circle-fill/index.d.ts +0 -17
- package/es/icons/glyph--circle-fill/index.js +0 -15
- package/es/icons/glyph--circle-stroke/index.d.ts +0 -17
- package/es/icons/glyph--circle-stroke/index.js +0 -15
- package/es/icons/glyph--critical/index.d.ts +0 -17
- package/es/icons/glyph--critical/index.js +0 -15
- package/es/icons/glyph--incomplete/index.d.ts +0 -17
- package/es/icons/glyph--incomplete/index.js +0 -15
- package/es/icons/glyph--square-fill/index.d.ts +0 -17
- package/es/icons/glyph--square-fill/index.js +0 -15
- package/es/icons/glyph--undefined/index.d.ts +0 -17
- package/es/icons/glyph--undefined/index.js +0 -15
- package/es/icons/letter--Aa--large/16.d.ts +0 -17
- package/es/icons/letter--Aa--large/16.js +0 -15
- package/es/icons/letter--Aa--large/20.d.ts +0 -17
- package/es/icons/letter--Aa--large/20.js +0 -15
- package/es/icons/letter--Aa--large/24.d.ts +0 -17
- package/es/icons/letter--Aa--large/24.js +0 -15
- package/es/icons/letter--Aa--large/32.d.ts +0 -17
- package/es/icons/letter--Aa--large/32.js +0 -15
- package/es/icons/logo--delicious/16.d.ts +0 -17
- package/es/icons/logo--delicious/16.js +0 -15
- package/es/icons/logo--delicious/20.d.ts +0 -17
- package/es/icons/logo--delicious/20.js +0 -15
- package/es/icons/logo--delicious/24.d.ts +0 -17
- package/es/icons/logo--delicious/24.js +0 -15
- package/es/icons/logo--delicious/32.d.ts +0 -17
- package/es/icons/logo--delicious/32.js +0 -15
- package/es/icons/logo--google/16.d.ts +0 -17
- package/es/icons/logo--google/16.js +0 -15
- package/es/icons/logo--google/20.d.ts +0 -17
- package/es/icons/logo--google/20.js +0 -15
- package/es/icons/logo--google/24.d.ts +0 -17
- package/es/icons/logo--google/24.js +0 -15
- package/es/icons/logo--google/32.d.ts +0 -17
- package/es/icons/logo--google/32.js +0 -15
- package/es/icons/logo--stumbleupon/16.d.ts +0 -17
- package/es/icons/logo--stumbleupon/16.js +0 -15
- package/es/icons/logo--stumbleupon/20.d.ts +0 -17
- package/es/icons/logo--stumbleupon/20.js +0 -15
- package/es/icons/logo--stumbleupon/24.d.ts +0 -17
- package/es/icons/logo--stumbleupon/24.js +0 -15
- package/es/icons/logo--stumbleupon/32.d.ts +0 -17
- package/es/icons/logo--stumbleupon/32.js +0 -15
- package/es/icons/mammogram--stacked/16.d.ts +0 -17
- package/es/icons/mammogram--stacked/16.js +0 -15
- package/es/icons/mammogram--stacked/20.d.ts +0 -17
- package/es/icons/mammogram--stacked/20.js +0 -15
- package/es/icons/mammogram--stacked/24.d.ts +0 -17
- package/es/icons/mammogram--stacked/24.js +0 -15
- package/es/icons/mammogram--stacked/32.d.ts +0 -17
- package/es/icons/mammogram--stacked/32.js +0 -15
- package/es/icons/misuse--alt/16.d.ts +0 -17
- package/es/icons/misuse--alt/16.js +0 -15
- package/es/icons/misuse--alt/20.d.ts +0 -17
- package/es/icons/misuse--alt/20.js +0 -15
- package/es/icons/misuse--alt/24.d.ts +0 -17
- package/es/icons/misuse--alt/24.js +0 -15
- package/es/icons/misuse--alt/32.d.ts +0 -17
- package/es/icons/misuse--alt/32.js +0 -15
- package/es/icons/research--bloch-sphere/16.d.ts +0 -17
- package/es/icons/research--bloch-sphere/16.js +0 -15
- package/es/icons/research--bloch-sphere/20.d.ts +0 -17
- package/es/icons/research--bloch-sphere/20.js +0 -15
- package/es/icons/research--bloch-sphere/24.d.ts +0 -17
- package/es/icons/research--bloch-sphere/24.js +0 -15
- package/es/icons/research--bloch-sphere/32.d.ts +0 -17
- package/es/icons/research--bloch-sphere/32.js +0 -15
- package/es/icons/research--hinton-plot/16.d.ts +0 -17
- package/es/icons/research--hinton-plot/16.js +0 -15
- package/es/icons/research--hinton-plot/20.d.ts +0 -17
- package/es/icons/research--hinton-plot/20.js +0 -15
- package/es/icons/research--hinton-plot/24.d.ts +0 -17
- package/es/icons/research--hinton-plot/24.js +0 -15
- package/es/icons/research--hinton-plot/32.d.ts +0 -17
- package/es/icons/research--hinton-plot/32.js +0 -15
- package/es/icons/research--matrix/16.d.ts +0 -17
- package/es/icons/research--matrix/16.js +0 -15
- package/es/icons/research--matrix/20.d.ts +0 -17
- package/es/icons/research--matrix/20.js +0 -15
- package/es/icons/research--matrix/24.d.ts +0 -17
- package/es/icons/research--matrix/24.js +0 -15
- package/es/icons/research--matrix/32.d.ts +0 -17
- package/es/icons/research--matrix/32.js +0 -15
- package/es/icons/sunny/16.d.ts +0 -17
- package/es/icons/sunny/16.js +0 -15
- package/es/icons/sunny/20.d.ts +0 -17
- package/es/icons/sunny/20.js +0 -15
- package/es/icons/sunny/24.d.ts +0 -17
- package/es/icons/sunny/24.js +0 -15
- package/es/icons/sunny/32.d.ts +0 -17
- package/es/icons/sunny/32.js +0 -15
- package/es/icons/undefined/index.d.ts +0 -17
- package/es/icons/undefined/index.js +0 -15
- package/es/icons/watson-health/edit-filter/16.d.ts +0 -17
- package/es/icons/watson-health/edit-filter/16.js +0 -15
- package/es/icons/watson-health/edit-filter/20.d.ts +0 -17
- package/es/icons/watson-health/edit-filter/20.js +0 -15
- package/es/icons/watson-health/edit-filter/24.d.ts +0 -17
- package/es/icons/watson-health/edit-filter/24.js +0 -15
- package/es/icons/watson-health/edit-filter/32.d.ts +0 -17
- package/es/icons/watson-health/edit-filter/32.js +0 -15
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import _decorate from "@babel/runtime/helpers/esm/decorate";
|
|
2
|
+
import _get from "@babel/runtime/helpers/esm/get";
|
|
3
|
+
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
|
|
4
|
+
let _ = t => t,
|
|
5
|
+
_t,
|
|
6
|
+
_t2;
|
|
2
7
|
/**
|
|
3
8
|
* @license
|
|
4
9
|
*
|
|
@@ -8,6 +13,7 @@ import _decorate from "@babel/runtime/helpers/esm/decorate";
|
|
|
8
13
|
* LICENSE file in the root directory of this source tree.
|
|
9
14
|
*/
|
|
10
15
|
|
|
16
|
+
import { html } from 'lit';
|
|
11
17
|
import { classMap } from 'lit/directives/class-map.js';
|
|
12
18
|
import { property } from 'lit/decorators.js';
|
|
13
19
|
import { prefix } from '../../globals/settings';
|
|
@@ -16,6 +22,20 @@ import { TILE_COLOR_SCHEME } from './defs';
|
|
|
16
22
|
import styles from "././tile.css.js";
|
|
17
23
|
import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
|
|
18
24
|
|
|
25
|
+
// To Do: Replace with an an icon from `@carbon/icons`
|
|
26
|
+
// since the hollow slug in `ClickableTile` is not interactive
|
|
27
|
+
const hollowSlugIcon = html(_t || (_t = _` <svg
|
|
28
|
+
class="${0}--tile--slug-icon"
|
|
29
|
+
width="24"
|
|
30
|
+
height="24"
|
|
31
|
+
viewBox="0 0 24 24"
|
|
32
|
+
fill="none"
|
|
33
|
+
xmlns="http://www.w3.org/2000/svg">
|
|
34
|
+
<rect x="0.5" y="0.5" width="23" height="23" />
|
|
35
|
+
<path
|
|
36
|
+
d="M13.2436 16H11.5996L10.9276 13.864H7.95164L7.29164 16H5.68364L8.49164 7.624H10.4596L13.2436 16ZM10.5436 12.508L9.46364 9.064H9.40364L8.33564 12.508H10.5436ZM17.9341 16H14.1301V14.728H15.2341V8.896H14.1301V7.624H17.9341V8.896H16.8181V14.728H17.9341V16Z"
|
|
37
|
+
fill="#161616" />
|
|
38
|
+
</svg>`), prefix);
|
|
19
39
|
/**
|
|
20
40
|
* Clickable tile.
|
|
21
41
|
*
|
|
@@ -36,14 +56,17 @@ let CDSClickableTile = _decorate([customElement(`${prefix}-clickable-tile`)], fu
|
|
|
36
56
|
value: function _classes() {
|
|
37
57
|
const {
|
|
38
58
|
colorScheme,
|
|
39
|
-
disabled
|
|
59
|
+
disabled,
|
|
60
|
+
hasRoundedCorners,
|
|
61
|
+
slug
|
|
40
62
|
} = this;
|
|
41
63
|
return classMap({
|
|
42
64
|
[`${prefix}--link`]: true,
|
|
43
65
|
[`${prefix}--link--disabled`]: disabled,
|
|
44
66
|
[`${prefix}--tile`]: true,
|
|
45
67
|
[`${prefix}--tile--clickable`]: true,
|
|
46
|
-
[`${prefix}--tile--${colorScheme}`]: colorScheme
|
|
68
|
+
[`${prefix}--tile--${colorScheme}`]: colorScheme,
|
|
69
|
+
[`${prefix}--tile--slug-rounded`]: slug && hasRoundedCorners
|
|
47
70
|
});
|
|
48
71
|
}
|
|
49
72
|
|
|
@@ -69,6 +92,53 @@ let CDSClickableTile = _decorate([customElement(`${prefix}-clickable-tile`)], fu
|
|
|
69
92
|
value() {
|
|
70
93
|
return 'button';
|
|
71
94
|
}
|
|
95
|
+
}, {
|
|
96
|
+
kind: "field",
|
|
97
|
+
decorators: [property({
|
|
98
|
+
type: Boolean,
|
|
99
|
+
attribute: 'has-rounded-corners'
|
|
100
|
+
})],
|
|
101
|
+
key: "hasRoundedCorners",
|
|
102
|
+
value() {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
}, {
|
|
106
|
+
kind: "field",
|
|
107
|
+
decorators: [property({
|
|
108
|
+
type: Boolean
|
|
109
|
+
})],
|
|
110
|
+
key: "slug",
|
|
111
|
+
value() {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
}, {
|
|
115
|
+
kind: "method",
|
|
116
|
+
key: "_renderInner",
|
|
117
|
+
value:
|
|
118
|
+
/**
|
|
119
|
+
* The a11y role for `<a>`.
|
|
120
|
+
*/
|
|
121
|
+
/**
|
|
122
|
+
* Specify if the `ClickableTile` component should be rendered with rounded corners.
|
|
123
|
+
* Only valid when `slug` prop is present
|
|
124
|
+
*/
|
|
125
|
+
/**
|
|
126
|
+
* @returns The inner content.
|
|
127
|
+
*/
|
|
128
|
+
function _renderInner() {
|
|
129
|
+
return html(_t2 || (_t2 = _` ${0} ${0} `), _get(_getPrototypeOf(CDSClickableTile.prototype), "_renderInner", this).call(this), this.slug ? hollowSlugIcon : '');
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* A selector that will return the slug item.
|
|
134
|
+
*/
|
|
135
|
+
}, {
|
|
136
|
+
kind: "get",
|
|
137
|
+
static: true,
|
|
138
|
+
key: "slugItem",
|
|
139
|
+
value: function slugItem() {
|
|
140
|
+
return `${prefix}-slug`;
|
|
141
|
+
}
|
|
72
142
|
}, {
|
|
73
143
|
kind: "field",
|
|
74
144
|
static: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clickable-tile.js","names":["classMap","property","prefix","CDSLink","TILE_COLOR_SCHEME","styles","carbonElement","customElement","CDSClickableTile","_decorate","_initialize","_CDSLink","constructor","args","F","d","kind","key","value","_classes","colorScheme","disabled","decorators","attribute","reflect","REGULAR","static"],"sources":["components/tile/clickable-tile.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport CDSLink from '../link/link';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Clickable tile.\n *\n * @element cds-clickable-tile\n */\n@customElement(`${prefix}-clickable-tile`)\nclass CDSClickableTile extends CDSLink {\n protected get _classes() {\n const { colorScheme, disabled } = this;\n return classMap({\n [`${prefix}--link`]: true,\n [`${prefix}--link--disabled`]: disabled,\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--clickable`]: true,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n }\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The a11y role for `<a>`.\n */\n @property({ attribute: 'link-role' })\n linkRole = 'button';\n\n static styles = styles;\n}\n\nexport default CDSClickableTile;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"clickable-tile.js","names":["html","classMap","property","prefix","CDSLink","TILE_COLOR_SCHEME","styles","carbonElement","customElement","hollowSlugIcon","_t","_","CDSClickableTile","_decorate","_initialize","_CDSLink","constructor","args","F","d","kind","key","value","_classes","colorScheme","disabled","hasRoundedCorners","slug","decorators","attribute","reflect","REGULAR","type","Boolean","_renderInner","_t2","_get","_getPrototypeOf","prototype","call","static","slugItem"],"sources":["components/tile/clickable-tile.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport CDSLink from '../link/link';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n// To Do: Replace with an an icon from `@carbon/icons`\n// since the hollow slug in `ClickableTile` is not interactive\nconst hollowSlugIcon = html` <svg\n class=\"${prefix}--tile--slug-icon\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <rect x=\"0.5\" y=\"0.5\" width=\"23\" height=\"23\" />\n <path\n d=\"M13.2436 16H11.5996L10.9276 13.864H7.95164L7.29164 16H5.68364L8.49164 7.624H10.4596L13.2436 16ZM10.5436 12.508L9.46364 9.064H9.40364L8.33564 12.508H10.5436ZM17.9341 16H14.1301V14.728H15.2341V8.896H14.1301V7.624H17.9341V8.896H16.8181V14.728H17.9341V16Z\"\n fill=\"#161616\" />\n</svg>`;\n/**\n * Clickable tile.\n *\n * @element cds-clickable-tile\n */\n@customElement(`${prefix}-clickable-tile`)\nclass CDSClickableTile extends CDSLink {\n protected get _classes() {\n const { colorScheme, disabled, hasRoundedCorners, slug } = this;\n return classMap({\n [`${prefix}--link`]: true,\n [`${prefix}--link--disabled`]: disabled,\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--clickable`]: true,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n [`${prefix}--tile--slug-rounded`]: slug && hasRoundedCorners,\n });\n }\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The a11y role for `<a>`.\n */\n @property({ attribute: 'link-role' })\n linkRole = 'button';\n\n /**\n * Specify if the `ClickableTile` component should be rendered with rounded corners.\n * Only valid when `slug` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n @property({ type: Boolean })\n slug = false;\n\n /**\n * @returns The inner content.\n */\n protected _renderInner() {\n return html` ${super._renderInner()} ${this.slug ? hollowSlugIcon : ''} `;\n }\n\n /**\n * A selector that will return the slug item.\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n static styles = styles;\n}\n\nexport default CDSClickableTile;\n"],"mappings":"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"}
|
|
@@ -683,6 +683,14 @@ declare class CDSExpandableTile extends CDSExpandableTile_base {
|
|
|
683
683
|
* The computed height of the below-the-fold content.
|
|
684
684
|
*/
|
|
685
685
|
private _belowTheContentHeight;
|
|
686
|
+
/**
|
|
687
|
+
* `true` if there is a slug.
|
|
688
|
+
*/
|
|
689
|
+
protected _hasSlug: boolean;
|
|
690
|
+
/**
|
|
691
|
+
* Handles `slotchange` event.
|
|
692
|
+
*/
|
|
693
|
+
protected _handleSlotChange({ target }: Event): void;
|
|
686
694
|
/**
|
|
687
695
|
* Handles `slotchange` event on the below-the-fold content.
|
|
688
696
|
*
|
|
@@ -699,11 +707,21 @@ declare class CDSExpandableTile extends CDSExpandableTile_base {
|
|
|
699
707
|
* `true` to expand this expandable tile.
|
|
700
708
|
*/
|
|
701
709
|
expanded: boolean;
|
|
710
|
+
/**
|
|
711
|
+
* Specify if the `ExpandableTile` component should be rendered with rounded corners.
|
|
712
|
+
* Only valid when `slug` prop is present
|
|
713
|
+
*/
|
|
714
|
+
hasRoundedCorners: boolean;
|
|
702
715
|
/**
|
|
703
716
|
* `true` to expand this expandable tile.
|
|
704
717
|
*/
|
|
705
718
|
withInteractive: boolean;
|
|
719
|
+
updated(): void;
|
|
706
720
|
render(): import("lit-html").TemplateResult<1>;
|
|
721
|
+
/**
|
|
722
|
+
* A selector that will return the slug item.
|
|
723
|
+
*/
|
|
724
|
+
static get slugItem(): string;
|
|
707
725
|
/**
|
|
708
726
|
* The name of the custom event fired before the expanded state is changed upon a user gesture.
|
|
709
727
|
* Cancellation of this event stops changing the user-initiated change in expanded state.
|
|
@@ -48,20 +48,50 @@ let CDSExpandableTile = _decorate([customElement(`${prefix}-expandable-tile`)],
|
|
|
48
48
|
value() {
|
|
49
49
|
return 0;
|
|
50
50
|
}
|
|
51
|
+
}, {
|
|
52
|
+
kind: "field",
|
|
53
|
+
key: "_hasSlug",
|
|
54
|
+
value() {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
51
57
|
}, {
|
|
52
58
|
kind: "method",
|
|
53
|
-
key: "
|
|
59
|
+
key: "_handleSlotChange",
|
|
54
60
|
value:
|
|
55
61
|
/**
|
|
56
62
|
* The computed height of the below-the-fold content.
|
|
57
63
|
*/
|
|
58
64
|
|
|
65
|
+
/**
|
|
66
|
+
* `true` if there is a slug.
|
|
67
|
+
*/
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Handles `slotchange` event.
|
|
71
|
+
*/
|
|
72
|
+
function _handleSlotChange({
|
|
73
|
+
target
|
|
74
|
+
}) {
|
|
75
|
+
const hasContent = target.assignedNodes().filter(elem => {
|
|
76
|
+
var _this$constructor;
|
|
77
|
+
return elem.matches !== undefined ? elem.matches((_this$constructor = this.constructor) === null || _this$constructor === void 0 ? void 0 : _this$constructor.slugItem) : false;
|
|
78
|
+
});
|
|
79
|
+
if (hasContent.length > 0) {
|
|
80
|
+
this._hasSlug = Boolean(hasContent);
|
|
81
|
+
hasContent[0].setAttribute('size', 'xs');
|
|
82
|
+
}
|
|
83
|
+
this.requestUpdate();
|
|
84
|
+
}
|
|
85
|
+
|
|
59
86
|
/**
|
|
60
87
|
* Handles `slotchange` event on the below-the-fold content.
|
|
61
88
|
*
|
|
62
89
|
* @param event The event.
|
|
63
90
|
*/
|
|
64
|
-
|
|
91
|
+
}, {
|
|
92
|
+
kind: "method",
|
|
93
|
+
key: "_handleSlotChangeBelowTheFoldContent",
|
|
94
|
+
value: function _handleSlotChangeBelowTheFoldContent(event) {
|
|
65
95
|
this._belowTheContentHeight = event.target.assignedNodes().reduce((acc, item) => {
|
|
66
96
|
var _offsetHeight;
|
|
67
97
|
return acc + ((_offsetHeight = item.offsetHeight) !== null && _offsetHeight !== void 0 ? _offsetHeight : 0);
|
|
@@ -126,6 +156,16 @@ let CDSExpandableTile = _decorate([customElement(`${prefix}-expandable-tile`)],
|
|
|
126
156
|
value() {
|
|
127
157
|
return false;
|
|
128
158
|
}
|
|
159
|
+
}, {
|
|
160
|
+
kind: "field",
|
|
161
|
+
decorators: [property({
|
|
162
|
+
type: Boolean,
|
|
163
|
+
attribute: 'has-rounded-corners'
|
|
164
|
+
})],
|
|
165
|
+
key: "hasRoundedCorners",
|
|
166
|
+
value() {
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
129
169
|
}, {
|
|
130
170
|
kind: "field",
|
|
131
171
|
decorators: [property({
|
|
@@ -139,7 +179,7 @@ let CDSExpandableTile = _decorate([customElement(`${prefix}-expandable-tile`)],
|
|
|
139
179
|
}
|
|
140
180
|
}, {
|
|
141
181
|
kind: "method",
|
|
142
|
-
key: "
|
|
182
|
+
key: "updated",
|
|
143
183
|
value:
|
|
144
184
|
/**
|
|
145
185
|
* The color scheme.
|
|
@@ -147,10 +187,24 @@ let CDSExpandableTile = _decorate([customElement(`${prefix}-expandable-tile`)],
|
|
|
147
187
|
/**
|
|
148
188
|
* `true` to expand this expandable tile.
|
|
149
189
|
*/
|
|
190
|
+
/**
|
|
191
|
+
* Specify if the `ExpandableTile` component should be rendered with rounded corners.
|
|
192
|
+
* Only valid when `slug` prop is present
|
|
193
|
+
*/
|
|
150
194
|
/**
|
|
151
195
|
* `true` to expand this expandable tile.
|
|
152
196
|
*/
|
|
153
|
-
function
|
|
197
|
+
function updated() {
|
|
198
|
+
if (this._hasSlug) {
|
|
199
|
+
this.setAttribute('slug', '');
|
|
200
|
+
} else {
|
|
201
|
+
this.removeAttribute('slug');
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}, {
|
|
205
|
+
kind: "method",
|
|
206
|
+
key: "render",
|
|
207
|
+
value: function render() {
|
|
154
208
|
const {
|
|
155
209
|
expanded,
|
|
156
210
|
withInteractive,
|
|
@@ -171,6 +225,7 @@ let CDSExpandableTile = _decorate([customElement(`${prefix}-expandable-tile`)],
|
|
|
171
225
|
aria-expanded="${0}">
|
|
172
226
|
${0}
|
|
173
227
|
</button>
|
|
228
|
+
<slot name="slug" @slotchange="${0}"></slot>
|
|
174
229
|
<div id="content" class="${0}--tile-content">
|
|
175
230
|
<div><slot name="above-the-fold-content"></slot></div>
|
|
176
231
|
<div
|
|
@@ -181,7 +236,18 @@ let CDSExpandableTile = _decorate([customElement(`${prefix}-expandable-tile`)],
|
|
|
181
236
|
</div>
|
|
182
237
|
`), classes, withInteractive ? this._handleExpand : '', String(Boolean(expanded)), ChevronDown16({
|
|
183
238
|
id: 'icon'
|
|
184
|
-
}), prefix, prefix, ifDefined(!expanded ? undefined : `max-height: ${belowTheContentHeight}px`), handleSlotChangeBelowTheFoldContent);
|
|
239
|
+
}), this._handleSlotChange, prefix, prefix, ifDefined(!expanded ? undefined : `max-height: ${belowTheContentHeight}px`), handleSlotChangeBelowTheFoldContent);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
/**
|
|
243
|
+
* A selector that will return the slug item.
|
|
244
|
+
*/
|
|
245
|
+
}, {
|
|
246
|
+
kind: "get",
|
|
247
|
+
static: true,
|
|
248
|
+
key: "slugItem",
|
|
249
|
+
value: function slugItem() {
|
|
250
|
+
return `${prefix}-slug`;
|
|
185
251
|
}
|
|
186
252
|
|
|
187
253
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expandable-tile.js","names":["LitElement","html","property","ifDefined","ChevronDown16","prefix","HostListener","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","classMap","carbonElement","customElement","CDSExpandableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_handleSlotChangeBelowTheFoldContent","event","_belowTheContentHeight","target","assignedNodes","reduce","acc","item","_offsetHeight","offsetHeight","element","getComputedStyle","querySelector","parseInt","height","requestUpdate","_handleExpand","expanded","focus","init","bubbles","composed","detail","beforeChangeEvent","CustomEvent","eventBeforeToggle","_objectSpread","cancelable","dispatchEvent","afterChangeEvent","eventToggle","decorators","withInteractive","attribute","reflect","REGULAR","type","Boolean","render","belowTheContentHeight","handleSlotChangeBelowTheFoldContent","classes","_t","_","String","id","undefined","static"],"sources":["components/tile/expandable-tile.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(Boolean(expanded))}\">\n ${ChevronDown16({\n id: 'icon',\n })}\n </button>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSExpandableTile;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expandable-tile.js","names":["LitElement","html","property","ifDefined","ChevronDown16","prefix","HostListener","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","classMap","carbonElement","customElement","CDSExpandableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_handleSlotChange","target","hasContent","assignedNodes","filter","elem","_this$constructor","matches","undefined","slugItem","length","_hasSlug","Boolean","setAttribute","requestUpdate","_handleSlotChangeBelowTheFoldContent","event","_belowTheContentHeight","reduce","acc","item","_offsetHeight","offsetHeight","element","getComputedStyle","querySelector","parseInt","height","_handleExpand","expanded","focus","init","bubbles","composed","detail","beforeChangeEvent","CustomEvent","eventBeforeToggle","_objectSpread","cancelable","dispatchEvent","afterChangeEvent","eventToggle","decorators","withInteractive","attribute","reflect","REGULAR","type","updated","removeAttribute","render","belowTheContentHeight","handleSlotChangeBelowTheFoldContent","classes","_t","_","String","id","static"],"sources":["components/tile/expandable-tile.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * `true` if there is a slug.\n */\n protected _hasSlug = false;\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const hasContent = (target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches !== undefined\n ? (elem as HTMLElement).matches(\n (this.constructor as typeof CDSExpandableTile)?.slugItem\n )\n : false\n );\n\n if (hasContent.length > 0) {\n this._hasSlug = Boolean(hasContent);\n (hasContent[0] as HTMLElement).setAttribute('size', 'xs');\n }\n this.requestUpdate();\n }\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * Specify if the `ExpandableTile` component should be rendered with rounded corners.\n * Only valid when `slug` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n updated() {\n if (this._hasSlug) {\n this.setAttribute('slug', '');\n } else {\n this.removeAttribute('slug');\n }\n }\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(Boolean(expanded))}\">\n ${ChevronDown16({\n id: 'icon',\n })}\n </button>\n <slot name=\"slug\" @slotchange=\"${this._handleSlotChange}\"></slot>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * A selector that will return the slug item.\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSExpandableTile;\n"],"mappings":"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"}
|
|
@@ -339,9 +339,7 @@ declare const CDSSelectableTile_base: {
|
|
|
339
339
|
_hostListeners: {
|
|
340
340
|
[listenerName: string]: {
|
|
341
341
|
[type: string]: {
|
|
342
|
-
options?: boolean | AddEventListenerOptions | undefined;
|
|
343
|
-
* The color scheme.
|
|
344
|
-
*/
|
|
342
|
+
options?: boolean | AddEventListenerOptions | undefined;
|
|
345
343
|
};
|
|
346
344
|
};
|
|
347
345
|
};
|
|
@@ -683,6 +681,14 @@ declare class CDSSelectableTile extends CDSSelectableTile_base {
|
|
|
683
681
|
* The `type` attribute of the `<input>`.
|
|
684
682
|
*/
|
|
685
683
|
protected _inputType: string;
|
|
684
|
+
/**
|
|
685
|
+
* `true` if there is a slug.
|
|
686
|
+
*/
|
|
687
|
+
protected _hasSlug: boolean;
|
|
688
|
+
/**
|
|
689
|
+
* Handles `slotchange` event.
|
|
690
|
+
*/
|
|
691
|
+
protected _handleSlotChange({ target }: Event): void;
|
|
686
692
|
/**
|
|
687
693
|
* Handles `change` event on the `<input>` in the shadow DOM.
|
|
688
694
|
*/
|
|
@@ -705,6 +711,11 @@ declare class CDSSelectableTile extends CDSSelectableTile_base {
|
|
|
705
711
|
* The color scheme.
|
|
706
712
|
*/
|
|
707
713
|
colorScheme: TILE_COLOR_SCHEME;
|
|
714
|
+
/**
|
|
715
|
+
* Specify if the `SeletableTile` component should be rendered with rounded corners.
|
|
716
|
+
* Only valid when `slug` prop is present
|
|
717
|
+
*/
|
|
718
|
+
hasRoundedCorners: boolean;
|
|
708
719
|
/**
|
|
709
720
|
* The form name.
|
|
710
721
|
*/
|
|
@@ -717,7 +728,12 @@ declare class CDSSelectableTile extends CDSSelectableTile_base {
|
|
|
717
728
|
* The form value.
|
|
718
729
|
*/
|
|
719
730
|
value: string;
|
|
731
|
+
updated(): void;
|
|
720
732
|
render(): import("lit-html").TemplateResult<1>;
|
|
733
|
+
/**
|
|
734
|
+
* A selector that will return the slug item.
|
|
735
|
+
*/
|
|
736
|
+
static get slugItem(): string;
|
|
721
737
|
/**
|
|
722
738
|
* The name of the custom event fired after this selectable tile changes its selected state.
|
|
723
739
|
*/
|
|
@@ -54,18 +54,48 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
54
54
|
value() {
|
|
55
55
|
return 'checkbox';
|
|
56
56
|
}
|
|
57
|
+
}, {
|
|
58
|
+
kind: "field",
|
|
59
|
+
key: "_hasSlug",
|
|
60
|
+
value() {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
57
63
|
}, {
|
|
58
64
|
kind: "method",
|
|
59
|
-
key: "
|
|
65
|
+
key: "_handleSlotChange",
|
|
60
66
|
value:
|
|
61
67
|
/**
|
|
62
68
|
* The `type` attribute of the `<input>`.
|
|
63
69
|
*/
|
|
64
70
|
|
|
71
|
+
/**
|
|
72
|
+
* `true` if there is a slug.
|
|
73
|
+
*/
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Handles `slotchange` event.
|
|
77
|
+
*/
|
|
78
|
+
function _handleSlotChange({
|
|
79
|
+
target
|
|
80
|
+
}) {
|
|
81
|
+
const hasContent = target.assignedNodes().filter(elem => {
|
|
82
|
+
var _this$constructor;
|
|
83
|
+
return elem.matches !== undefined ? elem.matches((_this$constructor = this.constructor) === null || _this$constructor === void 0 ? void 0 : _this$constructor.slugItem) : false;
|
|
84
|
+
});
|
|
85
|
+
if (hasContent.length > 0) {
|
|
86
|
+
this._hasSlug = Boolean(hasContent);
|
|
87
|
+
hasContent[0].setAttribute('size', 'xs');
|
|
88
|
+
}
|
|
89
|
+
this.requestUpdate();
|
|
90
|
+
}
|
|
91
|
+
|
|
65
92
|
/**
|
|
66
93
|
* Handles `change` event on the `<input>` in the shadow DOM.
|
|
67
94
|
*/
|
|
68
|
-
|
|
95
|
+
}, {
|
|
96
|
+
kind: "method",
|
|
97
|
+
key: "_handleChange",
|
|
98
|
+
value: function _handleChange() {
|
|
69
99
|
this.selected = this._inputNode.checked;
|
|
70
100
|
const selected = this.selected;
|
|
71
101
|
const {
|
|
@@ -109,10 +139,11 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
109
139
|
key: "_handleKeydown",
|
|
110
140
|
value() {
|
|
111
141
|
return event => {
|
|
142
|
+
var _event$target;
|
|
112
143
|
const {
|
|
113
144
|
key
|
|
114
145
|
} = event;
|
|
115
|
-
if (key === ' ' || key === 'Enter') {
|
|
146
|
+
if (key === ' ' || key === 'Enter' && !((_event$target = event.target) !== null && _event$target !== void 0 && _event$target.matches(this.constructor.slugItem))) {
|
|
116
147
|
this.selected = !this.selected;
|
|
117
148
|
}
|
|
118
149
|
};
|
|
@@ -134,6 +165,16 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
134
165
|
value() {
|
|
135
166
|
return TILE_COLOR_SCHEME.REGULAR;
|
|
136
167
|
}
|
|
168
|
+
}, {
|
|
169
|
+
kind: "field",
|
|
170
|
+
decorators: [property({
|
|
171
|
+
type: Boolean,
|
|
172
|
+
attribute: 'has-rounded-corners'
|
|
173
|
+
})],
|
|
174
|
+
key: "hasRoundedCorners",
|
|
175
|
+
value() {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
137
178
|
}, {
|
|
138
179
|
kind: "field",
|
|
139
180
|
decorators: [property()],
|
|
@@ -156,7 +197,7 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
156
197
|
value: void 0
|
|
157
198
|
}, {
|
|
158
199
|
kind: "method",
|
|
159
|
-
key: "
|
|
200
|
+
key: "updated",
|
|
160
201
|
value:
|
|
161
202
|
/**
|
|
162
203
|
* The a11y text for the checkmark icon of the selected state.
|
|
@@ -164,6 +205,10 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
164
205
|
/**
|
|
165
206
|
* The color scheme.
|
|
166
207
|
*/
|
|
208
|
+
/**
|
|
209
|
+
* Specify if the `SeletableTile` component should be rendered with rounded corners.
|
|
210
|
+
* Only valid when `slug` prop is present
|
|
211
|
+
*/
|
|
167
212
|
/**
|
|
168
213
|
* The form name.
|
|
169
214
|
*/
|
|
@@ -173,20 +218,33 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
173
218
|
/**
|
|
174
219
|
* The form value.
|
|
175
220
|
*/
|
|
176
|
-
function
|
|
221
|
+
function updated() {
|
|
222
|
+
if (this._hasSlug) {
|
|
223
|
+
this.setAttribute('slug', '');
|
|
224
|
+
} else {
|
|
225
|
+
this.removeAttribute('slug');
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}, {
|
|
229
|
+
kind: "method",
|
|
230
|
+
key: "render",
|
|
231
|
+
value: function render() {
|
|
177
232
|
const {
|
|
178
233
|
colorScheme,
|
|
234
|
+
hasRoundedCorners: hasRoundedCorners,
|
|
179
235
|
name,
|
|
180
236
|
selected,
|
|
181
237
|
value,
|
|
182
238
|
_inputType: inputType,
|
|
183
|
-
_handleChange: handleChange
|
|
239
|
+
_handleChange: handleChange,
|
|
240
|
+
_hasSlug: hasSlug
|
|
184
241
|
} = this;
|
|
185
242
|
const classes = classMap({
|
|
186
243
|
[`${prefix}--tile`]: true,
|
|
187
244
|
[`${prefix}--tile--selectable`]: true,
|
|
188
245
|
[`${prefix}--tile--is-selected`]: selected,
|
|
189
|
-
[`${prefix}--tile--${colorScheme}`]: colorScheme
|
|
246
|
+
[`${prefix}--tile--${colorScheme}`]: colorScheme,
|
|
247
|
+
[`${prefix}--tile--slug-rounded`]: hasSlug && hasRoundedCorners
|
|
190
248
|
});
|
|
191
249
|
return html(_t4 || (_t4 = _`
|
|
192
250
|
<input
|
|
@@ -205,7 +263,19 @@ let CDSSelectableTile = _decorate([customElement(`${prefix}-selectable-tile`)],
|
|
|
205
263
|
</div>
|
|
206
264
|
<div class="${0}--tile-content"><slot></slot></div>
|
|
207
265
|
</label>
|
|
208
|
-
|
|
266
|
+
<slot name="slug" @slotchange="${0}"></slot>
|
|
267
|
+
`), inputType, prefix, ifDefined(name), ifDefined(value), selected, handleChange, classes, prefix, prefix, this._renderIcon(), prefix, this._handleSlotChange);
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
/**
|
|
271
|
+
* A selector that will return the slug item.
|
|
272
|
+
*/
|
|
273
|
+
}, {
|
|
274
|
+
kind: "get",
|
|
275
|
+
static: true,
|
|
276
|
+
key: "slugItem",
|
|
277
|
+
value: function slugItem() {
|
|
278
|
+
return `${prefix}-slug`;
|
|
209
279
|
}
|
|
210
280
|
|
|
211
281
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectable-tile.js","names":["classMap","LitElement","html","svg","property","query","ifDefined","Checkbox16","CheckboxCheckedFilled16","prefix","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","HostListener","carbonElement","customElement","CDSSelectableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","key","value","_handleChange","selected","_inputNode","checked","eventChange","dispatchEvent","CustomEvent","bubbles","composed","detail","_renderIcon","checkmarkLabel","_t","_","children","undefined","_t2","_t3","event","attribute","reflect","REGULAR","type","Boolean","render","colorScheme","name","_inputType","inputType","handleChange","classes","_t4","static","_objectSpread","shadowRootOptions","delegatesFocus"],"sources":["components/tile/selectable-tile.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { LitElement, html, svg } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport Checkbox16 from '@carbon/icons/lib/checkbox/16';\nimport CheckboxCheckedFilled16 from '@carbon/icons/lib/checkbox--checked--filled/16';\nimport { prefix } from '../../globals/settings';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Multi-selectable tile.\n *\n * @element cds-selectable-tile\n * @fires cds-selectable-tile-changed - The custom event fired after this selectable tile changes its selected state.\n */\n@customElement(`${prefix}-selectable-tile`)\nclass CDSSelectableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n @query('input')\n protected _inputNode!: HTMLInputElement;\n\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'checkbox';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = this._inputNode.checked;\n\n const selected = this.selected;\n const { eventChange } = this.constructor as typeof CDSSelectableTile;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n },\n })\n );\n }\n\n /**\n * Handles the rendering of the icon.\n */\n protected _renderIcon() {\n const { selected, checkmarkLabel } = this;\n\n return html` ${selected\n ? CheckboxCheckedFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })\n : Checkbox16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}`;\n }\n\n /**\n * Listener function for keyboard interaction.\n *\n * @param event to get the key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (key === ' ' || key === 'Enter') {\n this.selected = !this.selected;\n }\n };\n\n /**\n * The a11y text for the checkmark icon of the selected state.\n */\n @property({ attribute: 'checkmark-label' })\n checkmarkLabel!: string;\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The form name.\n */\n @property()\n name!: string;\n\n /**\n * `true` to show the selected state.\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The form value.\n */\n @property()\n value!: string;\n\n render() {\n const {\n colorScheme,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div\n class=\"${prefix}--tile__checkmark ${prefix}--tile__checkmark--persistent\">\n ${this._renderIcon()}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventChange() {\n return `${prefix}-selectable-tile-changed`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSSelectableTile;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"selectable-tile.js","names":["classMap","LitElement","html","svg","property","query","ifDefined","Checkbox16","CheckboxCheckedFilled16","prefix","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","HostListener","carbonElement","customElement","CDSSelectableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","key","value","_handleSlotChange","target","hasContent","assignedNodes","filter","elem","_this$constructor","matches","undefined","slugItem","length","_hasSlug","Boolean","setAttribute","requestUpdate","_handleChange","selected","_inputNode","checked","eventChange","dispatchEvent","CustomEvent","bubbles","composed","detail","_renderIcon","checkmarkLabel","_t","_","children","_t2","_t3","event","_event$target","attribute","reflect","REGULAR","type","updated","removeAttribute","render","colorScheme","hasRoundedCorners","name","_inputType","inputType","handleChange","hasSlug","classes","_t4","static","_objectSpread","shadowRootOptions","delegatesFocus"],"sources":["components/tile/selectable-tile.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit/directives/class-map.js';\nimport { LitElement, html, svg } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport Checkbox16 from '@carbon/icons/lib/checkbox/16';\nimport CheckboxCheckedFilled16 from '@carbon/icons/lib/checkbox--checked--filled/16';\nimport { prefix } from '../../globals/settings';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Multi-selectable tile.\n *\n * @element cds-selectable-tile\n * @fires cds-selectable-tile-changed - The custom event fired after this selectable tile changes its selected state.\n */\n@customElement(`${prefix}-selectable-tile`)\nclass CDSSelectableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n @query('input')\n protected _inputNode!: HTMLInputElement;\n\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'checkbox';\n\n /**\n * `true` if there is a slug.\n */\n protected _hasSlug = false;\n\n /**\n * Handles `slotchange` event.\n */\n protected _handleSlotChange({ target }: Event) {\n const hasContent = (target as HTMLSlotElement)\n .assignedNodes()\n .filter((elem) =>\n (elem as HTMLElement).matches !== undefined\n ? (elem as HTMLElement).matches(\n (this.constructor as typeof CDSSelectableTile)?.slugItem\n )\n : false\n );\n if (hasContent.length > 0) {\n this._hasSlug = Boolean(hasContent);\n (hasContent[0] as HTMLElement).setAttribute('size', 'xs');\n }\n this.requestUpdate();\n }\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = this._inputNode.checked;\n\n const selected = this.selected;\n const { eventChange } = this.constructor as typeof CDSSelectableTile;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n },\n })\n );\n }\n\n /**\n * Handles the rendering of the icon.\n */\n protected _renderIcon() {\n const { selected, checkmarkLabel } = this;\n\n return html` ${selected\n ? CheckboxCheckedFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })\n : Checkbox16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}`;\n }\n\n /**\n * Listener function for keyboard interaction.\n *\n * @param event to get the key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (\n key === ' ' ||\n (key === 'Enter' &&\n !(event.target as HTMLElement)?.matches(\n (this.constructor as typeof CDSSelectableTile).slugItem\n ))\n ) {\n this.selected = !this.selected;\n }\n };\n\n /**\n * The a11y text for the checkmark icon of the selected state.\n */\n @property({ attribute: 'checkmark-label' })\n checkmarkLabel!: string;\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * Specify if the `SeletableTile` component should be rendered with rounded corners.\n * Only valid when `slug` prop is present\n */\n @property({ type: Boolean, attribute: 'has-rounded-corners' })\n hasRoundedCorners = false;\n\n /**\n * The form name.\n */\n @property()\n name!: string;\n\n /**\n * `true` to show the selected state.\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The form value.\n */\n @property()\n value!: string;\n\n updated() {\n if (this._hasSlug) {\n this.setAttribute('slug', '');\n } else {\n this.removeAttribute('slug');\n }\n }\n\n render() {\n const {\n colorScheme,\n hasRoundedCorners: hasRoundedCorners,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n _hasSlug: hasSlug,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n [`${prefix}--tile--slug-rounded`]: hasSlug && hasRoundedCorners,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div\n class=\"${prefix}--tile__checkmark ${prefix}--tile__checkmark--persistent\">\n ${this._renderIcon()}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n <slot name=\"slug\" @slotchange=\"${this._handleSlotChange}\"></slot>\n `;\n }\n\n /**\n * A selector that will return the slug item.\n */\n static get slugItem() {\n return `${prefix}-slug`;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventChange() {\n return `${prefix}-selectable-tile-changed`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSSelectableTile;\n"],"mappings":"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"}
|