@limetech/lime-elements 38.7.0 → 38.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/dist/cjs/{checkbox.template-f86d05d4.js → checkbox.template-60f3ffb2.js} +2 -2
- package/dist/cjs/{checkbox.template-f86d05d4.js.map → checkbox.template-60f3ffb2.js.map} +1 -1
- package/dist/cjs/{index-d1052409.js → index-174a078a.js} +387 -9
- package/dist/cjs/index-174a078a.js.map +1 -0
- package/dist/cjs/lime-elements.cjs.js +2 -2
- package/dist/cjs/limel-3d-hover-effect-glow.cjs.entry.js +1 -1
- package/dist/cjs/limel-action-bar-item_2.cjs.entry.js +2 -2
- package/dist/cjs/limel-action-bar_2.cjs.entry.js +2 -2
- package/dist/cjs/limel-action-bar_2.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-badge_3.cjs.entry.js +1 -1
- package/dist/cjs/limel-banner.cjs.entry.js +1 -1
- package/dist/cjs/{limel-breadcrumbs_7.cjs.entry.js → limel-breadcrumbs_8.cjs.entry.js} +40 -22
- package/dist/cjs/limel-breadcrumbs_8.cjs.entry.js.map +1 -0
- package/dist/cjs/limel-button-group.cjs.entry.js +1 -1
- package/dist/cjs/limel-button.cjs.entry.js +2 -2
- package/dist/cjs/limel-callout.cjs.entry.js +1 -1
- package/dist/cjs/limel-card.cjs.entry.js +1 -1
- package/dist/cjs/limel-chart.cjs.entry.js +1 -1
- package/dist/cjs/limel-checkbox.cjs.entry.js +2 -2
- package/dist/cjs/limel-chip_2.cjs.entry.js +53 -56
- package/dist/cjs/limel-chip_2.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-circular-progress.cjs.entry.js +1 -1
- package/dist/cjs/limel-code-editor.cjs.entry.js +1 -1
- package/dist/cjs/limel-collapsible-section.cjs.entry.js +2 -2
- package/dist/cjs/limel-color-picker-palette.cjs.entry.js +1 -1
- package/dist/cjs/limel-color-picker.cjs.entry.js +1 -1
- package/dist/cjs/limel-config.cjs.entry.js +1 -1
- package/dist/cjs/limel-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/limel-dialog.cjs.entry.js +1 -1
- package/dist/cjs/limel-dock-button.cjs.entry.js +1 -1
- package/dist/cjs/limel-dock.cjs.entry.js +1 -1
- package/dist/cjs/limel-dynamic-label_2.cjs.entry.js +1 -1
- package/dist/cjs/limel-file-dropzone_2.cjs.entry.js +1 -1
- package/dist/cjs/limel-file-viewer.cjs.entry.js +1 -1
- package/dist/cjs/limel-file.cjs.entry.js +1 -1
- package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +1 -1
- package/dist/cjs/limel-flex-container.cjs.entry.js +1 -1
- package/dist/cjs/limel-form.cjs.entry.js +1 -1
- package/dist/cjs/limel-grid.cjs.entry.js +1 -1
- package/dist/cjs/limel-header.cjs.entry.js +1 -1
- package/dist/cjs/limel-help-content.cjs.entry.js +1 -1
- package/dist/cjs/limel-help.cjs.entry.js +1 -1
- package/dist/cjs/limel-icon-button.cjs.entry.js +2 -2
- package/dist/cjs/limel-icon.cjs.entry.js +1 -1
- package/dist/cjs/limel-info-tile.cjs.entry.js +1 -1
- package/dist/cjs/limel-linear-progress.cjs.entry.js +1 -1
- package/dist/cjs/limel-markdown.cjs.entry.js +1 -1
- package/dist/cjs/limel-picker.cjs.entry.js +1 -1
- package/dist/cjs/limel-popover_2.cjs.entry.js +1 -1
- package/dist/cjs/limel-portal.cjs.entry.js +1 -1
- package/dist/cjs/limel-progress-flow-item.cjs.entry.js +1 -1
- package/dist/cjs/limel-progress-flow.cjs.entry.js +1 -1
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +1 -1
- package/dist/cjs/limel-select.cjs.entry.js +11 -25
- package/dist/cjs/limel-select.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-shortcut.cjs.entry.js +1 -1
- package/dist/cjs/limel-slider.cjs.entry.js +1 -1
- package/dist/cjs/limel-snackbar.cjs.entry.js +1 -1
- package/dist/cjs/limel-split-button.cjs.entry.js +1 -1
- package/dist/cjs/limel-switch.cjs.entry.js +2 -2
- package/dist/cjs/limel-tab-bar.cjs.entry.js +1 -1
- package/dist/cjs/limel-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/limel-table.cjs.entry.js +1 -1
- package/dist/cjs/limel-text-editor.cjs.entry.js +8 -27
- package/dist/cjs/limel-text-editor.cjs.entry.js.map +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{make-enter-clickable-c116ac4f.js → make-enter-clickable-71e4750b.js} +2 -2
- package/dist/cjs/{make-enter-clickable-c116ac4f.js.map → make-enter-clickable-71e4750b.js.map} +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/action-bar/action-bar.js +1 -1
- package/dist/collection/components/action-bar/action-bar.js.map +1 -1
- package/dist/collection/components/chip-set/chip-set.css +28 -412
- package/dist/collection/components/chip-set/chip-set.js +51 -54
- package/dist/collection/components/chip-set/chip-set.js.map +1 -1
- package/dist/collection/components/input-field/input-field.css +9 -300
- package/dist/collection/components/input-field/input-field.js +1 -17
- package/dist/collection/components/input-field/input-field.js.map +1 -1
- package/dist/collection/components/notched-outline/notched-outline.css +297 -0
- package/dist/collection/components/notched-outline/notched-outline.js +221 -0
- package/dist/collection/components/notched-outline/notched-outline.js.map +1 -0
- package/dist/collection/components/select/select.css +5 -33
- package/dist/collection/components/select/select.template.js +8 -19
- package/dist/collection/components/select/select.template.js.map +1 -1
- package/dist/collection/components/text-editor/text-editor.css +5 -102
- package/dist/collection/components/text-editor/text-editor.js +7 -26
- package/dist/collection/components/text-editor/text-editor.js.map +1 -1
- package/dist/collection/style/internal/shared_input-select-picker.scss +8 -2
- package/dist/esm/{checkbox.template-c42b7020.js → checkbox.template-1fd53d7b.js} +2 -2
- package/dist/esm/{checkbox.template-c42b7020.js.map → checkbox.template-1fd53d7b.js.map} +1 -1
- package/dist/esm/{index-6156b4fd.js → index-2714248e.js} +387 -9
- package/dist/esm/index-2714248e.js.map +1 -0
- package/dist/esm/lime-elements.js +3 -3
- package/dist/esm/limel-3d-hover-effect-glow.entry.js +1 -1
- package/dist/esm/limel-action-bar-item_2.entry.js +2 -2
- package/dist/esm/limel-action-bar_2.entry.js +2 -2
- package/dist/esm/limel-action-bar_2.entry.js.map +1 -1
- package/dist/esm/limel-badge_3.entry.js +1 -1
- package/dist/esm/limel-banner.entry.js +1 -1
- package/dist/esm/{limel-breadcrumbs_7.entry.js → limel-breadcrumbs_8.entry.js} +40 -23
- package/dist/esm/limel-breadcrumbs_8.entry.js.map +1 -0
- package/dist/esm/limel-button-group.entry.js +1 -1
- package/dist/esm/limel-button.entry.js +2 -2
- package/dist/esm/limel-callout.entry.js +1 -1
- package/dist/esm/limel-card.entry.js +1 -1
- package/dist/esm/limel-chart.entry.js +1 -1
- package/dist/esm/limel-checkbox.entry.js +2 -2
- package/dist/esm/limel-chip_2.entry.js +53 -56
- package/dist/esm/limel-chip_2.entry.js.map +1 -1
- package/dist/esm/limel-circular-progress.entry.js +1 -1
- package/dist/esm/limel-code-editor.entry.js +1 -1
- package/dist/esm/limel-collapsible-section.entry.js +2 -2
- package/dist/esm/limel-color-picker-palette.entry.js +1 -1
- package/dist/esm/limel-color-picker.entry.js +1 -1
- package/dist/esm/limel-config.entry.js +1 -1
- package/dist/esm/limel-date-picker.entry.js +1 -1
- package/dist/esm/limel-dialog.entry.js +1 -1
- package/dist/esm/limel-dock-button.entry.js +1 -1
- package/dist/esm/limel-dock.entry.js +1 -1
- package/dist/esm/limel-dynamic-label_2.entry.js +1 -1
- package/dist/esm/limel-file-dropzone_2.entry.js +1 -1
- package/dist/esm/limel-file-viewer.entry.js +1 -1
- package/dist/esm/limel-file.entry.js +1 -1
- package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
- package/dist/esm/limel-flex-container.entry.js +1 -1
- package/dist/esm/limel-form.entry.js +1 -1
- package/dist/esm/limel-grid.entry.js +1 -1
- package/dist/esm/limel-header.entry.js +1 -1
- package/dist/esm/limel-help-content.entry.js +1 -1
- package/dist/esm/limel-help.entry.js +1 -1
- package/dist/esm/limel-icon-button.entry.js +2 -2
- package/dist/esm/limel-icon.entry.js +1 -1
- package/dist/esm/limel-info-tile.entry.js +1 -1
- package/dist/esm/limel-linear-progress.entry.js +1 -1
- package/dist/esm/limel-markdown.entry.js +1 -1
- package/dist/esm/limel-picker.entry.js +1 -1
- package/dist/esm/limel-popover_2.entry.js +1 -1
- package/dist/esm/limel-portal.entry.js +1 -1
- package/dist/esm/limel-progress-flow-item.entry.js +1 -1
- package/dist/esm/limel-progress-flow.entry.js +1 -1
- package/dist/esm/limel-prosemirror-adapter.entry.js +1 -1
- package/dist/esm/limel-select.entry.js +11 -25
- package/dist/esm/limel-select.entry.js.map +1 -1
- package/dist/esm/limel-shortcut.entry.js +1 -1
- package/dist/esm/limel-slider.entry.js +1 -1
- package/dist/esm/limel-snackbar.entry.js +1 -1
- package/dist/esm/limel-split-button.entry.js +1 -1
- package/dist/esm/limel-switch.entry.js +2 -2
- package/dist/esm/limel-tab-bar.entry.js +1 -1
- package/dist/esm/limel-tab-panel.entry.js +1 -1
- package/dist/esm/limel-table.entry.js +1 -1
- package/dist/esm/limel-text-editor.entry.js +8 -27
- package/dist/esm/limel-text-editor.entry.js.map +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{make-enter-clickable-a30589fb.js → make-enter-clickable-5334fc26.js} +2 -2
- package/dist/esm/{make-enter-clickable-a30589fb.js.map → make-enter-clickable-5334fc26.js.map} +1 -1
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/lime-elements.esm.js.map +1 -1
- package/dist/lime-elements/{p-fda881a3.entry.js → p-02197b98.entry.js} +2 -2
- package/dist/lime-elements/{p-f95a5cb5.entry.js → p-0960ca61.entry.js} +2 -2
- package/dist/lime-elements/{p-fd0ea2e9.entry.js → p-0aa2f9c0.entry.js} +2 -2
- package/dist/lime-elements/{p-85ffcf55.entry.js → p-10d1256b.entry.js} +2 -2
- package/dist/lime-elements/{p-2b294a69.entry.js → p-1942e25c.entry.js} +2 -2
- package/dist/lime-elements/{p-d93f1964.entry.js → p-19688e05.entry.js} +2 -2
- package/dist/lime-elements/{p-c923b97d.entry.js → p-1f142e39.entry.js} +2 -2
- package/dist/lime-elements/{p-4f70c0aa.entry.js → p-254c9b18.entry.js} +2 -2
- package/dist/lime-elements/{p-3a605df3.entry.js → p-26e06ef4.entry.js} +2 -2
- package/dist/lime-elements/p-288f0842.js +3 -0
- package/dist/lime-elements/p-288f0842.js.map +1 -0
- package/dist/lime-elements/{p-8f1b76df.entry.js → p-28a6fec9.entry.js} +2 -2
- package/dist/lime-elements/{p-e329fd1e.entry.js → p-28e5fef5.entry.js} +2 -2
- package/dist/lime-elements/{p-211456f2.entry.js → p-2c7e5deb.entry.js} +2 -2
- package/dist/lime-elements/{p-28c76ae8.entry.js → p-30cef284.entry.js} +2 -2
- package/dist/lime-elements/{p-7db872fd.entry.js → p-3cd846eb.entry.js} +2 -2
- package/dist/lime-elements/p-3cd846eb.entry.js.map +1 -0
- package/dist/lime-elements/p-447e573c.entry.js +2 -0
- package/dist/lime-elements/p-447e573c.entry.js.map +1 -0
- package/dist/lime-elements/{p-e86af8b6.js → p-46cbc6d9.js} +2 -2
- package/dist/lime-elements/{p-f340d860.entry.js → p-48e9f4ea.entry.js} +2 -2
- package/dist/lime-elements/{p-36cf3031.entry.js → p-49432af9.entry.js} +2 -2
- package/dist/lime-elements/{p-89eaca66.entry.js → p-4eae90f7.entry.js} +2 -2
- package/dist/lime-elements/{p-ea98795d.entry.js → p-4ed15eb7.entry.js} +2 -2
- package/dist/lime-elements/{p-0aeff0b6.entry.js → p-54ff8dcb.entry.js} +2 -2
- package/dist/lime-elements/{p-3d6dc7de.entry.js → p-56de9524.entry.js} +2 -2
- package/dist/lime-elements/{p-02564969.entry.js → p-58acbdcc.entry.js} +2 -2
- package/dist/lime-elements/{p-dc6846e1.entry.js → p-5e325fee.entry.js} +2 -2
- package/dist/lime-elements/{p-16e4ca3e.entry.js → p-5e68e5f7.entry.js} +2 -2
- package/dist/lime-elements/{p-c632261b.entry.js → p-5f39d366.entry.js} +2 -2
- package/dist/lime-elements/{p-a2eee29e.entry.js → p-5fd7abb8.entry.js} +2 -2
- package/dist/lime-elements/{p-06b5aa10.entry.js → p-61766ba1.entry.js} +2 -2
- package/dist/lime-elements/{p-b5f723e2.entry.js → p-69b6119b.entry.js} +2 -2
- package/dist/lime-elements/{p-1bcdc70b.entry.js → p-6c2fdad7.entry.js} +2 -2
- package/dist/lime-elements/{p-5d08ef7d.entry.js → p-74a15b9e.entry.js} +2 -2
- package/dist/lime-elements/{p-f3cbbaf5.entry.js → p-76b845b0.entry.js} +2 -2
- package/dist/lime-elements/p-7993102f.entry.js +68 -0
- package/dist/lime-elements/p-7993102f.entry.js.map +1 -0
- package/dist/lime-elements/{p-40016256.entry.js → p-818f71b8.entry.js} +2 -2
- package/dist/lime-elements/{p-8baf79cf.entry.js → p-82290560.entry.js} +2 -2
- package/dist/lime-elements/{p-3c5a0769.entry.js → p-874e3af6.entry.js} +2 -2
- package/dist/lime-elements/{p-8579a166.entry.js → p-8b61a573.entry.js} +2 -2
- package/dist/lime-elements/{p-d6660d2a.entry.js → p-93d5ebeb.entry.js} +2 -2
- package/dist/lime-elements/{p-54ac08f5.entry.js → p-9cec73a7.entry.js} +2 -2
- package/dist/lime-elements/{p-8f6f643d.entry.js → p-a809b9a8.entry.js} +2 -2
- package/dist/lime-elements/{p-66501d69.entry.js → p-aabeba98.entry.js} +2 -2
- package/dist/lime-elements/p-ad568d69.entry.js +2 -0
- package/dist/lime-elements/p-ad568d69.entry.js.map +1 -0
- package/dist/lime-elements/{p-0863261f.entry.js → p-bab6b677.entry.js} +2 -2
- package/dist/lime-elements/{p-fa8ea2db.entry.js → p-bd278c51.entry.js} +2 -2
- package/dist/lime-elements/{p-8e7788a1.entry.js → p-c30e11ce.entry.js} +2 -2
- package/dist/lime-elements/{p-6500050d.entry.js → p-d05ebeb1.entry.js} +2 -2
- package/dist/lime-elements/{p-1c5f50f0.entry.js → p-d532cab0.entry.js} +2 -2
- package/dist/lime-elements/{p-ad3f6808.entry.js → p-d814fd97.entry.js} +2 -2
- package/dist/lime-elements/{p-9c5f2c45.entry.js → p-da37b2af.entry.js} +2 -2
- package/dist/lime-elements/{p-dbcde7db.entry.js → p-dcacda04.entry.js} +2 -2
- package/dist/lime-elements/{p-2078a6e2.entry.js → p-e655e6a1.entry.js} +2 -2
- package/dist/lime-elements/{p-26623b2d.entry.js → p-e9015886.entry.js} +2 -2
- package/dist/lime-elements/{p-1c16aa9b.entry.js → p-e9d11321.entry.js} +2 -2
- package/dist/lime-elements/{p-869d6d77.js → p-f221011c.js} +2 -2
- package/dist/lime-elements/{p-53404aa6.entry.js → p-f6aad3ee.entry.js} +9 -9
- package/dist/lime-elements/p-f6aad3ee.entry.js.map +1 -0
- package/dist/lime-elements/{p-ece3a0f5.entry.js → p-fc078f90.entry.js} +2 -2
- package/dist/lime-elements/{p-2793f6d0.entry.js → p-fe5fd06b.entry.js} +2 -2
- package/dist/lime-elements/style/internal/shared_input-select-picker.scss +8 -2
- package/dist/types/components/chip-set/chip-set.d.ts +4 -4
- package/dist/types/components/input-field/input-field.d.ts +0 -2
- package/dist/types/components/notched-outline/notched-outline.d.ts +75 -0
- package/dist/types/components/text-editor/text-editor.d.ts +1 -2
- package/dist/types/components.d.ts +145 -0
- package/package.json +1 -1
- package/dist/cjs/index-d1052409.js.map +0 -1
- package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js.map +0 -1
- package/dist/esm/index-6156b4fd.js.map +0 -1
- package/dist/esm/limel-breadcrumbs_7.entry.js.map +0 -1
- package/dist/lime-elements/p-443111b3.js +0 -3
- package/dist/lime-elements/p-443111b3.js.map +0 -1
- package/dist/lime-elements/p-53404aa6.entry.js.map +0 -1
- package/dist/lime-elements/p-62a21e92.entry.js +0 -2
- package/dist/lime-elements/p-62a21e92.entry.js.map +0 -1
- package/dist/lime-elements/p-7db872fd.entry.js.map +0 -1
- package/dist/lime-elements/p-8900110f.entry.js +0 -2
- package/dist/lime-elements/p-8900110f.entry.js.map +0 -1
- package/dist/lime-elements/p-d05a7803.entry.js +0 -68
- package/dist/lime-elements/p-d05a7803.entry.js.map +0 -1
- /package/dist/lime-elements/{p-fda881a3.entry.js.map → p-02197b98.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-f95a5cb5.entry.js.map → p-0960ca61.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-fd0ea2e9.entry.js.map → p-0aa2f9c0.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-85ffcf55.entry.js.map → p-10d1256b.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-2b294a69.entry.js.map → p-1942e25c.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-d93f1964.entry.js.map → p-19688e05.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-c923b97d.entry.js.map → p-1f142e39.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-4f70c0aa.entry.js.map → p-254c9b18.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-3a605df3.entry.js.map → p-26e06ef4.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-8f1b76df.entry.js.map → p-28a6fec9.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-e329fd1e.entry.js.map → p-28e5fef5.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-211456f2.entry.js.map → p-2c7e5deb.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-28c76ae8.entry.js.map → p-30cef284.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-e86af8b6.js.map → p-46cbc6d9.js.map} +0 -0
- /package/dist/lime-elements/{p-f340d860.entry.js.map → p-48e9f4ea.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-36cf3031.entry.js.map → p-49432af9.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-89eaca66.entry.js.map → p-4eae90f7.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-ea98795d.entry.js.map → p-4ed15eb7.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-0aeff0b6.entry.js.map → p-54ff8dcb.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-3d6dc7de.entry.js.map → p-56de9524.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-02564969.entry.js.map → p-58acbdcc.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-dc6846e1.entry.js.map → p-5e325fee.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-16e4ca3e.entry.js.map → p-5e68e5f7.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-c632261b.entry.js.map → p-5f39d366.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-a2eee29e.entry.js.map → p-5fd7abb8.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-06b5aa10.entry.js.map → p-61766ba1.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-b5f723e2.entry.js.map → p-69b6119b.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-1bcdc70b.entry.js.map → p-6c2fdad7.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-5d08ef7d.entry.js.map → p-74a15b9e.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-f3cbbaf5.entry.js.map → p-76b845b0.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-40016256.entry.js.map → p-818f71b8.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-8baf79cf.entry.js.map → p-82290560.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-3c5a0769.entry.js.map → p-874e3af6.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-8579a166.entry.js.map → p-8b61a573.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-d6660d2a.entry.js.map → p-93d5ebeb.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-54ac08f5.entry.js.map → p-9cec73a7.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-8f6f643d.entry.js.map → p-a809b9a8.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-66501d69.entry.js.map → p-aabeba98.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-0863261f.entry.js.map → p-bab6b677.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-fa8ea2db.entry.js.map → p-bd278c51.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-8e7788a1.entry.js.map → p-c30e11ce.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-6500050d.entry.js.map → p-d05ebeb1.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-1c5f50f0.entry.js.map → p-d532cab0.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-ad3f6808.entry.js.map → p-d814fd97.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-9c5f2c45.entry.js.map → p-da37b2af.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-dbcde7db.entry.js.map → p-dcacda04.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-2078a6e2.entry.js.map → p-e655e6a1.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-26623b2d.entry.js.map → p-e9015886.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-1c16aa9b.entry.js.map → p-e9d11321.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-869d6d77.js.map → p-f221011c.js.map} +0 -0
- /package/dist/lime-elements/{p-ece3a0f5.entry.js.map → p-fc078f90.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-2793f6d0.entry.js.map → p-fe5fd06b.entry.js.map} +0 -0
|
@@ -9,7 +9,11 @@ const NAMESPACE = 'lime-elements';
|
|
|
9
9
|
* Modified for Stencil's renderer and slot projection
|
|
10
10
|
*/
|
|
11
11
|
let scopeId;
|
|
12
|
+
let contentRef;
|
|
12
13
|
let hostTagName;
|
|
14
|
+
let useNativeShadowDom = false;
|
|
15
|
+
let checkSlotFallbackVisibility = false;
|
|
16
|
+
let checkSlotRelocate = false;
|
|
13
17
|
let isSvgMode = false;
|
|
14
18
|
let queuePending = false;
|
|
15
19
|
const createTime = (fnName, tagName = '') => {
|
|
@@ -79,6 +83,7 @@ function queryNonceMetaTagContent(doc) {
|
|
|
79
83
|
const h = (nodeName, vnodeData, ...children) => {
|
|
80
84
|
let child = null;
|
|
81
85
|
let key = null;
|
|
86
|
+
let slotName = null;
|
|
82
87
|
let simple = false;
|
|
83
88
|
let lastSimple = false;
|
|
84
89
|
const vNodeChildren = [];
|
|
@@ -110,6 +115,9 @@ const h = (nodeName, vnodeData, ...children) => {
|
|
|
110
115
|
if (vnodeData.key) {
|
|
111
116
|
key = vnodeData.key;
|
|
112
117
|
}
|
|
118
|
+
if (vnodeData.name) {
|
|
119
|
+
slotName = vnodeData.name;
|
|
120
|
+
}
|
|
113
121
|
{
|
|
114
122
|
const classData = vnodeData.className || vnodeData.class;
|
|
115
123
|
if (classData) {
|
|
@@ -134,6 +142,9 @@ const h = (nodeName, vnodeData, ...children) => {
|
|
|
134
142
|
{
|
|
135
143
|
vnode.$key$ = key;
|
|
136
144
|
}
|
|
145
|
+
{
|
|
146
|
+
vnode.$name$ = slotName;
|
|
147
|
+
}
|
|
137
148
|
return vnode;
|
|
138
149
|
};
|
|
139
150
|
/**
|
|
@@ -158,6 +169,9 @@ const newVNode = (tag, text) => {
|
|
|
158
169
|
{
|
|
159
170
|
vnode.$key$ = null;
|
|
160
171
|
}
|
|
172
|
+
{
|
|
173
|
+
vnode.$name$ = null;
|
|
174
|
+
}
|
|
161
175
|
return vnode;
|
|
162
176
|
};
|
|
163
177
|
const Host = {};
|
|
@@ -560,16 +574,39 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
|
|
|
560
574
|
let i = 0;
|
|
561
575
|
let elm;
|
|
562
576
|
let childNode;
|
|
577
|
+
let oldVNode;
|
|
578
|
+
if (!useNativeShadowDom) {
|
|
579
|
+
// remember for later we need to check to relocate nodes
|
|
580
|
+
checkSlotRelocate = true;
|
|
581
|
+
if (newVNode.$tag$ === 'slot') {
|
|
582
|
+
if (scopeId) {
|
|
583
|
+
// scoped css needs to add its scoped id to the parent element
|
|
584
|
+
parentElm.classList.add(scopeId + '-s');
|
|
585
|
+
}
|
|
586
|
+
newVNode.$flags$ |= newVNode.$children$
|
|
587
|
+
? // slot element has fallback content
|
|
588
|
+
2 /* VNODE_FLAGS.isSlotFallback */
|
|
589
|
+
: // slot element does not have fallback content
|
|
590
|
+
1 /* VNODE_FLAGS.isSlotReference */;
|
|
591
|
+
}
|
|
592
|
+
}
|
|
563
593
|
if (newVNode.$text$ !== null) {
|
|
564
594
|
// create text node
|
|
565
595
|
elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$);
|
|
566
596
|
}
|
|
597
|
+
else if (newVNode.$flags$ & 1 /* VNODE_FLAGS.isSlotReference */) {
|
|
598
|
+
// create a slot reference node
|
|
599
|
+
elm = newVNode.$elm$ =
|
|
600
|
+
doc.createTextNode('');
|
|
601
|
+
}
|
|
567
602
|
else {
|
|
568
603
|
if (!isSvgMode) {
|
|
569
604
|
isSvgMode = newVNode.$tag$ === 'svg';
|
|
570
605
|
}
|
|
571
606
|
// create element
|
|
572
|
-
elm = newVNode.$elm$ = (doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, newVNode.$
|
|
607
|
+
elm = newVNode.$elm$ = (doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, newVNode.$flags$ & 2 /* VNODE_FLAGS.isSlotFallback */
|
|
608
|
+
? 'slot-fb'
|
|
609
|
+
: newVNode.$tag$)
|
|
573
610
|
);
|
|
574
611
|
if (isSvgMode && newVNode.$tag$ === 'foreignObject') {
|
|
575
612
|
isSvgMode = false;
|
|
@@ -586,7 +623,7 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
|
|
|
586
623
|
if (newVNode.$children$) {
|
|
587
624
|
for (i = 0; i < newVNode.$children$.length; ++i) {
|
|
588
625
|
// create the node
|
|
589
|
-
childNode = createElm(oldParentVNode, newVNode, i);
|
|
626
|
+
childNode = createElm(oldParentVNode, newVNode, i, elm);
|
|
590
627
|
// return node could have been null
|
|
591
628
|
if (childNode) {
|
|
592
629
|
// append our new node
|
|
@@ -605,8 +642,50 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
|
|
|
605
642
|
}
|
|
606
643
|
}
|
|
607
644
|
}
|
|
645
|
+
{
|
|
646
|
+
elm['s-hn'] = hostTagName;
|
|
647
|
+
if (newVNode.$flags$ & (2 /* VNODE_FLAGS.isSlotFallback */ | 1 /* VNODE_FLAGS.isSlotReference */)) {
|
|
648
|
+
// remember the content reference comment
|
|
649
|
+
elm['s-sr'] = true;
|
|
650
|
+
// remember the content reference comment
|
|
651
|
+
elm['s-cr'] = contentRef;
|
|
652
|
+
// remember the slot name, or empty string for default slot
|
|
653
|
+
elm['s-sn'] = newVNode.$name$ || '';
|
|
654
|
+
// check if we've got an old vnode for this slot
|
|
655
|
+
oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
|
|
656
|
+
if (oldVNode && oldVNode.$tag$ === newVNode.$tag$ && oldParentVNode.$elm$) {
|
|
657
|
+
// we've got an old slot vnode and the wrapper is being replaced
|
|
658
|
+
// so let's move the old slot content back to it's original location
|
|
659
|
+
putBackInOriginalLocation(oldParentVNode.$elm$, false);
|
|
660
|
+
}
|
|
661
|
+
}
|
|
662
|
+
}
|
|
608
663
|
return elm;
|
|
609
664
|
};
|
|
665
|
+
const putBackInOriginalLocation = (parentElm, recursive) => {
|
|
666
|
+
plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
|
|
667
|
+
const oldSlotChildNodes = parentElm.childNodes;
|
|
668
|
+
for (let i = oldSlotChildNodes.length - 1; i >= 0; i--) {
|
|
669
|
+
const childNode = oldSlotChildNodes[i];
|
|
670
|
+
if (childNode['s-hn'] !== hostTagName && childNode['s-ol']) {
|
|
671
|
+
// // this child node in the old element is from another component
|
|
672
|
+
// // remove this node from the old slot's parent
|
|
673
|
+
// childNode.remove();
|
|
674
|
+
// and relocate it back to it's original location
|
|
675
|
+
parentReferenceNode(childNode).insertBefore(childNode, referenceNode(childNode));
|
|
676
|
+
// remove the old original location comment entirely
|
|
677
|
+
// later on the patch function will know what to do
|
|
678
|
+
// and move this to the correct spot in need be
|
|
679
|
+
childNode['s-ol'].remove();
|
|
680
|
+
childNode['s-ol'] = undefined;
|
|
681
|
+
checkSlotRelocate = true;
|
|
682
|
+
}
|
|
683
|
+
if (recursive) {
|
|
684
|
+
putBackInOriginalLocation(childNode, recursive);
|
|
685
|
+
}
|
|
686
|
+
}
|
|
687
|
+
plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
|
|
688
|
+
};
|
|
610
689
|
/**
|
|
611
690
|
* Create DOM nodes corresponding to a list of {@link d.Vnode} objects and
|
|
612
691
|
* add them to the DOM in the appropriate place.
|
|
@@ -623,17 +702,17 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
|
|
|
623
702
|
* creating DOM nodes (inclusive)
|
|
624
703
|
*/
|
|
625
704
|
const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
|
|
626
|
-
let containerElm = (parentElm);
|
|
705
|
+
let containerElm = ((parentElm['s-cr'] && parentElm['s-cr'].parentNode) || parentElm);
|
|
627
706
|
let childNode;
|
|
628
707
|
if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
|
|
629
708
|
containerElm = containerElm.shadowRoot;
|
|
630
709
|
}
|
|
631
710
|
for (; startIdx <= endIdx; ++startIdx) {
|
|
632
711
|
if (vnodes[startIdx]) {
|
|
633
|
-
childNode = createElm(null, parentVNode, startIdx);
|
|
712
|
+
childNode = createElm(null, parentVNode, startIdx, parentElm);
|
|
634
713
|
if (childNode) {
|
|
635
714
|
vnodes[startIdx].$elm$ = childNode;
|
|
636
|
-
containerElm.insertBefore(childNode, before);
|
|
715
|
+
containerElm.insertBefore(childNode, referenceNode(before) );
|
|
637
716
|
}
|
|
638
717
|
}
|
|
639
718
|
}
|
|
@@ -656,6 +735,20 @@ const removeVnodes = (vnodes, startIdx, endIdx) => {
|
|
|
656
735
|
const elm = vnode.$elm$;
|
|
657
736
|
nullifyVNodeRefs(vnode);
|
|
658
737
|
if (elm) {
|
|
738
|
+
{
|
|
739
|
+
// we're removing this element
|
|
740
|
+
// so it's possible we need to show slot fallback content now
|
|
741
|
+
checkSlotFallbackVisibility = true;
|
|
742
|
+
if (elm['s-ol']) {
|
|
743
|
+
// remove the original location comment
|
|
744
|
+
elm['s-ol'].remove();
|
|
745
|
+
}
|
|
746
|
+
else {
|
|
747
|
+
// it's possible that child nodes of the node
|
|
748
|
+
// that's being removed are slot nodes
|
|
749
|
+
putBackInOriginalLocation(elm, true);
|
|
750
|
+
}
|
|
751
|
+
}
|
|
659
752
|
// remove the vnode's element from the dom
|
|
660
753
|
elm.remove();
|
|
661
754
|
}
|
|
@@ -775,6 +868,23 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
|
|
|
775
868
|
newEndVnode = newCh[--newEndIdx];
|
|
776
869
|
}
|
|
777
870
|
else if (isSameVnode(oldStartVnode, newEndVnode)) {
|
|
871
|
+
// case: "Vnode moved right"
|
|
872
|
+
//
|
|
873
|
+
// We've found that the last node in our window on the new children is
|
|
874
|
+
// the same VNode as the _first_ node in our window on the old children
|
|
875
|
+
// we're dealing with now. Visually, this is the layout of these two
|
|
876
|
+
// nodes:
|
|
877
|
+
//
|
|
878
|
+
// newCh: [..., newStartVnode , ... , newEndVnode , ...]
|
|
879
|
+
// ^^^^^^^^^^^
|
|
880
|
+
// oldCh: [..., oldStartVnode , ... , oldEndVnode , ...]
|
|
881
|
+
// ^^^^^^^^^^^^^
|
|
882
|
+
//
|
|
883
|
+
// In this situation we need to patch `newEndVnode` onto `oldStartVnode`
|
|
884
|
+
// and move the DOM element for `oldStartVnode`.
|
|
885
|
+
if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
|
|
886
|
+
putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
|
|
887
|
+
}
|
|
778
888
|
patch(oldStartVnode, newEndVnode);
|
|
779
889
|
// We need to move the element for `oldStartVnode` into a position which
|
|
780
890
|
// will be appropriate for `newEndVnode`. For this we can use
|
|
@@ -798,6 +908,24 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
|
|
|
798
908
|
newEndVnode = newCh[--newEndIdx];
|
|
799
909
|
}
|
|
800
910
|
else if (isSameVnode(oldEndVnode, newStartVnode)) {
|
|
911
|
+
// case: "Vnode moved left"
|
|
912
|
+
//
|
|
913
|
+
// We've found that the first node in our window on the new children is
|
|
914
|
+
// the same VNode as the _last_ node in our window on the old children.
|
|
915
|
+
// Visually, this is the layout of these two nodes:
|
|
916
|
+
//
|
|
917
|
+
// newCh: [..., newStartVnode , ... , newEndVnode , ...]
|
|
918
|
+
// ^^^^^^^^^^^^^
|
|
919
|
+
// oldCh: [..., oldStartVnode , ... , oldEndVnode , ...]
|
|
920
|
+
// ^^^^^^^^^^^
|
|
921
|
+
//
|
|
922
|
+
// In this situation we need to patch `newStartVnode` onto `oldEndVnode`
|
|
923
|
+
// (which will handle updating any changed attributes, reconciling their
|
|
924
|
+
// children etc) but we also need to move the DOM node to which
|
|
925
|
+
// `oldEndVnode` corresponds.
|
|
926
|
+
if ((oldStartVnode.$tag$ === 'slot' || newEndVnode.$tag$ === 'slot')) {
|
|
927
|
+
putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
|
|
928
|
+
}
|
|
801
929
|
patch(oldEndVnode, newStartVnode);
|
|
802
930
|
// We've already checked above if `oldStartVnode` and `newStartVnode` are
|
|
803
931
|
// the same node, so since we're here we know that they are not. Thus we
|
|
@@ -832,7 +960,7 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
|
|
|
832
960
|
elmToMove = oldCh[idxInOld];
|
|
833
961
|
if (elmToMove.$tag$ !== newStartVnode.$tag$) {
|
|
834
962
|
// the tag doesn't match so we'll need a new DOM element
|
|
835
|
-
node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld);
|
|
963
|
+
node = createElm(oldCh && oldCh[newStartIdx], newVNode, idxInOld, parentElm);
|
|
836
964
|
}
|
|
837
965
|
else {
|
|
838
966
|
patch(elmToMove, newStartVnode);
|
|
@@ -848,13 +976,13 @@ const updateChildren = (parentElm, oldCh, newVNode, newCh) => {
|
|
|
848
976
|
// the key of the first new child OR the build is not using `key`
|
|
849
977
|
// attributes at all. In either case we need to create a new element
|
|
850
978
|
// for the new node.
|
|
851
|
-
node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx);
|
|
979
|
+
node = createElm(oldCh && oldCh[newStartIdx], newVNode, newStartIdx, parentElm);
|
|
852
980
|
newStartVnode = newCh[++newStartIdx];
|
|
853
981
|
}
|
|
854
982
|
if (node) {
|
|
855
983
|
// if we created a new node then handle inserting it to the DOM
|
|
856
984
|
{
|
|
857
|
-
oldStartVnode.$elm
|
|
985
|
+
parentReferenceNode(oldStartVnode.$elm$).insertBefore(node, referenceNode(oldStartVnode.$elm$));
|
|
858
986
|
}
|
|
859
987
|
}
|
|
860
988
|
}
|
|
@@ -892,6 +1020,9 @@ const isSameVnode = (leftVNode, rightVNode) => {
|
|
|
892
1020
|
// compare if two vnode to see if they're "technically" the same
|
|
893
1021
|
// need to have the same element tag, and same key to be the same
|
|
894
1022
|
if (leftVNode.$tag$ === rightVNode.$tag$) {
|
|
1023
|
+
if (leftVNode.$tag$ === 'slot') {
|
|
1024
|
+
return leftVNode.$name$ === rightVNode.$name$;
|
|
1025
|
+
}
|
|
895
1026
|
// this will be set if components in the build have `key` attrs set on them
|
|
896
1027
|
{
|
|
897
1028
|
return leftVNode.$key$ === rightVNode.$key$;
|
|
@@ -899,6 +1030,14 @@ const isSameVnode = (leftVNode, rightVNode) => {
|
|
|
899
1030
|
}
|
|
900
1031
|
return false;
|
|
901
1032
|
};
|
|
1033
|
+
const referenceNode = (node) => {
|
|
1034
|
+
// this node was relocated to a new location in the dom
|
|
1035
|
+
// because of some other component's slot
|
|
1036
|
+
// but we still have an html comment in place of where
|
|
1037
|
+
// it's original location was according to it's original vdom
|
|
1038
|
+
return (node && node['s-ol']) || node;
|
|
1039
|
+
};
|
|
1040
|
+
const parentReferenceNode = (node) => (node['s-ol'] ? node['s-ol'] : node).parentNode;
|
|
902
1041
|
/**
|
|
903
1042
|
* Handle reconciling an outdated VNode with a new one which corresponds to
|
|
904
1043
|
* it. This function handles flushing updates to the DOM and reconciling the
|
|
@@ -913,6 +1052,7 @@ const patch = (oldVNode, newVNode) => {
|
|
|
913
1052
|
const newChildren = newVNode.$children$;
|
|
914
1053
|
const tag = newVNode.$tag$;
|
|
915
1054
|
const text = newVNode.$text$;
|
|
1055
|
+
let defaultHolder;
|
|
916
1056
|
if (text === null) {
|
|
917
1057
|
{
|
|
918
1058
|
// test if we're rendering an svg element, or still rendering nodes inside of one
|
|
@@ -951,12 +1091,147 @@ const patch = (oldVNode, newVNode) => {
|
|
|
951
1091
|
isSvgMode = false;
|
|
952
1092
|
}
|
|
953
1093
|
}
|
|
1094
|
+
else if ((defaultHolder = elm['s-cr'])) {
|
|
1095
|
+
// this element has slotted content
|
|
1096
|
+
defaultHolder.parentNode.textContent = text;
|
|
1097
|
+
}
|
|
954
1098
|
else if (oldVNode.$text$ !== text) {
|
|
955
1099
|
// update the text content for the text only vnode
|
|
956
1100
|
// and also only if the text is different than before
|
|
957
1101
|
elm.data = text;
|
|
958
1102
|
}
|
|
959
1103
|
};
|
|
1104
|
+
const updateFallbackSlotVisibility = (elm) => {
|
|
1105
|
+
// tslint:disable-next-line: prefer-const
|
|
1106
|
+
const childNodes = elm.childNodes;
|
|
1107
|
+
let childNode;
|
|
1108
|
+
let i;
|
|
1109
|
+
let ilen;
|
|
1110
|
+
let j;
|
|
1111
|
+
let slotNameAttr;
|
|
1112
|
+
let nodeType;
|
|
1113
|
+
for (i = 0, ilen = childNodes.length; i < ilen; i++) {
|
|
1114
|
+
childNode = childNodes[i];
|
|
1115
|
+
if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
|
|
1116
|
+
if (childNode['s-sr']) {
|
|
1117
|
+
// this is a slot fallback node
|
|
1118
|
+
// get the slot name for this slot reference node
|
|
1119
|
+
slotNameAttr = childNode['s-sn'];
|
|
1120
|
+
// by default always show a fallback slot node
|
|
1121
|
+
// then hide it if there are other slots in the light dom
|
|
1122
|
+
childNode.hidden = false;
|
|
1123
|
+
for (j = 0; j < ilen; j++) {
|
|
1124
|
+
nodeType = childNodes[j].nodeType;
|
|
1125
|
+
if (childNodes[j]['s-hn'] !== childNode['s-hn'] || slotNameAttr !== '') {
|
|
1126
|
+
// this sibling node is from a different component OR is a named fallback slot node
|
|
1127
|
+
if (nodeType === 1 /* NODE_TYPE.ElementNode */ && slotNameAttr === childNodes[j].getAttribute('slot')) {
|
|
1128
|
+
childNode.hidden = true;
|
|
1129
|
+
break;
|
|
1130
|
+
}
|
|
1131
|
+
}
|
|
1132
|
+
else {
|
|
1133
|
+
// this is a default fallback slot node
|
|
1134
|
+
// any element or text node (with content)
|
|
1135
|
+
// should hide the default fallback slot node
|
|
1136
|
+
if (nodeType === 1 /* NODE_TYPE.ElementNode */ ||
|
|
1137
|
+
(nodeType === 3 /* NODE_TYPE.TextNode */ && childNodes[j].textContent.trim() !== '')) {
|
|
1138
|
+
childNode.hidden = true;
|
|
1139
|
+
break;
|
|
1140
|
+
}
|
|
1141
|
+
}
|
|
1142
|
+
}
|
|
1143
|
+
}
|
|
1144
|
+
// keep drilling down
|
|
1145
|
+
updateFallbackSlotVisibility(childNode);
|
|
1146
|
+
}
|
|
1147
|
+
}
|
|
1148
|
+
};
|
|
1149
|
+
const relocateNodes = [];
|
|
1150
|
+
const relocateSlotContent = (elm) => {
|
|
1151
|
+
// tslint:disable-next-line: prefer-const
|
|
1152
|
+
let childNode;
|
|
1153
|
+
let node;
|
|
1154
|
+
let hostContentNodes;
|
|
1155
|
+
let slotNameAttr;
|
|
1156
|
+
let relocateNodeData;
|
|
1157
|
+
let j;
|
|
1158
|
+
let i = 0;
|
|
1159
|
+
const childNodes = elm.childNodes;
|
|
1160
|
+
const ilen = childNodes.length;
|
|
1161
|
+
for (; i < ilen; i++) {
|
|
1162
|
+
childNode = childNodes[i];
|
|
1163
|
+
if (childNode['s-sr'] && (node = childNode['s-cr']) && node.parentNode) {
|
|
1164
|
+
// first got the content reference comment node
|
|
1165
|
+
// then we got it's parent, which is where all the host content is in now
|
|
1166
|
+
hostContentNodes = node.parentNode.childNodes;
|
|
1167
|
+
slotNameAttr = childNode['s-sn'];
|
|
1168
|
+
for (j = hostContentNodes.length - 1; j >= 0; j--) {
|
|
1169
|
+
node = hostContentNodes[j];
|
|
1170
|
+
if (!node['s-cn'] && !node['s-nr'] && node['s-hn'] !== childNode['s-hn']) {
|
|
1171
|
+
// let's do some relocating to its new home
|
|
1172
|
+
// but never relocate a content reference node
|
|
1173
|
+
// that is suppose to always represent the original content location
|
|
1174
|
+
if (isNodeLocatedInSlot(node, slotNameAttr)) {
|
|
1175
|
+
// it's possible we've already decided to relocate this node
|
|
1176
|
+
relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
|
|
1177
|
+
// made some changes to slots
|
|
1178
|
+
// let's make sure we also double check
|
|
1179
|
+
// fallbacks are correctly hidden or shown
|
|
1180
|
+
checkSlotFallbackVisibility = true;
|
|
1181
|
+
node['s-sn'] = node['s-sn'] || slotNameAttr;
|
|
1182
|
+
if (relocateNodeData) {
|
|
1183
|
+
// previously we never found a slot home for this node
|
|
1184
|
+
// but turns out we did, so let's remember it now
|
|
1185
|
+
relocateNodeData.$slotRefNode$ = childNode;
|
|
1186
|
+
}
|
|
1187
|
+
else {
|
|
1188
|
+
// add to our list of nodes to relocate
|
|
1189
|
+
relocateNodes.push({
|
|
1190
|
+
$slotRefNode$: childNode,
|
|
1191
|
+
$nodeToRelocate$: node,
|
|
1192
|
+
});
|
|
1193
|
+
}
|
|
1194
|
+
if (node['s-sr']) {
|
|
1195
|
+
relocateNodes.map((relocateNode) => {
|
|
1196
|
+
if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node['s-sn'])) {
|
|
1197
|
+
relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
|
|
1198
|
+
if (relocateNodeData && !relocateNode.$slotRefNode$) {
|
|
1199
|
+
relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
|
|
1200
|
+
}
|
|
1201
|
+
}
|
|
1202
|
+
});
|
|
1203
|
+
}
|
|
1204
|
+
}
|
|
1205
|
+
else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
|
|
1206
|
+
// so far this element does not have a slot home, not setting slotRefNode on purpose
|
|
1207
|
+
// if we never find a home for this element then we'll need to hide it
|
|
1208
|
+
relocateNodes.push({
|
|
1209
|
+
$nodeToRelocate$: node,
|
|
1210
|
+
});
|
|
1211
|
+
}
|
|
1212
|
+
}
|
|
1213
|
+
}
|
|
1214
|
+
}
|
|
1215
|
+
if (childNode.nodeType === 1 /* NODE_TYPE.ElementNode */) {
|
|
1216
|
+
relocateSlotContent(childNode);
|
|
1217
|
+
}
|
|
1218
|
+
}
|
|
1219
|
+
};
|
|
1220
|
+
const isNodeLocatedInSlot = (nodeToRelocate, slotNameAttr) => {
|
|
1221
|
+
if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
|
|
1222
|
+
if (nodeToRelocate.getAttribute('slot') === null && slotNameAttr === '') {
|
|
1223
|
+
return true;
|
|
1224
|
+
}
|
|
1225
|
+
if (nodeToRelocate.getAttribute('slot') === slotNameAttr) {
|
|
1226
|
+
return true;
|
|
1227
|
+
}
|
|
1228
|
+
return false;
|
|
1229
|
+
}
|
|
1230
|
+
if (nodeToRelocate['s-sn'] === slotNameAttr) {
|
|
1231
|
+
return true;
|
|
1232
|
+
}
|
|
1233
|
+
return slotNameAttr === '';
|
|
1234
|
+
};
|
|
960
1235
|
/**
|
|
961
1236
|
* 'Nullify' any VDom `ref` callbacks on a VDom node or its children by
|
|
962
1237
|
* calling them with `null`. This signals that the DOM element corresponding to
|
|
@@ -999,8 +1274,90 @@ const renderVdom = (hostRef, renderFnResults) => {
|
|
|
999
1274
|
{
|
|
1000
1275
|
scopeId = hostElm['s-sc'];
|
|
1001
1276
|
}
|
|
1277
|
+
{
|
|
1278
|
+
contentRef = hostElm['s-cr'];
|
|
1279
|
+
useNativeShadowDom = (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) !== 0;
|
|
1280
|
+
// always reset
|
|
1281
|
+
checkSlotFallbackVisibility = false;
|
|
1282
|
+
}
|
|
1002
1283
|
// synchronous patch
|
|
1003
1284
|
patch(oldVNode, rootVnode);
|
|
1285
|
+
{
|
|
1286
|
+
// while we're moving nodes around existing nodes, temporarily disable
|
|
1287
|
+
// the disconnectCallback from working
|
|
1288
|
+
plt.$flags$ |= 1 /* PLATFORM_FLAGS.isTmpDisconnected */;
|
|
1289
|
+
if (checkSlotRelocate) {
|
|
1290
|
+
relocateSlotContent(rootVnode.$elm$);
|
|
1291
|
+
let relocateData;
|
|
1292
|
+
let nodeToRelocate;
|
|
1293
|
+
let orgLocationNode;
|
|
1294
|
+
let parentNodeRef;
|
|
1295
|
+
let insertBeforeNode;
|
|
1296
|
+
let refNode;
|
|
1297
|
+
let i = 0;
|
|
1298
|
+
for (; i < relocateNodes.length; i++) {
|
|
1299
|
+
relocateData = relocateNodes[i];
|
|
1300
|
+
nodeToRelocate = relocateData.$nodeToRelocate$;
|
|
1301
|
+
if (!nodeToRelocate['s-ol']) {
|
|
1302
|
+
// add a reference node marking this node's original location
|
|
1303
|
+
// keep a reference to this node for later lookups
|
|
1304
|
+
orgLocationNode =
|
|
1305
|
+
doc.createTextNode('');
|
|
1306
|
+
orgLocationNode['s-nr'] = nodeToRelocate;
|
|
1307
|
+
nodeToRelocate.parentNode.insertBefore((nodeToRelocate['s-ol'] = orgLocationNode), nodeToRelocate);
|
|
1308
|
+
}
|
|
1309
|
+
}
|
|
1310
|
+
for (i = 0; i < relocateNodes.length; i++) {
|
|
1311
|
+
relocateData = relocateNodes[i];
|
|
1312
|
+
nodeToRelocate = relocateData.$nodeToRelocate$;
|
|
1313
|
+
if (relocateData.$slotRefNode$) {
|
|
1314
|
+
// by default we're just going to insert it directly
|
|
1315
|
+
// after the slot reference node
|
|
1316
|
+
parentNodeRef = relocateData.$slotRefNode$.parentNode;
|
|
1317
|
+
insertBeforeNode = relocateData.$slotRefNode$.nextSibling;
|
|
1318
|
+
orgLocationNode = nodeToRelocate['s-ol'];
|
|
1319
|
+
while ((orgLocationNode = orgLocationNode.previousSibling)) {
|
|
1320
|
+
refNode = orgLocationNode['s-nr'];
|
|
1321
|
+
if (refNode && refNode['s-sn'] === nodeToRelocate['s-sn'] && parentNodeRef === refNode.parentNode) {
|
|
1322
|
+
refNode = refNode.nextSibling;
|
|
1323
|
+
if (!refNode || !refNode['s-nr']) {
|
|
1324
|
+
insertBeforeNode = refNode;
|
|
1325
|
+
break;
|
|
1326
|
+
}
|
|
1327
|
+
}
|
|
1328
|
+
}
|
|
1329
|
+
if ((!insertBeforeNode && parentNodeRef !== nodeToRelocate.parentNode) ||
|
|
1330
|
+
nodeToRelocate.nextSibling !== insertBeforeNode) {
|
|
1331
|
+
// we've checked that it's worth while to relocate
|
|
1332
|
+
// since that the node to relocate
|
|
1333
|
+
// has a different next sibling or parent relocated
|
|
1334
|
+
if (nodeToRelocate !== insertBeforeNode) {
|
|
1335
|
+
if (!nodeToRelocate['s-hn'] && nodeToRelocate['s-ol']) {
|
|
1336
|
+
// probably a component in the index.html that doesn't have it's hostname set
|
|
1337
|
+
nodeToRelocate['s-hn'] = nodeToRelocate['s-ol'].parentNode.nodeName;
|
|
1338
|
+
}
|
|
1339
|
+
// add it back to the dom but in its new home
|
|
1340
|
+
parentNodeRef.insertBefore(nodeToRelocate, insertBeforeNode);
|
|
1341
|
+
}
|
|
1342
|
+
}
|
|
1343
|
+
}
|
|
1344
|
+
else {
|
|
1345
|
+
// this node doesn't have a slot home to go to, so let's hide it
|
|
1346
|
+
if (nodeToRelocate.nodeType === 1 /* NODE_TYPE.ElementNode */) {
|
|
1347
|
+
nodeToRelocate.hidden = true;
|
|
1348
|
+
}
|
|
1349
|
+
}
|
|
1350
|
+
}
|
|
1351
|
+
}
|
|
1352
|
+
if (checkSlotFallbackVisibility) {
|
|
1353
|
+
updateFallbackSlotVisibility(rootVnode.$elm$);
|
|
1354
|
+
}
|
|
1355
|
+
// done moving nodes around
|
|
1356
|
+
// allow the disconnect callback to work again
|
|
1357
|
+
plt.$flags$ &= ~1 /* PLATFORM_FLAGS.isTmpDisconnected */;
|
|
1358
|
+
// always reset
|
|
1359
|
+
relocateNodes.length = 0;
|
|
1360
|
+
}
|
|
1004
1361
|
};
|
|
1005
1362
|
const attachToAncestor = (hostRef, ancestorComponent) => {
|
|
1006
1363
|
if (ancestorComponent && !hostRef.$onRenderResolve$ && ancestorComponent['s-p']) {
|
|
@@ -1501,6 +1858,16 @@ const connectedCallback = (elm) => {
|
|
|
1501
1858
|
if (!(hostRef.$flags$ & 1 /* HOST_FLAGS.hasConnected */)) {
|
|
1502
1859
|
// first time this component has connected
|
|
1503
1860
|
hostRef.$flags$ |= 1 /* HOST_FLAGS.hasConnected */;
|
|
1861
|
+
{
|
|
1862
|
+
// initUpdate
|
|
1863
|
+
// if the slot polyfill is required we'll need to put some nodes
|
|
1864
|
+
// in here to act as original content anchors as we move nodes around
|
|
1865
|
+
// host element has been connected to the DOM
|
|
1866
|
+
if ((// TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
|
|
1867
|
+
cmpMeta.$flags$ & (4 /* CMP_FLAGS.hasSlotRelocation */ | 8 /* CMP_FLAGS.needsShadowDomShim */))) {
|
|
1868
|
+
setContentReference(elm);
|
|
1869
|
+
}
|
|
1870
|
+
}
|
|
1504
1871
|
{
|
|
1505
1872
|
// find the first ancestor component (if there is one) and register
|
|
1506
1873
|
// this component as one of the actively loading child components for its ancestor
|
|
@@ -1542,6 +1909,17 @@ const connectedCallback = (elm) => {
|
|
|
1542
1909
|
endConnected();
|
|
1543
1910
|
}
|
|
1544
1911
|
};
|
|
1912
|
+
const setContentReference = (elm) => {
|
|
1913
|
+
// only required when we're NOT using native shadow dom (slot)
|
|
1914
|
+
// or this browser doesn't support native shadow dom
|
|
1915
|
+
// and this host element was NOT created with SSR
|
|
1916
|
+
// let's pick out the inner content for slot projection
|
|
1917
|
+
// create a node to represent where the original
|
|
1918
|
+
// content was first placed, which is useful later on
|
|
1919
|
+
const contentRefElm = (elm['s-cr'] = doc.createComment(''));
|
|
1920
|
+
contentRefElm['s-cn'] = true;
|
|
1921
|
+
elm.insertBefore(contentRefElm, elm.firstChild);
|
|
1922
|
+
};
|
|
1545
1923
|
const disconnectedCallback = (elm) => {
|
|
1546
1924
|
if ((plt.$flags$ & 1 /* PLATFORM_FLAGS.isTmpDisconnected */) === 0) {
|
|
1547
1925
|
const hostRef = getHostRef(elm);
|
|
@@ -1817,4 +2195,4 @@ const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
|
|
|
1817
2195
|
|
|
1818
2196
|
export { Host as H, bootstrapLazy as b, createEvent as c, forceUpdate as f, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
|
|
1819
2197
|
|
|
1820
|
-
//# sourceMappingURL=index-
|
|
2198
|
+
//# sourceMappingURL=index-2714248e.js.map
|