@prolibu-suite/cobalt-core 0.10.3 → 0.11.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/custom-elements.json +4385 -389
- package/dist/cjs/co-accordion.cjs.entry.js +3 -3
- package/dist/cjs/co-action-bar.cjs.entry.js +3 -3
- package/dist/cjs/co-app-shell.cjs.entry.js +3 -3
- package/dist/cjs/co-audio-player.cjs.entry.js +4 -4
- package/dist/cjs/co-autocomplete.cjs.entry.js +2 -2
- package/dist/cjs/co-avatar-group.cjs.entry.js +1 -1
- package/dist/cjs/co-avatar.cjs.entry.js +7 -4
- package/dist/cjs/co-badge.cjs.entry.js +2 -2
- package/dist/cjs/co-bottom-sheet.cjs.entry.js +5 -5
- package/dist/cjs/co-breadcrumb-item.cjs.entry.js +3 -3
- package/dist/cjs/co-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/co-button-group.cjs.entry.js +3 -3
- package/dist/cjs/co-button.cjs.entry.js +9 -7
- package/dist/cjs/co-calendar-month_2.cjs.entry.js +4 -4
- package/dist/cjs/co-calendar_3.cjs.entry.js +72 -27
- package/dist/cjs/co-card.cjs.entry.js +3 -3
- package/dist/cjs/co-carousel-item.cjs.entry.js +2 -2
- package/dist/cjs/co-carousel.cjs.entry.js +3 -3
- package/dist/cjs/co-checkbox-group.cjs.entry.js +1 -1
- package/dist/cjs/co-checkbox.cjs.entry.js +13 -5
- package/dist/cjs/co-chip_2.cjs.entry.js +28 -6
- package/dist/cjs/co-color-area.cjs.entry.js +169 -0
- package/dist/cjs/co-color-picker.cjs.entry.js +5 -5
- package/dist/cjs/co-color-slider.cjs.entry.js +189 -0
- package/dist/cjs/co-column-picker.cjs.entry.js +3 -3
- package/dist/cjs/co-combobox.cjs.entry.js +5 -5
- package/dist/cjs/co-command-search.cjs.entry.js +5 -5
- package/dist/cjs/co-data-table-pagination.cjs.entry.js +5 -5
- package/dist/cjs/co-data-table.cjs.entry.js +3 -3
- package/dist/cjs/co-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/co-date-range-picker.cjs.entry.js +2 -2
- package/dist/cjs/co-date-range.cjs.entry.js +2 -2
- package/dist/cjs/co-date-time-picker.cjs.entry.js +4 -4
- package/dist/cjs/co-document-editor.cjs.entry.js +1161 -0
- package/dist/cjs/co-drive-card.cjs.entry.js +2 -2
- package/dist/cjs/co-drop-zone.cjs.entry.js +2 -2
- package/dist/cjs/co-emoji-picker.cjs.entry.js +3 -3
- package/dist/cjs/co-empty-state.cjs.entry.js +3 -3
- package/dist/cjs/co-event-calendar.cjs.entry.js +3 -3
- package/dist/cjs/co-event-popover.cjs.entry.js +3 -3
- package/dist/cjs/co-fab.cjs.entry.js +3 -3
- package/dist/cjs/co-file-field.cjs.entry.js +8 -8
- package/dist/cjs/co-file-type-tile.cjs.entry.js +3 -3
- package/dist/cjs/co-gradient-bar.cjs.entry.js +220 -0
- package/dist/cjs/co-helper-text.cjs.entry.js +3 -3
- package/dist/cjs/co-icon-button.cjs.entry.js +49 -9
- package/dist/cjs/co-icon.cjs.entry.js +3 -3
- package/dist/cjs/co-input.cjs.entry.js +14 -8
- package/dist/cjs/co-json-field.cjs.entry.js +5 -5
- package/dist/cjs/{co-tooltip.cjs.entry.js → co-kbd_2.cjs.entry.js} +194 -6
- package/dist/cjs/co-lightbox.cjs.entry.js +5 -5
- 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 +1 -1
- package/dist/cjs/co-media-thumb.cjs.entry.js +3 -3
- package/dist/cjs/co-menu-divider.cjs.entry.js +3 -3
- package/dist/cjs/co-menu-item.cjs.entry.js +41 -43
- package/dist/cjs/co-menu.cjs.entry.js +81 -5
- package/dist/cjs/co-modal.cjs.entry.js +350 -7
- 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-overlay.cjs.entry.js +8 -4
- package/dist/cjs/co-page-header.cjs.entry.js +2 -2
- package/dist/cjs/co-phone-field.cjs.entry.js +3 -3
- package/dist/cjs/co-popover.cjs.entry.js +81 -6
- package/dist/cjs/co-progress-bar.cjs.entry.js +3 -3
- package/dist/cjs/co-progress-circle.cjs.entry.js +3 -3
- package/dist/cjs/co-provider-logo_2.cjs.entry.js +2 -2
- 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 +5 -5
- package/dist/cjs/co-rich-text-editor.cjs.entry.js +26 -92
- package/dist/cjs/co-rich-text-toolbar.cjs.entry.js +79 -20
- package/dist/cjs/co-rich-text-viewer.cjs.entry.js +9 -2
- package/dist/cjs/co-row.cjs.entry.js +3 -3
- package/dist/cjs/co-segmented-bar.cjs.entry.js +3 -3
- package/dist/cjs/co-select.cjs.entry.js +158 -29
- package/dist/cjs/co-separator.cjs.entry.js +2 -2
- package/dist/cjs/co-sidebar-nav.cjs.entry.js +20 -5
- package/dist/cjs/co-sidebar.cjs.entry.js +3 -3
- package/dist/cjs/co-slider.cjs.entry.js +203 -23
- package/dist/cjs/co-swatch-grid.cjs.entry.js +121 -0
- package/dist/cjs/co-switch.cjs.entry.js +5 -5
- package/dist/cjs/co-tab-group.cjs.entry.js +113 -4
- package/dist/cjs/co-tab.cjs.entry.js +15 -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-tile.cjs.entry.js +61 -0
- package/dist/cjs/co-time-field.cjs.entry.js +2 -2
- package/dist/cjs/co-toast.cjs.entry.js +3 -3
- package/dist/cjs/co-toggle-button-group.cjs.entry.js +26 -5
- package/dist/cjs/co-toggle-button.cjs.entry.js +67 -6
- package/dist/cjs/co-transfer-list.cjs.entry.js +3 -3
- package/dist/cjs/co-tree-item.cjs.entry.js +110 -0
- package/dist/cjs/co-video.cjs.entry.js +3 -3
- package/dist/cjs/cobalt.cjs.js +2 -2
- package/dist/cjs/{color-CML2Cfdh.js → color-DQVrQGi0.js} +10 -5
- package/dist/cjs/{fieldChip-B6YIGU1V.js → fieldChip-C7MxxBVO.js} +1 -1
- package/dist/cjs/gradientStops-CMpH4fB_.js +153 -0
- package/dist/cjs/hsv-DpfSF3M2.js +95 -0
- package/dist/cjs/{index-MDAnKsze.js → index-bHoidDwv.js} +67 -27
- package/dist/cjs/index-oMHzCXm6.js +144 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{index-2kMmd5-a.js → pagination-DV43TRj9.js} +1780 -297
- package/dist/cjs/{positioning-CyatXeT_.js → positioning-CILo5esi.js} +45 -18
- package/dist/cjs/{requiredMark-D-t-IPN0.js → requiredMark-21yHvvZS.js} +1 -1
- package/dist/cjs/rich-text-host-ueFSfW-6.js +119 -0
- package/dist/cjs/{richTextI18n-B28uAhh4.js → richTextI18n-DXGIv5w1.js} +45 -0
- package/dist/cjs/submenu-RlaX6irw.js +65 -0
- package/dist/cjs/{toolbar-config-CYACt9hh.js → toolbar-config-DczL6C4W.js} +32 -0
- package/dist/cobalt/cobalt.css +1 -1
- package/dist/cobalt/cobalt.esm.js +1 -1
- package/dist/cobalt/{p-ee149fd2.entry.js → p-05000ef3.entry.js} +1 -1
- package/dist/cobalt/p-06689166.entry.js +1 -0
- package/dist/cobalt/{p-1dc55e43.entry.js → p-0a5cfed0.entry.js} +1 -1
- package/dist/cobalt/p-1289131f.entry.js +1 -0
- package/dist/cobalt/{p-c7d7d7f7.entry.js → p-136beb2c.entry.js} +1 -1
- package/dist/cobalt/{p-b437eff6.entry.js → p-1693b614.entry.js} +1 -1
- package/dist/cobalt/p-1bfb69ae.entry.js +1 -0
- package/dist/cobalt/{p-2c9dba2f.entry.js → p-1f3d5313.entry.js} +1 -1
- package/dist/cobalt/{p-b821d9de.entry.js → p-22233b31.entry.js} +1 -1
- package/dist/cobalt/{p-c30b4cb5.entry.js → p-26fa36f8.entry.js} +1 -1
- package/dist/cobalt/p-2794c500.entry.js +1 -0
- package/dist/cobalt/p-297b55cd.entry.js +1 -0
- package/dist/cobalt/{p-17244412.entry.js → p-2a2b0c7a.entry.js} +1 -1
- package/dist/cobalt/{p-2636b7eb.entry.js → p-2e5702a0.entry.js} +1 -1
- package/dist/cobalt/p-3011c84f.entry.js +1 -0
- package/dist/cobalt/{p-4d65e713.entry.js → p-30760f77.entry.js} +1 -1
- package/dist/cobalt/{p-6dd220e0.entry.js → p-3b9a8e86.entry.js} +1 -1
- package/dist/cobalt/p-4111fefa.entry.js +1 -0
- package/dist/cobalt/{p-a32b20eb.entry.js → p-44edde81.entry.js} +1 -1
- package/dist/cobalt/{p-292b0389.entry.js → p-45007758.entry.js} +1 -1
- package/dist/cobalt/p-48c23310.entry.js +1 -0
- package/dist/cobalt/p-4b327483.entry.js +1 -0
- package/dist/cobalt/p-4c6caa41.entry.js +1 -0
- package/dist/cobalt/{p-000a15b8.entry.js → p-5534a64f.entry.js} +1 -1
- package/dist/cobalt/p-5573985a.entry.js +1 -0
- package/dist/cobalt/p-57d250ad.entry.js +1 -0
- package/dist/cobalt/{p-826ee074.entry.js → p-59d3e8fc.entry.js} +1 -1
- package/dist/cobalt/{p-4592ca00.entry.js → p-5a32b9a2.entry.js} +1 -1
- package/dist/cobalt/p-5b2aa70e.entry.js +1 -0
- package/dist/cobalt/{p-d29bb0fa.entry.js → p-5d6e02dd.entry.js} +1 -1
- package/dist/cobalt/{p-623cc195.entry.js → p-608d251d.entry.js} +1 -1
- package/dist/cobalt/{p-011dc80b.entry.js → p-66fc1528.entry.js} +1 -1
- package/dist/cobalt/{p-11c5ce78.entry.js → p-67ad9544.entry.js} +1 -1
- package/dist/cobalt/{p-290066ef.entry.js → p-6c157ea2.entry.js} +1 -1
- package/dist/cobalt/{p-a2462d7a.entry.js → p-6d541199.entry.js} +1 -1
- package/dist/cobalt/{p-58d9b650.entry.js → p-7376f4ed.entry.js} +1 -1
- package/dist/cobalt/{p-39a50e7f.entry.js → p-7569375a.entry.js} +1 -1
- package/dist/cobalt/{p-7b5c555c.entry.js → p-763698b3.entry.js} +1 -1
- package/dist/cobalt/{p-f57dffca.entry.js → p-7675cebe.entry.js} +1 -1
- package/dist/cobalt/p-78a20284.entry.js +1 -0
- package/dist/cobalt/{p-aa9400bf.entry.js → p-7f3523ce.entry.js} +1 -1
- package/dist/cobalt/{p-24196410.entry.js → p-86b6fd81.entry.js} +1 -1
- package/dist/cobalt/{p-996f4e38.entry.js → p-889563d5.entry.js} +1 -1
- package/dist/cobalt/{p-eadfd661.entry.js → p-8ab5b396.entry.js} +1 -1
- package/dist/cobalt/{p-c91d4fc6.entry.js → p-8b2e4579.entry.js} +1 -1
- package/dist/cobalt/p-8cd3acaa.entry.js +1 -0
- package/dist/cobalt/{p-23ab0cc5.entry.js → p-8f701eac.entry.js} +1 -1
- package/dist/cobalt/p-90fad0f9.entry.js +1 -0
- package/dist/cobalt/{p-76249983.entry.js → p-97a4fbba.entry.js} +1 -1
- package/dist/cobalt/p-9b46a8fe.entry.js +1 -0
- package/dist/cobalt/{p-ee2023da.entry.js → p-9bee9dc8.entry.js} +1 -1
- package/dist/cobalt/{p-2f9cbbd5.entry.js → p-9cf10331.entry.js} +1 -1
- package/dist/cobalt/p-9dc01092.entry.js +1 -0
- package/dist/cobalt/p-9e406172.entry.js +1 -0
- package/dist/cobalt/p-B1JT7us1.js +1 -0
- package/dist/cobalt/{p-BRbgGqLw.js → p-BVGGRfNG.js} +1 -1
- package/dist/cobalt/p-BmdKHBZP.js +1 -0
- package/dist/cobalt/p-BtliEQAT.js +1 -0
- package/dist/cobalt/p-COJdaKBU.js +1 -0
- package/dist/cobalt/{p-BAYo-RBt.js → p-CRxTFT_z.js} +1 -1
- package/dist/cobalt/p-CYN5B3IQ.js +1 -0
- package/dist/cobalt/p-DJkaRtbb.js +2 -0
- package/dist/cobalt/p-DU-KOQ8L.js +1 -0
- package/dist/cobalt/p-DXLeDZvr.js +1 -0
- package/dist/cobalt/{p-D_zA1Pv4.js → p-DgJovDdy.js} +1 -1
- package/dist/cobalt/p-RVQJEYxa.js +1 -0
- package/dist/cobalt/{p-1861fe41.entry.js → p-a07dedd1.entry.js} +1 -1
- package/dist/cobalt/{p-08e42e00.entry.js → p-a336178b.entry.js} +1 -1
- package/dist/cobalt/{p-f9a7b7c6.entry.js → p-a52ed6ff.entry.js} +1 -1
- package/dist/cobalt/{p-aaca6dab.entry.js → p-a930cdd7.entry.js} +1 -1
- package/dist/cobalt/{p-eb82358d.entry.js → p-b1994bb4.entry.js} +1 -1
- package/dist/cobalt/p-b2b13da8.entry.js +1 -0
- package/dist/cobalt/{p-c2ebf0ec.entry.js → p-b5ec4286.entry.js} +1 -1
- package/dist/cobalt/p-b9401dd7.entry.js +1 -0
- package/dist/cobalt/p-b9dfb333.entry.js +1 -0
- package/dist/cobalt/p-bc3ba0cd.entry.js +1 -0
- package/dist/cobalt/{p-d375014b.entry.js → p-bc4fbfa6.entry.js} +1 -1
- package/dist/cobalt/{p-d0b2c418.entry.js → p-c109a1e1.entry.js} +1 -1
- package/dist/cobalt/{p-ee9a623d.entry.js → p-c1caa112.entry.js} +1 -1
- package/dist/cobalt/p-c9990662.entry.js +1 -0
- package/dist/cobalt/p-cc4b51fa.entry.js +1 -0
- package/dist/cobalt/p-cc5989e9.entry.js +1 -0
- package/dist/cobalt/{p-e4264532.entry.js → p-ce2b2048.entry.js} +1 -1
- package/dist/cobalt/p-d1c378ff.entry.js +1 -0
- package/dist/cobalt/p-d1e83525.entry.js +1 -0
- package/dist/cobalt/{p-59963937.entry.js → p-d1f47915.entry.js} +1 -1
- package/dist/cobalt/{p-28764b8e.entry.js → p-d4979025.entry.js} +1 -1
- package/dist/cobalt/p-d6e7c258.entry.js +1 -0
- package/dist/cobalt/p-d75d2f3d.entry.js +1 -0
- package/dist/cobalt/p-db42c4ab.entry.js +1 -0
- package/dist/cobalt/{p-44c4e4a3.entry.js → p-e4ff2fcb.entry.js} +1 -1
- package/dist/cobalt/p-e6116149.entry.js +1 -0
- package/dist/cobalt/{p-0c004735.entry.js → p-e99ddf9c.entry.js} +1 -1
- package/dist/cobalt/{p-1cc818ca.entry.js → p-ea24eea8.entry.js} +1 -1
- package/dist/cobalt/{p-07416e31.entry.js → p-ea564148.entry.js} +1 -1
- package/dist/cobalt/{p-8471abe2.entry.js → p-ec7a6bf2.entry.js} +1 -1
- package/dist/cobalt/{p-fb2d1144.entry.js → p-ee42dca6.entry.js} +1 -1
- package/dist/cobalt/{p-49834b8e.entry.js → p-ee88ec40.entry.js} +1 -1
- package/dist/cobalt/p-eeb114da.entry.js +1 -0
- package/dist/cobalt/{p-f6691108.entry.js → p-f0898e21.entry.js} +1 -1
- package/dist/cobalt/p-f246946a.entry.js +1 -0
- package/dist/cobalt/{p-b90d41e4.entry.js → p-f5934cd9.entry.js} +1 -1
- package/dist/cobalt/p-f5e1873d.entry.js +1 -0
- package/dist/cobalt/p-f60bd4d6.entry.js +1 -0
- package/dist/cobalt/p-f813569c.entry.js +1 -0
- package/dist/cobalt/{p-f7eb1a40.entry.js → p-f8c7941f.entry.js} +1 -1
- package/dist/cobalt/{p-44ea675f.entry.js → p-f8d3c71e.entry.js} +1 -1
- package/dist/cobalt/{p-91e73a92.entry.js → p-ffbe955a.entry.js} +1 -1
- package/dist/cobalt/p-xnrKkNWQ.js +1 -0
- package/dist/collection/collection-manifest.json +8 -0
- package/dist/collection/components/co-accordion/co-accordion.js +2 -2
- package/dist/collection/components/co-action-bar/co-action-bar.js +2 -2
- package/dist/collection/components/co-app-shell/co-app-shell.js +2 -2
- package/dist/collection/components/co-audio-player/co-audio-player.js +3 -3
- package/dist/collection/components/co-autocomplete/co-autocomplete.js +1 -1
- package/dist/collection/components/co-avatar/co-avatar.css +11 -2
- package/dist/collection/components/co-avatar/co-avatar.js +7 -4
- package/dist/collection/components/co-avatar-group/co-avatar-group.js +1 -1
- package/dist/collection/components/co-badge/co-badge.js +1 -1
- package/dist/collection/components/co-bottom-sheet/co-bottom-sheet.js +4 -4
- package/dist/collection/components/co-breadcrumb/co-breadcrumb.js +1 -1
- package/dist/collection/components/co-breadcrumb-item/co-breadcrumb-item.js +2 -2
- package/dist/collection/components/co-button/co-button.css +73 -6
- package/dist/collection/components/co-button/co-button.js +33 -11
- package/dist/collection/components/co-button-group/co-button-group.js +2 -2
- package/dist/collection/components/co-calendar/calendarMarks.js +40 -0
- package/dist/collection/components/co-calendar/co-calendar.css +11 -1
- package/dist/collection/components/co-calendar/co-calendar.js +82 -20
- package/dist/collection/components/co-calendar-month/co-calendar-month.js +1 -1
- package/dist/collection/components/co-calendar-timegrid/co-calendar-timegrid.js +2 -2
- package/dist/collection/components/co-card/co-card.js +2 -2
- package/dist/collection/components/co-carousel/co-carousel.js +2 -2
- package/dist/collection/components/co-carousel-item/co-carousel-item.js +1 -1
- package/dist/collection/components/co-checkbox/co-checkbox.css +43 -1
- package/dist/collection/components/co-checkbox/co-checkbox.js +31 -3
- package/dist/collection/components/co-checkbox-group/co-checkbox-group.js +1 -1
- package/dist/collection/components/co-chip/co-chip.js +2 -2
- package/dist/collection/components/co-color-area/co-color-area.css +83 -0
- package/dist/collection/components/co-color-area/co-color-area.js +341 -0
- package/dist/collection/components/co-color-picker/co-color-picker.js +2 -2
- package/dist/collection/components/co-color-slider/co-color-slider.css +115 -0
- package/dist/collection/components/co-color-slider/co-color-slider.js +353 -0
- package/dist/collection/components/co-column-picker/co-column-picker.js +2 -2
- package/dist/collection/components/co-combobox/co-combobox.js +4 -4
- package/dist/collection/components/co-command-search/co-command-search.js +5 -5
- package/dist/collection/components/co-data-table/co-data-table.js +3 -3
- 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.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.js +2 -2
- package/dist/collection/components/co-date-time-picker/co-date-time-picker.js +3 -3
- package/dist/collection/components/co-document-editor/change-throttle.js +30 -0
- package/dist/collection/components/co-document-editor/co-document-editor.css +438 -0
- package/dist/collection/components/co-document-editor/co-document-editor.js +1542 -0
- package/dist/collection/components/co-document-editor/document-props.js +40 -0
- package/dist/collection/components/co-document-editor/header-tools.js +11 -0
- package/dist/collection/components/co-document-editor/image-bar.js +66 -0
- package/dist/collection/components/co-document-editor/page-styles.js +90 -0
- package/dist/collection/components/co-document-editor/zoom.js +45 -0
- package/dist/collection/components/co-drive-card/co-drive-card.js +1 -1
- package/dist/collection/components/co-drop-zone/co-drop-zone.js +1 -1
- package/dist/collection/components/co-emoji-picker/co-emoji-picker.js +2 -2
- package/dist/collection/components/co-empty-state/co-empty-state.js +2 -2
- package/dist/collection/components/co-event-calendar/co-event-calendar.js +2 -2
- package/dist/collection/components/co-event-popover/co-event-popover.js +1 -1
- package/dist/collection/components/co-fab/co-fab.js +2 -2
- package/dist/collection/components/co-file-field/co-file-field.js +6 -6
- package/dist/collection/components/co-file-type-tile/co-file-type-tile.js +2 -2
- package/dist/collection/components/co-gradient-bar/co-gradient-bar.css +138 -0
- package/dist/collection/components/co-gradient-bar/co-gradient-bar.js +407 -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 +95 -19
- package/dist/collection/components/co-icon-button/co-icon-button.js +120 -10
- package/dist/collection/components/co-input/co-input.css +122 -0
- package/dist/collection/components/co-input/co-input.js +37 -11
- package/dist/collection/components/co-json-field/co-json-field.js +3 -3
- package/dist/collection/components/co-kbd/co-kbd.css +99 -0
- package/dist/collection/components/co-kbd/co-kbd.js +291 -0
- 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.js +2 -2
- package/dist/collection/components/co-menu/co-menu.css +60 -0
- package/dist/collection/components/co-menu/co-menu.js +143 -3
- package/dist/collection/components/co-menu-divider/co-menu-divider.css +17 -0
- package/dist/collection/components/co-menu-divider/co-menu-divider.js +1 -1
- package/dist/collection/components/co-menu-item/co-menu-item.css +42 -6
- package/dist/collection/components/co-menu-item/co-menu-item.js +58 -4
- package/dist/collection/components/co-modal/co-modal.css +212 -1
- package/dist/collection/components/co-modal/co-modal.js +339 -9
- package/dist/collection/components/co-navbar/co-navbar.js +2 -2
- package/dist/collection/components/co-number-field/co-number-field.js +3 -3
- package/dist/collection/components/co-option-list/co-option-list.css +64 -21
- package/dist/collection/components/co-option-list/co-option-list.js +43 -3
- package/dist/collection/components/co-overlay/co-overlay.js +7 -3
- package/dist/collection/components/co-page-header/co-page-header.js +1 -1
- package/dist/collection/components/co-phone-field/co-phone-field.js +1 -1
- package/dist/collection/components/co-popover/co-popover.css +15 -2
- package/dist/collection/components/co-popover/co-popover.js +144 -5
- 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 +4 -4
- package/dist/collection/components/co-rating/co-rating.js +3 -3
- package/dist/collection/components/co-ref-field/co-ref-field.js +5 -5
- package/dist/collection/components/co-rich-text-editor/co-rich-text-editor.js +23 -90
- package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.css +12 -0
- package/dist/collection/components/co-rich-text-toolbar/co-rich-text-toolbar.js +123 -18
- package/dist/collection/components/co-rich-text-viewer/co-rich-text-viewer.js +8 -1
- package/dist/collection/components/co-row/co-row.js +2 -2
- package/dist/collection/components/co-segmented-bar/co-segmented-bar.js +3 -3
- package/dist/collection/components/co-select/co-select.css +194 -10
- package/dist/collection/components/co-select/co-select.js +163 -32
- package/dist/collection/components/co-select/virtualRows.js +57 -0
- 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 +10 -0
- package/dist/collection/components/co-sidebar-nav/co-sidebar-nav.js +19 -4
- package/dist/collection/components/co-skeleton/co-skeleton.js +1 -1
- package/dist/collection/components/co-slider/co-slider.css +148 -5
- package/dist/collection/components/co-slider/co-slider.js +240 -21
- package/dist/collection/components/co-swatch-grid/co-swatch-grid.css +56 -0
- package/dist/collection/components/co-swatch-grid/co-swatch-grid.js +292 -0
- package/dist/collection/components/co-switch/co-switch.js +3 -3
- package/dist/collection/components/co-tab/co-tab.css +60 -0
- package/dist/collection/components/co-tab/co-tab.js +36 -6
- package/dist/collection/components/co-tab-group/co-tab-group.css +24 -0
- package/dist/collection/components/co-tab-group/co-tab-group.js +124 -2
- package/dist/collection/components/co-tab-group/revealTab.js +26 -0
- 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-tile/co-tile.css +63 -0
- package/dist/collection/components/co-tile/co-tile.js +162 -0
- package/dist/collection/components/co-time-field/co-time-field.js +1 -1
- package/dist/collection/components/co-toast/co-toast.js +4 -4
- package/dist/collection/components/co-toggle-button/co-toggle-button.css +101 -0
- package/dist/collection/components/co-toggle-button/co-toggle-button.js +80 -8
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.css +21 -0
- package/dist/collection/components/co-toggle-button-group/co-toggle-button-group.js +28 -7
- package/dist/collection/components/co-tooltip/co-tooltip.css +36 -0
- package/dist/collection/components/co-tooltip/co-tooltip.js +51 -3
- package/dist/collection/components/co-transfer-list/co-transfer-list.js +3 -3
- package/dist/collection/components/co-tree-item/co-tree-item.css +226 -0
- package/dist/collection/components/co-tree-item/co-tree-item.js +353 -0
- package/dist/collection/components/co-tree-item/treeItemI18n.js +16 -0
- package/dist/collection/components/co-video/co-video.js +2 -2
- package/dist/collection/utils/color.js +9 -5
- package/dist/collection/utils/dragMove.js +95 -0
- package/dist/collection/utils/gradientBarI18n.js +24 -0
- package/dist/collection/utils/gradientStops.js +142 -0
- package/dist/collection/utils/hsv.js +114 -0
- package/dist/collection/utils/kbdI18n.js +29 -0
- package/dist/collection/utils/positioning.js +44 -18
- package/dist/collection/utils/rich-text-host.js +109 -0
- package/dist/collection/utils/richTextI18n.js +45 -0
- package/dist/collection/utils/submenu.js +23 -3
- package/dist/collection/utils/swatchGridI18n.js +14 -0
- package/dist/collection/utils/test/fake-block-layout.js +41 -0
- package/dist/collection/utils/test/prosemirror-dom-shim.js +17 -0
- package/dist/collection/utils/test/shared-contract-css.js +9 -0
- 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-item.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.d.ts +11 -0
- package/dist/components/co-color-area.js +1 -0
- package/dist/components/co-color-picker.js +1 -1
- package/dist/components/co-color-slider.d.ts +11 -0
- package/dist/components/co-color-slider.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/co-document-editor.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/co-gradient-bar.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-kbd.d.ts +11 -0
- package/dist/components/co-kbd.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/co-swatch-grid.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/co-tile.js +1 -0
- 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.d.ts +11 -0
- package/dist/components/co-tree-item.js +1 -0
- package/dist/components/co-video.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/p-B1JT7us1.js +1 -0
- package/dist/components/{p-Nt4JJxbL.js → p-B20o5exO.js} +1 -1
- package/dist/components/{p-DNJAIVfI.js → p-B3kKOgsA.js} +1 -1
- package/dist/components/{p-P4HlMBlL.js → p-BIDSDP05.js} +1 -1
- package/dist/components/p-BOqtnWTJ.js +1 -0
- package/dist/components/p-BQltjDw5.js +1 -0
- package/dist/components/p-BR0LYW9v.js +1 -0
- package/dist/components/{p-BRbgGqLw.js → p-BVGGRfNG.js} +1 -1
- package/dist/components/p-BZDl9aFl.js +1 -0
- package/dist/components/p-BcXdId8y.js +1 -0
- package/dist/components/p-BmdKHBZP.js +1 -0
- package/dist/components/{p-NNxjElcX.js → p-BraiMwgs.js} +1 -1
- package/dist/components/p-BtliEQAT.js +1 -0
- package/dist/components/p-Bymi-A7C.js +1 -0
- package/dist/components/p-C-f8wTqe.js +1 -0
- package/dist/components/{p-BhCVadcA.js → p-C1jZYtUS.js} +1 -1
- package/dist/components/{p-CT2enQ6h.js → p-C3G8oPgU.js} +1 -1
- package/dist/components/{p-cndRd_-U.js → p-CGH3E8uK.js} +1 -1
- package/dist/components/p-COJdaKBU.js +1 -0
- package/dist/components/{p-BAYo-RBt.js → p-CRxTFT_z.js} +1 -1
- package/dist/components/{p-Du_CgT5E.js → p-CfJgypOl.js} +1 -1
- package/dist/components/{p-uxdXViMV.js → p-ChwSnCFf.js} +1 -1
- package/dist/components/{p-Dc_Kbari.js → p-CpGEV0iM.js} +1 -1
- package/dist/components/{p-DvR45CLa.js → p-D9or2g4j.js} +1 -1
- package/dist/components/{p-e5KibEs8.js → p-DJ468fPu.js} +1 -1
- package/dist/components/{p-DFlJMEJ-.js → p-DKXCr-hE.js} +1 -1
- package/dist/components/p-DU-KOQ8L.js +1 -0
- package/dist/components/p-DXLeDZvr.js +1 -0
- package/dist/components/{p-BGDqldEg.js → p-DfcPGitr.js} +1 -1
- package/dist/components/p-Dg-Ti_Bf.js +1 -0
- package/dist/components/p-Dh_eRYKu.js +1 -0
- package/dist/components/p-Dp650Gpp.js +1 -0
- package/dist/components/p-FA1kBmZ-.js +1 -0
- package/dist/components/p-RVQJEYxa.js +1 -0
- package/dist/components/p-d4rf3H8p.js +1 -0
- package/dist/components/{p-Dxa7c4Ap.js → p-dnaee7fS.js} +1 -1
- package/dist/components/p-f2xwcrXa.js +1 -0
- package/dist/esm/co-accordion.entry.js +3 -3
- package/dist/esm/co-action-bar.entry.js +3 -3
- package/dist/esm/co-app-shell.entry.js +3 -3
- package/dist/esm/co-audio-player.entry.js +4 -4
- package/dist/esm/co-autocomplete.entry.js +2 -2
- package/dist/esm/co-avatar-group.entry.js +1 -1
- package/dist/esm/co-avatar.entry.js +7 -4
- package/dist/esm/co-badge.entry.js +2 -2
- package/dist/esm/co-bottom-sheet.entry.js +5 -5
- package/dist/esm/co-breadcrumb-item.entry.js +3 -3
- package/dist/esm/co-breadcrumb.entry.js +2 -2
- package/dist/esm/co-button-group.entry.js +3 -3
- package/dist/esm/co-button.entry.js +9 -7
- package/dist/esm/co-calendar-month_2.entry.js +4 -4
- package/dist/esm/co-calendar_3.entry.js +72 -27
- package/dist/esm/co-card.entry.js +3 -3
- package/dist/esm/co-carousel-item.entry.js +2 -2
- package/dist/esm/co-carousel.entry.js +3 -3
- package/dist/esm/co-checkbox-group.entry.js +1 -1
- package/dist/esm/co-checkbox.entry.js +13 -5
- package/dist/esm/co-chip_2.entry.js +28 -6
- package/dist/esm/co-color-area.entry.js +167 -0
- package/dist/esm/co-color-picker.entry.js +5 -5
- package/dist/esm/co-color-slider.entry.js +187 -0
- package/dist/esm/co-column-picker.entry.js +3 -3
- package/dist/esm/co-combobox.entry.js +5 -5
- package/dist/esm/co-command-search.entry.js +5 -5
- package/dist/esm/co-data-table-pagination.entry.js +5 -5
- package/dist/esm/co-data-table.entry.js +3 -3
- package/dist/esm/co-date-picker.entry.js +2 -2
- package/dist/esm/co-date-range-picker.entry.js +2 -2
- package/dist/esm/co-date-range.entry.js +2 -2
- package/dist/esm/co-date-time-picker.entry.js +4 -4
- package/dist/esm/co-document-editor.entry.js +1159 -0
- package/dist/esm/co-drive-card.entry.js +2 -2
- package/dist/esm/co-drop-zone.entry.js +2 -2
- package/dist/esm/co-emoji-picker.entry.js +3 -3
- package/dist/esm/co-empty-state.entry.js +3 -3
- package/dist/esm/co-event-calendar.entry.js +3 -3
- package/dist/esm/co-event-popover.entry.js +3 -3
- package/dist/esm/co-fab.entry.js +3 -3
- package/dist/esm/co-file-field.entry.js +8 -8
- package/dist/esm/co-file-type-tile.entry.js +3 -3
- package/dist/esm/co-gradient-bar.entry.js +218 -0
- package/dist/esm/co-helper-text.entry.js +3 -3
- package/dist/esm/co-icon-button.entry.js +49 -9
- package/dist/esm/co-icon.entry.js +3 -3
- package/dist/esm/co-input.entry.js +14 -8
- package/dist/esm/co-json-field.entry.js +5 -5
- package/dist/esm/{co-tooltip.entry.js → co-kbd_2.entry.js} +194 -7
- package/dist/esm/co-lightbox.entry.js +5 -5
- 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 +1 -1
- package/dist/esm/co-media-thumb.entry.js +3 -3
- package/dist/esm/co-menu-divider.entry.js +3 -3
- package/dist/esm/co-menu-item.entry.js +39 -41
- package/dist/esm/co-menu.entry.js +81 -5
- package/dist/esm/co-modal.entry.js +350 -7
- package/dist/esm/co-navbar.entry.js +3 -3
- package/dist/esm/co-number-field.entry.js +5 -5
- package/dist/esm/co-overlay.entry.js +8 -4
- package/dist/esm/co-page-header.entry.js +2 -2
- package/dist/esm/co-phone-field.entry.js +3 -3
- package/dist/esm/co-popover.entry.js +81 -6
- package/dist/esm/co-progress-bar.entry.js +3 -3
- package/dist/esm/co-progress-circle.entry.js +3 -3
- package/dist/esm/co-provider-logo_2.entry.js +2 -2
- 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 +5 -5
- package/dist/esm/co-rich-text-editor.entry.js +26 -92
- package/dist/esm/co-rich-text-toolbar.entry.js +79 -20
- package/dist/esm/co-rich-text-viewer.entry.js +9 -2
- package/dist/esm/co-row.entry.js +3 -3
- package/dist/esm/co-segmented-bar.entry.js +3 -3
- package/dist/esm/co-select.entry.js +158 -29
- package/dist/esm/co-separator.entry.js +2 -2
- package/dist/esm/co-sidebar-nav.entry.js +20 -5
- package/dist/esm/co-sidebar.entry.js +3 -3
- package/dist/esm/co-slider.entry.js +203 -23
- package/dist/esm/co-swatch-grid.entry.js +119 -0
- package/dist/esm/co-switch.entry.js +5 -5
- package/dist/esm/co-tab-group.entry.js +113 -4
- package/dist/esm/co-tab.entry.js +15 -5
- package/dist/esm/co-tags-field.entry.js +8 -8
- package/dist/esm/co-textarea.entry.js +6 -6
- package/dist/esm/co-tile.entry.js +59 -0
- package/dist/esm/co-time-field.entry.js +2 -2
- package/dist/esm/co-toast.entry.js +3 -3
- package/dist/esm/co-toggle-button-group.entry.js +26 -5
- package/dist/esm/co-toggle-button.entry.js +67 -6
- package/dist/esm/co-transfer-list.entry.js +3 -3
- package/dist/esm/co-tree-item.entry.js +108 -0
- package/dist/esm/co-video.entry.js +3 -3
- package/dist/esm/cobalt.js +3 -3
- package/dist/esm/{color-BRbgGqLw.js → color-BVGGRfNG.js} +10 -6
- package/dist/esm/{fieldChip-uyggU8VV.js → fieldChip-B2ctp2m6.js} +1 -1
- package/dist/esm/gradientStops-DDK0y8ra.js +145 -0
- package/dist/esm/hsv-COJdaKBU.js +90 -0
- package/dist/esm/index-Cpo8HTwr.js +142 -0
- package/dist/esm/{index-DH5lfRNj.js → index-DJkaRtbb.js} +67 -28
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{index-BBIYyvq-.js → pagination-D9OfZUnY.js} +1728 -297
- package/dist/esm/{positioning-DFHRS9cJ.js → positioning-BtliEQAT.js} +45 -19
- package/dist/esm/{requiredMark-BCJUuZvC.js → requiredMark-D5C5NzOE.js} +1 -1
- package/dist/esm/rich-text-host-BmdKHBZP.js +111 -0
- package/dist/esm/{richTextI18n-BYKAgwq3.js → richTextI18n-xnrKkNWQ.js} +45 -0
- package/dist/esm/submenu-DU-KOQ8L.js +57 -0
- package/dist/esm/{toolbar-config-BAYo-RBt.js → toolbar-config-CRxTFT_z.js} +32 -0
- package/dist/types/components/co-avatar/co-avatar.d.ts +4 -2
- package/dist/types/components/co-button/co-button.d.ts +6 -4
- package/dist/types/components/co-calendar/calendarMarks.d.ts +15 -0
- package/dist/types/components/co-calendar/co-calendar.d.ts +16 -0
- package/dist/types/components/co-checkbox/co-checkbox.d.ts +7 -0
- package/dist/types/components/co-color-area/co-color-area.d.ts +64 -0
- package/dist/types/components/co-color-slider/co-color-slider.d.ts +61 -0
- package/dist/types/components/co-date-time-picker/co-date-time-picker.d.ts +1 -1
- package/dist/types/components/co-document-editor/change-throttle.d.ts +9 -0
- package/dist/types/components/co-document-editor/co-document-editor.d.ts +276 -0
- package/dist/types/components/co-document-editor/document-props.d.ts +6 -0
- package/dist/types/components/co-document-editor/header-tools.d.ts +11 -0
- package/dist/types/components/co-document-editor/image-bar.d.ts +50 -0
- package/dist/types/components/co-document-editor/page-styles.d.ts +1 -0
- package/dist/types/components/co-document-editor/zoom.d.ts +26 -0
- package/dist/types/components/co-gradient-bar/co-gradient-bar.d.ts +72 -0
- package/dist/types/components/co-icon-button/co-icon-button.d.ts +34 -2
- package/dist/types/components/co-input/co-input.d.ts +14 -5
- package/dist/types/components/co-kbd/co-kbd.d.ts +43 -0
- package/dist/types/components/co-menu/co-menu.d.ts +40 -1
- package/dist/types/components/co-menu-item/co-menu-item.d.ts +17 -0
- package/dist/types/components/co-modal/co-modal.d.ts +111 -2
- package/dist/types/components/co-option-list/co-option-list.d.ts +8 -0
- package/dist/types/components/co-option-list/optionListLogic.d.ts +3 -0
- package/dist/types/components/co-popover/co-popover.d.ts +38 -0
- package/dist/types/components/co-rich-text-editor/co-rich-text-editor.d.ts +2 -5
- package/dist/types/components/co-rich-text-toolbar/co-rich-text-toolbar.d.ts +17 -2
- package/dist/types/components/co-select/co-select.d.ts +47 -5
- package/dist/types/components/co-select/virtualRows.d.ts +44 -0
- package/dist/types/components/co-slider/co-slider.d.ts +143 -1
- package/dist/types/components/co-swatch-grid/co-swatch-grid.d.ts +37 -0
- package/dist/types/components/co-tab/co-tab.d.ts +12 -2
- package/dist/types/components/co-tab-group/co-tab-group.d.ts +37 -0
- package/dist/types/components/co-tab-group/revealTab.d.ts +29 -0
- package/dist/types/components/co-tile/co-tile.d.ts +40 -0
- package/dist/types/components/co-toggle-button/co-toggle-button.d.ts +37 -2
- package/dist/types/components/co-toggle-button-group/co-toggle-button-group.d.ts +20 -2
- package/dist/types/components/co-tooltip/co-tooltip.d.ts +12 -0
- package/dist/types/components/co-tree-item/co-tree-item.d.ts +73 -0
- package/dist/types/components/co-tree-item/treeItemI18n.d.ts +6 -0
- package/dist/types/components.d.ts +1748 -91
- package/dist/types/utils/color.d.ts +9 -1
- package/dist/types/utils/dragMove.d.ts +63 -0
- package/dist/types/utils/gradientBarI18n.d.ts +8 -0
- package/dist/types/utils/gradientStops.d.ts +63 -0
- package/dist/types/utils/hsv.d.ts +44 -0
- package/dist/types/utils/kbdI18n.d.ts +25 -0
- package/dist/types/utils/positioning.d.ts +24 -0
- package/dist/types/utils/rich-text-host.d.ts +41 -0
- package/dist/types/utils/richTextI18n.d.ts +15 -0
- package/dist/types/utils/submenu.d.ts +16 -2
- package/dist/types/utils/swatchGridI18n.d.ts +6 -0
- package/dist/types/utils/test/fake-block-layout.d.ts +7 -0
- package/dist/types/utils/test/prosemirror-dom-shim.d.ts +1 -0
- package/dist/types/utils/test/shared-contract-css.d.ts +9 -0
- package/package.json +5 -5
- package/dist/cobalt/p-0678c797.entry.js +0 -1
- package/dist/cobalt/p-216a63ee.entry.js +0 -1
- package/dist/cobalt/p-39dc4ec8.entry.js +0 -1
- package/dist/cobalt/p-3d31c575.entry.js +0 -1
- package/dist/cobalt/p-410bee4d.entry.js +0 -1
- package/dist/cobalt/p-416795f5.entry.js +0 -1
- package/dist/cobalt/p-56551580.entry.js +0 -1
- package/dist/cobalt/p-58137c9e.entry.js +0 -1
- package/dist/cobalt/p-5a3e4c81.entry.js +0 -1
- package/dist/cobalt/p-5c756787.entry.js +0 -1
- package/dist/cobalt/p-67f3b9d6.entry.js +0 -1
- package/dist/cobalt/p-6a4f3179.entry.js +0 -1
- package/dist/cobalt/p-71cbc53c.entry.js +0 -1
- package/dist/cobalt/p-72e52af7.entry.js +0 -1
- package/dist/cobalt/p-8530ad16.entry.js +0 -1
- package/dist/cobalt/p-8a74bf7d.entry.js +0 -1
- package/dist/cobalt/p-8e05b979.entry.js +0 -1
- package/dist/cobalt/p-8ebc0c12.entry.js +0 -1
- package/dist/cobalt/p-8f2199ff.entry.js +0 -1
- package/dist/cobalt/p-9246e09c.entry.js +0 -1
- package/dist/cobalt/p-99a655f6.entry.js +0 -1
- package/dist/cobalt/p-BYKAgwq3.js +0 -1
- package/dist/cobalt/p-CJW9H3Gi.js +0 -1
- package/dist/cobalt/p-DFHRS9cJ.js +0 -1
- package/dist/cobalt/p-DH5lfRNj.js +0 -2
- package/dist/cobalt/p-a1b422ca.entry.js +0 -1
- package/dist/cobalt/p-ade07307.entry.js +0 -1
- package/dist/cobalt/p-b698188c.entry.js +0 -1
- package/dist/cobalt/p-bde32f8b.entry.js +0 -1
- package/dist/cobalt/p-db805569.entry.js +0 -1
- package/dist/cobalt/p-e3aae282.entry.js +0 -1
- package/dist/cobalt/p-e49a564c.entry.js +0 -1
- package/dist/cobalt/p-ef301976.entry.js +0 -1
- package/dist/cobalt/p-f4e1c3c3.entry.js +0 -1
- package/dist/cobalt/p-fMqVDypp.js +0 -1
- package/dist/components/p-2EOI1nrz.js +0 -1
- package/dist/components/p-7TncUlLN.js +0 -1
- package/dist/components/p-B4NCaKrR.js +0 -1
- package/dist/components/p-BJh68Jqe.js +0 -1
- package/dist/components/p-BrAFTkAn.js +0 -1
- package/dist/components/p-Bsh0JMGf.js +0 -1
- package/dist/components/p-CJW9H3Gi.js +0 -1
- package/dist/components/p-CWCYYQrF.js +0 -1
- package/dist/components/p-D7Lhxz7L.js +0 -1
- package/dist/components/p-DFHRS9cJ.js +0 -1
- package/dist/components/p-DRP8D9ro.js +0 -1
- package/dist/components/p-DTPYZwaZ.js +0 -1
- package/dist/components/p-Dcg4krSX.js +0 -1
|
@@ -1,8 +1,104 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h } from './index-DJkaRtbb.js';
|
|
2
2
|
import { a as afterEventFor } from './overlayAfterClose-Ch1jfwZ2.js';
|
|
3
3
|
import { s as slotHasContent } from './slotContent-CBX_oabB.js';
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Núcleo puro de "arrastrar para mover un panel flotante" (Task D1).
|
|
7
|
+
*
|
|
8
|
+
* Solo aritmética: el desplazamiento acumulado del gesto y su acotado al
|
|
9
|
+
* viewport. Quien lo use aporta la cáscara (pointer events, escritura del
|
|
10
|
+
* estilo) — así el contrato se testea sin layout, que jsdom no calcula.
|
|
11
|
+
*
|
|
12
|
+
* El editor (Design Studio) tiene su propio gemelo de estas funciones en
|
|
13
|
+
* `lib/dragOffset.ts`: son dos paquetes sin dependencia entre sí y el núcleo
|
|
14
|
+
* son ~20 líneas; si alguna regla cambia, hay que cambiar las dos.
|
|
15
|
+
*/
|
|
16
|
+
/** Px del panel que SIEMPRE quedan dentro del viewport (un panel más chico no exige más de lo que mide). */
|
|
17
|
+
const DRAG_MIN_VISIBLE = 48;
|
|
18
|
+
/**
|
|
19
|
+
* Desplazamiento del gesto: lo ya acumulado (`base`) más lo que se movió el
|
|
20
|
+
* puntero desde que empezó. `base` existe porque el gesto siguiente arranca
|
|
21
|
+
* donde quedó el anterior.
|
|
22
|
+
*/
|
|
23
|
+
function dragOffsetOf(base, start, current) {
|
|
24
|
+
return { x: base.x + current.x - start.x, y: base.y + current.y - start.y };
|
|
25
|
+
}
|
|
26
|
+
/** Acota `value` a [min, max] con el 0 SIEMPRE dentro del rango — ver `clampDragOffset`. */
|
|
27
|
+
function clampAxis(value, min, max) {
|
|
28
|
+
const lo = Math.min(min, 0);
|
|
29
|
+
const hi = Math.max(max, 0);
|
|
30
|
+
return Math.min(Math.max(value, lo), hi);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Acota el desplazamiento para que el panel no se pierda de pantalla:
|
|
34
|
+
*
|
|
35
|
+
* - Horizontal: siempre quedan `minVisible` px del panel dentro del viewport
|
|
36
|
+
* (por cualquiera de los dos lados).
|
|
37
|
+
* - Vertical: el borde SUPERIOR nunca sube del borde del viewport (el header
|
|
38
|
+
* —la zona de agarre— queda siempre alcanzable) y por abajo rige el mismo
|
|
39
|
+
* `minVisible`.
|
|
40
|
+
*
|
|
41
|
+
* El rango incluye el 0 por construcción: un panel que ya nace fuera (más alto
|
|
42
|
+
* que el viewport) no debe SALTAR al agarrarlo; solo no se puede empeorar.
|
|
43
|
+
*
|
|
44
|
+
* `rect` es la caja del panel medida UNA vez, al empezar el gesto: medir en
|
|
45
|
+
* cada `pointermove` fuerza layout síncrono en cada frame.
|
|
46
|
+
*/
|
|
47
|
+
function clampDragOffset(offset, rect, viewport, minVisible = DRAG_MIN_VISIBLE) {
|
|
48
|
+
const visibleX = Math.min(minVisible, rect.width);
|
|
49
|
+
const visibleY = Math.min(minVisible, rect.height);
|
|
50
|
+
return {
|
|
51
|
+
x: clampAxis(offset.x, visibleX - rect.left - rect.width, viewport.width - visibleX - rect.left),
|
|
52
|
+
y: clampAxis(offset.y, -rect.top, viewport.height - visibleY - rect.top),
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Controles que NO arrastran aunque vivan en la zona de agarre: el ✕, los
|
|
57
|
+
* botones/enlaces y los campos. Lista gemela de la del editor
|
|
58
|
+
* (`apps/web/src/lib/dragOffset.ts`): las dos se mantienen en sincronía.
|
|
59
|
+
*/
|
|
60
|
+
const INTERACTIVE_SELECTOR = [
|
|
61
|
+
'button',
|
|
62
|
+
'a[href]',
|
|
63
|
+
'input',
|
|
64
|
+
'select',
|
|
65
|
+
'textarea',
|
|
66
|
+
'[role="button"]',
|
|
67
|
+
'[role="checkbox"]',
|
|
68
|
+
'[role="radio"]',
|
|
69
|
+
'[role="switch"]',
|
|
70
|
+
'[role="combobox"]',
|
|
71
|
+
'[role="option"]',
|
|
72
|
+
'[role="menuitem"]',
|
|
73
|
+
'[role="slider"]',
|
|
74
|
+
'[role="tab"]',
|
|
75
|
+
'[role="separator"]',
|
|
76
|
+
'[data-no-drag]',
|
|
77
|
+
].join(', ');
|
|
78
|
+
/**
|
|
79
|
+
* `true` si el evento nació en un control interactivo DENTRO de la zona de
|
|
80
|
+
* agarre. Recorre el `composedPath` (no `closest`) porque el origen puede venir
|
|
81
|
+
* de otro shadow root — el `<svg>` dentro del ✕, un control del consumidor
|
|
82
|
+
* proyectado en un slot.
|
|
83
|
+
*
|
|
84
|
+
* `handle` acota el recorrido: se corta al llegar al asa. Sin ese tope, un
|
|
85
|
+
* flotante montado dentro de un `<button>` o de un `[role=…]` del consumidor
|
|
86
|
+
* dejaba de arrastrar entero y sin diagnóstico (el ancestro matcheaba).
|
|
87
|
+
*/
|
|
88
|
+
function isInteractiveDragTarget(event, handle) {
|
|
89
|
+
const path = typeof event.composedPath === 'function' ? event.composedPath() : [event.target];
|
|
90
|
+
for (const node of path) {
|
|
91
|
+
if (handle && node === handle)
|
|
92
|
+
return false;
|
|
93
|
+
if (node && typeof node.matches === 'function') {
|
|
94
|
+
if (node.matches(INTERACTIVE_SELECTOR))
|
|
95
|
+
return true;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const coModalCss = () => `.co-sq-elevation{border-radius:var(--co-sq-r);corner-shape:squircle;box-shadow:var(--co-sq-shadow)}.co-sq-clip{overflow:hidden;border-radius:var(--co-sq-r);corner-shape:squircle}@supports not (corner-shape: squircle){.co-sq-elevation{box-shadow:none}.co-sq-elevation-fallback{filter:var(--co-sq-drop-shadow)}.co-sq-clip{border-radius:0;--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>");--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>");--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>");--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>");-webkit-mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat;mask:var(--co-sq-tl) top left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-tr) top right / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-bl) bottom left / var(--co-sq-r) var(--co-sq-r) no-repeat, var(--co-sq-br) bottom right / var(--co-sq-r) var(--co-sq-r) no-repeat, linear-gradient(#fff 0 0) center / 100% calc(100% - 2 * var(--co-sq-r) + 2px) no-repeat, linear-gradient(#fff 0 0) center / calc(100% - 2 * var(--co-sq-r) + 2px) 100% no-repeat}}:host{display:contents;--co-overlay-blur:8px;--co-overlay-bg:rgba(31, 28, 27, 0.35)}.co-modal__frame{display:flex;contain:layout;--co-sq-drop-shadow:drop-shadow(0 1px 2px rgba(31, 28, 27, 0.06)) drop-shadow(0 14px 34px rgba(31, 28, 27, 0.16))}.co-modal{display:flex;flex-direction:column;background:var(--co-semantic-surface-secondary);--co-modal-r:var(--co-border-radius-xl);--co-sq-r:var(--co-modal-r);--co-sq-shadow:0 1px 4px rgba(31, 28, 27, 0.06), 0 14px 68px rgba(31, 28, 27, 0.16);max-width:540px;width:90vw;max-height:80vh;font-family:var(--co-font-family-primary);transform:scale(0.96);opacity:0;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-in), opacity var(--co-motion-duration-fast) var(--co-motion-ease-in)}.co-modal--sm{max-width:400px}.co-modal--lg{max-width:680px}.co-modal--full{max-width:min(1400px, 95vw);width:95vw;height:92vh;max-height:92vh}.co-modal--full .co-modal__body{flex:1;min-height:0;padding:0;overflow:hidden}.co-modal--open{transform:scale(1);opacity:1;transition:transform var(--co-motion-duration-base) var(--co-motion-ease-out), opacity var(--co-motion-duration-base) var(--co-motion-ease-out)}.co-modal__header{display:flex;align-items:flex-start;gap:var(--co-spacing-md);padding:var(--co-spacing-xl) var(--co-spacing-xl) var(--co-spacing-md)}.co-modal__header-text{display:flex;flex-direction:column;gap:var(--co-spacing-sm);flex:1}.co-modal__heading{margin:0;font-size:var(--co-font-size-20);font-weight:700;color:var(--co-semantic-text-default);line-height:1.3}.co-modal__description{margin:0;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.5}.co-modal__close{display:flex;align-items:center;justify-content:center;padding:var(--co-spacing-xs);margin:0;border:none;background:transparent;cursor:pointer;color:var(--co-semantic-text-muted);border-radius:var(--co-border-radius-sm);flex-shrink:0;transition:background var(--co-motion-duration-fast) var(--co-motion-ease-out)}.co-modal__close:hover{background:var(--co-semantic-surface-hover)}.co-modal__body{padding:var(--co-spacing-lg) var(--co-spacing-xl);overflow-y:auto;overscroll-behavior:contain;font-size:var(--co-font-size-14);color:var(--co-semantic-text-secondary);line-height:1.6;border-top:1px solid var(--co-semantic-border-default)}.co-modal__body:empty{display:none}.co-modal__footer{display:flex;justify-content:flex-end;gap:var(--co-spacing-md);padding:var(--co-spacing-lg) var(--co-spacing-xl) var(--co-spacing-xl);border-top:1px solid var(--co-semantic-border-default);--co-button-radius:var(--co-border-radius-xs)}.co-modal__footer--empty{display:none}.co-modal--no-dividers .co-modal__footer{border-top:none}.co-modal--no-header-divider .co-modal__body{border-top:none;padding-top:0}.co-modal--xs{width:var(--co-modal-width, 369px);max-width:var(--co-modal-width, 369px)}.co-modal--panel{border-radius:var(--co-border-radius-sm);border:1px solid var(--co-semantic-border-subtle);box-shadow:var(--co-shadow-lg)}.co-modal--panel .co-modal__header{padding:16px 20px 16px 24px;align-items:center;border-bottom:1px solid var(--co-semantic-border-subtle)}.co-modal--panel .co-modal__heading{font-size:var(--co-font-size-20);font-weight:500;line-height:1.25;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--panel .co-modal__close{width:32px;height:32px;padding:0;border-radius:var(--co-border-radius-full);color:var(--co-semantic-text-default)}.co-modal--panel .co-modal__body{padding:24px;border-top:none}.co-modal--panel .co-modal__footer{padding:12px 24px;gap:12px;border-top:1px solid var(--co-semantic-border-subtle)}.co-modal__frame--standalone{position:fixed;inset:0;z-index:var(--co-modal-z-index, 1000);display:flex;align-items:center;justify-content:center;pointer-events:none}.co-modal__frame--standalone .co-modal--open{pointer-events:auto}.co-modal__frame--standalone .co-modal:not(.co-modal--open){visibility:hidden;transition:transform var(--co-motion-duration-fast) var(--co-motion-ease-in), opacity var(--co-motion-duration-fast) var(--co-motion-ease-in), visibility 0s linear var(--co-motion-duration-fast)}.co-modal--dialog{border-radius:var(--co-border-radius-lg)}.co-modal--dialog .co-modal__header{padding:var(--co-spacing-3xl) var(--co-spacing-3xl) 0;align-items:flex-start;gap:var(--co-spacing-lg)}.co-modal--dialog .co-modal__header-text{gap:var(--co-spacing-lg)}.co-modal--dialog .co-modal__heading{font-size:var(--co-font-size-22);font-weight:500;line-height:1.25;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--dialog .co-modal__description{font-size:var(--co-font-size-16);line-height:1.5;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--dialog .co-modal__close{width:32px;height:32px;padding:0;margin:-3px -6px 0 0;border-radius:var(--co-border-radius-full);color:var(--co-semantic-text-default)}.co-modal--dialog .co-modal__body{padding:var(--co-spacing-lg) var(--co-spacing-3xl) var(--co-spacing-3xl);border-top:none;font-size:var(--co-font-size-16);line-height:1.5;letter-spacing:var(--co-font-letter-spacing-body)}.co-modal--dialog.co-modal--full .co-modal__body{padding:0}.co-modal--dialog .co-modal__footer{padding:var(--co-spacing-lg) var(--co-spacing-2xl);gap:var(--co-spacing-md);border-top-color:var(--co-semantic-border-subtle);--co-button-radius:var(--co-border-radius-sm)}.co-modal--movable{translate:var(--co-modal-translate, none)}.co-modal__header--movable{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.co-modal__header--movable .co-modal__close{cursor:pointer}.co-modal__header--dragging{cursor:grabbing}`;
|
|
6
102
|
|
|
7
103
|
const CoModal = class {
|
|
8
104
|
constructor(hostRef) {
|
|
@@ -29,7 +125,8 @@ const CoModal = class {
|
|
|
29
125
|
*/
|
|
30
126
|
this.closeOnEscape = false;
|
|
31
127
|
/**
|
|
32
|
-
* Modal width:
|
|
128
|
+
* Modal width: xs (369px, vía `--co-modal-width` — Task C12, paneles
|
|
129
|
+
* anclados como "Tipografía y color"), sm (400px), md (540px), lg (680px),
|
|
33
130
|
* full (min(1400px, 95vw) × 92vh — media/document viewers).
|
|
34
131
|
*
|
|
35
132
|
* `full` also drops the body padding and lets the body grow, so a slotted
|
|
@@ -42,6 +139,59 @@ const CoModal = class {
|
|
|
42
139
|
/** Hairline between header and body. `false` lets the body run straight
|
|
43
140
|
* under the heading (Figma modals whose first row is a segmented control). */
|
|
44
141
|
this.headerDivider = true;
|
|
142
|
+
/**
|
|
143
|
+
* Visual treatment (Task C12). `default` = superficie squircle actual
|
|
144
|
+
* (radio `--co-modal-r`, sombra que sigue la silueta). `panel` = superficie
|
|
145
|
+
* plana (radio 12, borde `--co-semantic-border-subtle`, `--co-shadow-lg`),
|
|
146
|
+
* SIN máscara squircle — look de panel anclado, no de diálogo centrado.
|
|
147
|
+
*
|
|
148
|
+
* `dialog` (Task M1) = la anatomía del componente "Modal" del design system
|
|
149
|
+
* (Figma Prolibu UI Suite, nodo `1179:37247`): superficie plana radio 16
|
|
150
|
+
* (`--co-border-radius-lg`) sin borde ni sombra propios, título 22/500 y
|
|
151
|
+
* cuerpo 16/1.5 `text-secondary` sin divisor entre ambos, padding 32
|
|
152
|
+
* (`--co-spacing-3xl`), footer 16/24 con hairline `border-subtle` y botones
|
|
153
|
+
* cuadrados de radio 12. Sin máscara squircle. El ✕ (si `closable`) es el
|
|
154
|
+
* redondo de 32 del modo `panel`.
|
|
155
|
+
*/
|
|
156
|
+
this.appearance = 'default';
|
|
157
|
+
/**
|
|
158
|
+
* Control del scrim (Task C12). `none` = sin fondo oscuro y sin cierre por
|
|
159
|
+
* clic afuera — independiente de `closeOnOverlay` (que solo aplica cuando
|
|
160
|
+
* SÍ hay scrim). `co-overlay` es quien posee el único `<div>` de scrim del
|
|
161
|
+
* árbol, así que `none` implica no montar `<co-overlay>` (ver `inline`).
|
|
162
|
+
*/
|
|
163
|
+
this.backdrop = 'default';
|
|
164
|
+
/**
|
|
165
|
+
* Renderiza en `position: fixed` con su propio `--co-modal-z-index` en vez
|
|
166
|
+
* de promoverse al TOP LAYER del browser (Task C12). `co-overlay` promueve
|
|
167
|
+
* su scrim al top layer vía Popover API (`showPopover()`); el top layer
|
|
168
|
+
* SIEMPRE pinta por encima de cualquier `z-index` normal, así que un
|
|
169
|
+
* portal propio del consumidor (selector de fuente/color del editor) con
|
|
170
|
+
* z-index alto quedaría igual TAPADO detrás del modal. `inline` evita eso.
|
|
171
|
+
*
|
|
172
|
+
* `co-overlay` es también quien posee la promoción a top layer — no hay
|
|
173
|
+
* forma de pedirle "no te promuevas" sin tocar ese componente (fuera de
|
|
174
|
+
* alcance de esta task), así que, igual que `backdrop="none"`, `inline`
|
|
175
|
+
* implica no montar `<co-overlay>`: el panel pasa a posicionarse y apilarse
|
|
176
|
+
* solo (`.co-modal__frame--standalone`, ver co-modal.css).
|
|
177
|
+
*/
|
|
178
|
+
this.inline = false;
|
|
179
|
+
/**
|
|
180
|
+
* Opt-in: el modal se MUEVE arrastrando su header (Task D1). Default false →
|
|
181
|
+
* los consumidores actuales quedan byte-idénticos (ni DOM ni CSS cambian).
|
|
182
|
+
*
|
|
183
|
+
* Con `movable`, el `part="header"` entero es la zona de agarre (`cursor:
|
|
184
|
+
* grab`), salvo los controles que contenga (el ✕, y cualquier botón, enlace
|
|
185
|
+
* o campo: ver `isInteractiveDragTarget`). Soltar confirma la posición;
|
|
186
|
+
* `pointercancel` o perder el foco de la ventana la CANCELAN y dejan la
|
|
187
|
+
* anterior. La posición no se persiste: cerrar y reabrir devuelve el panel a
|
|
188
|
+
* su lugar por defecto.
|
|
189
|
+
*
|
|
190
|
+
* Se llama `movable` y no `draggable` a propósito: `draggable` es un atributo
|
|
191
|
+
* global de HTML (arrastre nativo HTML5) y una prop de React, y una prop del
|
|
192
|
+
* mismo nombre taparía `HTMLElement.draggable` con dos semánticas encimadas.
|
|
193
|
+
*/
|
|
194
|
+
this.movable = false;
|
|
45
195
|
/* `:empty` can't see across a <slot>, so slotted presence is tracked in JS */
|
|
46
196
|
this.hasFooter = false;
|
|
47
197
|
this.handleFooterSlotChange = (e) => {
|
|
@@ -54,6 +204,12 @@ const CoModal = class {
|
|
|
54
204
|
this.handleCloseClick = () => {
|
|
55
205
|
this.coClose.emit();
|
|
56
206
|
};
|
|
207
|
+
/** Freno del clic del panel: existe SOLO para que un clic adentro no llegue
|
|
208
|
+
* al `<co-overlay>`, que cierra con cualquier clic sobre su div. Sin
|
|
209
|
+
* overlay (`inline` / `backdrop="none"`) no hay nada que proteger, y el
|
|
210
|
+
* freno se tragaba los `onClick` de React del contenido proyectado (React
|
|
211
|
+
* delega en la raíz; el camino compuesto del evento cruza este div). Por
|
|
212
|
+
* eso se monta condicionado a `usesOverlay` — ver `render()`. */
|
|
57
213
|
this.stopPropagation = (e) => {
|
|
58
214
|
e.stopPropagation();
|
|
59
215
|
};
|
|
@@ -66,6 +222,84 @@ const CoModal = class {
|
|
|
66
222
|
else if (ev === 'after-close')
|
|
67
223
|
this.coAfterClose.emit();
|
|
68
224
|
};
|
|
225
|
+
// ── Arrastre por el header (Task D1) ──────────────────────────────────
|
|
226
|
+
/** Gesto en curso: pinta el cursor `grabbing` (única razón para re-render). */
|
|
227
|
+
this.dragging = false;
|
|
228
|
+
/** Desplazamiento YA confirmado. El gesto siguiente arranca desde acá. */
|
|
229
|
+
this.committedOffset = { x: 0, y: 0 };
|
|
230
|
+
/** Desplazamiento en vivo (= el confirmado mientras no hay gesto). */
|
|
231
|
+
this.liveOffset = { x: 0, y: 0 };
|
|
232
|
+
this.handleDragDown = (e) => {
|
|
233
|
+
var _a;
|
|
234
|
+
// Solo el botón primario; un segundo puntero no roba el gesto en curso.
|
|
235
|
+
if (!this.movable || this.dragging || e.button !== 0)
|
|
236
|
+
return;
|
|
237
|
+
// El ✕ (y cualquier control que el header llegue a tener) no arrastra.
|
|
238
|
+
if (isInteractiveDragTarget(e, this.headerEl))
|
|
239
|
+
return;
|
|
240
|
+
const rect = (_a = this.modalEl) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
|
241
|
+
if (!rect)
|
|
242
|
+
return;
|
|
243
|
+
// Evita seleccionar el título al arrastrar. El foco NO se toca: el header
|
|
244
|
+
// no es un control, no entra al tab-order ni cambia el aria-labelledby.
|
|
245
|
+
e.preventDefault();
|
|
246
|
+
this.dragging = true;
|
|
247
|
+
this.dragPointerId = e.pointerId;
|
|
248
|
+
this.dragStart = { x: e.clientX, y: e.clientY };
|
|
249
|
+
// Caja SIN trasladar: `getBoundingClientRect` la devuelve con el
|
|
250
|
+
// desplazamiento ya aplicado, pero el offset que se acota es absoluto
|
|
251
|
+
// desde el origen sin trasladar (`committedOffset + delta`). Mezclarlos
|
|
252
|
+
// corría el rango permitido exactamente `committedOffset` px en cada
|
|
253
|
+
// gesto nuevo, y del segundo en adelante el panel se iba de pantalla.
|
|
254
|
+
this.dragRect = {
|
|
255
|
+
left: rect.left - this.committedOffset.x,
|
|
256
|
+
top: rect.top - this.committedOffset.y,
|
|
257
|
+
width: rect.width,
|
|
258
|
+
height: rect.height,
|
|
259
|
+
};
|
|
260
|
+
this.dragViewport = { width: window.innerWidth, height: window.innerHeight };
|
|
261
|
+
this.capturePointer(e);
|
|
262
|
+
// El listener del blur vive solo mientras dura el gesto: sin `movable` (o
|
|
263
|
+
// sin arrastre en curso) el componente no engancha nada en `window`.
|
|
264
|
+
window.addEventListener('blur', this.handleWindowBlur);
|
|
265
|
+
};
|
|
266
|
+
this.handleDragMove = (e) => {
|
|
267
|
+
if (!this.isActiveDragPointer(e))
|
|
268
|
+
return;
|
|
269
|
+
if (!this.dragStart || !this.dragRect || !this.dragViewport)
|
|
270
|
+
return;
|
|
271
|
+
const raw = dragOffsetOf(this.committedOffset, this.dragStart, { x: e.clientX, y: e.clientY });
|
|
272
|
+
this.writeOffset(clampDragOffset(raw, this.dragRect, this.dragViewport));
|
|
273
|
+
};
|
|
274
|
+
/** Soltar CONFIRMA la posición alcanzada. */
|
|
275
|
+
this.handleDragUp = (e) => {
|
|
276
|
+
if (!this.isActiveDragPointer(e))
|
|
277
|
+
return;
|
|
278
|
+
this.committedOffset = this.liveOffset;
|
|
279
|
+
this.releasePointer(e);
|
|
280
|
+
this.endDrag();
|
|
281
|
+
};
|
|
282
|
+
/** `pointercancel` CANCELA: el panel vuelve a la última posición confirmada. */
|
|
283
|
+
this.handleDragCancel = (e) => {
|
|
284
|
+
if (!this.isActiveDragPointer(e))
|
|
285
|
+
return;
|
|
286
|
+
this.releasePointer(e);
|
|
287
|
+
this.writeOffset(this.committedOffset);
|
|
288
|
+
this.endDrag();
|
|
289
|
+
};
|
|
290
|
+
/** Perder el foco de la ventana (alt-tab, un iframe que se lo lleva) cancela igual que `pointercancel`. */
|
|
291
|
+
this.handleWindowBlur = () => {
|
|
292
|
+
if (!this.dragging)
|
|
293
|
+
return;
|
|
294
|
+
this.writeOffset(this.committedOffset);
|
|
295
|
+
this.endDrag();
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
/** Verdadero cuando NO corresponde montar `<co-overlay>` — ver doc de
|
|
299
|
+
* `backdrop` e `inline` arriba: ambas comparten el mismo mecanismo porque
|
|
300
|
+
* co-overlay es la única superficie dueña del scrim Y del top layer. */
|
|
301
|
+
get usesOverlay() {
|
|
302
|
+
return this.backdrop !== 'none' && !this.inline;
|
|
69
303
|
}
|
|
70
304
|
handleKeydown(e) {
|
|
71
305
|
if (!this.open || !this.closeOnEscape)
|
|
@@ -73,19 +307,128 @@ const CoModal = class {
|
|
|
73
307
|
if (e.key === 'Escape')
|
|
74
308
|
this.coClose.emit();
|
|
75
309
|
}
|
|
310
|
+
/**
|
|
311
|
+
* La posición no se persiste: cada APERTURA arranca desde la posición por
|
|
312
|
+
* defecto. El reset va al abrir y no al cerrar a propósito — reseteando al
|
|
313
|
+
* cerrar, el panel se teletransportaba al centro mientras corría su
|
|
314
|
+
* animación de salida (un consumidor que lo deja montado y solo apaga
|
|
315
|
+
* `open` lo veía saltar).
|
|
316
|
+
*/
|
|
317
|
+
resetPositionOnOpen(open) {
|
|
318
|
+
this.endDrag();
|
|
319
|
+
if (!open)
|
|
320
|
+
return;
|
|
321
|
+
this.committedOffset = { x: 0, y: 0 };
|
|
322
|
+
this.writeOffset({ x: 0, y: 0 });
|
|
323
|
+
}
|
|
324
|
+
disconnectedCallback() {
|
|
325
|
+
// Desmontarse en pleno gesto no debe dejar el listener colgado.
|
|
326
|
+
window.removeEventListener('blur', this.handleWindowBlur);
|
|
327
|
+
}
|
|
328
|
+
endDrag() {
|
|
329
|
+
window.removeEventListener('blur', this.handleWindowBlur);
|
|
330
|
+
this.dragging = false;
|
|
331
|
+
this.dragPointerId = undefined;
|
|
332
|
+
this.dragStart = undefined;
|
|
333
|
+
this.dragRect = undefined;
|
|
334
|
+
this.dragViewport = undefined;
|
|
335
|
+
}
|
|
336
|
+
/** `==`: en jsdom los MouseEvent traen `pointerId` undefined y deben seguir pasando. */
|
|
337
|
+
isActiveDragPointer(e) {
|
|
338
|
+
// eslint-disable-next-line eqeqeq
|
|
339
|
+
return this.dragging && e.pointerId == this.dragPointerId;
|
|
340
|
+
}
|
|
341
|
+
/** `setPointerCapture` sigue el gesto fuera del header (y garantiza el `pointercancel`). */
|
|
342
|
+
capturePointer(e) {
|
|
343
|
+
const el = this.headerEl;
|
|
344
|
+
if (!el || typeof el.setPointerCapture !== 'function' || e.pointerId == null)
|
|
345
|
+
return;
|
|
346
|
+
try {
|
|
347
|
+
el.setPointerCapture(e.pointerId);
|
|
348
|
+
}
|
|
349
|
+
catch (_a) {
|
|
350
|
+
/* pointerId inactivo (evento sintético): sin captura, el gesto vive dentro del header */
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
releasePointer(e) {
|
|
354
|
+
const el = this.headerEl;
|
|
355
|
+
if (!el || typeof el.releasePointerCapture !== 'function' || e.pointerId == null)
|
|
356
|
+
return;
|
|
357
|
+
try {
|
|
358
|
+
el.releasePointerCapture(e.pointerId);
|
|
359
|
+
}
|
|
360
|
+
catch (_a) {
|
|
361
|
+
/* ya liberado */
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
/**
|
|
365
|
+
* Escribe el desplazamiento como custom property en el panel; la regla que la
|
|
366
|
+
* consume vive en `.co-modal--movable` (co-modal.css).
|
|
367
|
+
*
|
|
368
|
+
* Va por el DOM y no por el `style` del vdom a propósito: el `transform` del
|
|
369
|
+
* panel es la animación de apertura (`scale`), así que el desplazamiento usa
|
|
370
|
+
* la propiedad independiente `translate` — se compone con ese transform, no
|
|
371
|
+
* dispara layout, y al no declararla el vdom ningún re-render la pisa.
|
|
372
|
+
*/
|
|
373
|
+
writeOffset(offset) {
|
|
374
|
+
this.liveOffset = offset;
|
|
375
|
+
const el = this.modalEl;
|
|
376
|
+
if (!el)
|
|
377
|
+
return;
|
|
378
|
+
if (offset.x === 0 && offset.y === 0)
|
|
379
|
+
el.style.removeProperty('--co-modal-translate');
|
|
380
|
+
else
|
|
381
|
+
el.style.setProperty('--co-modal-translate', `${offset.x}px ${offset.y}px`);
|
|
382
|
+
}
|
|
76
383
|
render() {
|
|
77
|
-
|
|
384
|
+
// `panel` (Task C12) y `dialog` (Task M1) no usan la receta squircle:
|
|
385
|
+
// superficies planas con radio/borde/sombra propios declarados en
|
|
386
|
+
// co-modal.css. (Las dos comparaciones van literales: el guard
|
|
387
|
+
// squircle-surface-guard.test.ts las busca por texto.)
|
|
388
|
+
const squircle = this.appearance !== 'panel' && this.appearance !== 'dialog';
|
|
389
|
+
const flat = !squircle;
|
|
390
|
+
const closeIconSize = flat ? 18 : 20;
|
|
391
|
+
// Receta squircle: global/squircle-surface.css. El frame lleva el
|
|
392
|
+
// drop-shadow SOLO en el fallback (.co-sq-elevation-fallback); el panel
|
|
393
|
+
// lleva recorte + box-shadow (Chromium) y conserva la animación de
|
|
394
|
+
// open/close + onTransitionEnd sin cambios.
|
|
395
|
+
const frame = (h("div", { class: {
|
|
396
|
+
'co-modal__frame': true,
|
|
397
|
+
'co-sq-elevation-fallback': squircle,
|
|
398
|
+
// Ver doc de `backdrop`/`inline` en los @Prop: sin <co-overlay> el
|
|
399
|
+
// frame se posiciona y apila solo (position:fixed + z-index).
|
|
400
|
+
'co-modal__frame--standalone': !this.usesOverlay,
|
|
401
|
+
} }, h("div", { class: {
|
|
78
402
|
'co-modal': true,
|
|
79
|
-
'co-sq-clip':
|
|
80
|
-
'co-sq-elevation':
|
|
403
|
+
'co-sq-clip': squircle,
|
|
404
|
+
'co-sq-elevation': squircle,
|
|
81
405
|
'co-modal--open': this.open,
|
|
406
|
+
'co-modal--xs': this.size === 'xs',
|
|
82
407
|
'co-modal--sm': this.size === 'sm',
|
|
83
408
|
'co-modal--lg': this.size === 'lg',
|
|
84
409
|
'co-modal--full': this.size === 'full',
|
|
85
410
|
'co-modal--no-dividers': this.noDividers,
|
|
86
411
|
'co-modal--no-header-divider': !this.headerDivider,
|
|
87
|
-
|
|
412
|
+
'co-modal--panel': this.appearance === 'panel',
|
|
413
|
+
'co-modal--dialog': this.appearance === 'dialog',
|
|
414
|
+
'co-modal--movable': this.movable,
|
|
415
|
+
}, part: "modal", ref: (el) => (this.modalEl = el), role: "dialog", "aria-modal": "true", "aria-labelledby": this.heading ? 'modal-heading' : undefined,
|
|
416
|
+
// Sin <co-overlay> el clic sigue su curso (los onClick delegados del
|
|
417
|
+
// consumidor lo necesitan); con overlay, el freno de siempre.
|
|
418
|
+
onClick: this.usesOverlay ? this.stopPropagation : undefined, onTransitionEnd: this.handleTransitionEnd }, h("div", { class: {
|
|
419
|
+
'co-modal__header': true,
|
|
420
|
+
'co-modal__header--movable': this.movable,
|
|
421
|
+
'co-modal__header--dragging': this.dragging,
|
|
422
|
+
}, 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 }, h("slot", { name: "header-leading" }), h("div", { class: "co-modal__header-text", part: "header-text" }, h("h2", { class: "co-modal__heading", part: "heading", id: "modal-heading" }, this.heading), this.description && (h("p", { class: "co-modal__description", part: "description" }, this.description))), h("slot", { name: "header-actions" }), this.closable && (h("button", { class: "co-modal__close", type: "button", "aria-label": "Close", onClick: this.handleCloseClick }, h("co-icon", { name: "x", size: closeIconSize })))), !this.noDividers && (h("div", { class: "co-modal__body", part: "body" }, h("slot", null))), h("div", { class: { 'co-modal__footer': true, 'co-modal__footer--empty': !this.hasFooter }, part: "footer" }, h("slot", { name: "footer", onSlotchange: this.handleFooterSlotChange })))));
|
|
423
|
+
if (!this.usesOverlay)
|
|
424
|
+
return frame;
|
|
425
|
+
return (h("co-overlay", { open: this.open, onCoClose: this.handleOverlayClick }, frame));
|
|
88
426
|
}
|
|
427
|
+
static get watchers() { return {
|
|
428
|
+
"open": [{
|
|
429
|
+
"resetPositionOnOpen": 0
|
|
430
|
+
}]
|
|
431
|
+
}; }
|
|
89
432
|
};
|
|
90
433
|
CoModal.style = coModalCss();
|
|
91
434
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, h } from './index-
|
|
1
|
+
import { r as registerInstance, h } from './index-DJkaRtbb.js';
|
|
2
2
|
|
|
3
3
|
const coNavbarCss = () => `:host{display:block}.co-navbar{display:flex;align-items:center;justify-content:space-between;width:100%;font-family:var(--co-font-family-primary);box-sizing:border-box;background:var(--co-navbar-bg);color:var(--co-navbar-color)}.co-navbar--default{--co-navbar-bg:transparent}.co-navbar--filled{--co-navbar-bg:var(--co-semantic-surface-primary, #1f1c1b);--co-navbar-color:var(--co-semantic-on-primary, #fff)}.co-navbar--bordered{--co-navbar-bg:var(--co-semantic-surface-page, #fff);--co-navbar-color:inherit;border-bottom:1px solid var(--co-semantic-border-subtle, rgba(31,28,27,0.08))}.co-navbar--dark{--co-navbar-bg:var(--co-theme-navbar-bg, var(--co-color-base-negro, #1F1C1B));--co-navbar-color:var(--co-theme-on-navbar, #fff);--co-icon-button-bg:var(--co-theme-on-navbar-surface, var(--co-color-opacity-blanco-16, rgba(255,255,255,0.16)));--co-icon-button-color:var(--co-theme-on-navbar, #fff);--co-icon-button-border:transparent}.co-navbar--rounded{border-radius:var(--co-border-radius-sm, 12px);overflow:hidden}.co-navbar--sm{min-height:40px;padding:0 var(--co-navbar-padding-x, var(--co-spacing-md, 12px));gap:var(--co-spacing-sm2, 8px);font-size:var(--co-font-size-12, 12px)}.co-navbar--md{min-height:48px;padding:0 var(--co-navbar-padding-x, var(--co-spacing-lg, 16px));gap:var(--co-spacing-md, 12px);font-size:var(--co-font-size-14, 14px)}.co-navbar--lg{min-height:56px;padding:0 var(--co-navbar-padding-x-end, var(--co-spacing-2xl, 24px)) 0 var(--co-navbar-padding-x-start, var(--co-spacing-md, 12px));gap:var(--co-spacing-sm2, 8px);font-size:var(--co-font-size-14, 14px)}::slotted([slot-spacer]),::slotted(.co-spacer){flex:1}`;
|
|
4
4
|
|
|
@@ -13,12 +13,12 @@ const CoNavbar = class {
|
|
|
13
13
|
this.rounded = false;
|
|
14
14
|
}
|
|
15
15
|
render() {
|
|
16
|
-
return (h("div", { key: '
|
|
16
|
+
return (h("div", { key: 'd313d8d23b4b4f2d0250fedf8762bdda47464fe2', class: {
|
|
17
17
|
'co-navbar': true,
|
|
18
18
|
[`co-navbar--${this.variant}`]: true,
|
|
19
19
|
[`co-navbar--${this.size}`]: true,
|
|
20
20
|
'co-navbar--rounded': this.rounded,
|
|
21
|
-
}, part: "navbar", role: "toolbar" }, h("slot", { key: '
|
|
21
|
+
}, part: "navbar", role: "toolbar" }, h("slot", { key: '737e1bfc2c3254fed53e590cba18932dc1d04f5d' })));
|
|
22
22
|
}
|
|
23
23
|
};
|
|
24
24
|
CoNavbar.style = coNavbarCss();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-
|
|
2
|
-
import { R as RequiredMark } from './requiredMark-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-DJkaRtbb.js';
|
|
2
|
+
import { R as RequiredMark } from './requiredMark-D5C5NzOE.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* Texto de montos para co-number-field `format="amount"`.
|
|
@@ -424,18 +424,18 @@ const CoNumberField = class {
|
|
|
424
424
|
return this.scaled && !this.isEmpty ? '%' : null;
|
|
425
425
|
}
|
|
426
426
|
render() {
|
|
427
|
-
return (h("div", { key: '
|
|
427
|
+
return (h("div", { key: 'cfe8c799eba592d7eab1bf8fc7dfc3a143123206', class: {
|
|
428
428
|
'co-number-field': true,
|
|
429
429
|
'co-number-field--disabled': this.disabled,
|
|
430
430
|
'co-number-field--focused': this.focused,
|
|
431
431
|
[`co-number-field--${this.size}`]: true,
|
|
432
432
|
[`co-number-field--${this.status}`]: this.status !== 'default',
|
|
433
|
-
} }, (this.label || this.secondaryLabel) && (h("div", { key: '
|
|
433
|
+
} }, (this.label || this.secondaryLabel) && (h("div", { key: 'b15f9ddc1de6c026d92ee4776dc9209359d9a33b', class: "co-number-field__labels" }, this.label && h("label", { key: '449cb18609fa0aafe53cfd8eea7f2ea30e1b822c', class: "co-number-field__label" }, this.label, h(RequiredMark, { key: '87e3da885243de08bce2e63c6d94eaf0b5ec374c', required: this.required })), this.secondaryLabel && h("span", { key: 'eccc1dba84e28783d2c15f442ec7713e24b0a4e2', class: "co-number-field__secondary-label" }, this.secondaryLabel))), h("div", { key: '6afdf37dd4e52fe7ec168bea6cb84a15f7f67414', class: "co-number-field__row", part: "row" }, !this.hideControls && (h("button", { key: 'b858fc8ae0c6cfcf4e4ee7c30e11d967a0aa2e0e', class: "co-number-field__btn co-number-field__btn--minus", type: "button", tabIndex: -1, disabled: !this.canDecrement, onClick: this.handleDecrement, "aria-label": "Decrease" }, h("co-icon", { key: '37e7b6b9ddeb72ed33f9131ee010149e64cdf509', name: "minus", size: 16 }))), h("input", { key: 'a9656744984f93fe8955fb46afd28735a31b439a', ref: el => (this.inputEl = el), class: "co-number-field__input", type: "text", inputMode: "decimal",
|
|
434
434
|
// Mismo guard `focused` que el @Watch: mientras el usuario edita, su
|
|
435
435
|
// texto manda. Sin esto, el re-render que dispara emitValue repinta
|
|
436
436
|
// el input desde el NÚMERO y se come el texto en construcción
|
|
437
437
|
// ("34,640.00" pegado quedaba "34,640"; un "12." perdería el punto).
|
|
438
|
-
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 && (h("span", { key: '
|
|
438
|
+
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 && (h("span", { key: 'a2a7a46bc8e2ad04a4577d0ab32444deab4f4948', class: "co-number-field__affix", "aria-hidden": "true" }, this.affixText)), this.clearable && !this.isEmpty && !this.disabled && (h("button", { key: '4123b22bb2412768a68daaedf02585209f605998', class: "co-number-field__clear", type: "button", tabIndex: -1, onClick: this.handleClear, "aria-label": "Clear" }, h("co-icon", { key: '103adae6937baaa8b9ce6abb8c5b4a262b18a237', name: "x-circle", size: 16, weight: "fill" }))), h("slot", { key: 'e55d3dc0bbe1fc1cb4a46356c6851f508d04e73b', name: "suffix" }), !this.hideControls && (h("button", { key: '37c01ae815d19c01dfb977175cea070486964670', class: "co-number-field__btn co-number-field__btn--plus", type: "button", tabIndex: -1, disabled: !this.canIncrement, onClick: this.handleIncrement, "aria-label": "Increase" }, h("co-icon", { key: '02d8b9b44d3a3193d8036e7ce46be922bc1304e3', name: "plus", size: 16 })))), this.helperText && (h("div", { key: '2f72a4dcdfb96e186534c7ada315dad9dbd8b874', class: `co-number-field__helper co-number-field__helper--${this.status}` }, this.statusIcon && h("co-icon", { key: 'a7ad565fedf3799847b884f187ec8c9992ce4c0a', name: this.statusIcon, size: 14, weight: "fill", class: "co-number-field__helper-icon" }), h("span", { key: '122017cba05350b34dfbf2f9f6f7d14c41550904', class: "co-number-field__helper-text" }, this.helperText)))));
|
|
439
439
|
}
|
|
440
440
|
get el() { return getElement(this); }
|
|
441
441
|
static get watchers() { return {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-DJkaRtbb.js';
|
|
2
2
|
import { a as afterEventFor } from './overlayAfterClose-Ch1jfwZ2.js';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -125,7 +125,9 @@ const CoOverlay = class {
|
|
|
125
125
|
/** Whether THIS instance currently holds a scroll lock (prevents double-count). */
|
|
126
126
|
this.hasLock = false;
|
|
127
127
|
// Origen de la pulsación en curso (ver isBackdropDismiss): un drag que
|
|
128
|
-
// empieza dentro del contenido y suelta en el fondo NO es un cierre
|
|
128
|
+
// empieza dentro del contenido y suelta en el fondo NO es un cierre —el
|
|
129
|
+
// navegador despacha ese `click` al ancestro común, el propio scrim—, ni
|
|
130
|
+
// uno que empieza en el fondo y suelta en el contenido (Tarea QA 94).
|
|
129
131
|
this.pressDownTarget = null;
|
|
130
132
|
this.pressUpTarget = null;
|
|
131
133
|
this.handlePointerDown = (e) => {
|
|
@@ -137,9 +139,11 @@ const CoOverlay = class {
|
|
|
137
139
|
var _a;
|
|
138
140
|
this.pressUpTarget = (_a = e.composedPath()[0]) !== null && _a !== void 0 ? _a : null;
|
|
139
141
|
};
|
|
142
|
+
// Sólo cierra una pulsación completa sobre el scrim mismo, no sobre el contenido.
|
|
140
143
|
this.handleClick = (e) => {
|
|
141
144
|
var _a;
|
|
142
|
-
const
|
|
145
|
+
const clickTarget = (_a = e.composedPath()[0]) !== null && _a !== void 0 ? _a : null;
|
|
146
|
+
const dismiss = clickTarget === this.overlayEl && isBackdropDismiss(this.pressDownTarget, this.pressUpTarget, clickTarget);
|
|
143
147
|
this.pressDownTarget = null;
|
|
144
148
|
this.pressUpTarget = null;
|
|
145
149
|
if (dismiss)
|
|
@@ -280,7 +284,7 @@ const CoOverlay = class {
|
|
|
280
284
|
focusables[nextIndex].focus();
|
|
281
285
|
}
|
|
282
286
|
render() {
|
|
283
|
-
return (h("div", { key: '
|
|
287
|
+
return (h("div", { key: '842f23e0829dcb9138f3fd35c86471035949517c', 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 }, h("slot", { key: '645b336ce50938672fc09a27a15ef314250beaf2' })));
|
|
284
288
|
}
|
|
285
289
|
get el() { return getElement(this); }
|
|
286
290
|
static get watchers() { return {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as registerInstance, h } from './index-
|
|
1
|
+
import { r as registerInstance, h } from './index-DJkaRtbb.js';
|
|
2
2
|
|
|
3
3
|
const coPageHeaderCss = () => `:host{display:block}.co-page-header{display:flex;align-items:center;justify-content:space-between;padding:var(--co-spacing-lg) var(--co-spacing-xl);font-family:var(--co-font-family-primary);border-bottom:1px solid var(--co-semantic-border-subtle);background:var(--co-semantic-surface-page);min-height:72px;box-sizing:border-box}.co-page-header__left{display:flex;align-items:center;gap:var(--co-spacing-md)}.co-page-header__icon{display:flex;color:var(--co-semantic-text-muted)}.co-page-header__title{font-size:var(--co-font-size-18);font-weight:600;color:var(--co-semantic-text-default)}.co-page-header__actions{display:flex;align-items:center;gap:var(--co-spacing-md)}.co-page-header__actions:empty{display:none}`;
|
|
4
4
|
|
|
@@ -7,7 +7,7 @@ const CoPageHeader = class {
|
|
|
7
7
|
registerInstance(this, hostRef);
|
|
8
8
|
}
|
|
9
9
|
render() {
|
|
10
|
-
return (h("div", { key: '
|
|
10
|
+
return (h("div", { key: 'e3a67a921d1a5c5ac8a91d1bbf76efc5d1dc6e54', class: "co-page-header", part: "page-header" }, h("div", { key: 'c1487cedf194477595bb176c381d5e839a70571e', class: "co-page-header__left" }, this.icon && (h("span", { key: 'd07f12f586c1e42fb85a06c8a7cc634778a939e5', class: "co-page-header__icon" }, h("co-icon", { key: '0224fac27acc073beccd0d59b39e3714732b3fcc', name: this.icon, size: 24 }))), h("span", { key: 'c19700b850224b46a175c4a5fb082a7898842c7e', class: "co-page-header__title" }, h("slot", { key: '3e7426edb3999085f9791ed7fb9fb74b82e4227e' }, this.heading))), h("div", { key: 'ca4dd0bd5c5d553eb6adb80cc3d2093ea9dd4d2b', class: "co-page-header__actions" }, h("slot", { key: '3f108386752ebd1a740ab97c5f7fc8535a55f853', name: "actions" }))));
|
|
11
11
|
}
|
|
12
12
|
};
|
|
13
13
|
CoPageHeader.style = coPageHeaderCss();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-
|
|
2
|
-
import { R as RequiredMark } from './requiredMark-
|
|
1
|
+
import { r as registerInstance, c as createEvent, h, a as getElement } from './index-DJkaRtbb.js';
|
|
2
|
+
import { R as RequiredMark } from './requiredMark-D5C5NzOE.js';
|
|
3
3
|
import { r as rankByMatch, h as highlightSegments } from './normalizeText-Ba_v-MzM.js';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -359,7 +359,7 @@ const CoPhoneField = class {
|
|
|
359
359
|
render() {
|
|
360
360
|
const entry = this.selectedEntry;
|
|
361
361
|
const statusClass = this.status !== 'default' ? `co-phone-field--${this.status}` : '';
|
|
362
|
-
return (h("div", { key: '
|
|
362
|
+
return (h("div", { key: '46c764eaa95e5948b860341cd1a1a1468bc26920', class: `co-phone-field co-phone-field--${this.size} ${statusClass} ${this.disabled ? 'co-phone-field--disabled' : ''}` }, this.label && (h("label", { key: '25b5a320625765b5ce9ebca165c165b6b7423a0a', class: "co-phone-field__label" }, this.label, h(RequiredMark, { key: 'b04b160b13504030159a51cb6bc8e2c258dab0a8', required: this.required }))), h("div", { key: '3bbe98a398007123d7ad405f16e0c5093829999e', class: "co-phone-field__container" }, h("button", { key: '58b43e162f7966cd11ac5c3b4ece75612769863b', type: "button", class: "co-phone-field__selector", disabled: this.disabled, onClick: () => this.handleToggleDropdown(), "aria-expanded": String(this.isOpen), "aria-haspopup": "listbox" }, entry ? (h("img", { class: "co-phone-field__flag", src: `https://flagcdn.com/w40/${entry.iso2.toLowerCase()}.png`, alt: entry.iso2 })) : (h("co-icon", { name: "phone", size: 16 })), h("span", { key: '78b26caa474d9f3df6f0f39bcb3c731761354786', class: "co-phone-field__dial-code" }, entry ? entry.dialCode : ''), h("span", { key: 'd2753d9b70c19ce15b525e2bb6ed02d61aa15045', class: "co-phone-field__chevron" }, h("co-icon", { key: 'd94cffbcf3d0348c11a69cc3c7554dbe11d001b2', name: "caret-down", size: 14 }))), h("input", { key: 'ee111f5cb76785ebcbae917f9cd00d08e00d62c1', class: "co-phone-field__input", type: "tel", placeholder: this.placeholder, value: this.numberPart, disabled: this.disabled, onInput: (e) => this.handleNumberInput(e) })), this.isOpen && (h("div", { key: '9d86bccfa1643b1e6703b300a74587bed334cbc2', class: "co-phone-field__dropdown", role: "listbox" }, h("div", { key: '8dfeb48d11dc7d70e3acc499ad1390805aa7889d', class: "co-phone-field__search" }, h("input", { key: '1e673f71acfea7a50915dfa7a0e9e5d67a6e76cf', class: "co-phone-field__search-input", type: "text", placeholder: "Search country...", value: this.searchQuery, onInput: (e) => this.handleSearchInput(e), autoFocus: true })), h("div", { key: 'e28014f19f7002049657884b4d5ff0caf81eb3d8', class: "co-phone-field__options" }, this.filteredCountries.map((d) => (h("button", { type: "button", key: d.iso2, class: `co-phone-field__option ${d.iso2 === this.selectedIso2 ? 'co-phone-field__option--selected' : ''}`, role: "option", "aria-selected": d.iso2 === this.selectedIso2 ? 'true' : 'false', onClick: () => this.handleCountrySelect(d) }, h("img", { class: "co-phone-field__option-flag", src: `https://flagcdn.com/w40/${d.iso2.toLowerCase()}.png`, alt: d.iso2 }), h("span", { class: "co-phone-field__option-name" }, this.renderName(d.name)), h("span", { class: "co-phone-field__option-code" }, d.dialCode))))))), this.helperText && (h("div", { key: '2033c1184dbb72d5705d9e0ba392d77bc9629f4c', class: "co-phone-field__helper" }, this.statusIcon && (h("co-icon", { key: 'b3204decf888ec35cc0bf3f044ea5a8037fa8a53', name: this.statusIcon, size: 14, weight: "fill", class: "co-phone-field__helper-icon" })), h("span", { key: '697323bd25dbd70a4dc9872d1678d80e6c7bdeff', class: "co-phone-field__helper-text" }, this.helperText)))));
|
|
363
363
|
}
|
|
364
364
|
get host() { return getElement(this); }
|
|
365
365
|
static get watchers() { return {
|