@limetech/lime-elements 40.6.0 → 40.6.1
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/CHANGELOG.md +7 -0
- package/dist/cjs/{adapt-color-contrast-Beo1IEl_.js → adapt-color-contrast-h6iwOfZd.js} +1 -1
- package/dist/cjs/{checkbox.template-BPk8WkQF.js → checkbox.template-CoNVC4Nf.js} +2 -2
- package/dist/cjs/{files-DI4jItxi.js → files-DpGigQ8k.js} +1 -1
- package/dist/cjs/{format-bytes-CpUKKU86.js → format-bytes-WTHVI718.js} +1 -4
- package/dist/cjs/{hotkeys-BtR8uxvl.js → hotkeys-D761KWnZ.js} +1 -0
- package/dist/cjs/{image-resize-CG2fitJT.js → image-resize-JlRLB97I.js} +1 -0
- package/dist/cjs/{image.template-DY7qwbuy.js → image.template-DlF-f23b.js} +1 -1
- package/dist/cjs/{index--B6-r0uo.js → index-BlsqxTB1.js} +1 -7
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/{isArrayLikeObject-U2Ddbw4n.js → isArrayLikeObject-BhSkOTkw.js} +17 -0
- package/dist/cjs/{language-CaqPKPyW.js → language-v-MMS6ym.js} +1 -1
- package/dist/cjs/lime-elements.cjs.js +2 -2
- package/dist/cjs/limel-3d-hover-effect-glow.cjs.entry.js +2 -2
- package/dist/cjs/limel-action-bar_3.cjs.entry.js +20 -18
- package/dist/cjs/limel-ai-avatar.cjs.entry.js +5 -5
- package/dist/cjs/limel-badge.cjs.entry.js +3 -3
- package/dist/cjs/limel-banner.cjs.entry.js +2 -2
- package/dist/cjs/limel-breadcrumbs_6.cjs.entry.js +80 -80
- package/dist/cjs/limel-button-group.cjs.entry.js +3 -3
- package/dist/cjs/limel-button.cjs.entry.js +4 -4
- package/dist/cjs/limel-callout.cjs.entry.js +6 -6
- package/dist/cjs/limel-card.cjs.entry.js +8 -7
- package/dist/cjs/limel-chart.cjs.entry.js +5 -5
- package/dist/cjs/limel-checkbox.cjs.entry.js +12 -10
- package/dist/cjs/limel-chip-set.cjs.entry.js +30 -39
- package/dist/cjs/limel-chip_2.cjs.entry.js +9 -9
- package/dist/cjs/limel-circular-progress.cjs.entry.js +2 -2
- package/dist/cjs/limel-code-diff.cjs.entry.js +25 -28
- package/dist/cjs/limel-code-editor.cjs.entry.js +17 -12
- package/dist/cjs/limel-collapsible-section.cjs.entry.js +8 -8
- package/dist/cjs/limel-color-picker-palette.cjs.entry.js +3 -3
- package/dist/cjs/limel-color-picker.cjs.entry.js +6 -5
- package/dist/cjs/limel-config.cjs.entry.js +3 -3
- package/dist/cjs/limel-date-picker.cjs.entry.js +8 -11
- package/dist/cjs/limel-dialog.cjs.entry.js +6 -9
- package/dist/cjs/limel-dock-button.cjs.entry.js +6 -11
- package/dist/cjs/limel-dock.cjs.entry.js +3 -3
- package/dist/cjs/limel-drag-handle.cjs.entry.js +6 -6
- package/dist/cjs/limel-dynamic-label.cjs.entry.js +1 -1
- package/dist/cjs/limel-email-viewer.cjs.entry.js +11 -17
- package/dist/cjs/limel-file-dropzone_2.cjs.entry.js +11 -12
- package/dist/cjs/limel-file-viewer.cjs.entry.js +1098 -1146
- package/dist/cjs/limel-file.cjs.entry.js +17 -16
- package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +100 -94
- package/dist/cjs/limel-flex-container.cjs.entry.js +2 -2
- package/dist/cjs/limel-form.cjs.entry.js +67 -68
- package/dist/cjs/limel-grid.cjs.entry.js +2 -2
- package/dist/cjs/limel-header.cjs.entry.js +2 -2
- package/dist/cjs/limel-help-content.cjs.entry.js +2 -2
- package/dist/cjs/limel-help.cjs.entry.js +3 -3
- package/dist/cjs/limel-helper-line_3.cjs.entry.js +12 -14
- package/dist/cjs/limel-hotkey_4.cjs.entry.js +23 -23
- package/dist/cjs/limel-icon-button.cjs.entry.js +4 -4
- package/dist/cjs/limel-icon.cjs.entry.js +15 -13
- package/dist/cjs/limel-info-tile.cjs.entry.js +10 -10
- package/dist/cjs/limel-list-item.cjs.entry.js +10 -10
- package/dist/cjs/limel-markdown.cjs.entry.js +25 -22
- package/dist/cjs/limel-masonry-layout.cjs.entry.js +6 -5
- package/dist/cjs/limel-menu-item-meta.cjs.entry.js +3 -3
- package/dist/cjs/limel-pagination-jump.cjs.entry.js +17 -15
- package/dist/cjs/limel-pagination.cjs.entry.js +10 -9
- package/dist/cjs/limel-picker.cjs.entry.js +31 -29
- package/dist/cjs/limel-popover_2.cjs.entry.js +25 -21
- package/dist/cjs/limel-profile-picture.cjs.entry.js +12 -11
- package/dist/cjs/limel-progress-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/limel-progress-flow.cjs.entry.js +11 -10
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +475 -407
- package/dist/cjs/limel-radio-button-group.cjs.entry.js +2 -2
- package/dist/cjs/limel-radio-button.cjs.entry.js +3 -3
- package/dist/cjs/limel-scroller.cjs.entry.js +180 -0
- package/dist/cjs/limel-select.cjs.entry.js +17 -17
- package/dist/cjs/limel-shortcut.cjs.entry.js +1 -1
- package/dist/cjs/limel-slider.cjs.entry.js +18 -27
- package/dist/cjs/limel-snackbar.cjs.entry.js +5 -5
- package/dist/cjs/limel-split-button.cjs.entry.js +1 -1
- package/dist/cjs/limel-switch.cjs.entry.js +3 -3
- package/dist/cjs/limel-tab-bar.cjs.entry.js +66 -97
- package/dist/cjs/limel-tab-panel.cjs.entry.js +12 -9
- package/dist/cjs/limel-table.cjs.entry.js +527 -106
- package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +15 -14
- package/dist/cjs/limel-text-editor.cjs.entry.js +3 -3
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{make-enter-clickable-NuTMC9MU.js → make-enter-clickable-BZHEWIJD.js} +19 -12
- package/dist/cjs/{markdown-exporter-9p7d3Q76.js → markdown-exporter-C-UW43FF.js} +1 -1
- package/dist/cjs/{markdown-parser-Cgv5Y9Z4.js → markdown-parser-ssDij8_l.js} +24 -22
- package/dist/cjs/{moment-CqRdiK10.js → moment-Cfsz2WF1.js} +1062 -833
- package/dist/cjs/{random-string-BTzDB2ee.js → random-string-CFCtFh5l.js} +1 -0
- package/dist/cjs/{render-list-component-5ZKWpCnM.js → render-list-component-BtAliHQp.js} +3 -5
- package/dist/cjs/{sv-BSR4W58y.js → sv-Co78RX70.js} +31 -3
- package/dist/cjs/{translations-DFFpR6AZ.js → translations-CNTWud2a.js} +5 -8
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/3d-hover-effect-glow/3d-hover-effect-glow.js +1 -1
- package/dist/collection/components/action-bar/action-bar-item/action-bar-item.js +8 -7
- package/dist/collection/components/action-bar/action-bar-item/action-bar-overflow-menu.js +1 -1
- package/dist/collection/components/action-bar/action-bar.js +6 -5
- package/dist/collection/components/ai-avatar/ai-avatar.js +1 -1
- package/dist/collection/components/badge/badge.js +2 -2
- package/dist/collection/components/banner/banner.js +1 -1
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +2 -2
- package/dist/collection/components/button/button.js +2 -2
- package/dist/collection/components/button-group/button-group.js +1 -1
- package/dist/collection/components/callout/callout.js +1 -1
- package/dist/collection/components/card/card.js +6 -5
- package/dist/collection/components/checkbox/checkbox.js +9 -7
- package/dist/collection/components/checkbox/checkbox.template.js +1 -1
- package/dist/collection/components/chip/chip.js +1 -1
- package/dist/collection/components/chip-set/chip-set-input-helpers.js +18 -21
- package/dist/collection/components/chip-set/chip-set.js +7 -13
- package/dist/collection/components/circular-progress/circular-progress.js +1 -1
- package/dist/collection/components/code-diff/code-diff.js +19 -22
- package/dist/collection/components/code-diff/diff-engine.js +2 -2
- package/dist/collection/components/code-editor/code-editor.js +8 -3
- package/dist/collection/components/collapsible-section/collapsible-section.js +1 -1
- package/dist/collection/components/color-picker/color-picker-palette.js +2 -2
- package/dist/collection/components/color-picker/color-picker.js +5 -4
- package/dist/collection/components/config/config.js +2 -2
- package/dist/collection/components/date-picker/date-picker.js +3 -6
- package/dist/collection/components/date-picker/flatpickr-adapter/deferred-destroy.js +4 -3
- package/dist/collection/components/date-picker/flatpickr-adapter/flatpickr-adapter.js +1 -1
- package/dist/collection/components/date-picker/pickers/month-picker.js +40 -36
- package/dist/collection/components/date-picker/pickers/quarter-picker.js +35 -30
- package/dist/collection/components/date-picker/pickers/year-picker.js +16 -20
- package/dist/collection/components/dialog/dialog.js +4 -7
- package/dist/collection/components/dock/dock-button/dock-button.js +4 -9
- package/dist/collection/components/dock/dock.js +2 -2
- package/dist/collection/components/drag-handle/drag-handle.js +1 -1
- package/dist/collection/components/email-viewer/email-loader.js +14 -10
- package/dist/collection/components/email-viewer/email-viewer.js +1 -1
- package/dist/collection/components/email-viewer/sanitize-email-html.js +1 -4
- package/dist/collection/components/email-viewer/split-email-address-list.js +4 -10
- package/dist/collection/components/file/file.js +11 -10
- package/dist/collection/components/file-dropzone/file-dropzone.js +1 -1
- package/dist/collection/components/file-input/file-input.js +7 -8
- package/dist/collection/components/file-viewer/file-viewer.js +12 -9
- package/dist/collection/components/flex-container/flex-container.js +1 -1
- package/dist/collection/components/form/fields/schema-field.js +1 -1
- package/dist/collection/components/form/form.js +2 -5
- package/dist/collection/components/form/form.test-schemas.js +8 -10
- package/dist/collection/components/form/templates/array-field.js +7 -9
- package/dist/collection/components/form/templates/common.js +19 -19
- package/dist/collection/components/form/templates/object-field.js +1 -1
- package/dist/collection/components/form/validation-display.js +2 -2
- package/dist/collection/components/form/validators/format.js +1 -0
- package/dist/collection/components/form/widgets/code-editor.js +6 -9
- package/dist/collection/components/form/widgets/date-picker.js +1 -3
- package/dist/collection/components/grid/grid.js +1 -1
- package/dist/collection/components/header/header.js +1 -1
- package/dist/collection/components/help/help-content.js +1 -1
- package/dist/collection/components/help/help.js +2 -2
- package/dist/collection/components/helper-line/helper-line.js +3 -3
- package/dist/collection/components/hotkey/hotkey.js +1 -1
- package/dist/collection/components/icon/icon.js +11 -9
- package/dist/collection/components/icon-button/icon-button.js +1 -1
- package/dist/collection/components/info-tile/info-tile.js +9 -9
- package/dist/collection/components/input-field/input-field.js +11 -11
- package/dist/collection/components/list/list-renderer.js +5 -7
- package/dist/collection/components/list/list.js +2 -2
- package/dist/collection/components/list-item/list-item.js +2 -2
- package/dist/collection/components/list-item/menu-item-meta/menu-item-meta.js +1 -1
- package/dist/collection/components/markdown/hydrate-custom-elements.js +6 -5
- package/dist/collection/components/markdown/image-intersection-observer.js +9 -8
- package/dist/collection/components/markdown/image-markdown-plugin.js +9 -7
- package/dist/collection/components/markdown/link-markdown-plugin.js +11 -10
- package/dist/collection/components/markdown/markdown.js +6 -5
- package/dist/collection/components/markdown/remove-empty-paragraphs-plugin.js +4 -5
- package/dist/collection/components/masonry-layout/masonry-layout.js +5 -4
- package/dist/collection/components/menu/menu.js +48 -46
- package/dist/collection/components/menu-list/menu-list-renderer.js +8 -8
- package/dist/collection/components/menu-list/menu-list.js +1 -1
- package/dist/collection/components/menu-surface/menu-surface.js +6 -8
- package/dist/collection/components/notched-outline/notched-outline.js +1 -1
- package/dist/collection/components/pagination/jump/pagination-jump.js +13 -11
- package/dist/collection/components/pagination/pagination.js +5 -4
- package/dist/collection/components/picker/picker.js +25 -23
- package/dist/collection/components/popover/popover.js +13 -10
- package/dist/collection/components/popover-surface/popover-surface.js +1 -1
- package/dist/collection/components/portal/contains.js +9 -8
- package/dist/collection/components/portal/portal.js +16 -16
- package/dist/collection/components/profile-picture/profile-picture.js +4 -3
- package/dist/collection/components/progress-flow/progress-flow.js +10 -9
- package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
- package/dist/collection/components/radio-button-group/radio-button.js +2 -2
- package/dist/collection/components/scroller/scroller.css +317 -0
- package/dist/collection/components/scroller/scroller.js +284 -0
- package/dist/collection/components/select/select.js +13 -11
- package/dist/collection/components/select/select.template.js +1 -3
- package/dist/collection/components/slider/get-percentage-class.js +9 -18
- package/dist/collection/components/slider/slider.js +2 -2
- package/dist/collection/components/tab-bar/tab-bar.css +7 -289
- package/dist/collection/components/tab-bar/tab-bar.js +59 -104
- package/dist/collection/components/tab-panel/tab-panel.js +11 -8
- package/dist/collection/components/table/columns.js +1 -3
- package/dist/collection/components/table/element-pool.js +1 -1
- package/dist/collection/components/table/table-selection.js +6 -5
- package/dist/collection/components/table/table.css +15 -17
- package/dist/collection/components/table/table.js +44 -39
- package/dist/collection/components/text-editor/link-menu/editor-link-menu.js +11 -10
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-command-utils/list-utils.js +1 -1
- package/dist/collection/components/text-editor/prosemirror-adapter/menu/menu-commands.js +6 -10
- package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/inserter.js +37 -40
- package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/node.js +2 -1
- package/dist/collection/components/text-editor/prosemirror-adapter/plugins/link/link-plugin.js +21 -20
- package/dist/collection/components/text-editor/prosemirror-adapter/plugins/menu-state-tracking-plugin.js +6 -5
- package/dist/collection/components/text-editor/prosemirror-adapter/plugins/trigger/factory-helpers/detect-trigger-removal.js +15 -14
- package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +40 -34
- package/dist/collection/components/text-editor/text-editor.js +1 -1
- package/dist/collection/components/text-editor/utils/metadata-utils.js +1 -1
- package/dist/collection/components/text-editor/utils/plugin-factory.js +3 -3
- package/dist/collection/components/tooltip/tooltip-content.js +1 -1
- package/dist/collection/components/tooltip/tooltip.js +2 -2
- package/dist/collection/global/icon-cache/factory.js +2 -3
- package/dist/collection/global/icon-cache/in-memory-icon-cache.js +2 -0
- package/dist/collection/global/translations.js +1 -3
- package/dist/collection/translations/fr.js +3 -3
- package/dist/collection/util/adapt-color-contrast.js +1 -1
- package/dist/collection/util/files.js +1 -1
- package/dist/collection/util/format-bytes.js +1 -4
- package/dist/collection/util/hotkeys.js +1 -0
- package/dist/collection/util/image-resize.js +1 -0
- package/dist/collection/util/language.js +1 -1
- package/dist/collection/util/make-enter-clickable.js +19 -12
- package/dist/collection/util/random-string.js +1 -0
- package/dist/collection/util/render-list-component.js +2 -4
- package/dist/esm/{adapt-color-contrast-Dgcw_h7C.js → adapt-color-contrast-BQoih_t0.js} +1 -1
- package/dist/esm/{checkbox.template-Cx_3u92S.js → checkbox.template-IDyv2bgn.js} +2 -2
- package/dist/esm/{files-DnkFEKoB.js → files-CKnLqPDj.js} +1 -1
- package/dist/esm/{format-bytes-u_sd2HMb.js → format-bytes-24yUSW40.js} +1 -4
- package/dist/esm/{hotkeys-BxrRWYts.js → hotkeys-DjmlD0Mw.js} +1 -0
- package/dist/esm/{image-resize-BTSG--2-.js → image-resize-Dv2HOgWN.js} +1 -0
- package/dist/esm/{image.template-wqMwmOF-.js → image.template-BGjw97m_.js} +1 -1
- package/dist/esm/{index-Bnc9lzk2.js → index-BU9IJqli.js} +1 -7
- package/dist/esm/index.js +1 -1
- package/dist/esm/{isArrayLikeObject-CJB8HbtH.js → isArrayLikeObject-tmUOLOWr.js} +17 -1
- package/dist/esm/{language-C3hECvXE.js → language-ChagAaNf.js} +1 -1
- package/dist/esm/lime-elements.js +3 -3
- package/dist/esm/limel-3d-hover-effect-glow.entry.js +2 -2
- package/dist/esm/limel-action-bar_3.entry.js +20 -18
- package/dist/esm/limel-ai-avatar.entry.js +5 -5
- package/dist/esm/limel-badge.entry.js +3 -3
- package/dist/esm/limel-banner.entry.js +2 -2
- package/dist/esm/limel-breadcrumbs_6.entry.js +80 -80
- package/dist/esm/limel-button-group.entry.js +3 -3
- package/dist/esm/limel-button.entry.js +4 -4
- package/dist/esm/limel-callout.entry.js +6 -6
- package/dist/esm/limel-card.entry.js +8 -7
- package/dist/esm/limel-chart.entry.js +5 -5
- package/dist/esm/limel-checkbox.entry.js +12 -10
- package/dist/esm/limel-chip-set.entry.js +30 -39
- package/dist/esm/limel-chip_2.entry.js +9 -9
- package/dist/esm/limel-circular-progress.entry.js +2 -2
- package/dist/esm/limel-code-diff.entry.js +25 -28
- package/dist/esm/limel-code-editor.entry.js +17 -12
- package/dist/esm/limel-collapsible-section.entry.js +8 -8
- package/dist/esm/limel-color-picker-palette.entry.js +3 -3
- package/dist/esm/limel-color-picker.entry.js +6 -5
- package/dist/esm/limel-config.entry.js +3 -3
- package/dist/esm/limel-date-picker.entry.js +8 -11
- package/dist/esm/limel-dialog.entry.js +6 -9
- package/dist/esm/limel-dock-button.entry.js +6 -11
- package/dist/esm/limel-dock.entry.js +3 -3
- package/dist/esm/limel-drag-handle.entry.js +6 -6
- package/dist/esm/limel-dynamic-label.entry.js +1 -1
- package/dist/esm/limel-email-viewer.entry.js +11 -17
- package/dist/esm/limel-file-dropzone_2.entry.js +11 -12
- package/dist/esm/limel-file-viewer.entry.js +1098 -1146
- package/dist/esm/limel-file.entry.js +17 -16
- package/dist/esm/limel-flatpickr-adapter.entry.js +100 -94
- package/dist/esm/limel-flex-container.entry.js +2 -2
- package/dist/esm/limel-form.entry.js +66 -67
- package/dist/esm/limel-grid.entry.js +2 -2
- package/dist/esm/limel-header.entry.js +2 -2
- package/dist/esm/limel-help-content.entry.js +2 -2
- package/dist/esm/limel-help.entry.js +3 -3
- package/dist/esm/limel-helper-line_3.entry.js +12 -14
- package/dist/esm/limel-hotkey_4.entry.js +23 -23
- package/dist/esm/limel-icon-button.entry.js +4 -4
- package/dist/esm/limel-icon.entry.js +15 -13
- package/dist/esm/limel-info-tile.entry.js +10 -10
- package/dist/esm/limel-list-item.entry.js +10 -10
- package/dist/esm/limel-markdown.entry.js +25 -22
- package/dist/esm/limel-masonry-layout.entry.js +6 -5
- package/dist/esm/limel-menu-item-meta.entry.js +3 -3
- package/dist/esm/limel-pagination-jump.entry.js +17 -15
- package/dist/esm/limel-pagination.entry.js +10 -9
- package/dist/esm/limel-picker.entry.js +31 -29
- package/dist/esm/limel-popover_2.entry.js +25 -21
- package/dist/esm/limel-profile-picture.entry.js +12 -11
- package/dist/esm/limel-progress-flow-item.entry.js +1 -1
- package/dist/esm/limel-progress-flow.entry.js +11 -10
- package/dist/esm/limel-prosemirror-adapter.entry.js +475 -407
- package/dist/esm/limel-radio-button-group.entry.js +2 -2
- package/dist/esm/limel-radio-button.entry.js +3 -3
- package/dist/esm/limel-scroller.entry.js +178 -0
- package/dist/esm/limel-select.entry.js +17 -17
- package/dist/esm/limel-shortcut.entry.js +1 -1
- package/dist/esm/limel-slider.entry.js +18 -27
- package/dist/esm/limel-snackbar.entry.js +5 -5
- package/dist/esm/limel-split-button.entry.js +1 -1
- package/dist/esm/limel-switch.entry.js +3 -3
- package/dist/esm/limel-tab-bar.entry.js +66 -97
- package/dist/esm/limel-tab-panel.entry.js +12 -9
- package/dist/esm/limel-table.entry.js +527 -106
- package/dist/esm/limel-text-editor-link-menu.entry.js +15 -14
- package/dist/esm/limel-text-editor.entry.js +3 -3
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{make-enter-clickable-BgTwPGeH.js → make-enter-clickable-CIf8aGSd.js} +19 -12
- package/dist/esm/{markdown-exporter--3_MaqwD.js → markdown-exporter-DblYRMhY.js} +1 -1
- package/dist/esm/{markdown-parser-DCf-3dKZ.js → markdown-parser-CAPDx7i8.js} +24 -22
- package/dist/esm/{moment-DQRNe8qq.js → moment-_DadZLWp.js} +1062 -833
- package/dist/esm/{random-string-JbKhhoXs.js → random-string-BrjD-ITe.js} +1 -0
- package/dist/esm/{render-list-component-cicbMp0l.js → render-list-component-J1IzNpbv.js} +3 -5
- package/dist/esm/{sv-CY-6-yEp.js → sv-DpsDSi7k.js} +31 -3
- package/dist/esm/{translations-DMtX4tTX.js → translations-Y4i8PVc9.js} +5 -8
- package/dist/lime-elements/index.esm.js +1 -1
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/{p-3916b316.entry.js → p-03cb609e.entry.js} +1 -1
- package/dist/lime-elements/p-05038bbb.entry.js +1 -0
- package/dist/lime-elements/{p-835149c4.entry.js → p-0d6925f4.entry.js} +1 -1
- package/dist/lime-elements/p-0e13ec91.entry.js +1 -0
- package/dist/lime-elements/p-159603cf.entry.js +159 -0
- package/dist/lime-elements/p-22fd1c87.entry.js +1 -0
- package/dist/lime-elements/p-24yUSW40.js +1 -0
- package/dist/lime-elements/{p-f717cd7a.entry.js → p-271662d4.entry.js} +1 -1
- package/dist/lime-elements/{p-c2a60508.entry.js → p-29c73bdf.entry.js} +1 -1
- package/dist/lime-elements/{p-deceda00.entry.js → p-2a902e77.entry.js} +1 -1
- package/dist/lime-elements/{p-d0cec424.entry.js → p-2b033dfa.entry.js} +1 -1
- package/dist/lime-elements/{p-acba5700.entry.js → p-2b2253d4.entry.js} +1 -1
- package/dist/lime-elements/p-2e33d2a4.entry.js +1 -0
- package/dist/lime-elements/p-31226737.entry.js +13 -0
- package/dist/lime-elements/{p-36ce4fbc.entry.js → p-31f314e6.entry.js} +1 -1
- package/dist/lime-elements/p-32a050a3.entry.js +1 -0
- package/dist/lime-elements/{p-3735111e.entry.js → p-3cfe0eaf.entry.js} +1 -1
- package/dist/lime-elements/{p-fbcd99a3.entry.js → p-3d3bdf45.entry.js} +1 -1
- package/dist/lime-elements/p-440a0b43.entry.js +1 -0
- package/dist/lime-elements/p-45c39fb4.entry.js +1 -0
- package/dist/lime-elements/p-45fde7a1.entry.js +1 -0
- package/dist/lime-elements/p-48afa6b7.entry.js +1 -0
- package/dist/lime-elements/{p-f04f7c8e.entry.js → p-4a88d365.entry.js} +1 -1
- package/dist/lime-elements/p-4b75e653.entry.js +1 -0
- package/dist/lime-elements/p-4dfd1962.entry.js +67 -0
- package/dist/lime-elements/{p-5698e493.entry.js → p-4ecbc9f4.entry.js} +1 -1
- package/dist/lime-elements/p-5386c629.entry.js +1 -0
- package/dist/lime-elements/{p-2e568c56.entry.js → p-54a9f48f.entry.js} +1 -1
- package/dist/lime-elements/{p-0fba64eb.entry.js → p-5df21b25.entry.js} +2 -2
- package/dist/lime-elements/{p-408c4dcb.entry.js → p-5f5c6e7d.entry.js} +1 -1
- package/dist/lime-elements/{p-052c3bc6.entry.js → p-681cb6de.entry.js} +1 -1
- package/dist/lime-elements/p-6adc7c88.entry.js +1 -0
- package/dist/lime-elements/{p-90df3e1b.entry.js → p-6d9961f7.entry.js} +1 -1
- package/dist/lime-elements/{p-74bd0c1a.entry.js → p-7b4351f6.entry.js} +1 -1
- package/dist/lime-elements/{p-3fd7e8aa.entry.js → p-7eab1341.entry.js} +1 -1
- package/dist/lime-elements/p-80153f45.entry.js +1 -0
- package/dist/lime-elements/{p-35fa1063.entry.js → p-85318636.entry.js} +1 -1
- package/dist/lime-elements/p-8988b7e1.entry.js +1 -0
- package/dist/lime-elements/{p-4ffbfc79.entry.js → p-8ac79ef5.entry.js} +1 -1
- package/dist/lime-elements/{p-4902fb3f.entry.js → p-9218fa6a.entry.js} +1 -1
- package/dist/lime-elements/p-92669910.entry.js +1 -0
- package/dist/lime-elements/{p-38b09f87.entry.js → p-9415411e.entry.js} +1 -1
- package/dist/lime-elements/p-95ccd9e7.entry.js +1 -0
- package/dist/lime-elements/{p-cb407bef.entry.js → p-9afa4721.entry.js} +1 -1
- package/dist/lime-elements/{p-54dcf46f.entry.js → p-9c8c2fb7.entry.js} +1 -1
- package/dist/lime-elements/{p-B8hoCfhT.js → p-B3YP9GOq.js} +1 -1
- package/dist/lime-elements/{p-Dgcw_h7C.js → p-BQoih_t0.js} +1 -1
- package/dist/lime-elements/{p-Bnc9lzk2.js → p-BU9IJqli.js} +1 -1
- package/dist/lime-elements/{p-CGVVDGcv.js → p-Bkvc4sus.js} +1 -1
- package/dist/lime-elements/{p-BPzhuHcl.js → p-Bvyt2bmV.js} +1 -1
- package/dist/lime-elements/{p-BgTwPGeH.js → p-CIf8aGSd.js} +1 -1
- package/dist/lime-elements/{p-C3hECvXE.js → p-ChagAaNf.js} +1 -1
- package/dist/lime-elements/p-DTcfed02.js +3 -0
- package/dist/lime-elements/p-DWMfAkOE.js +1 -0
- package/dist/lime-elements/{p-BY85K-4J.js → p-DqQOawxc.js} +1 -1
- package/dist/lime-elements/{p-CC4Usa-Q.js → p-I0PrvthC.js} +1 -1
- package/dist/lime-elements/p-N9vxZMhe.js +1 -0
- package/dist/lime-elements/{p-DsDkl4Sy.js → p-ZDFVISfu.js} +3 -3
- package/dist/lime-elements/p-a1c69e0c.entry.js +1 -0
- package/dist/lime-elements/{p-2daf0482.entry.js → p-a1d1470c.entry.js} +1 -1
- package/dist/lime-elements/{p-cef66e53.entry.js → p-a2e6f16e.entry.js} +1 -1
- package/dist/lime-elements/p-a550ba18.entry.js +1 -0
- package/dist/lime-elements/{p-d146feda.entry.js → p-a65eb58e.entry.js} +1 -1
- package/dist/lime-elements/p-ab8021b9.entry.js +1 -0
- package/dist/lime-elements/{p-03fb2603.entry.js → p-b22b52a1.entry.js} +1 -1
- package/dist/lime-elements/p-b6c0dc91.entry.js +23 -0
- package/dist/lime-elements/{p-c2a3ca7c.entry.js → p-b6d39581.entry.js} +1 -1
- package/dist/lime-elements/{p-8475a3b8.entry.js → p-c439b68b.entry.js} +1 -1
- package/dist/lime-elements/p-d19c7a3a.entry.js +1 -0
- package/dist/lime-elements/{p-7cbf50fc.entry.js → p-d1e5dd12.entry.js} +1 -1
- package/dist/lime-elements/p-de4719a6.entry.js +1 -0
- package/dist/lime-elements/{p-b81a2728.entry.js → p-e02e2c5f.entry.js} +1 -1
- package/dist/lime-elements/{p-d351b9ae.entry.js → p-e6a34047.entry.js} +1 -1
- package/dist/lime-elements/p-eF09GxA_.js +1 -0
- package/dist/lime-elements/{p-8fa9c9ea.entry.js → p-ee719744.entry.js} +1 -1
- package/dist/lime-elements/{p-d3bd4b80.entry.js → p-f04e2897.entry.js} +3 -3
- package/dist/lime-elements/p-f3cae1e7.entry.js +1 -0
- package/dist/lime-elements/{p-8115da75.entry.js → p-f4a0b1bc.entry.js} +1 -1
- package/dist/lime-elements/{p-4855dc9b.entry.js → p-f82f72e7.entry.js} +1 -1
- package/dist/lime-elements/{p-2d84ea04.entry.js → p-f97ec7a5.entry.js} +1 -1
- package/dist/lime-elements/{p-21109d9b.entry.js → p-fdd674fc.entry.js} +1 -1
- package/dist/lime-elements/{p-459eea13.entry.js → p-fdec09e9.entry.js} +1 -1
- package/dist/lime-elements/{p-2f57c3fa.entry.js → p-fe492ff3.entry.js} +1 -1
- package/dist/lime-elements/{p-65cded0e.entry.js → p-ff1a8b2e.entry.js} +1 -1
- package/dist/types/components/chip-set/chip-set-input-helpers.d.ts +1 -1
- package/dist/types/components/pagination/jump/pagination-jump.d.ts +1 -1
- package/dist/types/components/scroller/scroller.d.ts +67 -0
- package/dist/types/components/tab-bar/tab-bar.d.ts +13 -16
- package/dist/types/components.d.ts +128 -0
- package/dist/types/global/icon-cache/factory.d.ts +2 -2
- package/dist/types/global/translations.d.ts +2 -2
- package/package.json +12 -12
- package/dist/lime-elements/p-19344984.entry.js +0 -13
- package/dist/lime-elements/p-1e93473a.entry.js +0 -1
- package/dist/lime-elements/p-20658306.entry.js +0 -1
- package/dist/lime-elements/p-26c5c6b9.entry.js +0 -1
- package/dist/lime-elements/p-452b9b01.entry.js +0 -1
- package/dist/lime-elements/p-4aae63bd.entry.js +0 -1
- package/dist/lime-elements/p-507cc8a1.entry.js +0 -159
- package/dist/lime-elements/p-531b6a64.entry.js +0 -1
- package/dist/lime-elements/p-54793c06.entry.js +0 -1
- package/dist/lime-elements/p-5d974afa.entry.js +0 -1
- package/dist/lime-elements/p-66b125f2.entry.js +0 -1
- package/dist/lime-elements/p-7e212fa7.entry.js +0 -1
- package/dist/lime-elements/p-82696d24.entry.js +0 -1
- package/dist/lime-elements/p-9ac39039.entry.js +0 -1
- package/dist/lime-elements/p-9b631363.entry.js +0 -1
- package/dist/lime-elements/p-DQJU9gzh.js +0 -1
- package/dist/lime-elements/p-DpJgXIWf.js +0 -1
- package/dist/lime-elements/p-a1de9bbe.entry.js +0 -1
- package/dist/lime-elements/p-a71f6e87.entry.js +0 -67
- package/dist/lime-elements/p-bd7b3f8e.entry.js +0 -1
- package/dist/lime-elements/p-be8610ff.entry.js +0 -1
- package/dist/lime-elements/p-c72e5007.entry.js +0 -1
- package/dist/lime-elements/p-cafec335.entry.js +0 -1
- package/dist/lime-elements/p-d6dadc61.entry.js +0 -1
- package/dist/lime-elements/p-d93b7b9f.entry.js +0 -23
- package/dist/lime-elements/p-dc9cd793.entry.js +0 -1
- package/dist/lime-elements/p-dd62042a.entry.js +0 -1
- package/dist/lime-elements/p-pk5KIdKH.js +0 -1
- package/dist/lime-elements/p-u_sd2HMb.js +0 -1
- package/dist/lime-elements/p-zo6O9LC9.js +0 -3
- /package/dist/lime-elements/{p-JbKhhoXs.js → p-BrjD-ITe.js} +0 -0
- /package/dist/lime-elements/{p-BxrRWYts.js → p-DjmlD0Mw.js} +0 -0
- /package/dist/lime-elements/{p-BTSG--2-.js → p-Dv2HOgWN.js} +0 -0
|
@@ -50,19 +50,20 @@ export class TableSelection {
|
|
|
50
50
|
return this.getTable().getRow(item).getData();
|
|
51
51
|
};
|
|
52
52
|
this.updateRowSelectors = (changeSet) => {
|
|
53
|
-
for (const
|
|
54
|
-
this.updateRowSelector(
|
|
53
|
+
for (const index of changeSet.indexes) {
|
|
54
|
+
this.updateRowSelector(this.getRowByIndex(index), changeSet.selected);
|
|
55
|
+
}
|
|
55
56
|
};
|
|
56
57
|
this.updateRowSelector = (row, checked) => {
|
|
57
58
|
// Look up by class instead of cell index: when `movableRows` is
|
|
58
59
|
// enabled, the drag-handle column occupies index 0 and the
|
|
59
60
|
// row-selector shifts to index 1. Keep the `.limel-table--row-selector`
|
|
60
61
|
// class in sync with `getRowSelectorColumnDefinition` if renamed.
|
|
61
|
-
const
|
|
62
|
+
const checkbox = row
|
|
62
63
|
.getElement()
|
|
63
64
|
.querySelector(`.limel-table--row-selector ${LIMEL_CHECKBOX}`);
|
|
64
|
-
if (
|
|
65
|
-
|
|
65
|
+
if (checkbox) {
|
|
66
|
+
checkbox.checked = checked;
|
|
66
67
|
}
|
|
67
68
|
};
|
|
68
69
|
this.getActiveRows = () => {
|
|
@@ -419,15 +419,8 @@
|
|
|
419
419
|
box-sizing: border-box;
|
|
420
420
|
border: 1px solid #2975DD;
|
|
421
421
|
}
|
|
422
|
-
.tabulator .tabulator-tableholder .tabulator-range-overlay .tabulator-range.tabulator-range-
|
|
423
|
-
|
|
424
|
-
position: absolute;
|
|
425
|
-
right: -3px;
|
|
426
|
-
bottom: -3px;
|
|
427
|
-
width: 6px;
|
|
428
|
-
height: 6px;
|
|
429
|
-
background-color: #2975DD;
|
|
430
|
-
border-radius: 999px;
|
|
422
|
+
.tabulator .tabulator-tableholder .tabulator-range-overlay .tabulator-range.tabulator-range-fill-preview {
|
|
423
|
+
border-style: dashed;
|
|
431
424
|
}
|
|
432
425
|
.tabulator .tabulator-tableholder .tabulator-range-overlay .tabulator-range-cell-active {
|
|
433
426
|
position: absolute;
|
|
@@ -927,6 +920,18 @@
|
|
|
927
920
|
color: #d00;
|
|
928
921
|
}
|
|
929
922
|
|
|
923
|
+
.tabulator-range-fill-handle {
|
|
924
|
+
position: absolute;
|
|
925
|
+
right: -3px;
|
|
926
|
+
bottom: -3px;
|
|
927
|
+
width: 6px;
|
|
928
|
+
height: 6px;
|
|
929
|
+
background-color: #2975DD;
|
|
930
|
+
border-radius: 999px;
|
|
931
|
+
cursor: crosshair;
|
|
932
|
+
pointer-events: auto;
|
|
933
|
+
}
|
|
934
|
+
|
|
930
935
|
.tabulator-toggle {
|
|
931
936
|
box-sizing: border-box;
|
|
932
937
|
display: flex;
|
|
@@ -1084,16 +1089,9 @@
|
|
|
1084
1089
|
left: 8px;
|
|
1085
1090
|
right: initial;
|
|
1086
1091
|
}
|
|
1087
|
-
.tabulator.tabulator-rtl .tabulator-
|
|
1088
|
-
content: "";
|
|
1089
|
-
position: absolute;
|
|
1092
|
+
.tabulator.tabulator-rtl .tabulator-range-fill-handle {
|
|
1090
1093
|
left: -3px;
|
|
1091
1094
|
right: initial;
|
|
1092
|
-
bottom: -3px;
|
|
1093
|
-
width: 6px;
|
|
1094
|
-
height: 6px;
|
|
1095
|
-
background-color: #2975DD;
|
|
1096
|
-
border-radius: 999px;
|
|
1097
1095
|
}
|
|
1098
1096
|
.tabulator.tabulator-rtl .tabulator-row .tabulator-cell {
|
|
1099
1097
|
border-right: initial;
|
|
@@ -185,10 +185,7 @@ export class Table {
|
|
|
185
185
|
this.refreshRemotePaginator();
|
|
186
186
|
}
|
|
187
187
|
pageChanged() {
|
|
188
|
-
if (!this.tabulator) {
|
|
189
|
-
return;
|
|
190
|
-
}
|
|
191
|
-
if (this.tabulator.getPage() === this.page) {
|
|
188
|
+
if (!this.tabulator || this.tabulator.getPage() === this.page) {
|
|
192
189
|
return;
|
|
193
190
|
}
|
|
194
191
|
this.tabulator.setPage(this.page);
|
|
@@ -204,7 +201,7 @@ export class Table {
|
|
|
204
201
|
const oldIds = this.getRowIds(oldData);
|
|
205
202
|
const shouldReplace = !this.areEqualIds(newIds, oldIds) ||
|
|
206
203
|
!this.isSameOrder(newIds, oldIds);
|
|
207
|
-
setTimeout(() => {
|
|
204
|
+
setTimeout(async () => {
|
|
208
205
|
if (!this.tabulator || !this.initialized) {
|
|
209
206
|
return;
|
|
210
207
|
}
|
|
@@ -216,19 +213,18 @@ export class Table {
|
|
|
216
213
|
}
|
|
217
214
|
if (!areRowsEqual(newData, oldData)) {
|
|
218
215
|
const patched = this.fillMissingFields(newData, oldData);
|
|
219
|
-
this.tabulator.updateData(patched)
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
});
|
|
216
|
+
await this.tabulator.updateData(patched);
|
|
217
|
+
if (!this.tabulator) {
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
this.reformatChangedRows(newData, oldData);
|
|
221
|
+
this.setSelection();
|
|
226
222
|
return;
|
|
227
223
|
}
|
|
228
224
|
if (newData.length > 0) {
|
|
229
225
|
this.tabulator.updateOrAddData(newData);
|
|
230
226
|
}
|
|
231
|
-
});
|
|
227
|
+
}, 0);
|
|
232
228
|
}
|
|
233
229
|
updateColumns(newColumns, oldColumns) {
|
|
234
230
|
if (!this.tabulator || !this.initialized) {
|
|
@@ -297,10 +293,11 @@ export class Table {
|
|
|
297
293
|
if (this.hasWarnedOnConflictingMovableAndSortable) {
|
|
298
294
|
return;
|
|
299
295
|
}
|
|
300
|
-
if (this.movableRows && this.sortableColumns) {
|
|
301
|
-
|
|
302
|
-
this.hasWarnedOnConflictingMovableAndSortable = true;
|
|
296
|
+
if (!(this.movableRows && this.sortableColumns)) {
|
|
297
|
+
return;
|
|
303
298
|
}
|
|
299
|
+
console.warn('limel-table: combining `movableRows` with `sortableColumns` is not recommended. Sorting reorders the rows visually, so dragging a row to a new position will not match the underlying data order. Set `sortableColumns` to `false` when using `movableRows`.');
|
|
300
|
+
this.hasWarnedOnConflictingMovableAndSortable = true;
|
|
304
301
|
}
|
|
305
302
|
updateSorting(newValue, oldValue) {
|
|
306
303
|
if (!this.tabulator || !this.initialized) {
|
|
@@ -316,11 +313,12 @@ export class Table {
|
|
|
316
313
|
}
|
|
317
314
|
reformatChangedRows(newData, oldData) {
|
|
318
315
|
for (const [i, newRow] of newData.entries()) {
|
|
319
|
-
if (
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
316
|
+
if (!(newRow === null || newRow === void 0 ? void 0 : newRow.id) || isEqual(newRow, oldData[i])) {
|
|
317
|
+
continue;
|
|
318
|
+
}
|
|
319
|
+
const row = this.tabulator.getRow(newRow.id);
|
|
320
|
+
if (row) {
|
|
321
|
+
row.reformat();
|
|
324
322
|
}
|
|
325
323
|
}
|
|
326
324
|
}
|
|
@@ -330,7 +328,9 @@ export class Table {
|
|
|
330
328
|
if (!oldRow) {
|
|
331
329
|
return newRow;
|
|
332
330
|
}
|
|
333
|
-
const missingKeys = Object.keys(oldRow).filter(
|
|
331
|
+
const missingKeys = Object.keys(oldRow).filter(
|
|
332
|
+
// eslint-disable-next-line unicorn/no-computed-property-existence-check -- `in` must also see inherited properties, e.g. getters on class instances
|
|
333
|
+
(key) => !(key in newRow));
|
|
334
334
|
if (missingKeys.length === 0) {
|
|
335
335
|
return newRow;
|
|
336
336
|
}
|
|
@@ -453,10 +453,11 @@ export class Table {
|
|
|
453
453
|
}
|
|
454
454
|
}
|
|
455
455
|
initTableSelection() {
|
|
456
|
-
if (this.selectable) {
|
|
457
|
-
|
|
458
|
-
this.tableSelection.setSelection(this.selection);
|
|
456
|
+
if (!this.selectable) {
|
|
457
|
+
return;
|
|
459
458
|
}
|
|
459
|
+
this.tableSelection = new TableSelection(() => this.tabulator, this.pool, this.select, (key) => this.getTranslation(key));
|
|
460
|
+
this.tableSelection.setSelection(this.selection);
|
|
460
461
|
}
|
|
461
462
|
setSelection() {
|
|
462
463
|
if (!(this.tabulator && this.tableSelection)) {
|
|
@@ -501,10 +502,11 @@ export class Table {
|
|
|
501
502
|
catch (_c) {
|
|
502
503
|
return;
|
|
503
504
|
}
|
|
504
|
-
if (scrollContainer) {
|
|
505
|
-
|
|
506
|
-
scrollContainer.scrollLeft = scrollLeft;
|
|
505
|
+
if (!scrollContainer) {
|
|
506
|
+
return;
|
|
507
507
|
}
|
|
508
|
+
scrollContainer.scrollTop = scrollTop;
|
|
509
|
+
scrollContainer.scrollLeft = scrollLeft;
|
|
508
510
|
}
|
|
509
511
|
/**
|
|
510
512
|
* Tabulator's scrollable row container, inside `<limel-table>`'s
|
|
@@ -668,10 +670,11 @@ export class Table {
|
|
|
668
670
|
this.changePage.emit(page);
|
|
669
671
|
}
|
|
670
672
|
handleRenderComplete() {
|
|
671
|
-
if (this.tabulator && this.shouldSort) {
|
|
672
|
-
|
|
673
|
-
this.tabulator.setSort(this.getInitialSorting());
|
|
673
|
+
if (!(this.tabulator && this.shouldSort)) {
|
|
674
|
+
return;
|
|
674
675
|
}
|
|
676
|
+
this.shouldSort = false;
|
|
677
|
+
this.tabulator.setSort(this.getInitialSorting());
|
|
675
678
|
}
|
|
676
679
|
onClickRow(event, row) {
|
|
677
680
|
if (row.getPosition === undefined) {
|
|
@@ -690,8 +693,9 @@ export class Table {
|
|
|
690
693
|
this.activate.emit(this.activeRow);
|
|
691
694
|
}
|
|
692
695
|
formatRows() {
|
|
693
|
-
|
|
694
|
-
|
|
696
|
+
for (const row of this.tabulator.getRows()) {
|
|
697
|
+
this.formatRow(row);
|
|
698
|
+
}
|
|
695
699
|
}
|
|
696
700
|
formatRow(row) {
|
|
697
701
|
if (this.isActiveRow(row)) {
|
|
@@ -703,11 +707,12 @@ export class Table {
|
|
|
703
707
|
const interactiveFeedbackElement = row
|
|
704
708
|
.getElement()
|
|
705
709
|
.querySelectorAll('.interactive-feedback');
|
|
706
|
-
if (interactiveFeedbackElement.length
|
|
707
|
-
|
|
708
|
-
element.classList.add('interactive-feedback');
|
|
709
|
-
row.getElement().prepend(element);
|
|
710
|
+
if (interactiveFeedbackElement.length > 0) {
|
|
711
|
+
return;
|
|
710
712
|
}
|
|
713
|
+
const element = row.getElement().ownerDocument.createElement('div');
|
|
714
|
+
element.classList.add('interactive-feedback');
|
|
715
|
+
row.getElement().prepend(element);
|
|
711
716
|
}
|
|
712
717
|
isActiveRow(row) {
|
|
713
718
|
var _a;
|
|
@@ -752,13 +757,13 @@ export class Table {
|
|
|
752
757
|
render() {
|
|
753
758
|
var _a, _b;
|
|
754
759
|
const totalRows = (_a = this.totalRows) !== null && _a !== void 0 ? _a : this.data.length;
|
|
755
|
-
return (h(Host, { key: '
|
|
760
|
+
return (h(Host, { key: 'fbc213159bb430688bad03e74964e10edfcd829d', class: {
|
|
756
761
|
'has-low-density': this.layout === 'lowDensity',
|
|
757
762
|
'has-pagination-on-top': this.paginationLocation === 'top',
|
|
758
763
|
'has-aggregation': this.hasAggregation(this.columns),
|
|
759
764
|
'has-pagination': totalRows > this.pageSize,
|
|
760
765
|
'has-selection': (_b = this.tableSelection) === null || _b === void 0 ? void 0 : _b.hasSelection,
|
|
761
|
-
} }, h("div", { key: '
|
|
766
|
+
} }, h("div", { key: 'cc988b86f74549d7ad773e748fef7cd92345efa5', id: "tabulator-container" }, h("div", { key: 'fd765d0050979609eaf4b9192f74b0abcf2cc0bd', id: "tabulator-loader", style: { display: this.loading ? 'flex' : 'none' } }, h("limel-spinner", { key: '8416fbae6d90b71ee9151f7c28450373a685fc99', size: "large" })), this.renderEmptyMessage(), this.renderSelectAll(), h("div", { key: '52aa28d0e575d8da169b8c6bb84d93b6f73f9a12', id: "tabulator-table" }))));
|
|
762
767
|
}
|
|
763
768
|
renderSelectAll() {
|
|
764
769
|
var _a, _b, _c;
|
|
@@ -93,22 +93,23 @@ export class TextEditorLinkMenu {
|
|
|
93
93
|
this.focusOnLinkInput();
|
|
94
94
|
}
|
|
95
95
|
focusOnLinkInput() {
|
|
96
|
-
if (this.linkInput) {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
96
|
+
if (!this.linkInput) {
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
const inputField = this.linkInput.shadowRoot.querySelector('input');
|
|
100
|
+
if (inputField) {
|
|
101
|
+
requestAnimationFrame(() => {
|
|
102
|
+
inputField.focus();
|
|
103
|
+
});
|
|
103
104
|
}
|
|
104
105
|
}
|
|
105
106
|
render() {
|
|
106
107
|
var _a, _b;
|
|
107
108
|
const isValid = this.isValid(this.link.href);
|
|
108
109
|
return [
|
|
109
|
-
h("limel-input-field", { key: '
|
|
110
|
-
h("limel-input-field", { key: '
|
|
111
|
-
h("div", { key: '
|
|
110
|
+
h("limel-input-field", { key: '49edffd1f2b8dbc6fdb6824251541883f8a96d44', label: this.getTranslation('editor-link-menu.text'), value: ((_a = this.link) === null || _a === void 0 ? void 0 : _a.text) || '', leadingIcon: "text_cursor", onChange: this.handleLinkTitleChange, onKeyDown: this.handleKeyDown }),
|
|
111
|
+
h("limel-input-field", { key: '8aafc8d1496b9d27484e4a4e862b247dfc86b4bc', label: this.getTranslation('editor-link-menu.link'), value: ((_b = this.link) === null || _b === void 0 ? void 0 : _b.href) || '', type: "text", leadingIcon: "-lime-text-link", trailingIcon: "external_link", invalid: !isValid, onChange: this.handleLinkValueChange, onAction: this.handleLinkInputAction, onKeyDown: this.handleKeyDown, ref: (el) => (this.linkInput = el) }),
|
|
112
|
+
h("div", { key: '39cc9d707d8d9aa15458b78e23905fba7af2eee6', class: "actions" }, h("limel-button", { key: '220e2ac8c3984b9d49dab3f2a5f94be025de448b', label: this.getTranslation('cancel'), onClick: this.handleCancel }), h("limel-button", { key: '23369649c3ef9fbf5bfeb38b986baa0271f2efe6', primary: true, label: this.getTranslation('save'), disabled: !isValid, onClick: this.handleSave, ref: (el) => (this.saveButton = el), slot: "button" })),
|
|
112
113
|
];
|
|
113
114
|
}
|
|
114
115
|
static get is() { return "limel-text-editor-link-menu"; }
|
|
@@ -234,7 +234,7 @@ const convertListsAndWrapRuns = (tr, state, targetType, startIndex, endIndex) =>
|
|
|
234
234
|
const inRange = i >= startIndex && i <= endIndex;
|
|
235
235
|
const isList = isListNode(child, state.schema);
|
|
236
236
|
if (inRange && child.type === state.schema.nodes.paragraph) {
|
|
237
|
-
runStart
|
|
237
|
+
runStart !== null && runStart !== void 0 ? runStart : (runStart = pos);
|
|
238
238
|
runEnd = pos + child.nodeSize;
|
|
239
239
|
}
|
|
240
240
|
else if (runStart !== null && runEnd !== null) {
|
|
@@ -77,17 +77,13 @@ const toggleNodeType = (schema, type, attrs = {}, shouldWrap = false) => {
|
|
|
77
77
|
}
|
|
78
78
|
return true;
|
|
79
79
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return wrapIn(nodeType, attrs)(state, dispatch);
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
return setBlockType(nodeType, attrs)(state, dispatch);
|
|
89
|
-
}
|
|
80
|
+
if (hasActiveWrap) {
|
|
81
|
+
return lift(state, dispatch);
|
|
82
|
+
}
|
|
83
|
+
if (shouldWrap) {
|
|
84
|
+
return wrapIn(nodeType, attrs)(state, dispatch);
|
|
90
85
|
}
|
|
86
|
+
return setBlockType(nodeType, attrs)(state, dispatch);
|
|
91
87
|
}
|
|
92
88
|
return false;
|
|
93
89
|
};
|
package/dist/collection/components/text-editor/prosemirror-adapter/plugins/image/inserter.js
CHANGED
|
@@ -61,11 +61,12 @@ const replaceImageNodeByFileInfoId = (view, fileInfoId, buildNode) => {
|
|
|
61
61
|
if (found) {
|
|
62
62
|
return false;
|
|
63
63
|
}
|
|
64
|
-
if (node.attrs.fileInfoId
|
|
65
|
-
|
|
66
|
-
found = true;
|
|
67
|
-
return false;
|
|
64
|
+
if (node.attrs.fileInfoId !== fileInfoId) {
|
|
65
|
+
return true;
|
|
68
66
|
}
|
|
67
|
+
tr.replaceWith(pos, pos + node.nodeSize, buildNode(node));
|
|
68
|
+
found = true;
|
|
69
|
+
return false;
|
|
69
70
|
});
|
|
70
71
|
if (found) {
|
|
71
72
|
dispatch(tr);
|
|
@@ -137,24 +138,20 @@ const isImageNode = (node) => {
|
|
|
137
138
|
if (node.type.name === 'image') {
|
|
138
139
|
return true;
|
|
139
140
|
}
|
|
140
|
-
|
|
141
|
-
// eslint-disable-next-line unicorn/no-array-for-each
|
|
142
|
-
node.content.forEach((child) => {
|
|
141
|
+
for (const child of node.children) {
|
|
143
142
|
if (isImageNode(child)) {
|
|
144
|
-
|
|
143
|
+
return true;
|
|
145
144
|
}
|
|
146
|
-
}
|
|
147
|
-
return
|
|
145
|
+
}
|
|
146
|
+
return false;
|
|
148
147
|
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
// eslint-disable-next-line unicorn/no-array-for-each
|
|
152
|
-
node.forEach((child) => {
|
|
148
|
+
if (node instanceof Fragment) {
|
|
149
|
+
for (const child of node.content) {
|
|
153
150
|
if (isImageNode(child)) {
|
|
154
|
-
|
|
151
|
+
return true;
|
|
155
152
|
}
|
|
156
|
-
}
|
|
157
|
-
return
|
|
153
|
+
}
|
|
154
|
+
return false;
|
|
158
155
|
}
|
|
159
156
|
return false;
|
|
160
157
|
};
|
|
@@ -165,8 +162,7 @@ const isImageNode = (node) => {
|
|
|
165
162
|
*/
|
|
166
163
|
const filterImageNodes = (fragment) => {
|
|
167
164
|
const filteredChildren = [];
|
|
168
|
-
|
|
169
|
-
fragment.forEach((child) => {
|
|
165
|
+
for (const child of fragment.content) {
|
|
170
166
|
if (!isImageNode(child)) {
|
|
171
167
|
if (child.content.size > 0) {
|
|
172
168
|
const filteredContent = filterImageNodes(child.content);
|
|
@@ -177,7 +173,7 @@ const filterImageNodes = (fragment) => {
|
|
|
177
173
|
filteredChildren.push(child);
|
|
178
174
|
}
|
|
179
175
|
}
|
|
180
|
-
}
|
|
176
|
+
}
|
|
181
177
|
return Fragment.fromArray(filteredChildren);
|
|
182
178
|
};
|
|
183
179
|
/**
|
|
@@ -217,27 +213,28 @@ function handlePastedImages(view, clipboardData, inlineImages) {
|
|
|
217
213
|
let isImageFilePasted = false;
|
|
218
214
|
const files = [...(clipboardData.files || [])];
|
|
219
215
|
for (const file of files) {
|
|
220
|
-
if (isImageFile(file, clipboardData)) {
|
|
221
|
-
|
|
222
|
-
const reader = new FileReader();
|
|
223
|
-
reader.onloadend = () => {
|
|
224
|
-
const base64Data = reader.result;
|
|
225
|
-
const fileInfo = createFileInfo(file);
|
|
226
|
-
if (inlineImages) {
|
|
227
|
-
// Once inline images are configured they own the paste
|
|
228
|
-
// lifecycle; never fall back to the legacy imagePasted
|
|
229
|
-
// event. Without an upload handler the paste is a no-op.
|
|
230
|
-
if (inlineImages.upload) {
|
|
231
|
-
runInlineImageUpload(view, file, base64Data, fileInfo, inlineImages);
|
|
232
|
-
}
|
|
233
|
-
return;
|
|
234
|
-
}
|
|
235
|
-
view.dom.dispatchEvent(new CustomEvent('imagePasted', {
|
|
236
|
-
detail: imageInserterFactory(view, base64Data, fileInfo),
|
|
237
|
-
}));
|
|
238
|
-
};
|
|
239
|
-
reader.readAsDataURL(file);
|
|
216
|
+
if (!isImageFile(file, clipboardData)) {
|
|
217
|
+
continue;
|
|
240
218
|
}
|
|
219
|
+
isImageFilePasted = true;
|
|
220
|
+
const reader = new FileReader();
|
|
221
|
+
reader.onloadend = () => {
|
|
222
|
+
const base64Data = reader.result;
|
|
223
|
+
const fileInfo = createFileInfo(file);
|
|
224
|
+
if (inlineImages) {
|
|
225
|
+
// Once inline images are configured they own the paste
|
|
226
|
+
// lifecycle; never fall back to the legacy imagePasted
|
|
227
|
+
// event. Without an upload handler the paste is a no-op.
|
|
228
|
+
if (inlineImages.upload) {
|
|
229
|
+
runInlineImageUpload(view, file, base64Data, fileInfo, inlineImages);
|
|
230
|
+
}
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
view.dom.dispatchEvent(new CustomEvent('imagePasted', {
|
|
234
|
+
detail: imageInserterFactory(view, base64Data, fileInfo),
|
|
235
|
+
}));
|
|
236
|
+
};
|
|
237
|
+
reader.readAsDataURL(file);
|
|
241
238
|
}
|
|
242
239
|
return isImageFilePasted;
|
|
243
240
|
}
|
|
@@ -232,7 +232,8 @@ function createImageParseDOM(inlineImages) {
|
|
|
232
232
|
return rules;
|
|
233
233
|
}
|
|
234
234
|
function isEditorImageState(state) {
|
|
235
|
-
|
|
235
|
+
const states = ['loading', 'failed', 'success'];
|
|
236
|
+
return states.includes(state);
|
|
236
237
|
}
|
|
237
238
|
function getOrCreateImageElement(fileInfoId, node) {
|
|
238
239
|
let img = imageCache.get(fileInfoId);
|
package/dist/collection/components/text-editor/prosemirror-adapter/plugins/link/link-plugin.js
CHANGED
|
@@ -14,12 +14,11 @@ const updateLink = (view, updateLinkCallback) => {
|
|
|
14
14
|
const fromInNode = Math.max(0, from - pos);
|
|
15
15
|
const toInNode = Math.min(node.text.length, to - pos);
|
|
16
16
|
text += node.text.slice(fromInNode, toInNode);
|
|
17
|
-
|
|
18
|
-
node.marks.forEach((mark) => {
|
|
17
|
+
for (const mark of node.marks) {
|
|
19
18
|
if (mark.type.name === 'link') {
|
|
20
19
|
href = mark.attrs.href;
|
|
21
20
|
}
|
|
22
|
-
}
|
|
21
|
+
}
|
|
23
22
|
});
|
|
24
23
|
if (updateLinkCallback) {
|
|
25
24
|
updateLinkCallback(text, href);
|
|
@@ -36,8 +35,8 @@ const findStart = (doc, pos, href) => {
|
|
|
36
35
|
while (pos > 0) {
|
|
37
36
|
const node = doc.nodeAt(pos - 1);
|
|
38
37
|
if (!(node === null || node === void 0 ? void 0 : node.isText) ||
|
|
39
|
-
|
|
40
|
-
mark.attrs.href
|
|
38
|
+
node.marks.every((mark) => mark.type.name !== EditorMenuTypes.Link ||
|
|
39
|
+
mark.attrs.href !== href)) {
|
|
41
40
|
break;
|
|
42
41
|
}
|
|
43
42
|
pos--;
|
|
@@ -55,8 +54,8 @@ const findEnd = (doc, pos, href) => {
|
|
|
55
54
|
while (pos < doc.content.size) {
|
|
56
55
|
const node = doc.nodeAt(pos);
|
|
57
56
|
if (!(node === null || node === void 0 ? void 0 : node.isText) ||
|
|
58
|
-
|
|
59
|
-
mark.attrs.href
|
|
57
|
+
node.marks.every((mark) => mark.type.name !== EditorMenuTypes.Link ||
|
|
58
|
+
mark.attrs.href !== href)) {
|
|
60
59
|
break;
|
|
61
60
|
}
|
|
62
61
|
pos++;
|
|
@@ -192,16 +191,17 @@ const createNodesWithLinksAndBreaks = (text, schema) => {
|
|
|
192
191
|
if (line.length > 0) {
|
|
193
192
|
nodes.push(...createNodesWithLinks(line, schema));
|
|
194
193
|
}
|
|
195
|
-
if (index
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
194
|
+
if (index >= lines.length - 1) {
|
|
195
|
+
continue;
|
|
196
|
+
}
|
|
197
|
+
const hb = schema.nodes.hard_break;
|
|
198
|
+
if (hb) {
|
|
199
|
+
nodes.push(hb.create());
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
// Fallback: if schema lacks hard_break, defer to default paste behavior
|
|
203
|
+
// (Do NOT throw; keep behavior stable across versions)
|
|
204
|
+
console.warn('hard_break node not found in schema');
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
207
|
return nodes;
|
|
@@ -338,10 +338,11 @@ export const createLinkPlugin = (updateLinkCallback) => {
|
|
|
338
338
|
}
|
|
339
339
|
// Prevent unhandled navigation and bubbling for link clicks
|
|
340
340
|
const link = event.target.closest('a');
|
|
341
|
-
if (link) {
|
|
342
|
-
|
|
343
|
-
event.stopPropagation();
|
|
341
|
+
if (!link) {
|
|
342
|
+
return;
|
|
344
343
|
}
|
|
344
|
+
event.preventDefault();
|
|
345
|
+
event.stopPropagation();
|
|
345
346
|
},
|
|
346
347
|
},
|
|
347
348
|
},
|
|
@@ -7,7 +7,7 @@ export const getMenuItemStates = (menuTypes, menuCommandFactory, view) => {
|
|
|
7
7
|
const allowedTypes = {};
|
|
8
8
|
for (const type of menuTypes) {
|
|
9
9
|
const command = menuCommandFactory.getCommand(type);
|
|
10
|
-
activeTypes[type] = !!((_a = command === null || command === void 0 ? void 0 : command.active) === null || _a === void 0 ? void 0 : _a.call(command, view.state))
|
|
10
|
+
activeTypes[type] = !!((_a = command === null || command === void 0 ? void 0 : command.active) === null || _a === void 0 ? void 0 : _a.call(command, view.state));
|
|
11
11
|
allowedTypes[type] = !!((_c = (_b = command === null || command === void 0 ? void 0 : command.allowed) === null || _b === void 0 ? void 0 : _b.call(command, view.state)) !== null && _c !== void 0 ? _c : true);
|
|
12
12
|
}
|
|
13
13
|
return { active: activeTypes, allowed: allowedTypes };
|
|
@@ -28,11 +28,12 @@ export const createMenuStateTrackingPlugin = (menuTypes, menuCommandFactory, upd
|
|
|
28
28
|
update: (view) => {
|
|
29
29
|
const oldItemStates = actionBarPluginKey.getState(view.state);
|
|
30
30
|
const menuItemStates = getMenuItemStates(menuTypes, menuCommandFactory, view);
|
|
31
|
-
if (
|
|
32
|
-
|
|
33
|
-
view.dispatch(tr);
|
|
34
|
-
updateCallback(menuItemStates.active, menuItemStates.allowed);
|
|
31
|
+
if (isEqual(oldItemStates, menuItemStates)) {
|
|
32
|
+
return;
|
|
35
33
|
}
|
|
34
|
+
const tr = view.state.tr.setMeta(actionBarPluginKey, menuItemStates);
|
|
35
|
+
view.dispatch(tr);
|
|
36
|
+
updateCallback(menuItemStates.active, menuItemStates.allowed);
|
|
36
37
|
},
|
|
37
38
|
}),
|
|
38
39
|
});
|
|
@@ -5,20 +5,21 @@ export const detectTriggerRemoval = (transaction, activeTrigger, resetActiveTrig
|
|
|
5
5
|
return false;
|
|
6
6
|
}
|
|
7
7
|
for (const step of transaction.steps) {
|
|
8
|
-
if (step instanceof ReplaceStep) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
8
|
+
if (!(step instanceof ReplaceStep)) {
|
|
9
|
+
continue;
|
|
10
|
+
}
|
|
11
|
+
const { from, to, slice } = step; // Access properties specific to ReplaceStep
|
|
12
|
+
// Check if the step affects the trigger position
|
|
13
|
+
if (!(from <= activeTrigger.position && to >= activeTrigger.position)) {
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
const text = slice.content.textBetween(0, slice.content.size, '');
|
|
17
|
+
// Check if the trigger character has been removed
|
|
18
|
+
// `text` is the text after the step has been applied
|
|
19
|
+
if (!text.includes(activeTrigger.character)) {
|
|
20
|
+
resetActiveTrigger();
|
|
21
|
+
sendTriggerEvent('triggerStop', view, contentConverter, activeTrigger, '');
|
|
22
|
+
return true;
|
|
22
23
|
}
|
|
23
24
|
}
|
|
24
25
|
return false;
|