@riverty/web-components 5.6.0 → 5.8.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/CHANGELOG.md +56 -0
- package/custom-elements.json +28 -3
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/r-alert.cjs.entry.js +24 -8
- package/dist/cjs/r-badge.cjs.entry.js +1 -1
- package/dist/cjs/r-button.cjs.entry.js +1 -1
- package/dist/cjs/r-checkbox-group.cjs.entry.js +28 -14
- package/dist/cjs/r-checkbox.cjs.entry.js +25 -10
- package/dist/cjs/r-hint_3.cjs.entry.js +1 -1
- package/dist/cjs/r-icon-button.cjs.entry.js +1 -1
- package/dist/cjs/r-icon.cjs.entry.js +1 -1
- package/dist/cjs/r-input-code.cjs.entry.js +30 -17
- package/dist/cjs/r-input-date.cjs.entry.js +86 -16
- package/dist/cjs/r-input-password.cjs.entry.js +25 -9
- package/dist/cjs/r-input-phone-number.cjs.entry.js +27 -14
- package/dist/cjs/r-input.cjs.entry.js +27 -14
- package/dist/cjs/r-pagination.cjs.entry.js +1 -1
- package/dist/cjs/r-popover-action.cjs.entry.js +1 -1
- package/dist/cjs/r-popover.cjs.entry.js +1 -1
- package/dist/cjs/r-radio-button.cjs.entry.js +1 -1
- package/dist/cjs/r-radio-group.cjs.entry.js +21 -17
- package/dist/cjs/r-select.cjs.entry.js +113 -19
- package/dist/cjs/r-textarea.cjs.entry.js +19 -6
- package/dist/cjs/r-toast.cjs.entry.js +50 -19
- package/dist/cjs/web-components.cjs.js +1 -1
- package/dist/collection/components/alert/alert.css +56 -16
- package/dist/collection/components/alert/alert.js +48 -11
- package/dist/collection/components/alert/exports.js +1 -1
- package/dist/collection/components/badge/badge.css +8 -8
- package/dist/collection/components/button/button.css +6 -7
- package/dist/collection/components/checkbox/checkbox.js +45 -10
- package/dist/collection/components/checkbox-group/checkbox-group.css +2 -2
- package/dist/collection/components/checkbox-group/checkbox-group.js +47 -13
- package/dist/collection/components/hint/hint.css +1 -1
- package/dist/collection/components/icon/bundled-icons/riverty-kit.json +1 -1
- package/dist/collection/components/icon/riverty-kit.js +1 -1
- package/dist/collection/components/icon-button/icon-button.css +0 -7
- package/dist/collection/components/input/input.css +1 -1
- package/dist/collection/components/input/input.js +46 -13
- package/dist/collection/components/input-code/input-code.css +1 -1
- package/dist/collection/components/input-code/input-code.js +49 -16
- package/dist/collection/components/input-date/input-date.css +1 -1
- package/dist/collection/components/input-date/input-date.js +235 -16
- package/dist/collection/components/input-password/input-password.js +45 -9
- package/dist/collection/components/input-phone-number/input-phone-number.js +47 -14
- package/dist/collection/components/pagination/pagination.css +23 -23
- package/dist/collection/components/popover/popover.css +11 -3
- package/dist/collection/components/popover-action/popover-action.css +3 -5
- package/dist/collection/components/radio-button/radio-button.css +1 -1
- package/dist/collection/components/radio-group/radio-group.css +2 -2
- package/dist/collection/components/radio-group/radio-group.js +21 -17
- package/dist/collection/components/select/select.css +2 -2
- package/dist/collection/components/select/select.js +193 -21
- package/dist/collection/components/textarea/textarea.css +1 -1
- package/dist/collection/components/textarea/textarea.js +38 -5
- package/dist/collection/components/toast/toast.css +29 -21
- package/dist/collection/components/toast/toast.js +94 -20
- package/dist/esm/loader.js +1 -1
- package/dist/esm/r-alert.entry.js +24 -8
- package/dist/esm/r-badge.entry.js +1 -1
- package/dist/esm/r-button.entry.js +1 -1
- package/dist/esm/r-checkbox-group.entry.js +28 -14
- package/dist/esm/r-checkbox.entry.js +25 -10
- package/dist/esm/r-hint_3.entry.js +1 -1
- package/dist/esm/r-icon-button.entry.js +1 -1
- package/dist/esm/r-icon.entry.js +1 -1
- package/dist/esm/r-input-code.entry.js +30 -17
- package/dist/esm/r-input-date.entry.js +86 -16
- package/dist/esm/r-input-password.entry.js +25 -9
- package/dist/esm/r-input-phone-number.entry.js +27 -14
- package/dist/esm/r-input.entry.js +27 -14
- package/dist/esm/r-pagination.entry.js +1 -1
- package/dist/esm/r-popover-action.entry.js +1 -1
- package/dist/esm/r-popover.entry.js +1 -1
- package/dist/esm/r-radio-button.entry.js +1 -1
- package/dist/esm/r-radio-group.entry.js +21 -17
- package/dist/esm/r-select.entry.js +113 -19
- package/dist/esm/r-textarea.entry.js +19 -6
- package/dist/esm/r-toast.entry.js +50 -19
- package/dist/esm/web-components.js +1 -1
- package/dist/types/components/alert/alert.d.ts +3 -0
- package/dist/types/components/alert/exports.d.ts +1 -1
- package/dist/types/components/checkbox/checkbox.d.ts +5 -0
- package/dist/types/components/checkbox-group/checkbox-group.d.ts +6 -0
- package/dist/types/components/input/input.d.ts +5 -0
- package/dist/types/components/input-code/input-code.d.ts +5 -0
- package/dist/types/components/input-date/input-date.d.ts +30 -0
- package/dist/types/components/input-password/input-password.d.ts +5 -0
- package/dist/types/components/input-phone-number/input-phone-number.d.ts +5 -0
- package/dist/types/components/radio-group/radio-group.d.ts +1 -2
- package/dist/types/components/select/select.d.ts +34 -2
- package/dist/types/components/textarea/textarea.d.ts +5 -0
- package/dist/types/components/toast/toast.d.ts +10 -2
- package/dist/types/components.d.ts +143 -8
- package/dist/web-components/bundled-icons/riverty-kit.json +1 -1
- package/dist/web-components/p-15ac0fdd.entry.js +1 -0
- package/dist/web-components/p-1c956370.entry.js +1 -0
- package/dist/web-components/p-2a512983.entry.js +1 -0
- package/dist/web-components/p-2e18e762.entry.js +1 -0
- package/dist/web-components/{p-72c0c0d8.entry.js → p-3078b2b8.entry.js} +1 -1
- package/dist/web-components/p-56da04d8.entry.js +1 -0
- package/dist/web-components/p-5744d75c.entry.js +1 -0
- package/dist/web-components/p-5bbd6e3c.entry.js +1 -0
- package/dist/web-components/p-5e6aabd8.entry.js +1 -0
- package/dist/web-components/p-656229de.entry.js +1 -0
- package/dist/web-components/p-6a4f3836.entry.js +1 -0
- package/dist/web-components/p-7775228c.entry.js +1 -0
- package/dist/web-components/{p-29a1e75f.entry.js → p-7ad8e78b.entry.js} +1 -1
- package/dist/web-components/p-8563a1ab.entry.js +1 -0
- package/dist/web-components/p-ad9b2a48.entry.js +1 -0
- package/dist/web-components/{p-e49b1ec3.entry.js → p-b2f03016.entry.js} +1 -1
- package/dist/web-components/p-b87ad83b.entry.js +1 -0
- package/dist/web-components/{p-77155630.entry.js → p-b98ab649.entry.js} +1 -1
- package/dist/web-components/{p-f1e22caa.entry.js → p-d1379ac6.entry.js} +1 -1
- package/dist/web-components/p-dbe579e8.entry.js +1 -0
- package/dist/web-components/p-f2577a3c.entry.js +1 -0
- package/dist/web-components/web-components.esm.js +1 -1
- package/package.json +6 -6
- package/dist/web-components/p-1ae69897.entry.js +0 -1
- package/dist/web-components/p-230e44ae.entry.js +0 -1
- package/dist/web-components/p-44be9992.entry.js +0 -1
- package/dist/web-components/p-4652635a.entry.js +0 -1
- package/dist/web-components/p-8028c2a9.entry.js +0 -1
- package/dist/web-components/p-828cb164.entry.js +0 -1
- package/dist/web-components/p-89136369.entry.js +0 -1
- package/dist/web-components/p-8c577cda.entry.js +0 -1
- package/dist/web-components/p-96ddeb7f.entry.js +0 -1
- package/dist/web-components/p-9b08e9ee.entry.js +0 -1
- package/dist/web-components/p-9eb1f262.entry.js +0 -1
- package/dist/web-components/p-a58124c4.entry.js +0 -1
- package/dist/web-components/p-a5be3395.entry.js +0 -1
- package/dist/web-components/p-b2cec978.entry.js +0 -1
- package/dist/web-components/p-d3ff65b0.entry.js +0 -1
- package/dist/web-components/p-f770e22b.entry.js +0 -1
|
@@ -43,7 +43,7 @@ function requireCustomParseFormat () {
|
|
|
43
43
|
var customParseFormatExports = requireCustomParseFormat();
|
|
44
44
|
var customParseFormat = /*@__PURE__*/getDefaultExportFromCjs(customParseFormatExports);
|
|
45
45
|
|
|
46
|
-
const inputDateCss = ":host{display:inline-flex;flex-direction:column;vertical-align:top;--r-label--margin-bottom:0}:host slot{display:contents}:host([readonly]:not([readonly=false])){--r-input-date--container--background-color:var(--r-background-soft, #f3f1f0);--r-input-date--container--border-color:transparent transparent var(--r-border-soft, #686868) transparent;--r-input-date--container--cursor:text}:host(:hover:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input-date--container--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(:active:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input-date--container--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host([full-width]:not([full-width=false])){display:flex}:host([disabled]:not([disabled=false])){cursor:not-allowed;--r-input-date--container--opacity:0.4;--r-input-date--container--cursor:not-allowed;--r-input-date--container--pointer-events:none;--r-input-date--container--background-color:transparent}:host([invalid]:not([invalid=false])){--r-input-date--container--border-color:var(--r-status-error-regular, #
|
|
46
|
+
const inputDateCss = ":host{display:inline-flex;flex-direction:column;vertical-align:top;--r-label--margin-bottom:0}:host slot{display:contents}:host([readonly]:not([readonly=false])){--r-input-date--container--background-color:var(--r-background-soft, #f3f1f0);--r-input-date--container--border-color:transparent transparent var(--r-border-soft, #686868) transparent;--r-input-date--container--cursor:text}:host(:hover:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input-date--container--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(:active:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input-date--container--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host([full-width]:not([full-width=false])){display:flex}:host([disabled]:not([disabled=false])){cursor:not-allowed;--r-input-date--container--opacity:0.4;--r-input-date--container--cursor:not-allowed;--r-input-date--container--pointer-events:none;--r-input-date--container--background-color:transparent}:host([invalid]:not([invalid=false])){--r-input-date--container--border-color:var(--r-status-error-regular, #b00c15);--r-input-date--container--background-color:var(--r-status-error-soft, #fef6f6)}.r-input-date{padding:var(--r-input-date--padding, 0);margin:var(--r-input-date--margin, 0);border:var(--r-input-date--border, none)}.r-input-date--legend-container{display:var(--r-input-date--legend-container--display, flex);gap:var(--r-input-date--legend-container--gap, var(--r-spacing-100, 1rem));align-items:var(--r-input-date--legend-container--align-items, center);justify-content:var(--r-input-date--label-container--align-items, space-between)}.r-input-date--legend-container ::slotted([slot=popover]){display:var(--r-input-date--popover--display, inline-flex);height:var(--r-input-date--popover--height, var(--r-spacing-150, 1.5));align-items:var(--r-input-date--popover--align-items, center);justify-content:var(--r-input-date--popover--justify-content, center);margin-right:var(--r-input-date--popover--margin-right, -0.25rem);--r-popover--trigger--min-width:var(--r-input-date--popover-trigger--min-width, var(--r-spacing-150, 1.5));--r-popover--trigger--min-height:var(--r-input-date--popover--trigger--min-height, var(--r-spacing-150, 1.5))}.r-input-date--legend{padding:var(--r-input-date--label--padding, 0)}.r-input-date--container{position:var(--r-input-date--container--position, relative);display:var(--r-input-date--container--display, flex);align-items:var(--r-input-date--container--align-items, center);height:var(--r-input-date--container--height, var(--r-spacing-275, 2.75rem));font-family:var(--r-input-date--container--font-family, var(--r-font-family-text, system-ui));background-color:var(--r-input-date--container--background-color, var(--r-background-softest, #fff));border-width:var(--r-input-date--container--border-width, 1px);border-style:var(--r-input-date--container--border-style, solid);border-color:var(--r-input-date--container--border-color, var(--r-border-soft, #686868));box-sizing:var(--r-input-date--container--box-sizing, border-box);box-shadow:var(--r-input-date--container--box-shadow, none);outline:var(--r-input-date--container--outline, none);outline-offset:var(--r-input-date--container--outline-offset, 0);padding-right:var(--r-input-date--container--padding-right, 0.7em);padding-left:var(--r-input-date--container--padding-left, 0.7em);opacity:var(--r-input-date--container--opacity, 1);pointer-events:var(--r-input-date--container--pointer-events, auto);cursor:var(--r-input-date--container--cursor, inherit);margin-top:var(--r-input-date--container--margin-top, var(--r-spacing-025, 0.25rem));gap:var(--r-input-date--leading--gap, 0.625rem)}.r-input-date--container:has(input:focus-within){--r-input-date--container--box-shadow:0 0 0 6px var(--r-border-focused-outlined);--r-input-date--container--outline:2px solid var(--r-border-focused);--r-input-date--container--outline-offset:2px}.r-input-date--calendar-icon{color:var(--r-input-date--leading--color, var(--r-icon-soft, #686868))}.r-input-date--inputs{display:var(--r-input-date--inputs--display, flex);align-items:var(--r-input-date--inputs--align-items, center)}.r-input-date--input{max-width:var(--r-input-date--input--max-width, 2.625rem);field-sizing:var(--r-input-date--input--field-sizing, content);outline:var(--r-input-date--input--outline, none);height:var(--r-input-date--input--height, 100%);font-family:var(--r-input-date--input--font-family, inherit);font-size:var(--r-input-date--input--font-size, var(--r-font-size-400, 1rem));background-color:var(--r-input-date--input--background-color, transparent);border:var(--r-input-date--input--border, none);padding:var(--r-input-date--input--padding, 0)}.r-input-date--input[data-date-type=DD]{--r-input-date--input--max-width:1.5rem}.r-input-date--input[data-date-type=MM]{--r-input-date--input--max-width:1.75rem}.r-input-date--delimiter{padding-inline:var(--r-input-date--delimiter--padding-inline, var(--r-spacing-025, 0.25rem));margin-top:var(--r-input-date--delimiter--margin-top, -0.25rem);color:var(--r-input-date--delimiter--color, var(--r-border-regular, #282828));font-size:var(--r-input-date--delimiter--font-size, var(--r-spacing-150, 1.5rem));font-weight:var(--r-input-date--delimiter--font-weight, 200)}.r-input-date--message{margin-top:var(--r-input-date--message--margin-top, var(--r-spacing-025, 0.25rem))}.r-input-date--message:empty{--r-input-date--message--margin-top:0}.r-input-date--trailing{display:var(--r-input-date--trailing--display, flex);margin-left:var(--r-input-date--trailing--margin-left, auto);align-items:var(--r-input-date--trailing--align-items, center);gap:var(--r-input-date--trailing--gap, 0.625rem)}.r-input-date--readonly-icon{color:var(--r-input-date--readonly-icon--color, var(--r-icon-soft, #686868))}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}";
|
|
47
47
|
|
|
48
48
|
const InputDate = class {
|
|
49
49
|
constructor(hostRef) {
|
|
@@ -70,6 +70,10 @@ const InputDate = class {
|
|
|
70
70
|
this.validityState = '';
|
|
71
71
|
/** Validity message passed from validateFormElement function after validation */
|
|
72
72
|
this.validityMessage = '';
|
|
73
|
+
/** Defines if the component has been touched by user */
|
|
74
|
+
this.touched = false;
|
|
75
|
+
/** Defines if the value has been changed by user interaction */
|
|
76
|
+
this.dirty = false;
|
|
73
77
|
/**
|
|
74
78
|
* Initial attributes state
|
|
75
79
|
* */
|
|
@@ -160,6 +164,7 @@ const InputDate = class {
|
|
|
160
164
|
if (this.readonly)
|
|
161
165
|
return;
|
|
162
166
|
if (event.code === 'Enter') {
|
|
167
|
+
this.touched = true;
|
|
163
168
|
this.validateFormElement(this.nativeElement);
|
|
164
169
|
if (this.invalid && !this.isNoValidate)
|
|
165
170
|
return;
|
|
@@ -210,6 +215,8 @@ const InputDate = class {
|
|
|
210
215
|
if (this.readonly)
|
|
211
216
|
return;
|
|
212
217
|
this.value = event.clipboardData.getData('text');
|
|
218
|
+
this.touched = true;
|
|
219
|
+
this.dirty = true;
|
|
213
220
|
event.preventDefault();
|
|
214
221
|
};
|
|
215
222
|
this.createInputHandler = (input, index) => {
|
|
@@ -227,7 +234,10 @@ const InputDate = class {
|
|
|
227
234
|
index < this.inputOrder.length - 1) {
|
|
228
235
|
(_c = this.inputs[index + 1]) === null || _c === void 0 ? void 0 : _c.focus();
|
|
229
236
|
}
|
|
237
|
+
this.touched = true;
|
|
238
|
+
this.dirty = true;
|
|
230
239
|
this.rInput.emit({ element: this.host, value: this.value });
|
|
240
|
+
this.validateFormElement(this.nativeElement);
|
|
231
241
|
};
|
|
232
242
|
this.createChangeHandler = (input) => {
|
|
233
243
|
return (e) => this.handleChange(input, e);
|
|
@@ -240,29 +250,64 @@ const InputDate = class {
|
|
|
240
250
|
event.target.value = value;
|
|
241
251
|
this.setDateComponent(input, value);
|
|
242
252
|
this.value = this.inputOrder.map((el) => this.getDateComponent(el)).join(this.delimiter);
|
|
253
|
+
this.touched = true;
|
|
254
|
+
this.dirty = true;
|
|
243
255
|
this.rChange.emit({ element: this.host, value: this.value });
|
|
244
256
|
this.validateFormElement(this.nativeElement);
|
|
245
257
|
};
|
|
258
|
+
this.handleBlur = () => {
|
|
259
|
+
this.touched = true;
|
|
260
|
+
this.validateFormElement(this.nativeElement);
|
|
261
|
+
};
|
|
246
262
|
this.getValidityStateData = (element) => {
|
|
263
|
+
let validityState = '';
|
|
264
|
+
let validityMessage = '';
|
|
247
265
|
if (this.required && element.value.length === 0) {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
return;
|
|
266
|
+
validityState = 'valueMissing';
|
|
267
|
+
validityMessage = this.valueMissingMessage;
|
|
268
|
+
return { validityState, validityMessage };
|
|
251
269
|
}
|
|
252
|
-
const valid = dayjs(this.value, this.format, true).isValid();
|
|
270
|
+
const valid = this.value ? dayjs(this.value, this.format, true).isValid() : true;
|
|
253
271
|
if (!valid) {
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
return;
|
|
272
|
+
validityState = 'invalid';
|
|
273
|
+
validityMessage = this.invalidDateMessage;
|
|
274
|
+
return { validityState, validityMessage };
|
|
257
275
|
}
|
|
258
|
-
|
|
276
|
+
// Check min/max constraints only if date is valid and has a value
|
|
277
|
+
// Note: min and max are expected to be in the same format as this.format
|
|
278
|
+
// If format changes, the developer should update min/max accordingly
|
|
279
|
+
if (this.value && valid) {
|
|
280
|
+
const currentDate = dayjs(this.value, this.format, true);
|
|
281
|
+
// Check minimum date constraint
|
|
282
|
+
if (this.min) {
|
|
283
|
+
const minDate = dayjs(this.min, this.format, true);
|
|
284
|
+
if (minDate.isValid() && currentDate.isBefore(minDate, 'day')) {
|
|
285
|
+
validityState = 'rangeUnderflow';
|
|
286
|
+
validityMessage = this.rangeUnderflowMessage;
|
|
287
|
+
return { validityState, validityMessage };
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
// Check maximum date constraint
|
|
291
|
+
if (this.max) {
|
|
292
|
+
const maxDate = dayjs(this.max, this.format, true);
|
|
293
|
+
if (maxDate.isValid() && currentDate.isAfter(maxDate, 'day')) {
|
|
294
|
+
validityState = 'rangeOverflow';
|
|
295
|
+
validityMessage = this.rangeOverflowMessage;
|
|
296
|
+
return { validityState, validityMessage };
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
validityState = 'valid';
|
|
301
|
+
return { validityState, validityMessage };
|
|
259
302
|
};
|
|
260
303
|
this.validateFormElement = (element) => {
|
|
261
304
|
if (element === null)
|
|
262
305
|
return;
|
|
263
306
|
if (this.isNoValidate)
|
|
264
307
|
return;
|
|
265
|
-
this.getValidityStateData(element);
|
|
308
|
+
const { validityState, validityMessage } = this.getValidityStateData(element);
|
|
309
|
+
this.validityState = validityState;
|
|
310
|
+
this.validityMessage = validityMessage;
|
|
266
311
|
const isValid = this.validityState === 'valid';
|
|
267
312
|
this.valid = isValid;
|
|
268
313
|
this.invalid = !isValid;
|
|
@@ -311,6 +356,8 @@ const InputDate = class {
|
|
|
311
356
|
}
|
|
312
357
|
handleValueChange() {
|
|
313
358
|
this.setCurrentValues();
|
|
359
|
+
if (this.touched)
|
|
360
|
+
this.validateFormElement(this.nativeElement);
|
|
314
361
|
}
|
|
315
362
|
/** Get the date value */
|
|
316
363
|
async getValue() {
|
|
@@ -318,6 +365,7 @@ const InputDate = class {
|
|
|
318
365
|
}
|
|
319
366
|
/** Sets the date value */
|
|
320
367
|
async setValue(value) {
|
|
368
|
+
this.nativeElement.value = value;
|
|
321
369
|
this.value = value;
|
|
322
370
|
}
|
|
323
371
|
/** Gets the current date format */
|
|
@@ -328,6 +376,19 @@ const InputDate = class {
|
|
|
328
376
|
async setFormat(format) {
|
|
329
377
|
this.format = format;
|
|
330
378
|
}
|
|
379
|
+
/** Gets the touched state (whether user has interacted with the input) */
|
|
380
|
+
async isTouched() {
|
|
381
|
+
return this.touched;
|
|
382
|
+
}
|
|
383
|
+
/** Gets the dirty state (whether value has been changed by user) */
|
|
384
|
+
async isDirty() {
|
|
385
|
+
return this.dirty;
|
|
386
|
+
}
|
|
387
|
+
/** Resets touched and dirty states to pristine (untouched/clean) */
|
|
388
|
+
async markAsPristine() {
|
|
389
|
+
this.touched = false;
|
|
390
|
+
this.dirty = false;
|
|
391
|
+
}
|
|
331
392
|
/**
|
|
332
393
|
* Resets the component by clearing all input values and focusing the first input.
|
|
333
394
|
* @returns Promise that resolves when reset is complete
|
|
@@ -335,6 +396,7 @@ const InputDate = class {
|
|
|
335
396
|
async reset() {
|
|
336
397
|
if (this.readonly)
|
|
337
398
|
return;
|
|
399
|
+
this.markAsPristine();
|
|
338
400
|
this.validityState = null;
|
|
339
401
|
this.validityMessage = null;
|
|
340
402
|
this.value = this.initial['value'];
|
|
@@ -342,6 +404,14 @@ const InputDate = class {
|
|
|
342
404
|
this.format = this.initial['format'];
|
|
343
405
|
this.valid = !this.invalid;
|
|
344
406
|
}
|
|
407
|
+
/**
|
|
408
|
+
* Validates the input date without triggering UI and returns a boolean indicating its validity.
|
|
409
|
+
* @returns A boolean indicating whether the input date is valid.
|
|
410
|
+
*/
|
|
411
|
+
async checkValidity() {
|
|
412
|
+
const { validityState } = this.getValidityStateData(this.nativeElement);
|
|
413
|
+
return validityState === 'valid';
|
|
414
|
+
}
|
|
345
415
|
get inputs() {
|
|
346
416
|
return Array.from(this.host.shadowRoot.querySelectorAll('input[data-date-type]'));
|
|
347
417
|
}
|
|
@@ -435,14 +505,14 @@ const InputDate = class {
|
|
|
435
505
|
id: `${uniqueId}-label`,
|
|
436
506
|
fieldIndicator
|
|
437
507
|
} : {};
|
|
438
|
-
return (index.h(index.Host, { key: '
|
|
508
|
+
return (index.h(index.Host, { key: '00e6bbea2dcaf1e88b4587fa9df6165a2c28c134', onClick: this.onHostClick, "data-touched": `${this.touched}`, "data-dirty": `${this.dirty}` }, index.h("fieldset", Object.assign({ key: '94d107ad0f00608263df3f47b0c2240d93a01c4e', class: "r-input-date" }, groupAttrs), index.h("div", { key: '3ac5991c7b8754f2fa94c8053f60af17a99301e0', class: "r-input-date--legend-container" }, index.h("legend", { key: '62fc7c2b6af2f7911c11f135432323621dd278b8', class: "r-input-date--legend" }, index.h("label", { key: 'd161f2b149ca1295c6e96746520c6ef1cf2e23ba', htmlFor: uniqueId }, label ?
|
|
439
509
|
index.h("r-label", Object.assign({}, labelAttr, tooltipAttrs), label)
|
|
440
510
|
:
|
|
441
|
-
index.h("slot", { name: "label" }))), index.h("slot", { key: '
|
|
442
|
-
index.h("r-hint", { key: '
|
|
443
|
-
index.h("span", { "aria-hidden": "true", class: "r-input-date--delimiter" }, this.delimiter)))), index.h("input", Object.assign({ key: '
|
|
444
|
-
index.h("r-icon", { key: '
|
|
445
|
-
index.h("r-icon", { key: '
|
|
511
|
+
index.h("slot", { name: "label" }))), index.h("slot", { key: '81c9e7753273c5e7d6db5d6a1f0fad8398a57c0a', name: "popover" })), hint &&
|
|
512
|
+
index.h("r-hint", { key: '0814c3ef100ed6a8512b2f15d5b59e01664bd811', id: `${uniqueId}-hint`, role: "note" }, hint), index.h("div", { key: '65247f18a297ef6a5751ab86e1123271ed8759f7', class: "r-input-date--container" }, index.h("r-icon", { key: 'fce4150b7c1b801752e1a67339b1a599728b0631', name: "calendar", size: "s", class: "r-input-date--calendar-icon" }), index.h("div", { key: '3b5e4776102b06acd9626477c702d2dc52ef681c', class: "r-input-date--inputs" }, this.inputOrder.map((input, i) => (index.h(index.Fragment, null, index.h("input", Object.assign({ class: "r-input-date--input" }, this.getInputAttrs(input), { key: input, value: this.getDateComponent(input), onInput: this.createInputHandler(input, i), onChange: this.createChangeHandler(input), onClick: this.onInputClick, onBlur: this.handleBlur, onKeyDown: this.createKeyDownHandler(i), onPaste: this.handlePaste })), i < this.inputOrder.length - 1 &&
|
|
513
|
+
index.h("span", { "aria-hidden": "true", class: "r-input-date--delimiter" }, this.delimiter)))), index.h("input", Object.assign({ key: '2c181871c97962a35988eb406c09a05c8f27181d', type: "hidden" }, dateInputAttrs, { value: this.value, ref: (el) => this.nativeElement = el }))), index.h("div", { key: '8c694c11cc7ea4ecc23484d3f014cc865e0c56ad', class: "r-input-date--trailing" }, this.readonly &&
|
|
514
|
+
index.h("r-icon", { key: '8ed65eaef19f280381b7c0fae206163f3adeb5f4', class: "r-input-date--readonly-icon", name: "pen-disabled", size: "s" }), valid &&
|
|
515
|
+
index.h("r-icon", { key: 'aef55123b4b001576b482e0be4eff0df6dc97930', name: "circled-check", size: "s", color: "var(--r-status-success-regular)" }), this.hasTrailingSlot && index.h("slot", { key: 'd92dcda80b7434af1f8ed781329ce8f2e6734225', name: "trailing" }))), index.h("div", { key: '139792ccc090b29f041e3a731f65e5916379b911', id: `${uniqueId}-message`, "aria-live": "polite", class: "r-input-date--message" }, this.hasMessage && index.h("r-hint", { key: '74d444c9748c032e844c0772b8758873bdaef391', variant: "error" }, this.message)))));
|
|
446
516
|
}
|
|
447
517
|
get host() { return index.getElement(this); }
|
|
448
518
|
static get watchers() { return {
|
|
@@ -61,16 +61,19 @@ const InputPassword = class {
|
|
|
61
61
|
this.rChange.emit({ element: host, value });
|
|
62
62
|
};
|
|
63
63
|
this.getValidityStateData = (element) => {
|
|
64
|
+
let validityState = '';
|
|
65
|
+
let validityMessage = '';
|
|
64
66
|
for (const state in element.validity) {
|
|
65
67
|
if (element.validity[state]) {
|
|
66
|
-
|
|
68
|
+
validityState = state;
|
|
67
69
|
if (this[state + 'Message']) {
|
|
68
|
-
|
|
69
|
-
return;
|
|
70
|
+
validityMessage = this[state + 'Message'];
|
|
71
|
+
return { validityState, validityMessage };
|
|
70
72
|
}
|
|
71
|
-
|
|
73
|
+
validityMessage = element.validationMessage;
|
|
72
74
|
}
|
|
73
75
|
}
|
|
76
|
+
return { validityState, validityMessage };
|
|
74
77
|
};
|
|
75
78
|
this.validateFormElement = (element) => {
|
|
76
79
|
if (element === null)
|
|
@@ -79,7 +82,9 @@ const InputPassword = class {
|
|
|
79
82
|
return;
|
|
80
83
|
if (this.error)
|
|
81
84
|
return;
|
|
82
|
-
this.getValidityStateData(element.shadowRoot.querySelector('input'));
|
|
85
|
+
const { validityState, validityMessage } = this.getValidityStateData(element.shadowRoot.querySelector('input'));
|
|
86
|
+
this.validityState = validityState;
|
|
87
|
+
this.validityMessage = validityMessage;
|
|
83
88
|
const isValid = this.validityState === 'valid';
|
|
84
89
|
this.valid = isValid;
|
|
85
90
|
this.invalid = !isValid;
|
|
@@ -157,11 +162,22 @@ const InputPassword = class {
|
|
|
157
162
|
}
|
|
158
163
|
/** Get the input value */
|
|
159
164
|
async getValue() {
|
|
160
|
-
return this.
|
|
165
|
+
return this.value || '';
|
|
161
166
|
}
|
|
162
167
|
/** Set the input value */
|
|
163
168
|
async setValue(value) {
|
|
164
|
-
this.
|
|
169
|
+
if (this.readonly)
|
|
170
|
+
return;
|
|
171
|
+
this.value = value;
|
|
172
|
+
this.validateFormElement(this.nativeElement);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Validates the input password without triggering UI and returns a boolean indicating its validity.
|
|
176
|
+
* @returns A boolean indicating whether the input password is valid.
|
|
177
|
+
*/
|
|
178
|
+
async checkValidity() {
|
|
179
|
+
const { validityState } = this.getValidityStateData(this.nativeElement.shadowRoot.querySelector('input'));
|
|
180
|
+
return validityState === 'valid';
|
|
165
181
|
}
|
|
166
182
|
/** Identify wrapping form element */
|
|
167
183
|
get parentFormEl() {
|
|
@@ -231,8 +247,8 @@ const InputPassword = class {
|
|
|
231
247
|
novalidate: true,
|
|
232
248
|
readonly
|
|
233
249
|
};
|
|
234
|
-
return (index.h(index.Host, { key: '
|
|
235
|
-
index.h("r-hint", { key: '
|
|
250
|
+
return (index.h(index.Host, { key: '810ae74cdcdcd8a4289255e2b99b6cfc213330ac' }, index.h("r-input", Object.assign({ key: '55027ca5cd8b8ba4eade60067ac182e38eaf1bfa' }, inputAttrs, { ref: (el) => this.nativeElement = el, type: showed ? 'text' : 'password', onRInput: this.onInput, onRChange: this.onChange, onKeyUp: this.handleKeyup, onRBlur: this.handleBlur }), index.h("r-icon", { key: '935aa481c0eff444462e6be6d8e6975db8a24708', name: "padlock-closed", size: "s", slot: "leading" }), index.h("slot", { key: 'df29bd4fa96db1c1f5f70be9c44fab1b9c5f02be', name: "popover", slot: "popover" }), index.h("r-icon-button", { key: '95d5f3c5e64eb7b43364db7aff943d35fbdc4d2d', slot: "trailing", name: showed ? 'eye-crossed-out' : 'eye', size: "s", disabled: disabled, label: showed ? hidePasswordAriaLabel : showPasswordAriaLabel, onClick: this.onShowClick }), this.hasMessage &&
|
|
251
|
+
index.h("r-hint", { key: '7390d667a69c4ae5c2c6ae480eaf5f879ad6ed78', slot: "message", variant: "error" }, this.hasError && this.error, this.hasValidationError && (this.customErrorMessage || this.validityMessage))), index.h("div", { key: 'c70c38f1249c80973bb2fe2a25ddf7d88835c686', class: "visually-hidden", ref: el => this.passwordVisibilityChangeAlertContainer = el, "aria-live": "polite" })));
|
|
236
252
|
}
|
|
237
253
|
get host() { return index.getElement(this); }
|
|
238
254
|
};
|
|
@@ -2273,7 +2273,9 @@ const InputPhoneNumber = class {
|
|
|
2273
2273
|
return;
|
|
2274
2274
|
if (this.error)
|
|
2275
2275
|
return;
|
|
2276
|
-
this.getValidityStateData();
|
|
2276
|
+
const { validityState, validityMessage } = this.getValidityStateData();
|
|
2277
|
+
this.validityState = validityState;
|
|
2278
|
+
this.validityMessage = validityMessage;
|
|
2277
2279
|
const isValid = this.validityState === 'valid';
|
|
2278
2280
|
this.valid = isValid;
|
|
2279
2281
|
this.invalid = !isValid;
|
|
@@ -2284,22 +2286,25 @@ const InputPhoneNumber = class {
|
|
|
2284
2286
|
};
|
|
2285
2287
|
this.getValidityStateData = () => {
|
|
2286
2288
|
var _a, _b;
|
|
2289
|
+
let validityState = '';
|
|
2290
|
+
let validityMessage = '';
|
|
2287
2291
|
if (!this.required && !((_a = this.phoneNumber) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
2288
|
-
|
|
2289
|
-
return;
|
|
2292
|
+
validityState = 'valid';
|
|
2293
|
+
return { validityState, validityMessage };
|
|
2290
2294
|
}
|
|
2291
2295
|
if (!((_b = this.phoneNumber) === null || _b === void 0 ? void 0 : _b.length)) {
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
return;
|
|
2296
|
+
validityState = 'valueMissing';
|
|
2297
|
+
validityMessage = this.valueMissingMessage;
|
|
2298
|
+
return { validityState, validityMessage };
|
|
2295
2299
|
}
|
|
2296
2300
|
const isPhoneNumberValid = this.countryCode ? this.getPhoneValidationResult(this.phoneNumber, this.countryCode).isValid : false;
|
|
2297
2301
|
if (!isPhoneNumberValid) {
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
return;
|
|
2302
|
+
validityState = 'invalid';
|
|
2303
|
+
validityMessage = this.customErrorMessage;
|
|
2304
|
+
return { validityState, validityMessage };
|
|
2301
2305
|
}
|
|
2302
|
-
|
|
2306
|
+
validityState = 'valid';
|
|
2307
|
+
return { validityState, validityMessage };
|
|
2303
2308
|
};
|
|
2304
2309
|
this.onSubmitForm = (event) => {
|
|
2305
2310
|
if (this.isNoValidate)
|
|
@@ -2341,6 +2346,14 @@ const InputPhoneNumber = class {
|
|
|
2341
2346
|
this.customErrorMessage = message;
|
|
2342
2347
|
this.validateFormElement(this.nativeElement);
|
|
2343
2348
|
}
|
|
2349
|
+
/**
|
|
2350
|
+
* Validates the input phone number without triggering UI and returns a boolean indicating its validity.
|
|
2351
|
+
* @returns A boolean indicating whether the input phone number is valid.
|
|
2352
|
+
*/
|
|
2353
|
+
async checkValidity() {
|
|
2354
|
+
const { validityState } = this.getValidityStateData();
|
|
2355
|
+
return validityState === 'valid';
|
|
2356
|
+
}
|
|
2344
2357
|
/** Check validity and reveal validation state. */
|
|
2345
2358
|
async reportValidity() {
|
|
2346
2359
|
this.validateFormElement(this.nativeElement);
|
|
@@ -2498,10 +2511,10 @@ const InputPhoneNumber = class {
|
|
|
2498
2511
|
disabled,
|
|
2499
2512
|
'aria-describedby': this.ariaDescribedBy
|
|
2500
2513
|
};
|
|
2501
|
-
return (index.h(index.Host, { key: '
|
|
2502
|
-
index.h("r-label", Object.assign({ key: '
|
|
2503
|
-
index.h("r-hint", { key: '
|
|
2504
|
-
index.h("r-icon", { key: '
|
|
2514
|
+
return (index.h(index.Host, { key: '4551070926e1974ddf3fcb8cc435570ddde50276' }, index.h("div", { key: 'a076fb01b4e0563ec2d30a5680a6ccd48b2f6895', class: "r-input-phone-number--label-container" }, index.h("label", { key: 'a8ad943efeca2ac3b5a63857ea0a52b19c32f09c', id: `${uniqueId}-label` }, label &&
|
|
2515
|
+
index.h("r-label", Object.assign({ key: 'ac0d2a1c12cb85ec03e6596b9bb2e28328026eac' }, labelAttr), label)), index.h("slot", { key: 'cadd98a33c32bfb60be0a3448772eac483630bdf', name: "popover" })), hint &&
|
|
2516
|
+
index.h("r-hint", { key: '23874cabee60dc0a5e620066eed92de809cac1eb', id: `${uniqueId}-hint`, role: "note" }, hint), index.h("div", { key: '800b3a389ce815c5e137077dd5766177c317a05d', class: "r-input-phone-number", role: "group", "aria-labelledby": `${uniqueId}-label`, "aria-describedby": this.ariaDescribedBy }, index.h("slot", { key: '6106007980212ef05cd11304da2a4d0cc28ddf4f' }), index.h("r-input", { key: 'd65b4d9ca8761c7e6dd08359ff02f3c88c57aa66', label: inputLabel, value: phoneNumber, internal: true, valid: valid, invalid: invalid, required: required, readonly: this.readonly, novalidate: true, fullWidth: fullWidth, type: "tel", error: this.errorMessage || '', onRInput: this.handleOnInput, onRChange: this.handleInputOnChange, disabled: disabled }, valid && phoneNumber &&
|
|
2517
|
+
index.h("r-icon", { key: '09c721cb014d6d7ece724bcf7de9ec5928624dac', slot: "trailing", name: "circled-check", size: "s", color: "var(--r-status-success-regular)" }))), index.h("input", Object.assign({ key: 'e2eef2512f9125f0dd3d1b09120cbb77955350bd', type: "hidden" }, inputAttrs, { readonly: this.readonly, value: fullPhoneNumber, ref: el => this.nativeElement = el })), index.h("r-hint", { key: 'a12e9640bcf2df7b754de4e54b111e4ead2d023e', "aria-live": "polite", "aria-atomic": "true", id: `${uniqueId}-message`, class: !this.hasMessage && 'visually-hidden', variant: "error" }, this.hasMessage ? (this.hasError ? this.error : this.validityMessage) : '')));
|
|
2505
2518
|
}
|
|
2506
2519
|
get host() { return index.getElement(this); }
|
|
2507
2520
|
static get watchers() { return {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var index = require('./index-DJ4H_bFj.js');
|
|
4
4
|
var formData = require('./formData-B2DZyLxP.js');
|
|
5
5
|
|
|
6
|
-
const inputCss = ":host{display:inline-flex;flex-direction:column;vertical-align:top;--r-label--margin-bottom:0}:host slot{display:contents}:host([readonly]:not([readonly=false])){--r-input--container--background-color:var(--r-background-soft, #f3f1f0);--r-input--container--border-color:transparent transparent var(--r-border-soft, #686868) transparent;--r-input--container--cursor:text}:host(:hover:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input--container--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(.focused){--r-input--container--box-shadow:0 0 0 6px var(--r-border-focused-outlined);--r-input--container--outline:2px solid var(--r-border-focused);--r-input--container--outline-offset:2px}:host(:active:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input--container--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host([expanded]:not([expanded=false])),:host([full-width]:not([full-width=false])){display:block}:host([disabled]:not([disabled=false])){--r-input--container--opacity:0.4;--r-input--container--cursor:not-allowed;--r-input--container--pointer-events:none;--r-input--container--background-color:transparent}:host([invalid]:not([invalid=false])){--r-input--container--border-color:var(--r-status-error-regular, #
|
|
6
|
+
const inputCss = ":host{display:inline-flex;flex-direction:column;vertical-align:top;--r-label--margin-bottom:0}:host slot{display:contents}:host([readonly]:not([readonly=false])){--r-input--container--background-color:var(--r-background-soft, #f3f1f0);--r-input--container--border-color:transparent transparent var(--r-border-soft, #686868) transparent;--r-input--container--cursor:text}:host(:hover:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input--container--background-color:var(--r-background-interactive-hovered, rgba(40, 40, 40, 0.04))}:host(.focused){--r-input--container--box-shadow:0 0 0 6px var(--r-border-focused-outlined);--r-input--container--outline:2px solid var(--r-border-focused);--r-input--container--outline-offset:2px}:host(:active:not([disabled]:not([disabled=false])):not([readonly]:not([readonly=false]))){--r-input--container--background-color:var(--r-background-interactive-pressed, rgba(40, 40, 40, 0.12))}:host([expanded]:not([expanded=false])),:host([full-width]:not([full-width=false])){display:block}:host([disabled]:not([disabled=false])){--r-input--container--opacity:0.4;--r-input--container--cursor:not-allowed;--r-input--container--pointer-events:none;--r-input--container--background-color:transparent}:host([invalid]:not([invalid=false])){--r-input--container--border-color:var(--r-status-error-regular, #b00c15);--r-input--container--background-color:var(--r-status-error-soft, #fef6f6)}.r-input{display:var(--r-input--display, flex);flex:var(--r-input--flex, 1);flex-direction:var(--r-input--flex-direction, column);width:var(--r-input--width, auto);font-family:var(--r-input--font-family, system-ui);position:var(--r-input--position, relative);border-radius:var(--r-input--border-radius, 0);cursor:var(--r-input--cursor, inherit)}.r-input--label-container{display:var(--r-input--label-container--display, flex);gap:var(--r-input--label-container--gap, var(--r-spacing-100, 1rem));align-items:var(--r-input--label-container--align-items, center);justify-content:var(--r-input--label-container--align-items, space-between)}.r-input--label-container ::slotted([slot=popover]){display:var(--r-input--popover--display, inline-flex);height:var(--r-input--popover--height, var(--r-spacing-150, 1.5));align-items:var(--r-input--popover--align-items, center);justify-content:var(--r-input--popover--justify-content, center);margin-right:var(--r-input--popover--margin-right, -0.25rem);--r-popover--trigger--min-width:var(--r-input--popover-trigger--min-width, var(--r-spacing-150, 1.5));--r-popover--trigger--min-height:var(--r-input--popover--trigger--min-height, var(--r-spacing-150, 1.5))}.r-input--label{cursor:var(--r-input--label--cursor, inherit)}.r-input--input{font-family:var(--r-input--input--font-family, system-ui);font-size:var(--r-input--input--font-size, 1em);width:var(--r-input--input--width, 100%);max-width:var(--r-input--input--max-width, 100%);height:var(--r-input--input--height, var(--r-spacing-275, 2.75rem));border-radius:var(--r-input--input--border-radius, 0);border:var(--r-input--input--border, none);color:var(--r-input--input--color, var(--r-text-regular, #282828));background-color:var(--r-input--input--background-color, none);appearance:var(--r-input--input--appearance, none);box-sizing:var(--r-input--input--box-sizing, border-box);outline:var(--r-input--input--outline, none);cursor:var(--r-input--input--cursor, inherit);pointer-events:var(--r-input--input--pointer-events, auto)}.r-input--input:autofill,.r-input--input:-webkit-autofill{-webkit-background-clip:text !important}.r-input--input::-ms-reveal{display:var(--r-input--input--ms-reveal--display, none)}.r-input--input::placeholder{color:var(--r-input--input--placeholder--color, var(--r-text-soft, #686868))}.r-input--input[type=search]::-webkit-search-cancel-button{cursor:var(--r-input--input-clear--cursor, pointer);display:var(--r-input--input-clear--display, block);height:var(--r-input--input-clear--height, 0.875rem);width:var(--r-input--input-clear--width, 0.875rem);appearance:var(--r-input--input-clear--appearance, none);background-repeat:var(--r-input--input-clear--background-repeat, no-repeat);background-image:var(--r-input--input-clear--background-image, url(\"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20stroke-width%3D%221.5%22%20viewBox%3D%220.75%200.75%2022.5%2022.5%22%3E%3Cpath%20id%3D%22Vector%202269%22%20stroke%3D%22currentColor%22%20d%3D%22M1.5%201.5L22.5%2022.5%22%2F%3E%3Cpath%20id%3D%22Vector%202270%22%20stroke%3D%22currentColor%22%20d%3D%22M22.5%201.5L1.5%2022.5%22%2F%3E%3C%2Fsvg%3E\"));background-size:var(--r-input--input-clear--background-size, contain);margin-inline:var(--r-input--input-clear--margin-inline, 0);color:currentColor}.r-input--button{position:var(--r-input--icon-button--position, absolute);width:var(--r-input--icon-button--width, calc(1.125em + var(--r-input--icon--width)));height:var(--r-input--icon-button--height, 100%);top:var(--r-input--icon-button--top, 0);right:var(--r-input--icon-button--right, auto);bottom:var(--r-input--icon-button--bottom, auto);left:var(--r-input--icon-button--left, 0);cursor:var(--r-input--icon-button--cursor, inherit)}.r-input--container{position:var(--r-input--container--position, relative);display:var(--r-input--container--display, flex);align-items:var(--r-input--container--align-items, center);gap:var(--r-input--container--gap, 0.625rem);height:var(--r-input--container--height, var(--r-spacing-275, 2.75rem));background-color:var(--r-input--container--background-color, var(--r-background-softest, #fff));border-width:var(--r-input--container--border-width, 1px);border-style:var(--r-input--container--border-style, solid);border-color:var(--r-input--container--border-color, var(--r-border-soft, #686868));box-sizing:var(--r-input--container--box-sizing, border-box);box-shadow:var(--r-input--container--box-shadow, none);outline:var(--r-input--container--outline, none);outline-offset:var(--r-input--container--outline-offset, 0);padding-top:var(--r-input--container--padding-top, 0.6875rem);padding-right:var(--r-input--container--padding-right, var(--r-spacing-075, 0.75rem));padding-bottom:var(--r-input--container--padding-bottom, 0.6875rem);padding-left:var(--r-input--container--padding-left, var(--r-spacing-0275, 0.75rem));opacity:var(--r-input--container--opacity, 1);pointer-events:var(--r-input--container--pointer-events, auto);line-height:var(--r-input--container--line-height, 1);cursor:var(--r-input--container--cursor, inherit);margin-top:var(--r-input--container--margin-top, var(--r-spacing-025, 0.25rem))}.r-input--container slot[name=leading]{color:var(--r-input--container-leading--color, var(--r-icon-soft, #686868))}.r-input--message:has(r-hint),.r-input--message ::slotted([slot=message]){margin-top:var(--r-input--message--margin-top, var(--r-spacing-025, 0.25rem))}.r-input--trailing{display:var(--r-input--trailing--display, flex);margin-left:var(--r-input--trailing--margin-left, auto);align-items:var(--r-input--trailing--align-items, center);gap:var(--r-input--trailing--gap, 0.625rem)}.r-input--readonly-icon{color:var(--r-input--readonly-icon--color, var(--r-icon-soft, #686868))}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}";
|
|
7
7
|
|
|
8
8
|
const RInput = class {
|
|
9
9
|
constructor(hostRef) {
|
|
@@ -50,16 +50,25 @@ const RInput = class {
|
|
|
50
50
|
* */
|
|
51
51
|
this.initial = {};
|
|
52
52
|
this.getValidityStateData = (element) => {
|
|
53
|
+
let validityState = '';
|
|
54
|
+
let validityMessage = '';
|
|
55
|
+
if (this.type === 'email' && this.pattern) {
|
|
56
|
+
element.setCustomValidity('');
|
|
57
|
+
validityState = this.validEmailPattern ? 'valid' : 'patternMismatch';
|
|
58
|
+
validityMessage = this.validEmailPattern ? '' : this.patternMismatchMessage;
|
|
59
|
+
return { validityState, validityMessage };
|
|
60
|
+
}
|
|
53
61
|
for (const state in element.validity) {
|
|
54
62
|
if (element.validity[state]) {
|
|
55
|
-
|
|
63
|
+
validityState = state;
|
|
56
64
|
if (this[state + 'Message']) {
|
|
57
|
-
|
|
58
|
-
return;
|
|
65
|
+
validityMessage = this[state + 'Message'];
|
|
66
|
+
return { validityState, validityMessage };
|
|
59
67
|
}
|
|
60
|
-
|
|
68
|
+
validityMessage = element.validationMessage;
|
|
61
69
|
}
|
|
62
70
|
}
|
|
71
|
+
return { validityState, validityMessage };
|
|
63
72
|
};
|
|
64
73
|
this.validateFormElement = (element) => {
|
|
65
74
|
if (element === null)
|
|
@@ -68,13 +77,9 @@ const RInput = class {
|
|
|
68
77
|
return;
|
|
69
78
|
if (this.error)
|
|
70
79
|
return;
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
this.validityMessage = this.validEmailPattern ? '' : this.patternMismatchMessage;
|
|
75
|
-
}
|
|
76
|
-
else
|
|
77
|
-
this.getValidityStateData(element);
|
|
80
|
+
const { validityState, validityMessage } = this.getValidityStateData(element);
|
|
81
|
+
this.validityState = validityState;
|
|
82
|
+
this.validityMessage = validityMessage;
|
|
78
83
|
const isValid = this.validityState === 'valid';
|
|
79
84
|
this.valid = isValid;
|
|
80
85
|
this.invalid = !isValid;
|
|
@@ -94,6 +99,8 @@ const RInput = class {
|
|
|
94
99
|
if (this.readonly)
|
|
95
100
|
return;
|
|
96
101
|
this.value = event.target.value;
|
|
102
|
+
const { host, value } = this;
|
|
103
|
+
this.rChange.emit({ element: host, value });
|
|
97
104
|
};
|
|
98
105
|
this.onBlur = () => {
|
|
99
106
|
this.host.classList.remove('focused');
|
|
@@ -207,6 +214,14 @@ const RInput = class {
|
|
|
207
214
|
this.nativeElement.value = value;
|
|
208
215
|
this.validateFormElement(this.nativeElement);
|
|
209
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Validates the input without triggering UI and returns a boolean indicating its validity.
|
|
219
|
+
* @returns A boolean indicating whether the input is valid.
|
|
220
|
+
*/
|
|
221
|
+
async checkValidity() {
|
|
222
|
+
const { validityState } = this.getValidityStateData(this.nativeElement);
|
|
223
|
+
return validityState === 'valid';
|
|
224
|
+
}
|
|
210
225
|
/** Identify wrapping form element */
|
|
211
226
|
get parentFormEl() {
|
|
212
227
|
return this.host.closest('form') || document.querySelector(`#${this.form}`) || null;
|
|
@@ -271,8 +286,6 @@ const RInput = class {
|
|
|
271
286
|
}
|
|
272
287
|
handleValueChange() {
|
|
273
288
|
this.validateFormElement(this.nativeElement);
|
|
274
|
-
const { host, value } = this;
|
|
275
|
-
this.rChange.emit({ element: host, value });
|
|
276
289
|
}
|
|
277
290
|
render() {
|
|
278
291
|
const { name, placeholder, required, fieldIndicator, maxlength, minlength, min, max, value, disabled, form, pattern, invalid, valid, validMarker, hint, label, internal, tooltip, tooltipIcon, tooltipIconColor, uniqueId, autocomplete, readonly, autofocus } = this;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index-DJ4H_bFj.js');
|
|
4
4
|
|
|
5
|
-
const paginationCss = ":host{--r-pagination--display:flex;--r-pagination--list-style:none;--r-pagination--align-items:center;--r-pagination--justify-content:center;--r-pagination--font-family:var(--r-font-family-text);--r-pagination--margin:0 auto;--r-pagination--flex-direction:column;--r-pagination--width:100%;--r-pagination--max-width:664px;--r-pagination--margin:0 auto;--r-pagination--item--display:flex;--r-pagination--item--align-items:center;--r-pagination--item--justify-content:center;--r-pagination--item--margin-right:-1px;--r-pagination--item--color:var(--r-text-regular);--r-pagination--item--background-color:transparent;--r-pagination--item--width:48px;--r-pagination--item--height:48px;--r-pagination--item--border-width:1px;--r-pagination--item--border-style:solid;--r-pagination--item--border-color:var(--r-border-softer);--r-pagination--item--z-index:0;--r-pagination--item--font-family:inherit;--r-pagination--button--width:100%;--r-pagination--button--height:100%;--r-pagination--button--color:var(--r-text-regular);--r-pagination--button--background-color:transparent;--r-pagination--button--border-width:0;--r-pagination--button--padding:0;--r-pagination--button--font-size:var(--r-font-size-300);--r-pagination--header--display:flex;--r-pagination--header--align-items:center;--r-pagination--header--justify-content:space-between;--r-pagination--header--min-width:287px;--r-pagination--footer--display:flex;--r-pagination--footer--justify-content:center;--r-pagination--footer--width:100%;--r-pagination--item--disabled-text:none;--r-pagination--font-size:var(--r-font-size-200);display:block}:host([variant=minimized]){--r-pagination--max-width:440px}:host([variant=standard]){--r-pagination--max-width:560px}:host([variant=maximized]){--r-pagination--max-width:664px}.r-pagination r-select{--r-select--font-size:var(--r-pagination--font-size, 12px);--r-select-option--font-size:var(--r-pagination--font-size, 12px)}.r-pagination{align-items:var(--r-pagination--align-items);display:var(--r-pagination--display);flex-direction:var(--r-pagination--flex-direction);font-family:var(--r-pagination--font-family);font-size:var(--r-pagination--font-size);justify-content:var(--r-pagination--justify-content);list-style:var(--r-pagination--list-style);margin:var(--r-pagination--margin);max-width:var(--r-pagination--max-width);user-select:var(--r-pagination--item--disabled-text);width:var(--r-pagination--width)}.r-pagination--footer{align-items:var(--r-pagination--header--align-items);display:var(--r-pagination--footer--display);justify-content:var(--r-pagination--footer--justify-content)}.r-pagination--header{align-items:var(--r-pagination--header--align-items);display:var(--r-pagination--header--display);justify-content:var(--r-pagination--header--justify-content);font-family:var(--r-pagination--font-family);min-width:var(--r-pagination--header--min-width)}.r-pagination--header--select{min-width:auto;--width:unset !important}.r-pagination--header label{font-size:var(--r-pagination--font-size)}.r-pagination--item
|
|
5
|
+
const paginationCss = ":host{--r-pagination--display:flex;--r-pagination--list-style:none;--r-pagination--align-items:center;--r-pagination--justify-content:center;--r-pagination--font-family:var(--r-font-family-text);--r-pagination--margin:0 auto;--r-pagination--flex-direction:column;--r-pagination--width:100%;--r-pagination--max-width:664px;--r-pagination--margin:0 auto;--r-pagination--item--display:flex;--r-pagination--item--align-items:center;--r-pagination--item--justify-content:center;--r-pagination--item--margin-right:-1px;--r-pagination--item--color:var(--r-text-regular);--r-pagination--item--background-color:transparent;--r-pagination--item--width:48px;--r-pagination--item--height:48px;--r-pagination--item--border-width:1px;--r-pagination--item--border-style:solid;--r-pagination--item--border-color:var(--r-border-softer);--r-pagination--item--z-index:0;--r-pagination--item--font-family:inherit;--r-pagination--button--width:100%;--r-pagination--button--height:100%;--r-pagination--button--color:var(--r-text-regular);--r-pagination--button--background-color:transparent;--r-pagination--button--border-width:0;--r-pagination--button--padding:0;--r-pagination--button--font-size:var(--r-font-size-300);--r-pagination--header--display:flex;--r-pagination--header--align-items:center;--r-pagination--header--justify-content:space-between;--r-pagination--header--min-width:287px;--r-pagination--footer--display:flex;--r-pagination--footer--justify-content:center;--r-pagination--footer--width:100%;--r-pagination--item--disabled-text:none;--r-pagination--font-size:var(--r-font-size-200);display:block}:host([variant=minimized]){--r-pagination--max-width:440px}:host([variant=standard]){--r-pagination--max-width:560px}:host([variant=maximized]){--r-pagination--max-width:664px}.r-pagination r-select{--r-select--font-size:var(--r-pagination--font-size, 12px);--r-select-option--font-size:var(--r-pagination--font-size, 12px)}.r-pagination{align-items:var(--r-pagination--align-items);display:var(--r-pagination--display);flex-direction:var(--r-pagination--flex-direction);font-family:var(--r-pagination--font-family);font-size:var(--r-pagination--font-size);justify-content:var(--r-pagination--justify-content);list-style:var(--r-pagination--list-style);margin:var(--r-pagination--margin);max-width:var(--r-pagination--max-width);user-select:var(--r-pagination--item--disabled-text);width:var(--r-pagination--width)}.r-pagination--footer{align-items:var(--r-pagination--header--align-items);display:var(--r-pagination--footer--display);justify-content:var(--r-pagination--footer--justify-content)}.r-pagination--header{align-items:var(--r-pagination--header--align-items);display:var(--r-pagination--header--display);justify-content:var(--r-pagination--header--justify-content);font-family:var(--r-pagination--font-family);min-width:var(--r-pagination--header--min-width)}.r-pagination--header--select{min-width:auto;--width:unset !important}.r-pagination--header label{font-size:var(--r-pagination--font-size)}.r-pagination--item:hover{--r-pagination--item--background-color:var(--r-background-interactive-hovered)}.r-pagination--item:focus{--r-pagination--item--outline-color:var(--r-border-focused);--r-pagination--item--box-shadow:0 0 0 3px var(--r-border-focused-outlined);--r-pagination--item--z-index:1}.r-pagination--item:active{--r-pagination--item--background-color:var(--r-background-interactive-pressed)}.r-pagination--item.stepper{--r-pagination--item--background-color:transparent}.r-pagination--item.active{--r-pagination--item--color:var(--r-text-regular);--r-pagination--item--background-color:var(--r-background-interactive-activated);font-weight:var(--r-font-weight-semibold)}.r-pagination--item.arrow.previous{--r-pagination--item--margin-left:0;--r-pagination--item--margin-right:16px}.r-pagination--item.arrow.next{--r-pagination--item--margin-left:16px;--r-pagination--item--margin-right:0}.r-pagination--item.arrow.first{--r-pagination--item--margin-left:0;--r-pagination--item--margin-right:8px}.r-pagination--item.arrow.last{--r-pagination--item--margin-left:8px;--r-pagination--item--margin-right:0}.r-pagination--item.disabled,.r-pagination--item.disabled:hover{--r-pagination--item--opacity:0.4;--r-pagination--item--background-color:transparent}.r-pagination--item.number{--r-button--font-size:0.813rem}.r-pagination--item{--r-button--display:flex;--r-button--width:var(--r-pagination--button--width);--r-button--height:var(--r-pagination--button--height);--r-button--color:var(--r-pagination--button--color);--r-button--background-color:var(--r-pagination--button--background-color);--r-button--border-width:var(--r-pagination--button--border-width);--r-button--padding:var(--r-pagination--button--padding);--r-button--icon--width:auto;--r-button--icon--height:auto;align-items:var(--r-pagination--item--align-items);background-color:var(--r-pagination--item--background-color);color:var(--r-pagination--item--color);display:var(--r-pagination--item--display);font-family:var(--r-pagination--item--font-family);height:var(--r-pagination--item--height);justify-content:var(--r-pagination--item--justify-content);margin-left:var(--r-pagination--item--margin-left);margin-right:var(--r-pagination--item--margin-right);opacity:var(--r-pagination--item--opacity);width:var(--r-pagination--item--width);z-index:var(--r-pagination--item--z-index)}";
|
|
6
6
|
|
|
7
7
|
const RPagination = class {
|
|
8
8
|
constructor(hostRef) {
|
|
@@ -5,7 +5,7 @@ var theming = require('./theming-NqxjhVJS.js');
|
|
|
5
5
|
var focusable = require('./focusable-Oll_rmtP.js');
|
|
6
6
|
require('./style-observer-D9zSP9wP.js');
|
|
7
7
|
|
|
8
|
-
const popoverActionCss = ":host slot{display:contents}::slotted(r-button){--r-button--color:var(--r-text-regular);--r-button--border-
|
|
8
|
+
const popoverActionCss = ":host slot{display:contents}::slotted(r-button){--r-button--color:var(--r-text-regular);--r-button--border-width:0;--r-button--background-color:rgba(0,0,0,0);--r-button--slot--position:relative;--r-button--slot--text-decoration:underline;--r-button--padding:10px 2px 18px 2px;--r-button--slot--text-underline-offset:9px}::slotted(r-button:hover:not([disabled]):not([disabled=false])){--r-button--background-color:var(--r-background-interactive-hovered)}::slotted(r-button:active:not([disabled]):not([disabled=false])){--r-button--background-color:var(--r-background-interactive-pressed)}";
|
|
9
9
|
|
|
10
10
|
const PopoverAction = class {
|
|
11
11
|
constructor(hostRef) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index-DJ4H_bFj.js');
|
|
4
4
|
|
|
5
|
-
const popoverCss = ":host{position:relative;overflow:visible;color:var(--r-text-inverse);font-family:var(--r-font-family-text, system-ui);font-weight:var(--r-font-weight-regular, 400);font-size:var(--r-font-size-400, 1rem);text-align:left;--board--shift:1rem;--board--min-width:304px;--board--max-width:504px;--board--max-height:320px;--pointer--width:1rem;--pointer--height:0.5rem;--pointer--spacer:0.25rem}:host slot{display:contents}:host([size=s]){--r-popover--board--max-width:375px}:host([size=l]){--r-popover--board--max-width:500px}:host([data-open=true]){--r-popover--pointer--display:block;--r-popover--board--visibility:visible;--r-popover--board--left:var(--r-popover--trigger--left);--r-popover--board--top:var(--r-popover--trigger--top)}:host([data-open=true]) ::slotted([slot=trigger]){--r-popover--trigger--display:none}:host([data-vertical=top]){--r-popover--pointer--top:100%;--r-popover--pointer--transform:rotate(0deg) translate(0,-1px)}:host([data-vertical=bottom]){--r-popover--pointer--bottom:100%;--r-popover--pointer--transform:rotate(180deg)}:host([data-vertical=middle]){--r-popover--pointer--top:calc(50% - var(--pointer--height)/2);--r-popover--pointer--bottom:auto}:host([data-horizontal=left]){--r-popover--board--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0) + var(--board--shift));--r-popover--pointer--left:calc(100% - var(--r-popover--trigger--width, 0)/2 - var(--board--shift) - var(--pointer--width)/2)}:host([data-horizontal=right]){--r-popover--pointer--left:calc(var(--r-popover--trigger--width, 0)/2 + var(--pointer--width)/2)}:host([data-horizontal=center]){--r-popover--pointer--left:calc(50% - var(--pointer--width)/2)}:host([data-vertical=top][data-horizontal=left]){--r-popover--board--transform:translate(-100%, calc(-100% - var(--pointer--spacer) - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=top][data-horizontal=right]){--r-popover--board--transform:translate(calc(0px - var(--board--shift)), calc(-100% - var(--pointer--spacer) - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=top][data-horizontal=center]){--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), calc(-100% - var(--pointer--spacer) - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=top][data-horizontal=cover]){--r-popover--pointer--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0)/2 - var(--r-popover--pointer--width, var(--pointer--width))/2);--r-popover--board--left:0;--r-popover--board--transform:translate(0, calc(-100% - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=middle][data-horizontal=left]){--r-popover--board--left:var(--r-popover--trigger--left, 0);--r-popover--board--transform:translate(calc(-100% - var(--pointer--height) - var(--pointer--spacer)), calc(-50% + var(--r-popover--trigger--height, 0)/2));--r-popover--pointer--left:100%;--r-popover--pointer--right:auto;--r-popover--pointer--transform:rotate(-90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=middle][data-horizontal=right]){--r-popover--board--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0) + var(--pointer--height) + var(--pointer--spacer));--r-popover--board--transform:translate(0, calc(-50% + var(--r-popover--trigger--height, 0)/2));--r-popover--pointer--top:calc(50% - var(--pointer--height)/2);--r-popover--pointer--left:auto;--r-popover--pointer--right:100%;--r-popover--pointer--transform:rotate(90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=middle][data-horizontal=center]){--r-popover--pointer--display:none;--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), calc(-50% + var(--r-popover--trigger--height, 0)/2))}:host([data-vertical=middle][data-horizontal=cover]){--r-popover--pointer--display:none;--r-popover--board--left:0;--r-popover--board--transform:translate(0, calc(-50% + var(--r-popover--trigger--height, 0)/2))}:host([data-vertical=bottom][data-horizontal=left]){--r-popover--board--transform:translate(-100%, calc(var(--r-popover--trigger--height, 0) + var(--pointer--spacer) + var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=bottom][data-horizontal=right]){--r-popover--board--transform:translate(calc(0px - var(--board--shift)), calc(var(--r-popover--trigger--height, 0) + var(--r-popover--pointer--height, var(--pointer--height)) + var(--pointer--spacer)))}:host([data-vertical=bottom][data-horizontal=center]){--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), calc(var(--r-popover--trigger--height, 0) + var(--pointer--spacer) + var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=bottom][data-horizontal=cover]){--r-popover--pointer--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0)/2 - var(--r-popover--pointer--width, var(--pointer--width))/2);--r-popover--board--left:0;--r-popover--board--transform:translate(0, calc(var(--r-popover--trigger--height, 0) + var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=cover]){--r-popover--board--top:0;--r-popover--board--height:100%;--r-popover--board-content--height:100%;--r-popover--pointer--top:calc(var(--r-popover--trigger--top, 0) + var(--r-popover--trigger--height)/2 - var(--pointer--height)/2);--r-popover--pointer--bottom:auto}:host([data-vertical=cover][data-content-has-scroll=false]){--r-popover--board--top:var(--r-popover--trigger--top, 0)}:host([data-vertical=cover][data-horizontal=left]){--r-popover--board--left:var(--r-popover--trigger--left, 0);--r-popover--board--transform:translate(calc(-100% - var(--pointer--spacer) - var(--pointer--height)), 0);--r-popover--pointer--left:100%;--r-popover--pointer--right:auto;--r-popover--pointer--transform:rotate(-90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=cover][data-horizontal=right]){--r-popover--board--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0) + var(--pointer--width));--r-popover--pointer--left:auto;--r-popover--pointer--right:100%;--r-popover--pointer--transform:rotate(90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=cover][data-horizontal=center]),:host([data-vertical=cover][data-horizontal=cover]){--r-popover--pointer--display:none;--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), 0)}:host([data-vertical=cover][data-horizontal=cover]){--r-popover--pointer--display:none;--r-popover--board--transform:none;--r-popover--board--height:100%;--r-popover--board--width:100%;--r-popover--board--left:0}:host([data-fixed-top=true]){--r-popover--board-container--height:var(--r-popover--trigger--top, var(--board--max-height))}:host([dismiss-mode=manual]){--r-popover--board-content--padding:1.5rem 3.5rem 1.5rem 1.5rem}.r-popover{position:var(--r-popover--position, relative);display:var(--r-popover--display, inline-flex)}.r-popover--dismiss{position:var(--r-popover--dismiss--position, absolute);top:var(--r-popover--dismiss--top, 20px);right:var(--r-popover--dismiss--right, 20px);color:var(--r-text-inverse)}.r-popover--trigger{border:var(--r-popover--trigger--border, none);background:var(--r-popover--trigger--background, none);padding:var(--r-popover--trigger--padding, 0);cursor:var(--r-popover--trigger--cursor, pointer);display:var(--r-popover--trigger--display, inline-flex);align-items:var(--r-popover--trigger--align-items, center);justify-content:var(--r-popover--trigger--justify-content, center);min-width:var(--r-popover--trigger--min-width, unset);min-height:var(--r-popover--trigger--min-height, unset)}.r-popover--trigger:focus{box-shadow:0 0 0 6px var(--r-border-focused-outlined, #fff);outline:2px solid var(--r-border-focused, #0071e3);outline-offset:2px}.r-popover--board{position:var(--r-popover--board--position, fixed);top:var(--r-popover--board--top, -1000em);right:var(--r-popover--board--right, auto);bottom:var(--r-popover--board--bottom, auto);left:var(--r-popover--board--left, -1000em);visibility:var(--r-popover--board--visibility, hidden);width:var(--r-popover--board--width, 100%);min-width:var(--r-popover--board--max-width, var(--board--min-width));max-width:var(--r-popover--board--max-width, var(--board--max-width));height:var(--r-popover--board--height, auto);max-height:var(--r-popover--board--max-height, var(--board--max-height));background-color:var(--r-popover--board--background-color, var(--r-background-inverse));color:var(--r-popover--board--color, var(--r-text-inverse));border:var(--r-popover--board--border, none);transform:var(--r-popover--board--transform, none);box-sizing:var(--r-popover--board--box-sizing, border-box);padding:var(--r-popover--board--padding, 0);margin:var(--r-popover--board--margin, 0);overflow:var(--r-popover--board--overflow, visible)}.r-popover--board-content{display:var(--r-popover--board-content--display, flex);flex-direction:var(--r-popover--board-content--flex-direction, column);gap:var(--r-popover--board-content--gap, 1.5rem);overflow:var(--r-popover--board-content--overflow, auto);height:var(--r-popover--board-content--height, auto);max-height:var(--r-popover--board-content--max-height, var(--board--max-height));padding:var(--r-popover--board-content--padding, 1.5rem);box-sizing:var(--r-popover--board-content--box-sizing, border-box)}.r-popover--board-pointer{display:var(--r-popover--pointer--display, flex);width:var(--r-popover--pointer--width, var(--pointer--width));height:var(--r-popover--pointer--height, var(--pointer--height));position:var(--r-popover--pointer--position, absolute);top:var(--r-popover--pointer--top, auto);right:var(--r-popover--pointer--right, auto);bottom:var(--r-popover--pointer--bottom, auto);left:var(--r-popover--pointer--left, auto);color:var(--r-popover--pointer--color, var(--r-background-inverse));transform:var(--r-popover--pointer--transform, none);transform-origin:var(--r-popover--pointer--transform-origin, center)}.r-popover--board-pointer>svg{display:flex}";
|
|
5
|
+
const popoverCss = ":host{position:relative;overflow:visible;color:var(--r-text-inverse);font-family:var(--r-font-family-text, system-ui);font-weight:var(--r-font-weight-regular, 400);font-size:var(--r-font-size-400, 1rem);text-align:left}:host slot{display:contents}:host{--board--shift:1rem;--board--min-width:304px;--board--max-width:504px;--board--max-height:320px;--pointer--width:1rem;--pointer--height:0.5rem;--pointer--spacer:0.25rem}:host([size=s]){--r-popover--board--max-width:375px}:host([size=l]){--r-popover--board--max-width:500px}:host([data-open=true]){--r-popover--pointer--display:block;--r-popover--board--visibility:visible;--r-popover--board--left:var(--r-popover--trigger--left);--r-popover--board--top:var(--r-popover--trigger--top)}:host([data-open=true]) ::slotted([slot=trigger]){--r-popover--trigger--display:none}:host([data-vertical=top]){--r-popover--pointer--top:100%;--r-popover--pointer--transform:rotate(0deg) translate(0,-1px)}:host([data-vertical=bottom]){--r-popover--pointer--bottom:100%;--r-popover--pointer--transform:rotate(180deg)}:host([data-vertical=middle]){--r-popover--pointer--top:calc(50% - var(--pointer--height)/2);--r-popover--pointer--bottom:auto}:host([data-horizontal=left]){--r-popover--board--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0) + var(--board--shift));--r-popover--pointer--left:calc(100% - var(--r-popover--trigger--width, 0)/2 - var(--board--shift) - var(--pointer--width)/2)}:host([data-horizontal=right]){--r-popover--pointer--left:calc(var(--r-popover--trigger--width, 0)/2 + var(--pointer--width)/2)}:host([data-horizontal=center]){--r-popover--pointer--left:calc(50% - var(--pointer--width)/2)}:host([data-vertical=top][data-horizontal=left]){--r-popover--board--transform:translate(-100%, calc(-100% - var(--pointer--spacer) - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=top][data-horizontal=right]){--r-popover--board--transform:translate(calc(0px - var(--board--shift)), calc(-100% - var(--pointer--spacer) - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=top][data-horizontal=center]){--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), calc(-100% - var(--pointer--spacer) - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=top][data-horizontal=cover]){--r-popover--pointer--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0)/2 - var(--r-popover--pointer--width, var(--pointer--width))/2);--r-popover--board--left:0;--r-popover--board--transform:translate(0, calc(-100% - var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=middle][data-horizontal=left]){--r-popover--board--left:var(--r-popover--trigger--left, 0);--r-popover--board--transform:translate(calc(-100% - var(--pointer--height) - var(--pointer--spacer)), calc(-50% + var(--r-popover--trigger--height, 0)/2));--r-popover--pointer--left:100%;--r-popover--pointer--right:auto;--r-popover--pointer--transform:rotate(-90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=middle][data-horizontal=right]){--r-popover--board--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0) + var(--pointer--height) + var(--pointer--spacer));--r-popover--board--transform:translate(0, calc(-50% + var(--r-popover--trigger--height, 0)/2));--r-popover--pointer--top:calc(50% - var(--pointer--height)/2);--r-popover--pointer--left:auto;--r-popover--pointer--right:100%;--r-popover--pointer--transform:rotate(90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=middle][data-horizontal=center]){--r-popover--pointer--display:none;--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), calc(-50% + var(--r-popover--trigger--height, 0)/2))}:host([data-vertical=middle][data-horizontal=cover]){--r-popover--pointer--display:none;--r-popover--board--left:0;--r-popover--board--transform:translate(0, calc(-50% + var(--r-popover--trigger--height, 0)/2))}:host([data-vertical=bottom][data-horizontal=left]){--r-popover--board--transform:translate(-100%, calc(var(--r-popover--trigger--height, 0) + var(--pointer--spacer) + var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=bottom][data-horizontal=right]){--r-popover--board--transform:translate(calc(0px - var(--board--shift)), calc(var(--r-popover--trigger--height, 0) + var(--r-popover--pointer--height, var(--pointer--height)) + var(--pointer--spacer)))}:host([data-vertical=bottom][data-horizontal=center]){--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), calc(var(--r-popover--trigger--height, 0) + var(--pointer--spacer) + var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=bottom][data-horizontal=cover]){--r-popover--pointer--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0)/2 - var(--r-popover--pointer--width, var(--pointer--width))/2);--r-popover--board--left:0;--r-popover--board--transform:translate(0, calc(var(--r-popover--trigger--height, 0) + var(--r-popover--pointer--height, var(--pointer--height))))}:host([data-vertical=cover]){--r-popover--board--top:0;--r-popover--board--height:100%;--r-popover--board-content--height:100%;--r-popover--pointer--top:calc(var(--r-popover--trigger--top, 0) + var(--r-popover--trigger--height)/2 - var(--pointer--height)/2);--r-popover--pointer--bottom:auto}:host([data-vertical=cover][data-content-has-scroll=false]){--r-popover--board--top:var(--r-popover--trigger--top, 0)}:host([data-vertical=cover][data-horizontal=left]){--r-popover--board--left:var(--r-popover--trigger--left, 0);--r-popover--board--transform:translate(calc(-100% - var(--pointer--spacer) - var(--pointer--height)), 0);--r-popover--pointer--left:100%;--r-popover--pointer--right:auto;--r-popover--pointer--transform:rotate(-90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=cover][data-horizontal=right]){--r-popover--board--left:calc(var(--r-popover--trigger--left, 0) + var(--r-popover--trigger--width, 0) + var(--pointer--width));--r-popover--pointer--left:auto;--r-popover--pointer--right:100%;--r-popover--pointer--transform:rotate(90deg) translate(0, calc(0px - var(--pointer--spacer)))}:host([data-vertical=cover][data-horizontal=center]),:host([data-vertical=cover][data-horizontal=cover]){--r-popover--pointer--display:none;--r-popover--board--transform:translate(calc(-50% + var(--r-popover--trigger--width, 0)/2), 0)}:host([data-vertical=cover][data-horizontal=cover]){--r-popover--pointer--display:none;--r-popover--board--transform:none;--r-popover--board--height:100%;--r-popover--board--width:100%;--r-popover--board--left:0}:host([data-fixed-top=true]){--r-popover--board-container--height:var(--r-popover--trigger--top, var(--board--max-height))}:host([dismiss-mode=manual]){--r-popover--board-content--padding:1.5rem 3.5rem 1.5rem 1.5rem}.r-popover{position:var(--r-popover--position, relative);display:var(--r-popover--display, inline-flex)}.r-popover--dismiss{position:var(--r-popover--dismiss--position, absolute);top:var(--r-popover--dismiss--top, 20px);right:var(--r-popover--dismiss--right, 20px);color:var(--r-text-inverse)}.r-popover--dismiss:hover{--r-icon-button--background-color:var(--r-background-interactive-hovered-inverse, rgba(243, 241, 240, 0.04))}.r-popover--dismiss:active{--r-icon-button--background-color:var(--r-background-interactive-pressed-inverse, rgba(243, 241, 240, 0.12))}.r-popover--trigger{border:var(--r-popover--trigger--border, none);background:var(--r-popover--trigger--background, none);padding:var(--r-popover--trigger--padding, 0);cursor:var(--r-popover--trigger--cursor, pointer);display:var(--r-popover--trigger--display, inline-flex);align-items:var(--r-popover--trigger--align-items, center);justify-content:var(--r-popover--trigger--justify-content, center);min-width:var(--r-popover--trigger--min-width, unset);min-height:var(--r-popover--trigger--min-height, unset)}.r-popover--trigger:focus{box-shadow:0 0 0 6px var(--r-border-focused-outlined, #fff);outline:2px solid var(--r-border-focused, #0071e3);outline-offset:2px}.r-popover--board{position:var(--r-popover--board--position, fixed);top:var(--r-popover--board--top, -1000em);right:var(--r-popover--board--right, auto);bottom:var(--r-popover--board--bottom, auto);left:var(--r-popover--board--left, -1000em);visibility:var(--r-popover--board--visibility, hidden);width:var(--r-popover--board--width, 100%);min-width:var(--r-popover--board--max-width, var(--board--min-width));max-width:var(--r-popover--board--max-width, var(--board--max-width));height:var(--r-popover--board--height, auto);max-height:var(--r-popover--board--max-height, var(--board--max-height));background-color:var(--r-popover--board--background-color, var(--r-background-inverse));color:var(--r-popover--board--color, var(--r-text-inverse));border:var(--r-popover--board--border, none);transform:var(--r-popover--board--transform, none);box-sizing:var(--r-popover--board--box-sizing, border-box);padding:var(--r-popover--board--padding, 0);margin:var(--r-popover--board--margin, 0);overflow:var(--r-popover--board--overflow, visible)}.r-popover--board-content{display:var(--r-popover--board-content--display, flex);flex-direction:var(--r-popover--board-content--flex-direction, column);gap:var(--r-popover--board-content--gap, 1.5rem);overflow:var(--r-popover--board-content--overflow, auto);height:var(--r-popover--board-content--height, auto);max-height:var(--r-popover--board-content--max-height, var(--board--max-height));padding:var(--r-popover--board-content--padding, 1.5rem);box-sizing:var(--r-popover--board-content--box-sizing, border-box)}.r-popover--board-pointer{display:var(--r-popover--pointer--display, flex);width:var(--r-popover--pointer--width, var(--pointer--width));height:var(--r-popover--pointer--height, var(--pointer--height));position:var(--r-popover--pointer--position, absolute);top:var(--r-popover--pointer--top, auto);right:var(--r-popover--pointer--right, auto);bottom:var(--r-popover--pointer--bottom, auto);left:var(--r-popover--pointer--left, auto);color:var(--r-popover--pointer--color, var(--r-background-inverse));transform:var(--r-popover--pointer--transform, none);transform-origin:var(--r-popover--pointer--transform-origin, center)}.r-popover--board-pointer>svg{display:flex}";
|
|
6
6
|
|
|
7
7
|
const Popover = class {
|
|
8
8
|
constructor(hostRef) {
|