@heartlandone/vega 2.84.0 → 2.85.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/dist/cjs/{app-globals-ea063074.js → app-globals-54327b0a.js} +1 -1
- package/dist/cjs/{child-nodes-event-prevent-slimmer-58bbc5fc.js → child-nodes-event-prevent-slimmer-f3979a03.js} +1 -1
- package/dist/cjs/{event-emit-slimmer-ecca412d.js → event-emit-slimmer-80e1c8ca.js} +1 -1
- package/dist/cjs/{image-annotation-action-a6e1e9ed.js → image-annotation-action-025389a7.js} +1 -1
- package/dist/cjs/{immutable-map-edf24b54.js → immutable-map-d711339d.js} +16 -4
- package/dist/cjs/index.cjs.js +4 -4
- package/dist/cjs/{internal-vega-event-manager-6b74b3af.js → internal-vega-event-manager-7e0d966d.js} +2 -1
- package/dist/cjs/loader.cjs.js +5 -5
- package/dist/cjs/{token-extension-39f2b886.js → token-extension-4f6ed976.js} +263 -218
- package/dist/cjs/vega-accordion.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +4 -4
- package/dist/cjs/vega-banner.cjs.entry.js +3 -3
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-circle.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
- package/dist/cjs/vega-button.cjs.entry.js +4 -4
- package/dist/cjs/vega-calendar_4.cjs.entry.js +4 -4
- package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-chip.cjs.entry.js +4 -4
- package/dist/cjs/vega-code-block.cjs.entry.js +4 -4
- package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
- package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +188 -46
- package/dist/cjs/vega-color-swatch.cjs.entry.js +7 -7
- package/dist/cjs/vega-combo-box.cjs.entry.js +4 -4
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-dialog_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +4 -4
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{vega-event-id-c08ce3d3.js → vega-event-id-d9994eb3.js} +2 -0
- package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
- package/dist/cjs/vega-file-uploader.cjs.entry.js +3 -3
- package/dist/cjs/vega-form.cjs.entry.js +5 -5
- package/dist/cjs/vega-image-uploader.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-numeric.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-passcode.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-range.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-select.cjs.entry.js +4 -4
- package/dist/cjs/vega-input.cjs.entry.js +3 -3
- package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +3 -3
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
- package/dist/cjs/vega-popover_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-radio_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +2 -2
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +5 -5
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +3 -3
- package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +3 -3
- package/dist/cjs/vega-signature-capture.cjs.entry.js +3 -3
- package/dist/cjs/vega-stepper.cjs.entry.js +4 -4
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-table_11.cjs.entry.js +1172 -282
- package/dist/cjs/vega-textarea.cjs.entry.js +4 -4
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
- package/dist/cjs/vega.cjs.js +5 -5
- package/dist/collection/components/vega-color-swatch/vega-color-swatch-picker/slimmers/renderers/color-swatch-picker-renderer.js +24 -5
- package/dist/collection/components/vega-color-swatch/vega-color-swatch-picker/vega-color-swatch-picker.js +15 -0
- package/dist/collection/components/vega-color-swatch/vega-color-swatch.js +6 -6
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +53 -51
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +40 -10
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +75 -62
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +1 -0
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-expand-row-controller.js +88 -4
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-row-draggable-controller.js +132 -0
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-sort-controller.js +14 -0
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-renderer.js +8 -5
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-col-group-renderer.js +6 -2
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +8 -2
- package/dist/collection/components/vega-table/utils.js +4 -3
- package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.js +13 -1
- package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-state-controller.js +7 -0
- package/dist/collection/components/vega-table/vega-table-expand-row/vega-table-expand-row.js +7 -0
- package/dist/collection/components/vega-table/vega-table-foot-row/slimmers/controllers/vega-table-foot-row-state-controller.js +10 -3
- package/dist/collection/components/vega-table/vega-table-foot-row/slimmers/renderers/vega-table-foot-row-renderer.js +9 -2
- package/dist/collection/components/vega-table/vega-table-foot-row/vega-table-foot-row.js +4 -3
- package/dist/collection/components/vega-table/vega-table-head/vega-table-head.js +5 -0
- package/dist/collection/components/vega-table/vega-table-head-row/slimmers/controllers/vega-table-head-row-state-controller.js +10 -3
- package/dist/collection/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.js +12 -2
- package/dist/collection/components/vega-table/vega-table-head-row/vega-table-head-row.js +5 -4
- package/dist/collection/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-state-controller.js +22 -1
- package/dist/collection/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.js +19 -4
- package/dist/collection/components/vega-table/vega-table-row/vega-table-row.css +6 -0
- package/dist/collection/components/vega-table/vega-table-row/vega-table-row.js +11 -1
- package/dist/collection/components/vega-table/vega-table.css +5 -0
- package/dist/collection/components/vega-table/vega-table.js +135 -11
- package/dist/collection/constants/ui.js +1 -0
- package/dist/collection/global/icons/grip-dots-vertical.js +3 -0
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
- package/dist/collection/helpers/immutable/immutable-map.js +16 -4
- package/dist/collection/helpers/slimmers/draggable-element-slimmer.js +508 -0
- package/dist/collection/helpers/slimmers/popover-nested-slot-projection-slimmer.js +118 -0
- package/dist/esm/{app-globals-d06de2a5.js → app-globals-b1999c09.js} +5 -5
- package/dist/esm/{aria-dialog-focusable-trap-slimmer-853a91de.js → aria-dialog-focusable-trap-slimmer-6eb79723.js} +1 -1
- package/dist/esm/{child-nodes-event-prevent-slimmer-f65e2452.js → child-nodes-event-prevent-slimmer-75f93d85.js} +1 -1
- package/dist/esm/{code-block-65c8804b.js → code-block-e43c8120.js} +1 -1
- package/dist/esm/{component-value-history-controller-slimmer.abstract-26c154f6.js → component-value-history-controller-slimmer.abstract-60c1910e.js} +3 -3
- package/dist/esm/{content-state-e676bdf0.js → content-state-d363f2ca.js} +2 -2
- package/dist/esm/{element-appender-slimmer-d4a82dc3.js → element-appender-slimmer-05f487d7.js} +1 -1
- package/dist/esm/{event-emit-slimmer-18711776.js → event-emit-slimmer-1c57093d.js} +1 -1
- package/dist/esm/{form-field-controller-slimmer-9a0f8c54.js → form-field-controller-slimmer-ae8478b5.js} +2 -2
- package/dist/esm/{image-annotation-action-2d87b66a.js → image-annotation-action-008ca25b.js} +3 -3
- package/dist/esm/{immutable-map-612922a2.js → immutable-map-4fe22b11.js} +16 -4
- package/dist/esm/index.js +9 -9
- package/dist/esm/{internal-vega-event-manager-bed71930.js → internal-vega-event-manager-7cdf3c28.js} +2 -1
- package/dist/esm/loader.js +9 -9
- package/dist/esm/{public-rules-a61ff09f.js → public-rules-1561e357.js} +4 -4
- package/dist/esm/{range-d9e55d00.js → range-784d5ec8.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-6a4c853a.js → rich-text-editor-required-rule-8768bc8d.js} +1 -1
- package/dist/esm/{split-cell-operation-2e700c5c.js → split-cell-operation-35ce149b.js} +3 -3
- package/dist/esm/{string-input-formatter-slimmer-ad234bec.js → string-input-formatter-slimmer-4059080b.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-1f907173.js → sub-state-notify-slimmer-63ecb465.js} +1 -1
- package/dist/esm/{sub-state-observer-slimmer-090c500a.js → sub-state-observer-slimmer-2adbbe00.js} +1 -1
- package/dist/esm/{token-extension-d3a46c04.js → token-extension-23b5ab65.js} +266 -221
- package/dist/esm/vega-accordion.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +4 -4
- package/dist/esm/vega-banner.entry.js +3 -3
- package/dist/esm/vega-breadcrumb.entry.js +4 -4
- package/dist/esm/vega-button-circle.entry.js +5 -5
- package/dist/esm/vega-button-group_2.entry.js +7 -7
- package/dist/esm/vega-button-link.entry.js +4 -4
- package/dist/esm/vega-button.entry.js +5 -5
- package/dist/esm/vega-calendar_4.entry.js +7 -7
- package/dist/esm/vega-carousel.entry.js +3 -3
- package/dist/esm/vega-checkbox_2.entry.js +7 -7
- package/dist/esm/vega-chip.entry.js +4 -4
- package/dist/esm/vega-code-block.entry.js +8 -8
- package/dist/esm/vega-color-picker.entry.js +6 -6
- package/dist/esm/vega-color-swatch-picker.entry.js +192 -50
- package/dist/esm/vega-color-swatch.entry.js +7 -7
- package/dist/esm/vega-combo-box.entry.js +7 -7
- package/dist/esm/vega-date-picker_2.entry.js +11 -11
- package/dist/esm/vega-dialog_2.entry.js +6 -6
- package/dist/esm/vega-dropdown_5.entry.js +9 -9
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/{vega-event-id-5841d1d3.js → vega-event-id-a6ccca66.js} +2 -1
- package/dist/esm/vega-field-label.entry.js +3 -3
- package/dist/esm/vega-file-uploader.entry.js +6 -6
- package/dist/esm/vega-form.entry.js +9 -9
- package/dist/esm/vega-image-uploader.entry.js +7 -7
- package/dist/esm/vega-input-credit-card.entry.js +7 -7
- package/dist/esm/vega-input-numeric.entry.js +8 -8
- package/dist/esm/vega-input-passcode.entry.js +7 -7
- package/dist/esm/vega-input-phone-number.entry.js +7 -7
- package/dist/esm/vega-input-range.entry.js +7 -7
- package/dist/esm/vega-input-select.entry.js +7 -7
- package/dist/esm/vega-input.entry.js +8 -8
- package/dist/esm/{vega-internal-event-id-194bac82.js → vega-internal-event-id-db974a0d.js} +1 -1
- package/dist/esm/vega-item-toggle.entry.js +3 -3
- package/dist/esm/vega-left-nav_5.entry.js +6 -6
- package/dist/esm/vega-page-notification_2.entry.js +1 -1
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
- package/dist/esm/vega-pagination.entry.js +5 -5
- package/dist/esm/vega-popover_2.entry.js +6 -6
- package/dist/esm/vega-progress-tracker_2.entry.js +6 -6
- package/dist/esm/vega-radio_2.entry.js +7 -7
- package/dist/esm/vega-rich-text-content.entry.js +7 -7
- package/dist/esm/vega-rich-text-editor_4.entry.js +15 -15
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +7 -7
- package/dist/esm/vega-segment-control.entry.js +3 -3
- package/dist/esm/vega-selection-chip_2.entry.js +8 -8
- package/dist/esm/vega-selection-tile_2.entry.js +8 -8
- package/dist/esm/vega-sidenav_3.entry.js +6 -6
- package/dist/esm/vega-signature-capture.entry.js +6 -6
- package/dist/esm/vega-stepper.entry.js +7 -7
- package/dist/esm/vega-tab-group_2.entry.js +4 -4
- package/dist/esm/vega-table_11.entry.js +1175 -285
- package/dist/esm/vega-textarea.entry.js +7 -7
- package/dist/esm/vega-time-picker_2.entry.js +8 -8
- package/dist/esm/vega-toggle-switch.entry.js +6 -6
- package/dist/esm/vega-tooltip_2.entry.js +2 -2
- package/dist/esm/vega.js +9 -9
- package/dist/esm/{wait-for-component-did-render-30cde59c.js → wait-for-component-did-render-9a83d343.js} +1 -1
- package/dist/sri/vega-sri-manifest.json +275 -275
- package/dist/types/components/vega-color-swatch/vega-color-swatch-picker/slimmers/renderers/color-swatch-picker-renderer.d.ts +9 -0
- package/dist/types/components/vega-color-swatch/vega-color-swatch-picker/vega-color-swatch-picker.d.ts +6 -0
- package/dist/types/components/vega-color-swatch/vega-color-swatch.d.ts +4 -4
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +15 -11
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +25 -22
- package/dist/types/components/vega-table/interface.d.ts +2 -0
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-expand-row-controller.d.ts +35 -0
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-row-draggable-controller.d.ts +52 -0
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-sort-controller.d.ts +4 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-renderer.d.ts +3 -1
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-col-group-renderer.d.ts +2 -1
- package/dist/types/components/vega-table/utils.d.ts +3 -2
- package/dist/types/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.d.ts +5 -0
- package/dist/types/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-state-controller.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-expand-row/vega-table-expand-row.d.ts +2 -0
- package/dist/types/components/vega-table/vega-table-foot-row/slimmers/controllers/vega-table-foot-row-state-controller.d.ts +2 -1
- package/dist/types/components/vega-table/vega-table-foot-row/slimmers/renderers/vega-table-foot-row-renderer.d.ts +3 -1
- package/dist/types/components/vega-table/vega-table-foot-row/vega-table-foot-row.d.ts +6 -2
- package/dist/types/components/vega-table/vega-table-head/vega-table-head.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-head-row/slimmers/controllers/vega-table-head-row-state-controller.d.ts +2 -1
- package/dist/types/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.d.ts +3 -1
- package/dist/types/components/vega-table/vega-table-head-row/vega-table-head-row.d.ts +6 -2
- package/dist/types/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-state-controller.d.ts +3 -0
- package/dist/types/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.d.ts +3 -0
- package/dist/types/components/vega-table/vega-table-row/vega-table-row.d.ts +8 -0
- package/dist/types/components/vega-table/vega-table.d.ts +40 -5
- package/dist/types/components.d.ts +33 -8
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/global/icons/grip-dots-vertical.d.ts +3 -0
- package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
- package/dist/types/helpers/immutable/immutable-map.d.ts +4 -1
- package/dist/types/helpers/slimmers/draggable-element-slimmer.d.ts +260 -0
- package/dist/types/helpers/slimmers/popover-nested-slot-projection-slimmer.d.ts +65 -0
- package/dist/types/types/components.type.d.ts +2 -0
- package/dist/types/types/public-api.d.ts +1 -0
- package/dist/types/types/ui.type.d.ts +40 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-d3ed7c27.entry.js → p-0b5b0fd2.entry.js} +1 -1
- package/dist/vega/p-13e7f906.entry.js +1 -0
- package/dist/vega/{p-7595ad55.js → p-1d30cab2.js} +1 -1
- package/dist/vega/{p-39b71df9.entry.js → p-23b38467.entry.js} +1 -1
- package/dist/vega/{p-8d833b44.entry.js → p-25572ea7.entry.js} +1 -1
- package/dist/vega/{p-03cf2df1.entry.js → p-2ae5acfc.entry.js} +1 -1
- package/dist/vega/{p-5bbb3e68.entry.js → p-2fb26f4f.entry.js} +1 -1
- package/dist/vega/{p-c0323a55.entry.js → p-35d77c9c.entry.js} +1 -1
- package/dist/vega/{p-032183c1.js → p-386895e9.js} +1 -1
- package/dist/vega/{p-5ac4649a.entry.js → p-3c456e91.entry.js} +1 -1
- package/dist/vega/{p-20f0060f.entry.js → p-3d92d2af.entry.js} +1 -1
- package/dist/vega/{p-4123559f.entry.js → p-3e64fa38.entry.js} +1 -1
- package/dist/vega/{p-f986f875.entry.js → p-411ea209.entry.js} +1 -1
- package/dist/vega/{p-7cf1e1f7.entry.js → p-423762ae.entry.js} +1 -1
- package/dist/vega/{p-0f31b00b.entry.js → p-4530f0e1.entry.js} +1 -1
- package/dist/vega/{p-27b1dc0f.entry.js → p-487ecdb0.entry.js} +1 -1
- package/dist/vega/{p-b28d4f7d.js → p-48e3be6a.js} +1 -1
- package/dist/vega/{p-753a7832.entry.js → p-4afafeb3.entry.js} +1 -1
- package/dist/vega/{p-5409275a.entry.js → p-56c1a8ac.entry.js} +1 -1
- package/dist/vega/{p-56c28943.js → p-5904616e.js} +1 -1
- package/dist/vega/{p-bc2786f9.entry.js → p-59c6dcf7.entry.js} +1 -1
- package/dist/vega/p-5e50dbb9.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-e5546af5.entry.js → p-606d7113.entry.js} +1 -1
- package/dist/vega/{p-5215e1d8.entry.js → p-64b566be.entry.js} +1 -1
- package/dist/vega/{p-84030271.entry.js → p-69c11b7b.entry.js} +1 -1
- package/dist/vega/{p-effa6495.js → p-6b5cb920.js} +1 -1
- package/dist/vega/{p-aa985d73.js → p-6c43d54a.js} +1 -1
- package/dist/vega/{p-0e15fa94.entry.js → p-6fadee27.entry.js} +1 -1
- package/dist/vega/{p-549bea2c.entry.js → p-73c6669e.entry.js} +1 -1
- package/dist/vega/{p-a5e6a3be.js → p-77300901.js} +1 -1
- package/dist/vega/{p-7dca19d3.entry.js → p-77754d62.entry.js} +1 -1
- package/dist/vega/{p-88f57353.entry.js → p-79c12a64.entry.js} +1 -1
- package/dist/vega/{p-f8c700dd.entry.js → p-7f74cd41.entry.js} +1 -1
- package/dist/vega/{p-80cb302f.entry.js → p-887b3e2d.entry.js} +1 -1
- package/dist/vega/{p-b48b3264.js → p-8d48940d.js} +1 -1
- package/dist/vega/{p-5f23c52d.entry.js → p-9763fbbe.entry.js} +1 -1
- package/dist/vega/{p-865fc90b.entry.js → p-98a6cd8e.entry.js} +1 -1
- package/dist/vega/p-9af0e2e7.js +1 -0
- package/dist/vega/{p-f6414a24.entry.js → p-9e2b7718.entry.js} +1 -1
- package/dist/vega/{p-e1b1f5f9.entry.js → p-9eb00537.entry.js} +1 -1
- package/dist/vega/{p-f0e855b2.entry.js → p-9f36abf9.entry.js} +1 -1
- package/dist/vega/{p-b88eab9a.entry.js → p-9fc8bd1f.entry.js} +1 -1
- package/dist/vega/{p-9308f874.entry.js → p-a050c24d.entry.js} +1 -1
- package/dist/vega/{p-6f790577.js → p-a07c5dae.js} +1 -1
- package/dist/vega/{p-aa4d419c.entry.js → p-a49c25c2.entry.js} +1 -1
- package/dist/vega/{p-1df2c29b.entry.js → p-a9528dbd.entry.js} +1 -1
- package/dist/vega/{p-0caf52e0.js → p-a9e10a64.js} +1 -1
- package/dist/vega/{p-6cada843.js → p-ae1aa4df.js} +1 -1
- package/dist/vega/{p-a0c3968b.js → p-af5cb9bc.js} +1 -1
- package/dist/vega/{p-d6c9ef6c.entry.js → p-afd1b519.entry.js} +1 -1
- package/dist/vega/{p-5490d499.entry.js → p-bc74d7e7.entry.js} +1 -1
- package/dist/vega/{p-a2d6d695.entry.js → p-bceee942.entry.js} +1 -1
- package/dist/vega/{p-c6837173.entry.js → p-c15a58b5.entry.js} +1 -1
- package/dist/vega/{p-6ba71ec4.entry.js → p-c2388937.entry.js} +1 -1
- package/dist/vega/{p-3ae5f50e.entry.js → p-c2e1f33d.entry.js} +1 -1
- package/dist/vega/p-c31a32f4.js +1 -0
- package/dist/vega/{p-11a2f834.js → p-c347e08a.js} +1 -1
- package/dist/vega/{p-91739ed3.entry.js → p-c51ebb14.entry.js} +1 -1
- package/dist/vega/{p-b80217fa.entry.js → p-c601b331.entry.js} +1 -1
- package/dist/vega/p-c74060a7.js +1 -0
- package/dist/vega/{p-d3864b94.entry.js → p-c8fe46fd.entry.js} +1 -1
- package/dist/vega/{p-d76e3b3c.entry.js → p-cf2838c7.entry.js} +1 -1
- package/dist/vega/{p-e4c5b8d1.entry.js → p-d37636a5.entry.js} +1 -1
- package/dist/vega/{p-19e10a87.entry.js → p-d402eb7b.entry.js} +1 -1
- package/dist/vega/{p-ce975c69.entry.js → p-da8bb883.entry.js} +1 -1
- package/dist/vega/{p-68a96fbb.entry.js → p-dffbbc3d.entry.js} +1 -1
- package/dist/vega/{p-c47c37f2.js → p-e27626f6.js} +1 -1
- package/dist/vega/{p-6236f592.entry.js → p-e47b2c4c.entry.js} +1 -1
- package/dist/vega/{p-74136508.entry.js → p-ecbb63a5.entry.js} +1 -1
- package/dist/vega/p-ed26f4c8.entry.js +1 -0
- package/dist/vega/{p-43aaeb30.entry.js → p-effb285f.entry.js} +1 -1
- package/dist/vega/p-f1c672e4.js +1 -0
- package/dist/vega/p-f54fb4e5.js +1 -0
- package/dist/vega/{p-748268e6.entry.js → p-f604f2c9.entry.js} +1 -1
- package/dist/vega/{p-e5cc839a.entry.js → p-fa91805b.entry.js} +1 -1
- package/dist/vega/{p-aa040383.js → p-fb05335d.js} +1 -1
- package/dist/vega/{p-9375fbce.js → p-fcb0d4d8.js} +1 -1
- package/dist/vega/{p-bdddddb7.js → p-fcce494e.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/vega/p-220f8ee7.js +0 -1
- package/dist/vega/p-38af89b9.js +0 -1
- package/dist/vega/p-7dbaed6c.entry.js +0 -1
- package/dist/vega/p-874bf8b2.js +0 -1
- package/dist/vega/p-99670c56.entry.js +0 -1
- package/dist/vega/p-9de25451.js +0 -1
- package/dist/vega/p-b78eaec4.js +0 -1
- package/dist/vega/p-dec5b448.js +0 -1
|
@@ -25,7 +25,6 @@ import { TablePopoverBaseRenderer } from './table-popover-base-renderer';
|
|
|
25
25
|
export class TableDynamicPopoverRenderer extends TablePopoverBaseRenderer {
|
|
26
26
|
constructor(colors, renderContext) {
|
|
27
27
|
super(renderContext);
|
|
28
|
-
this.tableColorSchema = [];
|
|
29
28
|
this.popoverCloseType = 'none'; // 'save' | 'cancel' | 'change' | 'none'
|
|
30
29
|
this.tablePropertiesHandlerMap = {
|
|
31
30
|
save: new TablePropertiesSaveEventHandler(),
|
|
@@ -53,7 +52,7 @@ export class TableDynamicPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
53
52
|
this.tablePropertiesHandlerMap[eventKey].handle(extensionContext, this.currentTableBlock, e.detail, this.currentFocusNode);
|
|
54
53
|
}
|
|
55
54
|
// Update popover position to follow the target after styles change
|
|
56
|
-
if (eventKey === 'change'
|
|
55
|
+
if (eventKey === 'change') {
|
|
57
56
|
void this.popoverRef.show(true);
|
|
58
57
|
}
|
|
59
58
|
};
|
|
@@ -73,7 +72,7 @@ export class TableDynamicPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
73
72
|
this.cellPropertiesHandlerMap[eventKey].handle(extensionContext, e.detail, this.currentFocusNode);
|
|
74
73
|
}
|
|
75
74
|
// Update popover position to follow the target after styles change
|
|
76
|
-
if (eventKey === 'change'
|
|
75
|
+
if (eventKey === 'change') {
|
|
77
76
|
void this.popoverRef.show(true);
|
|
78
77
|
}
|
|
79
78
|
};
|
|
@@ -125,55 +124,58 @@ export class TableDynamicPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
125
124
|
await this.popoverRef.hide();
|
|
126
125
|
}
|
|
127
126
|
/**
|
|
128
|
-
*
|
|
127
|
+
* Re-targets the shared popovers to the given table.
|
|
129
128
|
*
|
|
130
|
-
* @param {
|
|
131
|
-
* @param {() => HTMLElement} getTableRef -
|
|
132
|
-
* @param {RTETableBlock} renderData - Current table block being rendered.
|
|
133
|
-
* @returns {VegaRTERenderResult} The rendered popover host.
|
|
129
|
+
* @param {RTETableBlock} tableBlock - The clicked table's block data.
|
|
130
|
+
* @param {() => HTMLElement} getTableRef - Getter for the clicked table's DOM element.
|
|
134
131
|
*/
|
|
135
|
-
|
|
132
|
+
reTarget(tableBlock, getTableRef) {
|
|
136
133
|
this.getTableRef = getTableRef;
|
|
137
|
-
this.currentTableBlock =
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
134
|
+
this.currentTableBlock = tableBlock;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Builds the popover DOM and appends it to the given container.
|
|
138
|
+
*
|
|
139
|
+
* @returns {Nullable<HTMLElement>} The constructed popover element.
|
|
140
|
+
*/
|
|
141
|
+
render() {
|
|
142
|
+
const safeDocument = tryGetDocument();
|
|
143
|
+
if (safeDocument) {
|
|
144
|
+
const popover = safeDocument.createElement('vega-popover');
|
|
145
|
+
popover.trigger = 'click';
|
|
146
|
+
popover.isScreenPosition = true;
|
|
147
|
+
popover.className = 'rte-table-dynamic-popover';
|
|
148
|
+
DomNodeSubjectObserverFactory.addUniqueObserverToNode(popover, VegaPopoverHide, () => {
|
|
149
|
+
const extensionContext = this.getTableExtensionContext();
|
|
150
|
+
if (this.popoverCloseType === 'change' && extensionContext) {
|
|
151
|
+
extensionContext.flushValue(extensionContext.host.value);
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
const slotDiv = safeDocument.createElement('div');
|
|
155
|
+
slotDiv.setAttribute('slot', 'popover');
|
|
156
|
+
slotDiv.className = 'rte-table-dynamic-popover-content';
|
|
157
|
+
const tablePropsForm = safeDocument.createElement('vega-rich-text-table-properties');
|
|
158
|
+
tablePropsForm.colors = this.tableColorSchema;
|
|
159
|
+
tablePropsForm.type = TableSettingType.TABLE;
|
|
160
|
+
tablePropsForm.setAttribute('type', TableSettingType.TABLE);
|
|
161
|
+
tablePropsForm.addEventListener('vegaCancel', this.handleTablePropertiesUpdate);
|
|
162
|
+
tablePropsForm.addEventListener('vegaChange', this.handleTablePropertiesUpdate);
|
|
163
|
+
tablePropsForm.addEventListener('vegaSave', this.handleTablePropertiesUpdate);
|
|
164
|
+
const cellPropsForm = safeDocument.createElement('vega-rich-text-table-properties');
|
|
165
|
+
cellPropsForm.colors = this.tableColorSchema;
|
|
166
|
+
cellPropsForm.type = TableSettingType.CELL;
|
|
167
|
+
cellPropsForm.setAttribute('type', TableSettingType.CELL);
|
|
168
|
+
cellPropsForm.addEventListener('vegaCancel', this.handleCellPropertiesUpdate);
|
|
169
|
+
cellPropsForm.addEventListener('vegaChange', this.handleCellPropertiesUpdate);
|
|
170
|
+
cellPropsForm.addEventListener('vegaSave', this.handleCellPropertiesUpdate);
|
|
171
|
+
slotDiv.appendChild(tablePropsForm);
|
|
172
|
+
slotDiv.appendChild(cellPropsForm);
|
|
173
|
+
popover.appendChild(slotDiv);
|
|
174
|
+
this.popoverRef = popover;
|
|
175
|
+
this.tablePropertiesFormRef = tablePropsForm;
|
|
176
|
+
this.cellPropertiesFormRef = cellPropsForm;
|
|
177
|
+
return popover;
|
|
178
|
+
}
|
|
177
179
|
}
|
|
178
180
|
/**
|
|
179
181
|
* Updates the visibility of the pre-rendered content blocks based on type.
|
|
@@ -183,13 +185,13 @@ export class TableDynamicPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
183
185
|
updateContent(type) {
|
|
184
186
|
this.popoverCloseType = 'none';
|
|
185
187
|
const extensionContext = this.getTableExtensionContext();
|
|
186
|
-
if (
|
|
188
|
+
if (type === 'TABLE') {
|
|
187
189
|
this.tablePropertiesFormRef.classList.remove('vega-hidden');
|
|
188
190
|
this.cellPropertiesFormRef.classList.add('vega-hidden');
|
|
189
191
|
this.tablePropertiesFormRef.defaultValue =
|
|
190
192
|
TablePropertiesEventHandler.generateTablePropertiesForm(this.currentTableBlock);
|
|
191
193
|
}
|
|
192
|
-
else if (
|
|
194
|
+
else if (type === 'CELL') {
|
|
193
195
|
this.cellPropertiesFormRef.classList.remove('vega-hidden');
|
|
194
196
|
this.tablePropertiesFormRef.classList.add('vega-hidden');
|
|
195
197
|
if (extensionContext) {
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { VegaRTEExtensionRenderer } from '../../base-extension-renderer';
|
|
2
2
|
import styles from '../table-block-styles.css';
|
|
3
3
|
import { DeleteTableBlockAction } from '../actions/delete-table-block-action';
|
|
4
|
-
import { TableSettingPopoverRenderer } from './table-setting-popover-renderer';
|
|
5
4
|
import { RTETableExtensionAnnotationTypeEnum } from '../annotations/table-annotation';
|
|
6
|
-
import { TableDynamicPopoverRenderer } from './table-dynamic-popover-renderer';
|
|
7
5
|
import changeManager from '../../../../../helpers/change-manager/change-manager';
|
|
8
6
|
import DomNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
|
|
9
7
|
import { VegaInternalRTEExtensionTableCellsSelectionAnchor } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
|
|
10
|
-
import {
|
|
8
|
+
import { TableSettingPopoverRenderer } from './table-setting-popover-renderer';
|
|
11
9
|
/**
|
|
12
10
|
* Renderer for the RTETableBlock.
|
|
13
11
|
*/
|
|
@@ -16,12 +14,9 @@ export class RTETableBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
16
14
|
* @inheritDoc
|
|
17
15
|
*/
|
|
18
16
|
doRender(h, renderData, rteContext) {
|
|
19
|
-
const tableSettingPopoverRenderer = new TableSettingPopoverRenderer(rteContext);
|
|
20
|
-
const tableDynamicPopoverRenderer = new TableDynamicPopoverRenderer(RTETableColorManager.getTableColors(), rteContext);
|
|
21
17
|
let tableRef;
|
|
22
18
|
const table = this.renderTable(h, renderData, (ref) => (tableRef = ref));
|
|
23
|
-
|
|
24
|
-
const tableDynamicPopover = tableDynamicPopoverRenderer.render(h, () => tableRef, renderData);
|
|
19
|
+
this.renderTableToolbar(rteContext);
|
|
25
20
|
const tableAnnotation = renderData.getAnnotationByType(RTETableExtensionAnnotationTypeEnum.TABLE);
|
|
26
21
|
const children = rteContext.editable
|
|
27
22
|
? [
|
|
@@ -32,17 +27,23 @@ export class RTETableBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
32
27
|
this.handleTableRemove(renderData, tableRef);
|
|
33
28
|
},
|
|
34
29
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
35
|
-
onClick: (event) =>
|
|
30
|
+
onClick: (event) => {
|
|
31
|
+
if (this.tableToolbar) {
|
|
32
|
+
this.tableToolbar.handleTableClick(event, renderData, () => tableRef);
|
|
33
|
+
}
|
|
34
|
+
},
|
|
36
35
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
37
36
|
onMouseLeave: () => {
|
|
38
|
-
|
|
37
|
+
if (this.tableToolbar) {
|
|
38
|
+
this.tableToolbar.syncSelectedCells();
|
|
39
|
+
}
|
|
39
40
|
},
|
|
40
41
|
}, [
|
|
41
42
|
// Add an extra div as slot container, to make sure the cursor can move to before/end of the table.
|
|
42
43
|
h('div', {
|
|
43
44
|
contentEditable: true,
|
|
44
45
|
ref: this.useRef(renderData),
|
|
45
|
-
}, [table
|
|
46
|
+
}, [table]),
|
|
46
47
|
]),
|
|
47
48
|
]
|
|
48
49
|
: [table];
|
|
@@ -64,6 +65,12 @@ export class RTETableBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
64
65
|
result.childrenContainerGetter = () => table;
|
|
65
66
|
return result;
|
|
66
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* Destroys the table toolbar popover.
|
|
70
|
+
*/
|
|
71
|
+
destroy() {
|
|
72
|
+
this.destroyTableToolbar();
|
|
73
|
+
}
|
|
67
74
|
/**
|
|
68
75
|
* @inheritDoc
|
|
69
76
|
*/
|
|
@@ -113,4 +120,27 @@ export class RTETableBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
113
120
|
}
|
|
114
121
|
}
|
|
115
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* Renders the table setting popover toolbar if the context is editable.
|
|
125
|
+
*
|
|
126
|
+
* @param {RTERenderContext} rteContext - The rendering context of the rich text editor.
|
|
127
|
+
*/
|
|
128
|
+
renderTableToolbar(rteContext) {
|
|
129
|
+
if (!rteContext.editable) {
|
|
130
|
+
this.destroyTableToolbar();
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
if (!this.tableToolbar) {
|
|
134
|
+
this.tableToolbar = new TableSettingPopoverRenderer(rteContext);
|
|
135
|
+
this.tableToolbar.render();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Destroys the table setting popover toolbar if it exists.
|
|
140
|
+
*/
|
|
141
|
+
destroyTableToolbar() {
|
|
142
|
+
var _a;
|
|
143
|
+
(_a = this.tableToolbar) === null || _a === void 0 ? void 0 : _a.destroy();
|
|
144
|
+
this.tableToolbar = null;
|
|
145
|
+
}
|
|
116
146
|
}
|
|
@@ -6,16 +6,19 @@ import { RowOperationEventHandler } from '../setting-event-handlers/row-operatio
|
|
|
6
6
|
import { CaptionOperationEventHandler } from '../setting-event-handlers/caption-operation';
|
|
7
7
|
import { ColumnOperationEventHandler } from '../setting-event-handlers/column-operation';
|
|
8
8
|
import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
|
|
9
|
-
import {
|
|
9
|
+
import { VegaPopoverShow } from '../../../../../helpers/event-manager/event-id/vega-event-id';
|
|
10
|
+
import { TableDynamicPopoverRenderer } from './table-dynamic-popover-renderer';
|
|
10
11
|
import { MergeCellsOperationEventHandler } from '../setting-event-handlers/merge-cells-operation';
|
|
11
12
|
import { SplitCellOperationEventHandler } from '../setting-event-handlers/split-cell-operation';
|
|
12
13
|
import { TablePopoverBaseRenderer } from './table-popover-base-renderer';
|
|
14
|
+
import { RTETableColorManager } from '../utils/table-color-manager';
|
|
15
|
+
import { tryGetDocument } from '../../../../../utils/try-get-document';
|
|
13
16
|
/**
|
|
14
|
-
*
|
|
17
|
+
* Shared popover renderer for table settings.
|
|
15
18
|
*/
|
|
16
19
|
export class TableSettingPopoverRenderer extends TablePopoverBaseRenderer {
|
|
17
|
-
constructor() {
|
|
18
|
-
super(
|
|
20
|
+
constructor(renderContext) {
|
|
21
|
+
super(renderContext);
|
|
19
22
|
this.settingHandlers = [
|
|
20
23
|
new RowOperationEventHandler(),
|
|
21
24
|
new CaptionOperationEventHandler(),
|
|
@@ -24,38 +27,38 @@ export class TableSettingPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
24
27
|
new SplitCellOperationEventHandler(),
|
|
25
28
|
];
|
|
26
29
|
/**
|
|
27
|
-
*
|
|
28
|
-
* Only the popover belonging to the nearest table will be shown,
|
|
29
|
-
* which avoids outer tables showing their popover when an inner (nested) table is clicked.
|
|
30
|
+
* Re-targets and shows the table setting popover for the clicked table.
|
|
30
31
|
*
|
|
31
|
-
* @param {MouseEvent} event - The MouseEvent that triggered the
|
|
32
|
-
* @param {
|
|
32
|
+
* @param {MouseEvent} event - The MouseEvent that triggered the click.
|
|
33
|
+
* @param {RTETableBlock} tableBlock - The clicked table's block data.
|
|
34
|
+
* @param {() => HTMLElement} getTableRef - Getter for the clicked table's DOM element.
|
|
33
35
|
*/
|
|
34
|
-
this.handleTableClick = (event,
|
|
36
|
+
this.handleTableClick = (event, tableBlock, getTableRef) => {
|
|
35
37
|
const target = event.target;
|
|
36
38
|
const ownTrigger = target.closest('table');
|
|
37
|
-
if (
|
|
38
|
-
void this.popoverRef.hide();
|
|
39
|
-
void this.tableDynamicPopover.hide();
|
|
39
|
+
if (ownTrigger !== getTableRef()) {
|
|
40
40
|
return;
|
|
41
41
|
}
|
|
42
|
+
// Prevent the click from bubbling to ancestor tables. When this is a nested
|
|
43
|
+
// table click, the ancestor table still has the popover's stale click
|
|
44
|
+
// listener attached (from when it was the popover's target), which would
|
|
45
|
+
// toggle the popover off immediately after we show it.
|
|
46
|
+
event.stopPropagation();
|
|
47
|
+
this.reTarget(tableBlock, getTableRef);
|
|
42
48
|
void this.tableDynamicPopover.hide();
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
void this.popoverRef.show();
|
|
46
|
-
}
|
|
49
|
+
remoteInvocationRegistry.call(domNodeSubjectFactory.getSubject(this.popoverRef, VegaInternalPopoverUpdateTarget), ownTrigger);
|
|
50
|
+
void this.popoverRef.show(true);
|
|
47
51
|
};
|
|
48
52
|
/**
|
|
49
53
|
* Sync the selected cells from the table selection to the table setting component.
|
|
50
54
|
*/
|
|
51
55
|
this.syncSelectedCells = () => {
|
|
52
56
|
if (this.tableSettingRef) {
|
|
53
|
-
|
|
54
|
-
this.tableSettingRef.selectedCells = selectedCells;
|
|
57
|
+
this.tableSettingRef.selectedCells = this.getTableSelectedCells();
|
|
55
58
|
}
|
|
56
59
|
};
|
|
57
60
|
/**
|
|
58
|
-
*
|
|
61
|
+
* Handles setting menu click events.
|
|
59
62
|
*
|
|
60
63
|
* @param {CustomEvent<Array<string>>} event - The custom event emitted from the setting menu.
|
|
61
64
|
*/
|
|
@@ -63,7 +66,7 @@ export class TableSettingPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
63
66
|
const handler = this.settingHandlers.find((handler) => handler.canHandle(event.detail));
|
|
64
67
|
if (handler) {
|
|
65
68
|
const extensionContext = this.getTableExtensionContext();
|
|
66
|
-
extensionContext && handler.execute(event.detail, extensionContext, this.
|
|
69
|
+
extensionContext && handler.execute(event.detail, extensionContext, this.tableBlock);
|
|
67
70
|
if (event.detail[0] === TableSettingType.CAPTION) {
|
|
68
71
|
this.updateTableSettingCaption();
|
|
69
72
|
}
|
|
@@ -78,59 +81,69 @@ export class TableSettingPopoverRenderer extends TablePopoverBaseRenderer {
|
|
|
78
81
|
*/
|
|
79
82
|
this.handleTableSettingPopoverShow = () => {
|
|
80
83
|
this.syncSelectedCells();
|
|
81
|
-
this.popoverShow = true;
|
|
82
84
|
};
|
|
85
|
+
this.tableDynamicPopover = new TableDynamicPopoverRenderer(RTETableColorManager.getTableColors(), renderContext);
|
|
83
86
|
}
|
|
84
87
|
/**
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
* @param {VegaRTECreateElementFunction} h - The create element function.
|
|
88
|
-
* @param {RTETableBlock} renderData - The table block to render.
|
|
89
|
-
* @param {() => HTMLElement} getTableRef - Current table DOM reference
|
|
90
|
-
* @param {TableDynamicPopoverRenderer} tableDynamicPopover - Renderer used to show
|
|
91
|
-
* the secondary table popover (for example, table-properties-specific settings).
|
|
92
|
-
* @returns {VegaRTERenderResult} The rendered popover structure.
|
|
88
|
+
* Destroys the dynamic popover renderer and removes the container from the DOM.
|
|
93
89
|
*/
|
|
94
|
-
|
|
95
|
-
this.
|
|
96
|
-
this.
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
90
|
+
destroy() {
|
|
91
|
+
this.tableDynamicPopover.destroy();
|
|
92
|
+
if (this.popoverContainer) {
|
|
93
|
+
this.popoverContainer.remove();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Builds the popover DOM and appends it to the RTE host. Idempotent: subsequent calls are no-ops.
|
|
98
|
+
*/
|
|
99
|
+
render() {
|
|
100
|
+
const safeDocument = tryGetDocument();
|
|
101
|
+
if (safeDocument && this.renderContext) {
|
|
102
|
+
this.popoverContainer = safeDocument.createElement('div');
|
|
103
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
104
|
+
this.renderContext.host.appendChild(this.popoverContainer);
|
|
105
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
106
|
+
const tableCellPopover = this.tableDynamicPopover.render();
|
|
107
|
+
const popover = safeDocument.createElement('vega-popover');
|
|
108
|
+
popover.trigger = 'click';
|
|
109
|
+
popover.isScreenPosition = true;
|
|
110
|
+
popover.className = 'rte-table-setting-popover';
|
|
111
|
+
DomNodeSubjectObserverFactory.addUniqueObserverToNode(popover, VegaPopoverShow, this.handleTableSettingPopoverShow);
|
|
112
|
+
const slotDiv = safeDocument.createElement('div');
|
|
113
|
+
slotDiv.setAttribute('slot', 'popover');
|
|
114
|
+
const tableSetting = safeDocument.createElement('vega-rich-text-table-setting');
|
|
115
|
+
tableSetting.addEventListener('vegaClick', this.handleSettingMenuClick);
|
|
116
|
+
slotDiv.appendChild(tableSetting);
|
|
117
|
+
popover.appendChild(slotDiv);
|
|
118
|
+
this.popoverContainer.appendChild(popover);
|
|
119
|
+
this.popoverContainer.appendChild(tableCellPopover);
|
|
120
|
+
this.popoverRef = popover;
|
|
121
|
+
this.tableSettingRef = tableSetting;
|
|
122
|
+
}
|
|
124
123
|
}
|
|
125
124
|
/**
|
|
126
|
-
* Updates the table setting component caption state to match the
|
|
125
|
+
* Updates the table setting component caption state to match the current table data.
|
|
127
126
|
*/
|
|
128
127
|
updateTableSettingCaption() {
|
|
129
|
-
const hasCaption = this.
|
|
128
|
+
const hasCaption = this.tableBlock.hasCaption();
|
|
130
129
|
if (this.tableSettingRef && this.tableSettingRef.hasCaption !== hasCaption) {
|
|
131
130
|
this.tableSettingRef.hasCaption = hasCaption;
|
|
132
131
|
}
|
|
133
132
|
}
|
|
133
|
+
/**
|
|
134
|
+
* Re-targets the shared popovers to the given table.
|
|
135
|
+
*
|
|
136
|
+
* @param {RTETableBlock} tableBlock - The clicked table's block data.
|
|
137
|
+
* @param {() => HTMLElement} getTableRef - Getter for the clicked table's DOM element.
|
|
138
|
+
*/
|
|
139
|
+
reTarget(tableBlock, getTableRef) {
|
|
140
|
+
if (this.tableSettingRef) {
|
|
141
|
+
this.tableBlock = tableBlock;
|
|
142
|
+
this.tableSettingRef.target = getTableRef();
|
|
143
|
+
this.tableSettingRef.selectedCells = this.getTableSelectedCells();
|
|
144
|
+
this.tableDynamicPopover.reTarget(tableBlock, getTableRef);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
134
147
|
/**
|
|
135
148
|
* Collects and returns the currently selected table cells.
|
|
136
149
|
*
|
|
@@ -26,7 +26,7 @@ export class VegaTableExpandRowController extends VegaSlimmer {
|
|
|
26
26
|
* @param {string} rowKey - The row key of the row
|
|
27
27
|
*/
|
|
28
28
|
this.toggleExpandRow = (rowKey) => {
|
|
29
|
-
this.
|
|
29
|
+
this.isRowExpandable(rowKey) && this.handleToggleExpandRow(rowKey, !this.isExpanded(rowKey));
|
|
30
30
|
};
|
|
31
31
|
/**
|
|
32
32
|
* Open expandable row by rowKey
|
|
@@ -34,7 +34,7 @@ export class VegaTableExpandRowController extends VegaSlimmer {
|
|
|
34
34
|
* @param {string} rowKey - The row key of the row
|
|
35
35
|
*/
|
|
36
36
|
this.openExpandRow = (rowKey) => {
|
|
37
|
-
this.
|
|
37
|
+
this.isRowExpandable(rowKey) && this.handleToggleExpandRow(rowKey, true);
|
|
38
38
|
};
|
|
39
39
|
/**
|
|
40
40
|
* Close expanded row by rowKey
|
|
@@ -42,13 +42,22 @@ export class VegaTableExpandRowController extends VegaSlimmer {
|
|
|
42
42
|
* @param {string} rowKey - The row key of the row
|
|
43
43
|
*/
|
|
44
44
|
this.closeExpandRow = (rowKey) => {
|
|
45
|
-
this.
|
|
45
|
+
this.isRowExpandable(rowKey) && this.handleToggleExpandRow(rowKey, false);
|
|
46
46
|
};
|
|
47
47
|
/**
|
|
48
48
|
* Close all expanded row
|
|
49
49
|
*/
|
|
50
50
|
this.closeAllExpandRow = () => {
|
|
51
|
-
this.
|
|
51
|
+
this.hasExpandableRow && this.handleCloseAllExpandRow();
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Whether the row is expandable
|
|
55
|
+
*
|
|
56
|
+
* @param {VegaTableDataSourceItem} row - The row data
|
|
57
|
+
* @returns {boolean} Return true if the row is expandable
|
|
58
|
+
*/
|
|
59
|
+
this.isExpandableRow = (row) => {
|
|
60
|
+
return this.expandableRows.includes(this.vegaTableDataSourceController.getRecordKey(row));
|
|
52
61
|
};
|
|
53
62
|
/**
|
|
54
63
|
* Whether the row is expandable
|
|
@@ -159,6 +168,12 @@ export class VegaTableExpandRowController extends VegaSlimmer {
|
|
|
159
168
|
ChangeManager.unregister(TABLE_EXPAND_ROW, this.expandObserver);
|
|
160
169
|
remoteInvocationRegistry.unRegister(domNodeSubjectFactory.getSubject(this.host, VegaInternalTableRowExpand));
|
|
161
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Component lifecycle - componentWillLoad
|
|
173
|
+
*/
|
|
174
|
+
componentWillLoad() {
|
|
175
|
+
this.setExpandableRows();
|
|
176
|
+
}
|
|
162
177
|
/**
|
|
163
178
|
* Component lifecycle - componentDidLoad
|
|
164
179
|
*/
|
|
@@ -169,8 +184,16 @@ export class VegaTableExpandRowController extends VegaSlimmer {
|
|
|
169
184
|
* The callback to handle [watchRowExpandable]{@link VegaTable.watchRowExpandable}
|
|
170
185
|
*/
|
|
171
186
|
watchRowExpandable() {
|
|
187
|
+
this.setExpandableRows();
|
|
172
188
|
this.handleCloseAllExpandRow();
|
|
173
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Set the expandable rows based on the rowExpandable prop
|
|
192
|
+
*/
|
|
193
|
+
watchCurrentData() {
|
|
194
|
+
this.setExpandableRows();
|
|
195
|
+
this.clearUnusedExpandRowSlot();
|
|
196
|
+
}
|
|
174
197
|
/**
|
|
175
198
|
* Initializes row expand observer
|
|
176
199
|
*/
|
|
@@ -201,6 +224,52 @@ export class VegaTableExpandRowController extends VegaSlimmer {
|
|
|
201
224
|
return (input['host']['tagName'] === 'VEGA-TABLE-ROW' &&
|
|
202
225
|
this.host === findParent(input['host'], 'vega-table'));
|
|
203
226
|
}
|
|
227
|
+
/**
|
|
228
|
+
* Sets expandable rows and hasExpandableRow based on rowExpandable and currentData
|
|
229
|
+
*/
|
|
230
|
+
setExpandableRows() {
|
|
231
|
+
if (typeof this.rowExpandable === 'boolean') {
|
|
232
|
+
this.expandableRows = this.rowExpandable
|
|
233
|
+
? this.currentData.map((item) => this.vegaTableDataSourceController.getRecordKey(item))
|
|
234
|
+
: [];
|
|
235
|
+
this.hasExpandableRow = this.rowExpandable;
|
|
236
|
+
}
|
|
237
|
+
else if (typeof this.rowExpandable === 'function') {
|
|
238
|
+
const result = [];
|
|
239
|
+
this.currentData.forEach((item) => {
|
|
240
|
+
const rowKey = this.vegaTableDataSourceController.getRecordKey(item);
|
|
241
|
+
if (this.rowExpandable(rowKey)) {
|
|
242
|
+
result.push(rowKey);
|
|
243
|
+
}
|
|
244
|
+
});
|
|
245
|
+
this.expandableRows = result;
|
|
246
|
+
this.hasExpandableRow = result.length > 0;
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
this.expandableRows = [];
|
|
250
|
+
this.hasExpandableRow = false;
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Whether the row is expandable by rowKey
|
|
255
|
+
*
|
|
256
|
+
* @param {string} rowKey - The row key of the row
|
|
257
|
+
* @returns {boolean} Return true if the row is expandable
|
|
258
|
+
*/
|
|
259
|
+
isRowExpandable(rowKey) {
|
|
260
|
+
return this.expandableRows.includes(rowKey);
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Clear the expand row slot which is not expandable anymore to avoid confusion,
|
|
264
|
+
* this can be triggered by the change of rowExpandable or currentData
|
|
265
|
+
*/
|
|
266
|
+
clearUnusedExpandRowSlot() {
|
|
267
|
+
this.expandedRowKeySet.toArray().forEach((rowKey) => {
|
|
268
|
+
if (!this.isRowExpandable(rowKey)) {
|
|
269
|
+
this.expandedRowKeySet.delete(rowKey);
|
|
270
|
+
}
|
|
271
|
+
});
|
|
272
|
+
}
|
|
204
273
|
}
|
|
205
274
|
VegaTableExpandRowController.expandRowSlotNamePrefix = 'vega-table-expand-row-';
|
|
206
275
|
__decorate([
|
|
@@ -209,9 +278,18 @@ __decorate([
|
|
|
209
278
|
__decorate([
|
|
210
279
|
MapToComponentField()
|
|
211
280
|
], VegaTableExpandRowController.prototype, "expandedRowKeySet", void 0);
|
|
281
|
+
__decorate([
|
|
282
|
+
MapToComponentField({ writable: true })
|
|
283
|
+
], VegaTableExpandRowController.prototype, "expandableRows", void 0);
|
|
284
|
+
__decorate([
|
|
285
|
+
MapToComponentField({ writable: true })
|
|
286
|
+
], VegaTableExpandRowController.prototype, "hasExpandableRow", void 0);
|
|
212
287
|
__decorate([
|
|
213
288
|
MapToComponentField()
|
|
214
289
|
], VegaTableExpandRowController.prototype, "rowExpandable", void 0);
|
|
290
|
+
__decorate([
|
|
291
|
+
MapToComponentField()
|
|
292
|
+
], VegaTableExpandRowController.prototype, "currentData", void 0);
|
|
215
293
|
__decorate([
|
|
216
294
|
MapToComponentField()
|
|
217
295
|
], VegaTableExpandRowController.prototype, "rowExpandEventEmitter", void 0);
|
|
@@ -224,6 +302,9 @@ __decorate([
|
|
|
224
302
|
__decorate([
|
|
225
303
|
MapToComponentMethod('disconnectedCallback')
|
|
226
304
|
], VegaTableExpandRowController.prototype, "disconnectedCallback", null);
|
|
305
|
+
__decorate([
|
|
306
|
+
MapToComponentMethod('componentWillLoad')
|
|
307
|
+
], VegaTableExpandRowController.prototype, "componentWillLoad", null);
|
|
227
308
|
__decorate([
|
|
228
309
|
MapToComponentMethod('componentDidLoad')
|
|
229
310
|
], VegaTableExpandRowController.prototype, "componentDidLoad", null);
|
|
@@ -242,3 +323,6 @@ __decorate([
|
|
|
242
323
|
__decorate([
|
|
243
324
|
MapToComponentMethod('watchRowExpandable')
|
|
244
325
|
], VegaTableExpandRowController.prototype, "watchRowExpandable", null);
|
|
326
|
+
__decorate([
|
|
327
|
+
MapToComponentMethod('watchCurrentData')
|
|
328
|
+
], VegaTableExpandRowController.prototype, "watchCurrentData", null);
|