@prolibu-suite/cobalt-core 0.11.0 → 0.11.2
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 +12 -5
- package/custom-elements.json +2738 -802
- package/dist/cjs/co-accordion.cjs.entry.js +2 -2
- package/dist/cjs/co-action-bar.cjs.entry.js +2 -2
- package/dist/cjs/co-app-shell.cjs.entry.js +2 -2
- package/dist/cjs/co-audio-player.cjs.entry.js +3 -3
- package/dist/cjs/co-autocomplete.cjs.entry.js +10 -3
- package/dist/cjs/co-avatar-group.cjs.entry.js +2 -2
- package/dist/cjs/co-avatar.cjs.entry.js +1 -1
- package/dist/cjs/co-badge.cjs.entry.js +1 -1
- package/dist/cjs/co-bottom-sheet.cjs.entry.js +4 -4
- package/dist/cjs/co-breadcrumb-item.cjs.entry.js +2 -2
- package/dist/cjs/co-breadcrumb.cjs.entry.js +1 -1
- package/dist/cjs/co-button-group.cjs.entry.js +3 -2
- package/dist/cjs/co-button.cjs.entry.js +6 -6
- package/dist/cjs/co-calendar-month_2.cjs.entry.js +14 -2
- package/dist/cjs/co-calendar_3.cjs.entry.js +9 -5
- package/dist/cjs/co-card.cjs.entry.js +2 -2
- package/dist/cjs/co-carousel.cjs.entry.js +5 -2
- package/dist/cjs/co-checkbox-group.cjs.entry.js +3 -3
- package/dist/cjs/co-checkbox.cjs.entry.js +3 -3
- package/dist/cjs/co-chip_2.cjs.entry.js +16 -6
- package/dist/cjs/co-color-area.cjs.entry.js +2 -2
- package/dist/cjs/co-color-picker.cjs.entry.js +2 -2
- package/dist/cjs/co-color-slider.cjs.entry.js +3 -3
- package/dist/cjs/co-column-picker.cjs.entry.js +22 -2
- package/dist/cjs/co-combobox.cjs.entry.js +3 -3
- package/dist/cjs/co-command-search.cjs.entry.js +4 -4
- package/dist/cjs/co-data-table-pagination.cjs.entry.js +4 -4
- package/dist/cjs/co-data-table.cjs.entry.js +2 -2
- package/dist/cjs/co-date-picker.cjs.entry.js +8 -0
- package/dist/cjs/co-date-range-picker.cjs.entry.js +9 -0
- package/dist/cjs/co-date-range.cjs.entry.js +7 -1
- package/dist/cjs/co-date-time-picker.cjs.entry.js +9 -2
- package/dist/cjs/co-document-editor.cjs.entry.js +9 -3
- package/dist/cjs/co-drive-card.cjs.entry.js +1 -1
- package/dist/cjs/co-drop-zone.cjs.entry.js +1 -1
- package/dist/cjs/co-emoji-picker.cjs.entry.js +2 -2
- package/dist/cjs/co-empty-state.cjs.entry.js +2 -2
- package/dist/cjs/co-event-calendar.cjs.entry.js +4 -2
- package/dist/cjs/co-event-popover.cjs.entry.js +5 -1
- package/dist/cjs/co-fab.cjs.entry.js +6 -2
- package/dist/cjs/co-file-field.cjs.entry.js +10 -6
- package/dist/cjs/co-file-type-tile.cjs.entry.js +2 -2
- package/dist/cjs/co-gradient-bar.cjs.entry.js +2 -2
- package/dist/cjs/co-helper-text.cjs.entry.js +2 -2
- package/dist/cjs/co-icon-button.cjs.entry.js +5 -6
- package/dist/cjs/co-icon.cjs.entry.js +2 -2
- package/dist/cjs/co-json-field.cjs.entry.js +8 -3
- package/dist/cjs/co-kbd_2.cjs.entry.js +3 -3
- package/dist/cjs/co-list-footer.cjs.entry.js +1 -1
- package/dist/cjs/co-list-item.cjs.entry.js +4 -4
- package/dist/cjs/co-media-thumb.cjs.entry.js +2 -2
- package/dist/cjs/co-menu-divider.cjs.entry.js +1 -1
- package/dist/cjs/co-menu.cjs.entry.js +8 -8
- package/dist/cjs/co-modal.cjs.entry.js +36 -10
- package/dist/cjs/co-navbar.cjs.entry.js +2 -2
- package/dist/cjs/co-number-field.cjs.entry.js +9 -3
- package/dist/cjs/co-overlay.cjs.entry.js +205 -34
- package/dist/cjs/co-page-header.cjs.entry.js +1 -1
- package/dist/cjs/co-popover.cjs.entry.js +9 -7
- package/dist/cjs/co-progress-bar.cjs.entry.js +2 -2
- package/dist/cjs/co-progress-circle.cjs.entry.js +2 -2
- package/dist/cjs/co-provider-logo_2.cjs.entry.js +1 -1
- package/dist/cjs/co-radio-group.cjs.entry.js +3 -3
- package/dist/cjs/co-radio.cjs.entry.js +3 -3
- package/dist/cjs/co-rating.cjs.entry.js +10 -3
- package/dist/cjs/co-ref-field.cjs.entry.js +10 -1
- package/dist/cjs/co-rich-text-editor.cjs.entry.js +19 -5
- package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +1 -0
- package/dist/cjs/co-rich-text-viewer.cjs.entry.js +1 -1
- package/dist/cjs/co-row.cjs.entry.js +2 -2
- package/dist/cjs/co-segmented-bar.cjs.entry.js +2 -2
- package/dist/cjs/co-select.cjs.entry.js +19 -6
- package/dist/cjs/co-separator.cjs.entry.js +1 -1
- package/dist/cjs/co-sidebar-nav.cjs.entry.js +2 -2
- package/dist/cjs/co-sidebar.cjs.entry.js +2 -2
- package/dist/cjs/co-slider.cjs.entry.js +8 -2
- package/dist/cjs/co-swatch-grid.cjs.entry.js +1 -1
- package/dist/cjs/co-switch.cjs.entry.js +3 -3
- package/dist/cjs/co-tab-group.cjs.entry.js +2 -2
- package/dist/cjs/co-tab.cjs.entry.js +5 -5
- package/dist/cjs/co-tags-field.cjs.entry.js +10 -5
- package/dist/cjs/co-tile.cjs.entry.js +1 -1
- package/dist/cjs/co-time-field.cjs.entry.js +4 -1
- package/dist/cjs/co-toast.cjs.entry.js +2 -2
- package/dist/cjs/co-toggle-button-group.cjs.entry.js +7 -4
- package/dist/cjs/co-toggle-button.cjs.entry.js +5 -2
- package/dist/cjs/co-transfer-list.cjs.entry.js +6 -2
- package/dist/cjs/co-tree-item.cjs.entry.js +2 -2
- package/dist/cjs/co-video.cjs.entry.js +10 -2
- package/dist/cjs/cobalt.cjs.js +1 -1
- package/dist/cjs/{index-oMHzCXm6.js → index-BbSD1Eyw.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{pagination-DV43TRj9.js → pagination-S2sSAgdl.js} +26 -2
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/{p-97a4fbba.entry.js → p-019eed8e.entry.js} +1 -1
- package/dist/cobalt/{p-d6e7c258.entry.js → p-02ff847e.entry.js} +1 -1
- package/dist/cobalt/{p-1289131f.entry.js → p-04e3e1f6.entry.js} +1 -1
- package/dist/cobalt/p-0d046d98.entry.js +1 -0
- package/dist/cobalt/{p-d4979025.entry.js → p-0e4c2234.entry.js} +1 -1
- package/dist/cobalt/{p-3011c84f.entry.js → p-12914c0a.entry.js} +1 -1
- package/dist/cobalt/{p-f5934cd9.entry.js → p-1348d5ca.entry.js} +1 -1
- package/dist/cobalt/{p-ee88ec40.entry.js → p-13e5b724.entry.js} +1 -1
- package/dist/cobalt/{p-9e406172.entry.js → p-21b4a830.entry.js} +1 -1
- package/dist/cobalt/{p-d1c378ff.entry.js → p-2231bacc.entry.js} +1 -1
- package/dist/cobalt/{p-1693b614.entry.js → p-26cbdc33.entry.js} +1 -1
- package/dist/cobalt/{p-7f3523ce.entry.js → p-28cf05f3.entry.js} +1 -1
- package/dist/cobalt/{p-8ab5b396.entry.js → p-358a6c2a.entry.js} +1 -1
- package/dist/cobalt/p-38eb2615.entry.js +1 -0
- package/dist/cobalt/p-3b5024ce.entry.js +1 -0
- package/dist/cobalt/{p-cc5989e9.entry.js → p-3d1a48e5.entry.js} +1 -1
- package/dist/cobalt/{p-b1994bb4.entry.js → p-4bcdd422.entry.js} +1 -1
- package/dist/cobalt/{p-2a2b0c7a.entry.js → p-4d743628.entry.js} +1 -1
- package/dist/cobalt/{p-66fc1528.entry.js → p-4e81e580.entry.js} +1 -1
- package/dist/cobalt/{p-c1caa112.entry.js → p-53a251ca.entry.js} +1 -1
- package/dist/cobalt/{p-67ad9544.entry.js → p-56176aa0.entry.js} +1 -1
- package/dist/cobalt/{p-44edde81.entry.js → p-58ebb303.entry.js} +1 -1
- package/dist/cobalt/{p-2e5702a0.entry.js → p-5e678e88.entry.js} +1 -1
- package/dist/cobalt/{p-889563d5.entry.js → p-60f948c4.entry.js} +1 -1
- package/dist/cobalt/{p-db42c4ab.entry.js → p-63908a8d.entry.js} +1 -1
- package/dist/cobalt/{p-5573985a.entry.js → p-65c191aa.entry.js} +1 -1
- package/dist/cobalt/{p-b5ec4286.entry.js → p-65d44da2.entry.js} +1 -1
- package/dist/cobalt/{p-5534a64f.entry.js → p-69ecc933.entry.js} +1 -1
- package/dist/cobalt/{p-c9990662.entry.js → p-6c1992c9.entry.js} +1 -1
- package/dist/cobalt/{p-90fad0f9.entry.js → p-6c7e423c.entry.js} +1 -1
- package/dist/cobalt/{p-22233b31.entry.js → p-6d4a660c.entry.js} +1 -1
- package/dist/cobalt/{p-7675cebe.entry.js → p-713637f2.entry.js} +1 -1
- package/dist/cobalt/{p-45007758.entry.js → p-71ae1551.entry.js} +1 -1
- package/dist/cobalt/{p-a930cdd7.entry.js → p-71ee36a8.entry.js} +1 -1
- package/dist/cobalt/{p-eeb114da.entry.js → p-71fe35c4.entry.js} +1 -1
- package/dist/cobalt/{p-a336178b.entry.js → p-73313cbe.entry.js} +1 -1
- package/dist/cobalt/{p-8b2e4579.entry.js → p-78412feb.entry.js} +1 -1
- package/dist/cobalt/{p-48c23310.entry.js → p-7beface1.entry.js} +1 -1
- package/dist/cobalt/p-7d1718ed.entry.js +1 -0
- package/dist/cobalt/{p-59d3e8fc.entry.js → p-7df18a52.entry.js} +1 -1
- package/dist/cobalt/{p-b9401dd7.entry.js → p-7e678cbd.entry.js} +1 -1
- package/dist/cobalt/{p-c109a1e1.entry.js → p-7fabd8ba.entry.js} +1 -1
- package/dist/cobalt/{p-8f701eac.entry.js → p-848f5ca4.entry.js} +1 -1
- package/dist/cobalt/{p-608d251d.entry.js → p-8680559b.entry.js} +1 -1
- package/dist/cobalt/{p-4b327483.entry.js → p-87de5469.entry.js} +1 -1
- package/dist/cobalt/{p-a07dedd1.entry.js → p-8a2a2b6c.entry.js} +1 -1
- package/dist/cobalt/{p-f813569c.entry.js → p-903237f9.entry.js} +1 -1
- package/dist/cobalt/p-93063876.entry.js +1 -0
- package/dist/cobalt/{p-1f3d5313.entry.js → p-95f2ebb1.entry.js} +1 -1
- package/dist/cobalt/{p-86b6fd81.entry.js → p-99df434b.entry.js} +1 -1
- package/dist/cobalt/{p-6c157ea2.entry.js → p-9adbab95.entry.js} +1 -1
- package/dist/cobalt/{p-4111fefa.entry.js → p-9ee5bef3.entry.js} +1 -1
- package/dist/cobalt/{p-RVQJEYxa.js → p-Ch-Tygdb.js} +1 -1
- package/dist/cobalt/p-DGLDAl09.js +1 -0
- package/dist/cobalt/{p-9bee9dc8.entry.js → p-a27013e6.entry.js} +1 -1
- package/dist/cobalt/{p-9cf10331.entry.js → p-a4eb298c.entry.js} +1 -1
- package/dist/cobalt/{p-5b2aa70e.entry.js → p-a56bd4a8.entry.js} +1 -1
- package/dist/cobalt/{p-d1f47915.entry.js → p-a5eabecb.entry.js} +1 -1
- package/dist/cobalt/{p-f5e1873d.entry.js → p-a5ee1fc2.entry.js} +1 -1
- package/dist/cobalt/{p-ee42dca6.entry.js → p-a7cd61ce.entry.js} +1 -1
- package/dist/cobalt/{p-7569375a.entry.js → p-ad752791.entry.js} +1 -1
- package/dist/cobalt/{p-ea564148.entry.js → p-ae999b94.entry.js} +1 -1
- package/dist/cobalt/{p-30760f77.entry.js → p-aed832d5.entry.js} +1 -1
- package/dist/cobalt/{p-e6116149.entry.js → p-b2457431.entry.js} +1 -1
- package/dist/cobalt/{p-3b9a8e86.entry.js → p-b39a4999.entry.js} +1 -1
- package/dist/cobalt/{p-bc3ba0cd.entry.js → p-b5dabdc3.entry.js} +1 -1
- package/dist/cobalt/{p-ec7a6bf2.entry.js → p-b67fb616.entry.js} +1 -1
- package/dist/cobalt/{p-f8c7941f.entry.js → p-b9b73dcb.entry.js} +1 -1
- package/dist/cobalt/{p-a52ed6ff.entry.js → p-ba39a965.entry.js} +1 -1
- package/dist/cobalt/{p-8cd3acaa.entry.js → p-bb7bbe70.entry.js} +1 -1
- package/dist/cobalt/{p-7376f4ed.entry.js → p-be520bd5.entry.js} +1 -1
- package/dist/cobalt/{p-0a5cfed0.entry.js → p-bee30373.entry.js} +1 -1
- package/dist/cobalt/{p-e4ff2fcb.entry.js → p-c220362c.entry.js} +1 -1
- package/dist/cobalt/{p-6d541199.entry.js → p-c5464a98.entry.js} +1 -1
- package/dist/cobalt/{p-26fa36f8.entry.js → p-cf5b91be.entry.js} +1 -1
- package/dist/cobalt/{p-cc4b51fa.entry.js → p-cfaaa684.entry.js} +1 -1
- package/dist/cobalt/{p-57d250ad.entry.js → p-d00c3894.entry.js} +1 -1
- package/dist/cobalt/{p-f8d3c71e.entry.js → p-d5d8fa8b.entry.js} +1 -1
- package/dist/cobalt/p-d6215d80.entry.js +1 -0
- package/dist/cobalt/{p-78a20284.entry.js → p-dabcbba7.entry.js} +1 -1
- package/dist/cobalt/{p-9b46a8fe.entry.js → p-db623519.entry.js} +1 -1
- package/dist/cobalt/{p-136beb2c.entry.js → p-df529110.entry.js} +1 -1
- package/dist/cobalt/{p-5d6e02dd.entry.js → p-efb3cbb0.entry.js} +1 -1
- package/dist/cobalt/p-efd3e0de.entry.js +1 -0
- package/dist/cobalt/{p-e99ddf9c.entry.js → p-f2fa2ac0.entry.js} +1 -1
- package/dist/cobalt/p-f403eeec.entry.js +1 -0
- package/dist/cobalt/{p-ce2b2048.entry.js → p-f69804a6.entry.js} +1 -1
- package/dist/collection/components/co-accordion/co-accordion.js +12 -2
- package/dist/collection/components/co-action-bar/co-action-bar.css +6 -0
- package/dist/collection/components/co-action-bar/co-action-bar.js +3 -2
- package/dist/collection/components/co-app-shell/co-app-shell.css +6 -0
- package/dist/collection/components/co-app-shell/co-app-shell.js +13 -2
- package/dist/collection/components/co-audio-player/co-audio-player.js +19 -7
- package/dist/collection/components/co-autocomplete/co-autocomplete.js +30 -17
- package/dist/collection/components/co-avatar/co-avatar.css +7 -2
- package/dist/collection/components/co-avatar/co-avatar.js +9 -2
- package/dist/collection/components/co-avatar-group/co-avatar-group.css +4 -0
- package/dist/collection/components/co-avatar-group/co-avatar-group.js +8 -3
- package/dist/collection/components/co-badge/co-badge.js +8 -1
- package/dist/collection/components/co-bottom-sheet/co-bottom-sheet.js +13 -4
- package/dist/collection/components/co-breadcrumb/co-breadcrumb.js +5 -1
- package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.js +8 -2
- package/dist/collection/components/co-button/co-button.css +25 -2
- package/dist/collection/components/co-button/co-button.js +14 -8
- package/dist/collection/components/co-button-group/co-button-group.js +10 -3
- package/dist/collection/components/co-calendar/co-calendar.css +8 -0
- package/dist/collection/components/co-calendar/co-calendar.js +3 -1
- package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.js +36 -19
- package/dist/collection/components/co-card/co-card.js +11 -2
- package/dist/collection/components/co-carousel/co-carousel.css +10 -0
- package/dist/collection/components/co-carousel/co-carousel.js +17 -5
- package/dist/collection/components/co-checkbox/co-checkbox.js +11 -3
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +9 -4
- package/dist/collection/components/co-chip/co-chip.css +25 -11
- package/dist/collection/components/co-chip/co-chip.js +15 -2
- package/dist/collection/components/co-color-area/co-color-area.css +4 -0
- package/dist/collection/components/co-color-area/co-color-area.js +6 -5
- package/dist/collection/components/co-color-picker/co-color-picker.js +4 -2
- package/dist/collection/components/co-color-slider/co-color-slider.js +6 -5
- package/dist/collection/components/co-column-picker/co-column-picker.js +51 -25
- package/dist/collection/components/co-combobox/co-combobox.js +18 -4
- package/dist/collection/components/co-command-search/co-command-search.js +19 -8
- package/dist/collection/components/co-data-table/co-data-table.js +8 -3
- package/dist/collection/components/co-data-table-pagination/co-data-table-pagination.js +16 -4
- package/dist/collection/components/co-date-field/co-date-field.js +19 -13
- package/dist/collection/components/co-date-picker/co-date-picker.js +38 -25
- package/dist/collection/components/co-date-range/co-date-range.js +19 -10
- package/dist/collection/components/co-date-range-picker/co-date-range-picker.js +44 -30
- package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +30 -21
- package/dist/collection/components/co-document-editor/co-document-editor.js +22 -15
- package/dist/collection/components/co-drawer/co-drawer.css +5 -0
- package/dist/collection/components/co-drawer/co-drawer.js +13 -0
- package/dist/collection/components/co-drive-card/co-drive-card.js +14 -1
- package/dist/collection/components/co-drop-zone/co-drop-zone.js +7 -2
- package/dist/collection/components/co-emoji-picker/co-emoji-picker.css +4 -0
- package/dist/collection/components/co-emoji-picker/co-emoji-picker.js +11 -2
- package/dist/collection/components/co-empty-state/co-empty-state.js +4 -2
- package/dist/collection/components/co-event-calendar/co-event-calendar.js +16 -4
- package/dist/collection/components/co-event-popover/co-event-popover.js +18 -6
- package/dist/collection/components/co-fab/co-fab.css +8 -0
- package/dist/collection/components/co-fab/co-fab.js +17 -8
- package/dist/collection/components/co-file-field/co-file-field.js +16 -11
- package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +9 -2
- package/dist/collection/components/co-gradient-bar/co-gradient-bar.css +5 -0
- package/dist/collection/components/co-gradient-bar/co-gradient-bar.js +7 -2
- package/dist/collection/components/co-helper-text/co-helper-text.js +4 -2
- package/dist/collection/components/co-icon/co-icon.js +6 -2
- package/dist/collection/components/co-icon-button/co-icon-button.css +9 -0
- package/dist/collection/components/co-icon-button/co-icon-button.js +12 -7
- package/dist/collection/components/co-input/co-input.css +3 -0
- package/dist/collection/components/co-input/co-input.js +11 -0
- package/dist/collection/components/co-json-field/co-json-field.js +19 -12
- package/dist/collection/components/co-kbd/co-kbd.js +8 -1
- package/dist/collection/components/co-list-footer/co-list-footer.js +4 -1
- package/dist/collection/components/co-list-item/co-list-item.js +7 -4
- package/dist/collection/components/co-loader/co-loader.js +5 -0
- package/dist/collection/components/co-media-thumb/co-media-thumb.js +9 -2
- package/dist/collection/components/co-menu/co-menu.css +11 -1
- package/dist/collection/components/co-menu/co-menu.js +13 -13
- package/dist/collection/components/co-menu-divider/co-menu-divider.css +4 -0
- package/dist/collection/components/co-menu-divider/co-menu-divider.js +2 -1
- package/dist/collection/components/co-menu-item/co-menu-item.css +14 -0
- package/dist/collection/components/co-menu-item/co-menu-item.js +2 -0
- package/dist/collection/components/co-modal/co-modal.css +6 -0
- package/dist/collection/components/co-modal/co-modal.js +97 -18
- package/dist/collection/components/co-navbar/co-navbar.css +7 -0
- package/dist/collection/components/co-navbar/co-navbar.js +4 -2
- package/dist/collection/components/co-number-field/co-number-field.js +29 -15
- package/dist/collection/components/co-option-list/co-option-list.css +38 -0
- package/dist/collection/components/co-option-list/co-option-list.js +33 -16
- package/dist/collection/components/co-overlay/co-overlay.css +11 -0
- package/dist/collection/components/co-overlay/co-overlay.js +140 -26
- package/dist/collection/components/co-overlay/focusTrap.js +111 -3
- package/dist/collection/components/co-page-header/co-page-header.js +4 -1
- package/dist/collection/components/co-popover/co-popover.css +7 -2
- package/dist/collection/components/co-popover/co-popover.js +29 -16
- package/dist/collection/components/co-progress-bar/co-progress-bar.js +5 -2
- package/dist/collection/components/co-progress-circle/co-progress-circle.js +5 -2
- package/dist/collection/components/co-provider-logo/co-provider-logo.js +3 -0
- package/dist/collection/components/co-radio/co-radio.js +11 -3
- package/dist/collection/components/co-radio-group/co-radio-group.js +9 -4
- package/dist/collection/components/co-rating/co-rating.js +25 -13
- package/dist/collection/components/co-ref-field/co-ref-field.css +14 -0
- package/dist/collection/components/co-ref-field/co-ref-field.js +55 -27
- package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +46 -24
- package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.js +4 -1
- package/dist/collection/components/co-rich-text-viewer/co-rich-text-viewer.js +8 -0
- package/dist/collection/components/co-row/co-row.js +5 -2
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +9 -3
- package/dist/collection/components/co-select/co-select.css +13 -1
- package/dist/collection/components/co-select/co-select.js +42 -23
- package/dist/collection/components/co-separator/co-separator.js +8 -1
- package/dist/collection/components/co-sidebar/co-sidebar.js +10 -2
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.css +5 -0
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +4 -3
- package/dist/collection/components/co-skeleton/co-skeleton.js +4 -1
- package/dist/collection/components/co-slider/co-slider.css +7 -0
- package/dist/collection/components/co-slider/co-slider.js +25 -13
- package/dist/collection/components/co-swatch-grid/co-swatch-grid.js +2 -1
- package/dist/collection/components/co-switch/co-switch.css +4 -0
- package/dist/collection/components/co-switch/co-switch.js +12 -3
- package/dist/collection/components/co-tab/co-tab.js +14 -6
- package/dist/collection/components/co-tab-group/co-tab-group.js +11 -2
- package/dist/collection/components/co-tags-field/co-tags-field.js +21 -14
- package/dist/collection/components/co-tile/co-tile.js +6 -1
- package/dist/collection/components/co-time-field/co-time-field.js +9 -4
- package/dist/collection/components/co-toast/co-toast.css +11 -0
- package/dist/collection/components/co-toast/co-toast.js +13 -4
- package/dist/collection/components/co-toggle-button/co-toggle-button.css +5 -0
- package/dist/collection/components/co-toggle-button/co-toggle-button.js +13 -9
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +18 -9
- package/dist/collection/components/co-tooltip/co-tooltip.js +12 -2
- package/dist/collection/components/co-transfer-list/co-transfer-list.js +19 -10
- package/dist/collection/components/co-tree-item/co-tree-item.css +11 -2
- package/dist/collection/components/co-tree-item/co-tree-item.js +6 -4
- package/dist/collection/components/co-video/co-video.css +11 -0
- package/dist/collection/components/co-video/co-video.js +41 -22
- package/dist/components/co-accordion.js +1 -1
- package/dist/components/co-action-bar.js +1 -1
- package/dist/components/co-app-shell.js +1 -1
- package/dist/components/co-audio-player.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.js +1 -1
- package/dist/components/co-breadcrumb.js +1 -1
- 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-timegrid.js +1 -1
- package/dist/components/co-calendar.js +1 -1
- package/dist/components/co-card.js +1 -1
- package/dist/components/co-carousel.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-area.js +1 -1
- package/dist/components/co-color-picker.js +1 -1
- package/dist/components/co-color-slider.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-date-time-picker.js +1 -1
- package/dist/components/co-document-editor.js +1 -1
- package/dist/components/co-drawer.js +1 -1
- package/dist/components/co-drive-card.js +1 -1
- package/dist/components/co-drop-zone.js +1 -1
- package/dist/components/co-emoji-picker.js +1 -1
- package/dist/components/co-empty-state.js +1 -1
- package/dist/components/co-event-calendar.js +1 -1
- package/dist/components/co-event-popover.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.js +1 -1
- package/dist/components/co-gradient-bar.js +1 -1
- 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-kbd.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.js +1 -1
- 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.js +1 -1
- 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.js +1 -1
- 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-swatch-grid.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-tile.js +1 -1
- package/dist/components/co-time-field.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-tree-item.js +1 -1
- package/dist/components/co-video.js +1 -1
- package/dist/components/{p-BQltjDw5.js → p-8XzG8pzY.js} +1 -1
- package/dist/components/{p-FA1kBmZ-.js → p-9VoFSbIH.js} +1 -1
- package/dist/components/{p-CpGEV0iM.js → p-B3Egz082.js} +1 -1
- package/dist/components/{p-Bymi-A7C.js → p-B9wdMd_0.js} +1 -1
- package/dist/components/{p-CGH3E8uK.js → p-BI_VaFsx.js} +1 -1
- package/dist/components/{p-Dp650Gpp.js → p-BRZci8B3.js} +1 -1
- package/dist/components/{p-Dh_eRYKu.js → p-BdmzslA5.js} +1 -1
- package/dist/components/{p-C3G8oPgU.js → p-Bw_b_czs.js} +1 -1
- package/dist/components/{p-BraiMwgs.js → p-C4sZjIDj.js} +1 -1
- package/dist/components/{p-B20o5exO.js → p-C6WHpL5X.js} +1 -1
- package/dist/components/p-COozgrEk.js +1 -0
- package/dist/components/{p-CfJgypOl.js → p-C_6szR7t.js} +1 -1
- package/dist/components/{p-RVQJEYxa.js → p-Ch-Tygdb.js} +1 -1
- package/dist/components/{p-ChwSnCFf.js → p-CiYPJW0B.js} +1 -1
- package/dist/components/{p-f2xwcrXa.js → p-Cnfd6Zze.js} +1 -1
- package/dist/components/{p-C1jZYtUS.js → p-CxWo3qDo.js} +1 -1
- package/dist/components/p-D4XP17VP.js +1 -0
- package/dist/components/{p-BIDSDP05.js → p-DB8DGMc-.js} +1 -1
- package/dist/components/p-DGLDAl09.js +1 -0
- package/dist/components/{p-C-f8wTqe.js → p-DhPxNA2f.js} +1 -1
- package/dist/components/{p-D9or2g4j.js → p-Dn2wblrA.js} +1 -1
- package/dist/components/p-Dnz99Ox_.js +1 -0
- package/dist/components/{p-BcXdId8y.js → p-DsuFNmTI.js} +1 -1
- package/dist/components/{p-DKXCr-hE.js → p-DymSqdlK.js} +1 -1
- package/dist/components/{p-B3kKOgsA.js → p-KK2vAKs-.js} +1 -1
- package/dist/components/{p-d4rf3H8p.js → p-TGRbLkLz.js} +1 -1
- package/dist/components/{p-BOqtnWTJ.js → p-VcrjNCew.js} +1 -1
- package/dist/components/p-wUXcJGdy.js +1 -0
- package/dist/esm/co-accordion.entry.js +2 -2
- package/dist/esm/co-action-bar.entry.js +2 -2
- package/dist/esm/co-app-shell.entry.js +2 -2
- package/dist/esm/co-audio-player.entry.js +3 -3
- package/dist/esm/co-autocomplete.entry.js +10 -3
- package/dist/esm/co-avatar-group.entry.js +2 -2
- package/dist/esm/co-avatar.entry.js +1 -1
- package/dist/esm/co-badge.entry.js +1 -1
- package/dist/esm/co-bottom-sheet.entry.js +4 -4
- package/dist/esm/co-breadcrumb-item.entry.js +2 -2
- package/dist/esm/co-breadcrumb.entry.js +1 -1
- package/dist/esm/co-button-group.entry.js +3 -2
- package/dist/esm/co-button.entry.js +6 -6
- package/dist/esm/co-calendar-month_2.entry.js +14 -2
- package/dist/esm/co-calendar_3.entry.js +9 -5
- package/dist/esm/co-card.entry.js +2 -2
- package/dist/esm/co-carousel.entry.js +5 -2
- package/dist/esm/co-checkbox-group.entry.js +3 -3
- package/dist/esm/co-checkbox.entry.js +3 -3
- package/dist/esm/co-chip_2.entry.js +16 -6
- package/dist/esm/co-color-area.entry.js +2 -2
- package/dist/esm/co-color-picker.entry.js +2 -2
- package/dist/esm/co-color-slider.entry.js +3 -3
- package/dist/esm/co-column-picker.entry.js +22 -2
- package/dist/esm/co-combobox.entry.js +3 -3
- package/dist/esm/co-command-search.entry.js +4 -4
- package/dist/esm/co-data-table-pagination.entry.js +4 -4
- package/dist/esm/co-data-table.entry.js +2 -2
- package/dist/esm/co-date-picker.entry.js +8 -0
- package/dist/esm/co-date-range-picker.entry.js +9 -0
- package/dist/esm/co-date-range.entry.js +7 -1
- package/dist/esm/co-date-time-picker.entry.js +9 -2
- package/dist/esm/co-document-editor.entry.js +9 -3
- package/dist/esm/co-drive-card.entry.js +1 -1
- package/dist/esm/co-drop-zone.entry.js +1 -1
- package/dist/esm/co-emoji-picker.entry.js +2 -2
- package/dist/esm/co-empty-state.entry.js +2 -2
- package/dist/esm/co-event-calendar.entry.js +4 -2
- package/dist/esm/co-event-popover.entry.js +5 -1
- package/dist/esm/co-fab.entry.js +6 -2
- package/dist/esm/co-file-field.entry.js +10 -6
- package/dist/esm/co-file-type-tile.entry.js +2 -2
- package/dist/esm/co-gradient-bar.entry.js +2 -2
- package/dist/esm/co-helper-text.entry.js +2 -2
- package/dist/esm/co-icon-button.entry.js +5 -6
- package/dist/esm/co-icon.entry.js +2 -2
- package/dist/esm/co-json-field.entry.js +8 -3
- package/dist/esm/co-kbd_2.entry.js +3 -3
- package/dist/esm/co-list-footer.entry.js +1 -1
- package/dist/esm/co-list-item.entry.js +4 -4
- package/dist/esm/co-media-thumb.entry.js +2 -2
- package/dist/esm/co-menu-divider.entry.js +1 -1
- package/dist/esm/co-menu.entry.js +8 -8
- package/dist/esm/co-modal.entry.js +37 -11
- package/dist/esm/co-navbar.entry.js +2 -2
- package/dist/esm/co-number-field.entry.js +9 -3
- package/dist/esm/co-overlay.entry.js +205 -34
- package/dist/esm/co-page-header.entry.js +1 -1
- package/dist/esm/co-popover.entry.js +9 -7
- package/dist/esm/co-progress-bar.entry.js +2 -2
- package/dist/esm/co-progress-circle.entry.js +2 -2
- package/dist/esm/co-provider-logo_2.entry.js +1 -1
- package/dist/esm/co-radio-group.entry.js +3 -3
- package/dist/esm/co-radio.entry.js +3 -3
- package/dist/esm/co-rating.entry.js +10 -3
- package/dist/esm/co-ref-field.entry.js +10 -1
- package/dist/esm/co-rich-text-editor.entry.js +19 -5
- package/dist/esm/co-rich-text-toolbar.entry.js +1 -0
- package/dist/esm/co-rich-text-viewer.entry.js +1 -1
- package/dist/esm/co-row.entry.js +2 -2
- package/dist/esm/co-segmented-bar.entry.js +2 -2
- package/dist/esm/co-select.entry.js +19 -6
- package/dist/esm/co-separator.entry.js +1 -1
- package/dist/esm/co-sidebar-nav.entry.js +2 -2
- package/dist/esm/co-sidebar.entry.js +2 -2
- package/dist/esm/co-slider.entry.js +8 -2
- package/dist/esm/co-swatch-grid.entry.js +1 -1
- package/dist/esm/co-switch.entry.js +3 -3
- package/dist/esm/co-tab-group.entry.js +2 -2
- package/dist/esm/co-tab.entry.js +5 -5
- package/dist/esm/co-tags-field.entry.js +10 -5
- package/dist/esm/co-tile.entry.js +1 -1
- package/dist/esm/co-time-field.entry.js +4 -1
- package/dist/esm/co-toast.entry.js +2 -2
- package/dist/esm/co-toggle-button-group.entry.js +7 -4
- package/dist/esm/co-toggle-button.entry.js +5 -2
- package/dist/esm/co-transfer-list.entry.js +6 -2
- package/dist/esm/co-tree-item.entry.js +2 -2
- package/dist/esm/co-video.entry.js +10 -2
- package/dist/esm/cobalt.js +1 -1
- package/dist/esm/{index-Cpo8HTwr.js → index-CgyOJePd.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{pagination-D9OfZUnY.js → pagination-BzrIQtrk.js} +26 -2
- package/dist/types/components/co-accordion/co-accordion.d.ts +10 -0
- package/dist/types/components/co-action-bar/co-action-bar.d.ts +1 -0
- package/dist/types/components/co-app-shell/co-app-shell.d.ts +11 -0
- package/dist/types/components/co-audio-player/co-audio-player.d.ts +16 -0
- package/dist/types/components/co-autocomplete/co-autocomplete.d.ts +21 -0
- package/dist/types/components/co-avatar/co-avatar.d.ts +8 -1
- package/dist/types/components/co-avatar-group/co-avatar-group.d.ts +5 -0
- package/dist/types/components/co-badge/co-badge.d.ts +7 -0
- package/dist/types/components/co-bottom-sheet/co-bottom-sheet.d.ts +9 -0
- package/dist/types/components/co-breadcrumb/co-breadcrumb.d.ts +4 -0
- package/dist/types/components/co-breadcrumb-item/co-breadcrumb-item.d.ts +6 -0
- package/dist/types/components/co-button/co-button.d.ts +9 -3
- package/dist/types/components/co-button-group/co-button-group.d.ts +7 -0
- package/dist/types/components/co-calendar/co-calendar.d.ts +2 -0
- package/dist/types/components/co-calendar-timegrid/co-calendar-timegrid.d.ts +23 -0
- package/dist/types/components/co-card/co-card.d.ts +9 -0
- package/dist/types/components/co-carousel/co-carousel.d.ts +12 -0
- package/dist/types/components/co-checkbox/co-checkbox.d.ts +8 -0
- package/dist/types/components/co-checkbox-group/co-checkbox-group.d.ts +5 -0
- package/dist/types/components/co-chip/co-chip.d.ts +13 -0
- package/dist/types/components/co-color-area/co-color-area.d.ts +2 -1
- package/dist/types/components/co-color-picker/co-color-picker.d.ts +2 -0
- package/dist/types/components/co-color-slider/co-color-slider.d.ts +2 -1
- package/dist/types/components/co-column-picker/co-column-picker.d.ts +32 -0
- package/dist/types/components/co-combobox/co-combobox.d.ts +14 -0
- package/dist/types/components/co-command-search/co-command-search.d.ts +15 -0
- package/dist/types/components/co-data-table/co-data-table.d.ts +5 -0
- package/dist/types/components/co-data-table-pagination/co-data-table-pagination.d.ts +12 -0
- package/dist/types/components/co-date-field/co-date-field.d.ts +11 -0
- package/dist/types/components/co-date-picker/co-date-picker.d.ts +30 -0
- package/dist/types/components/co-date-range/co-date-range.d.ts +12 -0
- package/dist/types/components/co-date-range-picker/co-date-range-picker.d.ts +33 -0
- package/dist/types/components/co-date-time-picker/co-date-time-picker.d.ts +21 -0
- package/dist/types/components/co-document-editor/co-document-editor.d.ts +9 -1
- package/dist/types/components/co-drawer/co-drawer.d.ts +13 -0
- package/dist/types/components/co-drive-card/co-drive-card.d.ts +13 -0
- package/dist/types/components/co-drop-zone/co-drop-zone.d.ts +6 -1
- package/dist/types/components/co-emoji-picker/co-emoji-picker.d.ts +9 -0
- package/dist/types/components/co-empty-state/co-empty-state.d.ts +2 -0
- package/dist/types/components/co-event-calendar/co-event-calendar.d.ts +12 -16
- package/dist/types/components/co-event-popover/co-event-popover.d.ts +13 -0
- package/dist/types/components/co-fab/co-fab.d.ts +11 -0
- package/dist/types/components/co-file-field/co-file-field.d.ts +6 -0
- package/dist/types/components/co-file-type-tile/co-file-type-tile.d.ts +7 -0
- package/dist/types/components/co-gradient-bar/co-gradient-bar.d.ts +5 -0
- package/dist/types/components/co-helper-text/co-helper-text.d.ts +2 -0
- package/dist/types/components/co-icon/co-icon.d.ts +4 -0
- package/dist/types/components/co-icon-button/co-icon-button.d.ts +9 -4
- package/dist/types/components/co-input/co-input.d.ts +11 -0
- package/dist/types/components/co-json-field/co-json-field.d.ts +11 -0
- package/dist/types/components/co-kbd/co-kbd.d.ts +7 -0
- package/dist/types/components/co-list-footer/co-list-footer.d.ts +3 -0
- package/dist/types/components/co-list-item/co-list-item.d.ts +3 -0
- package/dist/types/components/co-loader/co-loader.d.ts +5 -0
- package/dist/types/components/co-media-thumb/co-media-thumb.d.ts +7 -0
- package/dist/types/components/co-menu/co-menu.d.ts +6 -4
- package/dist/types/components/co-menu-divider/co-menu-divider.d.ts +1 -0
- package/dist/types/components/co-menu-item/co-menu-item.d.ts +2 -0
- package/dist/types/components/co-modal/co-modal.d.ts +47 -12
- package/dist/types/components/co-navbar/co-navbar.d.ts +2 -0
- package/dist/types/components/co-number-field/co-number-field.d.ts +20 -0
- package/dist/types/components/co-option-list/co-option-list.d.ts +28 -1
- package/dist/types/components/co-overlay/co-overlay.d.ts +39 -1
- package/dist/types/components/co-overlay/focusTrap.d.ts +24 -3
- package/dist/types/components/co-page-header/co-page-header.d.ts +3 -0
- package/dist/types/components/co-popover/co-popover.d.ts +20 -5
- package/dist/types/components/co-progress-bar/co-progress-bar.d.ts +3 -0
- package/dist/types/components/co-progress-circle/co-progress-circle.d.ts +3 -0
- package/dist/types/components/co-provider-logo/co-provider-logo.d.ts +3 -0
- package/dist/types/components/co-radio/co-radio.d.ts +8 -0
- package/dist/types/components/co-radio-group/co-radio-group.d.ts +5 -0
- package/dist/types/components/co-rating/co-rating.d.ts +15 -0
- package/dist/types/components/co-ref-field/co-ref-field.d.ts +42 -0
- package/dist/types/components/co-rich-text-editor/co-rich-text-editor.d.ts +29 -0
- package/dist/types/components/co-rich-text-toolbar/co-rich-text-toolbar.d.ts +3 -0
- package/dist/types/components/co-rich-text-viewer/co-rich-text-viewer.d.ts +8 -0
- package/dist/types/components/co-row/co-row.d.ts +3 -0
- package/dist/types/components/co-segmented-bar/co-segmented-bar.d.ts +6 -0
- package/dist/types/components/co-select/co-select.d.ts +26 -0
- package/dist/types/components/co-separator/co-separator.d.ts +7 -0
- package/dist/types/components/co-sidebar/co-sidebar.d.ts +8 -0
- package/dist/types/components/co-sidebar-nav/co-sidebar-nav.d.ts +1 -0
- package/dist/types/components/co-skeleton/co-skeleton.d.ts +3 -0
- package/dist/types/components/co-slider/co-slider.d.ts +17 -0
- package/dist/types/components/co-swatch-grid/co-swatch-grid.d.ts +1 -0
- package/dist/types/components/co-switch/co-switch.d.ts +9 -0
- package/dist/types/components/co-tab/co-tab.d.ts +11 -3
- package/dist/types/components/co-tab-group/co-tab-group.d.ts +9 -0
- package/dist/types/components/co-tags-field/co-tags-field.d.ts +11 -0
- package/dist/types/components/co-tile/co-tile.d.ts +5 -0
- package/dist/types/components/co-time-field/co-time-field.d.ts +5 -0
- package/dist/types/components/co-toast/co-toast.d.ts +9 -0
- package/dist/types/components/co-toggle-button/co-toggle-button.d.ts +8 -0
- package/dist/types/components/co-toggle-button-group/co-toggle-button-group.d.ts +12 -2
- package/dist/types/components/co-tooltip/co-tooltip.d.ts +10 -0
- package/dist/types/components/co-transfer-list/co-transfer-list.d.ts +12 -0
- package/dist/types/components/co-tree-item/co-tree-item.d.ts +2 -0
- package/dist/types/components/co-video/co-video.d.ts +31 -0
- package/dist/types/components.d.ts +2223 -40
- package/package.json +2 -2
- package/dist/cobalt/p-1bfb69ae.entry.js +0 -1
- package/dist/cobalt/p-2794c500.entry.js +0 -1
- package/dist/cobalt/p-B1JT7us1.js +0 -1
- package/dist/cobalt/p-b2b13da8.entry.js +0 -1
- package/dist/cobalt/p-b9dfb333.entry.js +0 -1
- package/dist/cobalt/p-bc4fbfa6.entry.js +0 -1
- package/dist/cobalt/p-d75d2f3d.entry.js +0 -1
- package/dist/cobalt/p-f246946a.entry.js +0 -1
- package/dist/cobalt/p-f60bd4d6.entry.js +0 -1
- package/dist/components/p-B1JT7us1.js +0 -1
- package/dist/components/p-BR0LYW9v.js +0 -1
- package/dist/components/p-BZDl9aFl.js +0 -1
- package/dist/components/p-DfcPGitr.js +0 -1
- package/dist/components/p-Dg-Ti_Bf.js +0 -1
- /package/dist/cobalt/{p-05000ef3.entry.js → p-6974df59.entry.js} +0 -0
- /package/dist/cobalt/{p-ffbe955a.entry.js → p-71dc8e4a.entry.js} +0 -0
- /package/dist/cobalt/{p-297b55cd.entry.js → p-77e0d401.entry.js} +0 -0
- /package/dist/cobalt/{p-4c6caa41.entry.js → p-c567533e.entry.js} +0 -0
|
@@ -32,9 +32,8 @@ const CoMenu = class {
|
|
|
32
32
|
* `co-menu-item`/`co-menu-divider` las consumen con fallback al valor claro
|
|
33
33
|
* de siempre, así que sin `surface="dark"` no cambia nada. */
|
|
34
34
|
this.surface = 'light';
|
|
35
|
-
/** Desplazamiento en px sobre el eje CRUZADO del `placement
|
|
36
|
-
*
|
|
37
|
-
* interno. Default `0` = sin cambio. */
|
|
35
|
+
/** Desplazamiento en px sobre el eje CRUZADO del `placement`. Reenviada tal
|
|
36
|
+
* cual al `co-popover` interno. Default `0` = sin cambio. */
|
|
38
37
|
this.shift = 0;
|
|
39
38
|
this.handleKeydown = (e) => {
|
|
40
39
|
if (!this.open)
|
|
@@ -101,6 +100,7 @@ const CoMenu = class {
|
|
|
101
100
|
disconnectedCallback() {
|
|
102
101
|
document.removeEventListener('keydown', this.handleKeydown, true);
|
|
103
102
|
}
|
|
103
|
+
/** Enfoca la primera fila del panel raíz (lo hace solo al abrir). */
|
|
104
104
|
async focusFirstItem() {
|
|
105
105
|
var _a, _b;
|
|
106
106
|
const items = this.getMenuItems();
|
|
@@ -144,14 +144,14 @@ const CoMenu = class {
|
|
|
144
144
|
(_b = (_a = items[next]) === null || _a === void 0 ? void 0 : _a.focusItem) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
145
145
|
}
|
|
146
146
|
render() {
|
|
147
|
-
return (index.h("co-popover", { key: '
|
|
147
|
+
return (index.h("co-popover", { key: '66b0e90463829343152d2a9bdb821e19e70fa4d4', placement: this.placement, offset: this.offset, open: this.open, anchor: this.anchor, shift: this.shift,
|
|
148
148
|
// `co-menu` SIEMPRE pinta su propio chrome (`.co-menu`: fondo +
|
|
149
149
|
// shadow-lg + anillo, o el panel sólido de `surface="dark"`) — el
|
|
150
150
|
// `co-popover` interno tiene que ir SIEMPRE bare, sin condición, para
|
|
151
|
-
// no sumarle un fondo/borde/sombra propios detrás (
|
|
152
|
-
//
|
|
151
|
+
// no sumarle un fondo/borde/sombra propios detrás (antes de esto el
|
|
152
|
+
// panel del menú tenía doble
|
|
153
153
|
// chrome SIEMPRE, no solo en un caso opcional).
|
|
154
|
-
bare: true, onCoOpen: this.handlePopoverOpen, onCoClose: this.handlePopoverClose, onCoPlacement: this.handlePlacement }, index.h("slot", { key: '
|
|
154
|
+
bare: true, onCoOpen: this.handlePopoverOpen, onCoClose: this.handlePopoverClose, onCoPlacement: this.handlePlacement }, index.h("slot", { key: 'b78bcba7bc9542a82c78c1b8026bd4aa56629667', name: "trigger", slot: "trigger" }), index.h("div", { key: '0515763cb0b89320d4831befe1b6d984029ce309', class: "co-menu", role: "menu", style: this.width ? { width: this.width, minWidth: this.width } : undefined }, index.h("slot", { key: 'baf72944333c4e912fe0a0aa58d8affb8e923a3e' }))));
|
|
155
155
|
}
|
|
156
156
|
get el() { return index.getElement(this); }
|
|
157
157
|
static get watchers() { return {
|
|
@@ -164,7 +164,7 @@ const CoMenu = class {
|
|
|
164
164
|
* ancestro más cercano sea ESTE panel — los del menú raíz no tienen ninguno y
|
|
165
165
|
* los de un submenú cuelgan del ítem que lo abre.
|
|
166
166
|
*
|
|
167
|
-
* Se mira el ancestro y no los hijos directos a propósito
|
|
167
|
+
* Se mira el ancestro y no los hijos directos a propósito: con
|
|
168
168
|
* hijos directos, un consumidor que envuelva sus filas en un `<div>` (un
|
|
169
169
|
* grupo, un `v-for` con wrapper, un fragmento con contenedor) se quedaba sin
|
|
170
170
|
* navegación por flechas **en silencio**. Así el envoltorio da igual y los
|
|
@@ -127,8 +127,8 @@ const CoModal = class {
|
|
|
127
127
|
*/
|
|
128
128
|
this.closeOnEscape = false;
|
|
129
129
|
/**
|
|
130
|
-
* Modal width: xs (369px, vía `--co-modal-width` —
|
|
131
|
-
*
|
|
130
|
+
* Modal width: xs (369px, vía `--co-modal-width` — paneles anclados como
|
|
131
|
+
* "Tipografía y color"), sm (400px), md (540px), lg (680px),
|
|
132
132
|
* full (min(1400px, 95vw) × 92vh — media/document viewers).
|
|
133
133
|
*
|
|
134
134
|
* `full` also drops the body padding and lets the body grow, so a slotted
|
|
@@ -142,12 +142,12 @@ const CoModal = class {
|
|
|
142
142
|
* under the heading (Figma modals whose first row is a segmented control). */
|
|
143
143
|
this.headerDivider = true;
|
|
144
144
|
/**
|
|
145
|
-
* Visual treatment
|
|
145
|
+
* Visual treatment. `default` = superficie squircle actual
|
|
146
146
|
* (radio `--co-modal-r`, sombra que sigue la silueta). `panel` = superficie
|
|
147
147
|
* plana (radio 12, borde `--co-semantic-border-subtle`, `--co-shadow-lg`),
|
|
148
148
|
* SIN máscara squircle — look de panel anclado, no de diálogo centrado.
|
|
149
149
|
*
|
|
150
|
-
* `dialog`
|
|
150
|
+
* `dialog` = la anatomía del componente "Modal" del design system
|
|
151
151
|
* (Figma Prolibu UI Suite, nodo `1179:37247`): superficie plana radio 16
|
|
152
152
|
* (`--co-border-radius-lg`) sin borde ni sombra propios, título 22/500 y
|
|
153
153
|
* cuerpo 16/1.5 `text-secondary` sin divisor entre ambos, padding 32
|
|
@@ -157,7 +157,7 @@ const CoModal = class {
|
|
|
157
157
|
*/
|
|
158
158
|
this.appearance = 'default';
|
|
159
159
|
/**
|
|
160
|
-
* Control del scrim
|
|
160
|
+
* Control del scrim. `none` = sin fondo oscuro y sin cierre por
|
|
161
161
|
* clic afuera — independiente de `closeOnOverlay` (que solo aplica cuando
|
|
162
162
|
* SÍ hay scrim). `co-overlay` es quien posee el único `<div>` de scrim del
|
|
163
163
|
* árbol, así que `none` implica no montar `<co-overlay>` (ver `inline`).
|
|
@@ -165,21 +165,21 @@ const CoModal = class {
|
|
|
165
165
|
this.backdrop = 'default';
|
|
166
166
|
/**
|
|
167
167
|
* Renderiza en `position: fixed` con su propio `--co-modal-z-index` en vez
|
|
168
|
-
* de promoverse al TOP LAYER del browser
|
|
168
|
+
* de promoverse al TOP LAYER del browser. `co-overlay` promueve
|
|
169
169
|
* su scrim al top layer vía Popover API (`showPopover()`); el top layer
|
|
170
170
|
* SIEMPRE pinta por encima de cualquier `z-index` normal, así que un
|
|
171
171
|
* portal propio del consumidor (selector de fuente/color del editor) con
|
|
172
172
|
* z-index alto quedaría igual TAPADO detrás del modal. `inline` evita eso.
|
|
173
173
|
*
|
|
174
174
|
* `co-overlay` es también quien posee la promoción a top layer — no hay
|
|
175
|
-
* forma de pedirle "no te promuevas" sin tocar ese componente
|
|
176
|
-
*
|
|
175
|
+
* forma de pedirle "no te promuevas" sin tocar ese componente, así que,
|
|
176
|
+
* igual que `backdrop="none"`, `inline`
|
|
177
177
|
* implica no montar `<co-overlay>`: el panel pasa a posicionarse y apilarse
|
|
178
178
|
* solo (`.co-modal__frame--standalone`, ver co-modal.css).
|
|
179
179
|
*/
|
|
180
180
|
this.inline = false;
|
|
181
181
|
/**
|
|
182
|
-
* Opt-in: el modal se MUEVE arrastrando su header
|
|
182
|
+
* Opt-in: el modal se MUEVE arrastrando su header. Default false →
|
|
183
183
|
* los consumidores actuales quedan byte-idénticos (ni DOM ni CSS cambian).
|
|
184
184
|
*
|
|
185
185
|
* Con `movable`, el `part="header"` entero es la zona de agarre (`cursor:
|
|
@@ -194,6 +194,19 @@ const CoModal = class {
|
|
|
194
194
|
* mismo nombre taparía `HTMLElement.draggable` con dos semánticas encimadas.
|
|
195
195
|
*/
|
|
196
196
|
this.movable = false;
|
|
197
|
+
/**
|
|
198
|
+
* Opt-in: trampa de foco accesible (QA 2026-09-24, «Generar contrato»). Con
|
|
199
|
+
* `true`, al abrir el foco ENTRA al modal (el primer `[autofocus]`; si no
|
|
200
|
+
* hay, el primer control), Tab / Shift+Tab ciclan adentro y al cerrar vuelve
|
|
201
|
+
* a donde estaba. El recorrido es compuesto: ve el contenido proyectado por
|
|
202
|
+
* los slots y el `<button>` interno de cada co-button. Default false → los
|
|
203
|
+
* consumidores actuales no cambian.
|
|
204
|
+
*
|
|
205
|
+
* La trampa es de `<co-overlay>`, así que sin overlay (`inline` o
|
|
206
|
+
* `backdrop="none"`) NO aplica: esos modos son paneles no bloqueantes y la
|
|
207
|
+
* página de atrás sigue operable.
|
|
208
|
+
*/
|
|
209
|
+
this.trapFocus = false;
|
|
197
210
|
/* `:empty` can't see across a <slot>, so slotted presence is tracked in JS */
|
|
198
211
|
this.hasFooter = false;
|
|
199
212
|
this.handleFooterSlotChange = (e) => {
|
|
@@ -309,6 +322,18 @@ const CoModal = class {
|
|
|
309
322
|
if (e.key === 'Escape')
|
|
310
323
|
this.coClose.emit();
|
|
311
324
|
}
|
|
325
|
+
/**
|
|
326
|
+
* Re-promueve el modal al TOPE del top layer (QA 2026-09-24, «Generar
|
|
327
|
+
* contrato»): un drawer que se abre DESPUÉS del modal (cambio de URL,
|
|
328
|
+
* historial) pinta encima, porque en el top layer gana el último promovido.
|
|
329
|
+
* Delega en su `<co-overlay>`: sin cerrar el modal, sin eventos (`coClose` /
|
|
330
|
+
* `coAfterClose` / `coAfterOpen`), sin soltar el scroll lock y sin re-animar
|
|
331
|
+
* la entrada. No-op sin overlay (`inline`, `backdrop="none"`) o cerrado.
|
|
332
|
+
*/
|
|
333
|
+
async bringToFront() {
|
|
334
|
+
var _a, _b, _c;
|
|
335
|
+
await ((_c = (_b = (_a = this.el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('co-overlay')) === null || _b === void 0 ? void 0 : _b.bringToFront) === null || _c === void 0 ? void 0 : _c.call(_b));
|
|
336
|
+
}
|
|
312
337
|
/**
|
|
313
338
|
* La posición no se persiste: cada APERTURA arranca desde la posición por
|
|
314
339
|
* defecto. El reset va al abrir y no al cerrar a propósito — reseteando al
|
|
@@ -424,8 +449,9 @@ const CoModal = class {
|
|
|
424
449
|
}, part: "header", ref: (el) => (this.headerEl = el), onPointerDown: this.movable ? this.handleDragDown : undefined, onPointerMove: this.movable ? this.handleDragMove : undefined, onPointerUp: this.movable ? this.handleDragUp : undefined, onPointerCancel: this.movable ? this.handleDragCancel : undefined }, index.h("slot", { name: "header-leading" }), index.h("div", { class: "co-modal__header-text", part: "header-text" }, index.h("h2", { class: "co-modal__heading", part: "heading", id: "modal-heading" }, this.heading), this.description && (index.h("p", { class: "co-modal__description", part: "description" }, this.description))), index.h("slot", { name: "header-actions" }), this.closable && (index.h("button", { class: "co-modal__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, index.h("co-icon", { name: "x", size: closeIconSize })))), !this.noDividers && (index.h("div", { class: "co-modal__body", part: "body" }, index.h("slot", null))), index.h("div", { class: { 'co-modal__footer': true, 'co-modal__footer--empty': !this.hasFooter }, part: "footer" }, index.h("slot", { name: "footer", onSlotchange: this.handleFooterSlotChange })))));
|
|
425
450
|
if (!this.usesOverlay)
|
|
426
451
|
return frame;
|
|
427
|
-
return (index.h("co-overlay", { open: this.open, onCoClose: this.handleOverlayClick }, frame));
|
|
452
|
+
return (index.h("co-overlay", { open: this.open, trapFocus: this.trapFocus, onCoClose: this.handleOverlayClick }, frame));
|
|
428
453
|
}
|
|
454
|
+
get el() { return index.getElement(this); }
|
|
429
455
|
static get watchers() { return {
|
|
430
456
|
"open": [{
|
|
431
457
|
"resetPositionOnOpen": 0
|
|
@@ -15,12 +15,12 @@ const CoNavbar = class {
|
|
|
15
15
|
this.rounded = false;
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
|
-
return (index.h("div", { key: '
|
|
18
|
+
return (index.h("div", { key: '68c78b33434a32372eef9763b0c11c9a185f6ef8', class: {
|
|
19
19
|
'co-navbar': true,
|
|
20
20
|
[`co-navbar--${this.variant}`]: true,
|
|
21
21
|
[`co-navbar--${this.size}`]: true,
|
|
22
22
|
'co-navbar--rounded': this.rounded,
|
|
23
|
-
}, part: "navbar", role: "toolbar" }, index.h("slot", { key: '
|
|
23
|
+
}, part: "navbar", role: "toolbar" }, index.h("slot", { key: 'a9d05ff60065f85dc24e941478a18fa40466143f' })));
|
|
24
24
|
}
|
|
25
25
|
};
|
|
26
26
|
CoNavbar.style = coNavbarCss();
|
|
@@ -142,11 +142,17 @@ const CoNumberField = class {
|
|
|
142
142
|
this.required = false;
|
|
143
143
|
/** Label layout: vertical (label above) or horizontal (label beside) */
|
|
144
144
|
this.layout = 'vertical';
|
|
145
|
+
/** Estado de validación: pinta el borde y el `helperText` con el color del estado. */
|
|
145
146
|
this.status = 'default';
|
|
147
|
+
/** Valor numérico (reflejado); `null` = vacío (solo alcanzable con `clearable`). El componente lo actualiza. */
|
|
146
148
|
this.value = 0;
|
|
149
|
+
/** Paso de los botones −/+ y de las flechas (default 1). */
|
|
147
150
|
this.step = 1;
|
|
151
|
+
/** Deshabilita el campo y los botones. */
|
|
148
152
|
this.disabled = false;
|
|
153
|
+
/** Placeholder del campo vacío (default `'0'`). */
|
|
149
154
|
this.placeholder = '0';
|
|
155
|
+
/** Alto del campo: `s` 28 · `sm` 32 · `md` 40 (default) · `lg` 48. */
|
|
150
156
|
this.size = 'md';
|
|
151
157
|
/** Show clear button when the field has a value */
|
|
152
158
|
this.clearable = false;
|
|
@@ -426,18 +432,18 @@ const CoNumberField = class {
|
|
|
426
432
|
return this.scaled && !this.isEmpty ? '%' : null;
|
|
427
433
|
}
|
|
428
434
|
render() {
|
|
429
|
-
return (index.h("div", { key: '
|
|
435
|
+
return (index.h("div", { key: 'cf4d63ce0278fd8f429aa4bf541497b7cf178ffe', class: {
|
|
430
436
|
'co-number-field': true,
|
|
431
437
|
'co-number-field--disabled': this.disabled,
|
|
432
438
|
'co-number-field--focused': this.focused,
|
|
433
439
|
[`co-number-field--${this.size}`]: true,
|
|
434
440
|
[`co-number-field--${this.status}`]: this.status !== 'default',
|
|
435
|
-
} }, (this.label || this.secondaryLabel) && (index.h("div", { key: '
|
|
441
|
+
} }, (this.label || this.secondaryLabel) && (index.h("div", { key: 'ecf9fd16f18a3ebbaef5b81b0c8ae41b80f04abf', class: "co-number-field__labels" }, this.label && index.h("label", { key: '7602d901e085e3380dff2a355d61ac1dc515428b', class: "co-number-field__label" }, this.label, index.h(requiredMark.RequiredMark, { key: '361743bf41c66ff28ceec00aba583328f2404713', required: this.required })), this.secondaryLabel && index.h("span", { key: 'ec9af4b27f3915704ef89ed6f51e7184eb5e1dd4', class: "co-number-field__secondary-label" }, this.secondaryLabel))), index.h("div", { key: '30f1716aed06da03f924fa1da2b2ab29dbede0bb', class: "co-number-field__row", part: "row" }, !this.hideControls && (index.h("button", { key: '1dbee1178df2a86e54ae42572a20ecf30484b8bc', class: "co-number-field__btn co-number-field__btn--minus", type: "button", tabIndex: -1, disabled: !this.canDecrement, onClick: this.handleDecrement, "aria-label": "Decrease" }, index.h("co-icon", { key: '40f61bd3774fb03b6aaceaef006dd45f2df260d3', name: "minus", size: 16 }))), index.h("input", { key: '254a74cd61a2776a69953965f8b289267b25fbb2', ref: el => (this.inputEl = el), class: "co-number-field__input", type: "text", inputMode: "decimal",
|
|
436
442
|
// Mismo guard `focused` que el @Watch: mientras el usuario edita, su
|
|
437
443
|
// texto manda. Sin esto, el re-render que dispara emitValue repinta
|
|
438
444
|
// el input desde el NÚMERO y se come el texto en construcción
|
|
439
445
|
// ("34,640.00" pegado quedaba "34,640"; un "12." perdería el punto).
|
|
440
|
-
value: this.focused && this.inputEl ? this.inputEl.value : this.displayValue, placeholder: this.placeholder, disabled: this.disabled, onInput: this.handleInput, onPaste: this.handlePaste, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, part: "input" }), this.affixText && (index.h("span", { key: '
|
|
446
|
+
value: this.focused && this.inputEl ? this.inputEl.value : this.displayValue, placeholder: this.placeholder, disabled: this.disabled, onInput: this.handleInput, onPaste: this.handlePaste, onFocus: this.handleFocus, onBlur: this.handleBlur, onKeyDown: this.handleKeyDown, part: "input" }), this.affixText && (index.h("span", { key: '836ea4e4cba0b21a36b1017d6fc0c4d621d69e56', class: "co-number-field__affix", "aria-hidden": "true" }, this.affixText)), this.clearable && !this.isEmpty && !this.disabled && (index.h("button", { key: '5eefa937a055dea1855d1bc3bae675003d8382c8', class: "co-number-field__clear", type: "button", tabIndex: -1, onClick: this.handleClear, "aria-label": "Clear" }, index.h("co-icon", { key: '096dec8d88b7b241cd83a04788bc4db05feec585', name: "x-circle", size: 16, weight: "fill" }))), index.h("slot", { key: '1ea7d1ff2c61d74b0884e7b8f1b7b54de4978876', name: "suffix" }), !this.hideControls && (index.h("button", { key: '9ae95697534b85dcd928c0d0e7f72a3b8c5402c7', class: "co-number-field__btn co-number-field__btn--plus", type: "button", tabIndex: -1, disabled: !this.canIncrement, onClick: this.handleIncrement, "aria-label": "Increase" }, index.h("co-icon", { key: 'af526ac4278865052f32ae7359a571aa485492af', name: "plus", size: 16 })))), this.helperText && (index.h("div", { key: '9bad3ffd8c70ce49205132f9f73294a83b6ebbc3', class: `co-number-field__helper co-number-field__helper--${this.status}` }, this.statusIcon && index.h("co-icon", { key: '4987bc82011c4bb93e1bd00ef1ffd45d2e8681f4', name: this.statusIcon, size: 14, weight: "fill", class: "co-number-field__helper-icon" }), index.h("span", { key: '8eac5821653dc0110113f94833e13f27411188a7', class: "co-number-field__helper-text" }, this.helperText)))));
|
|
441
447
|
}
|
|
442
448
|
get el() { return index.getElement(this); }
|
|
443
449
|
static get watchers() { return {
|
|
@@ -57,20 +57,112 @@ function resolveTabIndex(count, activeIndex, shiftKey) {
|
|
|
57
57
|
// Forward: from the last element (or from outside) wrap to the first.
|
|
58
58
|
return activeIndex === -1 || activeIndex >= count - 1 ? 0 : activeIndex + 1;
|
|
59
59
|
}
|
|
60
|
+
// ── Recorrido compuesto (QA 2026-09-24, «Generar contrato» de contratos V2) ──
|
|
61
|
+
// El foco nunca entraba ni quedaba atrapado en un co-modal: `getFocusableElements`
|
|
62
|
+
// solo mira el light DOM de co-overlay (el frame del modal: el ✕). El contenido
|
|
63
|
+
// del consumidor llega por DOS <slot> (el de co-overlay y el del frame) y los
|
|
64
|
+
// controles reales viven en el shadow de cada co-* (el <button> de co-button, el
|
|
65
|
+
// <input> de co-input). El recorrido sigue el árbol PLANO: baja por shadowRoots
|
|
66
|
+
// y, en cada <slot>, por sus asignados — o por su contenido por defecto si no
|
|
67
|
+
// tiene. Todo esto corre solo en el navegador (abrir la trampa / cada Tab).
|
|
68
|
+
/** Hijos en el árbol plano: el shadow del host, los asignados de un slot o los hijos. */
|
|
69
|
+
function composedChildren(el) {
|
|
70
|
+
if (el.shadowRoot)
|
|
71
|
+
return Array.from(el.shadowRoot.children);
|
|
72
|
+
if (el.tagName === 'SLOT') {
|
|
73
|
+
const assigned = el.assignedElements({ flatten: true });
|
|
74
|
+
return assigned.length ? assigned : Array.from(el.children);
|
|
75
|
+
}
|
|
76
|
+
return Array.from(el.children);
|
|
77
|
+
}
|
|
78
|
+
/** Subárbol fuera de la trampa entero: oculto a AT o inerte. */
|
|
79
|
+
function isExcludedSubtree(el) {
|
|
80
|
+
return el.getAttribute('aria-hidden') === 'true' || el.hasAttribute('inert');
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Parada de Tab: matchea el selector, no está deshabilitado, no se sacó del
|
|
84
|
+
* orden con tabindex negativo (los botones internos de un trigger co-* —clear,
|
|
85
|
+
* chips— van con `tabIndex={-1}`, y `button:not([disabled])` los matchearía
|
|
86
|
+
* igual), tiene caja (offsetParent null = display:none; getClientRects cubre
|
|
87
|
+
* position:fixed) y no es `visibility:hidden`: un acordeón o fieldset colapsado
|
|
88
|
+
* conserva la caja pero el navegador no le da el foco, y la trampa lo elegiría
|
|
89
|
+
* igual → Tab clavado (WCAG 2.1.2). Sin la API (navegador viejo, jsdom) no filtra.
|
|
90
|
+
*/
|
|
91
|
+
function isTabStop(el) {
|
|
92
|
+
var _a, _b;
|
|
93
|
+
if (!((_a = el.matches) === null || _a === void 0 ? void 0 : _a.call(el, FOCUSABLE_SELECTOR)) || el.hasAttribute('disabled'))
|
|
94
|
+
return false;
|
|
95
|
+
const tabindex = el.getAttribute('tabindex');
|
|
96
|
+
if (tabindex !== null && Number(tabindex) < 0)
|
|
97
|
+
return false;
|
|
98
|
+
if (el.offsetParent === null && el.getClientRects().length === 0)
|
|
99
|
+
return false;
|
|
100
|
+
return ((_b = el.checkVisibility) === null || _b === void 0 ? void 0 : _b.call(el, { visibilityProperty: true })) !== false;
|
|
101
|
+
}
|
|
60
102
|
/**
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
* out of scope — the common dialog/modal content lives in the slotted subtree.)
|
|
103
|
+
* Recorre en orden del árbol plano los descendientes compuestos de `root` (sin
|
|
104
|
+
* incluirlo) hasta que `visit` devuelve true. Poda aria-hidden / inert.
|
|
64
105
|
*/
|
|
65
|
-
function
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
106
|
+
function walkComposed(root, visit) {
|
|
107
|
+
const step = (node) => {
|
|
108
|
+
if (isExcludedSubtree(node))
|
|
109
|
+
return false;
|
|
110
|
+
if (visit(node))
|
|
111
|
+
return true;
|
|
112
|
+
return composedChildren(node).some(step);
|
|
113
|
+
};
|
|
114
|
+
composedChildren(root).some(step);
|
|
115
|
+
}
|
|
116
|
+
/** Primer descendiente compuesto que cumple `match`, en orden del árbol plano. */
|
|
117
|
+
function findComposed(root, match) {
|
|
118
|
+
let found = null;
|
|
119
|
+
walkComposed(root, (el) => {
|
|
120
|
+
if (!match(el))
|
|
121
|
+
return false;
|
|
122
|
+
found = el;
|
|
123
|
+
return true;
|
|
124
|
+
});
|
|
125
|
+
return found;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Paradas de Tab dentro de `root` en el árbol COMPUESTO (shadowRoots + slots
|
|
129
|
+
* asignados), con las mismas exclusiones que `getFocusableElements`.
|
|
130
|
+
*/
|
|
131
|
+
function getComposedFocusables(root) {
|
|
132
|
+
const out = [];
|
|
133
|
+
walkComposed(root, (el) => {
|
|
134
|
+
if (isTabStop(el))
|
|
135
|
+
out.push(el);
|
|
136
|
+
return false;
|
|
137
|
+
});
|
|
138
|
+
return out;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Dónde cae el foco al abrir la trampa: el primer `[autofocus]` del recorrido
|
|
142
|
+
* compuesto —si es un host con shadow (`<co-input autofocus>`), su primer
|
|
143
|
+
* enfocable compuesto—; si no hay, la primera parada de Tab. `null` = nada
|
|
144
|
+
* enfocable (el llamador cae al contenedor).
|
|
145
|
+
*/
|
|
146
|
+
function resolveInitialFocus(root) {
|
|
147
|
+
const autofocus = findComposed(root, (el) => el.hasAttribute('autofocus'));
|
|
148
|
+
if (autofocus) {
|
|
149
|
+
if (isTabStop(autofocus))
|
|
150
|
+
return autofocus;
|
|
151
|
+
const inner = autofocus.shadowRoot ? getComposedFocusables(autofocus)[0] : undefined;
|
|
152
|
+
if (inner)
|
|
153
|
+
return inner;
|
|
154
|
+
}
|
|
155
|
+
return findComposed(root, isTabStop);
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Con dos trampas abiertas (un confirm sobre un modal, un modal anidado) las dos
|
|
159
|
+
* escuchan el keydown de document: solo la capa MÁS RECIENTE maneja Tab.
|
|
160
|
+
*/
|
|
161
|
+
function isTopTrap(stack, id) {
|
|
162
|
+
return stack.length > 0 && stack[stack.length - 1] === id;
|
|
71
163
|
}
|
|
72
164
|
|
|
73
|
-
const coOverlayCss = () => `:host{display:contents}.co-overlay{position:fixed;inset:0;z-index:1000;margin:0;border:0;padding:0;width:auto;height:auto;max-width:none;max-height:none;overflow:visible;display:flex;align-items:center;justify-content:center;background:var(--co-overlay-bg, rgba(0, 0, 0, 0.4));-webkit-backdrop-filter:blur(var(--co-overlay-blur, 2px));backdrop-filter:blur(var(--co-overlay-blur, 2px));opacity:0;pointer-events:none;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-overlay--open{opacity:1;pointer-events:auto;transition:opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}`;
|
|
165
|
+
const coOverlayCss = () => `:host{display:contents}.co-overlay{position:fixed;inset:0;z-index:1000;margin:0;border:0;padding:0;width:auto;height:auto;max-width:none;max-height:none;overflow:visible;display:flex;align-items:center;justify-content:center;background:var(--co-overlay-bg, rgba(0, 0, 0, 0.4));-webkit-backdrop-filter:blur(var(--co-overlay-blur, 2px));backdrop-filter:blur(var(--co-overlay-blur, 2px));opacity:0;pointer-events:none;transition:opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-overlay--open{opacity:1;pointer-events:auto;transition:opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-overlay--refront{transition:none !important}`;
|
|
74
166
|
|
|
75
167
|
/**
|
|
76
168
|
* Module-level body-scroll lock shared by every overlay instance.
|
|
@@ -98,6 +190,16 @@ function unlockBodyScroll() {
|
|
|
98
190
|
document.body.style.overflow = savedOverflow;
|
|
99
191
|
}
|
|
100
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Pila de trampas de foco ABIERTAS, compartida por todas las instancias (como el
|
|
195
|
+
* scroll lock). Todas escuchan el keydown de document: con un confirm encima de
|
|
196
|
+
* un modal, las dos movían el foco en el mismo Tab. Solo la capa más reciente
|
|
197
|
+
* (`isTopTrap`) maneja Tab y el foco inicial.
|
|
198
|
+
*/
|
|
199
|
+
const trapStack = [];
|
|
200
|
+
let trapSeq = 0;
|
|
201
|
+
/** Clase del div mientras dura el re-apilado de `bringToFront()` (ver co-overlay.css). */
|
|
202
|
+
const REFRONT_CLASS = 'co-overlay--refront';
|
|
101
203
|
function nextFrame(cb) {
|
|
102
204
|
if (typeof requestAnimationFrame === 'function')
|
|
103
205
|
requestAnimationFrame(cb);
|
|
@@ -117,6 +219,11 @@ const CoOverlay = class {
|
|
|
117
219
|
* previously-focused element, moves focus into the overlay, cycles Tab /
|
|
118
220
|
* Shift+Tab within the slotted content, and restores focus on close.
|
|
119
221
|
* Default false → existing consumers are unchanged.
|
|
222
|
+
*
|
|
223
|
+
* The walk is COMPOSED (shadow roots + assigned slots): it reaches the
|
|
224
|
+
* consumer's content projected through a host's slots and the inner control
|
|
225
|
+
* of every co-* (a co-button's `<button>`). With several traps open, only the
|
|
226
|
+
* most recent one handles Tab.
|
|
120
227
|
*/
|
|
121
228
|
this.trapFocus = false;
|
|
122
229
|
/**
|
|
@@ -126,6 +233,10 @@ const CoOverlay = class {
|
|
|
126
233
|
this.closeOnEscape = false;
|
|
127
234
|
/** Whether THIS instance currently holds a scroll lock (prevents double-count). */
|
|
128
235
|
this.hasLock = false;
|
|
236
|
+
/** Identidad de esta instancia en `trapStack`. */
|
|
237
|
+
this.trapId = `co-overlay-trap-${++trapSeq}`;
|
|
238
|
+
/** Whether THIS instance is currently in `trapStack` (prevents double push). */
|
|
239
|
+
this.trapping = false;
|
|
129
240
|
// Origen de la pulsación en curso (ver isBackdropDismiss): un drag que
|
|
130
241
|
// empieza dentro del contenido y suelta en el fondo NO es un cierre —el
|
|
131
242
|
// navegador despacha ese `click` al ancestro común, el propio scrim—, ni
|
|
@@ -167,27 +278,55 @@ const CoOverlay = class {
|
|
|
167
278
|
else
|
|
168
279
|
this.releaseLock();
|
|
169
280
|
this.syncPopover();
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
this.restoreFocus();
|
|
175
|
-
}
|
|
281
|
+
this.syncTrap();
|
|
282
|
+
}
|
|
283
|
+
onTrapFocusChange() {
|
|
284
|
+
this.syncTrap();
|
|
176
285
|
}
|
|
177
286
|
componentDidLoad() {
|
|
178
287
|
// Handle the case where the overlay mounts already open.
|
|
179
288
|
if (this.open)
|
|
180
289
|
this.acquireLock();
|
|
181
290
|
this.syncPopover();
|
|
182
|
-
|
|
183
|
-
this.captureAndFocus();
|
|
291
|
+
this.syncTrap();
|
|
184
292
|
}
|
|
185
293
|
disconnectedCallback() {
|
|
186
294
|
// Safety: never leave the body locked if removed while open.
|
|
187
295
|
this.releaseLock();
|
|
188
|
-
// Safety: return focus if
|
|
189
|
-
|
|
190
|
-
|
|
296
|
+
// Safety: leave the trap stack and return focus if removed while trapping.
|
|
297
|
+
this.releaseTrap();
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Re-promueve el scrim al TOPE del top layer (QA 2026-09-24, «Generar
|
|
301
|
+
* contrato»): un drawer abierto DESPUÉS de un modal pintaba encima, porque en
|
|
302
|
+
* el top layer gana el último promovido y no hay z-index que lo corrija.
|
|
303
|
+
* `hidePopover()` + `showPopover()` lo vuelven a meter último.
|
|
304
|
+
*
|
|
305
|
+
* No es un cierre: no emite `coClose` / `coAfterClose` / `coAfterOpen`, no
|
|
306
|
+
* toca `open` ni el scroll lock, y no re-anima la entrada (la clase
|
|
307
|
+
* `co-overlay--refront` anula la transición durante el re-show y se retira en
|
|
308
|
+
* el frame siguiente). Tampoco mueve el foco: si el re-show dispara los
|
|
309
|
+
* «popover focusing steps» (un `[autofocus]` adentro), se devuelve a donde
|
|
310
|
+
* estaba. No-op cerrado, sin Popover API o fuera del top layer.
|
|
311
|
+
*/
|
|
312
|
+
async bringToFront() {
|
|
313
|
+
const el = this.overlayEl;
|
|
314
|
+
if (!this.open || !el || typeof el.showPopover !== 'function')
|
|
315
|
+
return;
|
|
316
|
+
if (!el.matches(':popover-open'))
|
|
317
|
+
return;
|
|
318
|
+
const active = this.deepActiveElement();
|
|
319
|
+
el.classList.add(REFRONT_CLASS);
|
|
320
|
+
try {
|
|
321
|
+
el.hidePopover();
|
|
322
|
+
el.showPopover();
|
|
323
|
+
}
|
|
324
|
+
catch (_a) {
|
|
325
|
+
/* desconectado entre medio: no hay nada que re-apilar */
|
|
326
|
+
}
|
|
327
|
+
if (active && active.isConnected && this.deepActiveElement() !== active)
|
|
328
|
+
active.focus({ preventScroll: true });
|
|
329
|
+
nextFrame(() => el.classList.remove(REFRONT_CLASS));
|
|
191
330
|
}
|
|
192
331
|
acquireLock() {
|
|
193
332
|
if (this.hasLock)
|
|
@@ -225,19 +364,43 @@ const CoOverlay = class {
|
|
|
225
364
|
/* not connected yet, or already in the desired state */
|
|
226
365
|
}
|
|
227
366
|
}
|
|
228
|
-
/**
|
|
367
|
+
/** La trampa está activa exactamente mientras el overlay está abierto con `trapFocus`. */
|
|
368
|
+
syncTrap() {
|
|
369
|
+
if (this.open && this.trapFocus)
|
|
370
|
+
this.engageTrap();
|
|
371
|
+
else
|
|
372
|
+
this.releaseTrap();
|
|
373
|
+
}
|
|
374
|
+
engageTrap() {
|
|
375
|
+
if (this.trapping)
|
|
376
|
+
return;
|
|
377
|
+
this.trapping = true;
|
|
378
|
+
trapStack.push(this.trapId);
|
|
379
|
+
this.captureAndFocus();
|
|
380
|
+
}
|
|
381
|
+
releaseTrap() {
|
|
382
|
+
if (!this.trapping)
|
|
383
|
+
return;
|
|
384
|
+
this.trapping = false;
|
|
385
|
+
const i = trapStack.indexOf(this.trapId);
|
|
386
|
+
if (i >= 0)
|
|
387
|
+
trapStack.splice(i, 1);
|
|
388
|
+
this.restoreFocus();
|
|
389
|
+
}
|
|
390
|
+
/** Record the current focus and move it into the overlay (only while trapping). */
|
|
229
391
|
captureAndFocus() {
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
392
|
+
// El activo PROFUNDO: `document.activeElement` se queda en el host de un
|
|
393
|
+
// co-* (co-button), cuyo focus() no llega al <button> interno.
|
|
394
|
+
this.returnFocusEl = this.deepActiveElement();
|
|
233
395
|
// Defer so slotted content / the open transition is ready to take focus.
|
|
234
396
|
nextFrame(() => {
|
|
235
397
|
var _a;
|
|
236
|
-
|
|
398
|
+
// Una trampa abierta en el mismo frame por ENCIMA (confirm) se queda el foco.
|
|
399
|
+
if (!this.open || !this.trapping || !isTopTrap(trapStack, this.trapId))
|
|
237
400
|
return;
|
|
238
|
-
const
|
|
239
|
-
if (
|
|
240
|
-
|
|
401
|
+
const target = resolveInitialFocus(this.el);
|
|
402
|
+
if (target)
|
|
403
|
+
target.focus();
|
|
241
404
|
else
|
|
242
405
|
(_a = this.overlayEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
243
406
|
});
|
|
@@ -246,8 +409,9 @@ const CoOverlay = class {
|
|
|
246
409
|
restoreFocus() {
|
|
247
410
|
const target = this.returnFocusEl;
|
|
248
411
|
this.returnFocusEl = null;
|
|
249
|
-
|
|
250
|
-
|
|
412
|
+
// Desmontado mientras el overlay estaba abierto (el paso de un wizard): no hay adónde volver.
|
|
413
|
+
if (target && target.isConnected && typeof target.focus === 'function')
|
|
414
|
+
target.focus({ preventScroll: true });
|
|
251
415
|
}
|
|
252
416
|
/** Deepest active element, descending through nested shadow roots. */
|
|
253
417
|
deepActiveElement() {
|
|
@@ -266,12 +430,16 @@ const CoOverlay = class {
|
|
|
266
430
|
this.coClose.emit();
|
|
267
431
|
return;
|
|
268
432
|
}
|
|
269
|
-
if (this.
|
|
433
|
+
if (this.trapping && e.key === 'Tab' && isTopTrap(trapStack, this.trapId))
|
|
270
434
|
this.trapTab(e);
|
|
271
435
|
}
|
|
272
436
|
trapTab(e) {
|
|
273
437
|
var _a;
|
|
274
|
-
|
|
438
|
+
// Tab ya manejado por un control de adentro (co-tags-field agrega el tag, las listas de co-rich-text y
|
|
439
|
+
// CodeMirror indentan): el listener de document corre DESPUÉS y no le roba el foco.
|
|
440
|
+
if (e.defaultPrevented)
|
|
441
|
+
return;
|
|
442
|
+
const focusables = getComposedFocusables(this.el);
|
|
275
443
|
if (focusables.length === 0) {
|
|
276
444
|
// Nothing to move to — keep focus pinned to the overlay container.
|
|
277
445
|
e.preventDefault();
|
|
@@ -286,12 +454,15 @@ const CoOverlay = class {
|
|
|
286
454
|
focusables[nextIndex].focus();
|
|
287
455
|
}
|
|
288
456
|
render() {
|
|
289
|
-
return (index.h("div", { key: '
|
|
457
|
+
return (index.h("div", { key: 'e18d7b0e3ebd4933a78a9f2d39af6058ce429105', class: { 'co-overlay': true, 'co-overlay--open': this.open }, part: "overlay", popover: "manual", tabindex: this.trapFocus ? -1 : undefined, ref: (el) => (this.overlayEl = el), onPointerDown: this.handlePointerDown, onPointerUp: this.handlePointerUp, onClick: this.handleClick, onTransitionEnd: this.handleTransitionEnd }, index.h("slot", { key: '2f29233d44de8a0cc3100cfa08233cdc10ebf352' })));
|
|
290
458
|
}
|
|
291
459
|
get el() { return index.getElement(this); }
|
|
292
460
|
static get watchers() { return {
|
|
293
461
|
"open": [{
|
|
294
462
|
"onOpenChange": 0
|
|
463
|
+
}],
|
|
464
|
+
"trapFocus": [{
|
|
465
|
+
"onTrapFocusChange": 0
|
|
295
466
|
}]
|
|
296
467
|
}; }
|
|
297
468
|
};
|
|
@@ -9,7 +9,7 @@ const CoPageHeader = class {
|
|
|
9
9
|
index.registerInstance(this, hostRef);
|
|
10
10
|
}
|
|
11
11
|
render() {
|
|
12
|
-
return (index.h("div", { key: '
|
|
12
|
+
return (index.h("div", { key: '18d15d7b241f92bbd121fd6547832a30f4404928', class: "co-page-header", part: "page-header" }, index.h("div", { key: 'cbf4427991e3b43775a1d47c95f953ef79d71c77', class: "co-page-header__left" }, this.icon && (index.h("span", { key: '647701102f261fc214a0a4347894ba275da1ed7d', class: "co-page-header__icon" }, index.h("co-icon", { key: 'd377f2f5cbfa190cb483fe4a6ff2a483f9053f7b', name: this.icon, size: 24 }))), index.h("span", { key: 'ccf59184d2154c89fc90ccddfffc8dfc8c07b72b', class: "co-page-header__title" }, index.h("slot", { key: '34dd64e79e72cb154c63b16f72c2ec58193d9988' }, this.heading))), index.h("div", { key: 'e2f1d119629a3b9479896cf2338625ad775b8556', class: "co-page-header__actions" }, index.h("slot", { key: '62ee162b3388968ee1930a2c3ab20e45b34a2d65', name: "actions" }))));
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
15
|
CoPageHeader.style = coPageHeaderCss();
|
|
@@ -61,7 +61,7 @@ const CoPopover = class {
|
|
|
61
61
|
/** Flip placement when the panel would overflow the viewport. */
|
|
62
62
|
this.flip = true;
|
|
63
63
|
/**
|
|
64
|
-
* El panel no pinta fondo/borde/sombra propios
|
|
64
|
+
* El panel no pinta fondo/borde/sombra propios:
|
|
65
65
|
* para alojar un `co-menu` (u otro contenido con su propio chrome) sin
|
|
66
66
|
* "doble chrome". Reflejado como atributo `bare`. Default `false` = panel
|
|
67
67
|
* con el fondo/borde/sombra de siempre (`--co-popover-border-color` /
|
|
@@ -69,8 +69,7 @@ const CoPopover = class {
|
|
|
69
69
|
*/
|
|
70
70
|
this.bare = false;
|
|
71
71
|
/**
|
|
72
|
-
* Desplazamiento en px sobre el eje CRUZADO del `placement
|
|
73
|
-
* 2 Cobalt): con un placement vertical (`top*`/`bottom*`) mueve `left`; con
|
|
72
|
+
* Desplazamiento en px sobre el eje CRUZADO del `placement`: con un placement vertical (`top*`/`bottom*`) mueve `left`; con
|
|
74
73
|
* uno horizontal (`left*`/`right*`) mueve `top`. Default 0 = sin cambio.
|
|
75
74
|
*
|
|
76
75
|
* ⚠️ Se aplica ANTES del clamp de 4px a los bordes del viewport (ver
|
|
@@ -187,7 +186,7 @@ const CoPopover = class {
|
|
|
187
186
|
width: this.panelEl.offsetWidth,
|
|
188
187
|
height: this.panelEl.offsetHeight,
|
|
189
188
|
});
|
|
190
|
-
//
|
|
189
|
+
// `anchor` sin resolver (prop ausente, o
|
|
191
190
|
// selector sin match en `document`) → `anchorRect` queda undefined y
|
|
192
191
|
// computePosition cae a `triggerRect` — mismo resultado que hoy.
|
|
193
192
|
const anchorEl = this.resolveAnchor();
|
|
@@ -335,17 +334,20 @@ const CoPopover = class {
|
|
|
335
334
|
this.pressStartedInside = false;
|
|
336
335
|
}
|
|
337
336
|
// ── Public methods ─────────────────────────────────────────
|
|
337
|
+
/** Abre o cierra el panel. */
|
|
338
338
|
async toggle() {
|
|
339
339
|
this.open = !this.open;
|
|
340
340
|
}
|
|
341
|
+
/** Abre el panel. */
|
|
341
342
|
async show() {
|
|
342
343
|
this.open = true;
|
|
343
344
|
}
|
|
345
|
+
/** Cierra el panel. */
|
|
344
346
|
async hide() {
|
|
345
347
|
this.open = false;
|
|
346
348
|
}
|
|
347
349
|
/**
|
|
348
|
-
* Resuelve la prop `anchor` a un elemento
|
|
350
|
+
* Resuelve la prop `anchor` a un elemento:
|
|
349
351
|
* - `HTMLElement` → se usa tal cual.
|
|
350
352
|
* - `string` → selector resuelto contra `document`; sin match, `null`
|
|
351
353
|
* (el llamador cae a `triggerRect`, el comportamiento de siempre).
|
|
@@ -415,13 +417,13 @@ const CoPopover = class {
|
|
|
415
417
|
}
|
|
416
418
|
// ── Render ─────────────────────────────────────────────────
|
|
417
419
|
render() {
|
|
418
|
-
return (index.h("div", { key: '
|
|
420
|
+
return (index.h("div", { key: 'f9c23cf5b7beb42230fbc37e6aacb9d8423a2c34', class: "co-popover" }, index.h("div", { key: '255b7a3b713719283e3b4a6d65ed520661b4e40b', class: "co-popover__trigger", ref: (el) => (this.triggerEl = el), onClick: this.handleTriggerClick }, index.h("slot", { key: '82c7133648e7c55db263f1abae8902c3ab579d27', name: "trigger" })), (this.open || this.closing) && (index.h("div", { key: '990ca1400e5e19d6614dbc7b43e78b116626e1b0', class: { 'co-popover__panel': true, 'co-popover__panel--closing': this.closing }, part: "panel", popover: "manual", onTransitionEnd: this.handlePanelTransitionEnd, ref: (el) => {
|
|
419
421
|
if (el && el !== this.panelEl) {
|
|
420
422
|
this.panelEl = el;
|
|
421
423
|
this.promotePanel();
|
|
422
424
|
this.scheduleUpdate();
|
|
423
425
|
}
|
|
424
|
-
} }, index.h("slot", { key: '
|
|
426
|
+
} }, index.h("slot", { key: 'fb635cf42e7866b055a59aaf471bab5bca995afb' })))));
|
|
425
427
|
}
|
|
426
428
|
get el() { return index.getElement(this); }
|
|
427
429
|
static get watchers() { return {
|