ngx-view-builder 0.0.1 → 0.1.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.
@@ -0,0 +1,443 @@
1
+ .nvb-root {
2
+ --nvb-button-height-lg: 40px;
3
+ --nvb-button-height-ms: 32px;
4
+ --nvb-button-height-sm: 32px;
5
+ --nvb-button-height-sx: 28px;
6
+ --nvb-button-padding-lg: 0 16px;
7
+ --nvb-button-padding-ms: 0 12px;
8
+ --nvb-button-padding-sm: 0 10px;
9
+ --nvb-button-padding-sx: 0 8px;
10
+ --nvb-button-font-size-lg: 14px;
11
+ --nvb-button-font-size-ms: 13px;
12
+ --nvb-button-font-size-sm: 13px;
13
+ --nvb-button-font-size-sx: 12px;
14
+ --nvb-button-radius: var(--radius-md);
15
+ --nvb-button-gap: 6px;
16
+ --nvb-button-border-color: var(--color-neutral-300);
17
+ --nvb-button-bg: var(--color-neutral-000);
18
+ --nvb-button-text-color: var(--color-neutral-800);
19
+ --nvb-button-hover-bg: var(--color-neutral-050);
20
+ --nvb-button-primary-bg: var(--color-primary-600);
21
+ --nvb-button-primary-hover-bg: var(--color-primary-700);
22
+ --nvb-button-danger-bg: var(--color-risk-050);
23
+ --nvb-button-danger-text-color: var(--color-risk-700);
24
+ --nvb-button-danger-border-color: var(--color-risk-300);
25
+ --nvb-surface-bg: var(--color-neutral-000);
26
+ --nvb-surface-muted-bg: color-mix(in oklab, var(--color-neutral-050) 84%, var(--color-neutral-000));
27
+ --nvb-stroke-subtle: var(--color-neutral-200);
28
+ --nvb-stroke-strong: var(--color-neutral-300);
29
+ --nvb-shadow-2: 0 1px 2px color-mix(in oklab, var(--color-neutral-950) 6%, transparent);
30
+ --nvb-shadow-8:
31
+ 0 4px 8px color-mix(in oklab, var(--color-neutral-950) 10%, transparent),
32
+ 0 12px 24px color-mix(in oklab, var(--color-neutral-950) 8%, transparent);
33
+ --nvb-shadow-16:
34
+ 0 8px 16px color-mix(in oklab, var(--color-neutral-950) 12%, transparent),
35
+ 0 24px 48px color-mix(in oklab, var(--color-neutral-950) 14%, transparent);
36
+ --nvb-dialog-radius: var(--radius-lg);
37
+ --nvb-menu-radius: var(--nvb-input-radius, var(--radius-md));
38
+ --nvb-tablist-height: 40px;
39
+ --nvb-card-bg: var(--color-neutral-000);
40
+ --nvb-card-border-color: var(--color-neutral-200);
41
+ --nvb-card-radius: var(--radius-md);
42
+ --nvb-card-shadow: var(--nvb-shadow-2);
43
+ --nvb-card-padding: 12px;
44
+ }
45
+
46
+ .nvb-root .nvb-sr-only {
47
+ position: absolute;
48
+ width: 1px;
49
+ height: 1px;
50
+ padding: 0;
51
+ margin: -1px;
52
+ overflow: hidden;
53
+ clip: rect(0, 0, 0, 0);
54
+ white-space: nowrap;
55
+ border: 0;
56
+ }
57
+
58
+ .nvb-root .nvb-button,
59
+ .nvb-root .nvb-control__add-row-button {
60
+ box-sizing: border-box;
61
+ min-height: var(--nvb-button-height-ms);
62
+ padding: var(--nvb-button-padding-ms);
63
+ border: 1px solid var(--nvb-button-border-color);
64
+ border-radius: var(--nvb-button-radius);
65
+ background: var(--nvb-button-bg);
66
+ color: var(--nvb-button-text-color);
67
+ cursor: pointer;
68
+ display: inline-flex;
69
+ align-items: center;
70
+ justify-content: center;
71
+ gap: var(--nvb-button-gap);
72
+ font-family: var(--nvb-font-family);
73
+ font-size: var(--nvb-button-font-size-ms);
74
+ font-weight: 600;
75
+ line-height: 20px;
76
+ white-space: nowrap;
77
+ overflow: visible;
78
+ transition:
79
+ background-color 0.2s ease,
80
+ border-color 0.2s ease,
81
+ color 0.2s ease,
82
+ opacity 0.2s ease,
83
+ box-shadow 0.2s ease;
84
+ box-shadow: none;
85
+ }
86
+
87
+ .nvb-root .nvb-button:focus-visible,
88
+ .nvb-root .nvb-control__add-row-button:focus-visible,
89
+ .nvb-root .nvb-icon-button:focus-visible {
90
+ outline: 0;
91
+ border-color: var(--nvb-input-focus-border-color, var(--color-primary-500));
92
+ box-shadow: var(--nvb-focus-ring);
93
+ }
94
+
95
+ .nvb-root .nvb-button:hover:not(:disabled),
96
+ .nvb-root .nvb-control__add-row-button:hover:not(:disabled) {
97
+ background: var(--nvb-button-hover-bg);
98
+ border-color: var(--color-neutral-400);
99
+ color: var(--color-neutral-900);
100
+ box-shadow: none;
101
+ }
102
+
103
+ .nvb-root .nvb-button:disabled,
104
+ .nvb-root .nvb-control__add-row-button:disabled {
105
+ cursor: not-allowed;
106
+ opacity: 0.5;
107
+ box-shadow: none;
108
+ }
109
+
110
+ .nvb-root .nvb-button--lg {
111
+ min-height: var(--nvb-button-height-lg);
112
+ padding: var(--nvb-button-padding-lg);
113
+ font-size: var(--nvb-button-font-size-lg);
114
+ }
115
+
116
+ .nvb-root .nvb-button--ms,
117
+ .nvb-root .nvb-button--md {
118
+ min-height: var(--nvb-button-height-ms);
119
+ padding: var(--nvb-button-padding-ms);
120
+ font-size: var(--nvb-button-font-size-ms);
121
+ }
122
+
123
+ .nvb-root .nvb-button--sm {
124
+ min-height: var(--nvb-button-height-sm);
125
+ padding: var(--nvb-button-padding-sm);
126
+ font-size: var(--nvb-button-font-size-sm);
127
+ }
128
+
129
+ .nvb-root .nvb-button--sx,
130
+ .nvb-root .nvb-button--xs {
131
+ min-height: var(--nvb-button-height-sx);
132
+ padding: var(--nvb-button-padding-sx);
133
+ font-size: var(--nvb-button-font-size-sx);
134
+ }
135
+
136
+ .nvb-root .nvb-button--left {
137
+ justify-content: flex-start;
138
+ }
139
+
140
+ .nvb-root .nvb-button--full {
141
+ width: 100%;
142
+ }
143
+
144
+ .nvb-root .nvb-button--subtle {
145
+ border-color: transparent;
146
+ background: transparent;
147
+ color: var(--color-neutral-700);
148
+ }
149
+
150
+ .nvb-root .nvb-button--subtle:hover:not(:disabled) {
151
+ border-color: transparent;
152
+ background: color-mix(in oklab, var(--color-neutral-100) 72%, var(--color-neutral-000));
153
+ color: var(--color-neutral-900);
154
+ }
155
+
156
+ .nvb-root .nvb-button--neutral {
157
+ background: var(--color-neutral-000);
158
+ }
159
+
160
+ .nvb-root .nvb-button--primary,
161
+ .nvb-root .nvb-button--active {
162
+ border-color: var(--color-primary-500);
163
+ background: var(--nvb-button-primary-bg);
164
+ color: var(--color-neutral-000);
165
+ box-shadow: none;
166
+ }
167
+
168
+ .nvb-root .nvb-button--primary-soft {
169
+ border-color: transparent;
170
+ background: color-mix(in oklab, var(--color-primary-050) 76%, var(--color-neutral-000));
171
+ color: var(--color-primary-700);
172
+ }
173
+
174
+ .nvb-root .nvb-button--primary:hover:not(:disabled),
175
+ .nvb-root .nvb-button--active:hover:not(:disabled) {
176
+ border-color: var(--color-primary-600);
177
+ background: var(--nvb-button-primary-hover-bg);
178
+ color: var(--color-neutral-000);
179
+ }
180
+
181
+ .nvb-root .nvb-button--primary-soft:hover:not(:disabled) {
182
+ border-color: var(--color-primary-500);
183
+ background: color-mix(
184
+ in oklab,
185
+ var(--color-primary-050) 70%,
186
+ var(--color-primary-100, var(--color-primary-050))
187
+ );
188
+ color: var(--color-primary-800);
189
+ }
190
+
191
+ .nvb-root .nvb-button--danger {
192
+ border-color: var(--nvb-button-danger-border-color);
193
+ background: var(--nvb-button-danger-bg);
194
+ color: var(--nvb-button-danger-text-color);
195
+ }
196
+
197
+ .nvb-root .nvb-button--danger:hover:not(:disabled),
198
+ .nvb-root .nvb-icon-button--danger:hover:not(:disabled) {
199
+ border-color: var(--color-risk-400);
200
+ background: color-mix(
201
+ in oklab,
202
+ var(--color-risk-050) 70%,
203
+ var(--color-risk-100, var(--color-risk-050))
204
+ );
205
+ color: var(--color-risk-800, var(--color-risk-700));
206
+ }
207
+
208
+ .nvb-root .nvb-button__icon,
209
+ .nvb-root .nvb-control__add-row-button span {
210
+ font-size: 15px;
211
+ line-height: 1;
212
+ }
213
+
214
+ .nvb-root .nvb-control__add-row-button {
215
+ border-color: var(--nvb-control-button-border-color);
216
+ background: var(--nvb-control-button-bg);
217
+ color: var(--nvb-control-button-text-color);
218
+ font-size: var(--nvb-control-font-size);
219
+ height: var(--nvb-control-height);
220
+ min-height: var(--nvb-control-height);
221
+ padding: 0 var(--nvb-control-padding-x);
222
+ }
223
+
224
+ .nvb-root .nvb-control__add-row-button:hover:not(:disabled) {
225
+ border-color: var(--nvb-control-button-hover-border-color);
226
+ background: var(--nvb-control-button-hover-bg);
227
+ color: var(--nvb-control-button-hover-text-color);
228
+ }
229
+
230
+ .nvb-root .nvb-control__add-row-button--compact {
231
+ height: var(--nvb-control-height-sm);
232
+ min-height: var(--nvb-control-height-sm);
233
+ padding: 0 10px;
234
+ font-size: 12px;
235
+ }
236
+
237
+ .nvb-root .nvb-control__add-row-button--compact span {
238
+ font-size: 16px;
239
+ }
240
+
241
+ .nvb-root .nvb-control__add-row-button--link {
242
+ min-height: 26px;
243
+ padding: 0;
244
+ border-color: transparent;
245
+ background: transparent;
246
+ color: var(--color-primary-600);
247
+ border-radius: var(--radius-md);
248
+ font-size: 14px;
249
+ font-weight: 600;
250
+ justify-content: flex-start;
251
+ }
252
+
253
+ .nvb-root .nvb-control__add-row-button--link:hover:not(:disabled) {
254
+ border-color: transparent;
255
+ background: transparent;
256
+ color: var(--color-primary-700);
257
+ }
258
+
259
+ .nvb-root .nvb-control__add-row-button--link.nvb-control__add-row-button--compact {
260
+ padding: 0 2px;
261
+ font-size: 12px;
262
+ }
263
+
264
+ .nvb-root .nvb-control__add-row-button nvb-icon {
265
+ width: 16px;
266
+ height: 16px;
267
+ display: inline-flex;
268
+ }
269
+
270
+ .nvb-root .nvb-button__label {
271
+ display: inline-flex;
272
+ align-items: center;
273
+ min-height: 20px;
274
+ line-height: 20px;
275
+ overflow: hidden;
276
+ text-overflow: ellipsis;
277
+ }
278
+
279
+ .nvb-root .nvb-icon-button {
280
+ width: var(--nvb-button-height-ms);
281
+ min-width: var(--nvb-button-height-ms);
282
+ height: var(--nvb-button-height-ms);
283
+ min-height: var(--nvb-button-height-ms);
284
+ border: 1px solid var(--color-neutral-300);
285
+ border-radius: var(--nvb-control-radius);
286
+ background: var(--color-neutral-000);
287
+ color: var(--color-neutral-800);
288
+ cursor: pointer;
289
+ display: inline-flex;
290
+ align-items: center;
291
+ justify-content: center;
292
+ padding: 0;
293
+ transition:
294
+ background-color 0.16s ease,
295
+ border-color 0.16s ease,
296
+ color 0.16s ease,
297
+ opacity 0.16s ease,
298
+ box-shadow 0.16s ease;
299
+ box-shadow: none;
300
+ }
301
+
302
+ .nvb-root .nvb-icon-button:hover:not(:disabled) {
303
+ background: var(--color-neutral-050);
304
+ border-color: var(--color-neutral-400);
305
+ color: var(--color-neutral-900);
306
+ }
307
+
308
+ .nvb-root .nvb-icon-button:disabled {
309
+ cursor: not-allowed;
310
+ opacity: 0.5;
311
+ box-shadow: none;
312
+ }
313
+
314
+ .nvb-root .nvb-icon-button--lg {
315
+ width: var(--nvb-button-height-lg);
316
+ min-width: var(--nvb-button-height-lg);
317
+ height: var(--nvb-button-height-lg);
318
+ min-height: var(--nvb-button-height-lg);
319
+ }
320
+
321
+ .nvb-root .nvb-icon-button--sm {
322
+ width: var(--nvb-button-height-sm);
323
+ min-width: var(--nvb-button-height-sm);
324
+ height: var(--nvb-button-height-sm);
325
+ min-height: var(--nvb-button-height-sm);
326
+ }
327
+
328
+ .nvb-root .nvb-icon-button--sx,
329
+ .nvb-root .nvb-icon-button--xs {
330
+ width: var(--nvb-button-height-sx);
331
+ min-width: var(--nvb-button-height-sx);
332
+ height: var(--nvb-button-height-sx);
333
+ min-height: var(--nvb-button-height-sx);
334
+ border-radius: var(--radius-md);
335
+ }
336
+
337
+ .nvb-root .nvb-icon-button--danger {
338
+ border-color: var(--nvb-button-danger-border-color);
339
+ background: var(--nvb-button-danger-bg);
340
+ color: var(--nvb-button-danger-text-color);
341
+ }
342
+
343
+ .nvb-root .nvb-icon-button--ghost {
344
+ border-color: transparent;
345
+ background: transparent;
346
+ }
347
+
348
+ .nvb-root .nvb-icon-button--ghost:hover:not(:disabled) {
349
+ border-color: transparent;
350
+ background: color-mix(in oklab, var(--color-neutral-100) 72%, var(--color-neutral-000));
351
+ color: var(--color-neutral-800);
352
+ }
353
+
354
+ .nvb-root .nvb-icon-button--drag {
355
+ cursor: grab;
356
+ }
357
+
358
+ .nvb-root .nvb-icon-button--drag:active {
359
+ cursor: grabbing;
360
+ transform: scale(0.98);
361
+ }
362
+
363
+ .nvb-root .nvb-icon-button span,
364
+ .nvb-root .nvb-icon-button nvb-icon,
365
+ .nvb-root .nvb-control__add-row-button nvb-icon,
366
+ .nvb-root .nvb-control__add-row-button .nvb-icon-svg {
367
+ font-size: 18px;
368
+ line-height: 1;
369
+ }
370
+
371
+ .nvb-root .nvb-icon-button--sx span,
372
+ .nvb-root .nvb-icon-button--sx nvb-icon,
373
+ .nvb-root .nvb-icon-button--xs span,
374
+ .nvb-root .nvb-icon-button--xs nvb-icon {
375
+ font-size: 15px;
376
+ }
377
+
378
+ .nvb-root .nvb-search-field {
379
+ position: relative;
380
+ }
381
+
382
+ .nvb-root .nvb-search-field .nvb-search-field__icon {
383
+ position: absolute;
384
+ left: 10px;
385
+ top: 50%;
386
+ transform: translateY(-50%);
387
+ z-index: 1;
388
+ display: inline-flex;
389
+ width: 16px;
390
+ height: 16px;
391
+ align-items: center;
392
+ justify-content: center;
393
+ color: var(--color-neutral-500);
394
+ font-size: 16px;
395
+ line-height: 1;
396
+ pointer-events: none;
397
+ }
398
+
399
+ .nvb-root .nvb-search-field .nvb-search-field__input {
400
+ display: block;
401
+ box-sizing: border-box;
402
+ width: 100%;
403
+ height: 32px;
404
+ min-height: 32px;
405
+ padding: 0 32px 0 36px;
406
+ border: 1px solid var(--color-neutral-300);
407
+ border-radius: var(--nvb-input-radius, var(--radius-md));
408
+ background: var(--color-neutral-000);
409
+ color: var(--color-neutral-800);
410
+ font-size: 12px;
411
+ font-weight: 400;
412
+ line-height: 20px;
413
+ box-shadow: none;
414
+ transition:
415
+ border-color 0.12s ease,
416
+ background-color 0.12s ease,
417
+ box-shadow 0.12s ease;
418
+ }
419
+
420
+ .nvb-root .nvb-search-field.nvb-search-field--no-icon .nvb-search-field__input {
421
+ padding-left: 12px;
422
+ }
423
+
424
+ .nvb-root .nvb-search-field .nvb-search-field__input::placeholder {
425
+ color: var(--color-neutral-400);
426
+ font-weight: 400;
427
+ }
428
+
429
+ .nvb-root .nvb-search-field .nvb-search-field__input:focus,
430
+ .nvb-root .nvb-search-field .nvb-search-field__input:focus-visible {
431
+ outline: none;
432
+ border-color: var(--color-primary-500);
433
+ box-shadow: var(--nvb-focus-ring);
434
+ }
435
+
436
+ .nvb-root .nvb-search-field .nvb-search-field__clear {
437
+ position: absolute;
438
+ right: 6px;
439
+ top: 50%;
440
+ transform: translateY(-50%);
441
+ z-index: 2;
442
+ color: var(--color-neutral-500);
443
+ }