@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,225 @@
|
|
|
1
|
+
import { t as __decorate } from "./decorate-DcF3lt7P.js";
|
|
2
|
+
import { css, html } from "lit";
|
|
3
|
+
import { property, query } from "lit/decorators.js";
|
|
4
|
+
import hostStyles from "@mcp-b/wc-support/styles/host.styles";
|
|
5
|
+
import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
|
|
6
|
+
import { classMap } from "lit/directives/class-map.js";
|
|
7
|
+
//#region src/components/combobox-item/combobox-item.styles.ts
|
|
8
|
+
var combobox_item_styles_default = css`
|
|
9
|
+
:host {
|
|
10
|
+
display: flex;
|
|
11
|
+
position: relative;
|
|
12
|
+
align-items: center;
|
|
13
|
+
padding: 0.33em 1em;
|
|
14
|
+
border-radius: var(--sigvelo-radius-sm);
|
|
15
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
16
|
+
font-size: 0.9375em;
|
|
17
|
+
line-height: var(--sigvelo-leading-relaxed);
|
|
18
|
+
cursor: pointer;
|
|
19
|
+
user-select: none;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* Disabled state */
|
|
23
|
+
:host(:state(disabled)) {
|
|
24
|
+
cursor: not-allowed;
|
|
25
|
+
opacity: 0.5;
|
|
26
|
+
pointer-events: none;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/* Hover state for non-selected items */
|
|
30
|
+
@media (hover: hover) {
|
|
31
|
+
:host(:hover:not(:state(disabled))) {
|
|
32
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
33
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/* Active state (keyboard navigation) for non-selected items */
|
|
38
|
+
:host(:state(active)) {
|
|
39
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
40
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* Keyboard focus visible on active items */
|
|
44
|
+
:host(:state(active)[data-keyboard-nav]) {
|
|
45
|
+
z-index: 1;
|
|
46
|
+
outline: var(--sigvelo-focus-ring);
|
|
47
|
+
outline-offset: var(--sigvelo-focus-offset);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/* Checkmark (hidden by default) */
|
|
51
|
+
.checkmark {
|
|
52
|
+
visibility: hidden;
|
|
53
|
+
flex: 0 0 auto;
|
|
54
|
+
width: fit-content;
|
|
55
|
+
margin-inline-start: -0.5em;
|
|
56
|
+
margin-inline-end: 0.25em;
|
|
57
|
+
color: var(--sigvelo-color-primary-text);
|
|
58
|
+
font-size: 1.25em;
|
|
59
|
+
opacity: 0;
|
|
60
|
+
transition:
|
|
61
|
+
opacity var(--sigvelo-motion-duration-interaction) ease,
|
|
62
|
+
visibility var(--sigvelo-motion-duration-interaction) ease;
|
|
63
|
+
|
|
64
|
+
/* Show checkmark when selected (works for both single and multiple mode) */
|
|
65
|
+
&.selected {
|
|
66
|
+
visibility: visible;
|
|
67
|
+
opacity: 1;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/* Icon slot */
|
|
72
|
+
.icon {
|
|
73
|
+
display: flex;
|
|
74
|
+
flex: 0 0 auto;
|
|
75
|
+
align-items: center;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.icon ::slotted(*) {
|
|
79
|
+
margin-inline-end: 0.5em !important;
|
|
80
|
+
font-size: 1.25em;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/* Label */
|
|
84
|
+
.label {
|
|
85
|
+
flex: 1 1 auto;
|
|
86
|
+
min-width: 0;
|
|
87
|
+
overflow: hidden;
|
|
88
|
+
text-overflow: ellipsis;
|
|
89
|
+
white-space: nowrap;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/* Details */
|
|
93
|
+
.details {
|
|
94
|
+
display: flex;
|
|
95
|
+
flex: 0 0 auto;
|
|
96
|
+
align-items: center;
|
|
97
|
+
justify-content: end;
|
|
98
|
+
margin-inline-start: 2em;
|
|
99
|
+
color: var(--sigvelo-color-text-muted);
|
|
100
|
+
font-size: 0.875em;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
:host(:state(selected)) .details {
|
|
104
|
+
color: var(--sigvelo-color-text-muted);
|
|
105
|
+
opacity: 0.8;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/* Multiple mode */
|
|
109
|
+
:host(:has(.multiple)):hover:not(:state(disabled)):not(:state(selected)) {
|
|
110
|
+
background-color: var(--sigvelo-color-neutral-bg-muted);
|
|
111
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
:host(:has(.multiple)):state(active):not(:state(selected)) {
|
|
115
|
+
background-color: var(--sigvelo-color-neutral-bg-muted);
|
|
116
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
117
|
+
}
|
|
118
|
+
`;
|
|
119
|
+
//#endregion
|
|
120
|
+
//#region src/components/combobox-item/combobox-item.ts
|
|
121
|
+
/**
|
|
122
|
+
* <sigvelo-combobox-item>
|
|
123
|
+
*
|
|
124
|
+
* @summary An item that can be selected from a combobox control.
|
|
125
|
+
* @tag sigvelo-combobox-item
|
|
126
|
+
* @documentation https://design-system.sigvelo.com/docs/components/combobox-item
|
|
127
|
+
* @status stable
|
|
128
|
+
* @since 1.0
|
|
129
|
+
*
|
|
130
|
+
* @dependency sigvelo-icon
|
|
131
|
+
*
|
|
132
|
+
* @slot - The item's label.
|
|
133
|
+
* @slot icon - An optional icon to display at the start of the item.
|
|
134
|
+
* @slot details - Optional details to display at the end of the item.
|
|
135
|
+
*
|
|
136
|
+
* @csspart icon - The container that wraps the icon slot.
|
|
137
|
+
* @csspart label - The container that wraps the item's label.
|
|
138
|
+
* @csspart details - The container that wraps the details slot.
|
|
139
|
+
* @csspart checkmark - The checkmark icon shown when selected in multiple mode.
|
|
140
|
+
*
|
|
141
|
+
* @cssstate selected - Applied when the item is selected.
|
|
142
|
+
* @cssstate disabled - Applied when the item is disabled.
|
|
143
|
+
* @cssstate active - Applied when the item is active (keyboard navigation).
|
|
144
|
+
*
|
|
145
|
+
* @example Default
|
|
146
|
+
* This component must only be used within a combobox. You can see some examples of combobox items being used in the combobox documentation.
|
|
147
|
+
*/
|
|
148
|
+
var SigveloComboboxItem = class extends SigveloElement {
|
|
149
|
+
constructor(..._args) {
|
|
150
|
+
super(..._args);
|
|
151
|
+
this.disabled = false;
|
|
152
|
+
this.selected = false;
|
|
153
|
+
this.active = false;
|
|
154
|
+
this.combobox = null;
|
|
155
|
+
}
|
|
156
|
+
static {
|
|
157
|
+
this.observeSlots = true;
|
|
158
|
+
}
|
|
159
|
+
static {
|
|
160
|
+
this.styles = [hostStyles, combobox_item_styles_default];
|
|
161
|
+
}
|
|
162
|
+
connectedCallback() {
|
|
163
|
+
super.connectedCallback();
|
|
164
|
+
this.setAttribute("role", "option");
|
|
165
|
+
this.setAttribute("tabindex", "-1");
|
|
166
|
+
}
|
|
167
|
+
/** Gets the text content from the combobox item's label. */
|
|
168
|
+
getLabelText() {
|
|
169
|
+
if (this.defaultSlot) return this.defaultSlot.assignedNodes({ flatten: true }).map((node) => node.textContent || "").join("").trim();
|
|
170
|
+
return this.textContent?.trim() || "";
|
|
171
|
+
}
|
|
172
|
+
updated(changedProperties) {
|
|
173
|
+
if (changedProperties.has("selected")) {
|
|
174
|
+
this.setAttribute("aria-selected", this.selected ? "true" : "false");
|
|
175
|
+
this.customStates.set("selected", this.selected);
|
|
176
|
+
}
|
|
177
|
+
if (changedProperties.has("disabled")) {
|
|
178
|
+
this.setAttribute("aria-disabled", this.disabled ? "true" : "false");
|
|
179
|
+
this.customStates.set("disabled", this.disabled);
|
|
180
|
+
}
|
|
181
|
+
if (changedProperties.has("active")) this.customStates.set("active", this.active);
|
|
182
|
+
}
|
|
183
|
+
render() {
|
|
184
|
+
const isMultiple = this.combobox?.multiple ?? false;
|
|
185
|
+
return html`
|
|
186
|
+
<sigvelo-icon
|
|
187
|
+
part="checkmark"
|
|
188
|
+
class=${classMap({
|
|
189
|
+
checkmark: true,
|
|
190
|
+
selected: this.selected,
|
|
191
|
+
multiple: isMultiple
|
|
192
|
+
})}
|
|
193
|
+
library="system"
|
|
194
|
+
name="check"
|
|
195
|
+
></sigvelo-icon>
|
|
196
|
+
|
|
197
|
+
<span part="icon" class="icon">
|
|
198
|
+
<slot name="icon"></slot>
|
|
199
|
+
</span>
|
|
200
|
+
|
|
201
|
+
<span part="label" class="label">
|
|
202
|
+
<slot></slot>
|
|
203
|
+
</span>
|
|
204
|
+
|
|
205
|
+
<span part="details" class="details">
|
|
206
|
+
<slot name="details"></slot>
|
|
207
|
+
</span>
|
|
208
|
+
`;
|
|
209
|
+
}
|
|
210
|
+
};
|
|
211
|
+
__decorate([query("slot:not([name])")], SigveloComboboxItem.prototype, "defaultSlot", void 0);
|
|
212
|
+
__decorate([property()], SigveloComboboxItem.prototype, "value", void 0);
|
|
213
|
+
__decorate([property({
|
|
214
|
+
type: Boolean,
|
|
215
|
+
reflect: true
|
|
216
|
+
})], SigveloComboboxItem.prototype, "disabled", void 0);
|
|
217
|
+
__decorate([property({ type: Boolean })], SigveloComboboxItem.prototype, "selected", void 0);
|
|
218
|
+
__decorate([property({
|
|
219
|
+
type: Boolean,
|
|
220
|
+
reflect: true
|
|
221
|
+
})], SigveloComboboxItem.prototype, "active", void 0);
|
|
222
|
+
__decorate([property({ attribute: false })], SigveloComboboxItem.prototype, "combobox", void 0);
|
|
223
|
+
customElements.define("sigvelo-combobox-item", SigveloComboboxItem);
|
|
224
|
+
//#endregion
|
|
225
|
+
export { SigveloComboboxItem as t };
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { CSSResultGroup, PropertyValues } from "lit";
|
|
2
|
+
import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
|
|
3
|
+
|
|
4
|
+
//#region src/components/comparison/comparison.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* <sigvelo-comparison>
|
|
7
|
+
*
|
|
8
|
+
* @summary Displays two elements side-by-side with a draggable divider, allowing users to adjust the visible portions
|
|
9
|
+
* @tag sigvelo-comparison
|
|
10
|
+
* for direct visual comparison.
|
|
11
|
+
* @documentation https://design-system.sigvelo.com/docs/components/comparison
|
|
12
|
+
* @status stable
|
|
13
|
+
* @since 1.0
|
|
14
|
+
*
|
|
15
|
+
* @dependency sigvelo-icon
|
|
16
|
+
*
|
|
17
|
+
* @slot start - The content to show on the left/start side or top side, depending on orientation.
|
|
18
|
+
* @slot end - The content to show on the right/end side or bottom side, depending on orientation.
|
|
19
|
+
* @slot handle-icon - A custom icon to use for the divider's handle.
|
|
20
|
+
*
|
|
21
|
+
* @event sigvelo-resize - Dispatched when the comparison's handle is moved.
|
|
22
|
+
*
|
|
23
|
+
* @csspart start - The container for the start content.
|
|
24
|
+
* @csspart end - The container for the end content.
|
|
25
|
+
* @csspart divider - The draggable divider between start and end.
|
|
26
|
+
* @csspart handle - The visual handle within the divider.
|
|
27
|
+
*
|
|
28
|
+
* @cssstate disabled - Applied when the comparison is disabled.
|
|
29
|
+
* @cssstate dragging - Applied when the divider is being dragged.
|
|
30
|
+
* @cssstate focused - Applied when the divider has focus.
|
|
31
|
+
*
|
|
32
|
+
* @example Default
|
|
33
|
+
* ```html
|
|
34
|
+
* <sigvelo-comparison>
|
|
35
|
+
* <img slot="start" src="https://images.unsplash.com/photo-1671707696618-ca0685b0012e?q=80&w=1000&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="An orange cat smiles up at the camera">
|
|
36
|
+
* <img slot="end" src="https://images.unsplash.com/photo-1671707696618-ca0685b0012e?q=80&w=1000&sat=-100&bri=-15&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="The same orange cat in a grayscale photo">
|
|
37
|
+
* </sigvelo-comparison>
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* @example Providing content
|
|
41
|
+
* Comparisons are commonly used for images, but you can compare just about any content. Use the `start` and `end` slots to place content on each side of the comparison. For best results, use elements that shares the same dimensions.
|
|
42
|
+
*
|
|
43
|
+
* ```html
|
|
44
|
+
* <sigvelo-comparison style="max-width: 380px;">
|
|
45
|
+
* <sigvelo-card slot="start" inert data-theme="light">
|
|
46
|
+
* <h3 slot="header">Secret Scientists</h3>
|
|
47
|
+
* When nobody's watching, cats conduct elaborate scientific experiments to determine if gravity still works by knocking things off shelves with deliberate precision.
|
|
48
|
+
* <sigvelo-button slot="footer" color="primary">Tell me more</sigvelo-button>
|
|
49
|
+
* <sigvelo-button slot="footer">I'm skeptical</sigvelo-button>
|
|
50
|
+
* </sigvelo-card>
|
|
51
|
+
*
|
|
52
|
+
* <sigvelo-card slot="end" inert data-theme="dark">
|
|
53
|
+
* <h3 slot="header">Secret Scientists</h3>
|
|
54
|
+
* When nobody's watching, cats conduct elaborate scientific experiments to determine if gravity still works by knocking things off shelves with deliberate precision.
|
|
55
|
+
* <sigvelo-button slot="footer" color="primary">Tell me more</sigvelo-button>
|
|
56
|
+
* <sigvelo-button slot="footer">I'm skeptical</sigvelo-button>
|
|
57
|
+
* </sigvelo-card>
|
|
58
|
+
* </sigvelo-comparison>
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* **Note:** To prevent interactions while comparing, add the [`inert`](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/inert) attribute to both slotted elements as shown above.
|
|
62
|
+
*
|
|
63
|
+
* @example Setting the initial position
|
|
64
|
+
* Set the initial position of the comparison using the `position` attribute.
|
|
65
|
+
*
|
|
66
|
+
* ```html
|
|
67
|
+
* <sigvelo-comparison position=".75">
|
|
68
|
+
* <img slot="start" src="https://images.unsplash.com/photo-1736593494119-d0a69181b414?q=80&w=1000&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="A kitten lays in its bed and cuddles a pillow">
|
|
69
|
+
* <img slot="end" src="https://images.unsplash.com/photo-1736593494119-d0a69181b414?q=80&w=1000&sat=-100&bri=-15&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="The same kitten in a grayscale photo">
|
|
70
|
+
* </sigvelo-comparison>
|
|
71
|
+
* ```
|
|
72
|
+
*
|
|
73
|
+
* @example Changing the orientation
|
|
74
|
+
* Set the `orientation` attribute to `vertical` to make the comparison vertical.
|
|
75
|
+
*
|
|
76
|
+
* ```html
|
|
77
|
+
* <sigvelo-comparison orientation="vertical">
|
|
78
|
+
* <img slot="start" src="https://images.unsplash.com/photo-1622576041274-ae5dc580175d?q=80&w=800&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="Two kittens nestled up on a blanket">
|
|
79
|
+
* <img slot="end" src="https://images.unsplash.com/photo-1622576041274-ae5dc580175d?q=80&w=800&sat=-100&bri=-15&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="The same two kittens in a grayscale photo">
|
|
80
|
+
* </sigvelo-comparison>
|
|
81
|
+
* ```
|
|
82
|
+
*
|
|
83
|
+
* @example Using a custom icon
|
|
84
|
+
* Slot an icon or similar in the `handle-icon` slot to use a custom icon in the handle.
|
|
85
|
+
*
|
|
86
|
+
* ```html
|
|
87
|
+
* <sigvelo-comparison position=".66">
|
|
88
|
+
* <sigvelo-icon slot="handle-icon" name="arrow-bar-both"></sigvelo-icon>
|
|
89
|
+
* <img slot="start" src="https://images.unsplash.com/photo-1719310694054-6fc99b7c14ec?q=80&w=1000&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="An orange kitten explores a tall grassy yard">
|
|
90
|
+
* <img slot="end" src="https://images.unsplash.com/photo-1719310694054-6fc99b7c14ec?q=80&w=1000&sat=-100&bri=-15&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="The same kitten in a grayscale photo">
|
|
91
|
+
* </sigvelo-comparison>
|
|
92
|
+
* ```
|
|
93
|
+
*
|
|
94
|
+
* @example Disabling
|
|
95
|
+
* Add the `disabled` attribute to lock the comparison in place. You can still change the position programmatically when disabled.
|
|
96
|
+
*
|
|
97
|
+
* ```html
|
|
98
|
+
* <sigvelo-comparison position=".40" disabled>
|
|
99
|
+
* <img slot="start" src="https://images.unsplash.com/photo-1601217156006-3358e1514676?q=80&w=1000&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="A kitten peeks out from inside a cardboard box">
|
|
100
|
+
* <img slot="end" src="https://images.unsplash.com/photo-1601217156006-3358e1514676?q=80&w=1000&sat=-100&bri=-15&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D" alt="The same kitten in a grayscale photo">
|
|
101
|
+
* </sigvelo-comparison>
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
declare class SigveloComparison extends SigveloElement {
|
|
105
|
+
static styles: CSSResultGroup;
|
|
106
|
+
private localize;
|
|
107
|
+
private dragHandler?;
|
|
108
|
+
private dragStartPosition;
|
|
109
|
+
private dragStartClientX;
|
|
110
|
+
private dragStartClientY;
|
|
111
|
+
private divider;
|
|
112
|
+
isDragging: boolean;
|
|
113
|
+
/** The position of the divider as a decimal (0-1). */
|
|
114
|
+
position: number;
|
|
115
|
+
/** The orientation of the comparison slider, either 'horizontal' or 'vertical'. */
|
|
116
|
+
orientation: "horizontal" | "vertical";
|
|
117
|
+
/** Disables the comparison component, preventing it from being focused and adjusted. */
|
|
118
|
+
disabled: boolean;
|
|
119
|
+
firstUpdated(): void;
|
|
120
|
+
updated(changedProperties: PropertyValues<this>): void;
|
|
121
|
+
disconnectedCallback(): void;
|
|
122
|
+
private handleFocus;
|
|
123
|
+
private handleBlur;
|
|
124
|
+
private handleKeydown;
|
|
125
|
+
private setupDragging;
|
|
126
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
127
|
+
}
|
|
128
|
+
declare global {
|
|
129
|
+
interface HTMLElementTagNameMap {
|
|
130
|
+
"sigvelo-comparison": SigveloComparison;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
//#endregion
|
|
134
|
+
export { SigveloComparison as t };
|