@aurodesignsystem/auro-formkit 5.1.0-rc-1176.1 → 5.1.0-rc-1195.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -1
- package/components/checkbox/demo/api.min.js +66 -2
- package/components/checkbox/demo/index.min.js +66 -2
- package/components/checkbox/dist/index.js +66 -2
- package/components/checkbox/dist/registered.js +66 -2
- package/components/combobox/demo/api.md +230 -38
- package/components/combobox/demo/api.min.js +155 -6
- package/components/combobox/demo/index.md +104 -0
- package/components/combobox/demo/index.min.js +155 -6
- package/components/combobox/dist/auro-combobox.d.ts +18 -1
- package/components/combobox/dist/index.js +155 -6
- package/components/combobox/dist/registered.js +155 -6
- package/components/counter/demo/api.min.js +69 -5
- package/components/counter/demo/index.min.js +69 -5
- package/components/counter/dist/index.js +69 -5
- package/components/counter/dist/registered.js +69 -5
- package/components/datepicker/demo/api.md +40 -0
- package/components/datepicker/demo/api.min.js +173 -10
- package/components/datepicker/demo/index.min.js +173 -10
- package/components/datepicker/dist/auro-calendar-cell.d.ts +6 -0
- package/components/datepicker/dist/auro-datepicker.d.ts +8 -0
- package/components/datepicker/dist/index.js +173 -10
- package/components/datepicker/dist/registered.js +173 -10
- package/components/input/demo/api.min.js +67 -3
- package/components/input/demo/index.min.js +67 -3
- package/components/input/dist/index.js +67 -3
- package/components/input/dist/registered.js +67 -3
- package/components/radio/demo/api.min.js +97 -5
- package/components/radio/demo/index.min.js +97 -5
- package/components/radio/dist/auro-radio-group.d.ts +14 -0
- package/components/radio/dist/index.js +97 -5
- package/components/radio/dist/registered.js +97 -5
- package/components/select/demo/api.min.js +67 -3
- package/components/select/demo/index.min.js +67 -3
- package/components/select/dist/index.js +67 -3
- package/components/select/dist/registered.js +67 -3
- package/package.json +1 -1
|
@@ -695,6 +695,52 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
695
695
|
message: e => e.getAttribute('setCustomValidityRangeUnderflow') || ''
|
|
696
696
|
}
|
|
697
697
|
]
|
|
698
|
+
},
|
|
699
|
+
combobox: {
|
|
700
|
+
filter: [
|
|
701
|
+
{
|
|
702
|
+
check: (e) => {
|
|
703
|
+
|
|
704
|
+
// Guard Clause: If the behavior is not 'filter', skip this validation
|
|
705
|
+
if (e.behavior !== 'filter') return false;
|
|
706
|
+
|
|
707
|
+
// Get the current input value
|
|
708
|
+
const currentInputValue = e.input.value;
|
|
709
|
+
|
|
710
|
+
// Skip validation if the input has no value
|
|
711
|
+
if (!currentInputValue) return false;
|
|
712
|
+
|
|
713
|
+
/**
|
|
714
|
+
* Let's check if the option selected and combobox value match.
|
|
715
|
+
*/
|
|
716
|
+
|
|
717
|
+
// Guard Clause: If there is no option selected fail the validation
|
|
718
|
+
if (!e.optionSelected) return true;
|
|
719
|
+
|
|
720
|
+
// Guard Clause: If there is no value fail the validation
|
|
721
|
+
if (!e.value) return true;
|
|
722
|
+
|
|
723
|
+
// Guard Clause: If the selected option's value doesn't match the input value fail the validation
|
|
724
|
+
if (e.optionSelected.value !== e.value) return true;
|
|
725
|
+
|
|
726
|
+
/**
|
|
727
|
+
* Now let's make sure the user hasn't change the value in the input after selecting an option.
|
|
728
|
+
* This is to make sure there's no user confusion if they select an option but then change the value to something else.
|
|
729
|
+
*/
|
|
730
|
+
|
|
731
|
+
// Guard Clause: If the current input value doesn't match the option selected value fail the validation
|
|
732
|
+
if (currentInputValue && currentInputValue !== e.optionSelected.value) return true;
|
|
733
|
+
|
|
734
|
+
// Guard Clause: If the current input value doesn't match the combobox value fail the validation
|
|
735
|
+
if (currentInputValue && currentInputValue !== e.value) return true;
|
|
736
|
+
|
|
737
|
+
// If all the checks passed the validation passes
|
|
738
|
+
return false;
|
|
739
|
+
},
|
|
740
|
+
validity: 'valueMissing',
|
|
741
|
+
message: e => e.getAttribute('setCustomValidityValueMissingFilter') || e.setCustomValidity || ''
|
|
742
|
+
}
|
|
743
|
+
]
|
|
698
744
|
}
|
|
699
745
|
};
|
|
700
746
|
|
|
@@ -703,6 +749,8 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
703
749
|
elementType = 'input';
|
|
704
750
|
} else if (this.runtimeUtils.elementMatch(elem, 'auro-counter') || this.runtimeUtils.elementMatch(elem, 'auro-counter-group')) {
|
|
705
751
|
elementType = 'counter';
|
|
752
|
+
} else if (this.runtimeUtils.elementMatch(elem, 'auro-combobox')) {
|
|
753
|
+
elementType = 'combobox';
|
|
706
754
|
}
|
|
707
755
|
|
|
708
756
|
if (elementType) {
|
|
@@ -889,6 +937,15 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
889
937
|
}
|
|
890
938
|
}
|
|
891
939
|
|
|
940
|
+
const isCombobox = this.runtimeUtils.elementMatch(elem, 'auro-combobox');
|
|
941
|
+
|
|
942
|
+
if (isCombobox) {
|
|
943
|
+
|
|
944
|
+
if (!elem.persistInput || elem.behavior === "filter") {
|
|
945
|
+
hasValue = elem.input.value?.length > 0;
|
|
946
|
+
}
|
|
947
|
+
}
|
|
948
|
+
|
|
892
949
|
if (!hasValue && elem.required && elem.touched) {
|
|
893
950
|
elem.validity = 'valueMissing';
|
|
894
951
|
elem.errorMessage = elem.setCustomValidityValueMissing || elem.setCustomValidity || '';
|
|
@@ -897,6 +954,11 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
897
954
|
this.validateElementAttributes(elem);
|
|
898
955
|
} else if (hasValue && (this.runtimeUtils.elementMatch(elem, 'auro-counter') || this.runtimeUtils.elementMatch(elem, 'auro-counter-group'))) {
|
|
899
956
|
this.validateElementAttributes(elem);
|
|
957
|
+
} else if (isCombobox) {
|
|
958
|
+
this.validateElementAttributes(elem);
|
|
959
|
+
|
|
960
|
+
// Don't run extra validation for cases where the combobox is not being used as a filter
|
|
961
|
+
validationShouldRun = elem.behavior !== 'filter';
|
|
900
962
|
}
|
|
901
963
|
}
|
|
902
964
|
|
|
@@ -904,8 +966,8 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
904
966
|
|
|
905
967
|
const isCombobox = this.runtimeUtils.elementMatch(elem, 'auro-combobox');
|
|
906
968
|
|
|
907
|
-
// Don't reset combobox validity if
|
|
908
|
-
if (!isCombobox || isCombobox && !elem.
|
|
969
|
+
// Don't reset combobox validity if persistInput is set since we can't use the input value to validate
|
|
970
|
+
if (!isCombobox || isCombobox && !elem.persistInput) {
|
|
909
971
|
|
|
910
972
|
// run validation on all inputs since we're going to use them to set the validity of this component
|
|
911
973
|
this.auroInputElements.forEach(input => input.validate());
|
|
@@ -978,6 +1040,8 @@ let AuroFormValidation$1 = class AuroFormValidation {
|
|
|
978
1040
|
if (input.validationMessage.length > 0) {
|
|
979
1041
|
elem.errorMessage = input.validationMessage;
|
|
980
1042
|
}
|
|
1043
|
+
} else if (this.runtimeUtils.elementMatch(elem, 'auro-combobox') && elem.errorMessage === '') {
|
|
1044
|
+
elem.errorMessage = elem.input?.inputElement?.validationMessage;
|
|
981
1045
|
} else if (this.inputElements?.length > 0 && elem.errorMessage === '') {
|
|
982
1046
|
const firstInput = this.inputElements[0];
|
|
983
1047
|
|
|
@@ -5207,7 +5271,7 @@ var emphasizedStyleCss = i$5`:host([layout*=emphasized][shape*=pill]:not([layout
|
|
|
5207
5271
|
|
|
5208
5272
|
var emphasizedColorCss = i$5`.layout-emphasized:focus-within,.layout-emphasized-left:focus-within,.layout-emphasized-right:focus-within{--auro-input-border-color: var(--ds-auro-input-border-color)}`;
|
|
5209
5273
|
|
|
5210
|
-
var snowflakeStyleCss = i$5`:root{--ds-advanced-color-button-flat-text: #676767;--ds-advanced-color-button-flat-text-disabled: #d0d0d0;--ds-advanced-color-button-flat-text-hover: #525252;--ds-advanced-color-button-flat-text-inverse: #ffffff;--ds-advanced-color-button-flat-text-inverse-disabled: #7e8894;--ds-advanced-color-button-flat-text-inverse-hover: #adadad;--ds-advanced-color-button-ghost-background-hover: rgba(0, 0, 0, 0.05);--ds-advanced-color-button-ghost-background-inverse-hover: rgba(255, 255, 255, 0.05);--ds-advanced-color-button-ghost-text: #01426a;--ds-advanced-color-button-ghost-text-disabled: #d0d0d0;--ds-advanced-color-button-ghost-text-inverse: #ffffff;--ds-advanced-color-button-ghost-text-inverse-disabled: #7e8894;--ds-advanced-color-button-primary-background: #01426a;--ds-advanced-color-button-primary-background-disabled: #acc9e2;--ds-advanced-color-button-primary-background-hover: #00274a;--ds-advanced-color-button-primary-background-inactive: #cfe0ef;--ds-advanced-color-button-primary-background-inactive-hover: #89b2d4;--ds-advanced-color-button-primary-background-inverse: #ffffff;--ds-advanced-color-button-primary-background-inverse-disabled: rgba(255, 255, 255, 0.75);--ds-advanced-color-button-primary-background-inverse-hover: #ebf3f9;--ds-advanced-color-button-primary-border: #01426a;--ds-advanced-color-button-primary-border-disabled: #acc9e2;--ds-advanced-color-button-primary-border-hover: #00274a;--ds-advanced-color-button-primary-border-inverse: #ffffff;--ds-advanced-color-button-primary-border-inverse-disabled: rgba(255, 255, 255, 0.75);--ds-advanced-color-button-primary-border-inverse-hover: #ebf3f9;--ds-advanced-color-button-primary-text: #ffffff;--ds-advanced-color-button-primary-text-disabled: #ffffff;--ds-advanced-color-button-primary-text-inverse: #01426a;--ds-advanced-color-button-secondary-background: #ffffff;--ds-advanced-color-button-secondary-background-disabled: #f7f7f7;--ds-advanced-color-button-secondary-background-hover: #f2f2f2;--ds-advanced-color-button-secondary-background-inverse-hover: rgba(255, 255, 255, 0.1);--ds-advanced-color-button-secondary-border: #01426a;--ds-advanced-color-button-secondary-border-hover: #00274a;--ds-advanced-color-button-secondary-border-disabled: #cfe0ef;--ds-advanced-color-button-secondary-border-inverse: #ffffff;--ds-advanced-color-button-secondary-border-inverse-disabled: #dddddd;--ds-advanced-color-button-secondary-text: #01426a;--ds-advanced-color-button-secondary-text-hover: #00274a;--ds-advanced-color-button-secondary-text-inverse: #ffffff;--ds-advanced-color-button-tertiary-background: rgba(0, 0, 0, 0.05);--ds-advanced-color-button-tertiary-background-hover: rgba(0, 0, 0, 0.1);--ds-advanced-color-button-tertiary-background-inverse: rgba(255, 255, 255, 0.05);--ds-advanced-color-button-tertiary-background-inverse-hover: rgba(255, 255, 255, 0.1);--ds-advanced-color-button-tertiary-text: #01426a;--ds-advanced-color-button-tertiary-text-hover: #00274a;--ds-advanced-color-button-tertiary-text-inverse: #ffffff;--ds-advanced-color-accents-accent1: #b2d583;--ds-advanced-color-accents-accent1-bold: #92c450;--ds-advanced-color-accents-accent1-muted: #deedca;--ds-advanced-color-accents-accent2: #fad362;--ds-advanced-color-accents-accent2-bold: #f2ba14;--ds-advanced-color-accents-accent2-muted: #fde398;--ds-advanced-color-accents-accent3: #63beff;--ds-advanced-color-accents-accent3-bold: #0074ca;--ds-advanced-color-accents-accent3-muted: #aedeff;--ds-advanced-color-accents-accent4: #feb17a;--ds-advanced-color-accents-accent4-bold: #fb7f24;--ds-advanced-color-accents-accent4-muted: #ffe2cf;--ds-advanced-color-accents-transparency: rgba(0, 0, 0, 0.1);--ds-advanced-color-accents-transparency-inverse: rgba(255, 255, 255, 0.2);--ds-advanced-color-avatar-gradient-bottom: #cfe0ef;--ds-advanced-color-avatar-gradient-top: #6899c6;--ds-advanced-color-boolean-disabled-inverse: #7e8894;--ds-advanced-color-boolean-error: #e31f26;--ds-advanced-color-boolean-error-hover: #b1161c;--ds-advanced-color-boolean-error-inverse: #f9a4a8;--ds-advanced-color-boolean-error-inverse-hover: #f15f65;--ds-advanced-color-boolean-indicator: #ffffff;--ds-advanced-color-boolean-indicator-inverse: #00274a;--ds-advanced-color-boolean-isfalse: #ffffff;--ds-advanced-color-boolean-isfalse-border: #585e67;--ds-advanced-color-boolean-isfalse-border-inverse: #ffffff;--ds-advanced-color-boolean-isfalse-hover: #f2f2f2;--ds-advanced-color-boolean-isfalse-inverse: rgba(255, 255, 255, 0.15);--ds-advanced-color-boolean-isfalse-inverse-hover: rgba(255, 255, 255, 0.2);--ds-advanced-color-boolean-istrue: #01426a;--ds-advanced-color-boolean-istrue-hover: #00274a;--ds-advanced-color-boolean-istrue-inverse: #ffffff;--ds-advanced-color-boolean-istrue-inverse-hover: rgba(255, 255, 255, 0.7);--ds-advanced-color-dropdown-emphasized-background: #00274A1a;--ds-advanced-color-dropdown-emphasized-background-hover: #00274A33;--ds-advanced-color-expanded-widget-background: #00274a;--ds-advanced-color-flightline-indicator: #00274a;--ds-advanced-color-flightline-line: #00274a;--ds-advanced-color-hyperlink-text: #2875b5;--ds-advanced-color-hyperlink-text-hover: #01426a;--ds-advanced-color-hyperlink-text-inverse: #ffffff;--ds-advanced-color-hyperlink-text-inverse-hover: #ebf3f9;--ds-advanced-color-shared-background: #ffffff;--ds-advanced-color-shared-background-inverse: rgba(255, 255, 255, 0.15);--ds-advanced-color-shared-background-inverse-disabled: rgba(255, 255, 255, 0.1);--ds-advanced-color-shared-background-inverse-hover: rgba(255, 255, 255, 0.2);--ds-advanced-color-shared-background-muted: #f7f7f7;--ds-advanced-color-shared-background-strong: #676767;--ds-advanced-color-shared-emphasized-background: rgba(1, 66, 106, 0.1);--ds-advanced-color-shared-emphasized-background-hover: rgba(1, 66, 106, 0.2);--ds-advanced-color-shared-scrim: rgba(0, 0, 0, 0.5);--ds-advanced-color-shared-text-accent: #2875b5;--ds-advanced-color-skeleton-background: #f7f8fa;--ds-advanced-color-skeleton-wave: #e4e8ec;--ds-advanced-color-state-background-disabled: #dddddd;--ds-advanced-color-state-background-hover: #f2f2f2;--ds-advanced-color-state-background-inverse-disabled: #7e8894;--ds-advanced-color-state-error-inverse: #f9a4a8;--ds-advanced-color-state-focused: #01426a;--ds-advanced-color-state-focused-inverse: #ffffff;--ds-advanced-color-state-selected: #01426a;--ds-advanced-color-state-selected-hover: #00274a;--ds-basic-color-border-bold: #585e67;--ds-basic-color-border-brand: #00274a;--ds-basic-color-border-default: #959595;--ds-basic-color-border-divider: rgba(0, 0, 0, 0.15);--ds-basic-color-border-divider-inverse: rgba(255, 255, 255, 0.4);--ds-basic-color-border-inverse: #ffffff;--ds-basic-color-border-subtle: #dddddd;--ds-basic-color-brand-primary: #01426a;--ds-basic-color-brand-primary-bold: #00274a;--ds-basic-color-brand-primary-muted: #ebf3f9;--ds-basic-color-brand-primary-subtle: #2875b5;--ds-basic-color-brand-secondary: #5de3f7;--ds-basic-color-brand-secondary-bold: #18c3dd;--ds-basic-color-brand-secondary-muted: #ebfafd;--ds-basic-color-brand-secondary-subtle: #b4eff9;--ds-basic-color-brand-tertiary: #a3cd6a;--ds-basic-color-brand-tertiary-bold: #7daf3b;--ds-basic-color-brand-tertiary-muted: #eaf3dd;--ds-basic-color-brand-tertiary-subtle: #c9e1a7;--ds-basic-color-fare-basiceconomy: #97eaf8;--ds-basic-color-fare-business: #01426a;--ds-basic-color-fare-economy: #0074ca;--ds-basic-color-fare-first: #00274a;--ds-basic-color-fare-premiumeconomy: #005154;--ds-basic-color-page-background-default: #ffffff;--ds-basic-color-page-background-utility: #ffffff;--ds-basic-color-status-default: #afb9c6;--ds-basic-color-status-error: #e31f26;--ds-basic-color-status-error-subtle: #fbc6c6;--ds-basic-color-status-info: #01426a;--ds-basic-color-status-info-subtle: #ebf3f9;--ds-basic-color-status-success: #447a1f;--ds-basic-color-status-success-subtle: #d6eac7;--ds-basic-color-status-warning: #fac200;--ds-basic-color-status-warning-subtle: #fff0b2;--ds-basic-color-surface-accent1: #5de3f7;--ds-basic-color-surface-accent1-muted: #ebfafd;--ds-basic-color-surface-accent1-subtle: #b4eff9;--ds-basic-color-surface-accent2: #a3cd6a;--ds-basic-color-surface-accent2-muted: #eaf3dd;--ds-basic-color-surface-default: #ffffff;--ds-basic-color-surface-inverse: #00274a;--ds-basic-color-surface-inverse-subtle: #2875b5;--ds-basic-color-surface-neutral-medium: #c5c5c5;--ds-basic-color-surface-neutral-subtle: #f7f7f7;--ds-basic-color-texticon-accent1: #265688;--ds-basic-color-texticon-default: #2a2a2a;--ds-basic-color-texticon-disabled: #d0d0d0;--ds-basic-color-texticon-inverse: #ffffff;--ds-basic-color-texticon-inverse-disabled: #7e8894;--ds-basic-color-texticon-inverse-muted: #ccd2db;--ds-basic-color-texticon-muted: #676767;--ds-basic-color-tier-program-loungetier-lounge: #01426a;--ds-basic-color-tier-program-loungetier-loungeplus: #53b390;--ds-basic-color-tier-program-loyaltytier-bronze: #d99f6d;--ds-basic-color-tier-program-loyaltytier-bronze-muted: #eed4be;--ds-basic-color-tier-program-loyaltytier-cobalt: #030772;--ds-basic-color-tier-program-loyaltytier-cobalt-muted: #a9b6d6;--ds-basic-color-tier-program-loyaltytier-copper: #cb7457;--ds-basic-color-tier-program-loyaltytier-copper-muted: #e7bfb1;--ds-basic-color-tier-program-loyaltytier-gold: #fbdc7a;--ds-basic-color-tier-program-loyaltytier-gold-muted: #fdefc4;--ds-basic-color-tier-program-loyaltytier-nickel: #abaab1;--ds-basic-color-tier-program-loyaltytier-nickel-muted: #e5e4e7;--ds-basic-color-tier-program-loyaltytier-platinum: #bcb8a4;--ds-basic-color-tier-program-loyaltytier-platinum-muted: #dad8cd;--ds-basic-color-tier-program-loyaltytier-silver: #e4e9ec;--ds-basic-color-tier-program-loyaltytier-silver-muted: #f9fafb;--ds-basic-color-tier-program-loyaltytier-titanium: #282828;--ds-basic-color-tier-program-loyaltytier-titanium-muted: #545454;--ds-basic-color-tier-program-oneworld-emerald: #139142;--ds-basic-color-tier-program-oneworld-ruby: #a41d4a;--ds-basic-color-tier-program-oneworld-sapphire: #015daa;--ds-basic-type-brand-family-primary: "AS Circular";--ds-basic-type-brand-family-secondary: "Good OT";--ds-basic-type-brand-line-height-primary: 1.3;--ds-basic-type-brand-line-height-secondary: 1;--ds-basic-type-brand-letter-spacing-primary: 0;--ds-basic-type-brand-letter-spacing-secondary: 0.05em;--ds-basic-type-brand-letter-spacing-tertiary: 0.10em;--ds-basic-type-family-accent: "Good OT";--ds-basic-type-family-accent-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-family-body: "AS Circular";--ds-basic-type-family-body-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-family-display: "AS Circular";--ds-basic-type-family-display-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-family-heading: "AS Circular";--ds-basic-type-family-heading-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-letter-spacing-accent: 0.05em;--ds-basic-type-letter-spacing-accent2: 0.10em;--ds-basic-type-letter-spacing-body: 0;--ds-basic-type-letter-spacing-display: 0;--ds-basic-type-letter-spacing-heading: 0;--ds-basic-type-line-height-accent: 1.3;--ds-basic-type-line-height-accent2: 1;--ds-basic-type-line-height-body: 1.625rem;--ds-basic-type-line-height-body2: 1.5rem;--ds-basic-type-line-height-body3: 1.25rem;--ds-basic-type-line-height-body4: 1rem;--ds-basic-type-line-height-body5: 0.875rem;--ds-basic-type-line-height-display: 1.3;--ds-basic-type-line-height-heading: 1.3;--ds-basic-type-weight-accent: 450;--ds-basic-type-weight-accent2: 500;--ds-basic-type-weight-body: 450;--ds-basic-type-weight-display: 300;--ds-basic-type-weight-heading: 300;--ds-basic-type-weight-heading2: 450}:host([layout*=snowflake]) .leftIndent{margin-left:var(--ds-size-200, 1rem)}:host([layout*=snowflake]) .rightIndent{margin-right:var(--ds-size-200, 1rem)}.layout-snowflake{display:flex;flex-direction:row;align-items:center;justify-content:center}.layout-snowflake label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding-block-start:var(--ds-size-50, 0.25rem)}.layout-snowflake input{transition:all 1ms linear;text-align:center}.layout-snowflake .mainContent{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;flex:1;overflow:hidden}.layout-snowflake .displayValue{display:none;width:100%}.layout-snowflake .displayValue.hasContent:is(.withValue):not(.hasFocus){display:block}.layout-snowflake .displayValueWrapper{display:flex;flex-direction:row;align-items:center;justify-content:center;width:100%}.layout-snowflake.withValue{justify-content:flex-start}.layout-snowflake:not(:focus-within):not(:is([validity]:not([validity=valid]))){--ds-auro-input-border-color: transparent}.layout-snowflake:focus-within{justify-content:flex-start}.layout-snowflake:focus-within .alertNotification{display:none}.layout-snowflake .accents{width:var(--ds-size-300, 1.5rem)}.layout-snowflake .accents.left{padding-left:var(--ds-size-200, 1rem)}.layout-snowflake .accents.right{padding-right:var(--ds-size-200, 1rem)}:host([layout*=snowflake]) .helpTextWrapper{text-align:center}`;
|
|
5274
|
+
var snowflakeStyleCss = i$5`:root{--ds-advanced-color-button-flat-text: #676767;--ds-advanced-color-button-flat-text-disabled: #d0d0d0;--ds-advanced-color-button-flat-text-hover: #525252;--ds-advanced-color-button-flat-text-inverse: #ffffff;--ds-advanced-color-button-flat-text-inverse-disabled: #7e8894;--ds-advanced-color-button-flat-text-inverse-hover: #adadad;--ds-advanced-color-button-ghost-background-hover: rgba(0, 0, 0, 0.05);--ds-advanced-color-button-ghost-background-inverse-hover: rgba(255, 255, 255, 0.05);--ds-advanced-color-button-ghost-text: #01426a;--ds-advanced-color-button-ghost-text-disabled: #d0d0d0;--ds-advanced-color-button-ghost-text-inverse: #ffffff;--ds-advanced-color-button-ghost-text-inverse-disabled: #7e8894;--ds-advanced-color-button-primary-background: #01426a;--ds-advanced-color-button-primary-background-disabled: #acc9e2;--ds-advanced-color-button-primary-background-hover: #00274a;--ds-advanced-color-button-primary-background-inactive: #cfe0ef;--ds-advanced-color-button-primary-background-inactive-hover: #89b2d4;--ds-advanced-color-button-primary-background-inverse: #ffffff;--ds-advanced-color-button-primary-background-inverse-disabled: rgba(255, 255, 255, 0.75);--ds-advanced-color-button-primary-background-inverse-hover: #ebf3f9;--ds-advanced-color-button-primary-border: #01426a;--ds-advanced-color-button-primary-border-disabled: #acc9e2;--ds-advanced-color-button-primary-border-hover: #00274a;--ds-advanced-color-button-primary-border-inverse: #ffffff;--ds-advanced-color-button-primary-border-inverse-disabled: rgba(255, 255, 255, 0.75);--ds-advanced-color-button-primary-border-inverse-hover: #ebf3f9;--ds-advanced-color-button-primary-text: #ffffff;--ds-advanced-color-button-primary-text-disabled: #ffffff;--ds-advanced-color-button-primary-text-inverse: #01426a;--ds-advanced-color-button-secondary-background: #ffffff;--ds-advanced-color-button-secondary-background-disabled: #f7f7f7;--ds-advanced-color-button-secondary-background-hover: #f2f2f2;--ds-advanced-color-button-secondary-background-inverse-hover: rgba(255, 255, 255, 0.1);--ds-advanced-color-button-secondary-border: #01426a;--ds-advanced-color-button-secondary-border-hover: #00274a;--ds-advanced-color-button-secondary-border-disabled: #cfe0ef;--ds-advanced-color-button-secondary-border-inverse: #ffffff;--ds-advanced-color-button-secondary-border-inverse-disabled: #dddddd;--ds-advanced-color-button-secondary-text: #01426a;--ds-advanced-color-button-secondary-text-hover: #00274a;--ds-advanced-color-button-secondary-text-inverse: #ffffff;--ds-advanced-color-button-tertiary-background: rgba(0, 0, 0, 0.05);--ds-advanced-color-button-tertiary-background-hover: rgba(0, 0, 0, 0.1);--ds-advanced-color-button-tertiary-background-inverse: rgba(255, 255, 255, 0.05);--ds-advanced-color-button-tertiary-background-inverse-hover: rgba(255, 255, 255, 0.1);--ds-advanced-color-button-tertiary-text: #01426a;--ds-advanced-color-button-tertiary-text-hover: #00274a;--ds-advanced-color-button-tertiary-text-inverse: #ffffff;--ds-advanced-color-accents-accent1: #b2d583;--ds-advanced-color-accents-accent1-bold: #92c450;--ds-advanced-color-accents-accent1-muted: #deedca;--ds-advanced-color-accents-accent2: #fad362;--ds-advanced-color-accents-accent2-bold: #f2ba14;--ds-advanced-color-accents-accent2-muted: #fde398;--ds-advanced-color-accents-accent3: #63beff;--ds-advanced-color-accents-accent3-bold: #0074ca;--ds-advanced-color-accents-accent3-muted: #aedeff;--ds-advanced-color-accents-accent4: #feb17a;--ds-advanced-color-accents-accent4-bold: #fb7f24;--ds-advanced-color-accents-accent4-muted: #ffe2cf;--ds-advanced-color-accents-transparency: rgba(0, 0, 0, 0.1);--ds-advanced-color-accents-transparency-inverse: rgba(255, 255, 255, 0.2);--ds-advanced-color-avatar-gradient-bottom: #cfe0ef;--ds-advanced-color-avatar-gradient-top: #6899c6;--ds-advanced-color-boolean-disabled-inverse: #7e8894;--ds-advanced-color-boolean-error: #e31f26;--ds-advanced-color-boolean-error-hover: #b1161c;--ds-advanced-color-boolean-error-inverse: #f9a4a8;--ds-advanced-color-boolean-error-inverse-hover: #f15f65;--ds-advanced-color-boolean-indicator: #ffffff;--ds-advanced-color-boolean-indicator-inverse: #00274a;--ds-advanced-color-boolean-isfalse: #ffffff;--ds-advanced-color-boolean-isfalse-border: #585e67;--ds-advanced-color-boolean-isfalse-border-inverse: #ffffff;--ds-advanced-color-boolean-isfalse-hover: #f2f2f2;--ds-advanced-color-boolean-isfalse-inverse: rgba(255, 255, 255, 0.15);--ds-advanced-color-boolean-isfalse-inverse-hover: rgba(255, 255, 255, 0.2);--ds-advanced-color-boolean-istrue: #01426a;--ds-advanced-color-boolean-istrue-hover: #00274a;--ds-advanced-color-boolean-istrue-inverse: #ffffff;--ds-advanced-color-boolean-istrue-inverse-hover: rgba(255, 255, 255, 0.7);--ds-advanced-color-dropdown-emphasized-background: #00274A1a;--ds-advanced-color-dropdown-emphasized-background-hover: #00274A33;--ds-advanced-color-expanded-widget-background: #00274a;--ds-advanced-color-flightline-indicator: #00274a;--ds-advanced-color-flightline-line: #00274a;--ds-advanced-color-hyperlink-text: #2875b5;--ds-advanced-color-hyperlink-text-hover: #01426a;--ds-advanced-color-hyperlink-text-inverse: #ffffff;--ds-advanced-color-hyperlink-text-inverse-hover: #ebf3f9;--ds-advanced-color-shared-background: #ffffff;--ds-advanced-color-shared-background-inverse: rgba(255, 255, 255, 0.15);--ds-advanced-color-shared-background-inverse-disabled: rgba(255, 255, 255, 0.1);--ds-advanced-color-shared-background-inverse-hover: rgba(255, 255, 255, 0.2);--ds-advanced-color-shared-background-muted: #f7f7f7;--ds-advanced-color-shared-background-strong: #676767;--ds-advanced-color-shared-emphasized-background: rgba(1, 66, 106, 0.1);--ds-advanced-color-shared-emphasized-background-hover: rgba(1, 66, 106, 0.2);--ds-advanced-color-shared-scrim: rgba(0, 0, 0, 0.5);--ds-advanced-color-shared-text-accent: #2875b5;--ds-advanced-color-skeleton-background: #f7f8fa;--ds-advanced-color-skeleton-wave: #e4e8ec;--ds-advanced-color-state-background-disabled: #dddddd;--ds-advanced-color-state-background-hover: #f2f2f2;--ds-advanced-color-state-background-inverse-disabled: #7e8894;--ds-advanced-color-state-error-inverse: #f9a4a8;--ds-advanced-color-state-focused: #01426a;--ds-advanced-color-state-focused-inverse: #ffffff;--ds-advanced-color-state-selected: #01426a;--ds-advanced-color-state-selected-hover: #00274a;--ds-basic-color-border-bold: #585e67;--ds-basic-color-border-brand: #00274a;--ds-basic-color-border-default: #959595;--ds-basic-color-border-divider: rgba(0, 0, 0, 0.15);--ds-basic-color-border-divider-inverse: rgba(255, 255, 255, 0.4);--ds-basic-color-border-inverse: #ffffff;--ds-basic-color-border-subtle: #dddddd;--ds-basic-color-brand-primary: #01426a;--ds-basic-color-brand-primary-bold: #00274a;--ds-basic-color-brand-primary-muted: #ebf3f9;--ds-basic-color-brand-primary-subtle: #2875b5;--ds-basic-color-brand-secondary: #5de3f7;--ds-basic-color-brand-secondary-bold: #18c3dd;--ds-basic-color-brand-secondary-muted: #ebfafd;--ds-basic-color-brand-secondary-subtle: #b4eff9;--ds-basic-color-brand-tertiary: #a3cd6a;--ds-basic-color-brand-tertiary-bold: #7daf3b;--ds-basic-color-brand-tertiary-muted: #eaf3dd;--ds-basic-color-brand-tertiary-subtle: #c9e1a7;--ds-basic-color-fare-basiceconomy: #97eaf8;--ds-basic-color-fare-business: #01426a;--ds-basic-color-fare-economy: #0074ca;--ds-basic-color-fare-first: #00274a;--ds-basic-color-fare-premiumeconomy: #005154;--ds-basic-color-page-background-default: #ffffff;--ds-basic-color-page-background-utility: #ffffff;--ds-basic-color-status-default: #afb9c6;--ds-basic-color-status-error: #e31f26;--ds-basic-color-status-error-subtle: #fbc6c6;--ds-basic-color-status-info: #01426a;--ds-basic-color-status-info-subtle: #ebf3f9;--ds-basic-color-status-success: #447a1f;--ds-basic-color-status-success-subtle: #d6eac7;--ds-basic-color-status-warning: #fac200;--ds-basic-color-status-warning-subtle: #fff0b2;--ds-basic-color-surface-accent1: #5de3f7;--ds-basic-color-surface-accent1-muted: #ebfafd;--ds-basic-color-surface-accent1-subtle: #b4eff9;--ds-basic-color-surface-accent2: #a3cd6a;--ds-basic-color-surface-accent2-muted: #eaf3dd;--ds-basic-color-surface-default: #ffffff;--ds-basic-color-surface-inverse: #00274a;--ds-basic-color-surface-inverse-subtle: #2875b5;--ds-basic-color-surface-neutral-medium: #c5c5c5;--ds-basic-color-surface-neutral-subtle: #f7f7f7;--ds-basic-color-texticon-accent1: #265688;--ds-basic-color-texticon-default: #2a2a2a;--ds-basic-color-texticon-disabled: #d0d0d0;--ds-basic-color-texticon-inverse: #ffffff;--ds-basic-color-texticon-inverse-disabled: #7e8894;--ds-basic-color-texticon-inverse-muted: #ccd2db;--ds-basic-color-texticon-muted: #676767;--ds-basic-color-tier-program-loungetier-lounge: #01426a;--ds-basic-color-tier-program-loungetier-loungeplus: #53b390;--ds-basic-color-tier-program-loyaltytier-bronze: #d99f6d;--ds-basic-color-tier-program-loyaltytier-bronze-muted: #eed4be;--ds-basic-color-tier-program-loyaltytier-cobalt: #030772;--ds-basic-color-tier-program-loyaltytier-cobalt-muted: #a9b6d6;--ds-basic-color-tier-program-loyaltytier-copper: #cb7457;--ds-basic-color-tier-program-loyaltytier-copper-muted: #e7bfb1;--ds-basic-color-tier-program-loyaltytier-gold: #fbdc7a;--ds-basic-color-tier-program-loyaltytier-gold-muted: #fdefc4;--ds-basic-color-tier-program-loyaltytier-nickel: #abaab1;--ds-basic-color-tier-program-loyaltytier-nickel-muted: #e5e4e7;--ds-basic-color-tier-program-loyaltytier-platinum: #bcb8a4;--ds-basic-color-tier-program-loyaltytier-platinum-muted: #dad8cd;--ds-basic-color-tier-program-loyaltytier-silver: #e4e9ec;--ds-basic-color-tier-program-loyaltytier-silver-muted: #f9fafb;--ds-basic-color-tier-program-loyaltytier-titanium: #282828;--ds-basic-color-tier-program-loyaltytier-titanium-muted: #545454;--ds-basic-color-tier-program-oneworld-emerald: #139142;--ds-basic-color-tier-program-oneworld-ruby: #a41d4a;--ds-basic-color-tier-program-oneworld-sapphire: #015daa;--ds-basic-type-brand-family-primary: "AS Circular";--ds-basic-type-brand-family-secondary: "Good OT";--ds-basic-type-brand-line-height-primary: 1.3;--ds-basic-type-brand-line-height-secondary: 1;--ds-basic-type-brand-letter-spacing-primary: 0;--ds-basic-type-brand-letter-spacing-secondary: 0.05em;--ds-basic-type-brand-letter-spacing-tertiary: 0.10em;--ds-basic-type-family-accent: "Good OT";--ds-basic-type-family-accent-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-family-body: "AS Circular";--ds-basic-type-family-body-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-family-display: "AS Circular";--ds-basic-type-family-display-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-family-heading: "AS Circular";--ds-basic-type-family-heading-fallback: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-basic-type-letter-spacing-accent: 0.05em;--ds-basic-type-letter-spacing-accent2: 0.10em;--ds-basic-type-letter-spacing-body: 0;--ds-basic-type-letter-spacing-display: 0;--ds-basic-type-letter-spacing-heading: 0;--ds-basic-type-line-height-accent: 1.3;--ds-basic-type-line-height-accent2: 1;--ds-basic-type-line-height-body: 1.625rem;--ds-basic-type-line-height-body2: 1.5rem;--ds-basic-type-line-height-body3: 1.25rem;--ds-basic-type-line-height-body4: 1rem;--ds-basic-type-line-height-body5: 0.875rem;--ds-basic-type-line-height-display: 1.3;--ds-basic-type-line-height-heading: 1.3;--ds-basic-type-weight-accent: 450;--ds-basic-type-weight-accent2: 500;--ds-basic-type-weight-body: 450;--ds-basic-type-weight-display: 300;--ds-basic-type-weight-heading: 300;--ds-basic-type-weight-heading2: 450}:host([layout*=snowflake]) .leftIndent{margin-left:var(--ds-size-200, 1rem)}:host([layout*=snowflake]) .rightIndent{margin-right:var(--ds-size-200, 1rem)}.layout-snowflake{display:flex;flex-direction:row;align-items:center;justify-content:center}.layout-snowflake label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding-block-start:var(--ds-size-50, 0.25rem)}.layout-snowflake input{transition:all 1ms linear;text-align:center}.layout-snowflake .mainContent{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;flex:1;overflow:hidden}.layout-snowflake .displayValue{display:none;width:100%}.layout-snowflake .displayValue.hasContent:is(.withValue):not(.hasFocus){display:block}.layout-snowflake .displayValueWrapper{display:flex;flex-direction:row;align-items:center;justify-content:center;width:100%}.layout-snowflake.withValue{justify-content:flex-start}.layout-snowflake.withValue:hover .alertNotification{display:none}.layout-snowflake:not(:focus-within):not(:is([validity]:not([validity=valid]))){--ds-auro-input-border-color: transparent}.layout-snowflake:focus-within{justify-content:flex-start}.layout-snowflake:focus-within .alertNotification{display:none}.layout-snowflake .accents{width:var(--ds-size-300, 1.5rem)}.layout-snowflake .accents.left{padding-left:var(--ds-size-200, 1rem)}.layout-snowflake .accents.right{padding-right:var(--ds-size-200, 1rem)}:host([layout*=snowflake]) .helpTextWrapper{text-align:center}`;
|
|
5211
5275
|
|
|
5212
5276
|
const watchedItems = new Set();
|
|
5213
5277
|
|
|
@@ -9764,6 +9828,52 @@ class AuroFormValidation {
|
|
|
9764
9828
|
message: e => e.getAttribute('setCustomValidityRangeUnderflow') || ''
|
|
9765
9829
|
}
|
|
9766
9830
|
]
|
|
9831
|
+
},
|
|
9832
|
+
combobox: {
|
|
9833
|
+
filter: [
|
|
9834
|
+
{
|
|
9835
|
+
check: (e) => {
|
|
9836
|
+
|
|
9837
|
+
// Guard Clause: If the behavior is not 'filter', skip this validation
|
|
9838
|
+
if (e.behavior !== 'filter') return false;
|
|
9839
|
+
|
|
9840
|
+
// Get the current input value
|
|
9841
|
+
const currentInputValue = e.input.value;
|
|
9842
|
+
|
|
9843
|
+
// Skip validation if the input has no value
|
|
9844
|
+
if (!currentInputValue) return false;
|
|
9845
|
+
|
|
9846
|
+
/**
|
|
9847
|
+
* Let's check if the option selected and combobox value match.
|
|
9848
|
+
*/
|
|
9849
|
+
|
|
9850
|
+
// Guard Clause: If there is no option selected fail the validation
|
|
9851
|
+
if (!e.optionSelected) return true;
|
|
9852
|
+
|
|
9853
|
+
// Guard Clause: If there is no value fail the validation
|
|
9854
|
+
if (!e.value) return true;
|
|
9855
|
+
|
|
9856
|
+
// Guard Clause: If the selected option's value doesn't match the input value fail the validation
|
|
9857
|
+
if (e.optionSelected.value !== e.value) return true;
|
|
9858
|
+
|
|
9859
|
+
/**
|
|
9860
|
+
* Now let's make sure the user hasn't change the value in the input after selecting an option.
|
|
9861
|
+
* This is to make sure there's no user confusion if they select an option but then change the value to something else.
|
|
9862
|
+
*/
|
|
9863
|
+
|
|
9864
|
+
// Guard Clause: If the current input value doesn't match the option selected value fail the validation
|
|
9865
|
+
if (currentInputValue && currentInputValue !== e.optionSelected.value) return true;
|
|
9866
|
+
|
|
9867
|
+
// Guard Clause: If the current input value doesn't match the combobox value fail the validation
|
|
9868
|
+
if (currentInputValue && currentInputValue !== e.value) return true;
|
|
9869
|
+
|
|
9870
|
+
// If all the checks passed the validation passes
|
|
9871
|
+
return false;
|
|
9872
|
+
},
|
|
9873
|
+
validity: 'valueMissing',
|
|
9874
|
+
message: e => e.getAttribute('setCustomValidityValueMissingFilter') || e.setCustomValidity || ''
|
|
9875
|
+
}
|
|
9876
|
+
]
|
|
9767
9877
|
}
|
|
9768
9878
|
};
|
|
9769
9879
|
|
|
@@ -9772,6 +9882,8 @@ class AuroFormValidation {
|
|
|
9772
9882
|
elementType = 'input';
|
|
9773
9883
|
} else if (this.runtimeUtils.elementMatch(elem, 'auro-counter') || this.runtimeUtils.elementMatch(elem, 'auro-counter-group')) {
|
|
9774
9884
|
elementType = 'counter';
|
|
9885
|
+
} else if (this.runtimeUtils.elementMatch(elem, 'auro-combobox')) {
|
|
9886
|
+
elementType = 'combobox';
|
|
9775
9887
|
}
|
|
9776
9888
|
|
|
9777
9889
|
if (elementType) {
|
|
@@ -9958,6 +10070,15 @@ class AuroFormValidation {
|
|
|
9958
10070
|
}
|
|
9959
10071
|
}
|
|
9960
10072
|
|
|
10073
|
+
const isCombobox = this.runtimeUtils.elementMatch(elem, 'auro-combobox');
|
|
10074
|
+
|
|
10075
|
+
if (isCombobox) {
|
|
10076
|
+
|
|
10077
|
+
if (!elem.persistInput || elem.behavior === "filter") {
|
|
10078
|
+
hasValue = elem.input.value?.length > 0;
|
|
10079
|
+
}
|
|
10080
|
+
}
|
|
10081
|
+
|
|
9961
10082
|
if (!hasValue && elem.required && elem.touched) {
|
|
9962
10083
|
elem.validity = 'valueMissing';
|
|
9963
10084
|
elem.errorMessage = elem.setCustomValidityValueMissing || elem.setCustomValidity || '';
|
|
@@ -9966,6 +10087,11 @@ class AuroFormValidation {
|
|
|
9966
10087
|
this.validateElementAttributes(elem);
|
|
9967
10088
|
} else if (hasValue && (this.runtimeUtils.elementMatch(elem, 'auro-counter') || this.runtimeUtils.elementMatch(elem, 'auro-counter-group'))) {
|
|
9968
10089
|
this.validateElementAttributes(elem);
|
|
10090
|
+
} else if (isCombobox) {
|
|
10091
|
+
this.validateElementAttributes(elem);
|
|
10092
|
+
|
|
10093
|
+
// Don't run extra validation for cases where the combobox is not being used as a filter
|
|
10094
|
+
validationShouldRun = elem.behavior !== 'filter';
|
|
9969
10095
|
}
|
|
9970
10096
|
}
|
|
9971
10097
|
|
|
@@ -9973,8 +10099,8 @@ class AuroFormValidation {
|
|
|
9973
10099
|
|
|
9974
10100
|
const isCombobox = this.runtimeUtils.elementMatch(elem, 'auro-combobox');
|
|
9975
10101
|
|
|
9976
|
-
// Don't reset combobox validity if
|
|
9977
|
-
if (!isCombobox || isCombobox && !elem.
|
|
10102
|
+
// Don't reset combobox validity if persistInput is set since we can't use the input value to validate
|
|
10103
|
+
if (!isCombobox || isCombobox && !elem.persistInput) {
|
|
9978
10104
|
|
|
9979
10105
|
// run validation on all inputs since we're going to use them to set the validity of this component
|
|
9980
10106
|
this.auroInputElements.forEach(input => input.validate());
|
|
@@ -10047,6 +10173,8 @@ class AuroFormValidation {
|
|
|
10047
10173
|
if (input.validationMessage.length > 0) {
|
|
10048
10174
|
elem.errorMessage = input.validationMessage;
|
|
10049
10175
|
}
|
|
10176
|
+
} else if (this.runtimeUtils.elementMatch(elem, 'auro-combobox') && elem.errorMessage === '') {
|
|
10177
|
+
elem.errorMessage = elem.input?.inputElement?.validationMessage;
|
|
10050
10178
|
} else if (this.inputElements?.length > 0 && elem.errorMessage === '') {
|
|
10051
10179
|
const firstInput = this.inputElements[0];
|
|
10052
10180
|
|
|
@@ -13060,6 +13188,7 @@ class AuroCombobox extends AuroElement {
|
|
|
13060
13188
|
this.required = false;
|
|
13061
13189
|
this.value = undefined;
|
|
13062
13190
|
this.typedValue = undefined;
|
|
13191
|
+
this.behavior = "suggestion";
|
|
13063
13192
|
|
|
13064
13193
|
// Defaults that effect the overall layout of the combobox
|
|
13065
13194
|
this.checkmark = false;
|
|
@@ -13151,6 +13280,17 @@ class AuroCombobox extends AuroElement {
|
|
|
13151
13280
|
reflect: false
|
|
13152
13281
|
},
|
|
13153
13282
|
|
|
13283
|
+
/**
|
|
13284
|
+
* Sets the behavior of the combobox, "filter" or "suggestion".
|
|
13285
|
+
* "filter" requires the user to select an option from the menu.
|
|
13286
|
+
* "suggestion" allows the user to enter a value not present in the menu options.
|
|
13287
|
+
* @default suggestion
|
|
13288
|
+
*/
|
|
13289
|
+
behavior: {
|
|
13290
|
+
type: String,
|
|
13291
|
+
reflect: true
|
|
13292
|
+
},
|
|
13293
|
+
|
|
13154
13294
|
/**
|
|
13155
13295
|
* When attribute is present auro-menu will apply check marks to selected options.
|
|
13156
13296
|
*/
|
|
@@ -13227,7 +13367,7 @@ class AuroCombobox extends AuroElement {
|
|
|
13227
13367
|
},
|
|
13228
13368
|
|
|
13229
13369
|
/**
|
|
13230
|
-
* If set, combobox will not filter menuoptions based
|
|
13370
|
+
* If set, combobox will not filter menuoptions based on input.
|
|
13231
13371
|
*/
|
|
13232
13372
|
noFilter: {
|
|
13233
13373
|
type: Boolean,
|
|
@@ -13350,6 +13490,13 @@ class AuroCombobox extends AuroElement {
|
|
|
13350
13490
|
type: String
|
|
13351
13491
|
},
|
|
13352
13492
|
|
|
13493
|
+
/**
|
|
13494
|
+
* Custom help text message to display when validity = `valueMissing` due to the user not choosing a menu option when behavior = "filter".
|
|
13495
|
+
*/
|
|
13496
|
+
setCustomValidityValueMissingFilter: {
|
|
13497
|
+
type: String
|
|
13498
|
+
},
|
|
13499
|
+
|
|
13353
13500
|
/**
|
|
13354
13501
|
* Indicates whether the combobox is in a dirty state (has been interacted with).
|
|
13355
13502
|
* @type {boolean}
|
|
@@ -14005,6 +14152,8 @@ class AuroCombobox extends AuroElement {
|
|
|
14005
14152
|
this.addEventListener('auroFormElement-validated', (evt) => {
|
|
14006
14153
|
this.input.validity = evt.detail.validity;
|
|
14007
14154
|
this.input.errorMessage = evt.detail.message;
|
|
14155
|
+
this.validity = evt.detail.validity;
|
|
14156
|
+
this.errorMessage = evt.detail.message;
|
|
14008
14157
|
});
|
|
14009
14158
|
}
|
|
14010
14159
|
|
|
@@ -47,6 +47,16 @@ export class AuroCombobox extends AuroElement {
|
|
|
47
47
|
type: ArrayConstructor;
|
|
48
48
|
reflect: boolean;
|
|
49
49
|
};
|
|
50
|
+
/**
|
|
51
|
+
* Sets the behavior of the combobox, "filter" or "suggestion".
|
|
52
|
+
* "filter" requires the user to select an option from the menu.
|
|
53
|
+
* "suggestion" allows the user to enter a value not present in the menu options.
|
|
54
|
+
* @default suggestion
|
|
55
|
+
*/
|
|
56
|
+
behavior: {
|
|
57
|
+
type: StringConstructor;
|
|
58
|
+
reflect: boolean;
|
|
59
|
+
};
|
|
50
60
|
/**
|
|
51
61
|
* When attribute is present auro-menu will apply check marks to selected options.
|
|
52
62
|
*/
|
|
@@ -114,7 +124,7 @@ export class AuroCombobox extends AuroElement {
|
|
|
114
124
|
reflect: boolean;
|
|
115
125
|
};
|
|
116
126
|
/**
|
|
117
|
-
* If set, combobox will not filter menuoptions based
|
|
127
|
+
* If set, combobox will not filter menuoptions based on input.
|
|
118
128
|
*/
|
|
119
129
|
noFilter: {
|
|
120
130
|
type: BooleanConstructor;
|
|
@@ -216,6 +226,12 @@ export class AuroCombobox extends AuroElement {
|
|
|
216
226
|
setCustomValidityValueMissing: {
|
|
217
227
|
type: StringConstructor;
|
|
218
228
|
};
|
|
229
|
+
/**
|
|
230
|
+
* Custom help text message to display when validity = `valueMissing` due to the user not choosing a menu option when behavior = "filter".
|
|
231
|
+
*/
|
|
232
|
+
setCustomValidityValueMissingFilter: {
|
|
233
|
+
type: StringConstructor;
|
|
234
|
+
};
|
|
219
235
|
/**
|
|
220
236
|
* Indicates whether the combobox is in a dirty state (has been interacted with).
|
|
221
237
|
* @type {boolean}
|
|
@@ -307,6 +323,7 @@ export class AuroCombobox extends AuroElement {
|
|
|
307
323
|
required: boolean;
|
|
308
324
|
value: any;
|
|
309
325
|
typedValue: any;
|
|
326
|
+
behavior: string;
|
|
310
327
|
checkmark: boolean;
|
|
311
328
|
dvInputOnly: boolean;
|
|
312
329
|
fullscreenBreakpoint: string;
|