@neural-ui/core 1.7.0 → 1.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bottom-sheet/package.json +4 -0
- package/confirm-popup/package.json +4 -0
- package/data-view/package.json +4 -0
- package/fesm2022/neural-ui-core-alert.mjs +48 -21
- package/fesm2022/neural-ui-core-alert.mjs.map +1 -1
- package/fesm2022/neural-ui-core-autocomplete.mjs +141 -68
- package/fesm2022/neural-ui-core-autocomplete.mjs.map +1 -1
- package/fesm2022/neural-ui-core-block-ui.mjs +2 -2
- package/fesm2022/neural-ui-core-block-ui.mjs.map +1 -1
- package/fesm2022/neural-ui-core-bottom-sheet.mjs +121 -0
- package/fesm2022/neural-ui-core-bottom-sheet.mjs.map +1 -0
- package/fesm2022/neural-ui-core-breadcrumb.mjs +2 -2
- package/fesm2022/neural-ui-core-breadcrumb.mjs.map +1 -1
- package/fesm2022/neural-ui-core-button.mjs +2 -2
- package/fesm2022/neural-ui-core-button.mjs.map +1 -1
- package/fesm2022/neural-ui-core-calendar.mjs +2 -2
- package/fesm2022/neural-ui-core-calendar.mjs.map +1 -1
- package/fesm2022/neural-ui-core-checkbox.mjs +69 -39
- package/fesm2022/neural-ui-core-checkbox.mjs.map +1 -1
- package/fesm2022/neural-ui-core-chip.mjs +2 -2
- package/fesm2022/neural-ui-core-chip.mjs.map +1 -1
- package/fesm2022/neural-ui-core-code-block.mjs +2 -2
- package/fesm2022/neural-ui-core-code-block.mjs.map +1 -1
- package/fesm2022/neural-ui-core-confirm-popup.mjs +105 -0
- package/fesm2022/neural-ui-core-confirm-popup.mjs.map +1 -0
- package/fesm2022/neural-ui-core-data-view.mjs +386 -0
- package/fesm2022/neural-ui-core-data-view.mjs.map +1 -0
- package/fesm2022/neural-ui-core-date-input.mjs +185 -10
- package/fesm2022/neural-ui-core-date-input.mjs.map +1 -1
- package/fesm2022/neural-ui-core-empty-state.mjs +19 -5
- package/fesm2022/neural-ui-core-empty-state.mjs.map +1 -1
- package/fesm2022/neural-ui-core-form-field.mjs +81 -0
- package/fesm2022/neural-ui-core-form-field.mjs.map +1 -0
- package/fesm2022/neural-ui-core-inline-editor.mjs +428 -0
- package/fesm2022/neural-ui-core-inline-editor.mjs.map +1 -0
- package/fesm2022/neural-ui-core-input-mask.mjs +110 -0
- package/fesm2022/neural-ui-core-input-mask.mjs.map +1 -0
- package/fesm2022/neural-ui-core-input.mjs +2 -2
- package/fesm2022/neural-ui-core-input.mjs.map +1 -1
- package/fesm2022/neural-ui-core-listbox.mjs +219 -0
- package/fesm2022/neural-ui-core-listbox.mjs.map +1 -0
- package/fesm2022/neural-ui-core-menu.mjs +229 -0
- package/fesm2022/neural-ui-core-menu.mjs.map +1 -0
- package/fesm2022/neural-ui-core-modal.mjs +34 -10
- package/fesm2022/neural-ui-core-modal.mjs.map +1 -1
- package/fesm2022/neural-ui-core-multiselect.mjs +159 -174
- package/fesm2022/neural-ui-core-multiselect.mjs.map +1 -1
- package/fesm2022/neural-ui-core-nav.mjs +2 -2
- package/fesm2022/neural-ui-core-nav.mjs.map +1 -1
- package/fesm2022/neural-ui-core-number-input.mjs +2 -2
- package/fesm2022/neural-ui-core-number-input.mjs.map +1 -1
- package/fesm2022/neural-ui-core-panel.mjs +92 -0
- package/fesm2022/neural-ui-core-panel.mjs.map +1 -0
- package/fesm2022/neural-ui-core-password.mjs +106 -0
- package/fesm2022/neural-ui-core-password.mjs.map +1 -0
- package/fesm2022/neural-ui-core-pick-list.mjs +133 -0
- package/fesm2022/neural-ui-core-pick-list.mjs.map +1 -0
- package/fesm2022/neural-ui-core-select.mjs +118 -162
- package/fesm2022/neural-ui-core-select.mjs.map +1 -1
- package/fesm2022/neural-ui-core-sidebar.mjs +14 -3
- package/fesm2022/neural-ui-core-sidebar.mjs.map +1 -1
- package/fesm2022/neural-ui-core-slider.mjs +2 -2
- package/fesm2022/neural-ui-core-slider.mjs.map +1 -1
- package/fesm2022/neural-ui-core-spinner.mjs +19 -9
- package/fesm2022/neural-ui-core-spinner.mjs.map +1 -1
- package/fesm2022/neural-ui-core-split-button.mjs +2 -2
- package/fesm2022/neural-ui-core-split-button.mjs.map +1 -1
- package/fesm2022/neural-ui-core-table.mjs +501 -62
- package/fesm2022/neural-ui-core-table.mjs.map +1 -1
- package/fesm2022/neural-ui-core-tags.mjs +134 -0
- package/fesm2022/neural-ui-core-tags.mjs.map +1 -0
- package/fesm2022/neural-ui-core-textarea.mjs +2 -2
- package/fesm2022/neural-ui-core-textarea.mjs.map +1 -1
- package/fesm2022/neural-ui-core-toggle-button-group.mjs +2 -2
- package/fesm2022/neural-ui-core-toggle-button-group.mjs.map +1 -1
- package/fesm2022/neural-ui-core-toolbar.mjs +16 -4
- package/fesm2022/neural-ui-core-toolbar.mjs.map +1 -1
- package/fesm2022/neural-ui-core-tree-select.mjs +259 -0
- package/fesm2022/neural-ui-core-tree-select.mjs.map +1 -0
- package/fesm2022/neural-ui-core-tree-table.mjs +267 -8
- package/fesm2022/neural-ui-core-tree-table.mjs.map +1 -1
- package/fesm2022/neural-ui-core-tree.mjs +15 -14
- package/fesm2022/neural-ui-core-tree.mjs.map +1 -1
- package/fesm2022/neural-ui-core-uploader.mjs +103 -12
- package/fesm2022/neural-ui-core-uploader.mjs.map +1 -1
- package/form-field/package.json +4 -0
- package/inline-editor/package.json +4 -0
- package/input-mask/package.json +4 -0
- package/listbox/package.json +4 -0
- package/menu/package.json +4 -0
- package/package.json +53 -1
- package/panel/package.json +4 -0
- package/password/package.json +4 -0
- package/pick-list/package.json +4 -0
- package/styles/_tokens.scss +30 -15
- package/tags/package.json +4 -0
- package/tree-select/package.json +4 -0
- package/types/neural-ui-core-alert.d.ts +2 -1
- package/types/neural-ui-core-autocomplete.d.ts +20 -2
- package/types/neural-ui-core-bottom-sheet.d.ts +20 -0
- package/types/neural-ui-core-checkbox.d.ts +6 -1
- package/types/neural-ui-core-confirm-popup.d.ts +38 -0
- package/types/neural-ui-core-data-view.d.ts +95 -0
- package/types/neural-ui-core-date-input.d.ts +35 -5
- package/types/neural-ui-core-empty-state.d.ts +11 -1
- package/types/neural-ui-core-form-field.d.ts +33 -0
- package/types/neural-ui-core-inline-editor.d.ts +66 -0
- package/types/neural-ui-core-input-mask.d.ts +26 -0
- package/types/neural-ui-core-listbox.d.ts +54 -0
- package/types/neural-ui-core-menu.d.ts +49 -0
- package/types/neural-ui-core-modal.d.ts +10 -2
- package/types/neural-ui-core-multiselect.d.ts +8 -1
- package/types/neural-ui-core-panel.d.ts +25 -0
- package/types/neural-ui-core-password.d.ts +29 -0
- package/types/neural-ui-core-pick-list.d.ts +40 -0
- package/types/neural-ui-core-select.d.ts +5 -1
- package/types/neural-ui-core-sidebar.d.ts +5 -1
- package/types/neural-ui-core-spinner.d.ts +4 -2
- package/types/neural-ui-core-table.d.ts +89 -5
- package/types/neural-ui-core-tags.d.ts +32 -0
- package/types/neural-ui-core-toolbar.d.ts +8 -2
- package/types/neural-ui-core-tree-select.d.ts +57 -0
- package/types/neural-ui-core-tree-table.d.ts +111 -4
- package/types/neural-ui-core-tree.d.ts +1 -1
- package/types/neural-ui-core-uploader.d.ts +26 -3
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neural-ui/core",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.2",
|
|
4
4
|
"description": "Modern Angular UI component library built with signals, standalone components, and OnPush change detection.",
|
|
5
5
|
"author": "PedroMorenoTrujillo",
|
|
6
6
|
"keywords": [
|
|
@@ -82,6 +82,10 @@
|
|
|
82
82
|
"types": "./types/neural-ui-core-block-ui.d.ts",
|
|
83
83
|
"default": "./fesm2022/neural-ui-core-block-ui.mjs"
|
|
84
84
|
},
|
|
85
|
+
"./bottom-sheet": {
|
|
86
|
+
"types": "./types/neural-ui-core-bottom-sheet.d.ts",
|
|
87
|
+
"default": "./fesm2022/neural-ui-core-bottom-sheet.mjs"
|
|
88
|
+
},
|
|
85
89
|
"./breadcrumb": {
|
|
86
90
|
"types": "./types/neural-ui-core-breadcrumb.d.ts",
|
|
87
91
|
"default": "./fesm2022/neural-ui-core-breadcrumb.mjs"
|
|
@@ -126,6 +130,10 @@
|
|
|
126
130
|
"types": "./types/neural-ui-core-confirm-dialog.d.ts",
|
|
127
131
|
"default": "./fesm2022/neural-ui-core-confirm-dialog.mjs"
|
|
128
132
|
},
|
|
133
|
+
"./confirm-popup": {
|
|
134
|
+
"types": "./types/neural-ui-core-confirm-popup.d.ts",
|
|
135
|
+
"default": "./fesm2022/neural-ui-core-confirm-popup.mjs"
|
|
136
|
+
},
|
|
129
137
|
"./context-menu": {
|
|
130
138
|
"types": "./types/neural-ui-core-context-menu.d.ts",
|
|
131
139
|
"default": "./fesm2022/neural-ui-core-context-menu.mjs"
|
|
@@ -134,6 +142,10 @@
|
|
|
134
142
|
"types": "./types/neural-ui-core-dashboard-grid.d.ts",
|
|
135
143
|
"default": "./fesm2022/neural-ui-core-dashboard-grid.mjs"
|
|
136
144
|
},
|
|
145
|
+
"./data-view": {
|
|
146
|
+
"types": "./types/neural-ui-core-data-view.d.ts",
|
|
147
|
+
"default": "./fesm2022/neural-ui-core-data-view.mjs"
|
|
148
|
+
},
|
|
137
149
|
"./date-input": {
|
|
138
150
|
"types": "./types/neural-ui-core-date-input.d.ts",
|
|
139
151
|
"default": "./fesm2022/neural-ui-core-date-input.mjs"
|
|
@@ -150,6 +162,10 @@
|
|
|
150
162
|
"types": "./types/neural-ui-core-filter-bar.d.ts",
|
|
151
163
|
"default": "./fesm2022/neural-ui-core-filter-bar.mjs"
|
|
152
164
|
},
|
|
165
|
+
"./form-field": {
|
|
166
|
+
"types": "./types/neural-ui-core-form-field.d.ts",
|
|
167
|
+
"default": "./fesm2022/neural-ui-core-form-field.mjs"
|
|
168
|
+
},
|
|
153
169
|
"./icon": {
|
|
154
170
|
"types": "./types/neural-ui-core-icon.d.ts",
|
|
155
171
|
"default": "./fesm2022/neural-ui-core-icon.mjs"
|
|
@@ -162,10 +178,18 @@
|
|
|
162
178
|
"types": "./types/neural-ui-core-image-viewer.d.ts",
|
|
163
179
|
"default": "./fesm2022/neural-ui-core-image-viewer.mjs"
|
|
164
180
|
},
|
|
181
|
+
"./inline-editor": {
|
|
182
|
+
"types": "./types/neural-ui-core-inline-editor.d.ts",
|
|
183
|
+
"default": "./fesm2022/neural-ui-core-inline-editor.mjs"
|
|
184
|
+
},
|
|
165
185
|
"./input": {
|
|
166
186
|
"types": "./types/neural-ui-core-input.d.ts",
|
|
167
187
|
"default": "./fesm2022/neural-ui-core-input.mjs"
|
|
168
188
|
},
|
|
189
|
+
"./input-mask": {
|
|
190
|
+
"types": "./types/neural-ui-core-input-mask.d.ts",
|
|
191
|
+
"default": "./fesm2022/neural-ui-core-input-mask.mjs"
|
|
192
|
+
},
|
|
169
193
|
"./input-otp": {
|
|
170
194
|
"types": "./types/neural-ui-core-input-otp.d.ts",
|
|
171
195
|
"default": "./fesm2022/neural-ui-core-input-otp.mjs"
|
|
@@ -178,6 +202,14 @@
|
|
|
178
202
|
"types": "./types/neural-ui-core-knob.d.ts",
|
|
179
203
|
"default": "./fesm2022/neural-ui-core-knob.mjs"
|
|
180
204
|
},
|
|
205
|
+
"./listbox": {
|
|
206
|
+
"types": "./types/neural-ui-core-listbox.d.ts",
|
|
207
|
+
"default": "./fesm2022/neural-ui-core-listbox.mjs"
|
|
208
|
+
},
|
|
209
|
+
"./menu": {
|
|
210
|
+
"types": "./types/neural-ui-core-menu.d.ts",
|
|
211
|
+
"default": "./fesm2022/neural-ui-core-menu.mjs"
|
|
212
|
+
},
|
|
181
213
|
"./meter-group": {
|
|
182
214
|
"types": "./types/neural-ui-core-meter-group.d.ts",
|
|
183
215
|
"default": "./fesm2022/neural-ui-core-meter-group.mjs"
|
|
@@ -206,6 +238,18 @@
|
|
|
206
238
|
"types": "./types/neural-ui-core-pagination.d.ts",
|
|
207
239
|
"default": "./fesm2022/neural-ui-core-pagination.mjs"
|
|
208
240
|
},
|
|
241
|
+
"./panel": {
|
|
242
|
+
"types": "./types/neural-ui-core-panel.d.ts",
|
|
243
|
+
"default": "./fesm2022/neural-ui-core-panel.mjs"
|
|
244
|
+
},
|
|
245
|
+
"./password": {
|
|
246
|
+
"types": "./types/neural-ui-core-password.d.ts",
|
|
247
|
+
"default": "./fesm2022/neural-ui-core-password.mjs"
|
|
248
|
+
},
|
|
249
|
+
"./pick-list": {
|
|
250
|
+
"types": "./types/neural-ui-core-pick-list.d.ts",
|
|
251
|
+
"default": "./fesm2022/neural-ui-core-pick-list.mjs"
|
|
252
|
+
},
|
|
209
253
|
"./popover": {
|
|
210
254
|
"types": "./types/neural-ui-core-popover.d.ts",
|
|
211
255
|
"default": "./fesm2022/neural-ui-core-popover.mjs"
|
|
@@ -278,6 +322,10 @@
|
|
|
278
322
|
"types": "./types/neural-ui-core-tabs.d.ts",
|
|
279
323
|
"default": "./fesm2022/neural-ui-core-tabs.mjs"
|
|
280
324
|
},
|
|
325
|
+
"./tags": {
|
|
326
|
+
"types": "./types/neural-ui-core-tags.d.ts",
|
|
327
|
+
"default": "./fesm2022/neural-ui-core-tags.mjs"
|
|
328
|
+
},
|
|
281
329
|
"./textarea": {
|
|
282
330
|
"types": "./types/neural-ui-core-textarea.d.ts",
|
|
283
331
|
"default": "./fesm2022/neural-ui-core-textarea.mjs"
|
|
@@ -310,6 +358,10 @@
|
|
|
310
358
|
"types": "./types/neural-ui-core-tree.d.ts",
|
|
311
359
|
"default": "./fesm2022/neural-ui-core-tree.mjs"
|
|
312
360
|
},
|
|
361
|
+
"./tree-select": {
|
|
362
|
+
"types": "./types/neural-ui-core-tree-select.d.ts",
|
|
363
|
+
"default": "./fesm2022/neural-ui-core-tree-select.mjs"
|
|
364
|
+
},
|
|
313
365
|
"./tree-table": {
|
|
314
366
|
"types": "./types/neural-ui-core-tree-table.d.ts",
|
|
315
367
|
"default": "./fesm2022/neural-ui-core-tree-table.mjs"
|
package/styles/_tokens.scss
CHANGED
|
@@ -28,8 +28,14 @@
|
|
|
28
28
|
// ------------------------------------------------
|
|
29
29
|
--neu-bg: #f8fafc; // Slate-50 — fondo base
|
|
30
30
|
--neu-surface: #ffffff; // Blanco puro — tarjetas
|
|
31
|
+
--neu-surface-1: var(--neu-surface); // Alias compatible para superficies base
|
|
31
32
|
--neu-surface-2: #f1f5f9; // Slate-100 — fondos secundarios
|
|
32
33
|
--neu-surface-3: #e2e8f0; // Slate-200 — hover, separadores
|
|
34
|
+
--neu-surface-raised: var(--neu-surface);
|
|
35
|
+
--neu-surface-hover: var(--neu-surface-2);
|
|
36
|
+
--neu-surface-muted: var(--neu-surface-2);
|
|
37
|
+
--neu-surface-inverse: #020617;
|
|
38
|
+
--neu-surface-rgb: 255, 255, 255;
|
|
33
39
|
|
|
34
40
|
// ------------------------------------------------
|
|
35
41
|
// Bordes
|
|
@@ -192,9 +198,12 @@
|
|
|
192
198
|
--neu-alert-warning-text: var(--neu-warning-text);
|
|
193
199
|
--neu-alert-warning-border: rgba(245, 158, 11, 0.2);
|
|
194
200
|
|
|
195
|
-
--neu-alert-
|
|
196
|
-
--neu-alert-
|
|
197
|
-
--neu-alert-
|
|
201
|
+
--neu-alert-error-bg: var(--neu-error-bg);
|
|
202
|
+
--neu-alert-error-text: var(--neu-error-text);
|
|
203
|
+
--neu-alert-error-border: rgba(239, 68, 68, 0.2);
|
|
204
|
+
--neu-alert-danger-bg: var(--neu-alert-error-bg);
|
|
205
|
+
--neu-alert-danger-text: var(--neu-alert-error-text);
|
|
206
|
+
--neu-alert-danger-border: var(--neu-alert-error-border);
|
|
198
207
|
|
|
199
208
|
// ------------------------------------------------
|
|
200
209
|
// Popover (v1.3.0)
|
|
@@ -307,15 +316,16 @@
|
|
|
307
316
|
// ------------------------------------------------
|
|
308
317
|
--neu-code-block-bg: #1a1b26;
|
|
309
318
|
--neu-code-block-bar-bg: #16161e;
|
|
310
|
-
--neu-code-block-border: rgba(255, 255, 255, 0.
|
|
311
|
-
--neu-code-block-text: #
|
|
312
|
-
--neu-code-block-accent: #
|
|
319
|
+
--neu-code-block-border: rgba(255, 255, 255, 0.14);
|
|
320
|
+
--neu-code-block-text: #d9e2ff;
|
|
321
|
+
--neu-code-block-accent: #9ab8ff;
|
|
313
322
|
--neu-code-block-muted: #565f89;
|
|
314
|
-
--neu-code-block-copy-
|
|
315
|
-
--neu-code-block-copy-
|
|
316
|
-
--neu-code-block-copy-
|
|
317
|
-
--neu-code-block-copy-
|
|
318
|
-
--neu-code-block-copy-hover-
|
|
323
|
+
--neu-code-block-copy-bg: rgba(255, 255, 255, 0.12);
|
|
324
|
+
--neu-code-block-copy-text: #d9e2ff;
|
|
325
|
+
--neu-code-block-copy-hover-text: #ffffff;
|
|
326
|
+
--neu-code-block-copy-border: rgba(255, 255, 255, 0.22);
|
|
327
|
+
--neu-code-block-copy-hover-bg: rgba(255, 255, 255, 0.18);
|
|
328
|
+
--neu-code-block-copy-hover-border: rgba(255, 255, 255, 0.34);
|
|
319
329
|
}
|
|
320
330
|
|
|
321
331
|
// ============================================================
|
|
@@ -337,6 +347,8 @@
|
|
|
337
347
|
--neu-surface: #161b22; // Tarjetas, paneles
|
|
338
348
|
--neu-surface-2: #21262d; // Hover, fondos secundarios
|
|
339
349
|
--neu-surface-3: #30363d; // Separadores, track de switch
|
|
350
|
+
--neu-surface-inverse: #e6edf3;
|
|
351
|
+
--neu-surface-rgb: 22, 27, 34;
|
|
340
352
|
|
|
341
353
|
// ---- Bordes / Borders ----
|
|
342
354
|
--neu-border: rgba(255, 255, 255, 0.08);
|
|
@@ -345,7 +357,7 @@
|
|
|
345
357
|
// ---- Texto / Text ----
|
|
346
358
|
--neu-text: #e6edf3; // Casi blanco — texto principal
|
|
347
359
|
--neu-text-muted: #8b949e; // Slate-400 equivalent — subtítulos
|
|
348
|
-
--neu-text-disabled: #
|
|
360
|
+
--neu-text-disabled: #8b949e; // Elementos deshabilitados; conserva contraste sobre surface-2
|
|
349
361
|
--neu-knob-display-color: #f8fafc;
|
|
350
362
|
--neu-knob-label-color: #8b949e;
|
|
351
363
|
|
|
@@ -391,9 +403,12 @@
|
|
|
391
403
|
--neu-alert-warning-text: #fcd34d;
|
|
392
404
|
--neu-alert-warning-border: rgba(245, 158, 11, 0.3);
|
|
393
405
|
|
|
394
|
-
--neu-alert-
|
|
395
|
-
--neu-alert-
|
|
396
|
-
--neu-alert-
|
|
406
|
+
--neu-alert-error-bg: rgba(239, 68, 68, 0.15);
|
|
407
|
+
--neu-alert-error-text: #fca5a5;
|
|
408
|
+
--neu-alert-error-border: rgba(239, 68, 68, 0.3);
|
|
409
|
+
--neu-alert-danger-bg: var(--neu-alert-error-bg);
|
|
410
|
+
--neu-alert-danger-text: var(--neu-alert-error-text);
|
|
411
|
+
--neu-alert-danger-border: var(--neu-alert-error-border);
|
|
397
412
|
|
|
398
413
|
// ---- Block UI dark override (v1.3.0) ----
|
|
399
414
|
--neu-block-ui-bg: rgba(13, 17, 23, 0.7);
|
|
@@ -28,8 +28,9 @@ declare class NeuAlertComponent {
|
|
|
28
28
|
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
29
29
|
readonly _id: string;
|
|
30
30
|
readonly _dismissed: _angular_core.WritableSignal<boolean>;
|
|
31
|
-
readonly
|
|
31
|
+
readonly _defaultIconName: _angular_core.Signal<string>;
|
|
32
32
|
readonly liveRegion: _angular_core.Signal<"assertive" | "polite">;
|
|
33
|
+
readonly alertRole: _angular_core.Signal<"alert" | "status">;
|
|
33
34
|
readonly hostClasses: _angular_core.Signal<{
|
|
34
35
|
[x: string]: boolean;
|
|
35
36
|
'neu-alert': boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as _angular_cdk_overlay from '@angular/cdk/overlay';
|
|
2
2
|
import { ConnectedPosition } from '@angular/cdk/overlay';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
|
+
import { TemplateRef } from '@angular/core';
|
|
4
5
|
import { ControlValueAccessor } from '@angular/forms';
|
|
5
6
|
|
|
6
7
|
interface NeuAutocompleteOption {
|
|
@@ -11,6 +12,16 @@ interface NeuAutocompleteOption {
|
|
|
11
12
|
/** Desactiva la opción / Disables the option */
|
|
12
13
|
disabled?: boolean;
|
|
13
14
|
}
|
|
15
|
+
declare class NeuAutocompleteItemDirective {
|
|
16
|
+
readonly templateRef: TemplateRef<{
|
|
17
|
+
$implicit: NeuAutocompleteOption;
|
|
18
|
+
}>;
|
|
19
|
+
constructor(templateRef: TemplateRef<{
|
|
20
|
+
$implicit: NeuAutocompleteOption;
|
|
21
|
+
}>);
|
|
22
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuAutocompleteItemDirective, never>;
|
|
23
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NeuAutocompleteItemDirective, "ng-template[neuAutocompleteItem]", never, {}, {}, never, never, true, never>;
|
|
24
|
+
}
|
|
14
25
|
/**
|
|
15
26
|
* NeuralUI Autocomplete
|
|
16
27
|
*
|
|
@@ -33,6 +44,11 @@ declare class NeuAutocompleteComponent implements ControlValueAccessor {
|
|
|
33
44
|
readonly errorMessage: _angular_core.InputSignal<string>;
|
|
34
45
|
readonly emptyLabel: _angular_core.InputSignal<string>;
|
|
35
46
|
readonly minLength: _angular_core.InputSignal<number>;
|
|
47
|
+
readonly loading: _angular_core.InputSignal<boolean>;
|
|
48
|
+
readonly loadingLabel: _angular_core.InputSignal<string>;
|
|
49
|
+
readonly dropdown: _angular_core.InputSignal<boolean>;
|
|
50
|
+
readonly dropdownAriaLabel: _angular_core.InputSignal<string>;
|
|
51
|
+
readonly forceSelection: _angular_core.InputSignal<boolean>;
|
|
36
52
|
/** Muestra el label como flotante (true) o estático encima del campo (false) / Shows the label as floating (true) or static above the field (false) */
|
|
37
53
|
readonly floatingLabel: _angular_core.InputSignal<boolean>;
|
|
38
54
|
/** Tamaño del campo: 'sm' = 36px | 'md' = 48px | 'lg' = 56px / Field size */
|
|
@@ -45,6 +61,7 @@ declare class NeuAutocompleteComponent implements ControlValueAccessor {
|
|
|
45
61
|
readonly optionSelected: _angular_core.OutputEmitterRef<NeuAutocompleteOption>;
|
|
46
62
|
/** Emitido al cambiar el texto del input / Emitted on query change */
|
|
47
63
|
readonly queryChange: _angular_core.OutputEmitterRef<string>;
|
|
64
|
+
readonly itemTpl: _angular_core.Signal<NeuAutocompleteItemDirective | undefined>;
|
|
48
65
|
readonly _id: string;
|
|
49
66
|
readonly _listId: string;
|
|
50
67
|
readonly _query: _angular_core.WritableSignal<string>;
|
|
@@ -76,6 +93,7 @@ declare class NeuAutocompleteComponent implements ControlValueAccessor {
|
|
|
76
93
|
onQueryChange(q: string): void;
|
|
77
94
|
_onFocus(): void;
|
|
78
95
|
_onBlur(): void;
|
|
96
|
+
openAll(): void;
|
|
79
97
|
onKeyDown(e: KeyboardEvent): void;
|
|
80
98
|
private _moveActiveIndex;
|
|
81
99
|
selectOption(opt: NeuAutocompleteOption): void;
|
|
@@ -88,8 +106,8 @@ declare class NeuAutocompleteComponent implements ControlValueAccessor {
|
|
|
88
106
|
registerOnTouched(fn: () => void): void;
|
|
89
107
|
setDisabledState(d: boolean): void;
|
|
90
108
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuAutocompleteComponent, never>;
|
|
91
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuAutocompleteComponent, "neu-autocomplete", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "emptyLabel": { "alias": "emptyLabel"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "floatingLabel": { "alias": "floatingLabel"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "virtualScrollVisibleItems": { "alias": "virtualScrollVisibleItems"; "required": false; "isSignal": true; }; }, { "optionSelected": "optionSelected"; "queryChange": "queryChange"; },
|
|
109
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuAutocompleteComponent, "neu-autocomplete", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "emptyLabel": { "alias": "emptyLabel"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "loadingLabel": { "alias": "loadingLabel"; "required": false; "isSignal": true; }; "dropdown": { "alias": "dropdown"; "required": false; "isSignal": true; }; "dropdownAriaLabel": { "alias": "dropdownAriaLabel"; "required": false; "isSignal": true; }; "forceSelection": { "alias": "forceSelection"; "required": false; "isSignal": true; }; "floatingLabel": { "alias": "floatingLabel"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "virtualScrollVisibleItems": { "alias": "virtualScrollVisibleItems"; "required": false; "isSignal": true; }; }, { "optionSelected": "optionSelected"; "queryChange": "queryChange"; }, ["itemTpl"], never, true, never>;
|
|
92
110
|
}
|
|
93
111
|
|
|
94
|
-
export { NeuAutocompleteComponent };
|
|
112
|
+
export { NeuAutocompleteComponent, NeuAutocompleteItemDirective };
|
|
95
113
|
export type { NeuAutocompleteOption };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
|
|
3
|
+
type NeuBottomSheetSize = 'sm' | 'md' | 'lg' | 'full';
|
|
4
|
+
declare class NeuBottomSheetComponent {
|
|
5
|
+
readonly open: _angular_core.InputSignal<boolean>;
|
|
6
|
+
readonly title: _angular_core.InputSignal<string>;
|
|
7
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
8
|
+
readonly closeLabel: _angular_core.InputSignal<string>;
|
|
9
|
+
readonly backdrop: _angular_core.InputSignal<boolean>;
|
|
10
|
+
readonly disableClose: _angular_core.InputSignal<boolean>;
|
|
11
|
+
readonly size: _angular_core.InputSignal<NeuBottomSheetSize>;
|
|
12
|
+
readonly closed: _angular_core.OutputEmitterRef<void>;
|
|
13
|
+
requestClose(): void;
|
|
14
|
+
onEscape(): void;
|
|
15
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuBottomSheetComponent, never>;
|
|
16
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuBottomSheetComponent, "neu-bottom-sheet", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; "backdrop": { "alias": "backdrop"; "required": false; "isSignal": true; }; "disableClose": { "alias": "disableClose"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, ["*"], true, never>;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { NeuBottomSheetComponent };
|
|
20
|
+
export type { NeuBottomSheetSize };
|
|
@@ -13,11 +13,16 @@ declare class NeuCheckboxComponent implements ControlValueAccessor {
|
|
|
13
13
|
readonly label: _angular_core.InputSignal<string>;
|
|
14
14
|
readonly name: _angular_core.InputSignal<string>;
|
|
15
15
|
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
16
|
+
readonly checked: _angular_core.InputSignal<boolean | undefined>;
|
|
17
|
+
readonly indeterminate: _angular_core.InputSignal<boolean>;
|
|
18
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
19
|
+
readonly checkedChange: _angular_core.OutputEmitterRef<boolean>;
|
|
16
20
|
readonly _id: string;
|
|
17
21
|
protected readonly _checked: _angular_core.WritableSignal<boolean>;
|
|
18
22
|
/** Estado disabled interno — combina el input `disabled` con el CVA setDisabledState / Internal disabled state — combines the `disabled` input with CVA setDisabledState */
|
|
19
23
|
private readonly _cvaDisabled;
|
|
20
24
|
protected readonly _isDisabled: _angular_core.Signal<boolean>;
|
|
25
|
+
protected readonly _resolvedChecked: _angular_core.Signal<boolean>;
|
|
21
26
|
private _onChange;
|
|
22
27
|
private _onTouched;
|
|
23
28
|
onChange(event: Event): void;
|
|
@@ -27,7 +32,7 @@ declare class NeuCheckboxComponent implements ControlValueAccessor {
|
|
|
27
32
|
registerOnTouched(fn: () => void): void;
|
|
28
33
|
setDisabledState(isDisabled: boolean): void;
|
|
29
34
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuCheckboxComponent, never>;
|
|
30
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuCheckboxComponent, "neu-checkbox", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
35
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuCheckboxComponent, "neu-checkbox", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "checkedChange": "checkedChange"; }, never, never, true, never>;
|
|
31
36
|
}
|
|
32
37
|
|
|
33
38
|
export { NeuCheckboxComponent };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
|
|
3
|
+
interface NeuConfirmPopupOptions {
|
|
4
|
+
title?: string;
|
|
5
|
+
message: string;
|
|
6
|
+
acceptLabel?: string;
|
|
7
|
+
rejectLabel?: string;
|
|
8
|
+
}
|
|
9
|
+
declare class NeuConfirmPopupService {
|
|
10
|
+
readonly state: _angular_core.WritableSignal<NeuConfirmPopupOptions | null>;
|
|
11
|
+
private resolver;
|
|
12
|
+
confirm(options: NeuConfirmPopupOptions): Promise<boolean>;
|
|
13
|
+
close(value: boolean): void;
|
|
14
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuConfirmPopupService, never>;
|
|
15
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<NeuConfirmPopupService>;
|
|
16
|
+
}
|
|
17
|
+
declare class NeuConfirmPopupComponent {
|
|
18
|
+
readonly service: NeuConfirmPopupService;
|
|
19
|
+
readonly open: _angular_core.InputSignal<boolean>;
|
|
20
|
+
readonly title: _angular_core.InputSignal<string>;
|
|
21
|
+
readonly message: _angular_core.InputSignal<string>;
|
|
22
|
+
readonly acceptLabel: _angular_core.InputSignal<string>;
|
|
23
|
+
readonly rejectLabel: _angular_core.InputSignal<string>;
|
|
24
|
+
readonly accepted: _angular_core.OutputEmitterRef<void>;
|
|
25
|
+
readonly rejected: _angular_core.OutputEmitterRef<void>;
|
|
26
|
+
constructor(service: NeuConfirmPopupService);
|
|
27
|
+
currentTitle(): string;
|
|
28
|
+
currentMessage(): string;
|
|
29
|
+
currentAcceptLabel(): string;
|
|
30
|
+
currentRejectLabel(): string;
|
|
31
|
+
accept(): void;
|
|
32
|
+
reject(): void;
|
|
33
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuConfirmPopupComponent, never>;
|
|
34
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuConfirmPopupComponent, "neu-confirm-popup", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "acceptLabel": { "alias": "acceptLabel"; "required": false; "isSignal": true; }; "rejectLabel": { "alias": "rejectLabel"; "required": false; "isSignal": true; }; }, { "accepted": "accepted"; "rejected": "rejected"; }, never, never, true, never>;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export { NeuConfirmPopupComponent, NeuConfirmPopupService };
|
|
38
|
+
export type { NeuConfirmPopupOptions };
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TemplateRef } from '@angular/core';
|
|
3
|
+
import { FormControl } from '@angular/forms';
|
|
4
|
+
import { NeuSelectOption } from '@neural-ui/core/select';
|
|
5
|
+
|
|
6
|
+
type NeuDataViewMode = 'list' | 'grid' | 'table';
|
|
7
|
+
type NeuDataViewSortDirection = 'asc' | 'desc';
|
|
8
|
+
interface NeuDataViewSortOption {
|
|
9
|
+
label: string;
|
|
10
|
+
value: string;
|
|
11
|
+
direction?: NeuDataViewSortDirection;
|
|
12
|
+
}
|
|
13
|
+
interface NeuDataViewPageEvent {
|
|
14
|
+
page: number;
|
|
15
|
+
pageSize: number;
|
|
16
|
+
}
|
|
17
|
+
declare class NeuDataViewItemDirective {
|
|
18
|
+
readonly templateRef: TemplateRef<{
|
|
19
|
+
$implicit: unknown;
|
|
20
|
+
index: number;
|
|
21
|
+
}>;
|
|
22
|
+
constructor(templateRef: TemplateRef<{
|
|
23
|
+
$implicit: unknown;
|
|
24
|
+
index: number;
|
|
25
|
+
}>);
|
|
26
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuDataViewItemDirective, never>;
|
|
27
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NeuDataViewItemDirective, "ng-template[neuDataViewItem]", never, {}, {}, never, never, true, never>;
|
|
28
|
+
}
|
|
29
|
+
declare class NeuDataViewHeaderDirective {
|
|
30
|
+
readonly templateRef: TemplateRef<void>;
|
|
31
|
+
constructor(templateRef: TemplateRef<void>);
|
|
32
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuDataViewHeaderDirective, never>;
|
|
33
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NeuDataViewHeaderDirective, "ng-template[neuDataViewHeader]", never, {}, {}, never, never, true, never>;
|
|
34
|
+
}
|
|
35
|
+
declare class NeuDataViewFooterDirective {
|
|
36
|
+
readonly templateRef: TemplateRef<void>;
|
|
37
|
+
constructor(templateRef: TemplateRef<void>);
|
|
38
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuDataViewFooterDirective, never>;
|
|
39
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NeuDataViewFooterDirective, "ng-template[neuDataViewFooter]", never, {}, {}, never, never, true, never>;
|
|
40
|
+
}
|
|
41
|
+
declare class NeuDataViewComponent {
|
|
42
|
+
private readonly _destroyRef;
|
|
43
|
+
readonly items: _angular_core.InputSignal<unknown[]>;
|
|
44
|
+
readonly mode: _angular_core.InputSignal<NeuDataViewMode>;
|
|
45
|
+
readonly modes: _angular_core.InputSignal<NeuDataViewMode[]>;
|
|
46
|
+
readonly viewSwitcher: _angular_core.InputSignal<boolean>;
|
|
47
|
+
readonly viewAriaLabel: _angular_core.InputSignal<string>;
|
|
48
|
+
readonly searchable: _angular_core.InputSignal<boolean>;
|
|
49
|
+
readonly searchFields: _angular_core.InputSignal<string[]>;
|
|
50
|
+
readonly searchPlaceholder: _angular_core.InputSignal<string>;
|
|
51
|
+
readonly searchAriaLabel: _angular_core.InputSignal<string>;
|
|
52
|
+
readonly sortOptions: _angular_core.InputSignal<NeuDataViewSortOption[]>;
|
|
53
|
+
readonly sortAriaLabel: _angular_core.InputSignal<string>;
|
|
54
|
+
readonly pagination: _angular_core.InputSignal<boolean>;
|
|
55
|
+
readonly pageSize: _angular_core.InputSignal<number>;
|
|
56
|
+
readonly emptyLabel: _angular_core.InputSignal<string>;
|
|
57
|
+
readonly loading: _angular_core.InputSignal<boolean>;
|
|
58
|
+
readonly loadingLabel: _angular_core.InputSignal<string>;
|
|
59
|
+
readonly previousLabel: _angular_core.InputSignal<string>;
|
|
60
|
+
readonly nextLabel: _angular_core.InputSignal<string>;
|
|
61
|
+
readonly paginationAriaLabel: _angular_core.InputSignal<string>;
|
|
62
|
+
readonly trackBy: _angular_core.InputSignal<(index: number, item: unknown) => unknown>;
|
|
63
|
+
readonly modeChange: _angular_core.OutputEmitterRef<NeuDataViewMode>;
|
|
64
|
+
readonly searchChange: _angular_core.OutputEmitterRef<string>;
|
|
65
|
+
readonly sortChange: _angular_core.OutputEmitterRef<string>;
|
|
66
|
+
readonly pageChange: _angular_core.OutputEmitterRef<NeuDataViewPageEvent>;
|
|
67
|
+
readonly itemTpl: _angular_core.Signal<NeuDataViewItemDirective | undefined>;
|
|
68
|
+
readonly headerTpl: _angular_core.Signal<NeuDataViewHeaderDirective | undefined>;
|
|
69
|
+
readonly footerTpl: _angular_core.Signal<NeuDataViewFooterDirective | undefined>;
|
|
70
|
+
readonly query: _angular_core.WritableSignal<string>;
|
|
71
|
+
readonly page: _angular_core.WritableSignal<number>;
|
|
72
|
+
readonly sortKey: _angular_core.WritableSignal<string>;
|
|
73
|
+
readonly _sortControl: FormControl<string | null>;
|
|
74
|
+
readonly _selectSortOptions: _angular_core.Signal<NeuSelectOption[]>;
|
|
75
|
+
readonly showToolbar: _angular_core.Signal<boolean>;
|
|
76
|
+
readonly filteredItems: _angular_core.Signal<unknown[]>;
|
|
77
|
+
readonly pageCount: _angular_core.Signal<number>;
|
|
78
|
+
readonly pagedItems: _angular_core.Signal<unknown[]>;
|
|
79
|
+
constructor();
|
|
80
|
+
setMode(mode: NeuDataViewMode): void;
|
|
81
|
+
setQuery(value: string): void;
|
|
82
|
+
setSort(value: string): void;
|
|
83
|
+
previousPage(): void;
|
|
84
|
+
nextPage(): void;
|
|
85
|
+
trackItem(index: number, item: unknown): unknown;
|
|
86
|
+
displayItem(item: unknown): string;
|
|
87
|
+
private setPage;
|
|
88
|
+
private searchableText;
|
|
89
|
+
private valueFor;
|
|
90
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuDataViewComponent, never>;
|
|
91
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuDataViewComponent, "neu-data-view", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "modes": { "alias": "modes"; "required": false; "isSignal": true; }; "viewSwitcher": { "alias": "viewSwitcher"; "required": false; "isSignal": true; }; "viewAriaLabel": { "alias": "viewAriaLabel"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "searchFields": { "alias": "searchFields"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "searchAriaLabel": { "alias": "searchAriaLabel"; "required": false; "isSignal": true; }; "sortOptions": { "alias": "sortOptions"; "required": false; "isSignal": true; }; "sortAriaLabel": { "alias": "sortAriaLabel"; "required": false; "isSignal": true; }; "pagination": { "alias": "pagination"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "emptyLabel": { "alias": "emptyLabel"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "loadingLabel": { "alias": "loadingLabel"; "required": false; "isSignal": true; }; "previousLabel": { "alias": "previousLabel"; "required": false; "isSignal": true; }; "nextLabel": { "alias": "nextLabel"; "required": false; "isSignal": true; }; "paginationAriaLabel": { "alias": "paginationAriaLabel"; "required": false; "isSignal": true; }; "trackBy": { "alias": "trackBy"; "required": false; "isSignal": true; }; }, { "modeChange": "modeChange"; "searchChange": "searchChange"; "sortChange": "sortChange"; "pageChange": "pageChange"; }, ["itemTpl", "headerTpl", "footerTpl"], never, true, never>;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export { NeuDataViewComponent, NeuDataViewFooterDirective, NeuDataViewHeaderDirective, NeuDataViewItemDirective };
|
|
95
|
+
export type { NeuDataViewMode, NeuDataViewPageEvent, NeuDataViewSortDirection, NeuDataViewSortOption };
|
|
@@ -9,11 +9,16 @@ interface NeuDateRange {
|
|
|
9
9
|
start: Date | null;
|
|
10
10
|
end: Date | null;
|
|
11
11
|
}
|
|
12
|
+
interface NeuDatePreset {
|
|
13
|
+
label: string;
|
|
14
|
+
range: NeuDateRange | (() => NeuDateRange);
|
|
15
|
+
}
|
|
12
16
|
interface CalendarDay {
|
|
13
17
|
date: Date;
|
|
14
18
|
inMonth: boolean;
|
|
15
19
|
isToday: boolean;
|
|
16
20
|
isSelected: boolean;
|
|
21
|
+
disabled: boolean;
|
|
17
22
|
}
|
|
18
23
|
interface DrumSlot {
|
|
19
24
|
value: number;
|
|
@@ -31,6 +36,7 @@ interface RangeCell {
|
|
|
31
36
|
rangeEnd: boolean;
|
|
32
37
|
inRange: boolean;
|
|
33
38
|
label: string;
|
|
39
|
+
disabled: boolean;
|
|
34
40
|
}
|
|
35
41
|
/**
|
|
36
42
|
* NeuralUI DateInput — campo de fecha/hora unificado con modo rango.
|
|
@@ -75,12 +81,22 @@ declare class NeuDateInputComponent implements ControlValueAccessor, OnDestroy {
|
|
|
75
81
|
step: _angular_core.InputSignal<number | null>;
|
|
76
82
|
/** Locale explícito opcional / Optional explicit locale */
|
|
77
83
|
locale: _angular_core.InputSignal<string | null>;
|
|
78
|
-
/**
|
|
84
|
+
/** Fechas deshabilitadas / Disabled dates */
|
|
85
|
+
disabledDates: _angular_core.InputSignal<(string | Date)[] | ((date: Date) => boolean)>;
|
|
86
|
+
/** Permite seleccionar varias fechas en type="date" / Multiple date selection for type="date" */
|
|
87
|
+
multiple: _angular_core.InputSignal<boolean>;
|
|
88
|
+
/** Muestra selectores de mes/año en el calendario / Shows month/year picker controls */
|
|
89
|
+
showMonthYearPicker: _angular_core.InputSignal<boolean>;
|
|
90
|
+
/** Rango de años para el selector / Year picker range */
|
|
91
|
+
yearRange: _angular_core.InputSignal<number>;
|
|
92
|
+
/** Placeholder del trigger / Trigger placeholder */
|
|
79
93
|
placeholder: _angular_core.InputSignal<string>;
|
|
80
94
|
/** Formato de fecha en modo rango / Date display format in range mode */
|
|
81
95
|
dateFormat: _angular_core.InputSignal<"short" | "medium" | "long" | "full" | "numeric">;
|
|
82
96
|
/** Etiqueta flotante / Floating label */
|
|
83
97
|
floatingLabel: _angular_core.InputSignal<boolean>;
|
|
98
|
+
/** Presets rápidos para rangos / Quick range presets */
|
|
99
|
+
presets: _angular_core.InputSignal<NeuDatePreset[]>;
|
|
84
100
|
/** Emitido al confirmar el rango / Emitted when range is confirmed */
|
|
85
101
|
readonly rangeChange: _angular_core.OutputEmitterRef<NeuDateRange>;
|
|
86
102
|
protected readonly _id: string;
|
|
@@ -103,6 +119,7 @@ declare class NeuDateInputComponent implements ControlValueAccessor, OnDestroy {
|
|
|
103
119
|
protected readonly _selDay: _angular_core.WritableSignal<number | null>;
|
|
104
120
|
protected readonly _selHour: _angular_core.WritableSignal<number>;
|
|
105
121
|
protected readonly _selMinute: _angular_core.WritableSignal<number>;
|
|
122
|
+
protected readonly _selectedDates: _angular_core.WritableSignal<string[]>;
|
|
106
123
|
private readonly _today;
|
|
107
124
|
private readonly _documentLang;
|
|
108
125
|
private readonly _pickStart;
|
|
@@ -130,6 +147,8 @@ declare class NeuDateInputComponent implements ControlValueAccessor, OnDestroy {
|
|
|
130
147
|
timePlaceholder: string;
|
|
131
148
|
datePlaceholder: string;
|
|
132
149
|
dateTimePlaceholder: string;
|
|
150
|
+
chooseMonth: string;
|
|
151
|
+
chooseYear: string;
|
|
133
152
|
}>;
|
|
134
153
|
readonly _weekDayLabels: _angular_core.Signal<string[]>;
|
|
135
154
|
readonly _leftTitle: _angular_core.Signal<string>;
|
|
@@ -151,11 +170,17 @@ declare class NeuDateInputComponent implements ControlValueAccessor, OnDestroy {
|
|
|
151
170
|
_selectDay(date: Date): void;
|
|
152
171
|
_hoverDay(date: Date): void;
|
|
153
172
|
_applyRange(): void;
|
|
173
|
+
_applyPreset(preset: NeuDatePreset): void;
|
|
154
174
|
_clearRange(): void;
|
|
155
175
|
readonly displayValue: _angular_core.Signal<string>;
|
|
156
176
|
readonly placeholderText: _angular_core.Signal<string>;
|
|
157
177
|
readonly monthLabel: _angular_core.Signal<string>;
|
|
158
178
|
readonly weekdays: _angular_core.Signal<string[]>;
|
|
179
|
+
readonly monthOptions: _angular_core.Signal<{
|
|
180
|
+
value: number;
|
|
181
|
+
label: string;
|
|
182
|
+
}[]>;
|
|
183
|
+
readonly yearOptions: _angular_core.Signal<number[]>;
|
|
159
184
|
readonly calendarDays: _angular_core.Signal<CalendarDay[]>;
|
|
160
185
|
readonly hourSlots: _angular_core.Signal<DrumSlot[]>;
|
|
161
186
|
readonly minuteSlots: _angular_core.Signal<DrumSlot[]>;
|
|
@@ -166,6 +191,8 @@ declare class NeuDateInputComponent implements ControlValueAccessor, OnDestroy {
|
|
|
166
191
|
prevMonth(): void;
|
|
167
192
|
nextMonth(): void;
|
|
168
193
|
selectDay(day: CalendarDay): void;
|
|
194
|
+
setViewMonth(value: string | number): void;
|
|
195
|
+
setViewYear(value: string | number): void;
|
|
169
196
|
formatDayLabel(date: Date): string;
|
|
170
197
|
today(): void;
|
|
171
198
|
clear(): void;
|
|
@@ -174,13 +201,16 @@ declare class NeuDateInputComponent implements ControlValueAccessor, OnDestroy {
|
|
|
174
201
|
onHourWheel(e: WheelEvent): void;
|
|
175
202
|
onMinuteWheel(e: WheelEvent): void;
|
|
176
203
|
private _emitValue;
|
|
177
|
-
|
|
178
|
-
|
|
204
|
+
isDateSelected(date: Date): boolean;
|
|
205
|
+
isDateDisabled(date: Date): boolean;
|
|
206
|
+
private _toDateValue;
|
|
207
|
+
writeValue(value: string | string[] | NeuDateRange | null): void;
|
|
208
|
+
registerOnChange(fn: (v: string | string[] | NeuDateRange) => void): void;
|
|
179
209
|
registerOnTouched(fn: () => void): void;
|
|
180
210
|
setDisabledState(isDisabled: boolean): void;
|
|
181
211
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NeuDateInputComponent, never>;
|
|
182
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuDateInputComponent, "neu-date-input", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "floatingLabel": { "alias": "floatingLabel"; "required": false; "isSignal": true; }; }, { "rangeChange": "rangeChange"; }, never, never, true, never>;
|
|
212
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NeuDateInputComponent, "neu-date-input", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "inputId": { "alias": "inputId"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "disabledDates": { "alias": "disabledDates"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "showMonthYearPicker": { "alias": "showMonthYearPicker"; "required": false; "isSignal": true; }; "yearRange": { "alias": "yearRange"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "floatingLabel": { "alias": "floatingLabel"; "required": false; "isSignal": true; }; "presets": { "alias": "presets"; "required": false; "isSignal": true; }; }, { "rangeChange": "rangeChange"; }, never, never, true, never>;
|
|
183
213
|
}
|
|
184
214
|
|
|
185
215
|
export { NeuDateInputComponent };
|
|
186
|
-
export type { NeuDateRange };
|
|
216
|
+
export type { NeuDatePreset, NeuDateRange };
|