@aquera/nile-elements 1.0.1-beta-1.4 → 1.0.1-beta-1.6
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 +31 -0
- package/demo/index.html +8 -15
- package/dist/index.cjs.js +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.js +689 -620
- package/dist/internal/resizable-table-helper.cjs.js +1 -1
- package/dist/internal/resizable-table-helper.cjs.js.map +1 -1
- package/dist/internal/resizable-table-helper.esm.js +1 -1
- package/dist/nile-code-editor/extensionSetup.cjs.js +5 -5
- 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 +3 -3
- package/dist/nile-code-editor/theme.cjs.js +1 -1
- package/dist/nile-code-editor/theme.cjs.js.map +1 -1
- package/dist/nile-code-editor/theme.esm.js +1 -1
- 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 +203 -184
- 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 +66 -77
- 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 +142 -89
- 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 +50 -108
- 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/drag-drop.util.cjs.js +1 -1
- package/dist/nile-file-upload/utils/drag-drop.util.cjs.js.map +1 -1
- package/dist/nile-file-upload/utils/drag-drop.util.esm.js +1 -1
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js +2 -1
- 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-input/nile-input.css.cjs.js +1 -1
- package/dist/nile-input/nile-input.css.cjs.js.map +1 -1
- package/dist/nile-input/nile-input.css.esm.js +0 -1
- package/dist/nile-option/nile-option.cjs.js +1 -1
- package/dist/nile-option/nile-option.cjs.js.map +1 -1
- package/dist/nile-option/nile-option.esm.js +3 -3
- package/dist/nile-option-group/index.cjs.js +2 -0
- package/dist/nile-option-group/index.cjs.js.map +1 -0
- package/dist/nile-option-group/index.esm.js +1 -0
- package/dist/nile-option-group/nile-option-group.cjs.js +2 -0
- package/dist/nile-option-group/nile-option-group.cjs.js.map +1 -0
- package/dist/nile-option-group/nile-option-group.css.cjs.js +2 -0
- package/dist/nile-option-group/nile-option-group.css.cjs.js.map +1 -0
- package/dist/nile-option-group/nile-option-group.css.esm.js +46 -0
- package/dist/nile-option-group/nile-option-group.esm.js +14 -0
- package/dist/nile-option-group/nile-option-group.interface.cjs.js +2 -0
- package/dist/nile-option-group/nile-option-group.interface.cjs.js.map +1 -0
- package/dist/nile-option-group/nile-option-group.interface.esm.js +1 -0
- package/dist/nile-pagination/nile-pagination.cjs.js +1 -1
- package/dist/nile-pagination/nile-pagination.cjs.js.map +1 -1
- package/dist/nile-pagination/nile-pagination.css.cjs.js +1 -1
- package/dist/nile-pagination/nile-pagination.css.cjs.js.map +1 -1
- package/dist/nile-pagination/nile-pagination.css.esm.js +9 -2
- package/dist/nile-pagination/nile-pagination.esm.js +3 -1
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +2 -2
- package/dist/nile-select/nile-select.interface.cjs.js +2 -0
- package/dist/nile-select/nile-select.interface.cjs.js.map +1 -0
- package/dist/nile-select/nile-select.interface.esm.js +1 -0
- package/dist/nile-table-body/nile-table-body.cjs.js +1 -1
- package/dist/nile-table-body/nile-table-body.cjs.js.map +1 -1
- package/dist/nile-table-body/nile-table-body.esm.js +2 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.cjs.js.map +1 -1
- package/dist/nile-table-cell-item/nile-table-cell-item.esm.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.cjs.js +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.cjs.js.map +1 -1
- package/dist/nile-table-header-item/nile-table-header-item.esm.js +2 -2
- package/dist/nile-virtual-select/renderer.cjs.js +1 -1
- package/dist/nile-virtual-select/renderer.cjs.js.map +1 -1
- package/dist/nile-virtual-select/renderer.esm.js +13 -12
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/internal/resizable-table-helper.d.ts +5 -0
- package/dist/src/internal/resizable-table-helper.js +27 -4
- package/dist/src/internal/resizable-table-helper.js.map +1 -1
- package/dist/src/nile-code-editor/nile-code-editor.d.ts +5 -0
- package/dist/src/nile-code-editor/nile-code-editor.js +44 -7
- package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
- package/dist/src/nile-code-editor/theme.d.ts +15 -0
- package/dist/src/nile-code-editor/theme.js +17 -2
- package/dist/src/nile-code-editor/theme.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.css.js +201 -182
- 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 +6 -2
- package/dist/src/nile-file-preview/nile-file-preview.js +49 -20
- 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 +58 -62
- 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 +4 -3
- package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +3 -2
- 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 +4 -0
- package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +25 -0
- 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 +140 -87
- 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 +4 -1
- package/dist/src/nile-file-upload/nile-file-upload.js +30 -20
- 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 -5
- package/dist/src/nile-file-upload/nile-file-upload.template.js +69 -115
- 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 +11 -4
- package/dist/src/nile-file-upload/types/file-upload.enums.js +8 -1
- package/dist/src/nile-file-upload/types/file-upload.enums.js.map +1 -1
- package/dist/src/nile-file-upload/utils/drag-drop.util.d.ts +2 -4
- package/dist/src/nile-file-upload/utils/drag-drop.util.js +18 -21
- package/dist/src/nile-file-upload/utils/drag-drop.util.js.map +1 -1
- package/dist/src/nile-file-upload/utils/file-validation.util.d.ts +3 -1
- package/dist/src/nile-file-upload/utils/file-validation.util.js +82 -32
- package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
- package/dist/src/nile-input/nile-input.css.js +0 -1
- package/dist/src/nile-input/nile-input.css.js.map +1 -1
- package/dist/src/nile-option/nile-option.d.ts +1 -0
- package/dist/src/nile-option/nile-option.js +6 -1
- package/dist/src/nile-option/nile-option.js.map +1 -1
- package/dist/src/nile-option-group/index.d.ts +1 -0
- package/dist/src/nile-option-group/index.js +2 -0
- package/dist/src/nile-option-group/index.js.map +1 -0
- package/dist/src/nile-option-group/nile-option-group.css.d.ts +12 -0
- package/dist/src/nile-option-group/nile-option-group.css.js +58 -0
- package/dist/src/nile-option-group/nile-option-group.css.js.map +1 -0
- package/dist/src/nile-option-group/nile-option-group.d.ts +23 -0
- package/dist/src/nile-option-group/nile-option-group.interface.d.ts +22 -0
- package/dist/src/nile-option-group/nile-option-group.interface.js +2 -0
- package/dist/src/nile-option-group/nile-option-group.interface.js.map +1 -0
- package/dist/src/nile-option-group/nile-option-group.js +76 -0
- package/dist/src/nile-option-group/nile-option-group.js.map +1 -0
- package/dist/src/nile-pagination/nile-pagination.css.js +7 -0
- package/dist/src/nile-pagination/nile-pagination.css.js.map +1 -1
- package/dist/src/nile-pagination/nile-pagination.js +3 -1
- package/dist/src/nile-pagination/nile-pagination.js.map +1 -1
- package/dist/src/nile-select/nile-select.d.ts +6 -0
- package/dist/src/nile-select/nile-select.interface.d.ts +5 -0
- package/dist/src/nile-select/nile-select.interface.js +2 -0
- package/dist/src/nile-select/nile-select.interface.js.map +1 -0
- package/dist/src/nile-select/nile-select.js +59 -1
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-table-body/nile-table-body.d.ts +1 -0
- package/dist/src/nile-table-body/nile-table-body.js +4 -0
- package/dist/src/nile-table-body/nile-table-body.js.map +1 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.d.ts +2 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.js +12 -1
- package/dist/src/nile-table-cell-item/nile-table-cell-item.js.map +1 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.d.ts +2 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.js +12 -1
- package/dist/src/nile-table-header-item/nile-table-header-item.js.map +1 -1
- package/dist/src/nile-virtual-select/renderer.js +3 -0
- package/dist/src/nile-virtual-select/renderer.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/src/index.ts +1 -1
- package/src/internal/resizable-table-helper.ts +31 -8
- package/src/nile-code-editor/nile-code-editor.ts +49 -9
- package/src/nile-code-editor/theme.ts +19 -3
- package/src/nile-file-preview/nile-file-preview.css.ts +202 -183
- package/src/nile-file-preview/nile-file-preview.template.ts +66 -63
- package/src/nile-file-preview/nile-file-preview.ts +54 -22
- package/src/nile-file-preview/types/nile-file-preview.enums.ts +4 -3
- package/src/nile-file-preview/utils/nile-file-preview.util.ts +25 -0
- package/src/nile-file-upload/nile-file-upload.css.ts +141 -88
- package/src/nile-file-upload/nile-file-upload.template.ts +133 -121
- package/src/nile-file-upload/nile-file-upload.ts +30 -18
- package/src/nile-file-upload/types/file-upload.enums.ts +9 -2
- package/src/nile-file-upload/utils/drag-drop.util.ts +25 -25
- package/src/nile-file-upload/utils/file-validation.util.ts +98 -45
- package/src/nile-input/nile-input.css.ts +0 -1
- package/src/nile-option/nile-option.ts +4 -1
- package/src/nile-option-group/index.ts +1 -0
- package/src/nile-option-group/nile-option-group.css.ts +60 -0
- package/src/nile-option-group/nile-option-group.interface.ts +25 -0
- package/src/nile-option-group/nile-option-group.ts +84 -0
- package/src/nile-pagination/nile-pagination.css.ts +7 -0
- package/src/nile-pagination/nile-pagination.ts +3 -1
- package/src/nile-select/nile-select.interface.ts +5 -0
- package/src/nile-select/nile-select.ts +74 -2
- package/src/nile-table-body/nile-table-body.ts +2 -0
- package/src/nile-table-cell-item/nile-table-cell-item.ts +15 -1
- package/src/nile-table-header-item/nile-table-header-item.ts +15 -1
- package/src/nile-virtual-select/renderer.ts +3 -0
- package/vscode-html-custom-data.json +49 -13
package/package.json
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
"description": "Webcomponent nile-elements following open-wc recommendations",
|
4
4
|
"license": "MIT",
|
5
5
|
"author": "nile-elements",
|
6
|
-
"version": "1.0.1-beta-1.
|
6
|
+
"version": "1.0.1-beta-1.6",
|
7
7
|
"main": "dist/src/index.js",
|
8
8
|
"type": "module",
|
9
9
|
"module": "dist/src/index.js",
|
@@ -87,7 +87,8 @@
|
|
87
87
|
"./nile-inline-edit": "./dist/src/nile-inline-edit/index.js",
|
88
88
|
"./nile-table": "./dist/src/nile-table/index.js",
|
89
89
|
"./nile-pagination": "./dist/src/nile-pagination/index.js",
|
90
|
-
"./nile-slider": "./dist/src/nile-slider/index.js"
|
90
|
+
"./nile-slider": "./dist/src/nile-slider/index.js",
|
91
|
+
"./nile-option-group": "./dist/src/nile-option-group/index.js"
|
91
92
|
},
|
92
93
|
"scripts": {
|
93
94
|
"analyze": "cem analyze --litelement",
|
package/src/index.ts
CHANGED
@@ -77,9 +77,9 @@ export { NileSectionMessage } from './nile-section-message';
|
|
77
77
|
export { NileToolbar } from './nile-toolbar';
|
78
78
|
export { NileInlineEdit } from './nile-inline-edit';
|
79
79
|
export { NileTable } from './nile-table';
|
80
|
-
|
81
80
|
export { NileFilterChip } from './nile-filter-chip';
|
82
81
|
export {NilePagination } from './nile-pagination';
|
83
82
|
export { NileSlider } from './nile-slider';
|
84
83
|
export { NileFileUpload } from './nile-file-upload';
|
85
84
|
export { NileFilePreview } from './nile-file-preview';
|
85
|
+
export { NileOptionGroup } from './nile-option-group';
|
@@ -103,6 +103,23 @@ export function synchronizeColumnWidth(sourceElement: HTMLElement, newWidth: num
|
|
103
103
|
});
|
104
104
|
}
|
105
105
|
|
106
|
+
/**
|
107
|
+
* Resets all column widths in a table to their default values
|
108
|
+
* @param tableBody The table body element to reset
|
109
|
+
*/
|
110
|
+
export function resetAllColumnWidths(tableBody: HTMLElement): void {
|
111
|
+
const headerItems = tableBody.querySelectorAll('nile-table-header-item');
|
112
|
+
const cellItems = tableBody.querySelectorAll('nile-table-cell-item');
|
113
|
+
|
114
|
+
headerItems.forEach(header => {
|
115
|
+
header.style.removeProperty('width');
|
116
|
+
});
|
117
|
+
|
118
|
+
cellItems.forEach(cell => {
|
119
|
+
cell.style.removeProperty('width');
|
120
|
+
});
|
121
|
+
}
|
122
|
+
|
106
123
|
/**
|
107
124
|
* Checks if an element has the resizable attribute
|
108
125
|
* @param element The element to check
|
@@ -137,15 +154,21 @@ export function createResizeHandler(element: HTMLElement, minWidth: number = 50)
|
|
137
154
|
* @returns True if any columns have resizable attribute
|
138
155
|
*/
|
139
156
|
export function hasResizableColumns(tableBody: HTMLElement): boolean {
|
140
|
-
const
|
141
|
-
|
157
|
+
const directChildren = Array.from(tableBody.children);
|
158
|
+
|
159
|
+
const hasResizableHeaders = directChildren.some(child => {
|
160
|
+
if (child.tagName.toLowerCase() === 'nile-table-header-item') {
|
161
|
+
return child.hasAttribute('resizable');
|
162
|
+
}
|
163
|
+
return false;
|
164
|
+
});
|
142
165
|
|
143
|
-
const
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
);
|
166
|
+
const hasResizableCells = directChildren.some(child => {
|
167
|
+
if (child.tagName.toLowerCase() === 'nile-table-cell-item') {
|
168
|
+
return child.hasAttribute('resizable');
|
169
|
+
}
|
170
|
+
return false;
|
171
|
+
});
|
149
172
|
|
150
173
|
return hasResizableHeaders || hasResizableCells;
|
151
174
|
}
|
@@ -35,13 +35,12 @@ import {
|
|
35
35
|
import { sql } from '@codemirror/lang-sql';
|
36
36
|
import { json } from '@codemirror/lang-json';
|
37
37
|
import { html as htmlLang } from '@codemirror/lang-html';
|
38
|
-
import { autocompletion,CompletionContext,CompletionResult } from '@codemirror/autocomplete';
|
38
|
+
import { autocompletion,acceptCompletion, closeCompletion,CompletionContext,CompletionResult, completionStatus } from '@codemirror/autocomplete';
|
39
39
|
import NileElement from '../internal/nile-element';
|
40
40
|
import { basicSetup } from './extensionSetup';
|
41
41
|
import { classMap } from 'lit/directives/class-map.js';
|
42
|
-
import { Theme as DefaultTheme, customisedThemeCss } from './theme';
|
42
|
+
import { Theme as DefaultTheme, customisedThemeCss, fontFamily } from './theme';
|
43
43
|
import { keymap } from '@codemirror/view';
|
44
|
-
import { acceptCompletion } from '@codemirror/autocomplete';
|
45
44
|
|
46
45
|
// Choose the appropriate mode for your use case
|
47
46
|
|
@@ -102,7 +101,9 @@ export class NileCodeEditor extends NileElement {
|
|
102
101
|
|
103
102
|
@property({ type: Boolean, reflect: true , attribute: true}) aboveCursor: boolean = false;
|
104
103
|
|
105
|
-
@property({ type: Boolean, reflect: true, attribute: true }) tabCompletion: boolean =
|
104
|
+
@property({ type: Boolean, reflect: true, attribute: true }) tabCompletion: boolean = true;
|
105
|
+
|
106
|
+
@property({ type: Boolean, reflect: true, attribute: true }) defaultFont: boolean = false;
|
106
107
|
|
107
108
|
public view: EditorView;
|
108
109
|
public viewState:EditorState;
|
@@ -116,7 +117,9 @@ export class NileCodeEditor extends NileElement {
|
|
116
117
|
private placeholderComp = new Compartment();
|
117
118
|
private defaultSyntaxHighlightingComp = new Compartment();
|
118
119
|
private themeComp = new Compartment();
|
120
|
+
private autoCompletionComp = new Compartment();
|
119
121
|
|
122
|
+
private isSpacePressed:boolean = false;
|
120
123
|
/**
|
121
124
|
* The styles for CodeEditor
|
122
125
|
* @remarks If you are extending this class you can extend the base styles with super. Eg `return [super(), myCustomStyles]`
|
@@ -178,6 +181,15 @@ export class NileCodeEditor extends NileElement {
|
|
178
181
|
]
|
179
182
|
})
|
180
183
|
}
|
184
|
+
if (changedProperties.has('aboveCursor')) {
|
185
|
+
this.view.dispatch({
|
186
|
+
effects: [
|
187
|
+
this.autoCompletionComp.reconfigure(
|
188
|
+
autocompletion({ aboveCursor: this.aboveCursor })
|
189
|
+
)
|
190
|
+
]
|
191
|
+
});
|
192
|
+
}
|
181
193
|
if (changedProperties.has('placeholder')) {
|
182
194
|
this.view.dispatch({
|
183
195
|
effects: [
|
@@ -261,7 +273,27 @@ export class NileCodeEditor extends NileElement {
|
|
261
273
|
parent: this.codeEditor
|
262
274
|
});
|
263
275
|
|
264
|
-
|
276
|
+
this.view.dom.addEventListener('keydown', (e: KeyboardEvent) => {
|
277
|
+
this.checkForSpaceKey(e);
|
278
|
+
this.handleEscapeKey(e);
|
279
|
+
}, true);
|
280
|
+
if (emitEvent) this.emit('nile-after-update', { createNewView: this.createNewView, codeMirrorInstance: this.view, }, false );
|
281
|
+
}
|
282
|
+
|
283
|
+
checkForSpaceKey(e: KeyboardEvent) {
|
284
|
+
if (e.code === 'Space' && !e.ctrlKey) {
|
285
|
+
this.isSpacePressed = true;
|
286
|
+
} else {
|
287
|
+
this.isSpacePressed = false;
|
288
|
+
}
|
289
|
+
}
|
290
|
+
|
291
|
+
handleEscapeKey(e: KeyboardEvent) {
|
292
|
+
if (e.key === 'Escape' && this.view && completionStatus(this.view.state) !== null) {
|
293
|
+
e.stopPropagation();
|
294
|
+
e.preventDefault();
|
295
|
+
closeCompletion(this.view);
|
296
|
+
}
|
265
297
|
}
|
266
298
|
|
267
299
|
createState(){
|
@@ -290,7 +322,9 @@ export class NileCodeEditor extends NileElement {
|
|
290
322
|
customAutoCompletions,
|
291
323
|
placeholderExtension,
|
292
324
|
defaultSyntaxHighlightingExtension,
|
293
|
-
|
325
|
+
this.autoCompletionComp.of(
|
326
|
+
autocompletion({ aboveCursor: this.aboveCursor })
|
327
|
+
),
|
294
328
|
language,
|
295
329
|
customThemeExtension,
|
296
330
|
this.getTabCompletionKeymap(),
|
@@ -382,7 +416,7 @@ export class NileCodeEditor extends NileElement {
|
|
382
416
|
|
383
417
|
if (!baseMatch) {
|
384
418
|
const trimmedText = textBeforeCursor.trim();
|
385
|
-
if (trimmedText === '') {
|
419
|
+
if (trimmedText === '' && !this.isSpacePressed) {
|
386
420
|
const optionsList = Object.keys(this.customAutoCompletions).filter(key =>
|
387
421
|
Object.keys(this.customAutoCompletions[key]).length
|
388
422
|
);
|
@@ -513,10 +547,16 @@ export class NileCodeEditor extends NileElement {
|
|
513
547
|
}
|
514
548
|
|
515
549
|
getCustomThemeExtension(): Extension {
|
516
|
-
if
|
550
|
+
if(this.customThemeCSS) {
|
551
|
+
if(this.defaultFont){
|
552
|
+
return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss),EditorView.theme(fontFamily)];
|
553
|
+
}
|
517
554
|
return [EditorView.theme(this.customThemeCSS as { [selector: string]: StyleSpec }), EditorView.theme(customisedThemeCss)];
|
518
555
|
}
|
519
|
-
|
556
|
+
if(this.defaultFont){
|
557
|
+
return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
|
558
|
+
}
|
559
|
+
return [EditorView.theme(customisedThemeCss)];
|
520
560
|
}
|
521
561
|
|
522
562
|
restrictSingleLine() {
|
@@ -38,7 +38,23 @@ export const CustomTheme = {
|
|
38
38
|
},
|
39
39
|
};
|
40
40
|
|
41
|
+
export const fontFamily = {
|
42
|
+
'.cm-tooltip.cm-tooltip-autocomplete > ul' : {
|
43
|
+
fontFamily: 'monospace !important',
|
44
|
+
fontWeight: '400',
|
45
|
+
},
|
46
|
+
'.cm-content' : {
|
47
|
+
fontFamily: 'monospace !important',
|
48
|
+
}
|
49
|
+
}
|
50
|
+
|
41
51
|
export const customisedThemeCss = {
|
52
|
+
'.cm-content' : {
|
53
|
+
fontFamily: 'inherit',
|
54
|
+
},
|
55
|
+
'.cm-scroller' : {
|
56
|
+
fontFamily: 'inherit',
|
57
|
+
},
|
42
58
|
'.cm-tooltip-autocomplete': {
|
43
59
|
padding: '9px 12px',
|
44
60
|
backgroundColor: '#FFFFFF',
|
@@ -53,7 +69,7 @@ export const customisedThemeCss = {
|
|
53
69
|
color: 'hsl(240 5.3% 26.1%)',
|
54
70
|
},
|
55
71
|
'.cm-tooltip.cm-completionInfo.cm-completionInfo-right': {
|
56
|
-
fontFamily: '
|
72
|
+
fontFamily: 'inherit',
|
57
73
|
backgroundColor: '#FFFFFF',
|
58
74
|
color: 'hsl(240 5.3% 26.1%)',
|
59
75
|
padding: "6px 12px",
|
@@ -63,7 +79,7 @@ export const customisedThemeCss = {
|
|
63
79
|
fontSize: '14px',
|
64
80
|
},
|
65
81
|
'.cm-tooltip.cm-tooltip-autocomplete > ul': {
|
66
|
-
fontFamily: '
|
82
|
+
fontFamily: 'inherit',
|
67
83
|
fontWeight: '400',
|
68
84
|
},
|
69
85
|
'.cm-tooltip.cm-tooltip-autocomplete > ul > li': {
|
@@ -147,4 +163,4 @@ export const customisedThemeCss = {
|
|
147
163
|
'.cm-completionLabel': {
|
148
164
|
marginLeft: '18px',
|
149
165
|
}
|
150
|
-
};
|
166
|
+
};
|