@prolibu-suite/cobalt-core 0.3.0 → 0.5.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/README.md +3 -3
- package/custom-elements.json +6887 -3484
- package/dist/cjs/co-accordion.cjs.entry.js +4 -4
- package/dist/cjs/co-app-shell.cjs.entry.js +3 -3
- package/dist/cjs/co-autocomplete.cjs.entry.js +38 -73
- package/dist/cjs/co-avatar-group.cjs.entry.js +3 -3
- package/dist/cjs/co-avatar.cjs.entry.js +9 -4
- package/dist/cjs/co-badge.cjs.entry.js +2 -2
- package/dist/cjs/co-bottom-sheet.cjs.entry.js +4 -4
- package/dist/cjs/co-breadcrumb-item.cjs.entry.js +37 -0
- package/dist/cjs/co-breadcrumb.cjs.entry.js +55 -0
- package/dist/cjs/co-button-group.cjs.entry.js +3 -3
- package/dist/cjs/co-button.cjs.entry.js +10 -4
- package/dist/cjs/co-calendar-month.cjs.entry.js +2 -2
- package/dist/cjs/co-calendar_3.cjs.entry.js +50 -15
- package/dist/cjs/co-card.cjs.entry.js +3 -3
- package/dist/cjs/co-checkbox-group.cjs.entry.js +4 -4
- package/dist/cjs/co-checkbox.cjs.entry.js +18 -6
- package/dist/cjs/co-chip_2.cjs.entry.js +485 -0
- package/dist/cjs/co-color-picker.cjs.entry.js +4 -4
- package/dist/cjs/co-column-picker.cjs.entry.js +3 -3
- package/dist/cjs/co-combobox.cjs.entry.js +51 -82
- package/dist/cjs/co-command-search.cjs.entry.js +20 -59
- package/dist/cjs/co-data-table-pagination.cjs.entry.js +5 -5
- package/dist/cjs/co-data-table.cjs.entry.js +73 -17
- package/dist/cjs/co-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/co-date-range-picker.cjs.entry.js +3 -3
- package/dist/cjs/co-date-range.cjs.entry.js +2 -2
- package/dist/cjs/co-drive-card.cjs.entry.js +81 -0
- package/dist/cjs/co-drop-zone.cjs.entry.js +63 -0
- package/dist/cjs/co-empty-state.cjs.entry.js +13 -3
- package/dist/cjs/co-event-calendar.cjs.entry.js +3 -3
- package/dist/cjs/co-fab.cjs.entry.js +5 -5
- package/dist/cjs/co-file-field.cjs.entry.js +7 -7
- package/dist/cjs/co-file-type-tile.cjs.entry.js +78 -0
- package/dist/cjs/co-helper-text.cjs.entry.js +3 -3
- package/dist/cjs/co-icon-button.cjs.entry.js +23 -7
- package/dist/cjs/co-icon.cjs.entry.js +3 -3
- package/dist/cjs/co-input.cjs.entry.js +36 -7
- package/dist/cjs/co-json-field.cjs.entry.js +5 -5
- package/dist/cjs/co-lightbox.cjs.entry.js +6 -6
- package/dist/cjs/co-list-footer.cjs.entry.js +2 -2
- package/dist/cjs/co-list-item.cjs.entry.js +5 -5
- package/dist/cjs/co-loader.cjs.entry.js +34 -0
- package/dist/cjs/co-media-thumb.cjs.entry.js +36 -0
- package/dist/cjs/co-menu-divider.cjs.entry.js +2 -2
- package/dist/cjs/co-menu-item.cjs.entry.js +11 -3
- package/dist/cjs/co-menu.cjs.entry.js +3 -3
- package/dist/cjs/co-modal.cjs.entry.js +29 -5
- package/dist/cjs/co-navbar.cjs.entry.js +3 -3
- package/dist/cjs/co-number-field.cjs.entry.js +5 -5
- package/dist/cjs/{co-loader_2.cjs.entry.js → co-overlay.cjs.entry.js} +2 -32
- package/dist/cjs/co-page-header.cjs.entry.js +2 -2
- package/dist/cjs/co-phone-field.cjs.entry.js +4 -4
- package/dist/cjs/co-popover.cjs.entry.js +12 -3
- package/dist/cjs/co-progress-bar.cjs.entry.js +4 -4
- package/dist/cjs/co-progress-circle.cjs.entry.js +3 -3
- package/dist/cjs/co-radio-group.cjs.entry.js +4 -4
- package/dist/cjs/co-radio.cjs.entry.js +4 -4
- package/dist/cjs/co-rating.cjs.entry.js +4 -4
- package/dist/cjs/co-ref-field.cjs.entry.js +31 -135
- package/dist/cjs/co-rich-text-editor.cjs.entry.js +5 -5
- package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +1 -1
- package/dist/cjs/co-rich-text-viewer.cjs.entry.js +2 -2
- package/dist/cjs/co-row.cjs.entry.js +3 -3
- package/dist/cjs/co-segmented-bar.cjs.entry.js +58 -0
- package/dist/cjs/co-select.cjs.entry.js +7 -7
- package/dist/cjs/co-separator.cjs.entry.js +2 -2
- package/dist/cjs/co-sidebar-nav.cjs.entry.js +10 -8
- package/dist/cjs/co-sidebar.cjs.entry.js +3 -3
- package/dist/cjs/co-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/co-slider.cjs.entry.js +3 -3
- package/dist/cjs/co-switch.cjs.entry.js +6 -6
- package/dist/cjs/co-tab-group.cjs.entry.js +21 -3
- package/dist/cjs/co-tab.cjs.entry.js +8 -5
- package/dist/cjs/co-tags-field.cjs.entry.js +8 -8
- package/dist/cjs/co-textarea.cjs.entry.js +6 -6
- package/dist/cjs/co-toast.cjs.entry.js +10 -4
- package/dist/cjs/co-toggle-button-group.cjs.entry.js +16 -4
- package/dist/cjs/co-toggle-button.cjs.entry.js +9 -5
- package/dist/cjs/co-tooltip.cjs.entry.js +3 -3
- package/dist/cjs/co-transfer-list.cjs.entry.js +3 -3
- package/dist/cjs/co-video.cjs.entry.js +4 -4
- package/dist/cjs/cobalt.cjs.js +2 -2
- package/dist/cjs/{fieldChip-CDIMz_Y6.js → fieldChip-D8YJCyQF.js} +1 -1
- package/dist/cjs/{index-5NdsiFjZ.js → index-4y1Dm145.js} +64 -11
- package/dist/cjs/{index-BumlM92r.js → index-DxEFsH_t.js} +69 -13
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{requiredMark-CqMGt1H1.js → requiredMark-B3pKyqYI.js} +1 -1
- package/dist/cobalt/cobalt.css +1 -1
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/p-002e5beb.entry.js +1 -0
- package/dist/cobalt/{p-ba90e871.entry.js → p-02c5a9a9.entry.js} +1 -1
- package/dist/cobalt/p-075eed3d.entry.js +1 -0
- package/dist/cobalt/p-0c0621a7.entry.js +1 -0
- package/dist/cobalt/{p-ef7d4ae3.entry.js → p-0d6a562d.entry.js} +1 -1
- package/dist/cobalt/p-0d7536a8.entry.js +1 -0
- package/dist/cobalt/{p-6d1217c3.entry.js → p-13fc9c8a.entry.js} +1 -1
- package/dist/cobalt/{p-afb7e19e.entry.js → p-14d4c5c7.entry.js} +1 -1
- package/dist/cobalt/{p-31ab9a46.entry.js → p-1681ce1d.entry.js} +1 -1
- package/dist/cobalt/{p-93046365.entry.js → p-1726ce07.entry.js} +1 -1
- package/dist/cobalt/p-20ba59a2.entry.js +1 -0
- package/dist/cobalt/p-2d1cbd7f.entry.js +1 -0
- package/dist/cobalt/{p-4871690e.entry.js → p-373cd08e.entry.js} +1 -1
- package/dist/cobalt/{p-37595103.entry.js → p-3f06d373.entry.js} +1 -1
- package/dist/cobalt/p-3f68fd2e.entry.js +1 -0
- package/dist/cobalt/p-47a2dd67.entry.js +1 -0
- package/dist/cobalt/p-495c9b99.entry.js +1 -0
- package/dist/cobalt/p-4a075257.entry.js +1 -0
- package/dist/cobalt/{p-52de17da.entry.js → p-5647ca9d.entry.js} +1 -1
- package/dist/cobalt/{p-1a07c23c.entry.js → p-5b31d45b.entry.js} +1 -1
- package/dist/cobalt/{p-929e647f.entry.js → p-5c3101b5.entry.js} +1 -1
- package/dist/cobalt/{p-8d59f5ad.entry.js → p-5c43d30e.entry.js} +1 -1
- package/dist/cobalt/{p-4504f7b0.entry.js → p-5e9a9caf.entry.js} +1 -1
- package/dist/cobalt/p-5edd0d3f.entry.js +1 -0
- package/dist/cobalt/{p-12e2c2c4.entry.js → p-627d2d1a.entry.js} +1 -1
- package/dist/cobalt/p-6911a034.entry.js +1 -0
- package/dist/cobalt/{p-e53861e4.entry.js → p-6ad1625a.entry.js} +1 -1
- package/dist/cobalt/{p-f4063c41.entry.js → p-70f70e02.entry.js} +1 -1
- package/dist/cobalt/p-73b30ebb.entry.js +1 -0
- package/dist/cobalt/p-771bc8fe.entry.js +1 -0
- package/dist/cobalt/p-7780ddb5.entry.js +1 -0
- package/dist/cobalt/p-77d01b39.entry.js +1 -0
- package/dist/cobalt/p-7FZXeBK4.js +1 -0
- package/dist/cobalt/p-7a3fb93b.entry.js +1 -0
- package/dist/cobalt/{p-0bb55163.entry.js → p-809015dd.entry.js} +1 -1
- package/dist/cobalt/p-8128e84a.entry.js +1 -0
- package/dist/cobalt/p-81cfd951.entry.js +1 -0
- package/dist/cobalt/p-82ce1178.entry.js +1 -0
- package/dist/cobalt/p-85eed52c.entry.js +1 -0
- package/dist/cobalt/p-86d4e016.entry.js +1 -0
- package/dist/cobalt/{p-cb235aa7.entry.js → p-86e60cfa.entry.js} +1 -1
- package/dist/cobalt/p-8a9ed2da.entry.js +1 -0
- package/dist/cobalt/{p-8e1dc062.entry.js → p-8dfb6886.entry.js} +1 -1
- package/dist/cobalt/{p-2f86e1e0.entry.js → p-8e823c15.entry.js} +1 -1
- package/dist/cobalt/p-9a587867.entry.js +1 -0
- package/dist/cobalt/p-9c6ca902.entry.js +1 -0
- package/dist/cobalt/{p-279bf91c.entry.js → p-9c873a6a.entry.js} +1 -1
- package/dist/cobalt/{p-BZJ7NCm5.js → p-BAA4ln31.js} +1 -1
- package/dist/cobalt/{p-CegCk7FL.js → p-Bgxofdfb.js} +1 -1
- package/dist/cobalt/p-a6900010.entry.js +1 -0
- package/dist/cobalt/p-a9afbaa6.entry.js +1 -0
- package/dist/cobalt/{p-c10697e1.entry.js → p-aa20ffca.entry.js} +1 -1
- package/dist/cobalt/{p-3863ea91.entry.js → p-ac5df270.entry.js} +1 -1
- package/dist/cobalt/{p-b6f20268.entry.js → p-af4cb263.entry.js} +1 -1
- package/dist/cobalt/p-b1197c08.entry.js +1 -0
- package/dist/cobalt/{p-4c01d984.entry.js → p-b4bed98b.entry.js} +1 -1
- package/dist/cobalt/{p-58a53421.entry.js → p-b8ec0cc1.entry.js} +1 -1
- package/dist/cobalt/p-ba66584f.entry.js +1 -0
- package/dist/cobalt/p-bb534985.entry.js +1 -0
- package/dist/cobalt/{p-1531d3c9.entry.js → p-c0f39ddd.entry.js} +1 -1
- package/dist/cobalt/{p-51a53177.entry.js → p-c1e53e4c.entry.js} +1 -1
- package/dist/cobalt/p-c2e2eee9.entry.js +1 -0
- package/dist/cobalt/p-c3462def.entry.js +1 -0
- package/dist/cobalt/p-c6fedc59.entry.js +1 -0
- package/dist/cobalt/{p-6e808b3a.entry.js → p-c750b2d2.entry.js} +1 -1
- package/dist/cobalt/{p-70b14b05.entry.js → p-cc0a4617.entry.js} +1 -1
- package/dist/cobalt/{p-29be61a9.entry.js → p-cc8e2f16.entry.js} +1 -1
- package/dist/cobalt/{p-790d384e.entry.js → p-d9608046.entry.js} +1 -1
- package/dist/cobalt/{p-cfb36943.entry.js → p-e1957078.entry.js} +1 -1
- package/dist/cobalt/{p-8d7fdb9d.entry.js → p-e2762263.entry.js} +1 -1
- package/dist/cobalt/p-e33853fa.entry.js +1 -0
- package/dist/cobalt/p-e420d5c9.entry.js +1 -0
- package/dist/cobalt/{p-377c2ccc.entry.js → p-e4a539da.entry.js} +1 -1
- package/dist/cobalt/{p-d809bd44.entry.js → p-e7085f08.entry.js} +1 -1
- package/dist/cobalt/p-e710b9ea.entry.js +1 -0
- package/dist/cobalt/{p-eb18fdbf.entry.js → p-e9aaeaf7.entry.js} +1 -1
- package/dist/cobalt/{p-65af5017.entry.js → p-f073b467.entry.js} +1 -1
- package/dist/cobalt/p-f0de4415.entry.js +1 -0
- package/dist/cobalt/p-f36e461f.entry.js +1 -0
- package/dist/cobalt/p-f6ac5301.entry.js +1 -0
- package/dist/cobalt/{p-9a04ca90.entry.js → p-f6b0c4a0.entry.js} +1 -1
- package/dist/cobalt/p-f86ccb38.entry.js +1 -0
- package/dist/cobalt/{p-1f747e45.entry.js → p-fb251497.entry.js} +1 -1
- package/dist/cobalt/p-fd27c2bd.entry.js +1 -0
- package/dist/cobalt/p-tT-aZV0-.js +2 -0
- package/dist/collection/collection-manifest.json +9 -1
- package/dist/collection/components/co-accordion/co-accordion.css +20 -8
- package/dist/collection/components/co-accordion/co-accordion.js +5 -2
- package/dist/collection/components/co-app-shell/co-app-shell.js +2 -2
- package/dist/collection/components/co-autocomplete/co-autocomplete.css +4 -751
- package/dist/collection/components/co-autocomplete/co-autocomplete.js +41 -76
- package/dist/collection/components/co-avatar/co-avatar.js +27 -3
- package/dist/collection/components/co-avatar-group/co-avatar-group.js +2 -2
- package/dist/collection/components/co-badge/co-badge.js +1 -1
- package/dist/collection/components/co-bottom-sheet/co-bottom-sheet.js +3 -3
- package/dist/collection/components/co-breadcrumb/co-breadcrumb.css +6 -0
- package/dist/collection/components/co-breadcrumb/co-breadcrumb.js +111 -0
- package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.css +66 -0
- package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.js +169 -0
- package/dist/collection/components/co-button/co-button.css +23 -0
- package/dist/collection/components/co-button/co-button.js +48 -2
- package/dist/collection/components/co-button-group/co-button-group.js +2 -2
- package/dist/collection/components/co-calendar/co-calendar.css +12 -12
- package/dist/collection/components/co-calendar/co-calendar.js +1 -1
- package/dist/collection/components/co-calendar-month/co-calendar-month.js +1 -1
- package/dist/collection/components/co-card/co-card.js +2 -2
- package/dist/collection/components/co-checkbox/co-checkbox.css +63 -0
- package/dist/collection/components/co-checkbox/co-checkbox.js +58 -7
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +3 -3
- package/dist/collection/components/co-chip/co-chip.css +56 -1
- package/dist/collection/components/co-chip/co-chip.js +52 -9
- package/dist/collection/components/co-color-picker/co-color-picker.js +2 -2
- package/dist/collection/components/co-column-picker/co-column-picker.js +2 -2
- package/dist/collection/components/co-combobox/co-combobox.css +6 -830
- package/dist/collection/components/co-combobox/co-combobox.js +73 -84
- package/dist/collection/components/co-command-search/co-command-search.css +2 -60
- package/dist/collection/components/co-command-search/co-command-search.js +23 -48
- package/dist/collection/components/co-data-table/co-data-table.css +47 -8
- package/dist/collection/components/co-data-table/co-data-table.js +199 -15
- package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +4 -4
- package/dist/collection/components/co-date-field/co-date-field.css +4 -7
- package/dist/collection/components/co-date-field/co-date-field.js +4 -4
- package/dist/collection/components/co-date-range/co-date-range.js +1 -1
- package/dist/collection/components/co-date-range-picker/co-date-range-picker.css +9 -9
- package/dist/collection/components/co-drawer/co-drawer.css +63 -10
- package/dist/collection/components/co-drawer/co-drawer.js +60 -5
- package/dist/collection/components/co-drive-card/co-drive-card.css +285 -0
- package/dist/collection/components/co-drive-card/co-drive-card.js +329 -0
- package/dist/collection/components/co-drop-zone/co-drop-zone.css +49 -0
- package/dist/collection/components/co-drop-zone/co-drop-zone.js +197 -0
- package/dist/collection/components/co-empty-state/co-empty-state.css +39 -1
- package/dist/collection/components/co-empty-state/co-empty-state.js +72 -1
- package/dist/collection/components/co-event-calendar/co-event-calendar.js +2 -2
- package/dist/collection/components/co-fab/co-fab.css +8 -1
- package/dist/collection/components/co-fab/co-fab.js +24 -5
- package/dist/collection/components/co-file-field/co-file-field.js +5 -5
- package/dist/collection/components/co-file-type-tile/co-file-type-tile.css +14 -0
- package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +164 -0
- package/dist/collection/components/co-helper-text/co-helper-text.js +2 -2
- package/dist/collection/components/co-icon/co-icon.js +2 -2
- package/dist/collection/components/co-icon-button/co-icon-button.css +11 -4
- package/dist/collection/components/co-icon-button/co-icon-button.js +80 -25
- package/dist/collection/components/co-input/co-input.css +67 -6
- package/dist/collection/components/co-input/co-input.js +54 -5
- package/dist/collection/components/co-json-field/co-json-field.js +3 -3
- package/dist/collection/components/co-lightbox/co-lightbox.css +2 -2
- package/dist/collection/components/co-lightbox/co-lightbox.js +4 -4
- package/dist/collection/components/co-list-footer/co-list-footer.js +1 -1
- package/dist/collection/components/co-list-item/co-list-item.js +4 -4
- package/dist/collection/components/co-media-thumb/co-media-thumb.css +43 -0
- package/dist/collection/components/co-media-thumb/co-media-thumb.js +148 -0
- package/dist/collection/components/co-menu/co-menu.css +6 -4
- package/dist/collection/components/co-menu/co-menu.js +20 -1
- package/dist/collection/components/co-menu-divider/co-menu-divider.js +1 -1
- package/dist/collection/components/co-menu-item/co-menu-item.css +27 -9
- package/dist/collection/components/co-menu-item/co-menu-item.js +69 -2
- package/dist/collection/components/co-modal/co-modal.css +17 -0
- package/dist/collection/components/co-modal/co-modal.js +59 -6
- package/dist/collection/components/co-navbar/co-navbar.js +2 -2
- package/dist/collection/components/co-number-field/co-number-field.css +10 -11
- package/dist/collection/components/co-number-field/co-number-field.js +2 -2
- package/dist/collection/components/co-option-list/co-option-list.css +966 -0
- package/dist/collection/components/co-option-list/co-option-list.js +899 -0
- package/dist/collection/components/co-option-list/optionListLogic.js +100 -0
- package/dist/collection/components/co-overlay/co-overlay.js +1 -1
- package/dist/collection/components/co-page-header/co-page-header.js +1 -1
- package/dist/collection/components/co-phone-field/co-phone-field.css +4 -7
- package/dist/collection/components/co-phone-field/co-phone-field.js +1 -1
- package/dist/collection/components/co-popover/co-popover.js +11 -2
- package/dist/collection/components/co-progress-bar/co-progress-bar.css +1 -1
- package/dist/collection/components/co-progress-bar/co-progress-bar.js +2 -2
- package/dist/collection/components/co-progress-circle/co-progress-circle.js +2 -2
- package/dist/collection/components/co-radio/co-radio.js +3 -3
- package/dist/collection/components/co-radio-group/co-radio-group.js +3 -3
- package/dist/collection/components/co-rating/co-rating.js +3 -3
- package/dist/collection/components/co-ref-field/co-ref-field.css +6 -897
- package/dist/collection/components/co-ref-field/co-ref-field.js +0 -0
- package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.css +1 -1
- package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +2 -2
- package/dist/collection/components/co-row/co-row.js +2 -2
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.css +36 -0
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +176 -0
- package/dist/collection/components/co-select/co-select.css +4 -7
- package/dist/collection/components/co-select/co-select.js +4 -4
- package/dist/collection/components/co-separator/co-separator.js +1 -1
- package/dist/collection/components/co-sidebar/co-sidebar.js +2 -2
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.css +8 -6
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +8 -6
- package/dist/collection/components/co-skeleton/co-skeleton.js +1 -1
- package/dist/collection/components/co-slider/co-slider.js +2 -2
- package/dist/collection/components/co-switch/co-switch.css +3 -1
- package/dist/collection/components/co-switch/co-switch.js +3 -3
- package/dist/collection/components/co-tab/co-tab.css +93 -7
- package/dist/collection/components/co-tab/co-tab.js +45 -3
- package/dist/collection/components/co-tab-group/co-tab-group.css +19 -0
- package/dist/collection/components/co-tab-group/co-tab-group.js +41 -1
- package/dist/collection/components/co-tags-field/co-tags-field.js +5 -5
- package/dist/collection/components/co-textarea/co-textarea.js +4 -4
- package/dist/collection/components/co-toast/co-toast.css +56 -2
- package/dist/collection/components/co-toast/co-toast.js +27 -2
- package/dist/collection/components/co-toggle-button/co-toggle-button.css +38 -0
- package/dist/collection/components/co-toggle-button/co-toggle-button.js +46 -3
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.css +16 -0
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +34 -2
- package/dist/collection/components/co-tooltip/co-tooltip.js +2 -2
- package/dist/collection/components/co-transfer-list/co-transfer-list.js +2 -2
- package/dist/collection/components/co-video/co-video.css +2 -2
- package/dist/collection/components/co-video/co-video.js +2 -2
- package/dist/components/co-accordion.js +1 -1
- package/dist/components/co-app-shell.js +1 -1
- package/dist/components/co-autocomplete.js +1 -1
- package/dist/components/co-avatar-group.js +1 -1
- package/dist/components/co-avatar.js +1 -1
- package/dist/components/co-badge.js +1 -1
- package/dist/components/co-bottom-sheet.js +1 -1
- package/dist/components/co-breadcrumb-item.d.ts +11 -0
- package/dist/components/co-breadcrumb-item.js +1 -0
- package/dist/components/co-breadcrumb.d.ts +11 -0
- package/dist/components/co-breadcrumb.js +1 -0
- package/dist/components/co-button-group.js +1 -1
- package/dist/components/co-button.js +1 -1
- package/dist/components/co-calendar-month.js +1 -1
- package/dist/components/co-calendar.js +1 -1
- package/dist/components/co-card.js +1 -1
- package/dist/components/co-checkbox-group.js +1 -1
- package/dist/components/co-checkbox.js +1 -1
- package/dist/components/co-chip.js +1 -1
- package/dist/components/co-color-picker.js +1 -1
- package/dist/components/co-column-picker.js +1 -1
- package/dist/components/co-combobox.js +1 -1
- package/dist/components/co-command-search.js +1 -1
- package/dist/components/co-data-table-pagination.js +1 -1
- package/dist/components/co-data-table.js +1 -1
- package/dist/components/co-date-field.js +1 -1
- package/dist/components/co-date-picker.js +1 -1
- package/dist/components/co-date-range-picker.js +1 -1
- package/dist/components/co-date-range.js +1 -1
- package/dist/components/co-drawer.js +1 -1
- package/dist/components/co-drive-card.d.ts +11 -0
- package/dist/components/co-drive-card.js +1 -0
- package/dist/components/co-drop-zone.d.ts +11 -0
- package/dist/components/co-drop-zone.js +1 -0
- package/dist/components/co-empty-state.js +1 -1
- package/dist/components/co-event-calendar.js +1 -1
- package/dist/components/co-fab.js +1 -1
- package/dist/components/co-file-field.js +1 -1
- package/dist/components/co-file-type-tile.d.ts +11 -0
- package/dist/components/co-file-type-tile.js +1 -0
- package/dist/components/co-helper-text.js +1 -1
- package/dist/components/co-icon-button.js +1 -1
- package/dist/components/co-icon.js +1 -1
- package/dist/components/co-input.js +1 -1
- package/dist/components/co-json-field.js +1 -1
- package/dist/components/co-lightbox.js +1 -1
- package/dist/components/co-list-footer.js +1 -1
- package/dist/components/co-list-item.js +1 -1
- package/dist/components/co-media-thumb.d.ts +11 -0
- package/dist/components/co-media-thumb.js +1 -0
- package/dist/components/co-menu-divider.js +1 -1
- package/dist/components/co-menu-item.js +1 -1
- package/dist/components/co-menu.js +1 -1
- package/dist/components/co-modal.js +1 -1
- package/dist/components/co-navbar.js +1 -1
- package/dist/components/co-number-field.js +1 -1
- package/dist/components/co-option-list.d.ts +11 -0
- package/dist/components/co-option-list.js +1 -0
- package/dist/components/co-overlay.js +1 -1
- package/dist/components/co-page-header.js +1 -1
- package/dist/components/co-phone-field.js +1 -1
- package/dist/components/co-popover.js +1 -1
- package/dist/components/co-progress-bar.js +1 -1
- package/dist/components/co-progress-circle.js +1 -1
- package/dist/components/co-radio-group.js +1 -1
- package/dist/components/co-radio.js +1 -1
- package/dist/components/co-rating.js +1 -1
- package/dist/components/co-ref-field.js +1 -1
- package/dist/components/co-rich-text-editor.js +1 -1
- package/dist/components/co-rich-text-toolbar.js +1 -1
- package/dist/components/co-rich-text-viewer.js +1 -1
- package/dist/components/co-row.js +1 -1
- package/dist/components/co-segmented-bar.d.ts +11 -0
- package/dist/components/co-segmented-bar.js +1 -0
- package/dist/components/co-select.js +1 -1
- package/dist/components/co-separator.js +1 -1
- package/dist/components/co-sidebar-nav.js +1 -1
- package/dist/components/co-sidebar.js +1 -1
- package/dist/components/co-skeleton.js +1 -1
- package/dist/components/co-slider.js +1 -1
- package/dist/components/co-switch.js +1 -1
- package/dist/components/co-tab-group.js +1 -1
- package/dist/components/co-tab.js +1 -1
- package/dist/components/co-tags-field.js +1 -1
- package/dist/components/co-textarea.js +1 -1
- package/dist/components/co-toast.js +1 -1
- package/dist/components/co-toggle-button-group.js +1 -1
- package/dist/components/co-toggle-button.js +1 -1
- package/dist/components/co-tooltip.js +1 -1
- package/dist/components/co-transfer-list.js +1 -1
- package/dist/components/co-video.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/p-BHqdcGDh.js +1 -0
- package/dist/components/{p-D3Y_ti3Q.js → p-BJTMFYax.js} +1 -1
- package/dist/components/p-Ba5lW0pA.js +1 -0
- package/dist/components/{p-CegCk7FL.js → p-Bgxofdfb.js} +1 -1
- package/dist/components/{p-BB2OaYKF.js → p-CNIs9j-h.js} +1 -1
- package/dist/components/{p-DeZxp9vb.js → p-COb8X_fE.js} +1 -1
- package/dist/components/{p-BFeE_fiq.js → p-Cam92sWP.js} +1 -1
- package/dist/components/p-CmCsm4L-.js +1 -0
- package/dist/components/p-D3ts7oo9.js +1 -0
- package/dist/components/{p-BNKz39GA.js → p-D4SOCy8I.js} +1 -1
- package/dist/components/{p-DKh8ZK4U.js → p-Dh-h40mY.js} +1 -1
- package/dist/components/p-DrQh1Cb8.js +1 -0
- package/dist/components/p-DvL2TcDG.js +1 -0
- package/dist/components/{p-C_ULDaks.js → p-OKwHt2i9.js} +1 -1
- package/dist/components/p-QWi9AmnD.js +1 -0
- package/dist/components/p-Xwo2HQmt.js +1 -0
- package/dist/components/p-_k-j03K-.js +1 -0
- package/dist/components/{p-B7vGYFbO.js → p-eSq2ze8W.js} +1 -1
- package/dist/components/p-ivjj-BP8.js +1 -0
- package/dist/components/{p-DxCFMMfY.js → p-lus32JrB.js} +1 -1
- package/dist/esm/co-accordion.entry.js +4 -4
- package/dist/esm/co-app-shell.entry.js +3 -3
- package/dist/esm/co-autocomplete.entry.js +38 -73
- package/dist/esm/co-avatar-group.entry.js +3 -3
- package/dist/esm/co-avatar.entry.js +9 -4
- package/dist/esm/co-badge.entry.js +2 -2
- package/dist/esm/co-bottom-sheet.entry.js +4 -4
- package/dist/esm/co-breadcrumb-item.entry.js +35 -0
- package/dist/esm/co-breadcrumb.entry.js +53 -0
- package/dist/esm/co-button-group.entry.js +3 -3
- package/dist/esm/co-button.entry.js +10 -4
- package/dist/esm/co-calendar-month.entry.js +2 -2
- package/dist/esm/co-calendar_3.entry.js +50 -15
- package/dist/esm/co-card.entry.js +3 -3
- package/dist/esm/co-checkbox-group.entry.js +4 -4
- package/dist/esm/co-checkbox.entry.js +18 -6
- package/dist/esm/co-chip_2.entry.js +482 -0
- package/dist/esm/co-color-picker.entry.js +4 -4
- package/dist/esm/co-column-picker.entry.js +3 -3
- package/dist/esm/co-combobox.entry.js +52 -83
- package/dist/esm/co-command-search.entry.js +21 -60
- package/dist/esm/co-data-table-pagination.entry.js +5 -5
- package/dist/esm/co-data-table.entry.js +73 -17
- package/dist/esm/co-date-picker.entry.js +2 -2
- package/dist/esm/co-date-range-picker.entry.js +3 -3
- package/dist/esm/co-date-range.entry.js +2 -2
- package/dist/esm/co-drive-card.entry.js +79 -0
- package/dist/esm/co-drop-zone.entry.js +61 -0
- package/dist/esm/co-empty-state.entry.js +13 -3
- package/dist/esm/co-event-calendar.entry.js +3 -3
- package/dist/esm/co-fab.entry.js +5 -5
- package/dist/esm/co-file-field.entry.js +7 -7
- package/dist/esm/co-file-type-tile.entry.js +76 -0
- package/dist/esm/co-helper-text.entry.js +3 -3
- package/dist/esm/co-icon-button.entry.js +23 -7
- package/dist/esm/co-icon.entry.js +3 -3
- package/dist/esm/co-input.entry.js +36 -7
- package/dist/esm/co-json-field.entry.js +5 -5
- package/dist/esm/co-lightbox.entry.js +6 -6
- package/dist/esm/co-list-footer.entry.js +2 -2
- package/dist/esm/co-list-item.entry.js +5 -5
- package/dist/esm/co-loader.entry.js +32 -0
- package/dist/esm/co-media-thumb.entry.js +34 -0
- package/dist/esm/co-menu-divider.entry.js +2 -2
- package/dist/esm/co-menu-item.entry.js +11 -3
- package/dist/esm/co-menu.entry.js +3 -3
- package/dist/esm/co-modal.entry.js +29 -5
- package/dist/esm/co-navbar.entry.js +3 -3
- package/dist/esm/co-number-field.entry.js +5 -5
- package/dist/esm/{co-loader_2.entry.js → co-overlay.entry.js} +3 -32
- package/dist/esm/co-page-header.entry.js +2 -2
- package/dist/esm/co-phone-field.entry.js +4 -4
- package/dist/esm/co-popover.entry.js +12 -3
- package/dist/esm/co-progress-bar.entry.js +4 -4
- package/dist/esm/co-progress-circle.entry.js +3 -3
- package/dist/esm/co-radio-group.entry.js +4 -4
- package/dist/esm/co-radio.entry.js +4 -4
- package/dist/esm/co-rating.entry.js +4 -4
- package/dist/esm/co-ref-field.entry.js +31 -135
- package/dist/esm/co-rich-text-editor.entry.js +5 -5
- package/dist/esm/co-rich-text-toolbar.entry.js +1 -1
- package/dist/esm/co-rich-text-viewer.entry.js +2 -2
- package/dist/esm/co-row.entry.js +3 -3
- package/dist/esm/co-segmented-bar.entry.js +56 -0
- package/dist/esm/co-select.entry.js +7 -7
- package/dist/esm/co-separator.entry.js +2 -2
- package/dist/esm/co-sidebar-nav.entry.js +10 -8
- package/dist/esm/co-sidebar.entry.js +3 -3
- package/dist/esm/co-skeleton.entry.js +2 -2
- package/dist/esm/co-slider.entry.js +3 -3
- package/dist/esm/co-switch.entry.js +6 -6
- package/dist/esm/co-tab-group.entry.js +21 -3
- package/dist/esm/co-tab.entry.js +8 -5
- package/dist/esm/co-tags-field.entry.js +8 -8
- package/dist/esm/co-textarea.entry.js +6 -6
- package/dist/esm/co-toast.entry.js +10 -4
- package/dist/esm/co-toggle-button-group.entry.js +16 -4
- package/dist/esm/co-toggle-button.entry.js +9 -5
- package/dist/esm/co-tooltip.entry.js +3 -3
- package/dist/esm/co-transfer-list.entry.js +3 -3
- package/dist/esm/co-video.entry.js +4 -4
- package/dist/esm/cobalt.js +3 -3
- package/dist/esm/{fieldChip-GPikjpYw.js → fieldChip-ChXW__C5.js} +1 -1
- package/dist/esm/{index-w_Wxgclf.js → index-Cyrxk8Qq.js} +64 -11
- package/dist/esm/{index-CYsftTKf.js → index-tT-aZV0-.js} +69 -13
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{requiredMark-CEbXKHcU.js → requiredMark-C7-_2UhB.js} +1 -1
- package/dist/types/components/co-accordion/co-accordion.d.ts +3 -0
- package/dist/types/components/co-autocomplete/co-autocomplete.d.ts +12 -14
- package/dist/types/components/co-avatar/co-avatar.d.ts +2 -0
- package/dist/types/components/co-breadcrumb/co-breadcrumb.d.ts +27 -0
- package/dist/types/components/co-breadcrumb-item/co-breadcrumb-item.d.ts +33 -0
- package/dist/types/components/co-button/co-button.d.ts +4 -0
- package/dist/types/components/co-checkbox/co-checkbox.d.ts +10 -2
- package/dist/types/components/co-chip/co-chip.d.ts +15 -3
- package/dist/types/components/co-combobox/co-combobox.d.ts +29 -15
- package/dist/types/components/co-command-search/co-command-search.d.ts +13 -5
- package/dist/types/components/co-command-search/commandSearchLogic.d.ts +1 -1
- package/dist/types/components/co-data-table/co-data-table.d.ts +35 -1
- package/dist/types/components/co-drawer/co-drawer.d.ts +12 -0
- package/dist/types/components/co-drive-card/co-drive-card.d.ts +52 -0
- package/dist/types/components/co-drop-zone/co-drop-zone.d.ts +38 -0
- package/dist/types/components/co-empty-state/co-empty-state.d.ts +6 -0
- package/dist/types/components/co-fab/co-fab.d.ts +3 -1
- package/dist/types/components/co-file-type-tile/co-file-type-tile.d.ts +11 -0
- package/dist/types/components/co-icon-button/co-icon-button.d.ts +18 -3
- package/dist/types/components/co-input/co-input.d.ts +13 -1
- package/dist/types/components/co-media-thumb/co-media-thumb.d.ts +21 -0
- package/dist/types/components/co-menu/co-menu.d.ts +4 -0
- package/dist/types/components/co-menu-item/co-menu-item.d.ts +10 -1
- package/dist/types/components/co-modal/co-modal.d.ts +20 -2
- package/dist/types/components/co-option-list/co-option-list.d.ts +105 -0
- package/dist/types/components/co-option-list/optionListLogic.d.ts +69 -0
- package/dist/types/components/co-popover/co-popover.d.ts +1 -0
- package/dist/types/components/co-ref-field/co-ref-field.d.ts +8 -30
- package/dist/types/components/co-segmented-bar/co-segmented-bar.d.ts +32 -0
- package/dist/types/components/co-sidebar-nav/co-sidebar-nav.d.ts +2 -0
- package/dist/types/components/co-tab/co-tab.d.ts +4 -0
- package/dist/types/components/co-tab-group/co-tab-group.d.ts +7 -0
- package/dist/types/components/co-toast/co-toast.d.ts +7 -0
- package/dist/types/components/co-toggle-button/co-toggle-button.d.ts +6 -0
- package/dist/types/components/co-toggle-button-group/co-toggle-button-group.d.ts +5 -0
- package/dist/types/components.d.ts +1451 -82
- package/package.json +3 -3
- package/dist/cjs/co-chip.cjs.entry.js +0 -86
- package/dist/cobalt/p-0a506c9d.entry.js +0 -1
- package/dist/cobalt/p-0e8c0d87.entry.js +0 -1
- package/dist/cobalt/p-136ad468.entry.js +0 -1
- package/dist/cobalt/p-14b59277.entry.js +0 -1
- package/dist/cobalt/p-1774d211.entry.js +0 -1
- package/dist/cobalt/p-180e1106.entry.js +0 -1
- package/dist/cobalt/p-1dc9c49e.entry.js +0 -1
- package/dist/cobalt/p-201eaf35.entry.js +0 -1
- package/dist/cobalt/p-260101ab.entry.js +0 -1
- package/dist/cobalt/p-2d2ce434.entry.js +0 -1
- package/dist/cobalt/p-3a257cb0.entry.js +0 -1
- package/dist/cobalt/p-3e187456.entry.js +0 -1
- package/dist/cobalt/p-4431faac.entry.js +0 -1
- package/dist/cobalt/p-456fa86f.entry.js +0 -1
- package/dist/cobalt/p-5890e4d1.entry.js +0 -1
- package/dist/cobalt/p-62274eba.entry.js +0 -1
- package/dist/cobalt/p-635b03d5.entry.js +0 -1
- package/dist/cobalt/p-64ddee92.entry.js +0 -1
- package/dist/cobalt/p-69d4c0c8.entry.js +0 -1
- package/dist/cobalt/p-6c480916.entry.js +0 -1
- package/dist/cobalt/p-8012e152.entry.js +0 -1
- package/dist/cobalt/p-80b27203.entry.js +0 -1
- package/dist/cobalt/p-867c1465.entry.js +0 -1
- package/dist/cobalt/p-86a143d7.entry.js +0 -1
- package/dist/cobalt/p-8dc1dab8.entry.js +0 -1
- package/dist/cobalt/p-92bd9b29.entry.js +0 -1
- package/dist/cobalt/p-98ab5f3f.entry.js +0 -1
- package/dist/cobalt/p-9a088515.entry.js +0 -1
- package/dist/cobalt/p-9abbd436.entry.js +0 -1
- package/dist/cobalt/p-9d69c067.entry.js +0 -1
- package/dist/cobalt/p-CYsftTKf.js +0 -2
- package/dist/cobalt/p-c4f59532.entry.js +0 -1
- package/dist/cobalt/p-e54dd404.entry.js +0 -1
- package/dist/cobalt/p-eb73052a.entry.js +0 -1
- package/dist/cobalt/p-oImf-7fN.js +0 -1
- package/dist/collection/components/co-command-search/commandSearchGroup.js +0 -17
- package/dist/components/p-Ba4v1NXo.js +0 -1
- package/dist/components/p-EPZfLt5l.js +0 -1
- package/dist/components/p-FMnqPWcM.js +0 -1
- package/dist/components/p-Hzh9U2cM.js +0 -1
- package/dist/components/p-WZ06pT2Y.js +0 -1
- package/dist/components/p-tloAgDin.js +0 -1
- package/dist/esm/co-chip.entry.js +0 -84
- package/dist/types/components/co-command-search/commandSearchGroup.d.ts +0 -20
|
@@ -22,11 +22,18 @@ export class CoDataTable {
|
|
|
22
22
|
this.emptyMessage = 'No records found';
|
|
23
23
|
/** Empty state icon (Phosphor icon name). */
|
|
24
24
|
this.emptyIcon = 'magnifying-glass';
|
|
25
|
+
/** Variant for the prop-driven empty-action button. */
|
|
26
|
+
this.emptyActionVariant = 'stroke';
|
|
25
27
|
/* ─── SORT ──────────────────────────────────────────────── */
|
|
26
28
|
/** Current sort field */
|
|
27
29
|
this.sortField = '';
|
|
28
30
|
/** Current sort direction */
|
|
29
31
|
this.sortOrder = '';
|
|
32
|
+
/* ─── COLUMN FILTERS ────────────────────────────────────── */
|
|
33
|
+
/** Fields with an active column filter (funnel filled + always visible). JSON string or array. */
|
|
34
|
+
this.filteredFields = '[]';
|
|
35
|
+
/** Fields filtered by OTHER filter layers (funnel dimmed hint). JSON string or array. */
|
|
36
|
+
this.indirectFilteredFields = '[]';
|
|
30
37
|
/* ─── SELECTION ─────────────────────────────────────────── */
|
|
31
38
|
/** Enable row selection with checkboxes */
|
|
32
39
|
this.selectable = false;
|
|
@@ -39,6 +46,8 @@ export class CoDataTable {
|
|
|
39
46
|
this.parsedColumns = [];
|
|
40
47
|
this.parsedRows = [];
|
|
41
48
|
this.parsedSelectedKeys = new Set();
|
|
49
|
+
this.parsedFilteredFields = [];
|
|
50
|
+
this.parsedIndirectFields = [];
|
|
42
51
|
this.columnWidths = new Map();
|
|
43
52
|
this.resizingColumn = null;
|
|
44
53
|
this.resizeStartX = 0;
|
|
@@ -81,10 +90,28 @@ export class CoDataTable {
|
|
|
81
90
|
this.parsedSelectedKeys = new Set();
|
|
82
91
|
}
|
|
83
92
|
}
|
|
93
|
+
parseFilteredFields() {
|
|
94
|
+
try {
|
|
95
|
+
this.parsedFilteredFields = typeof this.filteredFields === 'string' ? JSON.parse(this.filteredFields) : (this.filteredFields || []);
|
|
96
|
+
}
|
|
97
|
+
catch (_a) {
|
|
98
|
+
this.parsedFilteredFields = [];
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
parseIndirectFields() {
|
|
102
|
+
try {
|
|
103
|
+
this.parsedIndirectFields = typeof this.indirectFilteredFields === 'string' ? JSON.parse(this.indirectFilteredFields) : (this.indirectFilteredFields || []);
|
|
104
|
+
}
|
|
105
|
+
catch (_a) {
|
|
106
|
+
this.parsedIndirectFields = [];
|
|
107
|
+
}
|
|
108
|
+
}
|
|
84
109
|
componentWillLoad() {
|
|
85
110
|
this.parseColumns();
|
|
86
111
|
this.parseRows();
|
|
87
112
|
this.parseSelectedKeys();
|
|
113
|
+
this.parseFilteredFields();
|
|
114
|
+
this.parseIndirectFields();
|
|
88
115
|
}
|
|
89
116
|
/* ─── SORT HANDLERS ─────────────────────────────────────── */
|
|
90
117
|
handleSort(field) {
|
|
@@ -172,6 +199,15 @@ export class CoDataTable {
|
|
|
172
199
|
e.stopPropagation();
|
|
173
200
|
this.coColumnPin.emit({ field });
|
|
174
201
|
}
|
|
202
|
+
handleColumnFilter(field, e) {
|
|
203
|
+
e.stopPropagation();
|
|
204
|
+
const el = e.currentTarget;
|
|
205
|
+
const r = el.getBoundingClientRect();
|
|
206
|
+
this.coHeaderFilter.emit({
|
|
207
|
+
field,
|
|
208
|
+
rect: { top: r.top, left: r.left, bottom: r.bottom, right: r.right, width: r.width, height: r.height },
|
|
209
|
+
});
|
|
210
|
+
}
|
|
175
211
|
/* ─── HELPERS ───────────────────────────────────────────── */
|
|
176
212
|
formatCellValue(value) {
|
|
177
213
|
if (value == null)
|
|
@@ -268,35 +304,47 @@ export class CoDataTable {
|
|
|
268
304
|
: undefined }, h("span", { class: "co-data-table__th-content" }, h("span", { class: {
|
|
269
305
|
'co-data-table__pin-icon': true,
|
|
270
306
|
'co-data-table__pin-icon--active': !!col.sticky,
|
|
271
|
-
}, title: col.sticky ? 'Unpin column' : 'Pin column', onClick: (e) => this.handleColumnPin(col.field, e) }, h("co-icon", { name: "push-pin", size: 14, weight: col.sticky ? 'fill' : 'regular' })), col.sortable ? (h("button", { type: "button", class: "co-data-table__sort-button", "aria-label": `Sort by ${col.label}`, onClick: () => this.handleSort(col.field) }, h("span", { class: "co-data-table__th-label" }, col.label), this.renderSortIcon(col))) : (h("span", { class: "co-data-table__th-label" }, col.label))
|
|
307
|
+
}, title: col.sticky ? 'Unpin column' : 'Pin column', onClick: (e) => this.handleColumnPin(col.field, e) }, h("co-icon", { name: "push-pin", size: 14, weight: col.sticky ? 'fill' : 'regular' })), col.sortable ? (h("button", { type: "button", class: "co-data-table__sort-button", "aria-label": `Sort by ${col.label}`, onClick: () => this.handleSort(col.field) }, h("span", { class: "co-data-table__th-label" }, col.label), this.renderSortIcon(col))) : (h("span", { class: "co-data-table__th-label" }, col.label)), col.filterable && (h("span", { class: {
|
|
308
|
+
'co-data-table__filter-icon': true,
|
|
309
|
+
'co-data-table__filter-icon--active': this.parsedFilteredFields.includes(col.field),
|
|
310
|
+
'co-data-table__filter-icon--indirect': !this.parsedFilteredFields.includes(col.field) && this.parsedIndirectFields.includes(col.field),
|
|
311
|
+
}, title: this.parsedFilteredFields.includes(col.field)
|
|
312
|
+
? 'Edit column filter'
|
|
313
|
+
: this.parsedIndirectFields.includes(col.field)
|
|
314
|
+
? 'Filtered by other filters'
|
|
315
|
+
: 'Filter column', onClick: (e) => this.handleColumnFilter(col.field, e) }, h("co-icon", { name: "funnel", size: 14, weight: this.parsedFilteredFields.includes(col.field) ? 'fill' : 'regular' })))), this.resizable && i < this.parsedColumns.length - 1 && (h("span", { class: {
|
|
272
316
|
'co-data-table__resize-handle': true,
|
|
273
317
|
'co-data-table__resize-handle--active': this.resizingColumn === col.field,
|
|
274
318
|
}, onMouseDown: (e) => this.handleResizeStart(col.field, e), onClick: (e) => e.stopPropagation() }))))))));
|
|
275
319
|
}
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
320
|
+
// Skeleton rows shown WHILE loading. Rendered as a SEPARATE <tbody> that
|
|
321
|
+
// co-exists with the always-mounted default <slot/> (see render()) — it never
|
|
322
|
+
// REPLACES it. Previously the body position was swapped between this skeleton
|
|
323
|
+
// and <slot/> on every `loading` toggle; that swap tore the slot down and
|
|
324
|
+
// orphaned the consumer's projected rows (e.g. Vue's <tbody>), so a concurrent
|
|
325
|
+
// consumer patch threw "insertBefore ... not a child of this node" on data/model
|
|
326
|
+
// switches. Row rendering itself is still delegated to the consumer via the
|
|
327
|
+
// default slot — this avoids Stencil's costly per-cell named-slot relocation.
|
|
328
|
+
renderSkeletonBody() {
|
|
329
|
+
return (h("tbody", { class: "co-data-table__body co-data-table__body--skeleton", "aria-hidden": "true" }, Array.from({ length: this.skeletonRows }).map((_, rowIndex) => (h("tr", { class: "co-data-table__row co-data-table__row--skeleton", key: `skeleton-${rowIndex}` }, this.selectable && (h("td", { class: "co-data-table__td co-data-table__td--checkbox co-data-table__td--sticky", style: { left: '0px' } }, h("div", { class: "co-data-table__skeleton co-data-table__skeleton--checkbox" }))), this.parsedColumns.map(col => (h("td", { class: {
|
|
330
|
+
'co-data-table__td': true,
|
|
331
|
+
'co-data-table__td--sticky': !!col.sticky,
|
|
332
|
+
}, style: Object.assign({}, this.getColumnStyle(col)) }, h("div", { class: "co-data-table__skeleton" })))))))));
|
|
287
333
|
}
|
|
288
334
|
renderEmpty() {
|
|
289
335
|
if (this.loading || this.parsedRows.length > 0)
|
|
290
336
|
return null;
|
|
291
|
-
return (h("div", { class: "co-data-table__empty", part: "empty" }, h("div", { class: "co-data-table__empty-icon" }, h("co-icon", { name: this.emptyIcon, size: 32, weight: "regular" })), this.emptyTitle && (h("h3", { class: "co-data-table__empty-title" }, this.emptyTitle)), this.emptyMessage && (h("p", { class: "co-data-table__empty-message" }, this.emptyMessage)), h("div", { class: "co-data-table__empty-action" },
|
|
337
|
+
return (h("div", { class: "co-data-table__empty", part: "empty" }, h("div", { class: "co-data-table__empty-icon" }, h("co-icon", { name: this.emptyIcon, size: 32, weight: "regular" })), this.emptyTitle && (h("h3", { class: "co-data-table__empty-title" }, this.emptyTitle)), this.emptyMessage && (h("p", { class: "co-data-table__empty-message" }, this.emptyMessage)), h("div", { class: "co-data-table__empty-action" }, this.emptyActionLabel
|
|
338
|
+
? (h("co-button", { variant: this.emptyActionVariant, size: "m", label: this.emptyActionLabel, iconLeft: this.emptyActionIcon, onClick: () => this.coEmptyAction.emit() }))
|
|
339
|
+
: h("slot", { name: "empty-action" }))));
|
|
292
340
|
}
|
|
293
341
|
render() {
|
|
294
|
-
return (h("div", { key: '
|
|
342
|
+
return (h("div", { key: 'baf9a797b25e76d4b054513b3e4c90aacce24a80', class: {
|
|
295
343
|
'co-data-table': true,
|
|
296
344
|
'co-data-table--resizing': this.resizingColumn !== null,
|
|
297
345
|
'co-data-table--loading': this.loading,
|
|
298
346
|
'co-data-table--empty': !this.loading && this.parsedRows.length === 0,
|
|
299
|
-
} }, h("div", { key: '
|
|
347
|
+
} }, h("div", { key: '132100357cb7fed5d27054e2e3a66c218dddad9d', class: "co-data-table__scroll" }, h("table", { key: '0e183744b6f1c7c44ec8dd741eb8cdbbbdf5b638', class: "co-data-table__table", style: { width: `${this.getTableWidth()}px`, minWidth: '100%' } }, this.renderColgroup(), this.renderHeader(), h("slot", { key: 'c3c58515f63fdfdfa760ba483f00c686863ddb20' }), this.loading ? this.renderSkeletonBody() : null)), this.renderEmpty()));
|
|
300
348
|
}
|
|
301
349
|
static get is() { return "co-data-table"; }
|
|
302
350
|
static get originalStyleUrls() {
|
|
@@ -477,6 +525,64 @@ export class CoDataTable {
|
|
|
477
525
|
"attribute": "empty-icon",
|
|
478
526
|
"defaultValue": "'magnifying-glass'"
|
|
479
527
|
},
|
|
528
|
+
"emptyActionLabel": {
|
|
529
|
+
"type": "string",
|
|
530
|
+
"mutable": false,
|
|
531
|
+
"complexType": {
|
|
532
|
+
"original": "string",
|
|
533
|
+
"resolved": "string | undefined",
|
|
534
|
+
"references": {}
|
|
535
|
+
},
|
|
536
|
+
"required": false,
|
|
537
|
+
"optional": true,
|
|
538
|
+
"docs": {
|
|
539
|
+
"tags": [],
|
|
540
|
+
"text": "Empty-state action button, rendered BY the component (not via slot). Prefer\nthis over the `empty-action` slot: a non-shadow component relocates slotted\nlight-DOM nodes, so projecting togglable framework content (e.g. a Vue\n`v-if` button) corrupts that framework's virtual DOM. Leave empty to fall\nback to the `empty-action` slot."
|
|
541
|
+
},
|
|
542
|
+
"getter": false,
|
|
543
|
+
"setter": false,
|
|
544
|
+
"reflect": false,
|
|
545
|
+
"attribute": "empty-action-label"
|
|
546
|
+
},
|
|
547
|
+
"emptyActionVariant": {
|
|
548
|
+
"type": "string",
|
|
549
|
+
"mutable": false,
|
|
550
|
+
"complexType": {
|
|
551
|
+
"original": "'primary' | 'secondary' | 'stroke' | 'ghost' | 'danger' | 'success'",
|
|
552
|
+
"resolved": "\"danger\" | \"ghost\" | \"primary\" | \"secondary\" | \"stroke\" | \"success\"",
|
|
553
|
+
"references": {}
|
|
554
|
+
},
|
|
555
|
+
"required": false,
|
|
556
|
+
"optional": false,
|
|
557
|
+
"docs": {
|
|
558
|
+
"tags": [],
|
|
559
|
+
"text": "Variant for the prop-driven empty-action button."
|
|
560
|
+
},
|
|
561
|
+
"getter": false,
|
|
562
|
+
"setter": false,
|
|
563
|
+
"reflect": false,
|
|
564
|
+
"attribute": "empty-action-variant",
|
|
565
|
+
"defaultValue": "'stroke'"
|
|
566
|
+
},
|
|
567
|
+
"emptyActionIcon": {
|
|
568
|
+
"type": "string",
|
|
569
|
+
"mutable": false,
|
|
570
|
+
"complexType": {
|
|
571
|
+
"original": "string",
|
|
572
|
+
"resolved": "string | undefined",
|
|
573
|
+
"references": {}
|
|
574
|
+
},
|
|
575
|
+
"required": false,
|
|
576
|
+
"optional": true,
|
|
577
|
+
"docs": {
|
|
578
|
+
"tags": [],
|
|
579
|
+
"text": "Optional left icon (Phosphor name) for the prop-driven empty-action button."
|
|
580
|
+
},
|
|
581
|
+
"getter": false,
|
|
582
|
+
"setter": false,
|
|
583
|
+
"reflect": false,
|
|
584
|
+
"attribute": "empty-action-icon"
|
|
585
|
+
},
|
|
480
586
|
"sortField": {
|
|
481
587
|
"type": "string",
|
|
482
588
|
"mutable": true,
|
|
@@ -517,6 +623,46 @@ export class CoDataTable {
|
|
|
517
623
|
"attribute": "sort-order",
|
|
518
624
|
"defaultValue": "''"
|
|
519
625
|
},
|
|
626
|
+
"filteredFields": {
|
|
627
|
+
"type": "string",
|
|
628
|
+
"mutable": false,
|
|
629
|
+
"complexType": {
|
|
630
|
+
"original": "string | string[]",
|
|
631
|
+
"resolved": "string | string[]",
|
|
632
|
+
"references": {}
|
|
633
|
+
},
|
|
634
|
+
"required": false,
|
|
635
|
+
"optional": false,
|
|
636
|
+
"docs": {
|
|
637
|
+
"tags": [],
|
|
638
|
+
"text": "Fields with an active column filter (funnel filled + always visible). JSON string or array."
|
|
639
|
+
},
|
|
640
|
+
"getter": false,
|
|
641
|
+
"setter": false,
|
|
642
|
+
"reflect": true,
|
|
643
|
+
"attribute": "filtered-fields",
|
|
644
|
+
"defaultValue": "'[]'"
|
|
645
|
+
},
|
|
646
|
+
"indirectFilteredFields": {
|
|
647
|
+
"type": "string",
|
|
648
|
+
"mutable": false,
|
|
649
|
+
"complexType": {
|
|
650
|
+
"original": "string | string[]",
|
|
651
|
+
"resolved": "string | string[]",
|
|
652
|
+
"references": {}
|
|
653
|
+
},
|
|
654
|
+
"required": false,
|
|
655
|
+
"optional": false,
|
|
656
|
+
"docs": {
|
|
657
|
+
"tags": [],
|
|
658
|
+
"text": "Fields filtered by OTHER filter layers (funnel dimmed hint). JSON string or array."
|
|
659
|
+
},
|
|
660
|
+
"getter": false,
|
|
661
|
+
"setter": false,
|
|
662
|
+
"reflect": true,
|
|
663
|
+
"attribute": "indirect-filtered-fields",
|
|
664
|
+
"defaultValue": "'[]'"
|
|
665
|
+
},
|
|
520
666
|
"selectable": {
|
|
521
667
|
"type": "boolean",
|
|
522
668
|
"mutable": false,
|
|
@@ -584,6 +730,8 @@ export class CoDataTable {
|
|
|
584
730
|
"parsedColumns": {},
|
|
585
731
|
"parsedRows": {},
|
|
586
732
|
"parsedSelectedKeys": {},
|
|
733
|
+
"parsedFilteredFields": {},
|
|
734
|
+
"parsedIndirectFields": {},
|
|
587
735
|
"columnWidths": {},
|
|
588
736
|
"resizingColumn": {},
|
|
589
737
|
"resizeStartX": {},
|
|
@@ -666,6 +814,21 @@ export class CoDataTable {
|
|
|
666
814
|
"resolved": "{ field: string; }",
|
|
667
815
|
"references": {}
|
|
668
816
|
}
|
|
817
|
+
}, {
|
|
818
|
+
"method": "coHeaderFilter",
|
|
819
|
+
"name": "coHeaderFilter",
|
|
820
|
+
"bubbles": true,
|
|
821
|
+
"cancelable": true,
|
|
822
|
+
"composed": true,
|
|
823
|
+
"docs": {
|
|
824
|
+
"tags": [],
|
|
825
|
+
"text": "Emitted when a column's filter icon is clicked (rect = icon bounding box for anchoring)."
|
|
826
|
+
},
|
|
827
|
+
"complexType": {
|
|
828
|
+
"original": "{ field: string; rect: { top: number; left: number; bottom: number; right: number; width: number; height: number } }",
|
|
829
|
+
"resolved": "{ field: string; rect: { top: number; left: number; bottom: number; right: number; width: number; height: number; }; }",
|
|
830
|
+
"references": {}
|
|
831
|
+
}
|
|
669
832
|
}, {
|
|
670
833
|
"method": "coRowDblClick",
|
|
671
834
|
"name": "coRowDblClick",
|
|
@@ -696,6 +859,21 @@ export class CoDataTable {
|
|
|
696
859
|
"resolved": "{ row: any; index: number; }",
|
|
697
860
|
"references": {}
|
|
698
861
|
}
|
|
862
|
+
}, {
|
|
863
|
+
"method": "coEmptyAction",
|
|
864
|
+
"name": "coEmptyAction",
|
|
865
|
+
"bubbles": true,
|
|
866
|
+
"cancelable": true,
|
|
867
|
+
"composed": true,
|
|
868
|
+
"docs": {
|
|
869
|
+
"tags": [],
|
|
870
|
+
"text": "Fired when the prop-driven empty-action button (`emptyActionLabel`) is clicked."
|
|
871
|
+
},
|
|
872
|
+
"complexType": {
|
|
873
|
+
"original": "void",
|
|
874
|
+
"resolved": "void",
|
|
875
|
+
"references": {}
|
|
876
|
+
}
|
|
699
877
|
}];
|
|
700
878
|
}
|
|
701
879
|
static get elementRef() { return "el"; }
|
|
@@ -709,6 +887,12 @@ export class CoDataTable {
|
|
|
709
887
|
}, {
|
|
710
888
|
"propName": "selectedKeys",
|
|
711
889
|
"methodName": "parseSelectedKeys"
|
|
890
|
+
}, {
|
|
891
|
+
"propName": "filteredFields",
|
|
892
|
+
"methodName": "parseFilteredFields"
|
|
893
|
+
}, {
|
|
894
|
+
"propName": "indirectFilteredFields",
|
|
895
|
+
"methodName": "parseIndirectFields"
|
|
712
896
|
}];
|
|
713
897
|
}
|
|
714
898
|
}
|
|
@@ -84,17 +84,17 @@ export class CoDataTablePagination {
|
|
|
84
84
|
}
|
|
85
85
|
render() {
|
|
86
86
|
const pages = this.getVisiblePages();
|
|
87
|
-
return (h("div", { key: '
|
|
87
|
+
return (h("div", { key: 'a0634afed71b18005f42921052b2bb41b5710818', class: "co-pagination", part: "pagination" }, h("div", { key: '08afef194748764e581c9c0e173af57bd7484e6a', class: "co-pagination__section" }, h("span", { key: '8bf238dd11b3c322becb18e07afbe087584ce3e0', class: "co-pagination__label" }, this.jumpToPageLabel), h("input", { key: '109f501ce7a1dc4ee2c109d75f7fcbc81aa3bfcc', type: "text", class: "co-pagination__jump-input", value: this.jumpToValue || String(this.page), onInput: (e) => {
|
|
88
88
|
this.jumpToValue = e.target.value;
|
|
89
89
|
}, onKeyDown: (e) => this.handleJumpToPage(e), onFocus: (e) => {
|
|
90
90
|
e.target.select();
|
|
91
|
-
}, part: "jump-input" })), h("div", { key: '
|
|
91
|
+
}, part: "jump-input" })), h("div", { key: '706f537a7165004e18a4cf9f3b172392cbc25657', class: "co-pagination__section co-pagination__section--page-size" }, h("div", { key: '15102e983f876658cf56c2aba8d94d29d132fa47', class: "co-pagination__page-size-trigger", onClick: () => { this.showPageSizeDropdown = !this.showPageSizeDropdown; } }, h("span", { key: '5eb114f934a1f694c45ae4165d3dc32e120fd7c9', class: "co-pagination__page-size-value" }, this.pageSize), h("span", { key: 'f767df618ae0f1193dd107d8b8ab66434ab3da92', class: "co-pagination__label" }, this.perPageLabel), h("co-icon", { key: '013df9bfa151cbc9c266c10e94e18823edd48050', name: "caret-down", size: 14 })), this.showPageSizeDropdown && (h("div", { key: '634d6cdb5ceaaf6e0ffee6ee3533d568765d8868', class: "co-pagination__page-size-dropdown", part: "dropdown" }, this.parsedPageSizes.map(size => (h("button", { class: {
|
|
92
92
|
'co-pagination__page-size-option': true,
|
|
93
93
|
'co-pagination__page-size-option--active': size === this.pageSize,
|
|
94
|
-
}, onClick: () => this.changePageSize(size) }, size)))))), h("div", { key: '
|
|
94
|
+
}, onClick: () => this.changePageSize(size) }, size)))))), h("div", { key: '9cd537ceee590fdf03fb71f1e703c468e88881c5', class: "co-pagination__spacer" }), h("div", { key: '4f958f5ce6d1d5bb77a232d49dcf0375cadd8bff', class: "co-pagination__section" }, h("span", { key: '50717cd14f6dd64a47c31d64c6b98064316c5363', class: "co-pagination__count" }, this.totalCount.toLocaleString(), " ", this.recordsLabel)), h("div", { key: 'd133196b3970aed10f5e80fe8edc16576d3ef723', class: "co-pagination__section co-pagination__nav" }, h("button", { key: '497d2dec11447e6426810770a38ff09564796336', class: "co-pagination__nav-btn", disabled: this.page <= 1, onClick: () => this.goToPage(this.page - 1), part: "prev-btn" }, this.previousLabel), pages.map(p => p === '...' ? (h("span", { class: "co-pagination__ellipsis" }, "\u2026")) : (h("button", { class: {
|
|
95
95
|
'co-pagination__page-btn': true,
|
|
96
96
|
'co-pagination__page-btn--active': p === this.page,
|
|
97
|
-
}, onClick: () => this.goToPage(p) }, p))), h("button", { key: '
|
|
97
|
+
}, onClick: () => this.goToPage(p) }, p))), h("button", { key: '86ef170b109112e82cc2b7e53932a1ce1594e3cf', class: "co-pagination__nav-btn", disabled: this.page >= this.totalPages, onClick: () => this.goToPage(this.page + 1), part: "next-btn" }, this.nextLabel))));
|
|
98
98
|
}
|
|
99
99
|
static get is() { return "co-data-table-pagination"; }
|
|
100
100
|
static get encapsulation() { return "shadow"; }
|
|
@@ -56,10 +56,10 @@
|
|
|
56
56
|
align-items: center;
|
|
57
57
|
gap: var(--co-spacing-sm2);
|
|
58
58
|
padding: var(--co-spacing-sm2) var(--co-spacing-md);
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
border: 1px solid var(--co-
|
|
59
|
+
/* Figma Text Field parity (same box as co-input): solid page surface +
|
|
60
|
+
Negro 25% border — tinted glass didn't read as editable on white. */
|
|
61
|
+
background: var(--co-semantic-surface-page);
|
|
62
|
+
border: 1px solid var(--co-color-opacity-negro-25, rgba(31, 28, 27, 0.25));
|
|
63
63
|
border-radius: var(--co-border-radius-xs);
|
|
64
64
|
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
65
65
|
min-height: 40px;
|
|
@@ -240,6 +240,3 @@
|
|
|
240
240
|
content: var(--co-field-required-text, ' (required)');
|
|
241
241
|
}
|
|
242
242
|
|
|
243
|
-
@supports not (background: color-mix(in srgb, red, transparent)) {
|
|
244
|
-
.co-date-field__field { background: var(--co-semantic-surface-secondary); }
|
|
245
|
-
}
|
|
@@ -162,20 +162,20 @@ export class CoDateField {
|
|
|
162
162
|
// should still fall back to the localized default placeholder.
|
|
163
163
|
const placeholder = this.placeholder || t.setDate;
|
|
164
164
|
const helper = this.isInvalid ? this.errorMessage : this.helperText;
|
|
165
|
-
return (h("div", { key: '
|
|
165
|
+
return (h("div", { key: '7c7de06d53bf9ab7dab40906d533bfaf1874e41e', class: {
|
|
166
166
|
'co-date-field': true,
|
|
167
167
|
'co-date-field--disabled': this.disabled,
|
|
168
168
|
'co-date-field--focused': this.hasFocus,
|
|
169
169
|
'co-date-field--filled': this.hasValue,
|
|
170
170
|
'co-date-field--invalid': this.isInvalid,
|
|
171
171
|
[`co-date-field--${this.size}`]: true,
|
|
172
|
-
}, part: "wrapper" }, this.label && (h("div", { key: '
|
|
172
|
+
}, part: "wrapper" }, this.label && (h("div", { key: '30828a7b19aae5f304a26ec5025dba14039060d2', class: "co-date-field__labels" }, h("label", { key: '0b004de41209191ee0a03cf8436eb4dba96bb99c', class: "co-date-field__label", part: "label" }, this.label, h(RequiredMark, { key: '810008c09dbc2fd5e889adc71230a546ab4e78df', required: this.required })))), h("div", { key: '8e488bd0ceb0b011fc4a903d66f3dd17a668cea3', class: "co-date-field__field-row" }, h("div", { key: '9a7fb685c5fc65ee9f731dba6c34a527044a1388', class: "co-date-field__field", part: "field" }, h("co-icon", { key: '81aa74d44ff1b524c253e278345c8add4fb3fe9f', name: "calendar", size: 16, class: "co-date-field__icon" }), h("div", { key: '4dc0d25d37fb8d099860566af1c2ac59d5111e4a', class: "co-date-field__input-wrapper" }, h("input", { key: '1aedac94aff9df44316509d9062e41f86a405a33', ref: (el) => (this.inputEl = el), class: "co-date-field__native", type: "text", inputMode: "numeric", autocomplete: "off", value: this.draft, placeholder: placeholder, disabled: this.disabled, readOnly: this.readonly, required: this.required, "aria-invalid": this.isInvalid ? 'true' : 'false', "aria-label": !this.label ? t.dateLabel : undefined, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, part: "input" })), this.clearable && (h("button", { key: '0e91b71755c341971064186ee1371d59353cdd1c', class: {
|
|
173
173
|
'co-date-field__clear': true,
|
|
174
174
|
'co-date-field__clear--hidden': !showClear,
|
|
175
|
-
}, type: "button", tabIndex: -1, onMouseDown: (e) => e.preventDefault() /* keep input focus */, onClick: this.handleClear, "aria-label": (_a = this.clearLabel) !== null && _a !== void 0 ? _a : t.clearDate, part: "clear" }, h("co-icon", { key: '
|
|
175
|
+
}, type: "button", tabIndex: -1, onMouseDown: (e) => e.preventDefault() /* keep input focus */, onClick: this.handleClear, "aria-label": (_a = this.clearLabel) !== null && _a !== void 0 ? _a : t.clearDate, part: "clear" }, h("co-icon", { key: 'c4714d0444f27adf4c85f9303d0a510cb63af406', name: "x-circle", size: 16, weight: "fill" }))))), this.name && h("input", { key: '257a873a76fdf65494778b1d514717ae2627f4ef', type: "hidden", name: this.name, value: (_b = this.value) !== null && _b !== void 0 ? _b : '' }), helper && (h("div", { key: '345fe8ad6fd0c5c512c038249f7d8f95ff286838', class: {
|
|
176
176
|
'co-date-field__helper': true,
|
|
177
177
|
'co-date-field__helper--error': this.isInvalid,
|
|
178
|
-
}, part: "helper" }, this.isInvalid && (h("co-icon", { key: '
|
|
178
|
+
}, part: "helper" }, this.isInvalid && (h("co-icon", { key: '32b6d53b1f8d78fdff90c960c039ac109c80c137', name: "warning-circle", size: 14, class: "co-date-field__helper-icon" })), h("span", { key: '6f9ad478ddb4401d314ad7ef4fb98b21230b5ef1', class: "co-date-field__helper-text" }, helper)))));
|
|
179
179
|
}
|
|
180
180
|
static get is() { return "co-date-field"; }
|
|
181
181
|
static get encapsulation() { return "shadow"; }
|
|
@@ -33,7 +33,7 @@ export class CoDateRange {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
render() {
|
|
36
|
-
return (h("co-date-range-picker", { key: '
|
|
36
|
+
return (h("co-date-range-picker", { key: '4982a84de425fdf533128dc3ce3665b51d8c885d', value: this.value, label: this.label, placeholder: this.placeholder, disabled: this.disabled, clearable: this.clearable, presets: this.presets, helperText: this.helperText, locale: this.locale, applyLabel: this.applyLabel, clearLabel: this.clearLabel, onCoApply: this.handleApply, onCoClear: () => this.coClear.emit() }));
|
|
37
37
|
}
|
|
38
38
|
static get is() { return "co-date-range"; }
|
|
39
39
|
static get encapsulation() { return "shadow"; }
|
|
@@ -38,10 +38,10 @@
|
|
|
38
38
|
width: 100%;
|
|
39
39
|
min-height: 40px;
|
|
40
40
|
padding: 0 var(--co-spacing-md);
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
border: 1px solid var(--co-
|
|
41
|
+
/* Figma Text Field parity (same box as co-input): solid page surface +
|
|
42
|
+
Negro 25% border — tinted glass didn't read as editable on white. */
|
|
43
|
+
background: var(--co-semantic-surface-page);
|
|
44
|
+
border: 1px solid var(--co-color-opacity-negro-25, rgba(31, 28, 27, 0.25));
|
|
45
45
|
border-radius: var(--co-border-radius-xs);
|
|
46
46
|
cursor: pointer;
|
|
47
47
|
color: var(--co-semantic-text-default);
|
|
@@ -189,8 +189,11 @@
|
|
|
189
189
|
}
|
|
190
190
|
|
|
191
191
|
.co-date-range-picker__btn--primary {
|
|
192
|
-
background: var(--co-
|
|
193
|
-
color: var(--co-
|
|
192
|
+
background: var(--co-semantic-surface-primary);
|
|
193
|
+
color: var(--co-semantic-on-primary);
|
|
194
|
+
}
|
|
195
|
+
.co-date-range-picker__btn--primary:hover:not(:disabled) {
|
|
196
|
+
opacity: 0.88;
|
|
194
197
|
}
|
|
195
198
|
.co-date-range-picker__btn--primary:disabled {
|
|
196
199
|
opacity: 0.5;
|
|
@@ -252,6 +255,3 @@
|
|
|
252
255
|
content: var(--co-field-required-text, ' (required)');
|
|
253
256
|
}
|
|
254
257
|
|
|
255
|
-
@supports not (background: color-mix(in srgb, red, transparent)) {
|
|
256
|
-
.co-date-range-picker__trigger { background: var(--co-semantic-surface-secondary); }
|
|
257
|
-
}
|
|
@@ -4,14 +4,26 @@
|
|
|
4
4
|
|
|
5
5
|
.co-drawer {
|
|
6
6
|
position: fixed;
|
|
7
|
-
background: var(--co-semantic-surface-page);
|
|
8
7
|
display: flex;
|
|
9
8
|
flex-direction: column;
|
|
10
9
|
font-family: var(--co-font-family-primary);
|
|
11
10
|
transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
|
|
12
|
-
overflow: hidden;
|
|
13
11
|
will-change: transform;
|
|
14
12
|
z-index: 1;
|
|
13
|
+
/* Elevation: a layered soft drop-shadow that follows the squircle silhouette
|
|
14
|
+
of the inner card (drop-shadow respects the child mask; a box-shadow here
|
|
15
|
+
would be rectangular and the inner mask would clip it away). Same recipe
|
|
16
|
+
as co-app-shell .main / co-modal .co-modal__frame. */
|
|
17
|
+
filter:
|
|
18
|
+
drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06))
|
|
19
|
+
drop-shadow(0 10px 28px rgba(31, 28, 27, 0.12));
|
|
20
|
+
/* Squircle geometry — shared with .co-drawer__card. Match the app-shell
|
|
21
|
+
surface radius (same knob co-app-shell uses). */
|
|
22
|
+
--co-drawer-r: var(--co-shell-r, var(--co-border-radius-md));
|
|
23
|
+
--co-sq-tl: url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 0L95 0L92.5 0L90 0L87.5 0.01L85 0.01L82.5 0.02L80 0.04L77.5 0.06L75 0.1L72.5 0.14L70 0.2L67.5 0.28L65 0.38L62.5 0.5L60 0.65L57.5 0.83L55 1.04L52.5 1.3L50 1.6L47.5 1.96L45 2.37L42.5 2.85L40 3.41L37.5 4.05L35 4.8L32.5 5.65L30 6.63L27.5 7.77L25 9.07L22.5 10.58L20 12.34L17.5 14.41L15 16.85L12.5 19.79L10 23.42L7.5 28.06L5 34.37L2.5 44.29L0 100L100 100Z%27 fill=%27%23fff%27/></svg>");
|
|
24
|
+
--co-sq-tr: url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 0L5 0L7.5 0L10 0L12.5 0.01L15 0.01L17.5 0.02L20 0.04L22.5 0.06L25 0.1L27.5 0.14L30 0.2L32.5 0.28L35 0.38L37.5 0.5L40 0.65L42.5 0.83L45 1.04L47.5 1.3L50 1.6L52.5 1.96L55 2.37L57.5 2.85L60 3.41L62.5 4.05L65 4.8L67.5 5.65L70 6.63L72.5 7.77L75 9.07L77.5 10.58L80 12.34L82.5 14.41L85 16.85L87.5 19.79L90 23.42L92.5 28.06L95 34.37L97.5 44.29L100 100L0 100Z%27 fill=%27%23fff%27/></svg>");
|
|
25
|
+
--co-sq-bl: url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M0 0L2.5 55.71L5 65.63L7.5 71.94L10 76.58L12.5 80.21L15 83.15L17.5 85.59L20 87.66L22.5 89.42L25 90.93L27.5 92.23L30 93.37L32.5 94.35L35 95.2L37.5 95.95L40 96.59L42.5 97.15L45 97.63L47.5 98.04L50 98.4L52.5 98.7L55 98.96L57.5 99.17L60 99.35L62.5 99.5L65 99.62L67.5 99.72L70 99.8L72.5 99.86L75 99.9L77.5 99.94L80 99.96L82.5 99.98L85 99.99L87.5 99.99L90 100L92.5 100L95 100L97.5 100L100 100L100 0Z%27 fill=%27%23fff%27/></svg>");
|
|
26
|
+
--co-sq-br: url("data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 100 100%27 preserveAspectRatio=%27none%27><path d=%27M100 0L97.5 55.71L95 65.63L92.5 71.94L90 76.58L87.5 80.21L85 83.15L82.5 85.59L80 87.66L77.5 89.42L75 90.93L72.5 92.23L70 93.37L67.5 94.35L65 95.2L62.5 95.95L60 96.59L57.5 97.15L55 97.63L52.5 98.04L50 98.4L47.5 98.7L45 98.96L42.5 99.17L40 99.35L37.5 99.5L35 99.62L32.5 99.72L30 99.8L27.5 99.86L25 99.9L22.5 99.94L20 99.96L17.5 99.98L15 99.99L12.5 99.99L10 100L7.5 100L5 100L2.5 100L0 100L0 0Z%27 fill=%27%23fff%27/></svg>");
|
|
15
27
|
}
|
|
16
28
|
|
|
17
29
|
/* ─── Position: right (default) ───────────────────────────── */
|
|
@@ -26,9 +38,7 @@
|
|
|
26
38
|
margin: 6px;
|
|
27
39
|
height: 100vh;
|
|
28
40
|
height: -webkit-fill-available;
|
|
29
|
-
border-radius: 24px;
|
|
30
41
|
transform: translateX(calc(100% + 12px));
|
|
31
|
-
box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
|
|
32
42
|
}
|
|
33
43
|
.co-drawer--right.co-drawer--open { transform: translateX(0); }
|
|
34
44
|
|
|
@@ -39,9 +49,7 @@
|
|
|
39
49
|
margin: 6px;
|
|
40
50
|
height: 100vh;
|
|
41
51
|
height: -webkit-fill-available;
|
|
42
|
-
border-radius: 24px;
|
|
43
52
|
transform: translateX(calc(-100% - 12px));
|
|
44
|
-
box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
|
|
45
53
|
}
|
|
46
54
|
.co-drawer--left.co-drawer--open { transform: translateX(0); }
|
|
47
55
|
|
|
@@ -53,8 +61,6 @@
|
|
|
53
61
|
margin: 6px;
|
|
54
62
|
width: auto;
|
|
55
63
|
transform: translateY(calc(100% + 12px));
|
|
56
|
-
box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.12);
|
|
57
|
-
border-radius: 24px;
|
|
58
64
|
}
|
|
59
65
|
.co-drawer--bottom.co-drawer--open { transform: translateY(0); }
|
|
60
66
|
|
|
@@ -64,7 +70,7 @@
|
|
|
64
70
|
.co-drawer--right.co-drawer--md,
|
|
65
71
|
.co-drawer--left.co-drawer--md { width: 520px; max-width: 100vw; }
|
|
66
72
|
.co-drawer--right.co-drawer--lg,
|
|
67
|
-
.co-drawer--left.co-drawer--lg { width:
|
|
73
|
+
.co-drawer--left.co-drawer--lg { width: 672px; max-width: 100vw; } /* Figma drawer */
|
|
68
74
|
.co-drawer--right.co-drawer--xl,
|
|
69
75
|
.co-drawer--left.co-drawer--xl { width: 960px; max-width: 100vw; }
|
|
70
76
|
.co-drawer--right.co-drawer--full,
|
|
@@ -77,6 +83,36 @@
|
|
|
77
83
|
.co-drawer--bottom.co-drawer--xl { height: 95vh; }
|
|
78
84
|
.co-drawer--bottom.co-drawer--full { height: 100vh; }
|
|
79
85
|
|
|
86
|
+
/* The visible card: smooth (squircle) corners, background + clip live here
|
|
87
|
+
(not on .co-drawer) so .co-drawer's drop-shadow isn't clipped by the mask. */
|
|
88
|
+
.co-drawer__card {
|
|
89
|
+
flex: 1;
|
|
90
|
+
min-height: 0;
|
|
91
|
+
display: flex;
|
|
92
|
+
flex-direction: column;
|
|
93
|
+
overflow: hidden;
|
|
94
|
+
background: var(--co-semantic-surface-page);
|
|
95
|
+
border-radius: 0; /* the mask defines the (smooth) shape */
|
|
96
|
+
/* Squircle via 4 corner pieces + a cross of 2 bars (H full-width, V full-height).
|
|
97
|
+
The bars are sized `calc(... + 2px)` so they OVERLAP each corner by ~1px on
|
|
98
|
+
every side — same anti-seam trick as co-app-shell .main__card / co-modal
|
|
99
|
+
.co-modal (prevents a sub-pixel transparent seam that flickers with zoom). */
|
|
100
|
+
-webkit-mask:
|
|
101
|
+
var(--co-sq-tl) top left / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
102
|
+
var(--co-sq-tr) top right / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
103
|
+
var(--co-sq-bl) bottom left / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
104
|
+
var(--co-sq-br) bottom right / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
105
|
+
linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-drawer-r) + 2px) no-repeat,
|
|
106
|
+
linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-drawer-r) + 2px) 100% no-repeat;
|
|
107
|
+
mask:
|
|
108
|
+
var(--co-sq-tl) top left / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
109
|
+
var(--co-sq-tr) top right / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
110
|
+
var(--co-sq-bl) bottom left / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
111
|
+
var(--co-sq-br) bottom right / var(--co-drawer-r) var(--co-drawer-r) no-repeat,
|
|
112
|
+
linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-drawer-r) + 2px) no-repeat,
|
|
113
|
+
linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-drawer-r) + 2px) 100% no-repeat;
|
|
114
|
+
}
|
|
115
|
+
|
|
80
116
|
/* ─── Header ──────────────────────────────────────────────── */
|
|
81
117
|
.co-drawer__header {
|
|
82
118
|
display: flex;
|
|
@@ -113,7 +149,7 @@
|
|
|
113
149
|
|
|
114
150
|
.co-drawer__description {
|
|
115
151
|
margin: var(--co-spacing-xs) 0 0;
|
|
116
|
-
font-size: var(--co-font-size-13);
|
|
152
|
+
font-size: var(--co-font-size-13, 13px);
|
|
117
153
|
font-weight: 400;
|
|
118
154
|
color: var(--co-semantic-text-muted);
|
|
119
155
|
line-height: 1.4;
|
|
@@ -176,3 +212,20 @@
|
|
|
176
212
|
width: 100vw !important;
|
|
177
213
|
}
|
|
178
214
|
}
|
|
215
|
+
|
|
216
|
+
/* ─── Modeless (no overlay) ───────────────────────────────────────────── */
|
|
217
|
+
/* The aside renders standalone with popover="manual" (top-layer). The UA
|
|
218
|
+
[popover] stylesheet sets inset:0/border/padding/margin:auto — neutralize
|
|
219
|
+
what our position rules don't already override. z-index is the fallback
|
|
220
|
+
layer for browsers without the Popover API. */
|
|
221
|
+
.co-drawer--modeless {
|
|
222
|
+
z-index: 1000;
|
|
223
|
+
border: 0;
|
|
224
|
+
padding: 0;
|
|
225
|
+
/* UA [popover] pinta background: Canvas en el aside — sin esto, un rect
|
|
226
|
+
blanco cuadrado asoma detrás de las esquinas squircle del card. */
|
|
227
|
+
background: transparent;
|
|
228
|
+
}
|
|
229
|
+
.co-drawer--modeless.co-drawer--right { left: auto; bottom: auto; }
|
|
230
|
+
.co-drawer--modeless.co-drawer--left { right: auto; bottom: auto; }
|
|
231
|
+
.co-drawer--modeless.co-drawer--bottom { top: auto; }
|