@aquera/nile-elements 0.1.55-beta-1 → 0.1.55-patch-3
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/README.md +6 -0
- package/demo/index.html +0 -1
- package/dist/axe.min-2c0b27d0.esm.js +1 -0
- package/dist/axe.min-51d832fe.cjs.js +2 -0
- package/dist/axe.min-51d832fe.cjs.js.map +1 -0
- package/dist/{fixture-cb376a7f.cjs.js → fixture-28d63bc4.cjs.js} +2 -2
- package/dist/fixture-28d63bc4.cjs.js.map +1 -0
- package/dist/{fixture-c1bd203f.cjs.js → fixture-4da0d7ba.cjs.js} +3 -3
- package/dist/fixture-4da0d7ba.cjs.js.map +1 -0
- package/dist/{fixture-add72f26.esm.js → fixture-78a015b8.esm.js} +1 -1
- package/dist/{fixture-f2693d97.esm.js → fixture-aeed6660.esm.js} +2 -2
- package/dist/flow-938d2713.esm.js +17 -0
- package/dist/flow-eb3cbb92.cjs.js +14 -0
- package/dist/flow-eb3cbb92.cjs.js.map +1 -0
- package/dist/index.js +2 -2
- package/dist/internal/resizable-table-helper.cjs.js +2 -0
- package/dist/internal/resizable-table-helper.cjs.js.map +1 -0
- package/dist/internal/resizable-table-helper.esm.js +1 -0
- package/dist/internal/resizable-table-styles.cjs.js +2 -0
- package/dist/internal/resizable-table-styles.cjs.js.map +1 -0
- package/dist/internal/resizable-table-styles.esm.js +132 -0
- package/dist/lit-html-879bd16a.esm.js +7 -0
- package/dist/lit-html-9a84b336.cjs.js +6 -0
- package/dist/lit-html-9a84b336.cjs.js.map +1 -0
- package/dist/nile-code-editor/extensionSetup.cjs.js +3 -3
- package/dist/nile-code-editor/extensionSetup.cjs.js.map +1 -1
- package/dist/nile-code-editor/extensionSetup.esm.js +1 -1
- package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
- package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
- package/dist/nile-code-editor/nile-code-editor.esm.js +2 -2
- package/dist/nile-file-preview/nile-file-preview.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.cjs.js.map +1 -1
- package/dist/nile-file-preview/nile-file-preview.css.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +1 -1
- package/dist/nile-file-preview/nile-file-preview.css.esm.js +25 -48
- package/dist/nile-file-preview/nile-file-preview.esm.js +1 -3
- package/dist/nile-file-preview/nile-file-preview.template.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +1 -1
- package/dist/nile-file-preview/nile-file-preview.template.esm.js +22 -22
- package/dist/nile-file-preview/nile-file-preview.test.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.test.esm.js +1 -1
- package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js +1 -1
- package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js.map +1 -1
- package/dist/nile-file-preview/types/nile-file-preview.enums.esm.js +1 -1
- package/dist/nile-file-preview/utils/index.cjs.js +1 -1
- package/dist/nile-file-preview/utils/index.esm.js +1 -1
- package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +1 -1
- package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +1 -1
- package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +1 -1
- package/dist/nile-file-upload/index.cjs.js +1 -1
- package/dist/nile-file-upload/index.esm.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.cjs.js.map +1 -1
- package/dist/nile-file-upload/nile-file-upload.css.cjs.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +1 -1
- package/dist/nile-file-upload/nile-file-upload.css.esm.js +9 -4
- package/dist/nile-file-upload/nile-file-upload.esm.js +2 -2
- package/dist/nile-file-upload/nile-file-upload.template.cjs.js +3 -3
- package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +1 -1
- package/dist/nile-file-upload/nile-file-upload.template.esm.js +31 -31
- package/dist/nile-file-upload/nile-file-upload.test.cjs.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.test.esm.js +1 -1
- package/dist/nile-file-upload/types/file-upload.enums.cjs.js +1 -1
- package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +1 -1
- package/dist/nile-file-upload/types/file-upload.enums.esm.js +1 -1
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js +2 -2
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +1 -1
- package/dist/nile-file-upload/utils/file-validation.util.esm.js +1 -1
- package/dist/nile-icon/icons/svg/format_align_justify.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_align_justify.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_align_justify.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_align_left.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_align_left.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_align_left.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_align_middle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_align_middle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_align_middle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_align_right.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_align_right.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_align_right.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_bold.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_bold.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_bold.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_clear.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_clear.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_clear.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_italic.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_italic.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_italic.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_list_bulleted.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_list_bulleted.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_list_bulleted.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_list_numbered.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_list_numbered.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_list_numbered.esm.js +1 -0
- package/dist/nile-icon/icons/svg/format_underline.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/format_underline.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/format_underline.esm.js +1 -0
- package/dist/nile-icon/icons/svg/image_2.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/image_2.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/image_2.esm.js +1 -0
- package/dist/nile-icon/icons/svg/link_2.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/link_2.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/link_2.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-action.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-action.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-action.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-activity.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-activity.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-activity.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-alert-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-alert-circle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-align-center.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-align-center.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-align-center.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-annotation-x.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-annotation-x.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-arrow-down.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-down.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-down.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-left.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-narrow-right.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-arrow-up.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-arrow-up.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-bar-chart-12.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-bar-chart-12.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-bell-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-bell-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-bell-ringing-04.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-bell-ringing-04.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-bold-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-bold-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-building-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-building-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-building-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-building-05.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-building-05.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-building-05.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue-animated.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-button-loading-blue.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-calendar-plus-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-calendar-plus-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-calendar.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-calendar.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-calendar.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-check-circle-broken.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-check-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-check-circle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-check-square-broken.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-check-square-broken.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-check.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-check.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-check.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-chevron-down.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-down.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-chevron-left.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-left.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-chevron-right.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-right.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-selector-vertical.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-chevron-up-double.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-up-double.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-chevron-up.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-chevron-up.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-copy-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-copy-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-dataflow-04.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-dataflow-04.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-dots-grid.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-dots-grid.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-dots-vertical.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-dots-vertical.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-download-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-download-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-download-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-dropdown.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-dropdown.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-edit-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-edit-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-edit-05.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-edit-05.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-expand-06.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-expand-06.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-eye-off.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-eye-off.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-eye.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-eye.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-eye.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-file-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-file-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-file-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-file-06.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-file-06.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-file-06.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-file-check-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-file-check-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-file-question-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-file-question-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-filter-lines.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-filter-lines.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-grid-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-grid-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-help-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-help-circle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-image-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-image-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-image-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-image-user-left.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-image-user-left.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-info-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-info-circle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-italic-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-italic-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-layers-three-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-layers-three-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-list.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-list.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-list.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-log-out-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-log-out-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-mail-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-mail-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-mail-04.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-mail-04.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-marker-pin-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-marker-pin-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-menu-05.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-menu-05.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-message-text-square-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-message-text-square-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-minimize-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-minimize-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-minus.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-minus.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-minus.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-plus.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-plus.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-plus.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-refresh-cw-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-refresh-cw-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-rocket-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-rocket-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-search-lg.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-search-lg.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-send-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-send-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-send-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-settings-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-settings-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-share-04.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-share-04.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-share-04.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-share-06.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-share-06.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-share-06.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-stars-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-stars-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-trash-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-trash-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-trash-03.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-trash-03.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-trend-up-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-trend-up-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-underline-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-underline-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-upload-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-upload-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-upload-cloud-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-upload-cloud-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-user-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-user-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-user-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-user-check-02-1.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-user-check-02-1.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-user-check-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-user-check-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-user-plus-02.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-user-plus-02.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-user-right-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-user-right-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-users-01.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-users-01.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-users-01.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-x-circle.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-x-circle.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-x-close.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-x-close.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-x-close.esm.js +1 -0
- package/dist/nile-icon/icons/svg/ng-x-square.cjs.js +2 -0
- package/dist/nile-icon/icons/svg/ng-x-square.cjs.js.map +1 -0
- package/dist/nile-icon/icons/svg/ng-x-square.esm.js +1 -0
- package/dist/nile-rich-text-editor/index.cjs.js +2 -0
- package/dist/nile-rich-text-editor/index.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/index.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rich-text-editor.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rich-text-editor.css.esm.js +129 -0
- package/dist/nile-rich-text-editor/nile-rich-text-editor.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rte-color.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-color.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-color.esm.js +53 -0
- package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-divider.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-divider.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rte-link.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-link.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-link.esm.js +19 -0
- package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-mentions-item.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-mentions-item.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js +3 -0
- package/dist/nile-rich-text-editor/nile-rte-mentions.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-mentions.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-preview.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-preview.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rte-select.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-select.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-select.esm.js +54 -0
- package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-toolbar-item.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-toolbar-item.esm.js +1 -0
- package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js +2 -0
- package/dist/nile-rich-text-editor/nile-rte-toolbar.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/nile-rte-toolbar.esm.js +1 -0
- package/dist/nile-rich-text-editor/utils.cjs.js +2 -0
- package/dist/nile-rich-text-editor/utils.cjs.js.map +1 -0
- package/dist/nile-rich-text-editor/utils.esm.js +1 -0
- package/dist/nile-select/virtual-scroll-helper.cjs.js +2 -0
- package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -0
- package/dist/nile-select/virtual-scroll-helper.esm.js +38 -0
- package/dist/nile-slider/nile-slider.css.cjs.js +1 -1
- package/dist/nile-slider/nile-slider.css.cjs.js.map +1 -1
- package/dist/nile-slider/nile-slider.css.esm.js +1 -1
- package/dist/nile-virtual-select/index.cjs.js +2 -0
- package/dist/nile-virtual-select/index.cjs.js.map +1 -0
- package/dist/nile-virtual-select/index.esm.js +1 -0
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js +2 -0
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -0
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js +2 -0
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -0
- package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +477 -0
- package/dist/nile-virtual-select/nile-virtual-select.esm.js +227 -0
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +2 -0
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +1 -0
- package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +93 -0
- package/dist/nile-virtual-select/renderer.cjs.js +2 -0
- package/dist/nile-virtual-select/renderer.cjs.js.map +1 -0
- package/dist/nile-virtual-select/renderer.esm.js +28 -0
- package/dist/nile-virtual-select/search-manager.cjs.js +2 -0
- package/dist/nile-virtual-select/search-manager.cjs.js.map +1 -0
- package/dist/nile-virtual-select/search-manager.esm.js +1 -0
- package/dist/nile-virtual-select/selection-manager.cjs.js +2 -0
- package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -0
- package/dist/nile-virtual-select/selection-manager.esm.js +1 -0
- package/dist/nile-virtual-select/types.cjs.js +2 -0
- package/dist/nile-virtual-select/types.cjs.js.map +1 -0
- package/dist/nile-virtual-select/types.esm.js +1 -0
- package/dist/scopedElementsWrapper-24f32095.cjs.js +6 -0
- package/dist/scopedElementsWrapper-24f32095.cjs.js.map +1 -0
- package/dist/scopedElementsWrapper-7a509408.esm.js +7 -0
- package/dist/sinon-esm-69e51168.cjs.js +2 -0
- package/dist/sinon-esm-69e51168.cjs.js.map +1 -0
- package/dist/sinon-esm-73a0cd99.esm.js +1 -0
- package/dist/src/internal/resizable-table-styles.js +0 -12
- package/dist/src/internal/resizable-table-styles.js.map +1 -1
- package/dist/src/nile-calendar/test.d.ts +0 -0
- package/dist/src/nile-calendar/test.js +2 -0
- package/dist/src/nile-calendar/test.js.map +1 -0
- package/dist/src/nile-code-editor/nile-code-editor.d.ts +2 -1
- package/dist/src/nile-code-editor/nile-code-editor.js +14 -5
- package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.css.js +21 -44
- package/dist/src/nile-file-preview/nile-file-preview.css.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.d.ts +5 -1
- package/dist/src/nile-file-preview/nile-file-preview.js +45 -16
- package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.template.d.ts +3 -2
- package/dist/src/nile-file-preview/nile-file-preview.template.js +17 -11
- package/dist/src/nile-file-preview/nile-file-preview.template.js.map +1 -1
- package/dist/src/nile-file-preview/types/nile-file-preview.enums.d.ts +2 -1
- package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +1 -0
- package/dist/src/nile-file-preview/types/nile-file-preview.enums.js.map +1 -1
- package/dist/src/nile-file-preview/utils/nile-file-preview.util.d.ts +1 -2
- package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +8 -8
- package/dist/src/nile-file-preview/utils/nile-file-preview.util.js.map +1 -1
- package/dist/src/nile-file-upload/nile-file-upload.css.js +4 -4
- package/dist/src/nile-file-upload/nile-file-upload.css.js.map +1 -1
- package/dist/src/nile-file-upload/nile-file-upload.d.ts +1 -0
- package/dist/src/nile-file-upload/nile-file-upload.js +12 -11
- package/dist/src/nile-file-upload/nile-file-upload.js.map +1 -1
- package/dist/src/nile-file-upload/nile-file-upload.template.d.ts +7 -4
- package/dist/src/nile-file-upload/nile-file-upload.template.js +34 -21
- package/dist/src/nile-file-upload/nile-file-upload.template.js.map +1 -1
- package/dist/src/nile-file-upload/types/file-upload.enums.d.ts +4 -2
- package/dist/src/nile-file-upload/types/file-upload.enums.js +2 -0
- package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -1
- package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +1 -0
- package/dist/src/nile-file-upload/utils/file-validation.util.js +10 -0
- package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
- package/dist/src/nile-icon/icons/svg/format_align_justify.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_justify.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_justify.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_align_left.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_left.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_left.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_align_middle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_middle.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_middle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_align_right.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_right.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_align_right.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_bold.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_bold.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_bold.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_clear.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_clear.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_clear.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_italic.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_italic.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_italic.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_list_bulleted.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_list_bulleted.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_list_bulleted.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_list_numbered.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_list_numbered.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_list_numbered.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/format_underline.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/format_underline.js +5 -0
- package/dist/src/nile-icon/icons/svg/format_underline.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/image_2.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/image_2.js +5 -0
- package/dist/src/nile-icon/icons/svg/image_2.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/link_2.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/link_2.js +5 -0
- package/dist/src/nile-icon/icons/svg/link_2.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-action.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-action.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-action.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-alert-circle.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-arrow-narrow-right.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue-animated.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-button-loading-blue.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check-circle-broken.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-check.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-check.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-file-06.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-image-03.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-minus.js.map +1 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.d.ts +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.js +5 -0
- package/dist/src/nile-icon/icons/svg/ng-x-circle.js.map +1 -0
- package/dist/src/nile-rich-text-editor/index.d.ts +1 -0
- package/dist/src/nile-rich-text-editor/index.js +2 -0
- package/dist/src/nile-rich-text-editor/index.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.d.ts +3 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js +133 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.css.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.d.ts +63 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js +693 -0
- package/dist/src/nile-rich-text-editor/nile-rich-text-editor.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-color.d.ts +22 -0
- package/dist/src/nile-rich-text-editor/nile-rte-color.js +192 -0
- package/dist/src/nile-rich-text-editor/nile-rte-color.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-divider.d.ts +10 -0
- package/dist/src/nile-rich-text-editor/nile-rte-divider.js +12 -0
- package/dist/src/nile-rich-text-editor/nile-rte-divider.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-link.d.ts +19 -0
- package/dist/src/nile-rich-text-editor/nile-rte-link.js +172 -0
- package/dist/src/nile-rich-text-editor/nile-rte-link.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.d.ts +19 -0
- package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js +54 -0
- package/dist/src/nile-rich-text-editor/nile-rte-mentions-item.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-mentions.d.ts +66 -0
- package/dist/src/nile-rich-text-editor/nile-rte-mentions.js +552 -0
- package/dist/src/nile-rich-text-editor/nile-rte-mentions.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-preview.d.ts +10 -0
- package/dist/src/nile-rich-text-editor/nile-rte-preview.js +12 -0
- package/dist/src/nile-rich-text-editor/nile-rte-preview.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-select.d.ts +37 -0
- package/dist/src/nile-rich-text-editor/nile-rte-select.js +211 -0
- package/dist/src/nile-rich-text-editor/nile-rte-select.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.d.ts +12 -0
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js +23 -0
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar-item.js.map +1 -0
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar.d.ts +10 -0
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js +12 -0
- package/dist/src/nile-rich-text-editor/nile-rte-toolbar.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/content.d.ts +2 -0
- package/dist/src/nile-rich-text-editor/rte-utils/content.js +25 -0
- package/dist/src/nile-rich-text-editor/rte-utils/content.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/css.d.ts +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/css.js +9 -0
- package/dist/src/nile-rich-text-editor/rte-utils/css.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/dom.d.ts +2 -0
- package/dist/src/nile-rich-text-editor/rte-utils/dom.js +48 -0
- package/dist/src/nile-rich-text-editor/rte-utils/dom.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/formatting.d.ts +2 -0
- package/dist/src/nile-rich-text-editor/rte-utils/formatting.js +69 -0
- package/dist/src/nile-rich-text-editor/rte-utils/formatting.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/keys.d.ts +2 -0
- package/dist/src/nile-rich-text-editor/rte-utils/keys.js +38 -0
- package/dist/src/nile-rich-text-editor/rte-utils/keys.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/lists.d.ts +2 -0
- package/dist/src/nile-rich-text-editor/rte-utils/lists.js +28 -0
- package/dist/src/nile-rich-text-editor/rte-utils/lists.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/selection.d.ts +17 -0
- package/dist/src/nile-rich-text-editor/rte-utils/selection.js +39 -0
- package/dist/src/nile-rich-text-editor/rte-utils/selection.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/toolbar.d.ts +28 -0
- package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js +161 -0
- package/dist/src/nile-rich-text-editor/rte-utils/toolbar.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.d.ts +13 -0
- package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js +119 -0
- package/dist/src/nile-rich-text-editor/rte-utils/toolbarState.js.map +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/vars.d.ts +1 -0
- package/dist/src/nile-rich-text-editor/rte-utils/vars.js +14 -0
- package/dist/src/nile-rich-text-editor/rte-utils/vars.js.map +1 -0
- package/dist/src/nile-rich-text-editor/sanatize.d.ts +1 -0
- package/dist/src/nile-rich-text-editor/sanatize.js +40 -0
- package/dist/src/nile-rich-text-editor/sanatize.js.map +1 -0
- package/dist/src/nile-rich-text-editor/utils.d.ts +13 -0
- package/dist/src/nile-rich-text-editor/utils.js +415 -0
- package/dist/src/nile-rich-text-editor/utils.js.map +1 -0
- package/dist/src/nile-virtual-select/renderer.js +3 -0
- package/dist/src/nile-virtual-select/renderer.js.map +1 -1
- package/dist/src/version.d.ts +9 -0
- package/dist/src/version.js +7 -0
- package/dist/src/version.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/version.cjs.js +2 -0
- package/dist/version.cjs.js.map +1 -0
- package/dist/version.esm.js +1 -0
- package/dist/virtualize-3a6cec69.esm.js +22 -0
- package/dist/virtualize-72f549f4.cjs.js +18 -0
- package/dist/virtualize-72f549f4.cjs.js.map +1 -0
- package/dist/virtualize-a4a40d96.esm.js +22 -0
- package/dist/virtualize-b6a2fbe0.cjs.js +18 -0
- package/dist/virtualize-b6a2fbe0.cjs.js.map +1 -0
- package/package.json +4 -4
- package/src/nile-code-editor/nile-code-editor.ts +17 -4
- package/vscode-html-custom-data.json +3 -3
- package/dist/aquera-nile-elements-0.1.57-beta-2.0.tgz +0 -0
- package/dist/axe.min-2b379f29.cjs.js +0 -12
- package/dist/axe.min-2b379f29.cjs.js.map +0 -1
- package/dist/axe.min-c2cd8733.esm.js +0 -12
- package/dist/fixture-c1bd203f.cjs.js.map +0 -1
- package/dist/fixture-cb376a7f.cjs.js.map +0 -1
@@ -79,13 +79,6 @@ export const resizerStyles = css `
|
|
79
79
|
opacity: 1;
|
80
80
|
width: 3px;
|
81
81
|
}
|
82
|
-
|
83
|
-
:host([resizable]) .column {
|
84
|
-
overflow: hidden;
|
85
|
-
text-overflow: ellipsis;
|
86
|
-
white-space: nowrap;
|
87
|
-
display: block;
|
88
|
-
}
|
89
82
|
`;
|
90
83
|
export const headerResizerStyles = css `
|
91
84
|
.resizer {
|
@@ -118,11 +111,6 @@ export const headerResizerStyles = css `
|
|
118
111
|
background-color: transparent;
|
119
112
|
opacity: 1;
|
120
113
|
}
|
121
|
-
|
122
|
-
:host([resizable]) .headers {
|
123
|
-
text-overflow: ellipsis;
|
124
|
-
white-space: nowrap;
|
125
|
-
}
|
126
114
|
`;
|
127
115
|
export const resizableSlotStyles = css `
|
128
116
|
:host([resizable]) ::slotted(*) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"resizable-table-styles.js","sourceRoot":"","sources":["../../../src/internal/resizable-table-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;CAMrC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;CASvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA
|
1
|
+
{"version":3,"file":"resizable-table-styles.js","sourceRoot":"","sources":["../../../src/internal/resizable-table-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;CAMrC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;CASvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqD/B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BrC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;CAgBrC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAA;;;;CAInC,CAAC","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { css } from 'lit';\n\n/**\n * Resizable Styles Utility\n * Centralized styles for resizable table functionality\n */\n\nexport const resizableHostStyles = css`\n :host([resizable]) {\n position: relative;\n overflow: hidden;\n table-layout: fixed;\n }\n`;\n\nexport const resizableHeaderStyles = css`\n :host([resizable]) {\n position: relative;\n }\n\n :host([resizable]) .header__item__wrapper {\n border-right: 1px solid var(--nile-colors-neutral-400);\n position: relative;\n }\n`;\n\nexport const resizerStyles = css`\n .resizer {\n position: absolute;\n right: 0;\n top: -1000px;\n bottom: -1000px;\n width: 8px;\n cursor: col-resize;\n user-select: none;\n background-color: var(--nile-colors-neutral-100);\n transition: background-color 0.2s;\n z-index: 10;\n opacity: 0;\n transition: opacity 0.2s ease;\n pointer-events: none;\n }\n\n :host([resizable]):hover .resizer {\n opacity: 1;\n pointer-events: auto;\n }\n\n .resizer::before {\n content: '';\n position: absolute;\n right: 3px;\n top: 0;\n width: 2px;\n height: 100%;\n background-color: var(--nile-colors-neutral-500);\n opacity: 0.8;\n }\n\n .resizer:hover {\n background-color: var(--nile-colors-neutral-400);\n }\n\n .resizer:hover::before {\n background-color: var(--nile-colors-neutral-700);\n opacity: 1;\n }\n\n .resizer.resizing {\n background-color: var(--nile-colors-neutral-400);\n opacity: 1;\n pointer-events: auto;\n }\n\n .resizer.resizing::before {\n background-color: var(--nile-colors-neutral-700);\n opacity: 1;\n width: 3px;\n }\n`;\n\nexport const headerResizerStyles = css`\n .resizer {\n position: absolute;\n right: -2px;\n top: -1000px;\n bottom: -1000px;\n width: 8px;\n cursor: ew-resize;\n user-select: none;\n transition: background-color 0.2s;\n z-index: 10;\n opacity: 0;\n transition: opacity 0.2s ease;\n }\n\n :host([resizable]):hover .resizer {\n opacity: 1;\n }\n\n .resizer::before {\n content: '';\n position: absolute;\n height: 100%;\n opacity: 0.8;\n }\n\n .resizer.resizing {\n border-right: 4px double var(--nile-colors-neutral-400);\n background-color: transparent;\n opacity: 1;\n }\n`;\n\nexport const resizableSlotStyles = css`\n :host([resizable]) ::slotted(*) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n\n :host([resizable]) ::slotted(span),\n :host([resizable]) ::slotted(div),\n :host([resizable]) ::slotted(p) {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n display: block;\n }\n`;\n\nexport const tableLayoutStyles = css`\n .nile__table__body[resizable] {\n table-layout: fixed;\n }\n`; \n"]}
|
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../../../src/nile-calendar/test.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
@@ -41,7 +41,7 @@ export declare class NileCodeEditor extends NileElement {
|
|
41
41
|
debounceTimeout: number;
|
42
42
|
aboveCursor: boolean;
|
43
43
|
tabCompletion: boolean;
|
44
|
-
|
44
|
+
defaultFont: boolean;
|
45
45
|
view: EditorView;
|
46
46
|
viewState: EditorState;
|
47
47
|
private timeOut;
|
@@ -52,6 +52,7 @@ export declare class NileCodeEditor extends NileElement {
|
|
52
52
|
private placeholderComp;
|
53
53
|
private defaultSyntaxHighlightingComp;
|
54
54
|
private themeComp;
|
55
|
+
private autoCompletionComp;
|
55
56
|
/**
|
56
57
|
* The styles for CodeEditor
|
57
58
|
* @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
|
@@ -58,7 +58,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
58
58
|
this.debounceTimeout = 200;
|
59
59
|
this.aboveCursor = false;
|
60
60
|
this.tabCompletion = true;
|
61
|
-
this.
|
61
|
+
this.defaultFont = false;
|
62
62
|
this.timeOut = null;
|
63
63
|
// Compartments for initialiazing and switching extensions
|
64
64
|
this.lineNumbersComp = new Compartment();
|
@@ -68,6 +68,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
68
68
|
this.placeholderComp = new Compartment();
|
69
69
|
this.defaultSyntaxHighlightingComp = new Compartment();
|
70
70
|
this.themeComp = new Compartment();
|
71
|
+
this.autoCompletionComp = new Compartment();
|
71
72
|
/**
|
72
73
|
* Custom autocomplete handler for code editor suggestions
|
73
74
|
* @param context CompletionContext from CodeMirror
|
@@ -146,6 +147,14 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
146
147
|
]
|
147
148
|
});
|
148
149
|
}
|
150
|
+
if (changedProperties.has('aboveCursor')) {
|
151
|
+
console.log('aboveCursor changed:', this.aboveCursor);
|
152
|
+
this.view.dispatch({
|
153
|
+
effects: [
|
154
|
+
this.autoCompletionComp.reconfigure(autocompletion({ aboveCursor: this.aboveCursor }))
|
155
|
+
]
|
156
|
+
});
|
157
|
+
}
|
149
158
|
if (changedProperties.has('placeholder')) {
|
150
159
|
this.view.dispatch({
|
151
160
|
effects: [
|
@@ -261,7 +270,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
261
270
|
customAutoCompletions,
|
262
271
|
placeholderExtension,
|
263
272
|
defaultSyntaxHighlightingExtension,
|
264
|
-
autocompletion({ aboveCursor: this.aboveCursor }),
|
273
|
+
this.autoCompletionComp.of(autocompletion({ aboveCursor: this.aboveCursor })),
|
265
274
|
language,
|
266
275
|
customThemeExtension,
|
267
276
|
this.getTabCompletionKeymap(),
|
@@ -433,12 +442,12 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
433
442
|
}
|
434
443
|
getCustomThemeExtension() {
|
435
444
|
if (this.customThemeCSS) {
|
436
|
-
if (this.
|
445
|
+
if (this.defaultFont) {
|
437
446
|
return [EditorView.theme(this.customThemeCSS), EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
|
438
447
|
}
|
439
448
|
return [EditorView.theme(this.customThemeCSS), EditorView.theme(customisedThemeCss)];
|
440
449
|
}
|
441
|
-
if (this.
|
450
|
+
if (this.defaultFont) {
|
442
451
|
return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
|
443
452
|
}
|
444
453
|
return [EditorView.theme(customisedThemeCss)];
|
@@ -524,7 +533,7 @@ __decorate([
|
|
524
533
|
], NileCodeEditor.prototype, "tabCompletion", void 0);
|
525
534
|
__decorate([
|
526
535
|
property({ type: Boolean, reflect: true, attribute: true })
|
527
|
-
], NileCodeEditor.prototype, "
|
536
|
+
], NileCodeEditor.prototype, "defaultFont", void 0);
|
528
537
|
NileCodeEditor = __decorate([
|
529
538
|
customElement('nile-code-editor')
|
530
539
|
], NileCodeEditor);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nile-code-editor.js","sourceRoot":"","sources":["../../../src/nile-code-editor/nile-code-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n PropertyValueMap,\n} from 'lit';\n\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-code-editor.css';\nimport { EditorView } from 'codemirror';\nimport { ViewUpdate, placeholder } from '@codemirror/view';\nimport { \n Compartment,\n EditorState,\n Extension\n} from '@codemirror/state';\nimport { StyleSpec } from 'style-mod';\nimport {\n syntaxHighlighting,\n defaultHighlightStyle,\n} from '@codemirror/language';\n\nimport { lineNumbers } from '@codemirror/view';\nimport {\n javascript,\n javascriptLanguage,\n} from '@codemirror/lang-javascript';\nimport { sql } from '@codemirror/lang-sql';\nimport { json } from '@codemirror/lang-json';\nimport { html as htmlLang } from '@codemirror/lang-html';\nimport { autocompletion,CompletionContext,CompletionResult } from '@codemirror/autocomplete';\nimport NileElement from '../internal/nile-element';\nimport { basicSetup } from './extensionSetup';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { Theme as DefaultTheme, customisedThemeCss, fontFamily } from './theme';\nimport { keymap } from '@codemirror/view';\nimport { acceptCompletion, closeCompletion, completionStatus } from '@codemirror/autocomplete';\n\n// Choose the appropriate mode for your use case\n\n/**\n * Nile icon component.\n *\n * @tag nile-code-editor\n *\n */\n@customElement('nile-code-editor')\nexport class NileCodeEditor extends NileElement {\n \n @query('.code__editor__container') codeEditor: HTMLInputElement;\n\n @property({ type: String, reflect: true , attribute: true }) value = '';\n\n @property({ type: String, reflect: true , attribute: true }) expandIcon = \"expand-2\";\n\n @property({ type: String, reflect: true , attribute: true }) placeholder = \"\";\n\n @property({ type: Object, reflect: true , attribute: true }) customAutoCompletions: object | any = {};\n\n @property({ type: Array, reflect: true , attribute: true }) customCompletionsPaths: string[] = [];\n\n @property({ type: String, reflect: true , attribute: true}) language: 'javascript' | 'sql' | 'json' | 'html' = 'javascript';\n\n @property({ type: String, reflect: true , attribute: 'error-message' }) errorMessage: string = '';\n\n @property({ type: Boolean, reflect: true , attribute: true }) error: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableSearch: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) noborder: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) multiline: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableFoldGutters: boolean = false;\n \n @property({ type: Boolean, reflect: true , attribute: true }) allowVariableInCustomSuggestion: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbers: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: false }) disableSyntaxHighlighting: boolean = false;\n\n @property({ type: Object, attribute: false }) customThemeCSS: object | null = customisedThemeCss;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbersMultiline: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) hasScroller: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) expandable: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true}) readonly: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true}) debounce: boolean = false;\n\n @property({ type: Number, reflect: true , attribute: true}) debounceTimeout: number = 200;\n\n @property({ type: Boolean, reflect: true , attribute: true}) aboveCursor: boolean = false;\n\n @property({ type: Boolean, reflect: true, attribute: true }) tabCompletion: boolean = true;\n\n @property({ type: Boolean, reflect: true, attribute: true }) monospaceFontFamily: boolean = false;\n\n public view: EditorView;\n public viewState:EditorState;\n private timeOut: any = null;\n\n // Compartments for initialiazing and switching extensions\n private lineNumbersComp = new Compartment();\n private restrictSingleLineComp = new Compartment();\n private readOnlyComp = new Compartment();\n private customCompletionComp = new Compartment();\n private placeholderComp = new Compartment();\n private defaultSyntaxHighlightingComp = new Compartment();\n private themeComp = new Compartment();\n\n /**\n * The styles for CodeEditor\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit('nile-init',undefined,false);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.view.destroy()\n this.emit('nile-destroy',undefined,false);\n }\n\n firstUpdated() {\n this.createNewView()\n this.emit('nile-after-init',{ \n codeMirrorInstance: this.view, \n createNewView: this.createNewView, \n insertAtCursor: this.insertBetweenCode \n }, false )\n }\n\n getTabCompletionKeymap() {\n return this.tabCompletion\n ? keymap.of([\n {\n key: 'Tab',\n run: acceptCompletion,\n }\n ])\n : [];\n }\n\n protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void{\n super.updated(changedProperties);\n if (changedProperties.has('value') && this.view.state.doc.toString()!=this.value) {\n // Editor has already been initialized, update its state\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('multiline')) {\n this.view.dispatch({\n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n this.restrictSingleLineComp.reconfigure(this.getSingleLineExtension())\n ],\n })\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('readonly')) {\n this.view.dispatch({ \n effects: [\n this.readOnlyComp.reconfigure(this.getReadOnlyExtension()),\n ]\n })\n }\n if (changedProperties.has('placeholder')) {\n this.view.dispatch({ \n effects: [\n this.placeholderComp.reconfigure(this.getPlaceholderExtension()),\n ]\n })\n }\n if (changedProperties.has('lineNumbers') || changedProperties.has('lineNumbersMultiline')) {\n this.view.dispatch({ \n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n ]\n })\n }\n if(changedProperties.has('customAutoCompletions') || changedProperties.has('customCompletionsPaths')){\n this.view.dispatch({ \n effects: [\n this.customCompletionComp.reconfigure(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }))\n ]\n })\n }\n if(changedProperties.has('disableSyntaxHighlighting')){\n this.view.dispatch({ \n effects: [\n this.defaultSyntaxHighlightingComp.reconfigure(this.getDefaultSyntaxHighlightingExtension())\n ]\n })\n }\n if(changedProperties.has('customThemeCSS')){\n this.view.dispatch({ \n effects: [\n this.themeComp.reconfigure(this.getCustomThemeExtension())\n ]\n })\n }\n }\n\n public render(): TemplateResult {\n const hasErrorMessage = !!this.errorMessage;\n const hasError = !!this.error;\n const noborder = !!this.noborder;\n const noScrollbar = !this.hasScroller\n return html`<div\n part=\"code-editor-base\"\n class=${classMap({\n 'code__editor__container': true,\n 'noborder': noborder,\n 'error': hasError || hasErrorMessage,\n 'code__editor__singleline': !this.multiline,\n 'no-scroller': noScrollbar\n })}\n >\n ${this.expandable\n ? html` \n <div @click=\"${(e: CustomEvent) => this.emit('nile-expand')}\" class=\"expand__icon__container\">\n <nile-icon\n name=\"${this.expandIcon}\"\n size=\"16\"\n color=\"black\"\n ></nile-icon>\n </div>`\n : ''}\n </div>\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}`;\n }\n\n createNewView(emitEvent=true){\n if(this.view) this.view.destroy();\n this.createState()\n this.view = new EditorView({\n state: this.viewState,\n parent: this.codeEditor\n });\n\n this.view.dom.addEventListener('keydown', (e: KeyboardEvent) => {\n if (e.key === 'Escape' && this.view && completionStatus(this.view.state) !== null) {\n e.stopPropagation(); \n e.preventDefault(); \n closeCompletion(this.view);\n }\n }, true);\n \n if (emitEvent) this.emit('nile-after-update', { createNewView: this.createNewView, codeMirrorInstance: this.view, }, false );\n }\n\n createState(){\n const lineNumbersExtension = this.lineNumbersComp.of(this.getLineNumbersExension());\n const readOnlyExtension = this.readOnlyComp.of(this.getReadOnlyExtension());\n const restrictSingleLineExtension = this.restrictSingleLineComp.of(this.getSingleLineExtension())\n const placeholderExtension = this.placeholderComp.of(this.getPlaceholderExtension())\n const customThemeExtension=this.themeComp.of(this.getCustomThemeExtension());\n const defaultSyntaxHighlightingExtension = this.defaultSyntaxHighlightingComp.of(this.getDefaultSyntaxHighlightingExtension());\n const language = this.getLanguageExtension()\n const customAutoCompletions = this.customCompletionComp.of(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }));\n\n this.viewState = EditorState.create({\n doc: !this.multiline ? convertToSingleLine(this.value) : this.value,\n extensions: [\n basicSetup({\n highlightActiveLine: false,\n foldGutter: this.enableFoldGutters,\n enableSearch:this.enableSearch\n }),\n lineNumbersExtension,\n readOnlyExtension,\n restrictSingleLineExtension,\n customAutoCompletions,\n placeholderExtension,\n defaultSyntaxHighlightingExtension,\n autocompletion({aboveCursor: this.aboveCursor}),\n language,\n customThemeExtension,\n this.getTabCompletionKeymap(),\n EditorView.updateListener.of((v: ViewUpdate) => {\n if (v.docChanged) {\n this.debounce ? this.emitAfterTimeout({ value: this.view.state.doc.toString() }) : this.emit('nile-change', { value: this.view.state.doc.toString() })\n }\n }),\n EditorView.domEventHandlers({\n focus: () => this.dispatchEvent(new Event('nile-focus')),\n blur: () => this.dispatchEvent(new Event('nile-blur')),\n }),\n ],\n });\n return this.viewState\n }\n /**\n * Custom autocomplete handler for code editor suggestions\n * @param context CompletionContext from CodeMirror\n * @returns CompletionResult with suggestions or null if no suggestions\n */\n customAutocomplete = (context: CompletionContext): CompletionResult | null => {\n // Getting the valid last line, last text from the code editor\n const text = context.state.doc.sliceString(0, context.pos);\n const lastWord = text.split('\\n').at(-1)?.split(' ').at(-1) || '';\n const [textBeforeCursor, baseTextAfterSeperation] = splitStringAtLastSeparator(lastWord);\n \n return this.getNestedSuggestions(context, textBeforeCursor, baseTextAfterSeperation) \n || this.getTopLevelSuggestions(context, textBeforeCursor);\n };\n\n /**\n * Gets nested property suggestions based on the current path\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @param baseTextAfterSeperation Text after the last separator (. or [)\n * @returns CompletionResult with nested suggestions or null\n */\n getNestedSuggestions(context: CompletionContext, textBeforeCursor: string, baseTextAfterSeperation: string) {\n // Return early if not a valid path or not ending with . or [\n if (!isValidPath(textBeforeCursor) || !['.', '['].includes(textBeforeCursor.at(-1)!)) {\n return null;\n }\n\n const path = parsePath(textBeforeCursor);\n if (!path) return null;\n\n const textAfterSeperation = baseTextAfterSeperation.replace(/[\"'\\[]/g, '');\n const isInString = textAfterSeperation !== baseTextAfterSeperation;\n const isBracket = textBeforeCursor.at(-1) === '[';\n\n // Return null if we're in a string after a dot\n if (textBeforeCursor.at(-1) === '.' && isInString) return null;\n\n // Get nested properties and filter by text after separation if it exists\n let resolved = resolveNestedProperties(this.customAutoCompletions, path);\n if (!resolved || typeof resolved !== 'object') return null;\n\n if (textAfterSeperation) {\n resolved = Object.fromEntries(\n Object.entries(resolved).filter(([key]) => \n key.toLowerCase().startsWith(textAfterSeperation.toLowerCase())\n )\n );\n }\n\n return {\n from: context.pos - textAfterSeperation.length,\n options: Object.keys(resolved).map(key => ({\n label: key,\n type: 'property',\n info: `Key of ${path[path.length - 1]}`,\n apply: !this.allowVariableInCustomSuggestion && (isBracket && !isInString) \n ? `'${key}'` \n : key,\n boost: 999\n }))\n };\n }\n\n /**\n * Gets top level suggestions based on custom completions and paths\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @returns CompletionResult with top level suggestions or null\n */\n getTopLevelSuggestions(context: CompletionContext,textBeforeCursor:string){\n const baseMatch: any = textBeforeCursor.match(/([a-zA-Z_$][\\w$]*)$/);\n \n if (!baseMatch) {\n const trimmedText = textBeforeCursor.trim();\n if (trimmedText === '') {\n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length\n );\n \n const options = optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }));\n \n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths.forEach(path => {\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n });\n });\n }\n \n return {\n from: context.pos,\n options: options\n };\n }\n return null;\n }\n \n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length && \n key.toLowerCase().startsWith(textBeforeCursor.toLowerCase())\n );\n \n const options=optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }))\n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths\n .filter(path=>path.toLocaleLowerCase().includes(textBeforeCursor.toLocaleLowerCase()))\n .forEach(path=>{\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n })\n })\n }\n return {\n from: context.pos - baseMatch[1].length,\n options: options\n }\n }\n\n emitAfterTimeout(value:any){\n if(this.timeOut) clearTimeout(this.timeOut);\n this.timeOut=setTimeout(()=> this.emit('nile-change', value, false), this.debounceTimeout)\n }\n \n public focusAtPosition(pos: number=this.view.state.doc.toString().length): void {\n if (this.view) {\n this.view.dispatch({\n selection: { anchor: pos },\n });\n this.view.focus();\n }\n }\n\n public insertBetweenCode=(text: string) => {\n const transaction = this.view.state.changeByRange(range => {\n const { from, to } = range;\n return { changes: { from:from, to, insert: text }, range };\n });\n this.view.dispatch(transaction);\n }\n\n singleLineMultiLineToggle() {\n this.view.dispatch({\n changes: {\n from: 0,\n to: this.view.state.doc.length,\n insert: !this.multiline\n ? convertToSingleLine(this.value)\n : this.value,\n },\n });\n }\n\n //EXTENSION CONFIGURATIONS\n getLineNumbersExension() {\n return (!this.multiline && this.lineNumbers) || (this.multiline && this.lineNumbersMultiline) ? lineNumbers() : [];\n }\n \n getLanguageExtension():Extension{\n switch(this.language){\n case 'sql':\n return sql();\n case 'json':\n return json();\n case 'html':\n return htmlLang();\n default:\n return javascript(); \n }\n }\n\n getReadOnlyExtension() {\n return this.readonly ? EditorState.readOnly.of(true) : [];\n }\n\n getSingleLineExtension() {\n return !this.multiline ? EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n ) : [];\n }\n\n getPlaceholderExtension(){\n return this.placeholder ? placeholder(this.placeholder) : [];\n }\n \n getDefaultSyntaxHighlightingExtension(){\n return !this.disableSyntaxHighlighting ? syntaxHighlighting(defaultHighlightStyle, { fallback: true }):[]\n }\n\n getCustomThemeExtension(): Extension {\n if(this.customThemeCSS) {\n if(this.monospaceFontFamily){\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss),EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss)];\n }\n if(this.monospaceFontFamily){\n return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(customisedThemeCss)];\n }\n\n restrictSingleLine() {\n return EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n );\n }\n /* #endregion */\n}\n\nexport default NileCodeEditor;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-code-editor': NileCodeEditor;\n }\n}\n\n/**\n * Parses a string path into an array of keys representing nested object access\n * @param text The path string to parse (e.g. \"foo.bar[0].baz\")\n * @returns Array of keys if valid path, null otherwise\n * @example\n * parsePath(\"foo.bar[0]\") // returns [\"foo\", \"bar\", \"0\"]\n * parsePath(\"invalid\") // returns null\n */\nfunction parsePath(text: string) {\n const regex = /([a-zA-Z_$][\\w$]*)(\\[(?:[^\\]]+)\\]|\\.[a-zA-Z_$][\\w$]*)*/g;\n const matches = [...text.matchAll(regex)];\n if (matches.length > 0) {\n const base = matches[0][1]; // The base object name\n const keys = [base];\n // Extract keys from dot or bracket notation\n const pathMatches = text.match(/\\[(.*?)\\]|\\.(\\w+)/g) || [];\n for (const match of pathMatches) {\n if (match.startsWith('[')) {\n keys.push(match.slice(1, -1).replace(/['\"]/g, '')); // Remove brackets and quotes\n } else if (match.startsWith('.')) {\n keys.push(match.slice(1));\n }\n }\n return keys;\n }\n return null;\n};\n\n/**\n * Splits a path string at the last separator (. or [)\n * @param input The path string to split\n * @returns Array containing [path up to last separator, remainder after separator]\n * @example\n * splitStringAtLastSeparator(\"foo.bar[0]\") // returns [\"foo.bar[\", \"0\"]\n */\nfunction splitStringAtLastSeparator(input:string) {\n const lastSeparatorIndex = Math.max(input.lastIndexOf('.'), input.lastIndexOf('['));\n if (lastSeparatorIndex === -1) return [input, ''];\n return [input.slice(0, lastSeparatorIndex + 1), input.slice(lastSeparatorIndex + 1)];\n}\n\n/**\n * Traverses an object using an array of keys to access nested properties\n * @param obj The object to traverse\n * @param keys Array of keys defining the path to the desired property\n * @returns The value at the specified path, or null if path is invalid\n * @example\n * resolveNestedProperties({foo: {bar: 123}}, [\"foo\", \"bar\"]) // returns 123\n */\nfunction resolveNestedProperties (obj:any, keys:any[]){\n return keys.reduce((acc, key) => {\n if (acc && typeof acc === 'object') {\n return acc[key];\n }\n return null;\n }, obj);\n};\n\n/**\n * Validates if a string represents a valid object path format\n * @param path The path string to validate\n * @returns Boolean indicating if path format is valid\n * @example\n * isValidPath(\"foo.bar[0]\") // returns true\n * isValidPath(\"foo..bar\") // returns false\n */\nfunction isValidPath(path: string) {\n // Regex to validate the format of the string\n const regex = /^([a-zA-Z_$][\\w$]*)(\\.[a-zA-Z_$][\\w$]*|\\[\\s*(['\"]?[a-zA-Z0-9_$]*['\"]?)\\s*\\])*([\\.\\[])?$/;\n // Test the string against the regex\n return regex.test(path);\n}\n\n/**\n * Converts multi-line code into a single line by removing line breaks and extra whitespace\n * @param code The code string to convert\n * @returns Single line version of the code\n * @example\n * convertToSingleLine(\"foo\\n bar\") // returns \"foo bar\"\n */\nfunction convertToSingleLine(code: string) {\n if (!code) return '';\n // Remove line breaks and unnecessary whitespace\n return code.replace(/\\s+/g, ' ').trim();\n}\n\n"]}
|
1
|
+
{"version":3,"file":"nile-code-editor.js","sourceRoot":"","sources":["../../../src/nile-code-editor/nile-code-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n html,\n CSSResultArray,\n TemplateResult,\n PropertyValueMap,\n} from 'lit';\n\nimport { customElement, query, property } from 'lit/decorators.js';\nimport { styles } from './nile-code-editor.css';\nimport { EditorView } from 'codemirror';\nimport { ViewUpdate, placeholder } from '@codemirror/view';\nimport { \n Compartment,\n EditorState,\n Extension\n} from '@codemirror/state';\nimport { StyleSpec } from 'style-mod';\nimport {\n syntaxHighlighting,\n defaultHighlightStyle,\n} from '@codemirror/language';\n\nimport { lineNumbers } from '@codemirror/view';\nimport {\n javascript,\n javascriptLanguage,\n} from '@codemirror/lang-javascript';\nimport { sql } from '@codemirror/lang-sql';\nimport { json } from '@codemirror/lang-json';\nimport { html as htmlLang } from '@codemirror/lang-html';\nimport { autocompletion,CompletionContext,CompletionResult } from '@codemirror/autocomplete';\nimport NileElement from '../internal/nile-element';\nimport { basicSetup } from './extensionSetup';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { Theme as DefaultTheme, customisedThemeCss, fontFamily } from './theme';\nimport { keymap } from '@codemirror/view';\nimport { acceptCompletion, closeCompletion, completionStatus } from '@codemirror/autocomplete';\n\n// Choose the appropriate mode for your use case\n\n/**\n * Nile icon component.\n *\n * @tag nile-code-editor\n *\n */\n@customElement('nile-code-editor')\nexport class NileCodeEditor extends NileElement {\n \n @query('.code__editor__container') codeEditor: HTMLInputElement;\n\n @property({ type: String, reflect: true , attribute: true }) value = '';\n\n @property({ type: String, reflect: true , attribute: true }) expandIcon = \"expand-2\";\n\n @property({ type: String, reflect: true , attribute: true }) placeholder = \"\";\n\n @property({ type: Object, reflect: true , attribute: true }) customAutoCompletions: object | any = {};\n\n @property({ type: Array, reflect: true , attribute: true }) customCompletionsPaths: string[] = [];\n\n @property({ type: String, reflect: true , attribute: true}) language: 'javascript' | 'sql' | 'json' | 'html' = 'javascript';\n\n @property({ type: String, reflect: true , attribute: 'error-message' }) errorMessage: string = '';\n\n @property({ type: Boolean, reflect: true , attribute: true }) error: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableSearch: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) noborder: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) multiline: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) enableFoldGutters: boolean = false;\n \n @property({ type: Boolean, reflect: true , attribute: true }) allowVariableInCustomSuggestion: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbers: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: false }) disableSyntaxHighlighting: boolean = false;\n\n @property({ type: Object, attribute: false }) customThemeCSS: object | null = customisedThemeCss;\n\n @property({ type: Boolean, reflect: true , attribute: true }) lineNumbersMultiline: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) hasScroller: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true }) expandable: boolean = true;\n\n @property({ type: Boolean, reflect: true , attribute: true}) readonly: boolean = false;\n\n @property({ type: Boolean, reflect: true , attribute: true}) debounce: boolean = false;\n\n @property({ type: Number, reflect: true , attribute: true}) debounceTimeout: number = 200;\n\n @property({ type: Boolean, reflect: true , attribute: true}) aboveCursor: boolean = false;\n\n @property({ type: Boolean, reflect: true, attribute: true }) tabCompletion: boolean = true;\n\n @property({ type: Boolean, reflect: true, attribute: true }) defaultFont: boolean = false;\n\n public view: EditorView;\n public viewState:EditorState;\n private timeOut: any = null;\n\n // Compartments for initialiazing and switching extensions\n private lineNumbersComp = new Compartment();\n private restrictSingleLineComp = new Compartment();\n private readOnlyComp = new Compartment();\n private customCompletionComp = new Compartment();\n private placeholderComp = new Compartment();\n private defaultSyntaxHighlightingComp = new Compartment();\n private themeComp = new Compartment();\n private autoCompletionComp = new Compartment();\n\n /**\n * The styles for CodeEditor\n * @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`\n */\n public static get styles(): CSSResultArray {\n return [styles];\n }\n\n connectedCallback(): void {\n super.connectedCallback();\n this.emit('nile-init',undefined,false);\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback();\n this.view.destroy()\n this.emit('nile-destroy',undefined,false);\n }\n\n firstUpdated() {\n this.createNewView()\n this.emit('nile-after-init',{ \n codeMirrorInstance: this.view, \n createNewView: this.createNewView, \n insertAtCursor: this.insertBetweenCode \n }, false )\n }\n\n getTabCompletionKeymap() {\n return this.tabCompletion\n ? keymap.of([\n {\n key: 'Tab',\n run: acceptCompletion,\n }\n ])\n : [];\n }\n\n protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void{\n super.updated(changedProperties);\n if (changedProperties.has('value') && this.view.state.doc.toString()!=this.value) {\n // Editor has already been initialized, update its state\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('multiline')) {\n this.view.dispatch({\n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n this.restrictSingleLineComp.reconfigure(this.getSingleLineExtension())\n ],\n })\n this.singleLineMultiLineToggle();\n }\n if (changedProperties.has('readonly')) {\n this.view.dispatch({ \n effects: [\n this.readOnlyComp.reconfigure(this.getReadOnlyExtension()),\n ]\n })\n }\n if (changedProperties.has('aboveCursor')) {\n console.log('aboveCursor changed:', this.aboveCursor);\n this.view.dispatch({\n effects: [\n this.autoCompletionComp.reconfigure(\n autocompletion({ aboveCursor: this.aboveCursor })\n )\n ]\n });\n } \n if (changedProperties.has('placeholder')) {\n this.view.dispatch({ \n effects: [\n this.placeholderComp.reconfigure(this.getPlaceholderExtension()),\n ]\n })\n }\n if (changedProperties.has('lineNumbers') || changedProperties.has('lineNumbersMultiline')) {\n this.view.dispatch({ \n effects: [\n this.lineNumbersComp.reconfigure(this.getLineNumbersExension()),\n ]\n })\n }\n if(changedProperties.has('customAutoCompletions') || changedProperties.has('customCompletionsPaths')){\n this.view.dispatch({ \n effects: [\n this.customCompletionComp.reconfigure(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }))\n ]\n })\n }\n if(changedProperties.has('disableSyntaxHighlighting')){\n this.view.dispatch({ \n effects: [\n this.defaultSyntaxHighlightingComp.reconfigure(this.getDefaultSyntaxHighlightingExtension())\n ]\n })\n }\n if(changedProperties.has('customThemeCSS')){\n this.view.dispatch({ \n effects: [\n this.themeComp.reconfigure(this.getCustomThemeExtension())\n ]\n })\n }\n }\n\n public render(): TemplateResult {\n const hasErrorMessage = !!this.errorMessage;\n const hasError = !!this.error;\n const noborder = !!this.noborder;\n const noScrollbar = !this.hasScroller\n return html`<div\n part=\"code-editor-base\"\n class=${classMap({\n 'code__editor__container': true,\n 'noborder': noborder,\n 'error': hasError || hasErrorMessage,\n 'code__editor__singleline': !this.multiline,\n 'no-scroller': noScrollbar\n })}\n >\n ${this.expandable\n ? html` \n <div @click=\"${(e: CustomEvent) => this.emit('nile-expand')}\" class=\"expand__icon__container\">\n <nile-icon\n name=\"${this.expandIcon}\"\n size=\"16\"\n color=\"black\"\n ></nile-icon>\n </div>`\n : ''}\n </div>\n ${hasErrorMessage\n ? html`\n <nile-form-error-message\n >${this.errorMessage}</nile-form-error-message\n >\n `\n : ``}`;\n }\n\n createNewView(emitEvent=true){\n if(this.view) this.view.destroy();\n this.createState()\n this.view = new EditorView({\n state: this.viewState,\n parent: this.codeEditor\n });\n\n this.view.dom.addEventListener('keydown', (e: KeyboardEvent) => {\n if (e.key === 'Escape' && this.view && completionStatus(this.view.state) !== null) {\n e.stopPropagation(); \n e.preventDefault(); \n closeCompletion(this.view);\n }\n }, true);\n \n if (emitEvent) this.emit('nile-after-update', { createNewView: this.createNewView, codeMirrorInstance: this.view, }, false );\n }\n\n createState(){\n const lineNumbersExtension = this.lineNumbersComp.of(this.getLineNumbersExension());\n const readOnlyExtension = this.readOnlyComp.of(this.getReadOnlyExtension());\n const restrictSingleLineExtension = this.restrictSingleLineComp.of(this.getSingleLineExtension())\n const placeholderExtension = this.placeholderComp.of(this.getPlaceholderExtension())\n const customThemeExtension=this.themeComp.of(this.getCustomThemeExtension());\n const defaultSyntaxHighlightingExtension = this.defaultSyntaxHighlightingComp.of(this.getDefaultSyntaxHighlightingExtension());\n const language = this.getLanguageExtension()\n const customAutoCompletions = this.customCompletionComp.of(javascriptLanguage.data.of({\n autocomplete: this.customAutocomplete\n }));\n\n this.viewState = EditorState.create({\n doc: !this.multiline ? convertToSingleLine(this.value) : this.value,\n extensions: [\n basicSetup({\n highlightActiveLine: false,\n foldGutter: this.enableFoldGutters,\n enableSearch:this.enableSearch\n }),\n lineNumbersExtension,\n readOnlyExtension,\n restrictSingleLineExtension,\n customAutoCompletions,\n placeholderExtension,\n defaultSyntaxHighlightingExtension,\n this.autoCompletionComp.of(\n autocompletion({ aboveCursor: this.aboveCursor })\n ), \n language,\n customThemeExtension,\n this.getTabCompletionKeymap(),\n EditorView.updateListener.of((v: ViewUpdate) => {\n if (v.docChanged) {\n this.debounce ? this.emitAfterTimeout({ value: this.view.state.doc.toString() }) : this.emit('nile-change', { value: this.view.state.doc.toString() })\n }\n }),\n EditorView.domEventHandlers({\n focus: () => this.dispatchEvent(new Event('nile-focus')),\n blur: () => this.dispatchEvent(new Event('nile-blur')),\n }),\n ],\n });\n return this.viewState\n }\n /**\n * Custom autocomplete handler for code editor suggestions\n * @param context CompletionContext from CodeMirror\n * @returns CompletionResult with suggestions or null if no suggestions\n */\n customAutocomplete = (context: CompletionContext): CompletionResult | null => {\n // Getting the valid last line, last text from the code editor\n const text = context.state.doc.sliceString(0, context.pos);\n const lastWord = text.split('\\n').at(-1)?.split(' ').at(-1) || '';\n const [textBeforeCursor, baseTextAfterSeperation] = splitStringAtLastSeparator(lastWord);\n \n return this.getNestedSuggestions(context, textBeforeCursor, baseTextAfterSeperation) \n || this.getTopLevelSuggestions(context, textBeforeCursor);\n };\n\n /**\n * Gets nested property suggestions based on the current path\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @param baseTextAfterSeperation Text after the last separator (. or [)\n * @returns CompletionResult with nested suggestions or null\n */\n getNestedSuggestions(context: CompletionContext, textBeforeCursor: string, baseTextAfterSeperation: string) {\n // Return early if not a valid path or not ending with . or [\n if (!isValidPath(textBeforeCursor) || !['.', '['].includes(textBeforeCursor.at(-1)!)) {\n return null;\n }\n\n const path = parsePath(textBeforeCursor);\n if (!path) return null;\n\n const textAfterSeperation = baseTextAfterSeperation.replace(/[\"'\\[]/g, '');\n const isInString = textAfterSeperation !== baseTextAfterSeperation;\n const isBracket = textBeforeCursor.at(-1) === '[';\n\n // Return null if we're in a string after a dot\n if (textBeforeCursor.at(-1) === '.' && isInString) return null;\n\n // Get nested properties and filter by text after separation if it exists\n let resolved = resolveNestedProperties(this.customAutoCompletions, path);\n if (!resolved || typeof resolved !== 'object') return null;\n\n if (textAfterSeperation) {\n resolved = Object.fromEntries(\n Object.entries(resolved).filter(([key]) => \n key.toLowerCase().startsWith(textAfterSeperation.toLowerCase())\n )\n );\n }\n\n return {\n from: context.pos - textAfterSeperation.length,\n options: Object.keys(resolved).map(key => ({\n label: key,\n type: 'property',\n info: `Key of ${path[path.length - 1]}`,\n apply: !this.allowVariableInCustomSuggestion && (isBracket && !isInString) \n ? `'${key}'` \n : key,\n boost: 999\n }))\n };\n }\n\n /**\n * Gets top level suggestions based on custom completions and paths\n * @param context CompletionContext from CodeMirror\n * @param textBeforeCursor Text before cursor position\n * @returns CompletionResult with top level suggestions or null\n */\n getTopLevelSuggestions(context: CompletionContext,textBeforeCursor:string){\n const baseMatch: any = textBeforeCursor.match(/([a-zA-Z_$][\\w$]*)$/);\n \n if (!baseMatch) {\n const trimmedText = textBeforeCursor.trim();\n if (trimmedText === '') {\n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length\n );\n \n const options = optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }));\n \n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths.forEach(path => {\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n });\n });\n }\n \n return {\n from: context.pos,\n options: options\n };\n }\n return null;\n }\n \n const optionsList = Object.keys(this.customAutoCompletions).filter(key => \n Object.keys(this.customAutoCompletions[key]).length && \n key.toLowerCase().startsWith(textBeforeCursor.toLowerCase())\n );\n \n const options=optionsList.map((key) => ({\n label: key,\n type: 'property',\n apply: key,\n boost: 999\n }))\n if(this.customCompletionsPaths.length){\n this.customCompletionsPaths\n .filter(path=>path.toLocaleLowerCase().includes(textBeforeCursor.toLocaleLowerCase()))\n .forEach(path=>{\n options.push({\n label: ''+path,\n type: 'property',\n apply: ''+path,\n boost: 998\n })\n })\n }\n return {\n from: context.pos - baseMatch[1].length,\n options: options\n }\n }\n\n emitAfterTimeout(value:any){\n if(this.timeOut) clearTimeout(this.timeOut);\n this.timeOut=setTimeout(()=> this.emit('nile-change', value, false), this.debounceTimeout)\n }\n \n public focusAtPosition(pos: number=this.view.state.doc.toString().length): void {\n if (this.view) {\n this.view.dispatch({\n selection: { anchor: pos },\n });\n this.view.focus();\n }\n }\n\n public insertBetweenCode=(text: string) => {\n const transaction = this.view.state.changeByRange(range => {\n const { from, to } = range;\n return { changes: { from:from, to, insert: text }, range };\n });\n this.view.dispatch(transaction);\n }\n\n singleLineMultiLineToggle() {\n this.view.dispatch({\n changes: {\n from: 0,\n to: this.view.state.doc.length,\n insert: !this.multiline\n ? convertToSingleLine(this.value)\n : this.value,\n },\n });\n }\n\n //EXTENSION CONFIGURATIONS\n getLineNumbersExension() {\n return (!this.multiline && this.lineNumbers) || (this.multiline && this.lineNumbersMultiline) ? lineNumbers() : [];\n }\n \n getLanguageExtension():Extension{\n switch(this.language){\n case 'sql':\n return sql();\n case 'json':\n return json();\n case 'html':\n return htmlLang();\n default:\n return javascript(); \n }\n }\n\n getReadOnlyExtension() {\n return this.readonly ? EditorState.readOnly.of(true) : [];\n }\n\n getSingleLineExtension() {\n return !this.multiline ? EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n ) : [];\n }\n\n getPlaceholderExtension(){\n return this.placeholder ? placeholder(this.placeholder) : [];\n }\n \n getDefaultSyntaxHighlightingExtension(){\n return !this.disableSyntaxHighlighting ? syntaxHighlighting(defaultHighlightStyle, { fallback: true }):[]\n }\n\n getCustomThemeExtension(): Extension {\n if(this.customThemeCSS) {\n if(this.defaultFont){\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss),EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss)];\n }\n if(this.defaultFont){\n return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];\n }\n return [EditorView.theme(customisedThemeCss)];\n }\n\n restrictSingleLine() {\n return EditorState.transactionFilter.of(tr =>\n tr.newDoc.lines > 1 ? [] : tr\n );\n }\n /* #endregion */\n}\n\nexport default NileCodeEditor;\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'nile-code-editor': NileCodeEditor;\n }\n}\n\n/**\n * Parses a string path into an array of keys representing nested object access\n * @param text The path string to parse (e.g. \"foo.bar[0].baz\")\n * @returns Array of keys if valid path, null otherwise\n * @example\n * parsePath(\"foo.bar[0]\") // returns [\"foo\", \"bar\", \"0\"]\n * parsePath(\"invalid\") // returns null\n */\nfunction parsePath(text: string) {\n const regex = /([a-zA-Z_$][\\w$]*)(\\[(?:[^\\]]+)\\]|\\.[a-zA-Z_$][\\w$]*)*/g;\n const matches = [...text.matchAll(regex)];\n if (matches.length > 0) {\n const base = matches[0][1]; // The base object name\n const keys = [base];\n // Extract keys from dot or bracket notation\n const pathMatches = text.match(/\\[(.*?)\\]|\\.(\\w+)/g) || [];\n for (const match of pathMatches) {\n if (match.startsWith('[')) {\n keys.push(match.slice(1, -1).replace(/['\"]/g, '')); // Remove brackets and quotes\n } else if (match.startsWith('.')) {\n keys.push(match.slice(1));\n }\n }\n return keys;\n }\n return null;\n};\n\n/**\n * Splits a path string at the last separator (. or [)\n * @param input The path string to split\n * @returns Array containing [path up to last separator, remainder after separator]\n * @example\n * splitStringAtLastSeparator(\"foo.bar[0]\") // returns [\"foo.bar[\", \"0\"]\n */\nfunction splitStringAtLastSeparator(input:string) {\n const lastSeparatorIndex = Math.max(input.lastIndexOf('.'), input.lastIndexOf('['));\n if (lastSeparatorIndex === -1) return [input, ''];\n return [input.slice(0, lastSeparatorIndex + 1), input.slice(lastSeparatorIndex + 1)];\n}\n\n/**\n * Traverses an object using an array of keys to access nested properties\n * @param obj The object to traverse\n * @param keys Array of keys defining the path to the desired property\n * @returns The value at the specified path, or null if path is invalid\n * @example\n * resolveNestedProperties({foo: {bar: 123}}, [\"foo\", \"bar\"]) // returns 123\n */\nfunction resolveNestedProperties (obj:any, keys:any[]){\n return keys.reduce((acc, key) => {\n if (acc && typeof acc === 'object') {\n return acc[key];\n }\n return null;\n }, obj);\n};\n\n/**\n * Validates if a string represents a valid object path format\n * @param path The path string to validate\n * @returns Boolean indicating if path format is valid\n * @example\n * isValidPath(\"foo.bar[0]\") // returns true\n * isValidPath(\"foo..bar\") // returns false\n */\nfunction isValidPath(path: string) {\n // Regex to validate the format of the string\n const regex = /^([a-zA-Z_$][\\w$]*)(\\.[a-zA-Z_$][\\w$]*|\\[\\s*(['\"]?[a-zA-Z0-9_$]*['\"]?)\\s*\\])*([\\.\\[])?$/;\n // Test the string against the regex\n return regex.test(path);\n}\n\n/**\n * Converts multi-line code into a single line by removing line breaks and extra whitespace\n * @param code The code string to convert\n * @returns Single line version of the code\n * @example\n * convertToSingleLine(\"foo\\n bar\") // returns \"foo bar\"\n */\nfunction convertToSingleLine(code: string) {\n if (!code) return '';\n // Remove line breaks and unnecessary whitespace\n return code.replace(/\\s+/g, ' ').trim();\n}\n\n"]}
|
@@ -106,6 +106,10 @@ export const styles = css `
|
|
106
106
|
}
|
107
107
|
|
108
108
|
/* Uploading State */
|
109
|
+
nile-loader {
|
110
|
+
line-height: 0;
|
111
|
+
}
|
112
|
+
|
109
113
|
.uploading {
|
110
114
|
height: 62px;
|
111
115
|
width: 648px;
|
@@ -187,6 +191,7 @@ export const styles = css `
|
|
187
191
|
|
188
192
|
.preview-inner {
|
189
193
|
display: flex;
|
194
|
+
align-items: center;
|
190
195
|
gap: 18px;
|
191
196
|
}
|
192
197
|
|
@@ -202,46 +207,11 @@ export const styles = css `
|
|
202
207
|
border-radius: var(--nile-radius-radius-xs);
|
203
208
|
border: 1px solid var(--nile-colors-neutral-400);
|
204
209
|
}
|
205
|
-
|
206
|
-
/* .preview-file-info {
|
207
|
-
width: 100%;
|
208
|
-
display: flex;
|
209
|
-
flex-direction: column;
|
210
|
-
justify-content: center;
|
211
|
-
align-items: flex-start;
|
212
|
-
gap: 0px;
|
213
|
-
}
|
214
|
-
|
215
|
-
.preview-file-info p {
|
216
|
-
margin: 0px;
|
217
|
-
font-size: var(--nile-type-scale-3);
|
218
|
-
font-weight: var(--nile-font-weight-regular);
|
219
|
-
text-align: left;
|
220
|
-
white-space: nowrap;
|
221
|
-
text-overflow: ellipsis;
|
222
|
-
overflow: hidden;
|
223
|
-
width: 500px;
|
224
|
-
}
|
225
|
-
|
226
|
-
.preview-file-info p:last-of-type{
|
227
|
-
color: var(--nile-colors-neutral-700);
|
228
|
-
font-size: var(--nile-type-scale-2);
|
229
|
-
font-weight: var(--nile-font-weight-regular);
|
230
|
-
text-align: left;
|
231
|
-
white-space: nowrap;
|
232
|
-
text-overflow: ellipsis;
|
233
|
-
overflow: hidden;
|
234
|
-
width: 538px;
|
235
|
-
} */
|
236
210
|
|
237
211
|
.preview nile-icon:hover {
|
238
212
|
cursor: pointer;
|
239
213
|
}
|
240
214
|
|
241
|
-
.preview-actions {
|
242
|
-
/* padding-right: 12px; */
|
243
|
-
}
|
244
|
-
|
245
215
|
/* NO PREVIEW STATE */
|
246
216
|
.no-preview {
|
247
217
|
border: 1px solid var(--nile-colors-neutral-400);
|
@@ -253,6 +223,7 @@ export const styles = css `
|
|
253
223
|
|
254
224
|
.no-preview-container {
|
255
225
|
display: flex;
|
226
|
+
align-items: center;
|
256
227
|
gap: 18px;
|
257
228
|
}
|
258
229
|
|
@@ -279,19 +250,29 @@ export const styles = css `
|
|
279
250
|
flex-direction: column;
|
280
251
|
justify-content: center;
|
281
252
|
align-items: flex-start;
|
282
|
-
gap:
|
253
|
+
gap: 4px;
|
283
254
|
}
|
284
255
|
|
285
256
|
.preview-file-info p {
|
286
257
|
margin: 0px;
|
287
258
|
font-size: var(--nile-type-scale-3);
|
288
259
|
font-weight: var(--nile-font-weight-regular);
|
260
|
+
text-align: left;
|
261
|
+
white-space: nowrap;
|
262
|
+
text-overflow: ellipsis;
|
263
|
+
overflow: hidden;
|
264
|
+
width: 500px;
|
289
265
|
}
|
290
266
|
|
291
267
|
.preview-file-info p:last-of-type{
|
292
268
|
color: var(--nile-colors-neutral-700);
|
293
269
|
font-size: var(--nile-type-scale-2);
|
294
270
|
font-weight: var(--nile-font-weight-regular);
|
271
|
+
text-align: left;
|
272
|
+
white-space: nowrap;
|
273
|
+
text-overflow: ellipsis;
|
274
|
+
overflow: hidden;
|
275
|
+
width: 500px;
|
295
276
|
}
|
296
277
|
|
297
278
|
.no-preview > nile-icon:hover {
|
@@ -310,6 +291,7 @@ export const styles = css `
|
|
310
291
|
.error-container {
|
311
292
|
width: 95%;
|
312
293
|
display: flex;
|
294
|
+
align-items: center;
|
313
295
|
gap: 18px;
|
314
296
|
}
|
315
297
|
|
@@ -350,7 +332,7 @@ export const styles = css `
|
|
350
332
|
width: 538px;
|
351
333
|
}
|
352
334
|
|
353
|
-
.file-info
|
335
|
+
.file-info nile-tooltip span, .file-info span {
|
354
336
|
color: var(--nile-colors-red-700);
|
355
337
|
font-size: var(--nile-type-scale-2);
|
356
338
|
font-weight: var(--nile-font-weight-regular);
|
@@ -376,11 +358,7 @@ export const styles = css `
|
|
376
358
|
width: 538px;
|
377
359
|
}
|
378
360
|
|
379
|
-
/*
|
380
|
-
display: inline-block;
|
381
|
-
} */
|
382
|
-
|
383
|
-
/* VARTICAL STATE START */
|
361
|
+
/* VERTICAL STATE START */
|
384
362
|
/* Default State */
|
385
363
|
.vertical-default {
|
386
364
|
display: flex;
|
@@ -539,7 +517,7 @@ export const styles = css `
|
|
539
517
|
max-width: 222px;
|
540
518
|
}
|
541
519
|
|
542
|
-
.file-info-vertical-state
|
520
|
+
.file-info-vertical-state nile-tooltip span, .file-info-vertical-state span {
|
543
521
|
color: var(--nile-colors-red-700);
|
544
522
|
font-size: var(--nile-type-scale-2);
|
545
523
|
font-weight: var(--nile-font-weight-regular);
|
@@ -580,7 +558,6 @@ export const styles = css `
|
|
580
558
|
margin: 0;
|
581
559
|
}
|
582
560
|
|
583
|
-
|
584
561
|
/* Displaing uploaded files CSS */
|
585
562
|
.display-files {
|
586
563
|
display: flex;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"nile-file-preview.css.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqlBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * FileUpload CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n * {\n padding: 0px;\n margin: 0px;\n box-sizing: border-box;\n }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 18px;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .horizontal-div {\n max-height: 62px;\n width: 648px;\n min-width: 230px;\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px dashed var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n background-color: var(--nile-colors-white-base);\n }\n \n .hover-state {\n border-color: var(--nile-colors-primary-600);\n }\n\n .vertical-div {\n height: auto;\n min-height: 156px;\n min-width: 240px;\n width: 240px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n padding: 12px;\n border-radius: var(--nile-radius-radius-xs);\n color: var(--nile-colors-dark-900);\n border: 1px dashed var(--nile-colors-neutral-500);\n background-color: var(--nile-colors-white-base);\n position: relative; \n margin-bottom: 10px;\n }\n\n .vertical-div:hover {\n border-color: var(--nile-colors-blue-500);\n }\n\n .outer-div-border {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .inner-div {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 18px;\n box-sizing: border-box;\n }\n\n .icons-container {\n display: flex;\n gap: 4px;\n }\n\n .general-icon {\n transform: rotate(-18.11deg);\n position: relative;\n bottom: 3px;\n }\n\n .image-icon {\n transform: rotate(15deg);\n }\n\n .icon:hover {\n cursor: pointer;\n }\n\n /* Uploading State */\n .uploading {\n height: 62px;\n width: 648px;\n padding: 12px;\n min-width: 230px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n box-sizing: border-box;\n border: 1px solid var(--nile-colors-neutral-400);\n border-radius: 4px;\n background-color: var(--nile-colors-white-base);\n }\n \n .uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .progress-bar-container {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .progress-bar-percent {\n width: 100%;\n display: flex;\n justify-content: space-between;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .progress-bar-container p {\n margin: 0px;\n }\n\n .progress-bar-container > p {\n font-size: var(--nile-type-scale-1);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .progress-bar-container .horizontal-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .progress-bar-container .vertical-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 212px;\n }\n\n /* PREVIEW STATE */\n .preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .preview-inner {\n display: flex;\n gap: 18px;\n }\n\n .preview-image-container {\n height: 42px;\n width: 42px;\n }\n\n .preview-image-container img, iframe {\n height: 42px;\n width: 42px;\n object-fit: contain;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-neutral-400);\n }\n \n /* .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 0px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 538px;\n } */\n\n .preview nile-icon:hover {\n cursor: pointer;\n }\n\n .preview-actions {\n /* padding-right: 12px; */\n }\n\n /* NO PREVIEW STATE */\n .no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .no-preview-container {\n display: flex;\n gap: 18px;\n }\n\n .document-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n .document-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 8px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .no-preview > nile-icon:hover {\n cursor: pointer;\n }\n\n /* ERROR STATE */\n .error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-container {\n width: 95%;\n display: flex;\n gap: 18px;\n }\n\n .error-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-red-400);\n background-color: var(--nile-colors-red-100);\n }\n\n .error-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .file-info > nile-tooltip > span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n max-width: 90%;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: left;\n }\n\n .error > nile-icon:hover {\n cursor: pointer;\n }\n\n .file-info .horizontal-file-name {\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-900);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n\n /* nile-tooltip::part(base) {\n display: inline-block;\n } */\n\n /* VARTICAL STATE START */\n /* Default State */\n .vertical-default {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 18px\n }\n\n .content-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .content-container h4 {\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:first-child {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:last-child {\n margin: 0px;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-neutral-700);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n /* Drag State */\n .vertical-drag {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap:18px;\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-blue-700);\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-blue-500);\n }\n\n /* Uploading State */\n .vertical-uploading {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .loading {\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 40px;\n }\n\n .corner-icon {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n\n /* Preview State */\n .vertical-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .image-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n object-fit: cover;\n width: 80px;\n height: 80px;\n border-radius: var(--nile-radius-radius-xs);\n }\n\n /* Vertical No Preview State */\n .vertical-no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .vertical-document-icon {\n height: 80px;\n width: 80px;\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n /* Veritcal Error State */\n .vertical-error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-bg {\n background-color: var(--nile-colors-red-100);\n border: 1px solid var(--nile-colors-red-400);\n }\n\n .file-info-vertical-state {\n width: 100%;\n text-align: center;\n }\n\n .file-info-vertical-state p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n padding-bottom: 6px;\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 222px;\n }\n \n .file-info-vertical-state > nile-tooltip > span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n max-width: 212px;\n }\n\n .error-message {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center\n }\n\n .error-p {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n width: 216px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n }\n\n .error-p p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 0;\n }\n\n\n /* Displaing uploaded files CSS */\n .display-files {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n gap: 8px;\n width: 648px;\n min-width: 230px;\n max-height: 200px;\n overflow-y: auto;\n border: 1px solid var(--nile-colors-neutral-700);\n border-radius: var(--nile-radius-radius-xs);\n scrollbar-width: none;\n padding: 12px;\n }\n\n ul, li {\n width: 100%;\n }\n\n li {\n list-style-type: none;\n }\n`;\n\nexport default [styles];"]}
|
1
|
+
{"version":3,"file":"nile-file-preview.css.js","sourceRoot":"","sources":["../../../src/nile-file-preview/nile-file-preview.css.ts"],"names":[],"mappings":"AAAA;;;;;EAKE;AAEF,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8jBxB,CAAC;AAEF,eAAe,CAAC,MAAM,CAAC,CAAC","sourcesContent":["/**\n* Copyright Aquera Inc 2023\n*\n* This source code is licensed under the BSD-3-Clause license found in the\n* LICENSE file in the root directory of this source tree.\n*/\n\nimport {css} from 'lit';\n\n/**\n * FileUpload CSS\n */\nexport const styles = css`\n :host {\n display: inline-block;\n }\n\n * {\n padding: 0px;\n margin: 0px;\n box-sizing: border-box;\n }\n\n .wrapper {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 18px;\n height: auto;\n }\n\n input {\n display: none;\n }\n\n .horizontal-div {\n max-height: 62px;\n width: 648px;\n min-width: 230px;\n padding: 12px;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px dashed var(--nile-colors-neutral-500);\n color: var(--nile-colors-dark-900);\n background-color: var(--nile-colors-white-base);\n }\n \n .hover-state {\n border-color: var(--nile-colors-primary-600);\n }\n\n .vertical-div {\n height: auto;\n min-height: 156px;\n min-width: 240px;\n width: 240px;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n padding: 12px;\n border-radius: var(--nile-radius-radius-xs);\n color: var(--nile-colors-dark-900);\n border: 1px dashed var(--nile-colors-neutral-500);\n background-color: var(--nile-colors-white-base);\n position: relative; \n margin-bottom: 10px;\n }\n\n .vertical-div:hover {\n border-color: var(--nile-colors-blue-500);\n }\n\n .outer-div-border {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .inner-div {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 18px;\n box-sizing: border-box;\n }\n\n .icons-container {\n display: flex;\n gap: 4px;\n }\n\n .general-icon {\n transform: rotate(-18.11deg);\n position: relative;\n bottom: 3px;\n }\n\n .image-icon {\n transform: rotate(15deg);\n }\n\n .icon:hover {\n cursor: pointer;\n }\n\n /* Uploading State */\n nile-loader {\n line-height: 0;\n }\n\n .uploading {\n height: 62px;\n width: 648px;\n padding: 12px;\n min-width: 230px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n gap: 18px;\n box-sizing: border-box;\n border: 1px solid var(--nile-colors-neutral-400);\n border-radius: 4px;\n background-color: var(--nile-colors-white-base);\n }\n \n .uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .progress-bar-container {\n width: 100%;\n display: flex;\n flex-direction: column;\n gap: 6px;\n }\n\n .progress-bar-percent {\n width: 100%;\n display: flex;\n justify-content: space-between;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n }\n\n .progress-bar-container p {\n margin: 0px;\n }\n\n .progress-bar-container > p {\n font-size: var(--nile-type-scale-1);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .progress-bar-container .horizontal-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .progress-bar-container .vertical-file-name {\n font-size: var(--nile-type-scale-1);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-500);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 212px;\n }\n\n /* PREVIEW STATE */\n .preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .preview-inner {\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .preview-image-container {\n height: 42px;\n width: 42px;\n }\n\n .preview-image-container img, iframe {\n height: 42px;\n width: 42px;\n object-fit: contain;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .preview nile-icon:hover {\n cursor: pointer;\n }\n\n /* NO PREVIEW STATE */\n .no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .no-preview-container {\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .document-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n .document-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .preview-file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .preview-file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .preview-file-info p:last-of-type{\n color: var(--nile-colors-neutral-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 500px;\n }\n\n .no-preview > nile-icon:hover {\n cursor: pointer;\n }\n\n /* ERROR STATE */\n .error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-container {\n width: 95%;\n display: flex;\n align-items: center;\n gap: 18px;\n }\n\n .error-icon {\n height: 40px;\n width: 40px;\n border-radius: var(--nile-radius-radius-xs);\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border: 1px solid var(--nile-colors-red-400);\n background-color: var(--nile-colors-red-100);\n }\n\n .error-icon nile-icon {\n height: 40px;\n width: 40px;\n }\n \n .file-info {\n width: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: flex-start;\n gap: 4px;\n }\n\n .file-info p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n \n .file-info nile-tooltip span, .file-info span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n max-width: 90%;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n text-align: left;\n }\n\n .error > nile-icon:hover {\n cursor: pointer;\n }\n\n .file-info .horizontal-file-name {\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-dark-900);\n text-align: left;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n width: 538px;\n }\n\n /* VERTICAL STATE START */\n /* Default State */\n .vertical-default {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 18px\n }\n\n .content-container {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n text-align: center;\n }\n\n .content-container h4 {\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:first-child {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n .content-container p:last-child {\n margin: 0px;\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n color: var(--nile-colors-neutral-700);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n width: 222px;\n }\n\n /* Drag State */\n .vertical-drag {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap:18px;\n font-size: var(--nile-type-scale-3);\n color: var(--nile-colors-blue-700);\n background-color: var(--nile-colors-blue-100);\n border-color: var(--nile-colors-blue-500);\n }\n\n /* Uploading State */\n .vertical-uploading {\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: center;\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-uploading:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .loading {\n display: flex;\n justify-content: center;\n align-items: center;\n padding-top: 40px;\n }\n\n .corner-icon {\n position: absolute;\n top: 10px;\n right: 10px;\n }\n\n /* Preview State */\n .vertical-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .image-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n object-fit: cover;\n width: 80px;\n height: 80px;\n border-radius: var(--nile-radius-radius-xs);\n }\n\n /* Vertical No Preview State */\n .vertical-no-preview {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-no-preview:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .vertical-document-icon {\n height: 80px;\n width: 80px;\n padding: 2px 3px 2px 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: var(--nile-radius-radius-xs);\n border: 1px solid var(--nile-colors-blue-400);\n background-color: var(--nile-colors-blue-100);\n }\n\n /* Veritcal Error State */\n .vertical-error {\n border: 1px solid var(--nile-colors-neutral-400);\n }\n\n .vertical-error:hover {\n border-color: var(--nile-colors-neutral-400);\n }\n\n .error-bg {\n background-color: var(--nile-colors-red-100);\n border: 1px solid var(--nile-colors-red-400);\n }\n\n .file-info-vertical-state {\n width: 100%;\n text-align: center;\n }\n\n .file-info-vertical-state p {\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n padding-bottom: 6px;\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n max-width: 222px;\n }\n \n .file-info-vertical-state nile-tooltip span, .file-info-vertical-state span {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n font-weight: var(--nile-font-weight-regular);\n text-align: center;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n max-width: 212px;\n }\n\n .error-message {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 8px;\n margin: 0px;\n font-size: var(--nile-type-scale-3);\n font-weight: var(--nile-font-weight-regular);\n text-align: center\n }\n\n .error-p {\n color: var(--nile-colors-red-700);\n font-size: var(--nile-type-scale-2);\n width: 216px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n }\n\n .error-p p {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n margin: 0;\n }\n\n /* Displaing uploaded files CSS */\n .display-files {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n align-items: center;\n gap: 8px;\n width: 648px;\n min-width: 230px;\n max-height: 200px;\n overflow-y: auto;\n border: 1px solid var(--nile-colors-neutral-700);\n border-radius: var(--nile-radius-radius-xs);\n scrollbar-width: none;\n padding: 12px;\n }\n\n ul, li {\n width: 100%;\n }\n\n li {\n list-style-type: none;\n }\n`;\n\nexport default [styles];"]}
|
@@ -28,6 +28,7 @@ export declare class NileFilePreview extends NileElement {
|
|
28
28
|
inputFileName: string;
|
29
29
|
private inputFileHtml;
|
30
30
|
private originalUrl;
|
31
|
+
isStringTruncated: boolean;
|
31
32
|
/**
|
32
33
|
* Render method
|
33
34
|
* @slot This is a slot test
|
@@ -38,7 +39,10 @@ export declare class NileFilePreview extends NileElement {
|
|
38
39
|
private createUploadState;
|
39
40
|
private handleFileUrl;
|
40
41
|
createState(file: File): Promise<void>;
|
41
|
-
private
|
42
|
+
private customFile;
|
43
|
+
getState(): TemplateResult;
|
44
|
+
getHorizontalStates(): TemplateResult;
|
45
|
+
getVerticalStates(): TemplateResult;
|
42
46
|
render(): TemplateResult;
|
43
47
|
disconnectedCallback(): void;
|
44
48
|
}
|