@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,126 @@
|
|
|
1
|
+
import { t as __decorate } from "./decorate-DcF3lt7P.js";
|
|
2
|
+
import { t as SigveloDialog } from "./dialog-Cx46HMaZ.js";
|
|
3
|
+
import { css, html } from "lit";
|
|
4
|
+
import { property } 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
|
+
//#region src/components/alert-dialog/alert-dialog.styles.ts
|
|
8
|
+
var alert_dialog_styles_default = css`
|
|
9
|
+
#actions {
|
|
10
|
+
display: flex;
|
|
11
|
+
gap: 0.5em;
|
|
12
|
+
justify-content: flex-end;
|
|
13
|
+
}
|
|
14
|
+
`;
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region src/components/alert-dialog/alert-dialog.ts
|
|
17
|
+
/**
|
|
18
|
+
* <sigvelo-alert-dialog>
|
|
19
|
+
*
|
|
20
|
+
* @summary A modal dialog that requires an explicit user decision before it can be dismissed.
|
|
21
|
+
* @tag sigvelo-alert-dialog
|
|
22
|
+
* @status experimental
|
|
23
|
+
* @since 1.0
|
|
24
|
+
*
|
|
25
|
+
* @dependency sigvelo-dialog
|
|
26
|
+
*
|
|
27
|
+
* @slot - The alert description/body content.
|
|
28
|
+
* @slot header - Content for the dialog header (typically a title).
|
|
29
|
+
* @slot cancel - The cancel action button.
|
|
30
|
+
* @slot confirm - The confirm action button.
|
|
31
|
+
*
|
|
32
|
+
* @event sigvelo-confirm - Emitted when the confirm action is triggered.
|
|
33
|
+
* @event sigvelo-cancel - Emitted when the cancel action is triggered.
|
|
34
|
+
*
|
|
35
|
+
* @cssstate open - Applied when the alert dialog is open.
|
|
36
|
+
*
|
|
37
|
+
* @example Default
|
|
38
|
+
* ```html
|
|
39
|
+
* <sigvelo-alert-dialog id="alert__default">
|
|
40
|
+
* <h3 slot="header" style="font-size: 1.125rem; margin: 0;">
|
|
41
|
+
* Delete item?
|
|
42
|
+
* </h3>
|
|
43
|
+
*
|
|
44
|
+
* <p>This action cannot be undone. This will permanently delete the item from your account.</p>
|
|
45
|
+
*
|
|
46
|
+
* <sigvelo-button slot="cancel">Cancel</sigvelo-button>
|
|
47
|
+
* <sigvelo-button slot="confirm" color="destructive">Delete</sigvelo-button>
|
|
48
|
+
* </sigvelo-alert-dialog>
|
|
49
|
+
*
|
|
50
|
+
* <sigvelo-button color="destructive" data-dialog="open alert__default">
|
|
51
|
+
* Delete item
|
|
52
|
+
* </sigvelo-button>
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
var SigveloAlertDialog = class extends SigveloElement {
|
|
56
|
+
constructor(..._args) {
|
|
57
|
+
super(..._args);
|
|
58
|
+
this.open = false;
|
|
59
|
+
}
|
|
60
|
+
static {
|
|
61
|
+
this.styles = [hostStyles, alert_dialog_styles_default];
|
|
62
|
+
}
|
|
63
|
+
firstUpdated() {
|
|
64
|
+
SigveloDialog.syncTriggers(this, this.open);
|
|
65
|
+
}
|
|
66
|
+
disconnectedCallback() {
|
|
67
|
+
super.disconnectedCallback();
|
|
68
|
+
SigveloDialog.syncTriggers(this, null);
|
|
69
|
+
}
|
|
70
|
+
handleCancel() {
|
|
71
|
+
this.dispatchEvent(new CustomEvent("sigvelo-cancel", {
|
|
72
|
+
bubbles: true,
|
|
73
|
+
composed: true
|
|
74
|
+
}));
|
|
75
|
+
this.open = false;
|
|
76
|
+
}
|
|
77
|
+
handleConfirm() {
|
|
78
|
+
this.dispatchEvent(new CustomEvent("sigvelo-confirm", {
|
|
79
|
+
bubbles: true,
|
|
80
|
+
composed: true
|
|
81
|
+
}));
|
|
82
|
+
this.open = false;
|
|
83
|
+
}
|
|
84
|
+
render() {
|
|
85
|
+
return html`
|
|
86
|
+
<sigvelo-dialog
|
|
87
|
+
.open=${this.open}
|
|
88
|
+
.lightDismiss=${false}
|
|
89
|
+
.dialogRole=${"alertdialog"}
|
|
90
|
+
placement="center"
|
|
91
|
+
@sigvelo-before-close=${(event) => {
|
|
92
|
+
if (this.open) event.preventDefault();
|
|
93
|
+
}}
|
|
94
|
+
@sigvelo-close=${() => {
|
|
95
|
+
this.open = false;
|
|
96
|
+
this.customStates.set("open", false);
|
|
97
|
+
}}
|
|
98
|
+
>
|
|
99
|
+
<slot name="header" slot="header"></slot>
|
|
100
|
+
<div slot="description"><slot></slot></div>
|
|
101
|
+
<span slot="actions"></span>
|
|
102
|
+
<div slot="footer" id="actions">
|
|
103
|
+
<div @click=${this.handleCancel}>
|
|
104
|
+
<slot name="cancel"></slot>
|
|
105
|
+
</div>
|
|
106
|
+
<div @click=${this.handleConfirm}>
|
|
107
|
+
<slot name="confirm"></slot>
|
|
108
|
+
</div>
|
|
109
|
+
</div>
|
|
110
|
+
</sigvelo-dialog>
|
|
111
|
+
`;
|
|
112
|
+
}
|
|
113
|
+
updated(changedProperties) {
|
|
114
|
+
if (changedProperties.has("open")) {
|
|
115
|
+
this.customStates.set("open", this.open);
|
|
116
|
+
SigveloDialog.syncTriggers(this, this.open);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
__decorate([property({
|
|
121
|
+
type: Boolean,
|
|
122
|
+
reflect: true
|
|
123
|
+
})], SigveloAlertDialog.prototype, "open", void 0);
|
|
124
|
+
customElements.define("sigvelo-alert-dialog", SigveloAlertDialog);
|
|
125
|
+
//#endregion
|
|
126
|
+
export { SigveloAlertDialog as t };
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { CSSResultGroup, PropertyValues } from "lit";
|
|
2
|
+
import { SigveloElement } from "@mcp-b/wc-support/base/sigvelo-element";
|
|
3
|
+
|
|
4
|
+
//#region src/components/avatar/avatar.d.ts
|
|
5
|
+
/**
|
|
6
|
+
* <sigvelo-avatar>
|
|
7
|
+
*
|
|
8
|
+
* @summary Provides a visual representation of a user to enhance personalization and recognition.
|
|
9
|
+
* @tag sigvelo-avatar
|
|
10
|
+
* @documentation https://design-system.sigvelo.com/docs/components/avatar
|
|
11
|
+
* @status stable
|
|
12
|
+
* @since 1.0
|
|
13
|
+
*
|
|
14
|
+
* @dependency sigvelo-icon
|
|
15
|
+
*
|
|
16
|
+
* @slot icon - A custom icon to use instead of the default. Will not be shown when an image or initials are present.
|
|
17
|
+
* For best results, use a `<sigvelo-icon>` or an `<svg>` element.
|
|
18
|
+
*
|
|
19
|
+
* @cssproperty [--size=3rem] - The size of the avatar to draw.
|
|
20
|
+
*
|
|
21
|
+
* @example Default
|
|
22
|
+
* ```html
|
|
23
|
+
* <sigvelo-avatar label="Anonymous user"></sigvelo-avatar>
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* **Note:** In the same way that images require `alt` text, you should add a label to every avatar. The label won't be displayed, but it will be announced by assistive devices.
|
|
27
|
+
*
|
|
28
|
+
* @example Images
|
|
29
|
+
* Avatars are best used with images to create a more personalized experience. Set the `image` attribute to any valid image URL. If the image fails to load, it will show characters or the default image instead.
|
|
30
|
+
*
|
|
31
|
+
* ```html
|
|
32
|
+
* <sigvelo-avatar label="Sky kitty" image="https://images.unsplash.com/photo-1574158622682-e40e69881006?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
33
|
+
* ```
|
|
34
|
+
*
|
|
35
|
+
* @example Characters
|
|
36
|
+
* When an image isn't available or fails to load, you can provide up to five characters to show instead. It's usually best to show no more than three, as the text shrinks to fit.
|
|
37
|
+
*
|
|
38
|
+
* ```html
|
|
39
|
+
* <sigvelo-avatar label="Sigvelo" characters="Q"></sigvelo-avatar>
|
|
40
|
+
* <sigvelo-avatar label="Sigvelo" characters="QUI"></sigvelo-avatar>
|
|
41
|
+
* <sigvelo-avatar label="Sigvelo" characters="SIGVELO"></sigvelo-avatar>
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* @example Custom icons
|
|
45
|
+
* When no image or letters are provided as a fallback, the default user icon will be displayed. You can show a custom icon by placing one into the `icon` slot. Works best with a `<sigvelo-icon>` or an `<svg>` element.
|
|
46
|
+
*
|
|
47
|
+
* ```html
|
|
48
|
+
* <sigvelo-avatar label="Anonymous user">
|
|
49
|
+
* <sigvelo-icon slot="icon" name="cat"></sigvelo-icon>
|
|
50
|
+
* </sigvelo-avatar>
|
|
51
|
+
*
|
|
52
|
+
* <sigvelo-avatar label="Anonymous user">
|
|
53
|
+
* <sigvelo-icon slot="icon" name="paw"></sigvelo-icon>
|
|
54
|
+
* </sigvelo-avatar>
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @example Changing the size
|
|
58
|
+
* You can change the size of an avatar by setting the `--size` custom property. The aspect ratio is 1:1, so the width and height will always be the same.
|
|
59
|
+
*
|
|
60
|
+
* ```html
|
|
61
|
+
* <sigvelo-avatar style="--size: 32px;" label="Anonymous user"></sigvelo-avatar>
|
|
62
|
+
* <sigvelo-avatar style="--size: 48px;" label="Anonymous user"></sigvelo-avatar>
|
|
63
|
+
* <sigvelo-avatar style="--size: 64px;" label="Anonymous user"></sigvelo-avatar>
|
|
64
|
+
* ```
|
|
65
|
+
*
|
|
66
|
+
* @example Changing the color
|
|
67
|
+
* To change the color of the avatar, use the `background-color` property and the `color` property. You can also apply gradients with the `background-image` property.
|
|
68
|
+
*
|
|
69
|
+
* ```html
|
|
70
|
+
* <sigvelo-avatar style="background-color: royalblue; color: white;" label="Anonymous user"></sigvelo-avatar>
|
|
71
|
+
* <sigvelo-avatar style="background-color: deeppink; color: white;" label="Anonymous user"></sigvelo-avatar>
|
|
72
|
+
* <sigvelo-avatar style="background-color: forestgreen; color: white;" label="Anonymous user"></sigvelo-avatar>
|
|
73
|
+
* <sigvelo-avatar style="background-image: linear-gradient(45.8deg, #af68fe 9.3%, #65dfff 75.1%); color: black;" label="Anonymous user"></sigvelo-avatar>
|
|
74
|
+
* ```
|
|
75
|
+
*
|
|
76
|
+
* @example Changing the shape
|
|
77
|
+
* You can change the shape of an avatar by adjusting the `border-radius` property. More complex shapes can be achieved by removing the default border radius and using `clip-path`.
|
|
78
|
+
*
|
|
79
|
+
* ```html
|
|
80
|
+
* <sigvelo-avatar style="border-radius: 12px;" label="Anonymous user"></sigvelo-avatar>
|
|
81
|
+
* <sigvelo-avatar style="border-radius: 2px;" label="Anonymous user"></sigvelo-avatar>
|
|
82
|
+
* <sigvelo-avatar style="border-radius: 0; clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);" label="Anonymous user"></sigvelo-avatar>
|
|
83
|
+
* ```
|
|
84
|
+
*
|
|
85
|
+
* @example Grouping avatars
|
|
86
|
+
* You can group avatars with some custom CSS.
|
|
87
|
+
*
|
|
88
|
+
* ```html
|
|
89
|
+
* <div class="avatar-group">
|
|
90
|
+
* <sigvelo-avatar label="Chill kitty" image="https://images.unsplash.com/photo-1514888286974-6c03e2ca1dba?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
91
|
+
* <sigvelo-avatar label="Wonder kitty" image="https://images.unsplash.com/photo-1529778873920-4da4926a72c2?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
92
|
+
* <sigvelo-avatar label="Maine kitty" image="https://images.unsplash.com/photo-1569591159212-b02ea8a9f239?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
93
|
+
* <sigvelo-avatar label="+12 more" characters="+12"></sigvelo-avatar>
|
|
94
|
+
* </div>
|
|
95
|
+
*
|
|
96
|
+
* <style>
|
|
97
|
+
* .avatar-group sigvelo-avatar {
|
|
98
|
+
* border: solid 2px var(--sigvelo-color-canvas);
|
|
99
|
+
*
|
|
100
|
+
* &:not(:first-of-type) {
|
|
101
|
+
* margin-inline-start: -1.5rem;
|
|
102
|
+
* }
|
|
103
|
+
* }
|
|
104
|
+
* </style>
|
|
105
|
+
* ```
|
|
106
|
+
*
|
|
107
|
+
* @example Wrapping with links
|
|
108
|
+
* You can wrap links around avatars to make the avatar clickable.
|
|
109
|
+
*
|
|
110
|
+
* ```html
|
|
111
|
+
* <a href="https://example.com/" target="_blank">
|
|
112
|
+
* <sigvelo-avatar label="Anonymous user"></sigvelo-avatar>
|
|
113
|
+
* </a>
|
|
114
|
+
* ```
|
|
115
|
+
*/
|
|
116
|
+
declare class SigveloAvatar extends SigveloElement {
|
|
117
|
+
static styles: CSSResultGroup;
|
|
118
|
+
hasImageLoaded: boolean;
|
|
119
|
+
/**
|
|
120
|
+
* An accessible label for the avatar. This won't be visible, but it will be read to assistive devices so you should
|
|
121
|
+
* always include one.
|
|
122
|
+
*/
|
|
123
|
+
label?: string;
|
|
124
|
+
/**
|
|
125
|
+
* A string of characters to display in the avatar when an image isn't available or fails to load. Up to five
|
|
126
|
+
* characters are supported.
|
|
127
|
+
*/
|
|
128
|
+
characters?: string;
|
|
129
|
+
/** The URL of an image to display in the avatar. Non-square images will be clipped to fit. */
|
|
130
|
+
image?: string;
|
|
131
|
+
firstUpdated(): void;
|
|
132
|
+
updated(changedProperties: PropertyValues<this>): void;
|
|
133
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
134
|
+
}
|
|
135
|
+
declare global {
|
|
136
|
+
interface HTMLElementTagNameMap {
|
|
137
|
+
"sigvelo-avatar": SigveloAvatar;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
//#endregion
|
|
141
|
+
export { SigveloAvatar as t };
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import "./icon-BPVkNsY4.js";
|
|
2
|
+
import { t as __decorate } from "./decorate-DcF3lt7P.js";
|
|
3
|
+
import { css, html } from "lit";
|
|
4
|
+
import { property, state } 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
|
+
//#region src/components/avatar/avatar.styles.ts
|
|
8
|
+
var avatar_styles_default = css`
|
|
9
|
+
:host {
|
|
10
|
+
--size: 3rem;
|
|
11
|
+
|
|
12
|
+
display: inline-flex;
|
|
13
|
+
position: relative;
|
|
14
|
+
flex: 0 0 auto;
|
|
15
|
+
align-items: center;
|
|
16
|
+
justify-content: center;
|
|
17
|
+
aspect-ratio: 1 / 1;
|
|
18
|
+
width: var(--size);
|
|
19
|
+
height: var(--size);
|
|
20
|
+
overflow: hidden;
|
|
21
|
+
border-radius: var(--sigvelo-radius-circle);
|
|
22
|
+
background-color: var(--sigvelo-color-neutral-bg-subtle);
|
|
23
|
+
color: var(--sigvelo-color-neutral-text-on-subtle);
|
|
24
|
+
font-weight: var(--sigvelo-font-weight-semibold);
|
|
25
|
+
font-size: calc(var(--size) / 3);
|
|
26
|
+
vertical-align: middle;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
#image {
|
|
30
|
+
position: absolute;
|
|
31
|
+
top: 0;
|
|
32
|
+
left: 0;
|
|
33
|
+
width: var(--size);
|
|
34
|
+
height: var(--size);
|
|
35
|
+
overflow: hidden;
|
|
36
|
+
object-fit: cover;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
slot[name="icon"] sigvelo-icon,
|
|
40
|
+
slot[name="icon"]::slotted(*) {
|
|
41
|
+
position: absolute !important;
|
|
42
|
+
top: calc(50% - 0.75em) !important;
|
|
43
|
+
left: calc(50% - 0.75em) !important;
|
|
44
|
+
width: 1.5em !important;
|
|
45
|
+
height: 1.5em !important;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
#characters {
|
|
49
|
+
font-size: calc(var(--size) / 5.5);
|
|
50
|
+
text-transform: uppercase;
|
|
51
|
+
|
|
52
|
+
&[data-length="4"] {
|
|
53
|
+
font-size: calc(var(--size) / 4.5);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&[data-length="3"] {
|
|
57
|
+
font-size: calc(var(--size) / 3.5);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
&[data-length="1"],
|
|
61
|
+
&[data-length="2"] {
|
|
62
|
+
font-size: calc(var(--size) / 2.5);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
`;
|
|
66
|
+
//#endregion
|
|
67
|
+
//#region src/components/avatar/avatar.ts
|
|
68
|
+
/**
|
|
69
|
+
* <sigvelo-avatar>
|
|
70
|
+
*
|
|
71
|
+
* @summary Provides a visual representation of a user to enhance personalization and recognition.
|
|
72
|
+
* @tag sigvelo-avatar
|
|
73
|
+
* @documentation https://design-system.sigvelo.com/docs/components/avatar
|
|
74
|
+
* @status stable
|
|
75
|
+
* @since 1.0
|
|
76
|
+
*
|
|
77
|
+
* @dependency sigvelo-icon
|
|
78
|
+
*
|
|
79
|
+
* @slot icon - A custom icon to use instead of the default. Will not be shown when an image or initials are present.
|
|
80
|
+
* For best results, use a `<sigvelo-icon>` or an `<svg>` element.
|
|
81
|
+
*
|
|
82
|
+
* @cssproperty [--size=3rem] - The size of the avatar to draw.
|
|
83
|
+
*
|
|
84
|
+
* @example Default
|
|
85
|
+
* ```html
|
|
86
|
+
* <sigvelo-avatar label="Anonymous user"></sigvelo-avatar>
|
|
87
|
+
* ```
|
|
88
|
+
*
|
|
89
|
+
* **Note:** In the same way that images require `alt` text, you should add a label to every avatar. The label won't be displayed, but it will be announced by assistive devices.
|
|
90
|
+
*
|
|
91
|
+
* @example Images
|
|
92
|
+
* Avatars are best used with images to create a more personalized experience. Set the `image` attribute to any valid image URL. If the image fails to load, it will show characters or the default image instead.
|
|
93
|
+
*
|
|
94
|
+
* ```html
|
|
95
|
+
* <sigvelo-avatar label="Sky kitty" image="https://images.unsplash.com/photo-1574158622682-e40e69881006?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
96
|
+
* ```
|
|
97
|
+
*
|
|
98
|
+
* @example Characters
|
|
99
|
+
* When an image isn't available or fails to load, you can provide up to five characters to show instead. It's usually best to show no more than three, as the text shrinks to fit.
|
|
100
|
+
*
|
|
101
|
+
* ```html
|
|
102
|
+
* <sigvelo-avatar label="Sigvelo" characters="Q"></sigvelo-avatar>
|
|
103
|
+
* <sigvelo-avatar label="Sigvelo" characters="QUI"></sigvelo-avatar>
|
|
104
|
+
* <sigvelo-avatar label="Sigvelo" characters="SIGVELO"></sigvelo-avatar>
|
|
105
|
+
* ```
|
|
106
|
+
*
|
|
107
|
+
* @example Custom icons
|
|
108
|
+
* When no image or letters are provided as a fallback, the default user icon will be displayed. You can show a custom icon by placing one into the `icon` slot. Works best with a `<sigvelo-icon>` or an `<svg>` element.
|
|
109
|
+
*
|
|
110
|
+
* ```html
|
|
111
|
+
* <sigvelo-avatar label="Anonymous user">
|
|
112
|
+
* <sigvelo-icon slot="icon" name="cat"></sigvelo-icon>
|
|
113
|
+
* </sigvelo-avatar>
|
|
114
|
+
*
|
|
115
|
+
* <sigvelo-avatar label="Anonymous user">
|
|
116
|
+
* <sigvelo-icon slot="icon" name="paw"></sigvelo-icon>
|
|
117
|
+
* </sigvelo-avatar>
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
120
|
+
* @example Changing the size
|
|
121
|
+
* You can change the size of an avatar by setting the `--size` custom property. The aspect ratio is 1:1, so the width and height will always be the same.
|
|
122
|
+
*
|
|
123
|
+
* ```html
|
|
124
|
+
* <sigvelo-avatar style="--size: 32px;" label="Anonymous user"></sigvelo-avatar>
|
|
125
|
+
* <sigvelo-avatar style="--size: 48px;" label="Anonymous user"></sigvelo-avatar>
|
|
126
|
+
* <sigvelo-avatar style="--size: 64px;" label="Anonymous user"></sigvelo-avatar>
|
|
127
|
+
* ```
|
|
128
|
+
*
|
|
129
|
+
* @example Changing the color
|
|
130
|
+
* To change the color of the avatar, use the `background-color` property and the `color` property. You can also apply gradients with the `background-image` property.
|
|
131
|
+
*
|
|
132
|
+
* ```html
|
|
133
|
+
* <sigvelo-avatar style="background-color: royalblue; color: white;" label="Anonymous user"></sigvelo-avatar>
|
|
134
|
+
* <sigvelo-avatar style="background-color: deeppink; color: white;" label="Anonymous user"></sigvelo-avatar>
|
|
135
|
+
* <sigvelo-avatar style="background-color: forestgreen; color: white;" label="Anonymous user"></sigvelo-avatar>
|
|
136
|
+
* <sigvelo-avatar style="background-image: linear-gradient(45.8deg, #af68fe 9.3%, #65dfff 75.1%); color: black;" label="Anonymous user"></sigvelo-avatar>
|
|
137
|
+
* ```
|
|
138
|
+
*
|
|
139
|
+
* @example Changing the shape
|
|
140
|
+
* You can change the shape of an avatar by adjusting the `border-radius` property. More complex shapes can be achieved by removing the default border radius and using `clip-path`.
|
|
141
|
+
*
|
|
142
|
+
* ```html
|
|
143
|
+
* <sigvelo-avatar style="border-radius: 12px;" label="Anonymous user"></sigvelo-avatar>
|
|
144
|
+
* <sigvelo-avatar style="border-radius: 2px;" label="Anonymous user"></sigvelo-avatar>
|
|
145
|
+
* <sigvelo-avatar style="border-radius: 0; clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);" label="Anonymous user"></sigvelo-avatar>
|
|
146
|
+
* ```
|
|
147
|
+
*
|
|
148
|
+
* @example Grouping avatars
|
|
149
|
+
* You can group avatars with some custom CSS.
|
|
150
|
+
*
|
|
151
|
+
* ```html
|
|
152
|
+
* <div class="avatar-group">
|
|
153
|
+
* <sigvelo-avatar label="Chill kitty" image="https://images.unsplash.com/photo-1514888286974-6c03e2ca1dba?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
154
|
+
* <sigvelo-avatar label="Wonder kitty" image="https://images.unsplash.com/photo-1529778873920-4da4926a72c2?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
155
|
+
* <sigvelo-avatar label="Maine kitty" image="https://images.unsplash.com/photo-1569591159212-b02ea8a9f239?q=80&w=256&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D"></sigvelo-avatar>
|
|
156
|
+
* <sigvelo-avatar label="+12 more" characters="+12"></sigvelo-avatar>
|
|
157
|
+
* </div>
|
|
158
|
+
*
|
|
159
|
+
* <style>
|
|
160
|
+
* .avatar-group sigvelo-avatar {
|
|
161
|
+
* border: solid 2px var(--sigvelo-color-canvas);
|
|
162
|
+
*
|
|
163
|
+
* &:not(:first-of-type) {
|
|
164
|
+
* margin-inline-start: -1.5rem;
|
|
165
|
+
* }
|
|
166
|
+
* }
|
|
167
|
+
* </style>
|
|
168
|
+
* ```
|
|
169
|
+
*
|
|
170
|
+
* @example Wrapping with links
|
|
171
|
+
* You can wrap links around avatars to make the avatar clickable.
|
|
172
|
+
*
|
|
173
|
+
* ```html
|
|
174
|
+
* <a href="https://example.com/" target="_blank">
|
|
175
|
+
* <sigvelo-avatar label="Anonymous user"></sigvelo-avatar>
|
|
176
|
+
* </a>
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
var SigveloAvatar = class extends SigveloElement {
|
|
180
|
+
constructor(..._args) {
|
|
181
|
+
super(..._args);
|
|
182
|
+
this.hasImageLoaded = false;
|
|
183
|
+
}
|
|
184
|
+
static {
|
|
185
|
+
this.styles = [hostStyles, avatar_styles_default];
|
|
186
|
+
}
|
|
187
|
+
firstUpdated() {
|
|
188
|
+
this.setAttribute("role", "img");
|
|
189
|
+
if (this.label) this.setAttribute("aria-label", this.label);
|
|
190
|
+
}
|
|
191
|
+
updated(changedProperties) {
|
|
192
|
+
if (changedProperties.has("label")) if (this.label) this.setAttribute("aria-label", this.label);
|
|
193
|
+
else this.removeAttribute("aria-label");
|
|
194
|
+
}
|
|
195
|
+
render() {
|
|
196
|
+
return html`
|
|
197
|
+
${this.characters ? html`<span id="characters" data-length=${this.characters.length}
|
|
198
|
+
>${this.characters.slice(0, 5)}</span
|
|
199
|
+
>` : html`
|
|
200
|
+
<slot name="icon">
|
|
201
|
+
<sigvelo-icon library="system" family="filled" name="user"></sigvelo-icon>
|
|
202
|
+
</slot>
|
|
203
|
+
`}
|
|
204
|
+
${this.image ? html`
|
|
205
|
+
<img
|
|
206
|
+
id="image"
|
|
207
|
+
role="presentation"
|
|
208
|
+
src=${this.image}
|
|
209
|
+
alt=""
|
|
210
|
+
@load=${() => this.hasImageLoaded = true}
|
|
211
|
+
@error=${() => this.hasImageLoaded = false}
|
|
212
|
+
?hidden=${!this.hasImageLoaded}
|
|
213
|
+
/>
|
|
214
|
+
` : ""}
|
|
215
|
+
`;
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
__decorate([state()], SigveloAvatar.prototype, "hasImageLoaded", void 0);
|
|
219
|
+
__decorate([property()], SigveloAvatar.prototype, "label", void 0);
|
|
220
|
+
__decorate([property()], SigveloAvatar.prototype, "characters", void 0);
|
|
221
|
+
__decorate([property()], SigveloAvatar.prototype, "image", void 0);
|
|
222
|
+
customElements.define("sigvelo-avatar", SigveloAvatar);
|
|
223
|
+
//#endregion
|
|
224
|
+
export { SigveloAvatar as t };
|