@aquera/nile-elements 0.1.55-beta-1 → 0.1.55-patch-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/demo/index.html +0 -1
- package/dist/{fixture-ba65eb22.esm.js → fixture-90b199c4.esm.js} +1 -1
- package/dist/{fixture-324a7ef9.cjs.js → fixture-dbd66009.cjs.js} +2 -2
- package/dist/{fixture-324a7ef9.cjs.js.map → fixture-dbd66009.cjs.js.map} +1 -1
- 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 +120 -0
- package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.test.esm.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js +1 -1
- package/dist/nile-button/nile-button.test.esm.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
- package/dist/nile-card/nile-card.test.cjs.js +1 -1
- package/dist/nile-card/nile-card.test.esm.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.test.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-dialog/nile-dialog.test.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
- package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.test.esm.js +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
- package/dist/nile-icon/nile-icon.test.esm.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js +1 -1
- package/dist/nile-input/nile-input.test.esm.js +1 -1
- package/dist/nile-link/nile-link.test.cjs.js +1 -1
- package/dist/nile-link/nile-link.test.esm.js +1 -1
- package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
- package/dist/nile-loader/nile-loader.test.esm.js +1 -1
- package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
- package/dist/nile-popover/nile-popover.test.esm.js +1 -1
- package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
- package/dist/nile-popup/nile-popup.test.esm.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
- package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.test.esm.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
- package/dist/nile-select/nile-select.test.cjs.js +1 -1
- package/dist/nile-select/nile-select.test.esm.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
- 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-tab-group/nile-tab-group.test.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.esm.js +1 -1
- package/dist/src/internal/resizable-helper.d.ts +59 -0
- package/dist/src/internal/resizable-helper.js +115 -0
- package/dist/src/internal/resizable-helper.js.map +1 -0
- package/dist/src/internal/resizable-styles.d.ts +16 -0
- package/dist/src/internal/resizable-styles.js +144 -0
- package/dist/src/internal/resizable-styles.js.map +1 -0
- package/dist/src/nile-badge/__snapshots__/nile-badge.test.snap.js +17 -0
- package/dist/src/nile-calendar/__snapshots__/nile-calendar.test.snap.js +310 -0
- package/dist/src/nile-card/__snapshots__/nile-card.test.snap.js +34 -0
- package/dist/src/nile-checkbox/__snapshots__/nile-checkbox.test.snap.js +31 -0
- package/dist/src/nile-code-editor/nile-code-editor.d.ts +4 -1
- package/dist/src/nile-code-editor/nile-code-editor.js +23 -10
- package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.css.js +167 -209
- 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 +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.js +10 -10
- package/dist/src/nile-file-preview/nile-file-preview.js.map +1 -1
- package/dist/src/nile-file-preview/nile-file-preview.template.js +43 -41
- 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 +3 -3
- package/dist/src/nile-file-preview/types/nile-file-preview.enums.js +2 -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 +0 -5
- package/dist/src/nile-file-preview/utils/nile-file-preview.util.js +0 -25
- 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 +87 -140
- 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 -3
- package/dist/src/nile-file-upload/nile-file-upload.js +20 -29
- 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 +5 -4
- package/dist/src/nile-file-upload/nile-file-upload.template.js +98 -43
- 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 +3 -8
- package/dist/src/nile-file-upload/types/file-upload.enums.js +1 -6
- 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 +4 -2
- package/dist/src/nile-file-upload/utils/drag-drop.util.js +21 -18
- 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 +1 -2
- package/dist/src/nile-file-upload/utils/file-validation.util.js +32 -72
- package/dist/src/nile-file-upload/utils/file-validation.util.js.map +1 -1
- package/dist/src/nile-hero/__snapshots__/nile-hero.test.snap.js +47 -0
- package/dist/src/nile-icon/__snapshots__/nile-icon.test.snap.js +16 -0
- package/dist/src/nile-input/__snapshots__/nile-input.test.snap.js +75 -0
- package/dist/src/nile-popover/__snapshots__/nile-popover.test.snap.js +22 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-code-editor/nile-code-editor.ts +20 -7
- 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-add72f26.esm.js +0 -569
- package/dist/fixture-c1bd203f.cjs.js +0 -395
- package/dist/fixture-c1bd203f.cjs.js.map +0 -1
- package/dist/fixture-cb376a7f.cjs.js +0 -395
- package/dist/fixture-cb376a7f.cjs.js.map +0 -1
- package/dist/fixture-f2693d97.esm.js +0 -569
- package/dist/lit-html-39a6718c.esm.js +0 -6
- package/dist/lit-html-9b3af046.cjs.js +0 -6
- package/dist/lit-html-9b3af046.cjs.js.map +0 -1
- package/dist/nile-file-preview/index.cjs.js +0 -2
- package/dist/nile-file-preview/index.cjs.js.map +0 -1
- package/dist/nile-file-preview/index.esm.js +0 -1
- package/dist/nile-file-preview/nile-file-preview.cjs.js +0 -2
- package/dist/nile-file-preview/nile-file-preview.cjs.js.map +0 -1
- package/dist/nile-file-preview/nile-file-preview.css.cjs.js +0 -2
- package/dist/nile-file-preview/nile-file-preview.css.cjs.js.map +0 -1
- package/dist/nile-file-preview/nile-file-preview.css.esm.js +0 -598
- package/dist/nile-file-preview/nile-file-preview.esm.js +0 -3
- package/dist/nile-file-preview/nile-file-preview.template.cjs.js +0 -2
- package/dist/nile-file-preview/nile-file-preview.template.cjs.js.map +0 -1
- package/dist/nile-file-preview/nile-file-preview.template.esm.js +0 -176
- package/dist/nile-file-preview/nile-file-preview.test.cjs.js +0 -2
- package/dist/nile-file-preview/nile-file-preview.test.cjs.js.map +0 -1
- package/dist/nile-file-preview/nile-file-preview.test.esm.js +0 -1
- package/dist/nile-file-preview/types/index.cjs.js +0 -2
- package/dist/nile-file-preview/types/index.cjs.js.map +0 -1
- package/dist/nile-file-preview/types/index.esm.js +0 -1
- package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js +0 -2
- package/dist/nile-file-preview/types/nile-file-preview.enums.cjs.js.map +0 -1
- package/dist/nile-file-preview/types/nile-file-preview.enums.esm.js +0 -1
- package/dist/nile-file-preview/types/nile-file-preview.interface.cjs.js +0 -2
- package/dist/nile-file-preview/types/nile-file-preview.interface.cjs.js.map +0 -1
- package/dist/nile-file-preview/types/nile-file-preview.interface.esm.js +0 -1
- package/dist/nile-file-preview/utils/index.cjs.js +0 -2
- package/dist/nile-file-preview/utils/index.cjs.js.map +0 -1
- package/dist/nile-file-preview/utils/index.esm.js +0 -1
- package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js +0 -2
- package/dist/nile-file-preview/utils/nile-file-preview.util.cjs.js.map +0 -1
- package/dist/nile-file-preview/utils/nile-file-preview.util.esm.js +0 -1
- package/dist/nile-file-upload/index.cjs.js +0 -2
- package/dist/nile-file-upload/index.cjs.js.map +0 -1
- package/dist/nile-file-upload/index.esm.js +0 -1
- package/dist/nile-file-upload/nile-file-upload.cjs.js +0 -2
- package/dist/nile-file-upload/nile-file-upload.cjs.js.map +0 -1
- package/dist/nile-file-upload/nile-file-upload.css.cjs.js +0 -2
- package/dist/nile-file-upload/nile-file-upload.css.cjs.js.map +0 -1
- package/dist/nile-file-upload/nile-file-upload.css.esm.js +0 -605
- package/dist/nile-file-upload/nile-file-upload.esm.js +0 -3
- package/dist/nile-file-upload/nile-file-upload.template.cjs.js +0 -10
- package/dist/nile-file-upload/nile-file-upload.template.cjs.js.map +0 -1
- package/dist/nile-file-upload/nile-file-upload.template.esm.js +0 -109
- package/dist/nile-file-upload/nile-file-upload.test.cjs.js +0 -2
- package/dist/nile-file-upload/nile-file-upload.test.cjs.js.map +0 -1
- package/dist/nile-file-upload/nile-file-upload.test.esm.js +0 -1
- package/dist/nile-file-upload/types/file-upload.enums.cjs.js +0 -2
- package/dist/nile-file-upload/types/file-upload.enums.cjs.js.map +0 -1
- package/dist/nile-file-upload/types/file-upload.enums.esm.js +0 -1
- package/dist/nile-file-upload/types/file-upload.type.cjs.js +0 -2
- package/dist/nile-file-upload/types/file-upload.type.cjs.js.map +0 -1
- package/dist/nile-file-upload/types/file-upload.type.esm.js +0 -1
- package/dist/nile-file-upload/types/index.cjs.js +0 -2
- package/dist/nile-file-upload/types/index.cjs.js.map +0 -1
- package/dist/nile-file-upload/types/index.esm.js +0 -1
- package/dist/nile-file-upload/utils/drag-drop.util.cjs.js +0 -2
- package/dist/nile-file-upload/utils/drag-drop.util.cjs.js.map +0 -1
- package/dist/nile-file-upload/utils/drag-drop.util.esm.js +0 -1
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js +0 -3
- package/dist/nile-file-upload/utils/file-validation.util.cjs.js.map +0 -1
- package/dist/nile-file-upload/utils/file-validation.util.esm.js +0 -1
@@ -0,0 +1,144 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright Aquera Inc 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the BSD-3-Clause license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
import { css } from 'lit';
|
8
|
+
/**
|
9
|
+
* Resizable Styles Utility
|
10
|
+
* Centralized styles for resizable table functionality
|
11
|
+
*/
|
12
|
+
export const resizableHostStyles = css `
|
13
|
+
/* Resizable-specific host styles */
|
14
|
+
:host([resizable]) {
|
15
|
+
position: relative;
|
16
|
+
overflow: hidden;
|
17
|
+
table-layout: fixed;
|
18
|
+
}
|
19
|
+
`;
|
20
|
+
export const resizableHeaderStyles = css `
|
21
|
+
/* Resizable-specific header styles */
|
22
|
+
:host([resizable]) {
|
23
|
+
position: relative;
|
24
|
+
border-right: 1px solid var(--nile-colors-neutral-400);
|
25
|
+
}
|
26
|
+
|
27
|
+
/* Resizable-specific wrapper styles */
|
28
|
+
:host([resizable]) .header__item__wrapper {
|
29
|
+
position: relative;
|
30
|
+
}
|
31
|
+
`;
|
32
|
+
export const resizerStyles = css `
|
33
|
+
/* Resizer styles - only apply when resizable */
|
34
|
+
.resizer {
|
35
|
+
position: absolute;
|
36
|
+
right: 0;
|
37
|
+
top: -1000px;
|
38
|
+
bottom: -1000px;
|
39
|
+
width: 8px;
|
40
|
+
cursor: col-resize;
|
41
|
+
user-select: none;
|
42
|
+
background-color: var(--nile-colors-neutral-100);
|
43
|
+
transition: background-color 0.2s;
|
44
|
+
z-index: 10;
|
45
|
+
opacity: 0;
|
46
|
+
transition: opacity 0.2s ease;
|
47
|
+
pointer-events: none;
|
48
|
+
}
|
49
|
+
|
50
|
+
:host([resizable]):hover .resizer {
|
51
|
+
opacity: 1;
|
52
|
+
pointer-events: auto;
|
53
|
+
}
|
54
|
+
|
55
|
+
.resizer::before {
|
56
|
+
content: '';
|
57
|
+
position: absolute;
|
58
|
+
right: 3px;
|
59
|
+
top: 0;
|
60
|
+
width: 2px;
|
61
|
+
height: 100%;
|
62
|
+
background-color: var(--nile-colors-neutral-500);
|
63
|
+
opacity: 0.8;
|
64
|
+
}
|
65
|
+
|
66
|
+
.resizer:hover {
|
67
|
+
background-color: var(--nile-colors-neutral-400);
|
68
|
+
}
|
69
|
+
|
70
|
+
.resizer:hover::before {
|
71
|
+
background-color: var(--nile-colors-neutral-700);
|
72
|
+
opacity: 1;
|
73
|
+
}
|
74
|
+
|
75
|
+
.resizer.resizing {
|
76
|
+
background-color: var(--nile-colors-neutral-400);
|
77
|
+
opacity: 1;
|
78
|
+
pointer-events: auto;
|
79
|
+
}
|
80
|
+
|
81
|
+
.resizer.resizing::before {
|
82
|
+
background-color: var(--nile-colors-neutral-700);
|
83
|
+
opacity: 1;
|
84
|
+
width: 3px;
|
85
|
+
}
|
86
|
+
`;
|
87
|
+
export const headerResizerStyles = css `
|
88
|
+
/* Header resizer styles */
|
89
|
+
.resizer {
|
90
|
+
position: absolute;
|
91
|
+
right: -2px;
|
92
|
+
top: -1000px;
|
93
|
+
bottom: -1000px;
|
94
|
+
width: 8px;
|
95
|
+
cursor: ew-resize;
|
96
|
+
user-select: none;
|
97
|
+
transition: background-color 0.2s;
|
98
|
+
z-index: 10;
|
99
|
+
opacity: 0;
|
100
|
+
transition: opacity 0.2s ease;
|
101
|
+
}
|
102
|
+
|
103
|
+
:host([resizable]):hover .resizer {
|
104
|
+
opacity: 1;
|
105
|
+
}
|
106
|
+
|
107
|
+
.resizer::before {
|
108
|
+
content: '';
|
109
|
+
position: absolute;
|
110
|
+
height: 100%;
|
111
|
+
opacity: 0.8;
|
112
|
+
}
|
113
|
+
|
114
|
+
.resizer.resizing {
|
115
|
+
border-right: 4px double var(--nile-colors-neutral-400);
|
116
|
+
background-color: transparent;
|
117
|
+
opacity: 1;
|
118
|
+
}
|
119
|
+
`;
|
120
|
+
export const resizableSlotStyles = css `
|
121
|
+
/* Slot styles for resizable mode */
|
122
|
+
:host([resizable]) ::slotted(*) {
|
123
|
+
overflow: hidden;
|
124
|
+
text-overflow: ellipsis;
|
125
|
+
white-space: nowrap;
|
126
|
+
display: block;
|
127
|
+
}
|
128
|
+
|
129
|
+
:host([resizable]) ::slotted(span),
|
130
|
+
:host([resizable]) ::slotted(div),
|
131
|
+
:host([resizable]) ::slotted(p) {
|
132
|
+
overflow: hidden;
|
133
|
+
text-overflow: ellipsis;
|
134
|
+
white-space: nowrap;
|
135
|
+
display: block;
|
136
|
+
}
|
137
|
+
`;
|
138
|
+
export const tableLayoutStyles = css `
|
139
|
+
/* Apply fixed table layout only when resizable columns are present */
|
140
|
+
.nile__table__body[resizable] {
|
141
|
+
table-layout: fixed;
|
142
|
+
}
|
143
|
+
`;
|
144
|
+
//# sourceMappingURL=resizable-styles.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"resizable-styles.js","sourceRoot":"","sources":["../../../src/internal/resizable-styles.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B;;;GAGG;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;CAOrC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;;;CAWvC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsD/B,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgCrC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;CAiBrC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,CAAA;;;;;CAKnC,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 /* Resizable-specific host styles */\n :host([resizable]) {\n position: relative;\n overflow: hidden;\n table-layout: fixed;\n }\n`;\n\nexport const resizableHeaderStyles = css`\n /* Resizable-specific header styles */\n :host([resizable]) {\n position: relative;\n border-right: 1px solid var(--nile-colors-neutral-400);\n }\n\n /* Resizable-specific wrapper styles */\n :host([resizable]) .header__item__wrapper {\n position: relative;\n }\n`;\n\nexport const resizerStyles = css`\n /* Resizer styles - only apply when resizable */\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 /* Header resizer styles */\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 /* Slot styles for resizable mode */\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 /* Apply fixed table layout only when resizable columns are present */\n .nile__table__body[resizable] {\n table-layout: fixed;\n }\n`; \n"]}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["NileBadge should display the default slot content"] =
|
5
|
+
`<span
|
6
|
+
class="badge badge--badge-color badge--normal"
|
7
|
+
part="base"
|
8
|
+
>
|
9
|
+
<slot
|
10
|
+
class="badge__content"
|
11
|
+
part="content"
|
12
|
+
>
|
13
|
+
</slot>
|
14
|
+
</span>
|
15
|
+
`;
|
16
|
+
/* end snapshot NileBadge should display the default slot content */
|
17
|
+
|
@@ -0,0 +1,310 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["NileCalendar renders correctly with default properties"] =
|
5
|
+
`<div class="base">
|
6
|
+
<div class="calendar-config hidden">
|
7
|
+
<div class="calendar-switcher">
|
8
|
+
<nile-tab-group
|
9
|
+
centered=""
|
10
|
+
value="absolute"
|
11
|
+
>
|
12
|
+
<nile-tab
|
13
|
+
active=""
|
14
|
+
aria-disabled="false"
|
15
|
+
aria-selected="true"
|
16
|
+
centered=""
|
17
|
+
id="nile-tab-1"
|
18
|
+
panel="absolute"
|
19
|
+
role="tab"
|
20
|
+
slot="nav"
|
21
|
+
>
|
22
|
+
Absolute
|
23
|
+
</nile-tab>
|
24
|
+
<nile-tab
|
25
|
+
aria-disabled="false"
|
26
|
+
aria-selected="false"
|
27
|
+
centered=""
|
28
|
+
id="nile-tab-2"
|
29
|
+
panel="relative"
|
30
|
+
role="tab"
|
31
|
+
slot="nav"
|
32
|
+
>
|
33
|
+
Relative
|
34
|
+
</nile-tab>
|
35
|
+
</nile-tab-group>
|
36
|
+
</div>
|
37
|
+
</div>
|
38
|
+
<div class="calendar-wrapper">
|
39
|
+
<div class="calendar-container">
|
40
|
+
<div class="calendar">
|
41
|
+
<div class="calendar-header">
|
42
|
+
<nile-icon
|
43
|
+
class="calendar-header__month-navigation"
|
44
|
+
color="black"
|
45
|
+
description=""
|
46
|
+
method="fill"
|
47
|
+
name="arrowleft"
|
48
|
+
set="local"
|
49
|
+
size="16"
|
50
|
+
style="--nile-svg-fill: black; --nile-svg-height: 16px; --nile-svg-width: 16px;"
|
51
|
+
>
|
52
|
+
</nile-icon>
|
53
|
+
<span>
|
54
|
+
August
|
55
|
+
2025
|
56
|
+
</span>
|
57
|
+
<nile-icon
|
58
|
+
class="calendar-header__month-navigation"
|
59
|
+
color="black"
|
60
|
+
description=""
|
61
|
+
method="fill"
|
62
|
+
name="arrowright"
|
63
|
+
set="local"
|
64
|
+
size="16"
|
65
|
+
style="--nile-svg-fill: black; --nile-svg-height: 16px; --nile-svg-width: 16px;"
|
66
|
+
>
|
67
|
+
</nile-icon>
|
68
|
+
</div>
|
69
|
+
<div class="days_container">
|
70
|
+
<div class="day_name">
|
71
|
+
Su
|
72
|
+
</div>
|
73
|
+
<div class="day_name">
|
74
|
+
Mo
|
75
|
+
</div>
|
76
|
+
<div class="day_name">
|
77
|
+
Tu
|
78
|
+
</div>
|
79
|
+
<div class="day_name">
|
80
|
+
We
|
81
|
+
</div>
|
82
|
+
<div class="day_name">
|
83
|
+
Th
|
84
|
+
</div>
|
85
|
+
<div class="day_name">
|
86
|
+
Fr
|
87
|
+
</div>
|
88
|
+
<div class="day_name">
|
89
|
+
Sa
|
90
|
+
</div>
|
91
|
+
<div class="day_date filler">
|
92
|
+
<span style="position:relative;">
|
93
|
+
27
|
94
|
+
</span>
|
95
|
+
</div>
|
96
|
+
<div class="day_date filler">
|
97
|
+
<span style="position:relative;">
|
98
|
+
28
|
99
|
+
</span>
|
100
|
+
</div>
|
101
|
+
<div class="day_date filler">
|
102
|
+
<span style="position:relative;">
|
103
|
+
29
|
104
|
+
</span>
|
105
|
+
</div>
|
106
|
+
<div class="day_date filler">
|
107
|
+
<span style="position:relative;">
|
108
|
+
30
|
109
|
+
</span>
|
110
|
+
</div>
|
111
|
+
<div class="day_date filler">
|
112
|
+
<span style="position:relative;">
|
113
|
+
31
|
114
|
+
</span>
|
115
|
+
</div>
|
116
|
+
<div class="day_date">
|
117
|
+
<span style="position:relative;">
|
118
|
+
1
|
119
|
+
</span>
|
120
|
+
</div>
|
121
|
+
<div class="day_date">
|
122
|
+
<span style="position:relative;">
|
123
|
+
2
|
124
|
+
</span>
|
125
|
+
</div>
|
126
|
+
<div class="day_date">
|
127
|
+
<span style="position:relative;">
|
128
|
+
3
|
129
|
+
</span>
|
130
|
+
</div>
|
131
|
+
<div class="day_date">
|
132
|
+
<span style="position:relative;">
|
133
|
+
4
|
134
|
+
<div class="current__date__dot">
|
135
|
+
</div>
|
136
|
+
</span>
|
137
|
+
</div>
|
138
|
+
<div class="day_date">
|
139
|
+
<span style="position:relative;">
|
140
|
+
5
|
141
|
+
</span>
|
142
|
+
</div>
|
143
|
+
<div class="day_date">
|
144
|
+
<span style="position:relative;">
|
145
|
+
6
|
146
|
+
</span>
|
147
|
+
</div>
|
148
|
+
<div class="day_date">
|
149
|
+
<span style="position:relative;">
|
150
|
+
7
|
151
|
+
</span>
|
152
|
+
</div>
|
153
|
+
<div class="day_date">
|
154
|
+
<span style="position:relative;">
|
155
|
+
8
|
156
|
+
</span>
|
157
|
+
</div>
|
158
|
+
<div class="day_date">
|
159
|
+
<span style="position:relative;">
|
160
|
+
9
|
161
|
+
</span>
|
162
|
+
</div>
|
163
|
+
<div class="day_date">
|
164
|
+
<span style="position:relative;">
|
165
|
+
10
|
166
|
+
</span>
|
167
|
+
</div>
|
168
|
+
<div class="day_date">
|
169
|
+
<span style="position:relative;">
|
170
|
+
11
|
171
|
+
</span>
|
172
|
+
</div>
|
173
|
+
<div class="day_date">
|
174
|
+
<span style="position:relative;">
|
175
|
+
12
|
176
|
+
</span>
|
177
|
+
</div>
|
178
|
+
<div class="day_date">
|
179
|
+
<span style="position:relative;">
|
180
|
+
13
|
181
|
+
</span>
|
182
|
+
</div>
|
183
|
+
<div class="day_date">
|
184
|
+
<span style="position:relative;">
|
185
|
+
14
|
186
|
+
</span>
|
187
|
+
</div>
|
188
|
+
<div class="day_date">
|
189
|
+
<span style="position:relative;">
|
190
|
+
15
|
191
|
+
</span>
|
192
|
+
</div>
|
193
|
+
<div class="day_date">
|
194
|
+
<span style="position:relative;">
|
195
|
+
16
|
196
|
+
</span>
|
197
|
+
</div>
|
198
|
+
<div class="day_date">
|
199
|
+
<span style="position:relative;">
|
200
|
+
17
|
201
|
+
</span>
|
202
|
+
</div>
|
203
|
+
<div class="day_date">
|
204
|
+
<span style="position:relative;">
|
205
|
+
18
|
206
|
+
</span>
|
207
|
+
</div>
|
208
|
+
<div class="day_date">
|
209
|
+
<span style="position:relative;">
|
210
|
+
19
|
211
|
+
</span>
|
212
|
+
</div>
|
213
|
+
<div class="day_date">
|
214
|
+
<span style="position:relative;">
|
215
|
+
20
|
216
|
+
</span>
|
217
|
+
</div>
|
218
|
+
<div class="day_date">
|
219
|
+
<span style="position:relative;">
|
220
|
+
21
|
221
|
+
</span>
|
222
|
+
</div>
|
223
|
+
<div class="day_date">
|
224
|
+
<span style="position:relative;">
|
225
|
+
22
|
226
|
+
</span>
|
227
|
+
</div>
|
228
|
+
<div class="day_date">
|
229
|
+
<span style="position:relative;">
|
230
|
+
23
|
231
|
+
</span>
|
232
|
+
</div>
|
233
|
+
<div class="day_date">
|
234
|
+
<span style="position:relative;">
|
235
|
+
24
|
236
|
+
</span>
|
237
|
+
</div>
|
238
|
+
<div class="day_date">
|
239
|
+
<span style="position:relative;">
|
240
|
+
25
|
241
|
+
</span>
|
242
|
+
</div>
|
243
|
+
<div class="day_date">
|
244
|
+
<span style="position:relative;">
|
245
|
+
26
|
246
|
+
</span>
|
247
|
+
</div>
|
248
|
+
<div class="day_date">
|
249
|
+
<span style="position:relative;">
|
250
|
+
27
|
251
|
+
</span>
|
252
|
+
</div>
|
253
|
+
<div class="day_date">
|
254
|
+
<span style="position:relative;">
|
255
|
+
28
|
256
|
+
</span>
|
257
|
+
</div>
|
258
|
+
<div class="day_date">
|
259
|
+
<span style="position:relative;">
|
260
|
+
29
|
261
|
+
</span>
|
262
|
+
</div>
|
263
|
+
<div class="day_date">
|
264
|
+
<span style="position:relative;">
|
265
|
+
30
|
266
|
+
</span>
|
267
|
+
</div>
|
268
|
+
<div class="day_date">
|
269
|
+
<span style="position:relative;">
|
270
|
+
31
|
271
|
+
</span>
|
272
|
+
</div>
|
273
|
+
<div class="day_date filler">
|
274
|
+
<span style="position:relative;">
|
275
|
+
1
|
276
|
+
</span>
|
277
|
+
</div>
|
278
|
+
<div class="day_date filler">
|
279
|
+
<span style="position:relative;">
|
280
|
+
2
|
281
|
+
</span>
|
282
|
+
</div>
|
283
|
+
<div class="day_date filler">
|
284
|
+
<span style="position:relative;">
|
285
|
+
3
|
286
|
+
</span>
|
287
|
+
</div>
|
288
|
+
<div class="day_date filler">
|
289
|
+
<span style="position:relative;">
|
290
|
+
4
|
291
|
+
</span>
|
292
|
+
</div>
|
293
|
+
<div class="day_date filler">
|
294
|
+
<span style="position:relative;">
|
295
|
+
5
|
296
|
+
</span>
|
297
|
+
</div>
|
298
|
+
<div class="day_date filler">
|
299
|
+
<span style="position:relative;">
|
300
|
+
6
|
301
|
+
</span>
|
302
|
+
</div>
|
303
|
+
</div>
|
304
|
+
</div>
|
305
|
+
</div>
|
306
|
+
</div>
|
307
|
+
</div>
|
308
|
+
`;
|
309
|
+
/* end snapshot NileCalendar renders correctly with default properties */
|
310
|
+
|
@@ -0,0 +1,34 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["Nile Card should render the card properly"] =
|
5
|
+
`<div
|
6
|
+
class="card card--has-footer"
|
7
|
+
part="base"
|
8
|
+
>
|
9
|
+
<div
|
10
|
+
class="body__wrapper"
|
11
|
+
part="body__wrapper"
|
12
|
+
>
|
13
|
+
<slot
|
14
|
+
class="card__header"
|
15
|
+
name="header"
|
16
|
+
part="header"
|
17
|
+
>
|
18
|
+
</slot>
|
19
|
+
<slot
|
20
|
+
class="card__body"
|
21
|
+
part="body"
|
22
|
+
>
|
23
|
+
</slot>
|
24
|
+
</div>
|
25
|
+
<slot
|
26
|
+
class="card__footer"
|
27
|
+
name="footer"
|
28
|
+
part="footer"
|
29
|
+
>
|
30
|
+
</slot>
|
31
|
+
</div>
|
32
|
+
`;
|
33
|
+
/* end snapshot Nile Card should render the card properly */
|
34
|
+
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["NileCheckbox renders correctly with default properties"] =
|
5
|
+
`<label
|
6
|
+
class="checkbox checkbox--medium"
|
7
|
+
part="base"
|
8
|
+
>
|
9
|
+
<input
|
10
|
+
aria-checked="false"
|
11
|
+
class="checkbox__input"
|
12
|
+
name=""
|
13
|
+
title=""
|
14
|
+
type="checkbox"
|
15
|
+
>
|
16
|
+
<span
|
17
|
+
class="checkbox__control"
|
18
|
+
part="control"
|
19
|
+
>
|
20
|
+
</span>
|
21
|
+
<div
|
22
|
+
class="checkbox__label"
|
23
|
+
part="label"
|
24
|
+
>
|
25
|
+
<slot>
|
26
|
+
</slot>
|
27
|
+
</div>
|
28
|
+
</label>
|
29
|
+
`;
|
30
|
+
/* end snapshot NileCheckbox renders correctly with default properties */
|
31
|
+
|
@@ -41,10 +41,11 @@ 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;
|
48
|
+
private isSpacePressed;
|
48
49
|
private lineNumbersComp;
|
49
50
|
private restrictSingleLineComp;
|
50
51
|
private readOnlyComp;
|
@@ -64,6 +65,8 @@ export declare class NileCodeEditor extends NileElement {
|
|
64
65
|
protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void;
|
65
66
|
render(): TemplateResult;
|
66
67
|
createNewView(emitEvent?: boolean): void;
|
68
|
+
checkForSpaceKey(e: KeyboardEvent): void;
|
69
|
+
handleEscapeKey(e: KeyboardEvent): void;
|
67
70
|
createState(): EditorState;
|
68
71
|
/**
|
69
72
|
* Custom autocomplete handler for code editor suggestions
|
@@ -58,8 +58,9 @@ 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
|
+
this.isSpacePressed = false;
|
63
64
|
// Compartments for initialiazing and switching extensions
|
64
65
|
this.lineNumbersComp = new Compartment();
|
65
66
|
this.restrictSingleLineComp = new Compartment();
|
@@ -227,15 +228,27 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
227
228
|
parent: this.codeEditor
|
228
229
|
});
|
229
230
|
this.view.dom.addEventListener('keydown', (e) => {
|
230
|
-
|
231
|
-
|
232
|
-
e.preventDefault();
|
233
|
-
closeCompletion(this.view);
|
234
|
-
}
|
231
|
+
this.checkForSpaceKey(e);
|
232
|
+
this.handleEscapeKey(e);
|
235
233
|
}, true);
|
236
234
|
if (emitEvent)
|
237
235
|
this.emit('nile-after-update', { createNewView: this.createNewView, codeMirrorInstance: this.view, }, false);
|
238
236
|
}
|
237
|
+
checkForSpaceKey(e) {
|
238
|
+
if (e.code === 'Space' && !e.ctrlKey) {
|
239
|
+
this.isSpacePressed = true;
|
240
|
+
}
|
241
|
+
else {
|
242
|
+
this.isSpacePressed = false;
|
243
|
+
}
|
244
|
+
}
|
245
|
+
handleEscapeKey(e) {
|
246
|
+
if (e.key === 'Escape' && this.view && completionStatus(this.view.state) !== null) {
|
247
|
+
e.stopPropagation();
|
248
|
+
e.preventDefault();
|
249
|
+
closeCompletion(this.view);
|
250
|
+
}
|
251
|
+
}
|
239
252
|
createState() {
|
240
253
|
const lineNumbersExtension = this.lineNumbersComp.of(this.getLineNumbersExension());
|
241
254
|
const readOnlyExtension = this.readOnlyComp.of(this.getReadOnlyExtension());
|
@@ -329,7 +342,7 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
329
342
|
const baseMatch = textBeforeCursor.match(/([a-zA-Z_$][\w$]*)$/);
|
330
343
|
if (!baseMatch) {
|
331
344
|
const trimmedText = textBeforeCursor.trim();
|
332
|
-
if (trimmedText === '') {
|
345
|
+
if (trimmedText === '' && !this.isSpacePressed) {
|
333
346
|
const optionsList = Object.keys(this.customAutoCompletions).filter(key => Object.keys(this.customAutoCompletions[key]).length);
|
334
347
|
const options = optionsList.map((key) => ({
|
335
348
|
label: key,
|
@@ -433,12 +446,12 @@ let NileCodeEditor = class NileCodeEditor extends NileElement {
|
|
433
446
|
}
|
434
447
|
getCustomThemeExtension() {
|
435
448
|
if (this.customThemeCSS) {
|
436
|
-
if (this.
|
449
|
+
if (this.defaultFont) {
|
437
450
|
return [EditorView.theme(this.customThemeCSS), EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
|
438
451
|
}
|
439
452
|
return [EditorView.theme(this.customThemeCSS), EditorView.theme(customisedThemeCss)];
|
440
453
|
}
|
441
|
-
if (this.
|
454
|
+
if (this.defaultFont) {
|
442
455
|
return [EditorView.theme(customisedThemeCss), EditorView.theme(fontFamily)];
|
443
456
|
}
|
444
457
|
return [EditorView.theme(customisedThemeCss)];
|
@@ -524,7 +537,7 @@ __decorate([
|
|
524
537
|
], NileCodeEditor.prototype, "tabCompletion", void 0);
|
525
538
|
__decorate([
|
526
539
|
property({ type: Boolean, reflect: true, attribute: true })
|
527
|
-
], NileCodeEditor.prototype, "
|
540
|
+
], NileCodeEditor.prototype, "defaultFont", void 0);
|
528
541
|
NileCodeEditor = __decorate([
|
529
542
|
customElement('nile-code-editor')
|
530
543
|
], NileCodeEditor);
|