@aquera/nile-elements 0.1.67-beta-1.6 → 0.1.67-beta-1.8
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/demo/index.html +150 -245
- package/dist/aquera-nile-elements-0.1.57-beta-2.0.tgz +0 -0
- package/dist/axe.min-2b379f29.cjs.js +12 -0
- package/dist/axe.min-2b379f29.cjs.js.map +1 -0
- package/dist/axe.min-c2cd8733.esm.js +12 -0
- package/dist/{fixture-aeed6660.esm.js → fixture-add72f26.esm.js} +2 -2
- package/dist/fixture-c1bd203f.cjs.js +395 -0
- package/dist/fixture-c1bd203f.cjs.js.map +1 -0
- package/dist/{fixture-4da0d7ba.cjs.js → fixture-cb376a7f.cjs.js} +2 -2
- package/dist/fixture-cb376a7f.cjs.js.map +1 -0
- package/dist/fixture-f2693d97.esm.js +569 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +246 -345
- package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.cjs.js.map +1 -1
- package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
- package/dist/nile-badge/index.cjs.js +1 -1
- package/dist/nile-badge/index.esm.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.esm.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js.map +1 -1
- package/dist/nile-badge/nile-badge.test.esm.js +1 -1
- package/dist/nile-button/index.cjs.js +1 -1
- package/dist/nile-button/index.esm.js +1 -1
- package/dist/nile-button/nile-button.cjs.js +1 -1
- package/dist/nile-button/nile-button.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.esm.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js.map +1 -1
- package/dist/nile-button/nile-button.test.esm.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js.map +1 -1
- package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js.map +1 -1
- package/dist/nile-chip/nile-chip.test.esm.js +1 -1
- package/dist/nile-dialog/index.cjs.js +1 -1
- package/dist/nile-dialog/index.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js.map +1 -1
- package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
- package/dist/nile-drawer/index.cjs.js +1 -1
- package/dist/nile-drawer/index.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.esm.js +2 -2
- package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js.map +1 -1
- package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
- package/dist/nile-icon/icons/svg/index.cjs.js +1 -1
- package/dist/nile-icon/icons/svg/index.esm.js +1 -1
- package/dist/nile-icon/index.cjs.js +1 -1
- package/dist/nile-icon/index.cjs.js.map +1 -1
- package/dist/nile-icon/index.esm.js +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js.map +1 -1
- package/dist/nile-icon/nile-icon.test.esm.js +1 -1
- package/dist/nile-icon-button/index.cjs.js +1 -1
- package/dist/nile-icon-button/index.esm.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js +1 -1
- package/dist/nile-icon-button/nile-icon-button.cjs.js.map +1 -1
- package/dist/nile-icon-button/nile-icon-button.esm.js +1 -1
- package/dist/nile-input/index.cjs.js +1 -1
- package/dist/nile-input/index.esm.js +1 -1
- package/dist/nile-input/nile-input.cjs.js +1 -1
- package/dist/nile-input/nile-input.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.esm.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.test.esm.js +1 -1
- package/dist/nile-menu-item/index.cjs.js +1 -1
- package/dist/nile-menu-item/index.esm.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js +1 -1
- package/dist/nile-menu-item/nile-menu-item.cjs.js.map +1 -1
- package/dist/nile-menu-item/nile-menu-item.esm.js +1 -1
- package/dist/nile-option/index.cjs.js +1 -1
- package/dist/nile-option/index.esm.js +1 -1
- package/dist/nile-option/nile-option.cjs.js +1 -1
- package/dist/nile-option/nile-option.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.esm.js +2 -2
- package/dist/nile-option-group/index.cjs.js +2 -0
- package/dist/nile-option-group/index.esm.js +1 -0
- package/dist/nile-option-group/nile-option-group.cjs.js +2 -0
- package/dist/nile-option-group/nile-option-group.cjs.js.map +1 -0
- package/dist/nile-option-group/nile-option-group.css.cjs.js +2 -0
- package/dist/nile-option-group/nile-option-group.css.cjs.js.map +1 -0
- package/dist/nile-option-group/nile-option-group.css.esm.js +46 -0
- package/dist/nile-option-group/nile-option-group.esm.js +14 -0
- package/dist/nile-option-group/nile-option-group.interface.cjs.js +2 -0
- package/dist/nile-option-group/nile-option-group.interface.cjs.js.map +1 -0
- package/dist/nile-option-group/nile-option-group.interface.esm.js +1 -0
- package/dist/nile-select/index.cjs.js +1 -1
- package/dist/nile-select/index.esm.js +1 -1
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +2 -2
- package/dist/nile-select/nile-select.test.cjs.js +1 -1
- package/dist/nile-select/nile-select.test.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.test.esm.js +1 -1
- package/dist/nile-tab/index.cjs.js +1 -1
- package/dist/nile-tab/index.esm.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js +1 -1
- package/dist/nile-tab/nile-tab.cjs.js.map +1 -1
- package/dist/nile-tab/nile-tab.esm.js +1 -1
- package/dist/nile-tab-group/index.cjs.js +1 -1
- package/dist/nile-tab-group/index.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js.map +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
- package/dist/nile-tag/index.cjs.js +1 -1
- package/dist/nile-tag/index.esm.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js +1 -1
- package/dist/nile-tag/nile-tag.cjs.js.map +1 -1
- package/dist/nile-tag/nile-tag.esm.js +1 -1
- package/dist/nile-toast/index.cjs.js +1 -1
- package/dist/nile-toast/index.esm.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js +1 -1
- package/dist/nile-toast/nile-toast.cjs.js.map +1 -1
- package/dist/nile-toast/nile-toast.esm.js +1 -1
- package/dist/nile-tree/index.cjs.js +1 -1
- package/dist/nile-tree/index.esm.js +1 -1
- package/dist/nile-tree/nile-tree.cjs.js +1 -1
- package/dist/nile-tree/nile-tree.cjs.js.map +1 -1
- package/dist/nile-tree/nile-tree.esm.js +1 -1
- package/dist/nile-tree-item/index.cjs.js +1 -1
- package/dist/nile-tree-item/index.esm.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.cjs.js +1 -1
- package/dist/nile-tree-item/nile-tree-item.cjs.js.map +1 -1
- package/dist/nile-tree-item/nile-tree-item.esm.js +1 -1
- package/dist/nile-virtual-select/index.cjs.js +1 -1
- package/dist/nile-virtual-select/index.esm.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.esm.js +2 -2
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/nile-group-header/index.d.ts +1 -0
- package/dist/src/nile-group-header/index.js +2 -0
- package/dist/src/nile-group-header/index.js.map +1 -0
- package/dist/src/nile-group-header/nile-group-header.css.d.ts +12 -0
- package/dist/src/nile-group-header/nile-group-header.css.js +30 -0
- package/dist/src/nile-group-header/nile-group-header.css.js.map +1 -0
- package/dist/src/nile-group-header/nile-group-header.d.ts +19 -0
- package/dist/src/nile-group-header/nile-group-header.js +36 -0
- package/dist/src/nile-group-header/nile-group-header.js.map +1 -0
- package/dist/src/nile-group-header/nile-option-header.css.d.ts +12 -0
- package/dist/src/nile-group-header/nile-option-header.css.js +30 -0
- package/dist/src/nile-group-header/nile-option-header.css.js.map +1 -0
- package/dist/src/nile-group-header/nile-option-header.d.ts +33 -0
- package/dist/src/nile-group-header/nile-option-header.js +51 -0
- package/dist/src/nile-group-header/nile-option-header.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/index.d.ts +0 -9
- package/dist/src/nile-icon/icons/svg/index.js +0 -9
- package/dist/src/nile-icon/icons/svg/index.js.map +1 -1
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +1 -1
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +1 -1
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +1 -1
- package/dist/src/nile-option/nile-option.d.ts +1 -0
- package/dist/src/nile-option/nile-option.js +5 -0
- package/dist/src/nile-option/nile-option.js.map +1 -1
- package/dist/src/nile-option-group/index.d.ts +1 -0
- package/dist/src/nile-option-group/index.js +2 -0
- package/dist/src/nile-option-group/index.js.map +1 -0
- package/dist/src/nile-option-group/nile-option-group.css.d.ts +12 -0
- package/dist/src/nile-option-group/nile-option-group.css.js +58 -0
- package/dist/src/nile-option-group/nile-option-group.css.js.map +1 -0
- package/dist/src/nile-option-group/nile-option-group.d.ts +23 -0
- package/dist/src/nile-option-group/nile-option-group.interface.d.ts +21 -0
- package/dist/src/nile-option-group/nile-option-group.interface.js +2 -0
- package/dist/src/nile-option-group/nile-option-group.interface.js.map +1 -0
- package/dist/src/nile-option-group/nile-option-group.js +78 -0
- package/dist/src/nile-option-group/nile-option-group.js.map +1 -0
- package/dist/src/nile-option-header/index.d.ts +1 -0
- package/dist/src/nile-option-header/index.js +2 -0
- package/dist/src/nile-option-header/index.js.map +1 -0
- package/dist/src/nile-option-header/nile-option-header.css.d.ts +12 -0
- package/dist/src/nile-option-header/nile-option-header.css.js +30 -0
- package/dist/src/nile-option-header/nile-option-header.css.js.map +1 -0
- package/dist/src/nile-option-header/nile-option-header.d.ts +33 -0
- package/dist/src/nile-option-header/nile-option-header.js +51 -0
- package/dist/src/nile-option-header/nile-option-header.js.map +1 -0
- package/dist/src/nile-select/nile-select.d.ts +3 -0
- package/dist/src/nile-select/nile-select.js +34 -1
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-tooltip/nile-tooltip-utils.d.ts +18 -0
- package/dist/src/nile-tooltip/nile-tooltip-utils.js +216 -0
- package/dist/src/nile-tooltip/nile-tooltip-utils.js.map +1 -0
- package/dist/src/nile-tooltip/nile-tooltip.test.d.ts +1 -0
- package/dist/src/nile-tooltip/nile-tooltip.test.js +148 -0
- package/dist/src/nile-tooltip/nile-tooltip.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -3
- package/src/index.ts +1 -1
- package/src/nile-icon/icons/svg/index.ts +0 -9
- package/src/nile-option/nile-option.ts +3 -0
- package/src/nile-option-group/index.ts +1 -0
- package/src/nile-option-group/nile-option-group.css.ts +60 -0
- package/src/nile-option-group/nile-option-group.interface.ts +24 -0
- package/src/nile-option-group/nile-option-group.ts +87 -0
- package/src/nile-select/nile-select.ts +41 -2
- package/vscode-html-custom-data.json +20 -134
- package/dist/axe.min-2c0b27d0.esm.js +0 -1
- package/dist/axe.min-51d832fe.cjs.js +0 -2
- package/dist/axe.min-51d832fe.cjs.js.map +0 -1
- package/dist/fixture-4da0d7ba.cjs.js.map +0 -1
- package/dist/flow-938d2713.esm.js +0 -17
- package/dist/flow-eb3cbb92.cjs.js +0 -14
- package/dist/flow-eb3cbb92.cjs.js.map +0 -1
- package/dist/lit-html-879bd16a.esm.js +0 -7
- package/dist/lit-html-9a84b336.cjs.js +0 -6
- package/dist/lit-html-9a84b336.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_align_justify.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_align_justify.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_align_justify.esm.js +0 -1
- package/dist/nile-icon/icons/svg/format_align_left.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_align_left.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_align_left.esm.js +0 -1
- package/dist/nile-icon/icons/svg/format_align_middle.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_align_middle.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_align_middle.esm.js +0 -1
- package/dist/nile-icon/icons/svg/format_align_right.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_align_right.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_align_right.esm.js +0 -1
- package/dist/nile-icon/icons/svg/format_bold.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_bold.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_bold.esm.js +0 -1
- package/dist/nile-icon/icons/svg/format_italic.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_italic.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_italic.esm.js +0 -1
- package/dist/nile-icon/icons/svg/format_underline.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/format_underline.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/format_underline.esm.js +0 -1
- package/dist/nile-icon/icons/svg/image_2.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/image_2.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/image_2.esm.js +0 -1
- package/dist/nile-icon/icons/svg/link_2.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/link_2.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/link_2.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-action.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-action.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-action.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-activity.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-activity.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-activity.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-alert-circle.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-align-center.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-align-center.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-align-center.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-annotation-x.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-down.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-arrow-up.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-bar-chart-12.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-bell-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-bell-ringing-04.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-bold-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-building-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-building-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-building-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-building-05.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-building-05.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-building-05.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-calendar-plus-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-calendar.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-calendar.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-calendar.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-check-circle.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-check-square-broken.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-check.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-check.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-check.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-down.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-left.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-right.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-up-double.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-chevron-up.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-copy-03.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-dataflow-04.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-dots-grid.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-dots-vertical.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-download-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-download-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-download-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-dropdown.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-edit-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-edit-05.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-expand-06.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-eye-off.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-eye.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-eye.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-eye.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-file-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-file-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-file-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-file-06.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-file-06.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-file-06.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-file-check-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-file-question-03.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-filter-lines.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-grid-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-help-circle.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-image-03.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-image-03.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-image-03.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-image-user-left.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-info-circle.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-italic-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-layers-three-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-list.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-list.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-list.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-log-out-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-mail-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-mail-04.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-marker-pin-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-menu-05.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-message-text-square-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-minimize-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-minus.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-minus.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-minus.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-plus.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-plus.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-plus.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-refresh-cw-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-rocket-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-search-lg.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-send-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-send-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-send-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-settings-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-share-04.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-share-04.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-share-04.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-share-06.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-share-06.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-share-06.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-stars-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-trash-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-trash-03.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-trend-up-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-underline-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-upload-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-upload-cloud-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-user-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-user-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-user-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-user-check-02-1.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-user-check-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-user-plus-02.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-user-right-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-users-01.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-users-01.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-users-01.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-x-circle.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-x-close.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-x-close.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-x-close.esm.js +0 -1
- package/dist/nile-icon/icons/svg/ng-x-square.cjs.js +0 -2
- package/dist/nile-icon/icons/svg/ng-x-square.cjs.js.map +0 -1
- package/dist/nile-icon/icons/svg/ng-x-square.esm.js +0 -1
- package/dist/nile-rich-text-editor/index.cjs.js +0 -2
- package/dist/nile-rich-text-editor/index.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +0 -107
- package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-color.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-color.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-color.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-divider.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-mentions-item.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js +0 -3
- package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-mentions.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-preview.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-select.esm.js +0 -52
- package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-toolbar-item.esm.js +0 -1
- package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js +0 -2
- package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/nile-rte-toolbar.esm.js +0 -1
- package/dist/nile-rich-text-editor/utils.cjs.js +0 -2
- package/dist/nile-rich-text-editor/utils.cjs.js.map +0 -1
- package/dist/nile-rich-text-editor/utils.esm.js +0 -1
- package/dist/scopedElementsWrapper-24f32095.cjs.js +0 -6
- package/dist/scopedElementsWrapper-24f32095.cjs.js.map +0 -1
- package/dist/scopedElementsWrapper-7a509408.esm.js +0 -7
- package/dist/sinon-esm-69e51168.cjs.js +0 -2
- package/dist/sinon-esm-69e51168.cjs.js.map +0 -1
- package/dist/sinon-esm-73a0cd99.esm.js +0 -1
- package/dist/src/nile-calendar/test.d.ts +0 -0
- package/dist/src/nile-calendar/test.js +0 -2
- package/dist/src/nile-calendar/test.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_align_justify.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_justify.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_justify.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_align_left.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_left.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_left.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_align_middle.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_middle.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_middle.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_align_right.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_right.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_align_right.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_bold.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_bold.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_bold.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_italic.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_italic.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_italic.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/format_underline.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/format_underline.js +0 -5
- package/dist/src/nile-icon/icons/svg/format_underline.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/image_2.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/image_2.js +0 -5
- package/dist/src/nile-icon/icons/svg/image_2.js.map +0 -1
- package/dist/src/nile-icon/icons/svg/link_2.d.ts +0 -5
- package/dist/src/nile-icon/icons/svg/link_2.js +0 -5
- package/dist/src/nile-icon/icons/svg/link_2.js.map +0 -1
- package/dist/src/nile-rich-text-editor/index.d.ts +0 -1
- package/dist/src/nile-rich-text-editor/index.js +0 -2
- package/dist/src/nile-rich-text-editor/index.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.d.ts +0 -3
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +0 -111
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +0 -58
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +0 -667
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-color.d.ts +0 -14
- package/dist/src/nile-rich-text-editor/nile-rte-color.js +0 -28
- package/dist/src/nile-rich-text-editor/nile-rte-color.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-divider.d.ts +0 -10
- package/dist/src/nile-rich-text-editor/nile-rte-divider.js +0 -12
- package/dist/src/nile-rich-text-editor/nile-rte-divider.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.d.ts +0 -19
- package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js +0 -54
- package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-mentions.d.ts +0 -64
- package/dist/src/nile-rich-text-editor/nile-rte-mentions.js +0 -490
- package/dist/src/nile-rich-text-editor/nile-rte-mentions.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-preview.d.ts +0 -10
- package/dist/src/nile-rich-text-editor/nile-rte-preview.js +0 -12
- package/dist/src/nile-rich-text-editor/nile-rte-preview.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +0 -37
- package/dist/src/nile-rich-text-editor/nile-rte-select.js +0 -205
- package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.d.ts +0 -12
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js +0 -23
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js.map +0 -1
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar.d.ts +0 -10
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js +0 -12
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/content.d.ts +0 -2
- package/dist/src/nile-rich-text-editor/rte-utils/content.js +0 -25
- package/dist/src/nile-rich-text-editor/rte-utils/content.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/css.d.ts +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/css.js +0 -9
- package/dist/src/nile-rich-text-editor/rte-utils/css.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/dom.d.ts +0 -2
- package/dist/src/nile-rich-text-editor/rte-utils/dom.js +0 -48
- package/dist/src/nile-rich-text-editor/rte-utils/dom.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/formatting.d.ts +0 -2
- package/dist/src/nile-rich-text-editor/rte-utils/formatting.js +0 -69
- package/dist/src/nile-rich-text-editor/rte-utils/formatting.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/keys.d.ts +0 -2
- package/dist/src/nile-rich-text-editor/rte-utils/keys.js +0 -38
- package/dist/src/nile-rich-text-editor/rte-utils/keys.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/lists.d.ts +0 -2
- package/dist/src/nile-rich-text-editor/rte-utils/lists.js +0 -28
- package/dist/src/nile-rich-text-editor/rte-utils/lists.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/selection.d.ts +0 -17
- package/dist/src/nile-rich-text-editor/rte-utils/selection.js +0 -39
- package/dist/src/nile-rich-text-editor/rte-utils/selection.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/toolbar.d.ts +0 -28
- package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js +0 -161
- package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.d.ts +0 -13
- package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js +0 -119
- package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js.map +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/vars.d.ts +0 -1
- package/dist/src/nile-rich-text-editor/rte-utils/vars.js +0 -14
- package/dist/src/nile-rich-text-editor/rte-utils/vars.js.map +0 -1
- package/dist/src/nile-rich-text-editor/utils.d.ts +0 -13
- package/dist/src/nile-rich-text-editor/utils.js +0 -405
- package/dist/src/nile-rich-text-editor/utils.js.map +0 -1
- package/dist/src/version.d.ts +0 -9
- package/dist/src/version.js +0 -7
- package/dist/src/version.js.map +0 -1
- package/dist/version.cjs.js +0 -2
- package/dist/version.cjs.js.map +0 -1
- package/dist/version.esm.js +0 -1
- package/dist/virtualize-3a6cec69.esm.js +0 -22
- package/dist/virtualize-72f549f4.cjs.js +0 -18
- package/dist/virtualize-72f549f4.cjs.js.map +0 -1
- package/src/nile-icon/icons/svg/format_align_justify.ts +0 -5
- package/src/nile-icon/icons/svg/format_align_left.ts +0 -5
- package/src/nile-icon/icons/svg/format_align_middle.ts +0 -5
- package/src/nile-icon/icons/svg/format_align_right.ts +0 -5
- package/src/nile-icon/icons/svg/format_bold.ts +0 -5
- package/src/nile-icon/icons/svg/format_italic.ts +0 -5
- package/src/nile-icon/icons/svg/format_underline.ts +0 -5
- package/src/nile-icon/icons/svg/image_2.ts +0 -5
- package/src/nile-icon/icons/svg/link_2.ts +0 -5
- package/src/nile-rich-text-editor/index.ts +0 -1
- package/src/nile-rich-text-editor/nile-rich-text-editor.css.ts +0 -112
- package/src/nile-rich-text-editor/nile-rich-text-editor.ts +0 -738
- package/src/nile-rich-text-editor/nile-rte-color.ts +0 -14
- package/src/nile-rich-text-editor/nile-rte-divider.ts +0 -9
- package/src/nile-rich-text-editor/nile-rte-mentions-item.ts +0 -46
- package/src/nile-rich-text-editor/nile-rte-mentions.ts +0 -522
- package/src/nile-rich-text-editor/nile-rte-preview.ts +0 -9
- package/src/nile-rich-text-editor/nile-rte-select.ts +0 -213
- package/src/nile-rich-text-editor/nile-rte-toolbar-item.ts +0 -13
- package/src/nile-rich-text-editor/nile-rte-toolbar.ts +0 -9
- package/src/nile-rich-text-editor/utils.ts +0 -419
- /package/dist/{nile-rich-text-editor → nile-option-group}/index.cjs.js.map +0 -0
@@ -1,490 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { LitElement } from 'lit';
|
3
|
-
import { customElement, property, state } from 'lit/decorators.js';
|
4
|
-
let NileRteMentions = class NileRteMentions extends LitElement {
|
5
|
-
constructor() {
|
6
|
-
super(...arguments);
|
7
|
-
this.mentions = {};
|
8
|
-
// nile-rte-mentions.ts (inside class)
|
9
|
-
this.mentionFormat = {};
|
10
|
-
this.itemsFormats = {};
|
11
|
-
this.mentionColors = {}; // NEW
|
12
|
-
/** External config from the editor (lowest priority) */
|
13
|
-
this.externalConfig = {};
|
14
|
-
/** Config gathered from child <nile-rte-mentions-item> (highest priority) */
|
15
|
-
this.itemsConfig = {};
|
16
|
-
this.itemsColors = {}; // NEW
|
17
|
-
// wired from editor
|
18
|
-
this.editorEl = null;
|
19
|
-
this.hostEl = null;
|
20
|
-
this.dropdownEl = null; // <nile-dropdown>
|
21
|
-
this.menuEl = null; // <nile-menu>
|
22
|
-
// selection caret
|
23
|
-
this.lastRange = null;
|
24
|
-
// dropdown state
|
25
|
-
this.mentionOpen = false;
|
26
|
-
this.mentionTrigger = null;
|
27
|
-
this.mentionQuery = '';
|
28
|
-
this.mentionSuggestions = [];
|
29
|
-
this.mentionFiltered = [];
|
30
|
-
this.mentionX = 0;
|
31
|
-
this.mentionY = 0;
|
32
|
-
this.triggerBtn = null;
|
33
|
-
// Observe child items & their attributes
|
34
|
-
this.mo = null;
|
35
|
-
// ---------- selection helpers ----------
|
36
|
-
this.onSelectionChange = () => {
|
37
|
-
if (!this.editorEl)
|
38
|
-
return;
|
39
|
-
const sel = document.getSelection();
|
40
|
-
if (!sel || sel.rangeCount === 0)
|
41
|
-
return;
|
42
|
-
const range = sel.getRangeAt(0);
|
43
|
-
if (this.editorEl.contains(range.commonAncestorContainer)) {
|
44
|
-
this.lastRange = range.cloneRange();
|
45
|
-
}
|
46
|
-
};
|
47
|
-
this.saveSelection = () => {
|
48
|
-
const sel = window.getSelection();
|
49
|
-
if (sel && sel.rangeCount)
|
50
|
-
this.lastRange = sel.getRangeAt(0).cloneRange();
|
51
|
-
};
|
52
|
-
// ---------- editor events ----------
|
53
|
-
this.onEditorInput = () => {
|
54
|
-
if (this.mentionOpen)
|
55
|
-
this.handleMention();
|
56
|
-
};
|
57
|
-
this.onEditorKeyUp = (e) => {
|
58
|
-
this.saveSelection();
|
59
|
-
const key = e.key;
|
60
|
-
const cfg = this.config;
|
61
|
-
if (!this.mentionOpen && key && cfg[key]) {
|
62
|
-
this.openMention(key);
|
63
|
-
return;
|
64
|
-
}
|
65
|
-
if (this.mentionOpen)
|
66
|
-
this.handleMention();
|
67
|
-
};
|
68
|
-
this.onEditorKeyDown = (e) => {
|
69
|
-
if (!this.mentionOpen)
|
70
|
-
return;
|
71
|
-
const key = e.key;
|
72
|
-
if (key === 'ArrowDown' || key === 'ArrowUp' || key === 'Enter') {
|
73
|
-
e.preventDefault();
|
74
|
-
if (key === 'Enter' && this.mentionFiltered.length) {
|
75
|
-
this.selectMention(this.mentionFiltered[0]);
|
76
|
-
}
|
77
|
-
}
|
78
|
-
else if (key === 'Escape') {
|
79
|
-
e.preventDefault();
|
80
|
-
this.closeMention();
|
81
|
-
}
|
82
|
-
};
|
83
|
-
this.repositionMention = () => {
|
84
|
-
if (!this.mentionOpen || !this.hostEl || !this.triggerBtn)
|
85
|
-
return;
|
86
|
-
const caretRect = this.getCaretClientRect();
|
87
|
-
if (!caretRect)
|
88
|
-
return;
|
89
|
-
const hostRect = this.hostEl.getBoundingClientRect();
|
90
|
-
this.mentionX = caretRect.left - hostRect.left;
|
91
|
-
this.mentionY = caretRect.bottom - hostRect.top;
|
92
|
-
this.triggerBtn.style.left = `${this.mentionX}px`;
|
93
|
-
this.triggerBtn.style.top = `${this.mentionY}px`;
|
94
|
-
};
|
95
|
-
}
|
96
|
-
createRenderRoot() { return this; }
|
97
|
-
getTriggerFormat(trigger) {
|
98
|
-
const fromItems = this.itemsFormats[trigger] || {};
|
99
|
-
const fromAttr = this.mentionFormat[trigger] || {};
|
100
|
-
return {
|
101
|
-
prefix: (fromItems.prefix ?? fromAttr.prefix ?? ''),
|
102
|
-
suffix: (fromItems.suffix ?? fromAttr.suffix ?? ''),
|
103
|
-
};
|
104
|
-
}
|
105
|
-
formatLabel(trigger, rawLabel) {
|
106
|
-
const { prefix, suffix } = this.getTriggerFormat(trigger);
|
107
|
-
return `${prefix ?? ''}${rawLabel}${suffix ?? ''}`;
|
108
|
-
}
|
109
|
-
get config() {
|
110
|
-
// Priority: external < attribute < child-items
|
111
|
-
return { ...this.externalConfig, ...this.mentions, ...this.itemsConfig };
|
112
|
-
}
|
113
|
-
// Public API used by <nile-rich-text-editor>
|
114
|
-
attach(editorEl, hostEl) {
|
115
|
-
this.editorEl = editorEl;
|
116
|
-
this.hostEl = hostEl;
|
117
|
-
this.injectStyles();
|
118
|
-
this.ensureMentionDropdown();
|
119
|
-
this.rebuildConfigFromChildren();
|
120
|
-
// Watch for <nile-rte-mentions-item> add/remove/attr changes
|
121
|
-
this.mo = new MutationObserver(() => this.rebuildConfigFromChildren());
|
122
|
-
this.mo.observe(this, { childList: true, subtree: true, attributes: true });
|
123
|
-
// listeners on editor
|
124
|
-
this.editorEl.addEventListener('input', this.onEditorInput);
|
125
|
-
this.editorEl.addEventListener('mouseup', this.saveSelection);
|
126
|
-
this.editorEl.addEventListener('keyup', this.onEditorKeyUp);
|
127
|
-
this.editorEl.addEventListener('keydown', this.onEditorKeyDown);
|
128
|
-
this.editorEl.addEventListener('scroll', this.repositionMention);
|
129
|
-
// keep range fresh
|
130
|
-
document.addEventListener('selectionchange', this.onSelectionChange, true);
|
131
|
-
}
|
132
|
-
detach() {
|
133
|
-
if (this.mo) {
|
134
|
-
this.mo.disconnect();
|
135
|
-
this.mo = null;
|
136
|
-
}
|
137
|
-
if (this.editorEl) {
|
138
|
-
this.editorEl.removeEventListener('input', this.onEditorInput);
|
139
|
-
this.editorEl.removeEventListener('mouseup', this.saveSelection);
|
140
|
-
this.editorEl.removeEventListener('keyup', this.onEditorKeyUp);
|
141
|
-
this.editorEl.removeEventListener('keydown', this.onEditorKeyDown);
|
142
|
-
this.editorEl.removeEventListener('scroll', this.repositionMention);
|
143
|
-
}
|
144
|
-
document.removeEventListener('selectionchange', this.onSelectionChange, true);
|
145
|
-
}
|
146
|
-
setExternalConfig(cfg) {
|
147
|
-
this.externalConfig = cfg || {};
|
148
|
-
}
|
149
|
-
disconnectedCallback() {
|
150
|
-
this.detach();
|
151
|
-
super.disconnectedCallback();
|
152
|
-
}
|
153
|
-
// ---------- gather child items ----------
|
154
|
-
rebuildConfigFromChildren() {
|
155
|
-
const cfg = {};
|
156
|
-
const colors = {};
|
157
|
-
const formats = {};
|
158
|
-
const items = Array.from(this.querySelectorAll('nile-rte-mentions-item'));
|
159
|
-
for (const item of items) {
|
160
|
-
const trig = item.mentionsCharacter ??
|
161
|
-
item.getAttribute('mentionscharacter') ??
|
162
|
-
'';
|
163
|
-
if (!trig || typeof trig !== 'string')
|
164
|
-
continue;
|
165
|
-
let data = item.mentionsData ??
|
166
|
-
(() => {
|
167
|
-
const raw = item.getAttribute('mentionsdata');
|
168
|
-
if (!raw)
|
169
|
-
return null;
|
170
|
-
try {
|
171
|
-
const parsed = JSON.parse(raw);
|
172
|
-
return Array.isArray(parsed)
|
173
|
-
? parsed.filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')
|
174
|
-
: [];
|
175
|
-
}
|
176
|
-
catch {
|
177
|
-
return [];
|
178
|
-
}
|
179
|
-
})();
|
180
|
-
const color = item.mentionsColor ??
|
181
|
-
item.getAttribute('mentionscolor') ??
|
182
|
-
'';
|
183
|
-
const prefix = item.mentionsPrefix ??
|
184
|
-
item.getAttribute('mentionsprefix') ?? '';
|
185
|
-
const suffix = item.mentionsSuffix ??
|
186
|
-
item.getAttribute('mentionssuffix') ?? '';
|
187
|
-
if (!Array.isArray(data))
|
188
|
-
data = [];
|
189
|
-
cfg[trig] = data;
|
190
|
-
if (color)
|
191
|
-
colors[trig] = String(color);
|
192
|
-
if (prefix || suffix)
|
193
|
-
formats[trig] = { prefix, suffix };
|
194
|
-
}
|
195
|
-
this.itemsConfig = cfg;
|
196
|
-
this.itemsColors = colors;
|
197
|
-
this.itemsFormats = formats;
|
198
|
-
}
|
199
|
-
// ---------- styles ----------
|
200
|
-
injectStyles() {
|
201
|
-
if (this.querySelector('style[data-mentions-style]'))
|
202
|
-
return;
|
203
|
-
const style = document.createElement('style');
|
204
|
-
style.setAttribute('data-mentions-style', 'true');
|
205
|
-
style.textContent = `
|
206
|
-
.mention-dropdown {
|
207
|
-
position: absolute; z-index: 1000; list-style: none; margin: 0; padding: 4px;
|
208
|
-
border: 1px solid #e5e7eb; border-radius: 6px; background: #fff;
|
209
|
-
box-shadow: 0 4px 10px rgba(0,0,0,.08); max-height: 180px; overflow: auto; font-size: 14px;
|
210
|
-
}
|
211
|
-
.mention-dropdown li { padding: 6px 8px; cursor: pointer; border-radius: 4px; }
|
212
|
-
.mention-dropdown li:hover { background: #f1f5f9; }
|
213
|
-
.mention { background: #eef2ff; padding: 0 3px; border-radius: 3px; }
|
214
|
-
nile-menu.mentions-menu::part(menu__items-wrapper){
|
215
|
-
max-height: 260px;
|
216
|
-
}
|
217
|
-
|
218
|
-
`;
|
219
|
-
this.insertBefore(style, this.firstChild);
|
220
|
-
}
|
221
|
-
getTriggerColor(trigger) {
|
222
|
-
// Priority: child item color > attribute JSON color
|
223
|
-
return this.itemsColors[trigger] ?? this.mentionColors[trigger];
|
224
|
-
}
|
225
|
-
ensureMentionDropdown() {
|
226
|
-
if (this.dropdownEl || !this.hostEl)
|
227
|
-
return;
|
228
|
-
const dd = document.createElement('nile-dropdown');
|
229
|
-
dd.style.zIndex = '1000';
|
230
|
-
const btn = document.createElement('nile-button'); // invisible trigger
|
231
|
-
btn.setAttribute('slot', 'trigger');
|
232
|
-
btn.style.position = 'absolute';
|
233
|
-
btn.style.width = '1px';
|
234
|
-
btn.style.height = '1px';
|
235
|
-
btn.style.border = '0';
|
236
|
-
btn.style.padding = '0';
|
237
|
-
btn.style.opacity = '0';
|
238
|
-
btn.style.pointerEvents = 'none';
|
239
|
-
dd.appendChild(btn);
|
240
|
-
this.triggerBtn = btn;
|
241
|
-
const menu = document.createElement('nile-menu');
|
242
|
-
menu.classList.add('mentions-menu');
|
243
|
-
dd.appendChild(menu);
|
244
|
-
this.hostEl.appendChild(dd);
|
245
|
-
this.dropdownEl = dd;
|
246
|
-
this.menuEl = menu;
|
247
|
-
}
|
248
|
-
restoreSelection() {
|
249
|
-
if (!this.lastRange)
|
250
|
-
return;
|
251
|
-
const sel = document.getSelection();
|
252
|
-
if (!sel)
|
253
|
-
return;
|
254
|
-
sel.removeAllRanges();
|
255
|
-
sel.addRange(this.lastRange);
|
256
|
-
}
|
257
|
-
focusAndRestore() { this.editorEl?.focus(); this.restoreSelection(); }
|
258
|
-
getCaretClientRect() {
|
259
|
-
const sel = document.getSelection();
|
260
|
-
if (!sel || sel.rangeCount === 0)
|
261
|
-
return null;
|
262
|
-
const range = sel.getRangeAt(0).cloneRange();
|
263
|
-
range.collapse(false);
|
264
|
-
const rects = range.getClientRects();
|
265
|
-
if (rects && rects.length > 0)
|
266
|
-
return rects[0];
|
267
|
-
const marker = document.createElement('span');
|
268
|
-
marker.setAttribute('data-caret-marker', '1');
|
269
|
-
marker.textContent = '\u200B';
|
270
|
-
range.insertNode(marker);
|
271
|
-
const rect = marker.getBoundingClientRect();
|
272
|
-
const after = document.createRange();
|
273
|
-
after.setStartAfter(marker);
|
274
|
-
after.collapse(true);
|
275
|
-
sel.removeAllRanges();
|
276
|
-
sel.addRange(after);
|
277
|
-
marker.remove();
|
278
|
-
return rect || null;
|
279
|
-
}
|
280
|
-
// ---------- mentions flow ----------
|
281
|
-
openMention(trigger) {
|
282
|
-
this.saveSelection();
|
283
|
-
if (!this.editorEl || !this.dropdownEl || !this.hostEl)
|
284
|
-
return;
|
285
|
-
const caretRect = this.getCaretClientRect();
|
286
|
-
if (!caretRect)
|
287
|
-
return;
|
288
|
-
const hostRect = this.hostEl.getBoundingClientRect();
|
289
|
-
this.mentionX = caretRect.left - hostRect.left;
|
290
|
-
this.mentionY = caretRect.bottom - hostRect.top;
|
291
|
-
this.mentionTrigger = trigger;
|
292
|
-
this.mentionSuggestions = this.config[trigger] || [];
|
293
|
-
this.mentionQuery = '';
|
294
|
-
this.updateMentionFiltered();
|
295
|
-
this.mentionOpen = true;
|
296
|
-
this.renderMentionList();
|
297
|
-
}
|
298
|
-
closeMention() {
|
299
|
-
this.mentionOpen = false;
|
300
|
-
this.mentionTrigger = null;
|
301
|
-
this.mentionQuery = '';
|
302
|
-
this.mentionFiltered = [];
|
303
|
-
// hide dropdown
|
304
|
-
this.dropdownEl?.removeAttribute('open');
|
305
|
-
}
|
306
|
-
handleMention() {
|
307
|
-
if (!this.mentionOpen || !this.mentionTrigger)
|
308
|
-
return;
|
309
|
-
const sel = window.getSelection();
|
310
|
-
if (!sel || !sel.anchorNode)
|
311
|
-
return;
|
312
|
-
let node = sel.anchorNode;
|
313
|
-
if (node.nodeType !== Node.TEXT_NODE) {
|
314
|
-
const c = node.childNodes?.[sel.anchorOffset] || node.firstChild;
|
315
|
-
if (c?.nodeType === Node.TEXT_NODE)
|
316
|
-
node = c;
|
317
|
-
}
|
318
|
-
const text = (node && node.nodeType === Node.TEXT_NODE) ? (node.textContent || '') : '';
|
319
|
-
const idx = text.lastIndexOf(this.mentionTrigger);
|
320
|
-
if (idx >= 0) {
|
321
|
-
this.mentionQuery = text.substring(idx + 1);
|
322
|
-
this.updateMentionFiltered();
|
323
|
-
this.renderMentionList();
|
324
|
-
}
|
325
|
-
else {
|
326
|
-
this.closeMention();
|
327
|
-
}
|
328
|
-
}
|
329
|
-
updateMentionFiltered() {
|
330
|
-
const q = this.mentionQuery.toLowerCase();
|
331
|
-
this.mentionFiltered = (this.mentionSuggestions || []).filter(item => item.label.toLowerCase().startsWith(q));
|
332
|
-
}
|
333
|
-
renderMentionList() {
|
334
|
-
if (!this.dropdownEl || !this.menuEl)
|
335
|
-
return;
|
336
|
-
if (!this.triggerBtn)
|
337
|
-
return;
|
338
|
-
this.triggerBtn.style.position = 'absolute';
|
339
|
-
this.triggerBtn.style.left = `${this.mentionX}px`;
|
340
|
-
this.triggerBtn.style.top = `${this.mentionY}px`;
|
341
|
-
// clear old items
|
342
|
-
this.menuEl.innerHTML = '';
|
343
|
-
if (!this.mentionOpen || !this.mentionFiltered.length) {
|
344
|
-
this.dropdownEl.removeAttribute('open');
|
345
|
-
return;
|
346
|
-
}
|
347
|
-
// build menu items
|
348
|
-
for (const item of this.mentionFiltered) {
|
349
|
-
const mi = document.createElement('nile-menu-item');
|
350
|
-
const display = this.formatLabel(this.mentionTrigger, item.label);
|
351
|
-
mi.textContent = item.label;
|
352
|
-
mi.addEventListener('mousedown', (e) => {
|
353
|
-
e.preventDefault();
|
354
|
-
this.selectMention(item);
|
355
|
-
});
|
356
|
-
this.menuEl.appendChild(mi);
|
357
|
-
}
|
358
|
-
// show dropdown
|
359
|
-
this.dropdownEl.setAttribute('open', '');
|
360
|
-
}
|
361
|
-
selectMention(item) {
|
362
|
-
this.restoreSelection();
|
363
|
-
if (!this.lastRange || !this.mentionTrigger || !this.editorEl)
|
364
|
-
return;
|
365
|
-
let node = this.lastRange.startContainer;
|
366
|
-
let offset = this.lastRange.startOffset;
|
367
|
-
if (node.nodeType !== Node.TEXT_NODE) {
|
368
|
-
const child = node.childNodes[offset];
|
369
|
-
if (child?.nodeType === Node.TEXT_NODE) {
|
370
|
-
node = child;
|
371
|
-
offset = 0;
|
372
|
-
}
|
373
|
-
else
|
374
|
-
return;
|
375
|
-
}
|
376
|
-
const textNode = node;
|
377
|
-
const text = textNode.textContent || '';
|
378
|
-
const atIndex = text.lastIndexOf(this.mentionTrigger, offset);
|
379
|
-
if (atIndex < 0)
|
380
|
-
return;
|
381
|
-
const endIndex = atIndex + 1 + this.mentionQuery.length;
|
382
|
-
const mentionRange = document.createRange();
|
383
|
-
mentionRange.setStart(textNode, atIndex);
|
384
|
-
mentionRange.setEnd(textNode, endIndex);
|
385
|
-
mentionRange.deleteContents();
|
386
|
-
const span = document.createElement('span');
|
387
|
-
span.classList.add('mention');
|
388
|
-
// ✅ formatted text when prefix/suffix is configured
|
389
|
-
const formatted = this.formatLabel(this.mentionTrigger, item.label);
|
390
|
-
const hasFormat = !!(this.getTriggerFormat(this.mentionTrigger).prefix ||
|
391
|
-
this.getTriggerFormat(this.mentionTrigger).suffix);
|
392
|
-
span.textContent = hasFormat ? formatted : `${this.mentionTrigger}${item.label}`;
|
393
|
-
// keep your color logic
|
394
|
-
const bg = this.getTriggerColor(this.mentionTrigger);
|
395
|
-
if (bg) {
|
396
|
-
span.style.backgroundColor = bg;
|
397
|
-
// span.style.color = bg; // optional alternate styling
|
398
|
-
}
|
399
|
-
mentionRange.insertNode(span);
|
400
|
-
const spaceNode = document.createTextNode('\u00A0');
|
401
|
-
span.after(spaceNode);
|
402
|
-
const sel = window.getSelection();
|
403
|
-
const afterRange = document.createRange();
|
404
|
-
afterRange.setStartAfter(spaceNode);
|
405
|
-
afterRange.collapse(true);
|
406
|
-
sel?.removeAllRanges();
|
407
|
-
sel?.addRange(afterRange);
|
408
|
-
this.lastRange = afterRange.cloneRange();
|
409
|
-
this.closeMention();
|
410
|
-
// bubble an input event so the editor updates preview/state
|
411
|
-
this.editorEl.dispatchEvent(new InputEvent('input', { bubbles: true }));
|
412
|
-
}
|
413
|
-
};
|
414
|
-
__decorate([
|
415
|
-
property({
|
416
|
-
attribute: 'mentions',
|
417
|
-
converter: {
|
418
|
-
fromAttribute: (value) => {
|
419
|
-
try {
|
420
|
-
const parsed = JSON.parse(value);
|
421
|
-
const out = {};
|
422
|
-
for (const trig of Object.keys(parsed)) {
|
423
|
-
const arr = parsed[trig];
|
424
|
-
if (Array.isArray(arr)) {
|
425
|
-
out[trig] = arr
|
426
|
-
.filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')
|
427
|
-
.map(i => ({ key: i.key, label: i.label }));
|
428
|
-
}
|
429
|
-
}
|
430
|
-
return out;
|
431
|
-
}
|
432
|
-
catch {
|
433
|
-
return {};
|
434
|
-
}
|
435
|
-
},
|
436
|
-
toAttribute: (v) => JSON.stringify(v),
|
437
|
-
}
|
438
|
-
})
|
439
|
-
], NileRteMentions.prototype, "mentions", void 0);
|
440
|
-
__decorate([
|
441
|
-
property({
|
442
|
-
attribute: 'mentionformat',
|
443
|
-
converter: {
|
444
|
-
fromAttribute: (v) => {
|
445
|
-
try {
|
446
|
-
const o = JSON.parse(v);
|
447
|
-
return (o && typeof o === 'object') ? o : {};
|
448
|
-
}
|
449
|
-
catch {
|
450
|
-
return {};
|
451
|
-
}
|
452
|
-
},
|
453
|
-
toAttribute: (v) => JSON.stringify(v ?? {}),
|
454
|
-
}
|
455
|
-
})
|
456
|
-
], NileRteMentions.prototype, "mentionFormat", void 0);
|
457
|
-
__decorate([
|
458
|
-
state()
|
459
|
-
], NileRteMentions.prototype, "itemsFormats", void 0);
|
460
|
-
__decorate([
|
461
|
-
property({
|
462
|
-
attribute: 'mentioncolors',
|
463
|
-
converter: {
|
464
|
-
fromAttribute: (value) => {
|
465
|
-
try {
|
466
|
-
const o = JSON.parse(value);
|
467
|
-
return (o && typeof o === 'object') ? o : {};
|
468
|
-
}
|
469
|
-
catch {
|
470
|
-
return {};
|
471
|
-
}
|
472
|
-
},
|
473
|
-
toAttribute: (v) => JSON.stringify(v ?? {})
|
474
|
-
}
|
475
|
-
})
|
476
|
-
], NileRteMentions.prototype, "mentionColors", void 0);
|
477
|
-
__decorate([
|
478
|
-
state()
|
479
|
-
], NileRteMentions.prototype, "externalConfig", void 0);
|
480
|
-
__decorate([
|
481
|
-
state()
|
482
|
-
], NileRteMentions.prototype, "itemsConfig", void 0);
|
483
|
-
__decorate([
|
484
|
-
state()
|
485
|
-
], NileRteMentions.prototype, "itemsColors", void 0);
|
486
|
-
NileRteMentions = __decorate([
|
487
|
-
customElement('nile-rte-mentions')
|
488
|
-
], NileRteMentions);
|
489
|
-
export { NileRteMentions };
|
490
|
-
//# sourceMappingURL=nile-rte-mentions.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"nile-rte-mentions.js","sourceRoot":"","sources":["../../../src/nile-rich-text-editor/nile-rte-mentions.ts"],"names":[],"mappings":"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","sourcesContent":["import { LitElement } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport type { MentionItem } from './nile-rte-mentions-item';\n\ntype MentionsConfig = Record<string, MentionItem[]>;\n\n@customElement('nile-rte-mentions')\nexport class NileRteMentions extends LitElement {\n protected createRenderRoot() { return this; } \n\n \n @property({\n attribute: 'mentions',\n converter: {\n fromAttribute: (value: string): MentionsConfig => {\n try {\n const parsed = JSON.parse(value);\n const out: MentionsConfig = {};\n for (const trig of Object.keys(parsed)) {\n const arr = parsed[trig];\n if (Array.isArray(arr)) {\n out[trig] = arr\n .filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')\n .map(i => ({ key: i.key, label: i.label }));\n }\n }\n return out;\n } catch { return {}; }\n },\n toAttribute: (v: MentionsConfig) => JSON.stringify(v),\n }\n })\n mentions: MentionsConfig = {};\n\n // nile-rte-mentions.ts (inside class)\n\n@property({\n attribute: 'mentionformat',\n converter: {\n fromAttribute: (v: string): Record<string, {prefix?: string; suffix?: string}> => {\n try { const o = JSON.parse(v); return (o && typeof o === 'object') ? o : {}; }\n catch { return {}; }\n },\n toAttribute: (v: Record<string, {prefix?: string; suffix?: string}>) => JSON.stringify(v ?? {}),\n }\n})\nmentionFormat: Record<string, { prefix?: string; suffix?: string }> = {};\n\n@state() private itemsFormats: Record<string, { prefix?: string; suffix?: string }> = {};\n\nprivate getTriggerFormat(trigger: string): { prefix: string; suffix: string } {\n const fromItems = this.itemsFormats[trigger] || {};\n const fromAttr = this.mentionFormat[trigger] || {};\n return {\n prefix: (fromItems.prefix ?? fromAttr.prefix ?? ''),\n suffix: (fromItems.suffix ?? fromAttr.suffix ?? ''),\n };\n}\n\nprivate formatLabel(trigger: string, rawLabel: string): string {\n const { prefix, suffix } = this.getTriggerFormat(trigger);\n return `${prefix ?? ''}${rawLabel}${suffix ?? ''}`;\n}\n\n\n @property({\n attribute: 'mentioncolors',\n converter: {\n fromAttribute: (value: string): Record<string,string> => {\n try { const o = JSON.parse(value); return (o && typeof o === 'object') ? o : {}; }\n catch { return {}; }\n },\n toAttribute: (v: Record<string,string>) => JSON.stringify(v ?? {})\n }\n })\n mentionColors: Record<string, string> = {}; // NEW\n\n /** External config from the editor (lowest priority) */\n @state() private externalConfig: MentionsConfig = {};\n\n /** Config gathered from child <nile-rte-mentions-item> (highest priority) */\n @state() private itemsConfig: MentionsConfig = {};\n\n @state() private itemsColors: Record<string,string> = {}; // NEW\n\n private get config(): MentionsConfig {\n // Priority: external < attribute < child-items\n return { ...this.externalConfig, ...this.mentions, ...this.itemsConfig };\n }\n\n // wired from editor\n private editorEl: HTMLElement | null = null;\n private hostEl: HTMLElement | null = null;\n\n \nprivate dropdownEl: HTMLElement | null = null; // <nile-dropdown>\nprivate menuEl: HTMLElement | null = null; // <nile-menu>\n\n\n // selection caret\n private lastRange: Range | null = null;\n\n // dropdown state\n private mentionOpen = false;\n private mentionTrigger: string | null = null;\n private mentionQuery = '';\n private mentionSuggestions: MentionItem[] = [];\n private mentionFiltered: MentionItem[] = [];\n private mentionX = 0;\n private mentionY = 0;\nprivate triggerBtn: HTMLElement | null = null;\n\n \n\n // Observe child items & their attributes\n private mo: MutationObserver | null = null;\n\n // Public API used by <nile-rich-text-editor>\n attach(editorEl: HTMLElement, hostEl: HTMLElement) {\n this.editorEl = editorEl;\n this.hostEl = hostEl;\n\n this.injectStyles();\n this.ensureMentionDropdown();\n this.rebuildConfigFromChildren();\n\n // Watch for <nile-rte-mentions-item> add/remove/attr changes\n this.mo = new MutationObserver(() => this.rebuildConfigFromChildren());\n this.mo.observe(this, { childList: true, subtree: true, attributes: true });\n\n // listeners on editor\n this.editorEl.addEventListener('input', this.onEditorInput);\n this.editorEl.addEventListener('mouseup', this.saveSelection);\n this.editorEl.addEventListener('keyup', this.onEditorKeyUp);\n this.editorEl.addEventListener('keydown', this.onEditorKeyDown);\n this.editorEl.addEventListener('scroll', this.repositionMention);\n\n // keep range fresh\n document.addEventListener('selectionchange', this.onSelectionChange, true);\n }\n\n detach() {\n if (this.mo) { this.mo.disconnect(); this.mo = null; }\n if (this.editorEl) {\n this.editorEl.removeEventListener('input', this.onEditorInput);\n this.editorEl.removeEventListener('mouseup', this.saveSelection);\n this.editorEl.removeEventListener('keyup', this.onEditorKeyUp);\n this.editorEl.removeEventListener('keydown', this.onEditorKeyDown);\n this.editorEl.removeEventListener('scroll', this.repositionMention);\n }\n document.removeEventListener('selectionchange', this.onSelectionChange, true);\n }\n\n setExternalConfig(cfg: MentionsConfig) {\n this.externalConfig = cfg || {};\n }\n\n disconnectedCallback(): void {\n this.detach();\n super.disconnectedCallback();\n }\n\n // ---------- gather child items ----------\n private rebuildConfigFromChildren() {\n const cfg: MentionsConfig = {};\n const colors: Record<string,string> = {}; \n const formats: Record<string, { prefix?: string; suffix?: string }> = {};\n\n const items = Array.from(this.querySelectorAll('nile-rte-mentions-item')) as Array<\n HTMLElement & { mentionsCharacter?: string; mentionsData?: MentionItem[]; mentionsColor?: string }\n >;\n\n for (const item of items) {\n const trig =\n (item as any).mentionsCharacter ??\n item.getAttribute('mentionscharacter') ??\n '';\n\n if (!trig || typeof trig !== 'string') continue;\n\n let data: MentionItem[] | null =\n (item as any).mentionsData ??\n (() => {\n const raw = item.getAttribute('mentionsdata');\n if (!raw) return null;\n try {\n const parsed = JSON.parse(raw);\n return Array.isArray(parsed)\n ? parsed.filter(i => i && typeof i.key === 'string' && typeof i.label === 'string')\n : [];\n } catch { return []; }\n })();\n\n const color =\n (item as any).mentionsColor ??\n item.getAttribute('mentionscolor') ??\n '';\n\n const prefix =\n (item as any).mentionsPrefix ??\n item.getAttribute('mentionsprefix') ?? '';\n const suffix =\n (item as any).mentionsSuffix ??\n item.getAttribute('mentionssuffix') ?? '';\n\n\n if (!Array.isArray(data)) data = [];\n cfg[trig] = data;\n if (color) colors[trig] = String(color); \n if (prefix || suffix) formats[trig] = { prefix, suffix };\n }\n\n this.itemsConfig = cfg;\n this.itemsColors = colors; \n this.itemsFormats = formats;\n }\n // ---------- styles ----------\n private injectStyles() {\n if (this.querySelector('style[data-mentions-style]')) return;\n const style = document.createElement('style');\n style.setAttribute('data-mentions-style', 'true');\n style.textContent = `\n .mention-dropdown {\n position: absolute; z-index: 1000; list-style: none; margin: 0; padding: 4px;\n border: 1px solid #e5e7eb; border-radius: 6px; background: #fff;\n box-shadow: 0 4px 10px rgba(0,0,0,.08); max-height: 180px; overflow: auto; font-size: 14px;\n }\n .mention-dropdown li { padding: 6px 8px; cursor: pointer; border-radius: 4px; }\n .mention-dropdown li:hover { background: #f1f5f9; }\n .mention { background: #eef2ff; padding: 0 3px; border-radius: 3px; }\n nile-menu.mentions-menu::part(menu__items-wrapper){\n max-height: 260px;\n }\n\n `;\n this.insertBefore(style, this.firstChild);\n }\n\n private getTriggerColor(trigger: string): string | undefined {\n // Priority: child item color > attribute JSON color\n return this.itemsColors[trigger] ?? this.mentionColors[trigger];\n }\n\n \nprivate ensureMentionDropdown() {\n if (this.dropdownEl || !this.hostEl) return;\n\n const dd = document.createElement('nile-dropdown');\n dd.style.zIndex = '1000';\n\n const btn = document.createElement('nile-button'); // invisible trigger\n btn.setAttribute('slot', 'trigger');\n btn.style.position = 'absolute'; \n btn.style.width = '1px';\n btn.style.height = '1px';\n btn.style.border = '0';\n btn.style.padding = '0';\n btn.style.opacity = '0'; \n btn.style.pointerEvents = 'none'; \n dd.appendChild(btn);\n this.triggerBtn = btn; \n const menu = document.createElement('nile-menu');\n menu.classList.add('mentions-menu');\n dd.appendChild(menu);\n\n this.hostEl.appendChild(dd);\n this.dropdownEl = dd;\n this.menuEl = menu;\n}\n\n // ---------- selection helpers ----------\n private onSelectionChange = () => {\n if (!this.editorEl) return;\n const sel = document.getSelection();\n if (!sel || sel.rangeCount === 0) return;\n const range = sel.getRangeAt(0);\n if (this.editorEl.contains(range.commonAncestorContainer)) {\n this.lastRange = range.cloneRange();\n }\n };\n private saveSelection = () => {\n const sel = window.getSelection();\n if (sel && sel.rangeCount) this.lastRange = sel.getRangeAt(0).cloneRange();\n };\n private restoreSelection() {\n if (!this.lastRange) return;\n const sel = document.getSelection(); if (!sel) return;\n sel.removeAllRanges(); sel.addRange(this.lastRange);\n }\n private focusAndRestore() { this.editorEl?.focus(); this.restoreSelection(); }\n\n private getCaretClientRect(): DOMRect | null {\n const sel = document.getSelection();\n if (!sel || sel.rangeCount === 0) return null;\n\n const range = sel.getRangeAt(0).cloneRange();\n range.collapse(false);\n\n const rects = range.getClientRects();\n if (rects && rects.length > 0) return rects[0];\n\n const marker = document.createElement('span');\n marker.setAttribute('data-caret-marker', '1');\n marker.textContent = '\\u200B';\n range.insertNode(marker);\n\n const rect = marker.getBoundingClientRect();\n\n const after = document.createRange();\n after.setStartAfter(marker);\n after.collapse(true);\n sel.removeAllRanges();\n sel.addRange(after);\n marker.remove();\n\n return rect || null;\n }\n\n // ---------- editor events ----------\n private onEditorInput = () => {\n if (this.mentionOpen) this.handleMention();\n };\n\n private onEditorKeyUp = (e: KeyboardEvent) => {\n this.saveSelection();\n const key = e.key;\n const cfg = this.config;\n if (!this.mentionOpen && key && cfg[key]) {\n this.openMention(key);\n return;\n }\n if (this.mentionOpen) this.handleMention();\n };\n\n private onEditorKeyDown = (e: KeyboardEvent) => {\n if (!this.mentionOpen) return;\n const key = e.key;\n if (key === 'ArrowDown' || key === 'ArrowUp' || key === 'Enter') {\n e.preventDefault();\n if (key === 'Enter' && this.mentionFiltered.length) {\n this.selectMention(this.mentionFiltered[0]);\n }\n } else if (key === 'Escape') {\n e.preventDefault();\n this.closeMention();\n }\n };\n\n // ---------- mentions flow ----------\n private openMention(trigger: string) {\n this.saveSelection();\n if (!this.editorEl || !this.dropdownEl || !this.hostEl) return;\n\n const caretRect = this.getCaretClientRect();\n if (!caretRect) return;\n\n const hostRect = this.hostEl.getBoundingClientRect();\n\n this.mentionX = caretRect.left - hostRect.left;\n this.mentionY = caretRect.bottom - hostRect.top;\n\n this.mentionTrigger = trigger;\n this.mentionSuggestions = this.config[trigger] || [];\n this.mentionQuery = '';\n this.updateMentionFiltered();\n\n this.mentionOpen = true;\n this.renderMentionList();\n }\n\n private closeMention() {\n this.mentionOpen = false;\n this.mentionTrigger = null;\n this.mentionQuery = '';\n this.mentionFiltered = [];\n // hide dropdown\n this.dropdownEl?.removeAttribute('open');\n }\n\n private handleMention() {\n if (!this.mentionOpen || !this.mentionTrigger) return;\n const sel = window.getSelection(); if (!sel || !sel.anchorNode) return;\n\n let node: Node | null = sel.anchorNode;\n if (node.nodeType !== Node.TEXT_NODE) {\n const c = (node as HTMLElement).childNodes?.[sel.anchorOffset] || node.firstChild;\n if (c?.nodeType === Node.TEXT_NODE) node = c;\n }\n const text = (node && node.nodeType === Node.TEXT_NODE) ? (node.textContent || '') : '';\n const idx = text.lastIndexOf(this.mentionTrigger);\n if (idx >= 0) {\n this.mentionQuery = text.substring(idx + 1);\n this.updateMentionFiltered();\n this.renderMentionList();\n } else {\n this.closeMention();\n }\n }\n\n private updateMentionFiltered() {\n const q = this.mentionQuery.toLowerCase();\n this.mentionFiltered = (this.mentionSuggestions || []).filter(item =>\n item.label.toLowerCase().startsWith(q)\n );\n }\n\n private renderMentionList() {\n if (!this.dropdownEl || !this.menuEl) return;\n \n if (!this.triggerBtn) return;\n this.triggerBtn.style.position = 'absolute';\n this.triggerBtn.style.left = `${this.mentionX}px`;\n this.triggerBtn.style.top = `${this.mentionY}px`;\n \n \n // clear old items\n this.menuEl.innerHTML = '';\n \n if (!this.mentionOpen || !this.mentionFiltered.length) {\n this.dropdownEl.removeAttribute('open');\n return;\n }\n \n // build menu items\n for (const item of this.mentionFiltered) {\n const mi = document.createElement('nile-menu-item');\n const display = this.formatLabel(this.mentionTrigger!, item.label);\n mi.textContent = item.label;\n mi.addEventListener('mousedown', (e) => {\n e.preventDefault();\n this.selectMention(item);\n });\n this.menuEl.appendChild(mi);\n }\n \n // show dropdown\n this.dropdownEl.setAttribute('open', '');\n }\n \n\n private repositionMention = () => {\n if (!this.mentionOpen || !this.hostEl || !this.triggerBtn) return;\n\n const caretRect = this.getCaretClientRect();\n if (!caretRect) return;\n\n const hostRect = this.hostEl.getBoundingClientRect();\n\n this.mentionX = caretRect.left - hostRect.left;\n this.mentionY = caretRect.bottom - hostRect.top;\n\n this.triggerBtn.style.left = `${this.mentionX}px`;\n this.triggerBtn.style.top = `${this.mentionY}px`;\n };\n\n \n private selectMention(item: MentionItem) {\n this.restoreSelection(); \n if (!this.lastRange || !this.mentionTrigger || !this.editorEl) return;\n \n let node: Node = this.lastRange.startContainer;\n let offset = this.lastRange.startOffset;\n if (node.nodeType !== Node.TEXT_NODE) {\n const child = node.childNodes[offset];\n if (child?.nodeType === Node.TEXT_NODE) { node = child; offset = 0; } else return;\n }\n \n const textNode = node as Text;\n const text = textNode.textContent || '';\n const atIndex = text.lastIndexOf(this.mentionTrigger, offset);\n if (atIndex < 0) return;\n \n const endIndex = atIndex + 1 + this.mentionQuery.length;\n const mentionRange = document.createRange();\n mentionRange.setStart(textNode, atIndex);\n mentionRange.setEnd(textNode, endIndex);\n mentionRange.deleteContents();\n \n const span = document.createElement('span');\n span.classList.add('mention');\n \n // ✅ formatted text when prefix/suffix is configured\n const formatted = this.formatLabel(this.mentionTrigger, item.label);\n const hasFormat = !!(\n this.getTriggerFormat(this.mentionTrigger).prefix || \n this.getTriggerFormat(this.mentionTrigger).suffix\n );\n span.textContent = hasFormat ? formatted : `${this.mentionTrigger}${item.label}`;\n \n // keep your color logic\n const bg = this.getTriggerColor(this.mentionTrigger);\n if (bg) {\n span.style.backgroundColor = bg;\n // span.style.color = bg; // optional alternate styling\n }\n \n mentionRange.insertNode(span);\n \n const spaceNode = document.createTextNode('\\u00A0');\n span.after(spaceNode);\n \n const sel = window.getSelection();\n const afterRange = document.createRange();\n afterRange.setStartAfter(spaceNode); \n afterRange.collapse(true);\n sel?.removeAllRanges(); \n sel?.addRange(afterRange);\n this.lastRange = afterRange.cloneRange();\n \n this.closeMention();\n \n // bubble an input event so the editor updates preview/state\n this.editorEl.dispatchEvent(new InputEvent('input', { bubbles: true }));\n }\n \n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-rte-mentions': NileRteMentions;\n }\n}\n"]}
|
@@ -1,10 +0,0 @@
|
|
1
|
-
import { LitElement } from 'lit';
|
2
|
-
export declare class NileRtePreview extends LitElement {
|
3
|
-
protected createRenderRoot(): this;
|
4
|
-
protected shouldUpdate(): boolean;
|
5
|
-
}
|
6
|
-
declare global {
|
7
|
-
interface HTMLElementTagNameMap {
|
8
|
-
'nile-rte-preview': NileRtePreview;
|
9
|
-
}
|
10
|
-
}
|
@@ -1,12 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { LitElement } from 'lit';
|
3
|
-
import { customElement } from 'lit/decorators.js';
|
4
|
-
let NileRtePreview = class NileRtePreview extends LitElement {
|
5
|
-
createRenderRoot() { return this; }
|
6
|
-
shouldUpdate() { return false; }
|
7
|
-
};
|
8
|
-
NileRtePreview = __decorate([
|
9
|
-
customElement('nile-rte-preview')
|
10
|
-
], NileRtePreview);
|
11
|
-
export { NileRtePreview };
|
12
|
-
//# sourceMappingURL=nile-rte-preview.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"nile-rte-preview.js","sourceRoot":"","sources":["../../../src/nile-rich-text-editor/nile-rte-preview.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAG3C,IAAM,cAAc,GAApB,MAAM,cAAe,SAAQ,UAAU;IAClC,gBAAgB,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;IACnC,YAAY,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC;CAC3C,CAAA;AAHY,cAAc;IAD1B,aAAa,CAAC,kBAAkB,CAAC;GACrB,cAAc,CAG1B","sourcesContent":["import { LitElement } from 'lit';\nimport { customElement } from 'lit/decorators.js';\n\n@customElement('nile-rte-preview')\nexport class NileRtePreview extends LitElement {\n protected createRenderRoot() { return this; }\n protected shouldUpdate() { return false; }\n}\ndeclare global { interface HTMLElementTagNameMap { 'nile-rte-preview': NileRtePreview; } }\n"]}
|
@@ -1,37 +0,0 @@
|
|
1
|
-
import { LitElement } from 'lit';
|
2
|
-
type HeadingTag = 'p' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
3
|
-
type GenericOption = {
|
4
|
-
value: string;
|
5
|
-
label?: string;
|
6
|
-
icon?: string;
|
7
|
-
};
|
8
|
-
type HeadingOption = {
|
9
|
-
value: HeadingTag;
|
10
|
-
label?: string;
|
11
|
-
icon?: string;
|
12
|
-
};
|
13
|
-
export declare class NileRteSelect extends LitElement {
|
14
|
-
protected createRenderRoot(): this;
|
15
|
-
/** 'heading' | 'font' | 'align' */
|
16
|
-
type: string;
|
17
|
-
/** JSON: [{ value, label?, icon? }, ...] (attribute-based; runtime-validated) */
|
18
|
-
options: string;
|
19
|
-
/** Programmatic options (preferred for TS safety). */
|
20
|
-
optionsObj?: Array<GenericOption | HeadingOption>;
|
21
|
-
/** Fallback label for trigger (e.g., "Align") */
|
22
|
-
label: string;
|
23
|
-
private selectedValue;
|
24
|
-
private mapAlignIcon;
|
25
|
-
private get parsedOptions();
|
26
|
-
private ensureDefault;
|
27
|
-
private onSelect;
|
28
|
-
connectedCallback(): void;
|
29
|
-
private injectLocalStyles;
|
30
|
-
render(): import("lit-html").TemplateResult<1>;
|
31
|
-
}
|
32
|
-
declare global {
|
33
|
-
interface HTMLElementTagNameMap {
|
34
|
-
'nile-rte-select': NileRteSelect;
|
35
|
-
}
|
36
|
-
}
|
37
|
-
export {};
|