vira 31.31.7 → 32.0.0
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/dist/elements/color/vira-all-color-space-sliders.element.d.ts +11 -0
- package/dist/elements/color/vira-all-color-space-sliders.element.js +55 -0
- package/dist/elements/color/vira-all-spaces-color-picker.element.d.ts +15 -0
- package/dist/elements/color/vira-all-spaces-color-picker.element.js +73 -0
- package/dist/elements/color/vira-color-details.element.d.ts +14 -0
- package/dist/elements/color/vira-color-details.element.js +153 -0
- package/dist/elements/color/vira-color-format-sliders.element.d.ts +14 -0
- package/dist/elements/color/vira-color-format-sliders.element.js +60 -0
- package/dist/elements/color/vira-color-pair-contrast-summary.element.d.ts +9 -0
- package/dist/elements/color/vira-color-pair-contrast-summary.element.js +308 -0
- package/dist/elements/color/vira-color-pair.element.d.ts +17 -0
- package/dist/elements/color/vira-color-pair.element.js +201 -0
- package/dist/elements/color/vira-color-picker.element.d.ts +20 -0
- package/dist/elements/color/vira-color-picker.element.js +278 -0
- package/dist/elements/color/vira-color-slider.element.d.ts +14 -0
- package/dist/elements/color/vira-color-slider.element.js +124 -0
- package/dist/elements/color/vira-color-swatch.element.d.ts +20 -0
- package/dist/elements/color/vira-color-swatch.element.js +48 -0
- package/dist/elements/color/vira-contrast-indicator.element.d.ts +10 -0
- package/dist/elements/color/vira-contrast-indicator.element.js +96 -0
- package/dist/elements/index.d.ts +10 -0
- package/dist/elements/index.js +10 -0
- package/dist/elements/pop-up/vira-menu-item.element.d.ts +1 -1
- package/dist/elements/pop-up/vira-menu-item.element.js +20 -8
- package/dist/elements/pop-up/vira-menu-trigger.element.d.ts +1 -1
- package/dist/elements/pop-up/vira-menu-trigger.element.js +3 -1
- package/dist/elements/pop-up/vira-menu.element.js +10 -4
- package/dist/elements/pop-up/vira-pop-up-trigger.element.d.ts +3 -3
- package/dist/elements/pop-up/vira-pop-up-trigger.element.js +24 -10
- package/dist/elements/vira-bold-text.element.js +4 -2
- package/dist/elements/vira-button.element.d.ts +1 -8
- package/dist/elements/vira-button.element.js +28 -37
- package/dist/elements/vira-card.element.js +7 -3
- package/dist/elements/vira-checkbox.element.d.ts +1 -1
- package/dist/elements/vira-checkbox.element.js +13 -5
- package/dist/elements/vira-collapsible-card.element.d.ts +1 -1
- package/dist/elements/vira-collapsible-card.element.js +13 -5
- package/dist/elements/vira-collapsible-wrapper.element.d.ts +1 -1
- package/dist/elements/vira-collapsible-wrapper.element.js +7 -3
- package/dist/elements/vira-date-input.element.d.ts +1 -1
- package/dist/elements/vira-date-input.element.js +10 -4
- package/dist/elements/vira-drawer.element.d.ts +1 -1
- package/dist/elements/vira-drawer.element.js +14 -6
- package/dist/elements/vira-dropdown.element.d.ts +2 -8
- package/dist/elements/vira-dropdown.element.js +6 -10
- package/dist/elements/vira-error.element.js +1 -1
- package/dist/elements/vira-form.element.d.ts +2 -2
- package/dist/elements/vira-form.element.js +36 -22
- package/dist/elements/vira-icon.element.js +4 -2
- package/dist/elements/vira-image.element.d.ts +2 -2
- package/dist/elements/vira-image.element.js +7 -3
- package/dist/elements/vira-input.element.d.ts +2 -2
- package/dist/elements/vira-input.element.js +23 -9
- package/dist/elements/vira-json-form.element.d.ts +1 -1
- package/dist/elements/vira-json-form.element.js +18 -8
- package/dist/elements/vira-link.element.js +5 -3
- package/dist/elements/vira-modal.element.d.ts +1 -1
- package/dist/elements/vira-modal.element.js +14 -6
- package/dist/elements/vira-progress.element.js +1 -1
- package/dist/elements/vira-select.element.d.ts +1 -1
- package/dist/elements/vira-select.element.js +20 -8
- package/dist/elements/vira-tabs.element.d.ts +2 -2
- package/dist/elements/vira-tabs.element.js +35 -21
- package/dist/elements/vira-tag.element.d.ts +3 -3
- package/dist/elements/vira-tag.element.js +46 -18
- package/dist/elements/vira-text-area.element.d.ts +2 -2
- package/dist/elements/vira-text-area.element.js +16 -6
- package/dist/util/color-local-storage.client.d.ts +4 -0
- package/dist/util/color-local-storage.client.js +6 -0
- package/dist/util/define-vira-element.js +1 -1
- package/dist/util/vira-json-schema.js +9 -9
- package/package.json +11 -11
- package/dist/icons/icon-color.test-helper.d.ts +0 -6
- package/dist/icons/icon-color.test-helper.js +0 -9
|
@@ -110,12 +110,6 @@ export const ViraDropdown = defineViraElement()({
|
|
|
110
110
|
}
|
|
111
111
|
`,
|
|
112
112
|
events: {
|
|
113
|
-
/**
|
|
114
|
-
* @deprecated Use `selectedValuesChange` instead. `selectedChange` is broken for
|
|
115
|
-
* multi-select (it doesn't emit all the currently selected values) but is temporarily
|
|
116
|
-
* left for backwards compatibility purposes. It will be removed entirely soon.
|
|
117
|
-
*/
|
|
118
|
-
selectedChange: defineElementEvent(),
|
|
119
113
|
/** Emits all currently selected values. */
|
|
120
114
|
selectedValuesChange: defineElementEvent(),
|
|
121
115
|
openChange: defineElementEvent(),
|
|
@@ -175,9 +169,9 @@ export const ViraDropdown = defineViraElement()({
|
|
|
175
169
|
option.value,
|
|
176
170
|
]
|
|
177
171
|
: [option.value];
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
172
|
+
dispatch(new events.selectedValuesChange({
|
|
173
|
+
detail: newSelectedValues,
|
|
174
|
+
}));
|
|
181
175
|
},
|
|
182
176
|
disabled: option.disabled,
|
|
183
177
|
selected: selectedOptions.includes(option),
|
|
@@ -198,7 +192,9 @@ export const ViraDropdown = defineViraElement()({
|
|
|
198
192
|
})}
|
|
199
193
|
${listen(ViraPopUpTrigger.events.openChange, (event) => {
|
|
200
194
|
if (!!state.showPopUpResult !== !!event.detail) {
|
|
201
|
-
dispatch(new events.openChange(
|
|
195
|
+
dispatch(new events.openChange({
|
|
196
|
+
detail: event.detail,
|
|
197
|
+
}));
|
|
202
198
|
}
|
|
203
199
|
updateState({
|
|
204
200
|
showPopUpResult: event.detail,
|
|
@@ -13,7 +13,7 @@ export const ViraError = defineViraElement()({
|
|
|
13
13
|
cssVars: {
|
|
14
14
|
'vira-error-font-weight': viraFontCssVars['vira-font-weight-bold'].value,
|
|
15
15
|
},
|
|
16
|
-
styles
|
|
16
|
+
styles({ cssVars }) {
|
|
17
17
|
return css `
|
|
18
18
|
:host {
|
|
19
19
|
color: ${viraFormCssVars['vira-form-error-color'].value};
|
|
@@ -47,10 +47,10 @@ export declare const ViraForm: import("element-vir").DeclarativeElementDefinitio
|
|
|
47
47
|
}>, {
|
|
48
48
|
lastIsValid: boolean;
|
|
49
49
|
}, {
|
|
50
|
-
valueChange: import("element-vir").
|
|
50
|
+
valueChange: import("element-vir").DefineElementEvent<{
|
|
51
51
|
key: string;
|
|
52
52
|
} & ViraFormField>;
|
|
53
|
-
validChange: import("element-vir").
|
|
53
|
+
validChange: import("element-vir").DefineElementEvent<{
|
|
54
54
|
allFieldsAreValid: boolean;
|
|
55
55
|
}>;
|
|
56
56
|
}, "vira-form-", "vira-form-", readonly [], readonly []>;
|
|
@@ -86,7 +86,9 @@ export const ViraForm = defineViraElement()({
|
|
|
86
86
|
lastIsValid: currentIsValid,
|
|
87
87
|
});
|
|
88
88
|
dispatch(new events.validChange({
|
|
89
|
-
|
|
89
|
+
detail: {
|
|
90
|
+
allFieldsAreValid: currentIsValid,
|
|
91
|
+
},
|
|
90
92
|
}));
|
|
91
93
|
}
|
|
92
94
|
function wrapFormField({ fieldTemplate, label, }) {
|
|
@@ -128,9 +130,11 @@ export const ViraForm = defineViraElement()({
|
|
|
128
130
|
${field.testId ? testId(field.testId) : nothing}
|
|
129
131
|
${listen(ViraCheckbox.events.valueChange, (event) => {
|
|
130
132
|
dispatch(new events.valueChange({
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
133
|
+
detail: {
|
|
134
|
+
key,
|
|
135
|
+
...field,
|
|
136
|
+
value: event.detail,
|
|
137
|
+
},
|
|
134
138
|
}));
|
|
135
139
|
})}
|
|
136
140
|
>
|
|
@@ -178,9 +182,11 @@ export const ViraForm = defineViraElement()({
|
|
|
178
182
|
${field.testId ? testId(field.testId) : nothing}
|
|
179
183
|
${listen(ViraSelect.events.valueChange, (event) => {
|
|
180
184
|
dispatch(new events.valueChange({
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
185
|
+
detail: {
|
|
186
|
+
key,
|
|
187
|
+
...field,
|
|
188
|
+
value: event.detail,
|
|
189
|
+
},
|
|
184
190
|
}));
|
|
185
191
|
})}
|
|
186
192
|
></${ViraSelect}>
|
|
@@ -205,9 +211,11 @@ export const ViraForm = defineViraElement()({
|
|
|
205
211
|
${field.testId ? testId(field.testId) : nothing}
|
|
206
212
|
${listen(ViraTextArea.events.valueChange, (event) => {
|
|
207
213
|
dispatch(new events.valueChange({
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
214
|
+
detail: {
|
|
215
|
+
key,
|
|
216
|
+
...field,
|
|
217
|
+
value: event.detail,
|
|
218
|
+
},
|
|
211
219
|
}));
|
|
212
220
|
})}
|
|
213
221
|
></${ViraTextArea}>
|
|
@@ -231,17 +239,17 @@ export const ViraForm = defineViraElement()({
|
|
|
231
239
|
type: ViraInputType.Number,
|
|
232
240
|
attributePassthrough: {
|
|
233
241
|
...horizontalLabelAttributes,
|
|
234
|
-
...(field.min
|
|
242
|
+
...(field.min == undefined
|
|
235
243
|
? {}
|
|
236
244
|
: {
|
|
237
245
|
min: String(field.min),
|
|
238
246
|
}),
|
|
239
|
-
...(field.max
|
|
247
|
+
...(field.max == undefined
|
|
240
248
|
? {}
|
|
241
249
|
: {
|
|
242
250
|
max: String(field.max),
|
|
243
251
|
}),
|
|
244
|
-
...(field.step
|
|
252
|
+
...(field.step == undefined
|
|
245
253
|
? {}
|
|
246
254
|
: {
|
|
247
255
|
step: String(field.step),
|
|
@@ -252,9 +260,11 @@ export const ViraForm = defineViraElement()({
|
|
|
252
260
|
${listen(ViraInput.events.valueChange, (event) => {
|
|
253
261
|
const numericValue = event.detail === '' ? undefined : Number(event.detail);
|
|
254
262
|
dispatch(new events.valueChange({
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
263
|
+
detail: {
|
|
264
|
+
key,
|
|
265
|
+
...field,
|
|
266
|
+
value: numericValue,
|
|
267
|
+
},
|
|
258
268
|
}));
|
|
259
269
|
})}
|
|
260
270
|
></${ViraInput}>
|
|
@@ -280,9 +290,11 @@ export const ViraForm = defineViraElement()({
|
|
|
280
290
|
${field.testId ? testId(field.testId) : nothing}
|
|
281
291
|
${listen(ViraDateInput.events.valueChange, (event) => {
|
|
282
292
|
dispatch(new events.valueChange({
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
293
|
+
detail: {
|
|
294
|
+
key,
|
|
295
|
+
...field,
|
|
296
|
+
value: event.detail,
|
|
297
|
+
},
|
|
286
298
|
}));
|
|
287
299
|
})}
|
|
288
300
|
></${ViraDateInput}>
|
|
@@ -335,9 +347,11 @@ export const ViraForm = defineViraElement()({
|
|
|
335
347
|
${field.testId ? testId(field.testId) : nothing}
|
|
336
348
|
${listen(ViraInput.events.valueChange, (event) => {
|
|
337
349
|
dispatch(new events.valueChange({
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
350
|
+
detail: {
|
|
351
|
+
key,
|
|
352
|
+
...field,
|
|
353
|
+
value: event.detail,
|
|
354
|
+
},
|
|
341
355
|
}));
|
|
342
356
|
})}
|
|
343
357
|
></${ViraInput}>
|
|
@@ -12,9 +12,11 @@ export const ViraIcon = defineViraElement()({
|
|
|
12
12
|
tagName: 'vira-icon',
|
|
13
13
|
hostClasses: {
|
|
14
14
|
/** Ignores the given icon's embedded size and causes the <svg> element to fill its parent. */
|
|
15
|
-
'vira-icon-fit-container'
|
|
15
|
+
'vira-icon-fit-container'({ inputs }) {
|
|
16
|
+
return !!inputs.fitContainer || !!inputs.icon?.size;
|
|
17
|
+
},
|
|
16
18
|
},
|
|
17
|
-
styles
|
|
19
|
+
styles({ hostClasses }) {
|
|
18
20
|
return css `
|
|
19
21
|
:host {
|
|
20
22
|
display: inline-flex;
|
|
@@ -40,6 +40,6 @@ export declare const ViraImage: import("element-vir").DeclarativeElementDefiniti
|
|
|
40
40
|
[url: string]: true;
|
|
41
41
|
}>;
|
|
42
42
|
}, {
|
|
43
|
-
imageLoad: import("element-vir").
|
|
44
|
-
imageError: import("element-vir").
|
|
43
|
+
imageLoad: import("element-vir").DefineElementEvent<void>;
|
|
44
|
+
imageError: import("element-vir").DefineElementEvent<unknown>;
|
|
45
45
|
}, "vira-image-height-constrained", `vira-${string}-`, readonly ["vira-image-loading", "vira-image-error"], readonly []>;
|
|
@@ -31,7 +31,9 @@ export const ViraImage = defineViraElement()({
|
|
|
31
31
|
};
|
|
32
32
|
},
|
|
33
33
|
hostClasses: {
|
|
34
|
-
'vira-image-height-constrained'
|
|
34
|
+
'vira-image-height-constrained'({ inputs }) {
|
|
35
|
+
return inputs.dominantDimension === 'height';
|
|
36
|
+
},
|
|
35
37
|
},
|
|
36
38
|
slotNames: [
|
|
37
39
|
'vira-image-loading',
|
|
@@ -41,7 +43,7 @@ export const ViraImage = defineViraElement()({
|
|
|
41
43
|
imageLoad: defineElementEvent(),
|
|
42
44
|
imageError: defineElementEvent(),
|
|
43
45
|
},
|
|
44
|
-
styles
|
|
46
|
+
styles({ hostClasses }) {
|
|
45
47
|
return css `
|
|
46
48
|
:host {
|
|
47
49
|
display: inline-flex;
|
|
@@ -131,7 +133,9 @@ export const ViraImage = defineViraElement()({
|
|
|
131
133
|
[imageUrl]: true,
|
|
132
134
|
},
|
|
133
135
|
});
|
|
134
|
-
dispatch(new events.imageLoad(
|
|
136
|
+
dispatch(new events.imageLoad({
|
|
137
|
+
detail: undefined,
|
|
138
|
+
}));
|
|
135
139
|
})}
|
|
136
140
|
${listen('error', async (event) => {
|
|
137
141
|
if (inputs._debugLoadDelay) {
|
|
@@ -54,11 +54,11 @@ export declare const ViraInput: import("element-vir").DeclarativeElementDefiniti
|
|
|
54
54
|
* Fires whenever a user input created a new value. Does not fire if all input letters are
|
|
55
55
|
* filtered out due to input restrictions.
|
|
56
56
|
*/
|
|
57
|
-
valueChange: import("element-vir").
|
|
57
|
+
valueChange: import("element-vir").DefineElementEvent<string>;
|
|
58
58
|
/**
|
|
59
59
|
* Fires when inputs are blocked. Useful for showing warnings or error messages to inform
|
|
60
60
|
* the user why their input did not propagate if it was blocked. This does not fire for text
|
|
61
61
|
* that was blocked out of programmatic "value" property assignments.
|
|
62
62
|
*/
|
|
63
|
-
inputBlocked: import("element-vir").
|
|
63
|
+
inputBlocked: import("element-vir").DefineElementEvent<string>;
|
|
64
64
|
}, "vira-input-disabled" | "vira-input-fit-text" | "vira-input-clear-button-shown" | "vira-input-error", "vira-input-padding-horizontal" | "vira-input-padding-vertical", readonly [], readonly []>;
|
|
@@ -40,7 +40,7 @@ export const ViraInput = defineViraElement()({
|
|
|
40
40
|
'vira-input-padding-horizontal': '12px',
|
|
41
41
|
'vira-input-padding-vertical': '4px',
|
|
42
42
|
},
|
|
43
|
-
styles
|
|
43
|
+
styles({ hostClasses, cssVars }) {
|
|
44
44
|
return css `
|
|
45
45
|
:host {
|
|
46
46
|
position: relative;
|
|
@@ -289,12 +289,20 @@ export const ViraInput = defineViraElement()({
|
|
|
289
289
|
};
|
|
290
290
|
},
|
|
291
291
|
hostClasses: {
|
|
292
|
-
'vira-input-disabled'
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
'vira-input-
|
|
292
|
+
'vira-input-disabled'({ inputs }) {
|
|
293
|
+
return !!inputs.disabled;
|
|
294
|
+
},
|
|
295
|
+
'vira-input-fit-text'({ inputs }) {
|
|
296
|
+
return !!inputs.fitText;
|
|
297
|
+
},
|
|
298
|
+
'vira-input-clear-button-shown'({ inputs }) {
|
|
299
|
+
return !!inputs.showClearButton;
|
|
300
|
+
},
|
|
301
|
+
'vira-input-error'({ inputs }) {
|
|
302
|
+
return !!inputs.hasError;
|
|
303
|
+
},
|
|
296
304
|
},
|
|
297
|
-
render
|
|
305
|
+
render({ inputs, dispatch, state, updateState, events, host }) {
|
|
298
306
|
const { filtered: filteredValue } = filterTextInputValue({
|
|
299
307
|
value: inputs.value,
|
|
300
308
|
allowed: inputs.allowedInputs,
|
|
@@ -380,10 +388,14 @@ export const ViraInput = defineViraElement()({
|
|
|
380
388
|
previousValue: filteredValue,
|
|
381
389
|
event,
|
|
382
390
|
inputBlockedCallback(blockedInput) {
|
|
383
|
-
dispatch(new events.inputBlocked(
|
|
391
|
+
dispatch(new events.inputBlocked({
|
|
392
|
+
detail: blockedInput,
|
|
393
|
+
}));
|
|
384
394
|
},
|
|
385
395
|
newValueCallback(newValue) {
|
|
386
|
-
dispatch(new events.valueChange(
|
|
396
|
+
dispatch(new events.valueChange({
|
|
397
|
+
detail: newValue,
|
|
398
|
+
}));
|
|
387
399
|
},
|
|
388
400
|
});
|
|
389
401
|
})}
|
|
@@ -403,7 +415,9 @@ export const ViraInput = defineViraElement()({
|
|
|
403
415
|
if (inputs.disabled) {
|
|
404
416
|
return;
|
|
405
417
|
}
|
|
406
|
-
dispatch(new events.valueChange(
|
|
418
|
+
dispatch(new events.valueChange({
|
|
419
|
+
detail: '',
|
|
420
|
+
}));
|
|
407
421
|
})}
|
|
408
422
|
>
|
|
409
423
|
<${ViraIcon.assign({
|
|
@@ -31,5 +31,5 @@ export declare const ViraJsonForm: import("element-vir").DeclarativeElementDefin
|
|
|
31
31
|
rawDraft: string | undefined;
|
|
32
32
|
rawError: string | undefined;
|
|
33
33
|
}, {
|
|
34
|
-
valueChange: import("element-vir").
|
|
34
|
+
valueChange: import("element-vir").DefineElementEvent<JsonValue>;
|
|
35
35
|
}, "vira-json-form-", "vira-json-form-", readonly [], readonly []>;
|
|
@@ -208,7 +208,9 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
208
208
|
return entry == undefined ? 'null' : String(entry);
|
|
209
209
|
}
|
|
210
210
|
function emitRoot(newRoot) {
|
|
211
|
-
dispatch(new events.valueChange(
|
|
211
|
+
dispatch(new events.valueChange({
|
|
212
|
+
detail: newRoot,
|
|
213
|
+
}));
|
|
212
214
|
}
|
|
213
215
|
function emitReplaceAt(path, newValue) {
|
|
214
216
|
emitRoot(setValueAtPath({
|
|
@@ -448,7 +450,9 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
448
450
|
return renderPlusButton({
|
|
449
451
|
isAddDisabled,
|
|
450
452
|
tooltip: isAddDisabled ? disabledReason : `Add ${viraJsonTypeLabels[onlyType]}`,
|
|
451
|
-
onClick
|
|
453
|
+
onClick() {
|
|
454
|
+
return onAdd(onlyType);
|
|
455
|
+
},
|
|
452
456
|
});
|
|
453
457
|
}
|
|
454
458
|
const selectedType = getPendingType(pathKey, allowedTypes);
|
|
@@ -472,7 +476,9 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
472
476
|
tooltip: isAddDisabled
|
|
473
477
|
? disabledReason
|
|
474
478
|
: `Add ${viraJsonTypeLabels[selectedType]}`,
|
|
475
|
-
onClick
|
|
479
|
+
onClick() {
|
|
480
|
+
return onAdd(selectedType);
|
|
481
|
+
},
|
|
476
482
|
})}
|
|
477
483
|
`;
|
|
478
484
|
}
|
|
@@ -490,7 +496,9 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
490
496
|
return renderPlusButton({
|
|
491
497
|
isAddDisabled: false,
|
|
492
498
|
tooltip: `Add ${viraJsonTypeLabels[onlyType]}`,
|
|
493
|
-
onClick
|
|
499
|
+
onClick() {
|
|
500
|
+
return onAdd(createDefaultForJsonType(onlyType));
|
|
501
|
+
},
|
|
494
502
|
});
|
|
495
503
|
}
|
|
496
504
|
const fallback = createDefaultForJsonType(onlyType);
|
|
@@ -503,7 +511,7 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
503
511
|
${renderPlusButton({
|
|
504
512
|
isAddDisabled: false,
|
|
505
513
|
tooltip: `Add ${viraJsonTypeLabels[onlyType]}`,
|
|
506
|
-
onClick
|
|
514
|
+
onClick() {
|
|
507
515
|
onAdd(pendingValue);
|
|
508
516
|
clearPending(pathKey);
|
|
509
517
|
},
|
|
@@ -530,7 +538,9 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
530
538
|
${renderPlusButton({
|
|
531
539
|
isAddDisabled: false,
|
|
532
540
|
tooltip: `Add ${viraJsonTypeLabels[selectedType]}`,
|
|
533
|
-
onClick
|
|
541
|
+
onClick() {
|
|
542
|
+
return onAdd(createDefaultForJsonType(selectedType));
|
|
543
|
+
},
|
|
534
544
|
})}
|
|
535
545
|
`;
|
|
536
546
|
}
|
|
@@ -651,7 +661,7 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
651
661
|
allowedTypes: additionalAllowedTypes,
|
|
652
662
|
canAdd: canAddArbitraryField,
|
|
653
663
|
disabledReason: arbitraryAddDisabledReason,
|
|
654
|
-
onAdd
|
|
664
|
+
onAdd(type) {
|
|
655
665
|
if (!canAddArbitraryField) {
|
|
656
666
|
return;
|
|
657
667
|
}
|
|
@@ -751,7 +761,7 @@ export const ViraJsonForm = defineViraElement()({
|
|
|
751
761
|
${renderArrayAddControl({
|
|
752
762
|
pathKey,
|
|
753
763
|
allowedTypes: allowedItemTypes,
|
|
754
|
-
onAdd
|
|
764
|
+
onAdd(newValue) {
|
|
755
765
|
emitReplaceAt([
|
|
756
766
|
...path,
|
|
757
767
|
value.length,
|
|
@@ -20,9 +20,11 @@ export const ViraLink = defineViraElement()({
|
|
|
20
20
|
};
|
|
21
21
|
},
|
|
22
22
|
hostClasses: {
|
|
23
|
-
'vira-link-link-styles'
|
|
23
|
+
'vira-link-link-styles'({ inputs }) {
|
|
24
|
+
return !inputs.disableLinkStyles;
|
|
25
|
+
},
|
|
24
26
|
},
|
|
25
|
-
styles
|
|
27
|
+
styles({ hostClasses }) {
|
|
26
28
|
return css `
|
|
27
29
|
:host {
|
|
28
30
|
display: inline;
|
|
@@ -72,7 +74,7 @@ export const ViraLink = defineViraElement()({
|
|
|
72
74
|
}),
|
|
73
75
|
];
|
|
74
76
|
updateState({
|
|
75
|
-
cleanupListeners
|
|
77
|
+
cleanupListeners() {
|
|
76
78
|
listenerRemovers.forEach((remover) => remover());
|
|
77
79
|
},
|
|
78
80
|
});
|
|
@@ -36,5 +36,5 @@ export declare const ViraModal: import("element-vir").DeclarativeElementDefiniti
|
|
|
36
36
|
/** Remove listeners. */
|
|
37
37
|
cleanupListeners: undefined | (() => void);
|
|
38
38
|
}, {
|
|
39
|
-
modalClose: import("element-vir").
|
|
39
|
+
modalClose: import("element-vir").DefineElementEvent<void>;
|
|
40
40
|
}, "vira-modal-phone-size" | "vira-modal-no-content-padding", "vira-modal-backdrop-filter" | "vira-modal-border-radius", readonly ["vira-modal-modal-title"], readonly []>;
|
|
@@ -40,15 +40,19 @@ export const ViraModal = defineViraElement()({
|
|
|
40
40
|
state.cleanupListeners?.();
|
|
41
41
|
},
|
|
42
42
|
hostClasses: {
|
|
43
|
-
'vira-modal-phone-size'
|
|
44
|
-
|
|
43
|
+
'vira-modal-phone-size'({ inputs }) {
|
|
44
|
+
return !!inputs.isMobileSize;
|
|
45
|
+
},
|
|
46
|
+
'vira-modal-no-content-padding'({ inputs }) {
|
|
47
|
+
return !!inputs.noContentPadding;
|
|
48
|
+
},
|
|
45
49
|
},
|
|
46
50
|
slotNames: ['vira-modal-modal-title'],
|
|
47
51
|
cssVars: {
|
|
48
52
|
'vira-modal-backdrop-filter': 'blur(3px)',
|
|
49
53
|
'vira-modal-border-radius': '8px',
|
|
50
54
|
},
|
|
51
|
-
styles
|
|
55
|
+
styles({ hostClasses, cssVars }) {
|
|
52
56
|
return css `
|
|
53
57
|
:host {
|
|
54
58
|
display: contents;
|
|
@@ -177,11 +181,13 @@ export const ViraModal = defineViraElement()({
|
|
|
177
181
|
if (inputs.open) {
|
|
178
182
|
const removers = globalEventsToCloseModalOn.map((eventName) => {
|
|
179
183
|
return listenToGlobal(eventName, () => {
|
|
180
|
-
dispatch(new events.modalClose(
|
|
184
|
+
dispatch(new events.modalClose({
|
|
185
|
+
detail: undefined,
|
|
186
|
+
}));
|
|
181
187
|
});
|
|
182
188
|
});
|
|
183
189
|
updateState({
|
|
184
|
-
cleanupListeners
|
|
190
|
+
cleanupListeners() {
|
|
185
191
|
removers.forEach((remover) => remover());
|
|
186
192
|
},
|
|
187
193
|
});
|
|
@@ -190,7 +196,9 @@ export const ViraModal = defineViraElement()({
|
|
|
190
196
|
function close() {
|
|
191
197
|
if (inputs.open) {
|
|
192
198
|
state.cleanupListeners?.();
|
|
193
|
-
dispatch(new events.modalClose(
|
|
199
|
+
dispatch(new events.modalClose({
|
|
200
|
+
detail: undefined,
|
|
201
|
+
}));
|
|
194
202
|
}
|
|
195
203
|
}
|
|
196
204
|
return html `
|
|
@@ -22,7 +22,7 @@ export const ViraProgress = defineViraElement()({
|
|
|
22
22
|
'vira-progress-border-radius': '99999999px',
|
|
23
23
|
'vira-progress-height': '8px',
|
|
24
24
|
},
|
|
25
|
-
styles
|
|
25
|
+
styles({ cssVars }) {
|
|
26
26
|
return css `
|
|
27
27
|
:host {
|
|
28
28
|
/* Default width that can easily be overridden because it's applied on the host. */
|
|
@@ -40,5 +40,5 @@ export declare const ViraSelect: import("element-vir").DeclarativeElementDefinit
|
|
|
40
40
|
/** Removes event listeners registered during init. */
|
|
41
41
|
cleanupListeners: undefined | (() => void);
|
|
42
42
|
}, {
|
|
43
|
-
valueChange: import("element-vir").
|
|
43
|
+
valueChange: import("element-vir").DefineElementEvent<string>;
|
|
44
44
|
}, "vira-select-disabled" | "vira-select-error" | "vira-select-has-label" | "vira-select-not-raw" | "vira-select-readonly", "vira-select-padding-horizontal" | "vira-select-padding-vertical" | "vira-select-icon-padding", readonly [], readonly []>;
|
|
@@ -53,13 +53,23 @@ export const ViraSelect = defineViraElement()({
|
|
|
53
53
|
'vira-select-icon-padding': '44px',
|
|
54
54
|
},
|
|
55
55
|
hostClasses: {
|
|
56
|
-
'vira-select-disabled'
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
'vira-select-
|
|
60
|
-
|
|
56
|
+
'vira-select-disabled'({ inputs }) {
|
|
57
|
+
return !!inputs.disabled;
|
|
58
|
+
},
|
|
59
|
+
'vira-select-error'({ inputs }) {
|
|
60
|
+
return !!inputs.hasError;
|
|
61
|
+
},
|
|
62
|
+
'vira-select-has-label'({ inputs }) {
|
|
63
|
+
return !!inputs.label;
|
|
64
|
+
},
|
|
65
|
+
'vira-select-not-raw'({ inputs }) {
|
|
66
|
+
return !inputs.rawSelect;
|
|
67
|
+
},
|
|
68
|
+
'vira-select-readonly'({ inputs }) {
|
|
69
|
+
return !!inputs.isReadonly;
|
|
70
|
+
},
|
|
61
71
|
},
|
|
62
|
-
styles
|
|
72
|
+
styles({ hostClasses, cssVars }) {
|
|
63
73
|
return css `
|
|
64
74
|
:host {
|
|
65
75
|
position: relative;
|
|
@@ -287,7 +297,7 @@ export const ViraSelect = defineViraElement()({
|
|
|
287
297
|
}),
|
|
288
298
|
];
|
|
289
299
|
updateState({
|
|
290
|
-
cleanupListeners
|
|
300
|
+
cleanupListeners() {
|
|
291
301
|
listenerRemovers.forEach((remover) => remover());
|
|
292
302
|
},
|
|
293
303
|
});
|
|
@@ -352,7 +362,9 @@ export const ViraSelect = defineViraElement()({
|
|
|
352
362
|
})
|
|
353
363
|
.findIndex((option) => option.value === value);
|
|
354
364
|
}
|
|
355
|
-
dispatch(new events.valueChange(
|
|
365
|
+
dispatch(new events.valueChange({
|
|
366
|
+
detail: newValue,
|
|
367
|
+
}));
|
|
356
368
|
})}
|
|
357
369
|
${attributes(inputs.attributePassthrough?.select)}
|
|
358
370
|
>
|
|
@@ -120,5 +120,5 @@ export declare const ViraTabs: import("element-vir").DeclarativeElementDefinitio
|
|
|
120
120
|
cleanupObserver: undefined | (() => void);
|
|
121
121
|
}, {
|
|
122
122
|
/** Fires when a tab is clicked with the corresponding tab entry. */
|
|
123
|
-
tabSelect: import("element-vir").
|
|
124
|
-
}, "vira-tabs-
|
|
123
|
+
tabSelect: import("element-vir").DefineElementEvent<Readonly<ViraTab>>;
|
|
124
|
+
}, "vira-tabs-color-red" | "vira-tabs-color-yellow" | "vira-tabs-color-green" | "vira-tabs-color-blue" | "vira-tabs-color-brand" | "vira-tabs-color-purple" | "vira-tabs-color-plain" | "vira-tabs-color-neutral" | "vira-tabs-color-teal" | "vira-tabs-color-pink" | "vira-tabs-color-grey" | "vira-tabs-icon-layout-vertical" | "vira-tabs-icon-layout-horizontal" | "vira-tabs-fill-width" | "vira-tabs-bar-top" | "vira-tabs-bar-bottom" | "vira-tabs-bar-left" | "vira-tabs-bar-right", "vira-tabs-active-color" | "vira-tabs-active-hover-color" | "vira-tabs-inactive-color" | "vira-tabs-inactive-hover-color" | "vira-tabs-bar-thickness", readonly [], readonly []>;
|