@softpak/components 0.3.2 → 19.0.0-beta.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/fesm2022/softpak-components-spx-alert.mjs +4 -5
- package/fesm2022/softpak-components-spx-alert.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-app-configuration.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-app-expiry.mjs +4 -5
- package/fesm2022/softpak-components-spx-app-expiry.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-app-update.mjs +10 -9
- package/fesm2022/softpak-components-spx-app-update.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-button.mjs +4 -5
- package/fesm2022/softpak-components-spx-button.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-capitalize.mjs +3 -3
- package/fesm2022/softpak-components-spx-capitalize.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-card.mjs +15 -18
- package/fesm2022/softpak-components-spx-card.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-change-details.mjs +4 -4
- package/fesm2022/softpak-components-spx-change-details.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-channel-selection.mjs +7 -9
- package/fesm2022/softpak-components-spx-channel-selection.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-check-digit.mjs +4 -4
- package/fesm2022/softpak-components-spx-check-digit.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-form-section.mjs +4 -4
- package/fesm2022/softpak-components-spx-form-section.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-form-view.mjs +8 -9
- package/fesm2022/softpak-components-spx-form-view.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-helpers.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-inputs.mjs +50 -52
- package/fesm2022/softpak-components-spx-inputs.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-navigation.mjs +11 -12
- package/fesm2022/softpak-components-spx-navigation.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-number-check.mjs +4 -5
- package/fesm2022/softpak-components-spx-number-check.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-pagination.mjs +4 -4
- package/fesm2022/softpak-components-spx-pagination.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-patch.mjs +4 -5
- package/fesm2022/softpak-components-spx-patch.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-progress-bar.mjs +3 -3
- package/fesm2022/softpak-components-spx-progress-bar.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-spinner.mjs +4 -4
- package/fesm2022/softpak-components-spx-spinner.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-stock-info.mjs +4 -4
- package/fesm2022/softpak-components-spx-stock-info.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-storage.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-suggestion.mjs +3 -3
- package/fesm2022/softpak-components-spx-suggestion.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-toaster.mjs +5 -6
- package/fesm2022/softpak-components-spx-toaster.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-update.mjs +7 -9
- package/fesm2022/softpak-components-spx-update.mjs.map +1 -1
- package/fesm2022/softpak-components-spx-validation.mjs +4 -4
- package/fesm2022/softpak-components-spx-validation.mjs.map +1 -1
- package/package.json +15 -68
- package/spx-inputs/spx-input-time-modal.component.d.ts +1 -1
- package/spx-inputs/spx-input-time.component.d.ts +1 -1
- package/esm2022/placeholder.mjs +0 -2
- package/esm2022/public_api.mjs +0 -2
- package/esm2022/softpak-components.mjs +0 -5
- package/esm2022/spx-alert/public-api.mjs +0 -3
- package/esm2022/spx-alert/softpak-components-spx-alert.mjs +0 -5
- package/esm2022/spx-alert/spx-alert.component.mjs +0 -193
- package/esm2022/spx-alert/spx-alert.interface.mjs +0 -3
- package/esm2022/spx-app-configuration/public-api.mjs +0 -8
- package/esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs +0 -5
- package/esm2022/spx-app-configuration/spx-app-alert.interface.mjs +0 -2
- package/esm2022/spx-app-configuration/spx-app-bundle-set.interface.mjs +0 -2
- package/esm2022/spx-app-configuration/spx-app-channel-type.enum.mjs +0 -8
- package/esm2022/spx-app-configuration/spx-app-channel.interface.mjs +0 -2
- package/esm2022/spx-app-configuration/spx-app-config.interface.mjs +0 -2
- package/esm2022/spx-app-configuration/spx-app-id.enum.mjs +0 -8
- package/esm2022/spx-app-configuration/spx-app-lang.enum.mjs +0 -6
- package/esm2022/spx-app-configuration/spx-app-release-note.interface.mjs +0 -2
- package/esm2022/spx-app-expiry/public-api.mjs +0 -6
- package/esm2022/spx-app-expiry/softpak-components-spx-app-expiry.mjs +0 -5
- package/esm2022/spx-app-expiry/spx-app-expiry.component.mjs +0 -90
- package/esm2022/spx-app-expiry/spx-app-expiry.interface.mjs +0 -2
- package/esm2022/spx-app-expiry/spx-check-expiry-final-warning.interface.mjs +0 -5
- package/esm2022/spx-app-expiry/spx-check-expiry-happened.interface.mjs +0 -5
- package/esm2022/spx-app-expiry/spx-check-expiry-warning.interface.mjs +0 -5
- package/esm2022/spx-app-update/public-api.mjs +0 -2
- package/esm2022/spx-app-update/softpak-components-spx-app-update.mjs +0 -5
- package/esm2022/spx-app-update/spx-app-update.component.mjs +0 -316
- package/esm2022/spx-button/public-api.mjs +0 -2
- package/esm2022/spx-button/softpak-components-spx-button.mjs +0 -5
- package/esm2022/spx-button/spx-button.component.mjs +0 -142
- package/esm2022/spx-capitalize/public-api.mjs +0 -2
- package/esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs +0 -5
- package/esm2022/spx-capitalize/spx-capitalize.pipe.mjs +0 -20
- package/esm2022/spx-card/public-api.mjs +0 -5
- package/esm2022/spx-card/softpak-components-spx-card.mjs +0 -5
- package/esm2022/spx-card/spx-card-grid.component.mjs +0 -46
- package/esm2022/spx-card/spx-card-item.component.mjs +0 -111
- package/esm2022/spx-card/spx-card-line.component.mjs +0 -101
- package/esm2022/spx-card/spx-card.component.mjs +0 -93
- package/esm2022/spx-change-details/public-api.mjs +0 -2
- package/esm2022/spx-change-details/softpak-components-spx-change-details.mjs +0 -5
- package/esm2022/spx-change-details/spx-change-details-value.interface.mjs +0 -2
- package/esm2022/spx-change-details/spx-change-details.component.mjs +0 -199
- package/esm2022/spx-channel-selection/public-api.mjs +0 -3
- package/esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs +0 -5
- package/esm2022/spx-channel-selection/src/spx-channel-indicator.component.mjs +0 -45
- package/esm2022/spx-channel-selection/src/spx-welcome.component.mjs +0 -135
- package/esm2022/spx-check-digit/public-api.mjs +0 -2
- package/esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs +0 -5
- package/esm2022/spx-check-digit/spx-check-digit.component.mjs +0 -94
- package/esm2022/spx-form-section/public-api.mjs +0 -2
- package/esm2022/spx-form-section/softpak-components-spx-form-section.mjs +0 -5
- package/esm2022/spx-form-section/spx-form-section.component.mjs +0 -37
- package/esm2022/spx-form-view/public-api.mjs +0 -7
- package/esm2022/spx-form-view/softpak-components-spx-form-view.mjs +0 -5
- package/esm2022/spx-form-view/spx-autocomplete-search.component.mjs +0 -119
- package/esm2022/spx-form-view/spx-form-button-type.enum.mjs +0 -6
- package/esm2022/spx-form-view/spx-form-button.interface.mjs +0 -2
- package/esm2022/spx-form-view/spx-form-field.interface.mjs +0 -2
- package/esm2022/spx-form-view/spx-form-section.interface.mjs +0 -2
- package/esm2022/spx-form-view/spx-form-view.component.mjs +0 -289
- package/esm2022/spx-form-view/spx-form.interface.mjs +0 -2
- package/esm2022/spx-helpers/calc-check-digit.function.mjs +0 -21
- package/esm2022/spx-helpers/public-api.mjs +0 -4
- package/esm2022/spx-helpers/softpak-components-spx-helpers.mjs +0 -5
- package/esm2022/spx-helpers/spx-severity.enum.mjs +0 -9
- package/esm2022/spx-helpers/value-pair-to-value.function.mjs +0 -7
- package/esm2022/spx-inputs/public-api.mjs +0 -6
- package/esm2022/spx-inputs/softpak-components-spx-inputs.mjs +0 -5
- package/esm2022/spx-inputs/spx-dropdown.component.mjs +0 -94
- package/esm2022/spx-inputs/spx-input-box.component.mjs +0 -255
- package/esm2022/spx-inputs/spx-input-date.component.mjs +0 -294
- package/esm2022/spx-inputs/spx-input-float.component.mjs +0 -159
- package/esm2022/spx-inputs/spx-input-number.component.mjs +0 -87
- package/esm2022/spx-inputs/spx-input-radio.component.mjs +0 -129
- package/esm2022/spx-inputs/spx-input-text.component.mjs +0 -155
- package/esm2022/spx-inputs/spx-input-time-modal.component.mjs +0 -116
- package/esm2022/spx-inputs/spx-input-time.component.mjs +0 -166
- package/esm2022/spx-inputs/spx-input-type.enum.mjs +0 -17
- package/esm2022/spx-inputs/spx-input.component.mjs +0 -445
- package/esm2022/spx-inputs/spx-value-interface.mjs +0 -2
- package/esm2022/spx-navigation/public-api.mjs +0 -5
- package/esm2022/spx-navigation/softpak-components-spx-navigation.mjs +0 -5
- package/esm2022/spx-navigation/spx-home-tile.component.mjs +0 -68
- package/esm2022/spx-navigation/spx-home-tiles.component.mjs +0 -24
- package/esm2022/spx-navigation/spx-navigation-item.interface.mjs +0 -2
- package/esm2022/spx-navigation/spx-navigation.component.mjs +0 -51
- package/esm2022/spx-number-check/public-api.mjs +0 -2
- package/esm2022/spx-number-check/softpak-components-spx-number-check.mjs +0 -5
- package/esm2022/spx-number-check/spx-number-check.component.mjs +0 -259
- package/esm2022/spx-pagination/public-api.mjs +0 -2
- package/esm2022/spx-pagination/softpak-components-spx-pagination.mjs +0 -5
- package/esm2022/spx-pagination/spx-pagination.component.mjs +0 -44
- package/esm2022/spx-patch/patch-check.function.mjs +0 -9
- package/esm2022/spx-patch/public-api.mjs +0 -4
- package/esm2022/spx-patch/release-check.function.mjs +0 -14
- package/esm2022/spx-patch/softpak-components-spx-patch.mjs +0 -5
- package/esm2022/spx-patch/spx-patch.component.mjs +0 -48
- package/esm2022/spx-progress-bar/public-api.mjs +0 -2
- package/esm2022/spx-progress-bar/softpak-components-spx-progress-bar.mjs +0 -5
- package/esm2022/spx-progress-bar/spx-progress-bar.component.mjs +0 -29
- package/esm2022/spx-spinner/public-api.mjs +0 -2
- package/esm2022/spx-spinner/softpak-components-spx-spinner.mjs +0 -5
- package/esm2022/spx-spinner/spx-spinner.component.mjs +0 -159
- package/esm2022/spx-stock-info/public-api.mjs +0 -3
- package/esm2022/spx-stock-info/softpak-components-spx-stock-info.mjs +0 -5
- package/esm2022/spx-stock-info/spx-stock-info-value.interface.mjs +0 -2
- package/esm2022/spx-stock-info/spx-stock-info.component.mjs +0 -327
- package/esm2022/spx-storage/public-api.mjs +0 -3
- package/esm2022/spx-storage/softpak-components-spx-storage.mjs +0 -5
- package/esm2022/spx-storage/src/spx-storage-key.enum.mjs +0 -13
- package/esm2022/spx-storage/src/spx-storage.class.mjs +0 -45
- package/esm2022/spx-suggestion/public-api.mjs +0 -2
- package/esm2022/spx-suggestion/softpak-components-spx-suggestion.mjs +0 -5
- package/esm2022/spx-suggestion/spx-suggestion.component.mjs +0 -69
- package/esm2022/spx-toaster/public-api.mjs +0 -4
- package/esm2022/spx-toaster/softpak-components-spx-toaster.mjs +0 -5
- package/esm2022/spx-toaster/src/spx-toaster-autoclose-speed.mjs +0 -23
- package/esm2022/spx-toaster/src/spx-toaster-message.interface.mjs +0 -3
- package/esm2022/spx-toaster/src/spx-toaster.component.mjs +0 -173
- package/esm2022/spx-update/public-api.mjs +0 -3
- package/esm2022/spx-update/softpak-components-spx-update.mjs +0 -5
- package/esm2022/spx-update/src/spx-update-info.component.mjs +0 -88
- package/esm2022/spx-update/src/spx-update-progress.component.mjs +0 -46
- package/esm2022/spx-validation/max.validator.mjs +0 -17
- package/esm2022/spx-validation/maxlength.validator.mjs +0 -20
- package/esm2022/spx-validation/min.validator.mjs +0 -17
- package/esm2022/spx-validation/minlength.validator.mjs +0 -20
- package/esm2022/spx-validation/pattern.validator.mjs +0 -12
- package/esm2022/spx-validation/public-api.mjs +0 -9
- package/esm2022/spx-validation/required.validator.mjs +0 -12
- package/esm2022/spx-validation/softpak-components-spx-validation.mjs +0 -5
- package/esm2022/spx-validation/spx-validate-control.component.mjs +0 -68
- package/esm2022/spx-validation/year-and-month.validator.mjs +0 -42
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export var SpxSeverityEnum;
|
|
2
|
-
(function (SpxSeverityEnum) {
|
|
3
|
-
SpxSeverityEnum["error"] = "error";
|
|
4
|
-
SpxSeverityEnum["info"] = "info";
|
|
5
|
-
SpxSeverityEnum["success"] = "success";
|
|
6
|
-
SpxSeverityEnum["unknown"] = "unknown";
|
|
7
|
-
SpxSeverityEnum["warning"] = "warning";
|
|
8
|
-
})(SpxSeverityEnum || (SpxSeverityEnum = {}));
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LXNldmVyaXR5LmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWhlbHBlcnMvc3B4LXNldmVyaXR5LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksZUFNWDtBQU5ELFdBQVksZUFBZTtJQUN6QixrQ0FBZSxDQUFBO0lBQ2YsZ0NBQWEsQ0FBQTtJQUNiLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0lBQ25CLHNDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFOVyxlQUFlLEtBQWYsZUFBZSxRQU0xQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNweFNldmVyaXR5RW51bSB7XG4gIGVycm9yID0gJ2Vycm9yJyxcbiAgaW5mbyA9ICdpbmZvJyxcbiAgc3VjY2VzcyA9ICdzdWNjZXNzJyxcbiAgdW5rbm93biA9ICd1bmtub3duJyxcbiAgd2FybmluZyA9ICd3YXJuaW5nJyxcbn1cbiJdfQ==
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export const valuePairToValue = (pair) => {
|
|
2
|
-
if (pair === null || (typeof pair === 'object' && pair.value === undefined)) {
|
|
3
|
-
return null;
|
|
4
|
-
}
|
|
5
|
-
return pair?.value || pair?.value === false || pair?.value === null || pair?.value === '' || pair?.value === 0 ? pair?.value : pair;
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtcGFpci10by12YWx1ZS5mdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaGVscGVycy92YWx1ZS1wYWlyLXRvLXZhbHVlLmZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLENBQUMsSUFBUyxFQUFFLEVBQUU7SUFDMUMsSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUMxRSxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsT0FBTyxJQUFJLEVBQUUsS0FBSyxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssS0FBSyxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssSUFBSSxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssRUFBRSxJQUFJLElBQUksRUFBRSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDeEksQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IHZhbHVlUGFpclRvVmFsdWUgPSAocGFpcjogYW55KSA9PiB7XG4gICAgaWYgKHBhaXIgPT09IG51bGwgfHwgKHR5cGVvZiBwYWlyID09PSAnb2JqZWN0JyAmJiBwYWlyLnZhbHVlID09PSB1bmRlZmluZWQpKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICByZXR1cm4gcGFpcj8udmFsdWUgfHwgcGFpcj8udmFsdWUgPT09IGZhbHNlIHx8IHBhaXI/LnZhbHVlID09PSBudWxsIHx8IHBhaXI/LnZhbHVlID09PSAnJyB8fCBwYWlyPy52YWx1ZSA9PT0gMCA/IHBhaXI/LnZhbHVlIDogcGFpcjtcbn07XG4iXX0=
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './spx-value-interface';
|
|
2
|
-
export * from './spx-input-box.component';
|
|
3
|
-
export * from './spx-input-text.component';
|
|
4
|
-
export * from './spx-input.component';
|
|
5
|
-
export * from './spx-input-type.enum';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3B4LWlucHV0LWJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcHgtaW5wdXQtdGV4dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcHgtaW5wdXQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc3B4LWlucHV0LXR5cGUuZW51bSc7XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29mdHBhay1jb21wb25lbnRzLXNweC1pbnB1dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cy9zb2Z0cGFrLWNvbXBvbmVudHMtc3B4LWlucHV0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { NgFor, NgIf } from '@angular/common';
|
|
2
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
3
|
-
import { SpxButtonComponent } from '@softpak/components/spx-button';
|
|
4
|
-
import { fromEvent } from 'rxjs';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class SpxDropdownComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.focusPosition = 0;
|
|
9
|
-
this.spxSuggestions = [];
|
|
10
|
-
this.spxSelect = new EventEmitter();
|
|
11
|
-
}
|
|
12
|
-
ngOnInit() {
|
|
13
|
-
this.listenToKeyUp();
|
|
14
|
-
}
|
|
15
|
-
ngOnChanges(changes) {
|
|
16
|
-
this.focusPosition = 0;
|
|
17
|
-
}
|
|
18
|
-
ngOnDestroy() {
|
|
19
|
-
this.subscriptionKeyUp?.unsubscribe();
|
|
20
|
-
}
|
|
21
|
-
handleSuggestionClick(valuePair) {
|
|
22
|
-
this.select(valuePair);
|
|
23
|
-
}
|
|
24
|
-
listenToKeyUp() {
|
|
25
|
-
this.subscriptionKeyUp = fromEvent(window, 'keyup').subscribe((event) => {
|
|
26
|
-
if (event.key === 'ArrowUp' && this.focusPosition > 0) {
|
|
27
|
-
this.focusPosition = this.focusPosition - 1;
|
|
28
|
-
event.preventDefault();
|
|
29
|
-
}
|
|
30
|
-
if (event.key === 'ArrowDown' && this.focusPosition < this.spxSuggestions.length - 1) {
|
|
31
|
-
this.focusPosition = this.focusPosition + 1;
|
|
32
|
-
event.preventDefault();
|
|
33
|
-
}
|
|
34
|
-
if (event.key === 'Enter' && this.spxSuggestions.length > 0) {
|
|
35
|
-
this.select(this.spxSuggestions.at(this.focusPosition));
|
|
36
|
-
event.preventDefault();
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
select(valuePair) {
|
|
41
|
-
this.focusPosition = 0;
|
|
42
|
-
this.spxSelect.emit(valuePair);
|
|
43
|
-
}
|
|
44
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxDropdownComponent, isStandalone: true, selector: "spx-dropdown", inputs: { spxSuggestions: "spxSuggestions" }, outputs: { spxSelect: "spxSelect" }, usesOnChanges: true, ngImport: i0, template: `<div class="relative text-black">
|
|
46
|
-
<div
|
|
47
|
-
class="absolute bg-gray-100 left-0 right-0 z-20">
|
|
48
|
-
<button
|
|
49
|
-
*ngFor="let valuePair of this.spxSuggestions; let i = index"
|
|
50
|
-
class="text-black block w-full p-2 border border-gray-200 rounded-lg shadow hover:bg-gray-200 flex items-center text-left"
|
|
51
|
-
[class.bg-gray-100]="i === this.focusPosition"
|
|
52
|
-
[class.bg-white]="i !== this.focusPosition"
|
|
53
|
-
(click)="this.handleSuggestionClick(valuePair)"
|
|
54
|
-
[attr.tabindex]="-1"
|
|
55
|
-
[attr.type]="'button'">
|
|
56
|
-
<div class="flex-1 p-1 font-bold text-lg">{{valuePair?.description}}</div>
|
|
57
|
-
<spx-button (spxClick)="this.handleSuggestionClick(valuePair)" [spxType]="'button'" [spxTabIndex]="-1">Select</spx-button>
|
|
58
|
-
</button>
|
|
59
|
-
</div>
|
|
60
|
-
</div>`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }] }); }
|
|
61
|
-
}
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxDropdownComponent, decorators: [{
|
|
63
|
-
type: Component,
|
|
64
|
-
args: [{
|
|
65
|
-
selector: 'spx-dropdown',
|
|
66
|
-
standalone: true,
|
|
67
|
-
imports: [
|
|
68
|
-
NgIf,
|
|
69
|
-
NgFor,
|
|
70
|
-
SpxButtonComponent,
|
|
71
|
-
],
|
|
72
|
-
template: `<div class="relative text-black">
|
|
73
|
-
<div
|
|
74
|
-
class="absolute bg-gray-100 left-0 right-0 z-20">
|
|
75
|
-
<button
|
|
76
|
-
*ngFor="let valuePair of this.spxSuggestions; let i = index"
|
|
77
|
-
class="text-black block w-full p-2 border border-gray-200 rounded-lg shadow hover:bg-gray-200 flex items-center text-left"
|
|
78
|
-
[class.bg-gray-100]="i === this.focusPosition"
|
|
79
|
-
[class.bg-white]="i !== this.focusPosition"
|
|
80
|
-
(click)="this.handleSuggestionClick(valuePair)"
|
|
81
|
-
[attr.tabindex]="-1"
|
|
82
|
-
[attr.type]="'button'">
|
|
83
|
-
<div class="flex-1 p-1 font-bold text-lg">{{valuePair?.description}}</div>
|
|
84
|
-
<spx-button (spxClick)="this.handleSuggestionClick(valuePair)" [spxType]="'button'" [spxTabIndex]="-1">Select</spx-button>
|
|
85
|
-
</button>
|
|
86
|
-
</div>
|
|
87
|
-
</div>`,
|
|
88
|
-
}]
|
|
89
|
-
}], propDecorators: { spxSuggestions: [{
|
|
90
|
-
type: Input
|
|
91
|
-
}], spxSelect: [{
|
|
92
|
-
type: Output
|
|
93
|
-
}] } });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWRyb3Bkb3duLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NvZnRwYWsvY29tcG9uZW50cy9zcHgtaW5wdXRzL3NweC1kcm9wZG93bi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWdDLE1BQU0sRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFcEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBMkIvQyxNQUFNLE9BQU8sb0JBQW9CO0lBekJqQztRQTBCWSxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNuQixtQkFBYyxHQUE4QyxFQUFFLENBQUM7UUFDOUQsY0FBUyxHQUFvQyxJQUFJLFlBQVksRUFBcUIsQ0FBQztLQXdDOUY7SUFyQ0MsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxTQUFrRDtRQUN0RSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3RFLElBQUssS0FBdUIsQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxhQUFhLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQ3pFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN6QixDQUFDO1lBQ0QsSUFBSyxLQUF1QixDQUFDLEdBQUcsS0FBSyxXQUFXLElBQUksSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDeEcsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsQ0FBQztnQkFDNUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7WUFDRCxJQUFLLEtBQXVCLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDL0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFFLENBQUMsQ0FBQztnQkFDekQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3pCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsU0FBa0Q7UUFDL0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDakMsQ0FBQzs4R0ExQ1Usb0JBQW9CO2tHQUFwQixvQkFBb0IsZ0xBakJyQjs7Ozs7Ozs7Ozs7Ozs7O09BZUwsNERBbEJILEtBQUssbUhBQ0wsa0JBQWtCOzsyRkFtQlQsb0JBQW9CO2tCQXpCaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDUCxJQUFJO3dCQUNKLEtBQUs7d0JBQ0wsa0JBQWtCO3FCQUNuQjtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztPQWVMO2lCQUNOOzhCQUdVLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nRm9yLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhWYWx1ZVBhaXIgfSBmcm9tICcuL3NweC12YWx1ZS1pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3B4QnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQHNvZnRwYWsvY29tcG9uZW50cy9zcHgtYnV0dG9uJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgZnJvbUV2ZW50IH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1kcm9wZG93bicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0lmLFxuICAgIE5nRm9yLFxuICAgIFNweEJ1dHRvbkNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGU6IGA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgdGV4dC1ibGFja1wiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhYnNvbHV0ZSBiZy1ncmF5LTEwMCBsZWZ0LTAgcmlnaHQtMCB6LTIwXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0Zvcj1cImxldCB2YWx1ZVBhaXIgb2YgdGhpcy5zcHhTdWdnZXN0aW9uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgIGNsYXNzPVwidGV4dC1ibGFjayBibG9jayB3LWZ1bGwgcC0yIGJvcmRlciBib3JkZXItZ3JheS0yMDAgcm91bmRlZC1sZyBzaGFkb3cgaG92ZXI6YmctZ3JheS0yMDAgZmxleCBpdGVtcy1jZW50ZXIgdGV4dC1sZWZ0XCJcbiAgICAgICAgW2NsYXNzLmJnLWdyYXktMTAwXT1cImkgPT09IHRoaXMuZm9jdXNQb3NpdGlvblwiXG4gICAgICAgIFtjbGFzcy5iZy13aGl0ZV09XCJpICE9PSB0aGlzLmZvY3VzUG9zaXRpb25cIlxuICAgICAgICAoY2xpY2spPVwidGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiXG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCInYnV0dG9uJ1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIHAtMSBmb250LWJvbGQgdGV4dC1sZ1wiPnt7dmFsdWVQYWlyPy5kZXNjcmlwdGlvbn19PC9kaXY+XG4gICAgICA8c3B4LWJ1dHRvbiAoc3B4Q2xpY2spPVwidGhpcy5oYW5kbGVTdWdnZXN0aW9uQ2xpY2sodmFsdWVQYWlyKVwiIFtzcHhUeXBlXT1cIididXR0b24nXCIgW3NweFRhYkluZGV4XT1cIi0xXCI+U2VsZWN0PC9zcHgtYnV0dG9uPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PmAsXG59KVxuZXhwb3J0IGNsYXNzIFNweERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCBmb2N1c1Bvc2l0aW9uID0gMDtcbiAgQElucHV0KCkgc3B4U3VnZ2VzdGlvbnM6IFNweFZhbHVlUGFpcjxib29sZWFuIHwgbnVtYmVyIHwgc3RyaW5nPltdID0gW107XG4gIEBPdXRwdXQoKSBzcHhTZWxlY3Q6IEV2ZW50RW1pdHRlcjxTcHhWYWx1ZVBhaXI8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyPFNweFZhbHVlUGFpcjxhbnk+PigpO1xuICBzdWJzY3JpcHRpb25LZXlVcD86IFN1YnNjcmlwdGlvbjtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvS2V5VXAoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25LZXlVcD8udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGhhbmRsZVN1Z2dlc3Rpb25DbGljayh2YWx1ZVBhaXI6IFNweFZhbHVlUGFpcjxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPikge1xuICAgIHRoaXMuc2VsZWN0KHZhbHVlUGFpcik7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlblRvS2V5VXAoKTogdm9pZCB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25LZXlVcCA9IGZyb21FdmVudCh3aW5kb3csICdrZXl1cCcpLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIGlmICgoZXZlbnQgYXMgS2V5Ym9hcmRFdmVudCkua2V5ID09PSAnQXJyb3dVcCcgJiYgdGhpcy5mb2N1c1Bvc2l0aW9uID4gMCkge1xuICAgICAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSB0aGlzLmZvY3VzUG9zaXRpb24gLSAxO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdBcnJvd0Rvd24nICYmIHRoaXMuZm9jdXNQb3NpdGlvbiA8IHRoaXMuc3B4U3VnZ2VzdGlvbnMubGVuZ3RoIC0gMSkge1xuICAgICAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSB0aGlzLmZvY3VzUG9zaXRpb24gKyAxO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgICAgaWYgKChldmVudCBhcyBLZXlib2FyZEV2ZW50KS5rZXkgPT09ICdFbnRlcicgJiYgdGhpcy5zcHhTdWdnZXN0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0KHRoaXMuc3B4U3VnZ2VzdGlvbnMuYXQodGhpcy5mb2N1c1Bvc2l0aW9uKSEpO1xuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3QodmFsdWVQYWlyOiBTcHhWYWx1ZVBhaXI8c3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbj4pOiB2b2lkIHtcbiAgICB0aGlzLmZvY3VzUG9zaXRpb24gPSAwO1xuICAgIHRoaXMuc3B4U2VsZWN0LmVtaXQodmFsdWVQYWlyKTtcbiAgfVxufVxuIl19
|
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
import { NgIf } from '@angular/common';
|
|
2
|
-
import { Component, EventEmitter, HostListener, Input, Output } from '@angular/core';
|
|
3
|
-
import { SpxButtonComponent } from '@softpak/components/spx-button';
|
|
4
|
-
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
|
|
5
|
-
import { faEdit, faQuestion, faSearch, faTimes } from '@fortawesome/free-solid-svg-icons';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@fortawesome/angular-fontawesome";
|
|
8
|
-
export class SpxInputBoxComponent {
|
|
9
|
-
handleFocusIn(ev) {
|
|
10
|
-
this.emitFocusIn();
|
|
11
|
-
}
|
|
12
|
-
handleFocusOut(ev) {
|
|
13
|
-
const thisEl = this.elRef.nativeElement;
|
|
14
|
-
const relatedElement = ev.relatedTarget;
|
|
15
|
-
if (!relatedElement || !thisEl.contains(relatedElement)) {
|
|
16
|
-
this.emitFocusOut();
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
handleWindowClick(ev) {
|
|
20
|
-
if (ev.composedPath().includes(this.elRef.nativeElement)) {
|
|
21
|
-
this.emitFocusIn();
|
|
22
|
-
}
|
|
23
|
-
else {
|
|
24
|
-
this.emitFocusOut();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
onClear() {
|
|
28
|
-
this.spxClear.emit();
|
|
29
|
-
}
|
|
30
|
-
onSearch() {
|
|
31
|
-
this.spxSearch.emit();
|
|
32
|
-
}
|
|
33
|
-
onEdit() {
|
|
34
|
-
this.spxEdit.emit();
|
|
35
|
-
}
|
|
36
|
-
onHelp() {
|
|
37
|
-
this.spxHelp.emit();
|
|
38
|
-
}
|
|
39
|
-
constructor(elRef) {
|
|
40
|
-
this.elRef = elRef;
|
|
41
|
-
this.faEdit = faEdit;
|
|
42
|
-
this.faSearch = faSearch;
|
|
43
|
-
this.faQuestion = faQuestion;
|
|
44
|
-
this.faTimes = faTimes;
|
|
45
|
-
this.spxFocused = false;
|
|
46
|
-
this.spxReadonly = false;
|
|
47
|
-
this.spxShowClear = true;
|
|
48
|
-
this.spxShowLabel = true;
|
|
49
|
-
this.spxClear = new EventEmitter();
|
|
50
|
-
this.spxSearch = new EventEmitter();
|
|
51
|
-
this.spxFocus = new EventEmitter();
|
|
52
|
-
this.spxFocusOut = new EventEmitter();
|
|
53
|
-
this.spxEdit = new EventEmitter();
|
|
54
|
-
this.spxHelp = new EventEmitter();
|
|
55
|
-
}
|
|
56
|
-
emitFocusIn() {
|
|
57
|
-
if (!this.spxFocused) {
|
|
58
|
-
this.spxFocus.emit();
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
emitFocusOut() {
|
|
62
|
-
if (this.spxFocused) {
|
|
63
|
-
this.spxFocusOut.emit();
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxInputBoxComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
67
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.1", type: SpxInputBoxComponent, isStandalone: true, selector: "spx-input-box", inputs: { spxCompact: "spxCompact", spxFocused: "spxFocused", spxLabel: "spxLabel", spxReadonly: "spxReadonly", spxRequired: "spxRequired", spxShowClear: "spxShowClear", spxShowEdit: "spxShowEdit", spxShowHelp: "spxShowHelp", spxShowLabel: "spxShowLabel", spxShowSearch: "spxShowSearch", spxShowValidationMessages: "spxShowValidationMessages", spxValue: "spxValue" }, outputs: { spxClear: "spxClear", spxSearch: "spxSearch", spxFocus: "spxFocus", spxFocusOut: "spxFocusOut", spxEdit: "spxEdit", spxHelp: "spxHelp" }, host: { listeners: { "focusin": "handleFocusIn($event)", "focusout": "handleFocusOut($event)", "document:click": "handleWindowClick($event)" } }, ngImport: i0, template: `<div class="flex rounded w-full gap-3"
|
|
68
|
-
[class.rounded-none]="this.spxShowValidationMessages"
|
|
69
|
-
[class.rounded-t]="this.spxShowValidationMessages"
|
|
70
|
-
[class.outline-none]="this.spxFocused && !this.spxReadonly"
|
|
71
|
-
[class.ring-2]="this.spxFocused && !this.spxReadonly"
|
|
72
|
-
[class.ring-offset-2]="this.spxFocused && !this.spxReadonly"
|
|
73
|
-
[class.ring-blue-500]="this.spxFocused && !this.spxReadonly"
|
|
74
|
-
[class.bg-white]="!this.spxReadonly"
|
|
75
|
-
[class.bg-gray-300]="this.spxReadonly"
|
|
76
|
-
[class.cursor-not-allowed]="this.spxReadonly">
|
|
77
|
-
<div class="flex-auto p-3"
|
|
78
|
-
[class.p-0]="this.spxCompact"
|
|
79
|
-
[class.flex]="this.spxCompact"
|
|
80
|
-
[class.items-center]="this.spxCompact">
|
|
81
|
-
<div *ngIf="this.spxShowLabel" class="font-bold text-sm mb-1 text-gray-800"
|
|
82
|
-
[class.mb-0]="this.spxCompact"
|
|
83
|
-
[class.px-3]="this.spxCompact">
|
|
84
|
-
{{this.spxLabel}} <span *ngIf="spxRequired" class="text-red-800">*</span>
|
|
85
|
-
</div>
|
|
86
|
-
<ng-content select="[controls]"></ng-content>
|
|
87
|
-
</div>
|
|
88
|
-
<div class="flex flex-none gap-1 p-1">
|
|
89
|
-
<spx-button
|
|
90
|
-
*ngIf="this.spxShowEdit"
|
|
91
|
-
(spxClick)="onEdit()"
|
|
92
|
-
[spxFullHeight]="true"
|
|
93
|
-
[spxSize]="'xl'"
|
|
94
|
-
[spxType]="'button'">
|
|
95
|
-
<fa-icon [icon]="faEdit" class="block text-xl"></fa-icon>
|
|
96
|
-
</spx-button>
|
|
97
|
-
<spx-button
|
|
98
|
-
*ngIf="this.spxShowHelp"
|
|
99
|
-
(spxClick)="onHelp()"
|
|
100
|
-
[spxFullHeight]="true"
|
|
101
|
-
[spxDisabled]="this.spxReadonly"
|
|
102
|
-
[spxSize]="'xl'"
|
|
103
|
-
[spxTabIndex]="-1"
|
|
104
|
-
[spxType]="'button'">
|
|
105
|
-
<fa-icon [icon]="faQuestion" class="block text-xl"></fa-icon>
|
|
106
|
-
</spx-button>
|
|
107
|
-
<spx-button
|
|
108
|
-
*ngIf="this.spxShowSearch"
|
|
109
|
-
(spxClick)="onSearch()"
|
|
110
|
-
[spxFullHeight]="true"
|
|
111
|
-
[spxDisabled]="this.spxReadonly"
|
|
112
|
-
[spxSize]="'xl'"
|
|
113
|
-
[spxTabIndex]="-1"
|
|
114
|
-
[spxType]="'button'">
|
|
115
|
-
<fa-icon [icon]="faSearch" class="block text-xl"></fa-icon>
|
|
116
|
-
</spx-button>
|
|
117
|
-
<spx-button
|
|
118
|
-
*ngIf="this.spxShowClear"
|
|
119
|
-
(spxClick)="onClear()"
|
|
120
|
-
[spxDisabled]="this.spxReadonly || !this.spxValue?.value"
|
|
121
|
-
[spxFullHeight]="true"
|
|
122
|
-
[spxSize]="'xl'"
|
|
123
|
-
[spxTabIndex]="-1"
|
|
124
|
-
[spxType]="'button'">
|
|
125
|
-
<fa-icon [icon]="faTimes" class="block text-xl"></fa-icon>
|
|
126
|
-
</spx-button>
|
|
127
|
-
</div>
|
|
128
|
-
</div>
|
|
129
|
-
<div *ngIf="this.spxShowValidationMessages" class="bg-red-600 rounded-b text-white p-3">
|
|
130
|
-
<ng-content select="[validation-messages]"></ng-content>
|
|
131
|
-
</div>`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: SpxButtonComponent, selector: "spx-button", inputs: ["spxDisabled", "spxClass", "spxClassObject", "spxForm", "spxFullHeight", "spxFullWidth", "spxSeverity", "spxSize", "spxTabIndex", "spxType"], outputs: ["spxClick"] }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i1.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }] }); }
|
|
132
|
-
}
|
|
133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: SpxInputBoxComponent, decorators: [{
|
|
134
|
-
type: Component,
|
|
135
|
-
args: [{
|
|
136
|
-
selector: 'spx-input-box',
|
|
137
|
-
standalone: true,
|
|
138
|
-
imports: [
|
|
139
|
-
NgIf,
|
|
140
|
-
SpxButtonComponent,
|
|
141
|
-
FontAwesomeModule,
|
|
142
|
-
],
|
|
143
|
-
template: `<div class="flex rounded w-full gap-3"
|
|
144
|
-
[class.rounded-none]="this.spxShowValidationMessages"
|
|
145
|
-
[class.rounded-t]="this.spxShowValidationMessages"
|
|
146
|
-
[class.outline-none]="this.spxFocused && !this.spxReadonly"
|
|
147
|
-
[class.ring-2]="this.spxFocused && !this.spxReadonly"
|
|
148
|
-
[class.ring-offset-2]="this.spxFocused && !this.spxReadonly"
|
|
149
|
-
[class.ring-blue-500]="this.spxFocused && !this.spxReadonly"
|
|
150
|
-
[class.bg-white]="!this.spxReadonly"
|
|
151
|
-
[class.bg-gray-300]="this.spxReadonly"
|
|
152
|
-
[class.cursor-not-allowed]="this.spxReadonly">
|
|
153
|
-
<div class="flex-auto p-3"
|
|
154
|
-
[class.p-0]="this.spxCompact"
|
|
155
|
-
[class.flex]="this.spxCompact"
|
|
156
|
-
[class.items-center]="this.spxCompact">
|
|
157
|
-
<div *ngIf="this.spxShowLabel" class="font-bold text-sm mb-1 text-gray-800"
|
|
158
|
-
[class.mb-0]="this.spxCompact"
|
|
159
|
-
[class.px-3]="this.spxCompact">
|
|
160
|
-
{{this.spxLabel}} <span *ngIf="spxRequired" class="text-red-800">*</span>
|
|
161
|
-
</div>
|
|
162
|
-
<ng-content select="[controls]"></ng-content>
|
|
163
|
-
</div>
|
|
164
|
-
<div class="flex flex-none gap-1 p-1">
|
|
165
|
-
<spx-button
|
|
166
|
-
*ngIf="this.spxShowEdit"
|
|
167
|
-
(spxClick)="onEdit()"
|
|
168
|
-
[spxFullHeight]="true"
|
|
169
|
-
[spxSize]="'xl'"
|
|
170
|
-
[spxType]="'button'">
|
|
171
|
-
<fa-icon [icon]="faEdit" class="block text-xl"></fa-icon>
|
|
172
|
-
</spx-button>
|
|
173
|
-
<spx-button
|
|
174
|
-
*ngIf="this.spxShowHelp"
|
|
175
|
-
(spxClick)="onHelp()"
|
|
176
|
-
[spxFullHeight]="true"
|
|
177
|
-
[spxDisabled]="this.spxReadonly"
|
|
178
|
-
[spxSize]="'xl'"
|
|
179
|
-
[spxTabIndex]="-1"
|
|
180
|
-
[spxType]="'button'">
|
|
181
|
-
<fa-icon [icon]="faQuestion" class="block text-xl"></fa-icon>
|
|
182
|
-
</spx-button>
|
|
183
|
-
<spx-button
|
|
184
|
-
*ngIf="this.spxShowSearch"
|
|
185
|
-
(spxClick)="onSearch()"
|
|
186
|
-
[spxFullHeight]="true"
|
|
187
|
-
[spxDisabled]="this.spxReadonly"
|
|
188
|
-
[spxSize]="'xl'"
|
|
189
|
-
[spxTabIndex]="-1"
|
|
190
|
-
[spxType]="'button'">
|
|
191
|
-
<fa-icon [icon]="faSearch" class="block text-xl"></fa-icon>
|
|
192
|
-
</spx-button>
|
|
193
|
-
<spx-button
|
|
194
|
-
*ngIf="this.spxShowClear"
|
|
195
|
-
(spxClick)="onClear()"
|
|
196
|
-
[spxDisabled]="this.spxReadonly || !this.spxValue?.value"
|
|
197
|
-
[spxFullHeight]="true"
|
|
198
|
-
[spxSize]="'xl'"
|
|
199
|
-
[spxTabIndex]="-1"
|
|
200
|
-
[spxType]="'button'">
|
|
201
|
-
<fa-icon [icon]="faTimes" class="block text-xl"></fa-icon>
|
|
202
|
-
</spx-button>
|
|
203
|
-
</div>
|
|
204
|
-
</div>
|
|
205
|
-
<div *ngIf="this.spxShowValidationMessages" class="bg-red-600 rounded-b text-white p-3">
|
|
206
|
-
<ng-content select="[validation-messages]"></ng-content>
|
|
207
|
-
</div>`,
|
|
208
|
-
}]
|
|
209
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { spxCompact: [{
|
|
210
|
-
type: Input
|
|
211
|
-
}], spxFocused: [{
|
|
212
|
-
type: Input
|
|
213
|
-
}], spxLabel: [{
|
|
214
|
-
type: Input
|
|
215
|
-
}], spxReadonly: [{
|
|
216
|
-
type: Input
|
|
217
|
-
}], spxRequired: [{
|
|
218
|
-
type: Input
|
|
219
|
-
}], spxShowClear: [{
|
|
220
|
-
type: Input
|
|
221
|
-
}], spxShowEdit: [{
|
|
222
|
-
type: Input
|
|
223
|
-
}], spxShowHelp: [{
|
|
224
|
-
type: Input
|
|
225
|
-
}], spxShowLabel: [{
|
|
226
|
-
type: Input
|
|
227
|
-
}], spxShowSearch: [{
|
|
228
|
-
type: Input
|
|
229
|
-
}], spxShowValidationMessages: [{
|
|
230
|
-
type: Input
|
|
231
|
-
}], spxValue: [{
|
|
232
|
-
type: Input
|
|
233
|
-
}], spxClear: [{
|
|
234
|
-
type: Output
|
|
235
|
-
}], spxSearch: [{
|
|
236
|
-
type: Output
|
|
237
|
-
}], spxFocus: [{
|
|
238
|
-
type: Output
|
|
239
|
-
}], spxFocusOut: [{
|
|
240
|
-
type: Output
|
|
241
|
-
}], spxEdit: [{
|
|
242
|
-
type: Output
|
|
243
|
-
}], spxHelp: [{
|
|
244
|
-
type: Output
|
|
245
|
-
}], handleFocusIn: [{
|
|
246
|
-
type: HostListener,
|
|
247
|
-
args: ['focusin', ["$event"]]
|
|
248
|
-
}], handleFocusOut: [{
|
|
249
|
-
type: HostListener,
|
|
250
|
-
args: ['focusout', ["$event"]]
|
|
251
|
-
}], handleWindowClick: [{
|
|
252
|
-
type: HostListener,
|
|
253
|
-
args: ['document:click', ["$event"]]
|
|
254
|
-
}] } });
|
|
255
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWlucHV0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWlucHV0cy9zcHgtaW5wdXQtYm94LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdkMsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUE0RTFGLE1BQU0sT0FBTyxvQkFBb0I7SUF1Qk0sYUFBYSxDQUFDLEVBQVM7UUFDMUQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDcUMsY0FBYyxDQUFDLEVBQWM7UUFDakUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUE0QixDQUFDO1FBQ3ZELE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQyxhQUE0QixDQUFDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDeEQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBQzJDLGlCQUFpQixDQUFDLEVBQVM7UUFDckUsSUFBSSxFQUFFLENBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUUs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QixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDOEIsYUFBYTtzQkFBakQsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBR0csY0FBYztzQkFBbkQsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBT1EsaUJBQWlCO3NCQUE1RCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhCdXR0b25Db21wb25lbnQgfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1idXR0b24nO1xuaW1wb3J0IHsgU3B4VmFsdWVQYWlyIH0gZnJvbSAnLi9zcHgtdmFsdWUtaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFFZGl0LCBmYVF1ZXN0aW9uLCBmYVNlYXJjaCwgZmFUaW1lcyB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NweC1pbnB1dC1ib3gnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTmdJZixcbiAgICBTcHhCdXR0b25Db21wb25lbnQsXG4gICAgRm9udEF3ZXNvbWVNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlOiBgPGRpdiBjbGFzcz1cImZsZXggcm91bmRlZCB3LWZ1bGwgZ2FwLTNcIlxuICAgIFtjbGFzcy5yb3VuZGVkLW5vbmVdPVwidGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXCJcbiAgICBbY2xhc3Mucm91bmRlZC10XT1cInRoaXMuc3B4U2hvd1ZhbGlkYXRpb25NZXNzYWdlc1wiXG4gICAgW2NsYXNzLm91dGxpbmUtbm9uZV09XCJ0aGlzLnNweEZvY3VzZWQgJiYgIXRoaXMuc3B4UmVhZG9ubHlcIlxuICAgIFtjbGFzcy5yaW5nLTJdPVwidGhpcy5zcHhGb2N1c2VkICYmICF0aGlzLnNweFJlYWRvbmx5XCJcbiAgICBbY2xhc3MucmluZy1vZmZzZXQtMl09XCJ0aGlzLnNweEZvY3VzZWQgJiYgIXRoaXMuc3B4UmVhZG9ubHlcIlxuICAgIFtjbGFzcy5yaW5nLWJsdWUtNTAwXT1cInRoaXMuc3B4Rm9jdXNlZCAmJiAhdGhpcy5zcHhSZWFkb25seVwiXG4gICAgW2NsYXNzLmJnLXdoaXRlXT1cIiF0aGlzLnNweFJlYWRvbmx5XCJcbiAgICBbY2xhc3MuYmctZ3JheS0zMDBdPVwidGhpcy5zcHhSZWFkb25seVwiXG4gICAgW2NsYXNzLmN1cnNvci1ub3QtYWxsb3dlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCI+XG4gICAgPGRpdiBjbGFzcz1cImZsZXgtYXV0byBwLTNcIlxuICAgICAgW2NsYXNzLnAtMF09XCJ0aGlzLnNweENvbXBhY3RcIlxuICAgICAgW2NsYXNzLmZsZXhdPVwidGhpcy5zcHhDb21wYWN0XCJcbiAgICAgIFtjbGFzcy5pdGVtcy1jZW50ZXJdPVwidGhpcy5zcHhDb21wYWN0XCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwidGhpcy5zcHhTaG93TGFiZWxcIiBjbGFzcz1cImZvbnQtYm9sZCB0ZXh0LXNtIG1iLTEgdGV4dC1ncmF5LTgwMFwiXG4gICAgICAgIFtjbGFzcy5tYi0wXT1cInRoaXMuc3B4Q29tcGFjdFwiXG4gICAgICAgIFtjbGFzcy5weC0zXT1cInRoaXMuc3B4Q29tcGFjdFwiPlxuICAgICAgICB7e3RoaXMuc3B4TGFiZWx9fSA8c3BhbiAqbmdJZj1cInNweFJlcXVpcmVkXCIgY2xhc3M9XCJ0ZXh0LXJlZC04MDBcIj4qPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbY29udHJvbHNdXCI+PC9uZy1jb250ZW50PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtbm9uZSBnYXAtMSBwLTFcIj5cbiAgICAgIDxzcHgtYnV0dG9uXG4gICAgICAgICpuZ0lmPVwidGhpcy5zcHhTaG93RWRpdFwiXG4gICAgICAgIChzcHhDbGljayk9XCJvbkVkaXQoKVwiXG4gICAgICAgIFtzcHhGdWxsSGVpZ2h0XT1cInRydWVcIlxuICAgICAgICBbc3B4U2l6ZV09XCIneGwnXCJcbiAgICAgICAgW3NweFR5cGVdPVwiJ2J1dHRvbidcIj5cbiAgICAgICAgPGZhLWljb24gW2ljb25dPVwiZmFFZGl0XCIgY2xhc3M9XCJibG9jayB0ZXh0LXhsXCI+PC9mYS1pY29uPlxuICAgICAgPC9zcHgtYnV0dG9uPlxuICAgICAgPHNweC1idXR0b25cbiAgICAgICAgKm5nSWY9XCJ0aGlzLnNweFNob3dIZWxwXCJcbiAgICAgICAgKHNweENsaWNrKT1cIm9uSGVscCgpXCJcbiAgICAgICAgW3NweEZ1bGxIZWlnaHRdPVwidHJ1ZVwiXG4gICAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXG4gICAgICAgIFtzcHhUYWJJbmRleF09XCItMVwiXG4gICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XG4gICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhUXVlc3Rpb25cIiBjbGFzcz1cImJsb2NrIHRleHQteGxcIj48L2ZhLWljb24+XG4gICAgICA8L3NweC1idXR0b24+XG4gICAgICA8c3B4LWJ1dHRvblxuICAgICAgICAqbmdJZj1cInRoaXMuc3B4U2hvd1NlYXJjaFwiXG4gICAgICAgIChzcHhDbGljayk9XCJvblNlYXJjaCgpXCJcbiAgICAgICAgW3NweEZ1bGxIZWlnaHRdPVwidHJ1ZVwiXG4gICAgICAgIFtzcHhEaXNhYmxlZF09XCJ0aGlzLnNweFJlYWRvbmx5XCJcbiAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXG4gICAgICAgIFtzcHhUYWJJbmRleF09XCItMVwiXG4gICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XG4gICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhU2VhcmNoXCIgY2xhc3M9XCJibG9jayB0ZXh0LXhsXCI+PC9mYS1pY29uPlxuICAgICAgPC9zcHgtYnV0dG9uPlxuICAgICAgPHNweC1idXR0b25cbiAgICAgICAgKm5nSWY9XCJ0aGlzLnNweFNob3dDbGVhclwiXG4gICAgICAgIChzcHhDbGljayk9XCJvbkNsZWFyKClcIlxuICAgICAgICBbc3B4RGlzYWJsZWRdPVwidGhpcy5zcHhSZWFkb25seSB8fCAhdGhpcy5zcHhWYWx1ZT8udmFsdWVcIlxuICAgICAgICBbc3B4RnVsbEhlaWdodF09XCJ0cnVlXCJcbiAgICAgICAgW3NweFNpemVdPVwiJ3hsJ1wiXG4gICAgICAgIFtzcHhUYWJJbmRleF09XCItMVwiXG4gICAgICAgIFtzcHhUeXBlXT1cIididXR0b24nXCI+XG4gICAgICAgIDxmYS1pY29uIFtpY29uXT1cImZhVGltZXNcIiBjbGFzcz1cImJsb2NrIHRleHQteGxcIj48L2ZhLWljb24+XG4gICAgICA8L3NweC1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwidGhpcy5zcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzXCIgY2xhc3M9XCJiZy1yZWQtNjAwIHJvdW5kZWQtYiB0ZXh0LXdoaXRlIHAtM1wiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlt2YWxpZGF0aW9uLW1lc3NhZ2VzXVwiPjwvbmctY29udGVudD5cbiAgPC9kaXY+YCxcbn0pXG5leHBvcnQgY2xhc3MgU3B4SW5wdXRCb3hDb21wb25lbnQge1xuICBmYUVkaXQgPSBmYUVkaXQ7XG4gIGZhU2VhcmNoID0gZmFTZWFyY2g7XG4gIGZhUXVlc3Rpb24gPSBmYVF1ZXN0aW9uO1xuICBmYVRpbWVzID0gZmFUaW1lcztcbiAgQElucHV0KCkgc3B4Q29tcGFjdD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNweEZvY3VzZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgc3B4TGFiZWw/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweFJlYWRvbmx5ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweFJlcXVpcmVkPzogYm9vbGVhbjtcbiAgQElucHV0KCkgc3B4U2hvd0NsZWFyID0gdHJ1ZTtcbiAgQElucHV0KCkgc3B4U2hvd0VkaXQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBzcHhTaG93SGVscD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNweFNob3dMYWJlbCA9IHRydWU7XG4gIEBJbnB1dCgpIHNweFNob3dTZWFyY2g/OiBib29sZWFuO1xuICBASW5wdXQoKSBzcHhTaG93VmFsaWRhdGlvbk1lc3NhZ2VzPzogYm9vbGVhbiB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHNweFZhbHVlPzogU3B4VmFsdWVQYWlyPGFueT47XG4gIEBPdXRwdXQoKSBzcHhDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgc3B4U2VhcmNoOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBPdXRwdXQoKSBzcHhGb2N1czogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICBAT3V0cHV0KCkgc3B4Rm9jdXNPdXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNweEVkaXQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIHNweEhlbHA6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNpbicsIFtcIiRldmVudFwiXSkgaGFuZGxlRm9jdXNJbihldjogRXZlbnQpIHtcbiAgICB0aGlzLmVtaXRGb2N1c0luKCk7XG4gIH1cbiAgQEhvc3RMaXN0ZW5lcignZm9jdXNvdXQnLCBbXCIkZXZlbnRcIl0pIGhhbmRsZUZvY3VzT3V0KGV2OiBGb2N1c0V2ZW50KSB7XG4gICAgY29uc3QgdGhpc0VsID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICAgIGNvbnN0IHJlbGF0ZWRFbGVtZW50ID0gZXYucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudDtcbiAgICBpZiAoIXJlbGF0ZWRFbGVtZW50IHx8ICF0aGlzRWwuY29udGFpbnMocmVsYXRlZEVsZW1lbnQpKSB7XG4gICAgICB0aGlzLmVtaXRGb2N1c091dCgpO1xuICAgIH1cbiAgfVxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFtcIiRldmVudFwiXSkgaGFuZGxlV2luZG93Q2xpY2soZXY6IEV2ZW50KSB7XG4gICAgaWYgKGV2LmNvbXBvc2VkUGF0aCgpLmluY2x1ZGVzKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudCkpIHtcbiAgICAgIHRoaXMuZW1pdEZvY3VzSW4oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lbWl0Rm9jdXNPdXQoKTtcbiAgICB9XG4gIH1cblxuICBvbkNsZWFyKCkge1xuICAgIHRoaXMuc3B4Q2xlYXIuZW1pdCgpO1xuICB9XG5cbiAgb25TZWFyY2goKSB7XG4gICAgdGhpcy5zcHhTZWFyY2guZW1pdCgpO1xuICB9XG5cbiAgb25FZGl0KCkge1xuICAgIHRoaXMuc3B4RWRpdC5lbWl0KCk7XG4gIH1cblxuICBvbkhlbHAoKSB7XG4gICAgdGhpcy5zcHhIZWxwLmVtaXQoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYpIHtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZvY3VzSW4oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNweEZvY3VzZWQpIHtcbiAgICAgIHRoaXMuc3B4Rm9jdXMuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZvY3VzT3V0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNweEZvY3VzZWQpIHtcbiAgICAgIHRoaXMuc3B4Rm9jdXNPdXQuZW1pdCgpO1xuICAgIH1cbiAgfVxufVxuIl19
|