@mcp-b/web-components 0.2.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/LICENSE +21 -0
- package/README.md +49 -0
- package/dist/accordion-B1Q3kuP_.d.ts +373 -0
- package/dist/accordion-item-DvPfhpm8.js +307 -0
- package/dist/accordion-item-bPRIahNn.d.ts +63 -0
- package/dist/accordion-zDr-Br4V.js +483 -0
- package/dist/action-bar-CYsjmhwP.d.ts +29 -0
- package/dist/action-bar-CjN_UcnP.js +56 -0
- package/dist/alert-dialog-4CnO3Nb5.d.ts +60 -0
- package/dist/alert-dialog-D25Oi_TS.js +126 -0
- package/dist/avatar-Bje_KpZo.d.ts +141 -0
- package/dist/avatar-CRP0kW3x.js +224 -0
- package/dist/badge-Ct95U4UO.js +301 -0
- package/dist/badge-D1DNQrWn.d.ts +106 -0
- package/dist/breadcrumb-BxZ-nQE5.d.ts +365 -0
- package/dist/breadcrumb-item-BC454oQe.d.ts +59 -0
- package/dist/breadcrumb-item-P5pdq_gE.js +151 -0
- package/dist/breadcrumb-uURhiqWJ.js +384 -0
- package/dist/button-5k_aL_gD.js +802 -0
- package/dist/button-BQofnUt4.d.ts +354 -0
- package/dist/button-group-BydvJTQy.js +197 -0
- package/dist/button-group-COodHeuB.d.ts +155 -0
- package/dist/callout-B8zTf8Go.js +188 -0
- package/dist/callout-DFwPao36.d.ts +103 -0
- package/dist/card-BYDzdMAU.d.ts +177 -0
- package/dist/card-DIg1-X2G.js +332 -0
- package/dist/carousel-Bktu7wrD.js +843 -0
- package/dist/carousel-DQITCtEY.d.ts +423 -0
- package/dist/carousel-item-B5-X31Ha.js +79 -0
- package/dist/carousel-item-BB3jL2tk.d.ts +34 -0
- package/dist/cdn/loader.js +530 -0
- package/dist/checkbox-D6r7PVPj.js +641 -0
- package/dist/checkbox-DoFcDEKB.d.ts +354 -0
- package/dist/checkbox-group-CLvNAO_F.js +201 -0
- package/dist/checkbox-group-Cnh8rAn4.d.ts +152 -0
- package/dist/color-input-Bky89xg_.d.ts +470 -0
- package/dist/color-input-DPIxi9wR.js +894 -0
- package/dist/color-picker-adwOmtRl.js +1240 -0
- package/dist/color-picker-wQw8bPsq.d.ts +360 -0
- package/dist/combobox-B6al50UG.js +1693 -0
- package/dist/combobox-item-D2H1CMxC.d.ts +714 -0
- package/dist/combobox-item-yM6tDrGG.js +225 -0
- package/dist/comparison-B1-nMwmp.d.ts +134 -0
- package/dist/comparison-CyqKrCN-.js +435 -0
- package/dist/components/accordion/accordion.d.ts +2 -0
- package/dist/components/accordion/accordion.js +2 -0
- package/dist/components/accordion-item/accordion-item.d.ts +2 -0
- package/dist/components/accordion-item/accordion-item.js +2 -0
- package/dist/components/action-bar/action-bar.d.ts +2 -0
- package/dist/components/action-bar/action-bar.js +2 -0
- package/dist/components/alert-dialog/alert-dialog.d.ts +2 -0
- package/dist/components/alert-dialog/alert-dialog.js +2 -0
- package/dist/components/avatar/avatar.d.ts +2 -0
- package/dist/components/avatar/avatar.js +2 -0
- package/dist/components/badge/badge.d.ts +2 -0
- package/dist/components/badge/badge.js +2 -0
- package/dist/components/breadcrumb/breadcrumb.d.ts +2 -0
- package/dist/components/breadcrumb/breadcrumb.js +2 -0
- package/dist/components/breadcrumb-item/breadcrumb-item.d.ts +2 -0
- package/dist/components/breadcrumb-item/breadcrumb-item.js +2 -0
- package/dist/components/button/button.d.ts +2 -0
- package/dist/components/button/button.js +2 -0
- package/dist/components/button-group/button-group.d.ts +2 -0
- package/dist/components/button-group/button-group.js +2 -0
- package/dist/components/callout/callout.d.ts +2 -0
- package/dist/components/callout/callout.js +2 -0
- package/dist/components/card/card.d.ts +2 -0
- package/dist/components/card/card.js +2 -0
- package/dist/components/carousel/carousel.d.ts +2 -0
- package/dist/components/carousel/carousel.js +2 -0
- package/dist/components/carousel-item/carousel-item.d.ts +2 -0
- package/dist/components/carousel-item/carousel-item.js +2 -0
- package/dist/components/checkbox/checkbox.d.ts +2 -0
- package/dist/components/checkbox/checkbox.js +2 -0
- package/dist/components/checkbox-group/checkbox-group.d.ts +2 -0
- package/dist/components/checkbox-group/checkbox-group.js +2 -0
- package/dist/components/color-input/color-input.d.ts +2 -0
- package/dist/components/color-input/color-input.js +2 -0
- package/dist/components/color-picker/color-picker.d.ts +2 -0
- package/dist/components/color-picker/color-picker.js +2 -0
- package/dist/components/combobox/combobox.d.ts +2 -0
- package/dist/components/combobox/combobox.js +2 -0
- package/dist/components/combobox-item/combobox-item.d.ts +2 -0
- package/dist/components/combobox-item/combobox-item.js +2 -0
- package/dist/components/comparison/comparison.d.ts +2 -0
- package/dist/components/comparison/comparison.js +2 -0
- package/dist/components/copy/copy.d.ts +2 -0
- package/dist/components/copy/copy.js +291 -0
- package/dist/components/data-table/data-table.d.ts +2 -0
- package/dist/components/data-table/data-table.js +2 -0
- package/dist/components/date/date.d.ts +2 -0
- package/dist/components/date/date.js +2 -0
- package/dist/components/dialog/dialog.d.ts +2 -0
- package/dist/components/dialog/dialog.js +2 -0
- package/dist/components/divider/divider.d.ts +2 -0
- package/dist/components/divider/divider.js +2 -0
- package/dist/components/dropdown/dropdown.d.ts +2 -0
- package/dist/components/dropdown/dropdown.js +2 -0
- package/dist/components/dropdown-item/dropdown-item.d.ts +2 -0
- package/dist/components/dropdown-item/dropdown-item.js +2 -0
- package/dist/components/empty-result/empty-result.d.ts +2 -0
- package/dist/components/empty-result/empty-result.js +2 -0
- package/dist/components/empty-state/empty-state.d.ts +2 -0
- package/dist/components/empty-state/empty-state.js +2 -0
- package/dist/components/expander/expander.d.ts +2 -0
- package/dist/components/expander/expander.js +2 -0
- package/dist/components/field/field.d.ts +2 -0
- package/dist/components/field/field.js +2 -0
- package/dist/components/file-input/file-input.d.ts +2 -0
- package/dist/components/file-input/file-input.js +2 -0
- package/dist/components/filter-bar/filter-bar.d.ts +2 -0
- package/dist/components/filter-bar/filter-bar.js +2 -0
- package/dist/components/form-section/form-section.d.ts +2 -0
- package/dist/components/form-section/form-section.js +2 -0
- package/dist/components/icon/icon.d.ts +2 -0
- package/dist/components/icon/icon.js +2 -0
- package/dist/components/include/include.d.ts +2 -0
- package/dist/components/include/include.js +2 -0
- package/dist/components/index.d.ts +85 -0
- package/dist/components/index.js +86 -0
- package/dist/components/infinite-scroller/infinite-scroller.d.ts +2 -0
- package/dist/components/infinite-scroller/infinite-scroller.js +2 -0
- package/dist/components/intersection-observer/intersection-observer.d.ts +2 -0
- package/dist/components/intersection-observer/intersection-observer.js +2 -0
- package/dist/components/listbox/listbox.d.ts +2 -0
- package/dist/components/listbox/listbox.js +2 -0
- package/dist/components/listbox-item/listbox-item.d.ts +2 -0
- package/dist/components/listbox-item/listbox-item.js +2 -0
- package/dist/components/lorem-ipsum/lorem-ipsum.d.ts +2 -0
- package/dist/components/lorem-ipsum/lorem-ipsum.js +2 -0
- package/dist/components/meter/meter.d.ts +2 -0
- package/dist/components/meter/meter.js +2 -0
- package/dist/components/metric/metric.d.ts +2 -0
- package/dist/components/metric/metric.js +2 -0
- package/dist/components/metric-grid/metric-grid.d.ts +2 -0
- package/dist/components/metric-grid/metric-grid.js +2 -0
- package/dist/components/mutation-observer/mutation-observer.d.ts +2 -0
- package/dist/components/mutation-observer/mutation-observer.js +2 -0
- package/dist/components/navicon/navicon.d.ts +2 -0
- package/dist/components/navicon/navicon.js +2 -0
- package/dist/components/number/number.d.ts +2 -0
- package/dist/components/number/number.js +2 -0
- package/dist/components/number-field/number-field.d.ts +2 -0
- package/dist/components/number-field/number-field.js +2 -0
- package/dist/components/pagination/pagination.d.ts +2 -0
- package/dist/components/pagination/pagination.js +2 -0
- package/dist/components/popover/popover.d.ts +2 -0
- package/dist/components/popover/popover.js +2 -0
- package/dist/components/preview-card/preview-card.d.ts +2 -0
- package/dist/components/preview-card/preview-card.js +2 -0
- package/dist/components/progress/progress.d.ts +2 -0
- package/dist/components/progress/progress.js +2 -0
- package/dist/components/radio/radio.d.ts +2 -0
- package/dist/components/radio/radio.js +2 -0
- package/dist/components/radio-item/radio-item.d.ts +2 -0
- package/dist/components/radio-item/radio-item.js +2 -0
- package/dist/components/random-content/random-content.d.ts +2 -0
- package/dist/components/random-content/random-content.js +2 -0
- package/dist/components/rating/rating.d.ts +2 -0
- package/dist/components/rating/rating.js +2 -0
- package/dist/components/resize-observer/resize-observer.d.ts +2 -0
- package/dist/components/resize-observer/resize-observer.js +2 -0
- package/dist/components/scroll-area/scroll-area.d.ts +2 -0
- package/dist/components/scroll-area/scroll-area.js +2 -0
- package/dist/components/scroller/scroller.d.ts +2 -0
- package/dist/components/scroller/scroller.js +2 -0
- package/dist/components/search-list/search-list.d.ts +2 -0
- package/dist/components/search-list/search-list.js +2 -0
- package/dist/components/select/select.d.ts +2 -0
- package/dist/components/select/select.js +2 -0
- package/dist/components/selection-summary/selection-summary.d.ts +2 -0
- package/dist/components/selection-summary/selection-summary.js +2 -0
- package/dist/components/share/share.d.ts +2 -0
- package/dist/components/share/share.js +2 -0
- package/dist/components/slide-activator/slide-activator.d.ts +2 -0
- package/dist/components/slide-activator/slide-activator.js +2 -0
- package/dist/components/slider/slider.d.ts +2 -0
- package/dist/components/slider/slider.js +2 -0
- package/dist/components/sparkline/sparkline.d.ts +2 -0
- package/dist/components/sparkline/sparkline.js +2 -0
- package/dist/components/spinner/spinner.d.ts +2 -0
- package/dist/components/spinner/spinner.js +2 -0
- package/dist/components/splitter/splitter.d.ts +2 -0
- package/dist/components/splitter/splitter.js +2 -0
- package/dist/components/switch/switch.d.ts +2 -0
- package/dist/components/switch/switch.js +2 -0
- package/dist/components/tab/tab.d.ts +2 -0
- package/dist/components/tab/tab.js +2 -0
- package/dist/components/tab-list/tab-list.d.ts +2 -0
- package/dist/components/tab-list/tab-list.js +2 -0
- package/dist/components/tab-panel/tab-panel.d.ts +2 -0
- package/dist/components/tab-panel/tab-panel.js +2 -0
- package/dist/components/text-area/text-area.d.ts +2 -0
- package/dist/components/text-area/text-area.js +2 -0
- package/dist/components/text-field/text-field.d.ts +2 -0
- package/dist/components/text-field/text-field.js +2 -0
- package/dist/components/text-mask/text-mask.d.ts +2 -0
- package/dist/components/text-mask/text-mask.js +2 -0
- package/dist/components/timed-content/timed-content.d.ts +2 -0
- package/dist/components/timed-content/timed-content.js +2 -0
- package/dist/components/toast/toast.d.ts +2 -0
- package/dist/components/toast/toast.js +2 -0
- package/dist/components/toast-item/toast-item.d.ts +2 -0
- package/dist/components/toast-item/toast-item.js +2 -0
- package/dist/components/toggle-icon/toggle-icon.d.ts +2 -0
- package/dist/components/toggle-icon/toggle-icon.js +2 -0
- package/dist/components/toggle-tag/toggle-tag.d.ts +2 -0
- package/dist/components/toggle-tag/toggle-tag.js +2 -0
- package/dist/components/toolbar/toolbar.d.ts +2 -0
- package/dist/components/toolbar/toolbar.js +2 -0
- package/dist/components/tooltip/tooltip.d.ts +2 -0
- package/dist/components/tooltip/tooltip.js +2 -0
- package/dist/components/transition-group/transition-group.d.ts +2 -0
- package/dist/components/transition-group/transition-group.js +2 -0
- package/dist/components/zoomable-frame/zoomable-frame.d.ts +2 -0
- package/dist/components/zoomable-frame/zoomable-frame.js +2 -0
- package/dist/copy-CvC9vaGw.d.ts +206 -0
- package/dist/copy.styles-DWGvGNTP.js +100 -0
- package/dist/data-table-CITa8DSn.js +247 -0
- package/dist/data-table-DL5RhE0d.d.ts +89 -0
- package/dist/date-CJPmOdi9.js +146 -0
- package/dist/date-DtaTBM71.d.ts +142 -0
- package/dist/decorate-DcF3lt7P.js +9 -0
- package/dist/dialog-Cx46HMaZ.js +983 -0
- package/dist/dialog-N-v0woIy.d.ts +414 -0
- package/dist/divider-9vNsfHW8.js +169 -0
- package/dist/divider-DWuAxcXv.d.ts +79 -0
- package/dist/docs/custom-elements.json +29301 -0
- package/dist/dropdown-BXSKpVX9.js +1123 -0
- package/dist/dropdown-Bo00Vlr5.d.ts +537 -0
- package/dist/dropdown-item-_lIs-Tfd.d.ts +111 -0
- package/dist/dropdown-item-i77cRuN6.js +504 -0
- package/dist/empty-result-B2ln1yFL.js +65 -0
- package/dist/empty-result-B54x_Ab2.d.ts +31 -0
- package/dist/empty-state-BLWjtKUo.js +186 -0
- package/dist/empty-state-SGKjpwp3.d.ts +117 -0
- package/dist/expander-BUev0BmM.d.ts +174 -0
- package/dist/expander-Bwvxj6Oa.js +342 -0
- package/dist/field-BEyS909F.js +163 -0
- package/dist/field-ITx0jVw-.d.ts +69 -0
- package/dist/file-input-BEumLJjg.js +841 -0
- package/dist/file-input-D2D6YC0B.d.ts +378 -0
- package/dist/filter-bar-Bj2QzEn9.d.ts +35 -0
- package/dist/filter-bar-Dcs67aXo.js +66 -0
- package/dist/form-section-BchPetkj.js +83 -0
- package/dist/form-section-xFBTBULQ.d.ts +34 -0
- package/dist/icon-BPVkNsY4.js +165 -0
- package/dist/icon-Ci9CPZJV.d.ts +72 -0
- package/dist/icon-library-D_if7p2h.d.ts +2 -0
- package/dist/include-CQHVVtNs.d.ts +103 -0
- package/dist/include-qNUh_6kT.js +155 -0
- package/dist/index.d.ts +89 -0
- package/dist/index.js +92 -0
- package/dist/infinite-scroller-BmmtnWNt.js +285 -0
- package/dist/infinite-scroller-CuUEAlB9.d.ts +174 -0
- package/dist/intersection-observer-B6TciOAQ.js +503 -0
- package/dist/intersection-observer-B7nmP7Zz.d.ts +418 -0
- package/dist/listbox-C3XXRWGX.js +1257 -0
- package/dist/listbox-DD4ujIJe.d.ts +682 -0
- package/dist/listbox-item-CwD9s3VY.js +135 -0
- package/dist/listbox-item-DQEJWp4Z.d.ts +53 -0
- package/dist/localize-322EtXNX.d.ts +66 -0
- package/dist/lorem-ipsum-B2x3V-v8.js +198 -0
- package/dist/lorem-ipsum-CR82CSuJ.d.ts +130 -0
- package/dist/meter-BC7uaJWf.d.ts +73 -0
- package/dist/meter-BIDyjwFp.js +155 -0
- package/dist/metric-CjlLq_VA.d.ts +36 -0
- package/dist/metric-DbuOcDp_.js +86 -0
- package/dist/metric-grid-C2Pb0Zl3.js +37 -0
- package/dist/metric-grid-C5Xbb1_0.d.ts +27 -0
- package/dist/mutation-observer-BmrZ-GER.d.ts +326 -0
- package/dist/mutation-observer-DS8EBuOp.js +388 -0
- package/dist/navicon-Dic5Qjzb.d.ts +159 -0
- package/dist/navicon-_yMHY27-.js +486 -0
- package/dist/number-BNtNXNF3.js +162 -0
- package/dist/number-BwbnErlB.d.ts +143 -0
- package/dist/number-field-BQHB7UYo.js +726 -0
- package/dist/number-field-odk4lKXM.d.ts +422 -0
- package/dist/pagination-6z2qcf3U.d.ts +322 -0
- package/dist/pagination-DuKPuzdb.js +679 -0
- package/dist/popover-D0sxTU6o.d.ts +259 -0
- package/dist/popover-DJBrJ0za.js +556 -0
- package/dist/preview-card-C7H1FPfd.js +287 -0
- package/dist/preview-card-DitOCZTD.d.ts +86 -0
- package/dist/progress-Db0_axHQ.d.ts +181 -0
- package/dist/progress-DzVk260j.js +494 -0
- package/dist/radio-BtDG9xJM.js +658 -0
- package/dist/radio-CieMa4zU.d.ts +460 -0
- package/dist/radio-item-DIrUStAX.js +264 -0
- package/dist/radio-item-Xq2U3cMu.d.ts +69 -0
- package/dist/random-content-BhSeJFKz.d.ts +380 -0
- package/dist/random-content-BwiirXdG.js +450 -0
- package/dist/rating-4xNsWumY.d.ts +369 -0
- package/dist/rating-C1BcJDIO.js +722 -0
- package/dist/resize-observer-BseSbVWP.d.ts +187 -0
- package/dist/resize-observer-DcrLhddo.js +236 -0
- package/dist/scroll-area-COc1857S.js +127 -0
- package/dist/scroll-area-CVYDf5qY.d.ts +61 -0
- package/dist/scroller-LYgBVyfY.js +590 -0
- package/dist/scroller-bB2rGs7b.d.ts +374 -0
- package/dist/search-list-Clmrg8EV.js +884 -0
- package/dist/search-list-n0GYO7rh.d.ts +777 -0
- package/dist/select-CkZK2jJn.d.ts +506 -0
- package/dist/select-DLIaRnA4.js +690 -0
- package/dist/selection-summary-BVnNJ8Lw.js +48 -0
- package/dist/selection-summary-DmFkGyZI.d.ts +34 -0
- package/dist/share-DPlqP2dc.d.ts +162 -0
- package/dist/share-bsgXZCl7.js +250 -0
- package/dist/sigvelo.d.ts +5 -0
- package/dist/sigvelo.js +5 -0
- package/dist/sigvelo.loader.d.ts +3 -0
- package/dist/sigvelo.loader.js +102 -0
- package/dist/slide-activator-D7bBz69E.d.ts +429 -0
- package/dist/slide-activator-DlxQt9R9.js +798 -0
- package/dist/slider-B0FVsV1o.d.ts +921 -0
- package/dist/slider-B90Il7x3.js +1744 -0
- package/dist/sparkline-CcpTaJ_Z.js +358 -0
- package/dist/sparkline-DlCIt81-.d.ts +235 -0
- package/dist/spinner-C04Dmc0H.js +188 -0
- package/dist/spinner-CZ19x_dC.d.ts +99 -0
- package/dist/splitter-DBDJAzsp.d.ts +325 -0
- package/dist/splitter-MnD4In9H.js +638 -0
- package/dist/switch-CPaEKbog.js +581 -0
- package/dist/switch-Cief9M59.d.ts +248 -0
- package/dist/tab-BcqYGsuW.d.ts +44 -0
- package/dist/tab-C-FtuNmh.js +102 -0
- package/dist/tab-list-B_Ye_Oj9.js +691 -0
- package/dist/tab-list-DDvS8qHr.d.ts +450 -0
- package/dist/tab-panel-BaBl6eep.js +60 -0
- package/dist/tab-panel-BzSJlSfd.d.ts +38 -0
- package/dist/text-area-B_mjCE9W.d.ts +327 -0
- package/dist/text-area-Czixaz-_.js +556 -0
- package/dist/text-field-BClWMp6q.d.ts +424 -0
- package/dist/text-field-inpJfp0A.js +687 -0
- package/dist/text-mask-CNKVKSFp.d.ts +336 -0
- package/dist/text-mask-DDEurj90.js +370 -0
- package/dist/themes/sigvelo.css +10 -0
- package/dist/themes/utilities.css +9 -0
- package/dist/timed-content-D2mGFamc.d.ts +181 -0
- package/dist/timed-content-pvEP4l5V.js +226 -0
- package/dist/toast-BnZaIg6Z.js +636 -0
- package/dist/toast-cEBVK9NQ.d.ts +487 -0
- package/dist/toast-item-BPpJT6vD.d.ts +159 -0
- package/dist/toast-item-IS8IFUEg.js +372 -0
- package/dist/toggle-icon-4oLDeEt4.js +752 -0
- package/dist/toggle-icon-DlwMMWZL.d.ts +359 -0
- package/dist/toggle-tag-1sfTFJtg.js +434 -0
- package/dist/toggle-tag-IVvMGT4R.d.ts +245 -0
- package/dist/toolbar-CABq0ZL1.d.ts +122 -0
- package/dist/toolbar-CEZ0-F-X.js +196 -0
- package/dist/tooltip-DbyoPFNe.js +521 -0
- package/dist/tooltip-ahFthek8.d.ts +192 -0
- package/dist/transition-group-3hnAnwSd.js +801 -0
- package/dist/transition-group-DD_CjSNC.d.ts +608 -0
- package/dist/translations/en.d.ts +6 -0
- package/dist/translations/en.js +75 -0
- package/dist/translations/es.d.ts +6 -0
- package/dist/translations/es.js +75 -0
- package/dist/types/custom-element-jsx.d.ts +13723 -0
- package/dist/utilities/icon-library.d.ts +3 -0
- package/dist/utilities/icon-library.js +93 -0
- package/dist/utilities/localize.d.ts +2 -0
- package/dist/utilities/localize.js +6 -0
- package/dist/zoomable-frame-Cldvj5sE.js +398 -0
- package/dist/zoomable-frame-r6S6587z.d.ts +162 -0
- package/package.json +83 -0
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
import "./icon-BPVkNsY4.js";
|
|
2
|
+
import { t as __decorate } from "./decorate-DcF3lt7P.js";
|
|
3
|
+
import { css, html } from "lit";
|
|
4
|
+
import { property, query } from "lit/decorators.js";
|
|
5
|
+
import hostStyles from "@mcp-b/wc-support/styles/host.styles";
|
|
6
|
+
import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
|
|
7
|
+
import { classMap } from "lit/directives/class-map.js";
|
|
8
|
+
import { parseCssDuration } from "@mcp-b/wc-support/utilities/animate";
|
|
9
|
+
//#region src/components/accordion-item/accordion-item.styles.ts
|
|
10
|
+
var accordion_item_styles_default = css`
|
|
11
|
+
:host {
|
|
12
|
+
/* Private, inherited from <sigvelo-accordion> */
|
|
13
|
+
--duration: inherit;
|
|
14
|
+
--easing: inherit;
|
|
15
|
+
--sigvelo-accordion-border-color: inherit;
|
|
16
|
+
--border-style: inherit;
|
|
17
|
+
--border-width: inherit;
|
|
18
|
+
--border-radius: inherit;
|
|
19
|
+
|
|
20
|
+
display: block;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/* Header */
|
|
24
|
+
#header {
|
|
25
|
+
display: flex;
|
|
26
|
+
width: 100%;
|
|
27
|
+
border: 0;
|
|
28
|
+
align-items: center;
|
|
29
|
+
padding: 1em;
|
|
30
|
+
gap: 1em;
|
|
31
|
+
background: transparent;
|
|
32
|
+
color: inherit;
|
|
33
|
+
font-family: inherit;
|
|
34
|
+
font-weight: var(--sigvelo-font-weight-semibold);
|
|
35
|
+
font-size: 0.9375em;
|
|
36
|
+
text-align: inherit;
|
|
37
|
+
cursor: pointer;
|
|
38
|
+
user-select: none;
|
|
39
|
+
|
|
40
|
+
&:focus {
|
|
41
|
+
outline: none;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
&:focus-visible {
|
|
45
|
+
outline: var(--sigvelo-focus-ring);
|
|
46
|
+
outline-offset: -2px;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
:host(:state(disabled)) #header {
|
|
51
|
+
cursor: not-allowed;
|
|
52
|
+
opacity: 0.5;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
:host([icon-placement="start"]) #header {
|
|
56
|
+
flex-direction: row-reverse;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/* Label */
|
|
60
|
+
#label {
|
|
61
|
+
display: flex;
|
|
62
|
+
flex: 1;
|
|
63
|
+
align-items: center;
|
|
64
|
+
|
|
65
|
+
::slotted(sigvelo-icon) {
|
|
66
|
+
margin-inline-end: 0.5em;
|
|
67
|
+
font-size: 1.25em;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* Icon */
|
|
72
|
+
#icon {
|
|
73
|
+
display: flex;
|
|
74
|
+
align-items: center;
|
|
75
|
+
font-size: 1.25em;
|
|
76
|
+
transition: rotate var(--duration) var(--easing);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
:host(:state(expanded):dir(ltr)) #icon {
|
|
80
|
+
rotate: 180deg;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
:host(:state(expanded):dir(rtl)) #icon {
|
|
84
|
+
rotate: -180deg;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/* Icon position */
|
|
88
|
+
#header {
|
|
89
|
+
.icon-start {
|
|
90
|
+
flex-direction: row;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.icon-end {
|
|
94
|
+
flex-direction: row;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.icon-start #icon {
|
|
98
|
+
order: -1;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/* Body */
|
|
103
|
+
#body {
|
|
104
|
+
will-change: height;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
:host(:not(:state(expanded))) #body {
|
|
108
|
+
height: 0;
|
|
109
|
+
overflow: hidden;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
:host(:state(expanded)) #body {
|
|
113
|
+
overflow: visible;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/* Content */
|
|
117
|
+
#content {
|
|
118
|
+
padding: 0 1em 1em;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/* Normal variant */
|
|
122
|
+
:host([variant="normal"]) {
|
|
123
|
+
border-bottom: var(--border-style) var(--border-width) var(--sigvelo-accordion-border-color);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
:host([variant="normal"][data-accordion-item-first]) {
|
|
127
|
+
border-top: var(--border-style) var(--border-width) var(--sigvelo-accordion-border-color);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/* Contained variant */
|
|
131
|
+
:host([variant="contained"][data-accordion-item-first]) #header {
|
|
132
|
+
border-top-right-radius: var(--border-radius);
|
|
133
|
+
border-top-left-radius: var(--border-radius);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
:host([variant="contained"][data-accordion-item-last]) #header {
|
|
137
|
+
border-bottom-right-radius: var(--border-radius);
|
|
138
|
+
border-bottom-left-radius: var(--border-radius);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
:host([variant="contained"]:not([data-accordion-item-last])) {
|
|
142
|
+
border-bottom: var(--border-style) var(--border-width) var(--sigvelo-accordion-border-color);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/* Separated variant */
|
|
146
|
+
:host([variant="separated"]) {
|
|
147
|
+
border: var(--border-style) var(--border-width) var(--sigvelo-color-neutral-bg-muted);
|
|
148
|
+
border-radius: var(--border-radius);
|
|
149
|
+
background-color: var(--sigvelo-color-surface);
|
|
150
|
+
box-shadow: var(--sigvelo-elevation-hairline);
|
|
151
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
:host([variant="separated"]:state(expanded)) {
|
|
155
|
+
border-color: var(--sigvelo-accordion-border-color);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
:host([variant="separated"]) #header {
|
|
159
|
+
border-radius: inherit;
|
|
160
|
+
}
|
|
161
|
+
`;
|
|
162
|
+
//#endregion
|
|
163
|
+
//#region src/components/accordion-item/accordion-item.ts
|
|
164
|
+
/**
|
|
165
|
+
* <sigvelo-accordion-item>
|
|
166
|
+
*
|
|
167
|
+
* @summary An individual section within an accordion, consisting of a header and content that shows when expanded.
|
|
168
|
+
* @tag sigvelo-accordion-item
|
|
169
|
+
* @documentation https://design-system.sigvelo.com/docs/components/accordion-item
|
|
170
|
+
* @status stable
|
|
171
|
+
* @since 1.0
|
|
172
|
+
*
|
|
173
|
+
* @dependency sigvelo-icon
|
|
174
|
+
*
|
|
175
|
+
* @slot - The content to show when expanded.
|
|
176
|
+
* @slot icon - The expand/collapse icon.
|
|
177
|
+
* @slot label - The accordion item's label. For plain-text labels, you can use the `label` attribute instead.
|
|
178
|
+
*
|
|
179
|
+
* @csspart header - The accordion item's header that contains the label and icon.
|
|
180
|
+
* @csspart label - The label container.
|
|
181
|
+
* @csspart icon - The icon container.
|
|
182
|
+
* @csspart body - The accordion item's body that contains the content.
|
|
183
|
+
* @csspart content - The content wrapper inside the body.
|
|
184
|
+
*
|
|
185
|
+
* @cssstate disabled - Applies when the accordion item is disabled.
|
|
186
|
+
* @cssstate expanded - Applies when the accordion item is expanded.
|
|
187
|
+
*
|
|
188
|
+
* @example Default
|
|
189
|
+
* This component must only be used within an accordion. You can see some examples of accordion items being used in the accordion documentation.
|
|
190
|
+
*/
|
|
191
|
+
var SigveloAccordionItem = class extends SigveloElement {
|
|
192
|
+
constructor(..._args) {
|
|
193
|
+
super(..._args);
|
|
194
|
+
this.expanded = false;
|
|
195
|
+
this.variant = "normal";
|
|
196
|
+
this.iconPlacement = "end";
|
|
197
|
+
this.disabled = false;
|
|
198
|
+
}
|
|
199
|
+
static {
|
|
200
|
+
this.styles = [hostStyles, accordion_item_styles_default];
|
|
201
|
+
}
|
|
202
|
+
/** Sets focus to the accordion item. */
|
|
203
|
+
focus() {
|
|
204
|
+
this.header.focus();
|
|
205
|
+
}
|
|
206
|
+
/** Removes focus from the accordion item. */
|
|
207
|
+
blur() {
|
|
208
|
+
this.header.blur();
|
|
209
|
+
}
|
|
210
|
+
updated(changedProperties) {
|
|
211
|
+
if (changedProperties.has("disabled")) this.customStates.set("disabled", this.disabled);
|
|
212
|
+
if (changedProperties.has("expanded")) this.customStates.set("expanded", this.expanded);
|
|
213
|
+
}
|
|
214
|
+
/** Animate the expansion of the body - called by the accordion controller */
|
|
215
|
+
async animateExpand() {
|
|
216
|
+
const prefersReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
217
|
+
const computedStyle = getComputedStyle(this);
|
|
218
|
+
const duration = prefersReducedMotion ? 0 : parseCssDuration(computedStyle.getPropertyValue("--duration"));
|
|
219
|
+
const easing = computedStyle.getPropertyValue("--easing");
|
|
220
|
+
this.body.style.height = "0px";
|
|
221
|
+
this.body.style.overflow = "hidden";
|
|
222
|
+
const targetHeight = this.content.scrollHeight;
|
|
223
|
+
await this.body.animate([{ height: "0px" }, { height: `${targetHeight}px` }], {
|
|
224
|
+
duration,
|
|
225
|
+
easing
|
|
226
|
+
}).finished;
|
|
227
|
+
this.body.style.removeProperty("height");
|
|
228
|
+
this.body.style.removeProperty("overflow");
|
|
229
|
+
}
|
|
230
|
+
/** Animate the collapse of the body - called by the accordion controller */
|
|
231
|
+
async animateCollapse() {
|
|
232
|
+
const prefersReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
233
|
+
const computedStyle = getComputedStyle(this);
|
|
234
|
+
const duration = prefersReducedMotion ? 0 : parseCssDuration(computedStyle.getPropertyValue("--duration"));
|
|
235
|
+
const easing = computedStyle.getPropertyValue("--easing");
|
|
236
|
+
if (this.body && (!this.body.style.height || this.body.style.height === "auto")) {
|
|
237
|
+
this.body.style.height = `${this.body.scrollHeight}px`;
|
|
238
|
+
this.body.offsetHeight;
|
|
239
|
+
}
|
|
240
|
+
const currentHeight = this.body.scrollHeight;
|
|
241
|
+
this.body.style.height = `${currentHeight}px`;
|
|
242
|
+
this.body.style.overflow = "hidden";
|
|
243
|
+
await this.body.animate([{ height: `${currentHeight}px` }, { height: "0px" }], {
|
|
244
|
+
duration,
|
|
245
|
+
easing
|
|
246
|
+
}).finished;
|
|
247
|
+
this.body.style.removeProperty("height");
|
|
248
|
+
this.body.style.removeProperty("overflow");
|
|
249
|
+
}
|
|
250
|
+
render() {
|
|
251
|
+
return html`
|
|
252
|
+
<button
|
|
253
|
+
type="button"
|
|
254
|
+
id="header"
|
|
255
|
+
part="header"
|
|
256
|
+
class=${classMap({
|
|
257
|
+
"icon-start": this.iconPlacement === "start",
|
|
258
|
+
"icon-end": this.iconPlacement === "end"
|
|
259
|
+
})}
|
|
260
|
+
aria-labelledby="label"
|
|
261
|
+
aria-controls="body"
|
|
262
|
+
aria-expanded=${this.expanded ? "true" : "false"}
|
|
263
|
+
?disabled=${this.disabled}
|
|
264
|
+
>
|
|
265
|
+
<div id="label" part="label">
|
|
266
|
+
<slot name="label">${this.label}</slot>
|
|
267
|
+
</div>
|
|
268
|
+
<div id="icon" part="icon">
|
|
269
|
+
<slot name="icon">
|
|
270
|
+
<sigvelo-icon id="default-icon" library="system" name="chevron-down"></sigvelo-icon>
|
|
271
|
+
</slot>
|
|
272
|
+
</div>
|
|
273
|
+
</button>
|
|
274
|
+
|
|
275
|
+
<div
|
|
276
|
+
id="body"
|
|
277
|
+
part="body"
|
|
278
|
+
aria-hidden=${this.expanded ? "false" : "true"}
|
|
279
|
+
.inert=${!this.expanded}
|
|
280
|
+
>
|
|
281
|
+
<div id="content" part="content">
|
|
282
|
+
<slot></slot>
|
|
283
|
+
</div>
|
|
284
|
+
</div>
|
|
285
|
+
`;
|
|
286
|
+
}
|
|
287
|
+
};
|
|
288
|
+
__decorate([query("#body")], SigveloAccordionItem.prototype, "body", void 0);
|
|
289
|
+
__decorate([query("#content")], SigveloAccordionItem.prototype, "content", void 0);
|
|
290
|
+
__decorate([query("#header")], SigveloAccordionItem.prototype, "header", void 0);
|
|
291
|
+
__decorate([property({
|
|
292
|
+
type: Boolean,
|
|
293
|
+
reflect: true
|
|
294
|
+
})], SigveloAccordionItem.prototype, "expanded", void 0);
|
|
295
|
+
__decorate([property()], SigveloAccordionItem.prototype, "label", void 0);
|
|
296
|
+
__decorate([property({ reflect: true })], SigveloAccordionItem.prototype, "variant", void 0);
|
|
297
|
+
__decorate([property({
|
|
298
|
+
attribute: "icon-placement",
|
|
299
|
+
reflect: true
|
|
300
|
+
})], SigveloAccordionItem.prototype, "iconPlacement", void 0);
|
|
301
|
+
__decorate([property({
|
|
302
|
+
type: Boolean,
|
|
303
|
+
reflect: true
|
|
304
|
+
})], SigveloAccordionItem.prototype, "disabled", void 0);
|
|
305
|
+
customElements.define("sigvelo-accordion-item", SigveloAccordionItem);
|
|
306
|
+
//#endregion
|
|
307
|
+
export { SigveloAccordionItem as t };
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { CSSResultGroup, PropertyValues } from "lit";
|
|
2
|
+
import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
|
|
3
|
+
|
|
4
|
+
//#region src/components/accordion-item/accordion-item.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* <sigvelo-accordion-item>
|
|
7
|
+
*
|
|
8
|
+
* @summary An individual section within an accordion, consisting of a header and content that shows when expanded.
|
|
9
|
+
* @tag sigvelo-accordion-item
|
|
10
|
+
* @documentation https://design-system.sigvelo.com/docs/components/accordion-item
|
|
11
|
+
* @status stable
|
|
12
|
+
* @since 1.0
|
|
13
|
+
*
|
|
14
|
+
* @dependency sigvelo-icon
|
|
15
|
+
*
|
|
16
|
+
* @slot - The content to show when expanded.
|
|
17
|
+
* @slot icon - The expand/collapse icon.
|
|
18
|
+
* @slot label - The accordion item's label. For plain-text labels, you can use the `label` attribute instead.
|
|
19
|
+
*
|
|
20
|
+
* @csspart header - The accordion item's header that contains the label and icon.
|
|
21
|
+
* @csspart label - The label container.
|
|
22
|
+
* @csspart icon - The icon container.
|
|
23
|
+
* @csspart body - The accordion item's body that contains the content.
|
|
24
|
+
* @csspart content - The content wrapper inside the body.
|
|
25
|
+
*
|
|
26
|
+
* @cssstate disabled - Applies when the accordion item is disabled.
|
|
27
|
+
* @cssstate expanded - Applies when the accordion item is expanded.
|
|
28
|
+
*
|
|
29
|
+
* @example Default
|
|
30
|
+
* This component must only be used within an accordion. You can see some examples of accordion items being used in the accordion documentation.
|
|
31
|
+
*/
|
|
32
|
+
declare class SigveloAccordionItem extends SigveloElement {
|
|
33
|
+
static styles: CSSResultGroup;
|
|
34
|
+
body: HTMLElement;
|
|
35
|
+
content: HTMLElement;
|
|
36
|
+
header: HTMLButtonElement;
|
|
37
|
+
expanded: boolean;
|
|
38
|
+
/** The accordion item's label. If you need to provide HTML in the label, use the `label` slot instead. */
|
|
39
|
+
label: string;
|
|
40
|
+
/** The accordion item's variant. This will be set automatically by the accordion controller. */
|
|
41
|
+
variant: "normal" | "contained" | "separated" | "unstyled";
|
|
42
|
+
/** The position of the expand/collapse icon. This will be set automatically by the accordion controller. */
|
|
43
|
+
iconPlacement: "start" | "end";
|
|
44
|
+
/** Disables the accordion item. */
|
|
45
|
+
disabled: boolean;
|
|
46
|
+
/** Sets focus to the accordion item. */
|
|
47
|
+
focus(): void;
|
|
48
|
+
/** Removes focus from the accordion item. */
|
|
49
|
+
blur(): void;
|
|
50
|
+
updated(changedProperties: PropertyValues<this>): void;
|
|
51
|
+
/** Animate the expansion of the body - called by the accordion controller */
|
|
52
|
+
animateExpand(): Promise<void>;
|
|
53
|
+
/** Animate the collapse of the body - called by the accordion controller */
|
|
54
|
+
animateCollapse(): Promise<void>;
|
|
55
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
56
|
+
}
|
|
57
|
+
declare global {
|
|
58
|
+
interface HTMLElementTagNameMap {
|
|
59
|
+
"sigvelo-accordion-item": SigveloAccordionItem;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//#endregion
|
|
63
|
+
export { SigveloAccordionItem as t };
|