@messaia/cdk 12.3.5-rc21 → 13.0.0-rc02
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/esm2020/lib/base/base.module.mjs +64 -0
- package/esm2020/lib/base/components/base.component.mjs +436 -0
- package/esm2020/lib/base/components/generic-form.component.mjs +482 -0
- package/esm2020/lib/base/components/generic-list.component.mjs +461 -0
- package/{esm2015/lib/base/constants/common.js → esm2020/lib/base/constants/common.mjs} +0 -0
- package/{esm2015/lib/base/enums/message-type.js → esm2020/lib/base/enums/message-type.mjs} +0 -0
- package/{esm2015/lib/base/helpers/auth-helper.js → esm2020/lib/base/helpers/auth-helper.mjs} +0 -0
- package/esm2020/lib/base/interceptors/base.interceptor.mjs +138 -0
- package/esm2020/lib/base/interceptors/caching-interceptor.mjs +68 -0
- package/esm2020/lib/base/interceptors/loading.interceptor.mjs +63 -0
- package/{esm2015/lib/base/models/auth-user.js → esm2020/lib/base/models/auth-user.mjs} +0 -0
- package/{esm2015/lib/base/public_api.js → esm2020/lib/base/public_api.mjs} +0 -0
- package/esm2020/lib/base/services/file.service.mjs +18 -0
- package/esm2020/lib/base/services/loading-screen.service.mjs +47 -0
- package/esm2020/lib/base/services/print.service.mjs +40 -0
- package/esm2020/lib/chips/chips.module.mjs +63 -0
- package/esm2020/lib/chips/components/chips.component.mjs +419 -0
- package/esm2020/lib/chips/public_api.mjs +3 -0
- package/{esm2015/lib/common/animations/collapse/collapse.animation.js → esm2020/lib/common/animations/collapse/collapse.animation.mjs} +0 -0
- package/{esm2015/lib/common/animations/common/interfaces.js → esm2020/lib/common/animations/common/interfaces.mjs} +0 -0
- package/{esm2015/lib/common/behaviors/constructor.js → esm2020/lib/common/behaviors/constructor.mjs} +0 -0
- package/esm2020/lib/common/behaviors/control-value-accesor.mixin.mjs +39 -0
- package/{esm2015/lib/common/behaviors/disabled.mixin.js → esm2020/lib/common/behaviors/disabled.mixin.mjs} +0 -0
- package/esm2020/lib/common/common.module.mjs +118 -0
- package/{esm2015/lib/common/constants/constants.js → esm2020/lib/common/constants/constants.mjs} +0 -0
- package/esm2020/lib/common/directives/disable-control.directive.mjs +34 -0
- package/{esm2015/lib/common/enums/salutation.js → esm2020/lib/common/enums/salutation.mjs} +0 -0
- package/{esm2015/lib/common/functions/decorators.js → esm2020/lib/common/functions/decorators.mjs} +0 -0
- package/{esm2015/lib/common/functions/functions.js → esm2020/lib/common/functions/functions.mjs} +0 -0
- package/esm2020/lib/common/functions/utils.mjs +161 -0
- package/esm2020/lib/common/helpers/app-storage.mjs +53 -0
- package/esm2020/lib/common/helpers/dynamic-builder.mjs +49 -0
- package/esm2020/lib/common/models/app-setting.mjs +10 -0
- package/{esm2015/lib/common/models/audit-user.js → esm2020/lib/common/models/audit-user.mjs} +0 -0
- package/{esm2015/lib/common/models/entity.js → esm2020/lib/common/models/entity.mjs} +0 -0
- package/{esm2015/lib/common/models/enum-item.js → esm2020/lib/common/models/enum-item.mjs} +0 -0
- package/{esm2015/lib/common/models/key-value.js → esm2020/lib/common/models/key-value.mjs} +0 -0
- package/{esm2015/lib/common/models/save-action.js → esm2020/lib/common/models/save-action.mjs} +0 -0
- package/esm2020/lib/common/pipes/data-source.pipe.mjs +15 -0
- package/esm2020/lib/common/pipes/enum.pipe.mjs +23 -0
- package/esm2020/lib/common/pipes/file-size.pipe.mjs +37 -0
- package/esm2020/lib/common/pipes/filter.pipe.mjs +23 -0
- package/esm2020/lib/common/pipes/first-letter.mjs +24 -0
- package/esm2020/lib/common/pipes/keys.mjs +18 -0
- package/esm2020/lib/common/pipes/month-name.pipe.mjs +27 -0
- package/esm2020/lib/common/pipes/only-number.mjs +53 -0
- package/esm2020/lib/common/pipes/order.pipe.mjs +183 -0
- package/esm2020/lib/common/pipes/placeholder.pipe.mjs +26 -0
- package/esm2020/lib/common/pipes/safe-html.pipe.mjs +31 -0
- package/esm2020/lib/common/pipes/time.pipe.mjs +20 -0
- package/esm2020/lib/common/pipes/titlecase.pipe.mjs +14 -0
- package/esm2020/lib/common/pipes/truncate.pipe.mjs +15 -0
- package/esm2020/lib/common/pipes/values.mjs +14 -0
- package/esm2020/lib/common/public_api.mjs +18 -0
- package/esm2020/lib/common/services/base.service.mjs +19 -0
- package/{esm2015/lib/common/services/context-helper.js → esm2020/lib/common/services/context-helper.mjs} +0 -0
- package/esm2020/lib/common/services/enum.service.mjs +44 -0
- package/{esm2015/lib/common/services/service-locator.js → esm2020/lib/common/services/service-locator.mjs} +0 -0
- package/esm2020/lib/dialogs/alert-dialog/alert-dialog.component.mjs +31 -0
- package/esm2020/lib/dialogs/confirm-dialog/confirm-dialog.component.mjs +37 -0
- package/esm2020/lib/dialogs/dialog.component.mjs +56 -0
- package/esm2020/lib/dialogs/dialogs.module.mjs +82 -0
- package/esm2020/lib/dialogs/prompt-dialog/prompt-dialog.component.mjs +40 -0
- package/{esm2015/lib/dialogs/public_api.js → esm2020/lib/dialogs/public_api.mjs} +0 -0
- package/esm2020/lib/dialogs/services/dialog.service.mjs +136 -0
- package/esm2020/lib/file/file-input.component.mjs +327 -0
- package/esm2020/lib/file/file.module.mjs +39 -0
- package/{esm2015/lib/file/public_api.js → esm2020/lib/file/public_api.mjs} +0 -0
- package/esm2020/lib/form-validators/abstract/typed-form.mjs +3 -0
- package/esm2020/lib/form-validators/algorithm/luhn-algorithm.mjs +15 -0
- package/esm2020/lib/form-validators/const/app-validators.const.mjs +68 -0
- package/esm2020/lib/form-validators/const/app.const.mjs +17 -0
- package/esm2020/lib/form-validators/const/config-names.const.mjs +9 -0
- package/esm2020/lib/form-validators/const/config-required-fields.const.mjs +11 -0
- package/esm2020/lib/form-validators/const/decorators.const.mjs +23 -0
- package/esm2020/lib/form-validators/const/events.const.mjs +14 -0
- package/esm2020/lib/form-validators/const/html-elements.const.mjs +7 -0
- package/esm2020/lib/form-validators/const/iban-country-wise-regex.const.mjs +80 -0
- package/esm2020/lib/form-validators/const/index.mjs +6 -0
- package/esm2020/lib/form-validators/const/operators.const.mjs +7 -0
- package/esm2020/lib/form-validators/const/validation-alphabet-locale.const.mjs +9 -0
- package/esm2020/lib/form-validators/const/validator.const.mjs +8 -0
- package/esm2020/lib/form-validators/core/defaultContainer.mjs +243 -0
- package/esm2020/lib/form-validators/core/validator.interface.mjs +2 -0
- package/esm2020/lib/form-validators/core/validator.static.mjs +74 -0
- package/esm2020/lib/form-validators/decorators/allOf.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/alpha.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/alphaNumeric.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/and.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/ascii.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/async.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/base-decorator.function.mjs +7 -0
- package/esm2020/lib/form-validators/decorators/choice.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/compare.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/compose.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/contains.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/credit-card.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/cusip.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/custom.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/dataUri.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/date.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/different.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/digit.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/email.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/endsWith.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/even.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/extension.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/factor.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/file.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/fileSize.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/greater-than-equal-to.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/greater-than.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/grid.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/hexColor.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/image.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/index.mjs +91 -0
- package/esm2020/lib/form-validators/decorators/json.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/latLong.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/latitude.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/leapYear.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/less-than-equal-to.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/less-than.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/longitude.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/lowercase.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/mac.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/mask.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/maxDate.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/maxLength.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/maxNumber.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/maxTime.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/minDate.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/minLength.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/minNumber.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/minTime.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/model.decorator.mjs +7 -0
- package/esm2020/lib/form-validators/decorators/non-validation-decorators/disable.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/non-validation-decorators/error.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/noneOf.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/not.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/notEmpty.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/numeric.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/odd.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/oneOf.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/or.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/password.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/pattern.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/port.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/primeNumber.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/prop-array.decorator.mjs +18 -0
- package/esm2020/lib/form-validators/decorators/prop-object.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/prop.decorator.mjs +16 -0
- package/esm2020/lib/form-validators/decorators/range.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/required.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/requiredTrue.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/rule.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/sanitize/blacklist.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/escape.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/ltrim.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/prefix.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/rtrim.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/sanitize.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/stripLow.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/suffix.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/toBoolean.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/toDate.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/toDouble.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/toFloat.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/toInt.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/toString.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/trim.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/sanitize/whitelist.decorator.mjs +8 -0
- package/esm2020/lib/form-validators/decorators/startsWith.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/time.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/decorators/unique.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/uppercase.decorator.mjs +6 -0
- package/esm2020/lib/form-validators/decorators/url.decorator.mjs +10 -0
- package/esm2020/lib/form-validators/directives/base-directive.mjs +43 -0
- package/esm2020/lib/form-validators/directives/control-host.directive.mjs +34 -0
- package/esm2020/lib/form-validators/directives/html-control-template.directive.mjs +20 -0
- package/esm2020/lib/form-validators/directives/rx-form.directive.mjs +134 -0
- package/esm2020/lib/form-validators/directives/template-validations/async-validation.directive.mjs +31 -0
- package/esm2020/lib/form-validators/directives/template-validations/base-validator.directive.mjs +42 -0
- package/esm2020/lib/form-validators/directives/template-validations/control-expression-process.mjs +26 -0
- package/esm2020/lib/form-validators/directives/template-validations/file-control.directive.mjs +91 -0
- package/esm2020/lib/form-validators/directives/template-validations/image-file-control.directive.mjs +50 -0
- package/esm2020/lib/form-validators/directives/template-validations/rxformcontrol.directive.mjs +277 -0
- package/esm2020/lib/form-validators/domain/disable-provider.mjs +93 -0
- package/esm2020/lib/form-validators/domain/element-processor/decimal.provider.mjs +59 -0
- package/esm2020/lib/form-validators/domain/element-processor/mask.provider.mjs +430 -0
- package/esm2020/lib/form-validators/domain/form-data.mjs +47 -0
- package/esm2020/lib/form-validators/enums/error-message-binding-strategy.mjs +11 -0
- package/esm2020/lib/form-validators/enums/index.mjs +5 -0
- package/esm2020/lib/form-validators/enums/ip-version.mjs +7 -0
- package/esm2020/lib/form-validators/enums/numeric-value-type.mjs +7 -0
- package/esm2020/lib/form-validators/enums/reset-type.mjs +10 -0
- package/esm2020/lib/form-validators/enums/url-validation-type.mjs +7 -0
- package/esm2020/lib/form-validators/models/config/alpha-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/array-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/base-config-fn.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/base-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/base-date-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/choice-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/compare-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/component-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/compose-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/contains-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/credit-card-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/custom-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/date-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/default-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/digit-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/disable-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/element-class-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/email-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/error-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/extension-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/factor-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/field-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/file-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/hex-color-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/iban-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/image-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/index.mjs +35 -0
- package/esm2020/lib/form-validators/models/config/ip-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/logical-operator-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/mask-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/max-date-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/message-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/min-date-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/model-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/number-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/numeric-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/password-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/pattern-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/prop-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/props-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/range-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/relational-operator-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/required-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/rule-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/sanitize-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/size-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/string-comparison-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/time-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/todate-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/unique-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/config/url-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/form-builder-configuration.mjs +8 -0
- package/esm2020/lib/form-validators/models/index.mjs +3 -0
- package/esm2020/lib/form-validators/models/interface/array-prop-instance-config.interface.mjs +2 -0
- package/esm2020/lib/form-validators/models/interface/auto-instance-config.interface.mjs +2 -0
- package/esm2020/lib/form-validators/models/interface/form-data-config.mjs +2 -0
- package/esm2020/lib/form-validators/models/interface/i-abstract-control.mjs +4 -0
- package/esm2020/lib/form-validators/models/interface/i-form-group.mjs +2 -0
- package/esm2020/lib/form-validators/models/interface/instance-argument.interface.mjs +2 -0
- package/esm2020/lib/form-validators/models/interface/object-prop-instance-config.interface.mjs +2 -0
- package/esm2020/lib/form-validators/models/interface/options.mjs +2 -0
- package/esm2020/lib/form-validators/models/password-validation.model.mjs +2 -0
- package/esm2020/lib/form-validators/models/prop-validation-config.mjs +2 -0
- package/esm2020/lib/form-validators/public_api.mjs +25 -0
- package/esm2020/lib/form-validators/reactive-form-validators/allOf.validator.mjs +22 -0
- package/esm2020/lib/form-validators/reactive-form-validators/alpha.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/alphaNumeric.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/and.validator.mjs +23 -0
- package/esm2020/lib/form-validators/reactive-form-validators/ascii.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/async/base.async.validator.mjs +24 -0
- package/esm2020/lib/form-validators/reactive-form-validators/choice.validator.mjs +19 -0
- package/esm2020/lib/form-validators/reactive-form-validators/compare.validator.mjs +20 -0
- package/esm2020/lib/form-validators/reactive-form-validators/compose.validator.mjs +23 -0
- package/esm2020/lib/form-validators/reactive-form-validators/conditional-change.validator.mjs +63 -0
- package/esm2020/lib/form-validators/reactive-form-validators/contains.validator.mjs +15 -0
- package/esm2020/lib/form-validators/reactive-form-validators/credit-card.validator.mjs +48 -0
- package/esm2020/lib/form-validators/reactive-form-validators/cusip.validator.mjs +38 -0
- package/esm2020/lib/form-validators/reactive-form-validators/custom.validator.mjs +23 -0
- package/esm2020/lib/form-validators/reactive-form-validators/dataUri.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/date.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/different.validator.mjs +19 -0
- package/esm2020/lib/form-validators/reactive-form-validators/digit.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/email.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/endsWith.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/even.validator.mjs +15 -0
- package/esm2020/lib/form-validators/reactive-form-validators/extension.validator.mjs +40 -0
- package/esm2020/lib/form-validators/reactive-form-validators/factor.validator.mjs +37 -0
- package/esm2020/lib/form-validators/reactive-form-validators/file.validator.mjs +26 -0
- package/esm2020/lib/form-validators/reactive-form-validators/fileSize.validator.mjs +32 -0
- package/esm2020/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/greater-than.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/grid.validator.mjs +31 -0
- package/esm2020/lib/form-validators/reactive-form-validators/hexcolor.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/iban.validator.mjs +30 -0
- package/esm2020/lib/form-validators/reactive-form-validators/image.validator.mjs +48 -0
- package/esm2020/lib/form-validators/reactive-form-validators/index.mjs +66 -0
- package/esm2020/lib/form-validators/reactive-form-validators/ip.validator.mjs +35 -0
- package/esm2020/lib/form-validators/reactive-form-validators/json.validator.mjs +26 -0
- package/esm2020/lib/form-validators/reactive-form-validators/latLong.validator.mjs +18 -0
- package/esm2020/lib/form-validators/reactive-form-validators/latitude.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/leapYear.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/less-than.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/longitude.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/lowercase.validator.mjs +15 -0
- package/esm2020/lib/form-validators/reactive-form-validators/mac.validator.mjs +9 -0
- package/esm2020/lib/form-validators/reactive-form-validators/mask.validator.mjs +13 -0
- package/esm2020/lib/form-validators/reactive-form-validators/maxDate.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/maxLength.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/maxNumber.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/maxTime.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/minDate.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/minLength.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/minNumber.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/minTime.validator.mjs +8 -0
- package/esm2020/lib/form-validators/reactive-form-validators/noneOf.validator.mjs +24 -0
- package/esm2020/lib/form-validators/reactive-form-validators/not.validator.mjs +23 -0
- package/esm2020/lib/form-validators/reactive-form-validators/notEmpty.validator.mjs +17 -0
- package/esm2020/lib/form-validators/reactive-form-validators/numeric.validator.mjs +20 -0
- package/esm2020/lib/form-validators/reactive-form-validators/odd.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/oneOf.validator.mjs +22 -0
- package/esm2020/lib/form-validators/reactive-form-validators/or.validator.mjs +23 -0
- package/esm2020/lib/form-validators/reactive-form-validators/password.validator.mjs +33 -0
- package/esm2020/lib/form-validators/reactive-form-validators/pattern.validator.mjs +17 -0
- package/esm2020/lib/form-validators/reactive-form-validators/port.validator.mjs +18 -0
- package/esm2020/lib/form-validators/reactive-form-validators/primeNumber.validator.mjs +26 -0
- package/esm2020/lib/form-validators/reactive-form-validators/range.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/required.validator.mjs +17 -0
- package/esm2020/lib/form-validators/reactive-form-validators/requiredTrue.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/rule.validator.mjs +20 -0
- package/esm2020/lib/form-validators/reactive-form-validators/startsWith.validator.mjs +16 -0
- package/esm2020/lib/form-validators/reactive-form-validators/time.validator.mjs +18 -0
- package/esm2020/lib/form-validators/reactive-form-validators/unique.validator.mjs +70 -0
- package/esm2020/lib/form-validators/reactive-form-validators/uppercase.validator.mjs +15 -0
- package/esm2020/lib/form-validators/reactive-form-validators/url.validator.mjs +28 -0
- package/esm2020/lib/form-validators/services/base-form-builder.mjs +115 -0
- package/esm2020/lib/form-validators/services/entity.service.mjs +64 -0
- package/esm2020/lib/form-validators/services/form-control.mjs +349 -0
- package/esm2020/lib/form-validators/services/form-group.mjs +2 -0
- package/esm2020/lib/form-validators/services/reactive-form.module.mjs +52 -0
- package/esm2020/lib/form-validators/services/rx-form-array.mjs +100 -0
- package/esm2020/lib/form-validators/services/rx-form-builder.mjs +559 -0
- package/esm2020/lib/form-validators/services/rx-form-group.mjs +299 -0
- package/esm2020/lib/form-validators/services/typed-form-builder.mjs +23 -0
- package/esm2020/lib/form-validators/util/alphabet-regex.locale.mjs +29 -0
- package/esm2020/lib/form-validators/util/app-util.mjs +141 -0
- package/esm2020/lib/form-validators/util/check-length.mjs +10 -0
- package/esm2020/lib/form-validators/util/config-provider.mjs +35 -0
- package/esm2020/lib/form-validators/util/date-checker.function.mjs +52 -0
- package/esm2020/lib/form-validators/util/date-provider.mjs +97 -0
- package/esm2020/lib/form-validators/util/form-const.mjs +3 -0
- package/esm2020/lib/form-validators/util/form-provider.mjs +37 -0
- package/esm2020/lib/form-validators/util/index.mjs +7 -0
- package/esm2020/lib/form-validators/util/instance-provider.function.mjs +30 -0
- package/esm2020/lib/form-validators/util/ip-checker.mjs +18 -0
- package/esm2020/lib/form-validators/util/linq.mjs +147 -0
- package/esm2020/lib/form-validators/util/object-maker.mjs +38 -0
- package/esm2020/lib/form-validators/util/reactive-form-config.mjs +23 -0
- package/esm2020/lib/form-validators/util/regex-rules.mjs +37 -0
- package/esm2020/lib/form-validators/util/regex-validator.mjs +74 -0
- package/esm2020/lib/form-validators/util/relational-checker.function.mjs +85 -0
- package/esm2020/lib/form-validators/util/reset-form.mjs +56 -0
- package/esm2020/lib/form-validators/util/sanitizers.mjs +131 -0
- package/esm2020/lib/form-validators/util/time-checker.function.mjs +48 -0
- package/esm2020/lib/form-validators/util/type.mjs +2 -0
- package/esm2020/lib/form-validators/util/validator-value-checker.mjs +17 -0
- package/esm2020/lib/form-validators/validators-extension/allOf-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/alpha-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/alphaNumeric-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/and-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/ascii-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/base-validator.function.mjs +33 -0
- package/esm2020/lib/form-validators/validators-extension/choice-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/compare-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/compose-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/contains-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/credit-card-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/cusip-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/custom-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/dataUri-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/date-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/different-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/digit-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/email-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/endsWith-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/even-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/extension-validator.extension.mjs +10 -0
- package/esm2020/lib/form-validators/validators-extension/factor-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/file-validator.extension.mjs +10 -0
- package/esm2020/lib/form-validators/validators-extension/fileSize-validator.extension.mjs +10 -0
- package/esm2020/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/greater-than-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/grid-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/hexcolor-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/iban-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/image-validator.extension.mjs +10 -0
- package/esm2020/lib/form-validators/validators-extension/index.mjs +68 -0
- package/esm2020/lib/form-validators/validators-extension/ip-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/json-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/latLong-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/latitude-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/leapYear-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/less-than-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/longitude-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/lowercase-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/mac-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/mask-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/maxDate-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/maxLength-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/maxNumber-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/maxTime-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/minDate-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/minLength-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/minNumber-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/minTime-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/noneOf-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/not-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/notEmpty-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/numeric-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/odd-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/oneOf-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/or-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/password-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/pattern-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/port-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/primeNumber-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/range-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/required-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/requiredTrue-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/rxweb-validators.mjs +108 -0
- package/esm2020/lib/form-validators/validators-extension/startsWith-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/time-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-extension/unique-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/uppercase-validator.extension.mjs +7 -0
- package/esm2020/lib/form-validators/validators-extension/url-validator.extension.mjs +11 -0
- package/esm2020/lib/form-validators/validators-function/alpha-validation.function.mjs +37 -0
- package/esm2020/lib/form-validators/validators-function/regex-validation.function.mjs +16 -0
- package/esm2020/lib/forms/components/generic-form/generic-form.component.mjs +131 -0
- package/{esm2015/lib/forms/constants/constants.js → esm2020/lib/forms/constants/constants.mjs} +0 -0
- package/esm2020/lib/forms/directives/mat-form-field-readonly.directive.mjs +33 -0
- package/{esm2015/lib/forms/enums/form-field-type.js → esm2020/lib/forms/enums/form-field-type.mjs} +0 -0
- package/esm2020/lib/forms/forms.module.mjs +122 -0
- package/esm2020/lib/forms/functions/decorators.mjs +127 -0
- package/{esm2015/lib/forms/functions/functions.js → esm2020/lib/forms/functions/functions.mjs} +0 -0
- package/esm2020/lib/forms/helpers/abstract-mat-form-field.mjs +251 -0
- package/esm2020/lib/forms/helpers/value-accessor-base.mjs +141 -0
- package/{esm2015/lib/forms/models/form-field-definition.js → esm2020/lib/forms/models/form-field-definition.mjs} +0 -0
- package/{esm2015/lib/forms/models/form-field-group.js → esm2020/lib/forms/models/form-field-group.mjs} +0 -0
- package/esm2020/lib/forms/public_api.mjs +4 -0
- package/esm2020/lib/forms/validators/equal-validator.directive.mjs +79 -0
- package/esm2020/lib/forms/validators/native-element-injector.directive.mjs +32 -0
- package/esm2020/lib/forms/validators/unique-validator-directive.mjs +75 -0
- package/esm2020/lib/http/http.module.mjs +20 -0
- package/{esm2015/lib/http/public_api.js → esm2020/lib/http/public_api.mjs} +0 -0
- package/{esm2015/lib/http/services/generic.service.js → esm2020/lib/http/services/generic.service.mjs} +0 -0
- package/esm2020/lib/layout/layout-card-over/layout-card-over.component.mjs +43 -0
- package/esm2020/lib/layout/layout-footer/layout-footer.component.mjs +34 -0
- package/esm2020/lib/layout/layout-manage-list/layout-manage-list.component.mjs +128 -0
- package/esm2020/lib/layout/layout-manage-list/layout-manage-list.directives.mjs +81 -0
- package/esm2020/lib/layout/layout-nav/layout-nav.component.mjs +62 -0
- package/esm2020/lib/layout/layout-nav-list/layout-nav-list.component.mjs +123 -0
- package/esm2020/lib/layout/layout-nav-list/layout-nav-list.directives.mjs +81 -0
- package/esm2020/lib/layout/layout-toggle.class.mjs +71 -0
- package/esm2020/lib/layout/layout.component.mjs +82 -0
- package/esm2020/lib/layout/layout.directives.mjs +81 -0
- package/esm2020/lib/layout/layout.module.mjs +118 -0
- package/esm2020/lib/layout/navigation-drawer/navigation-drawer.component.mjs +167 -0
- package/{esm2015/lib/layout/public_api.js → esm2020/lib/layout/public_api.mjs} +0 -0
- package/esm2020/lib/media/directives/media-toggle.directive.mjs +115 -0
- package/esm2020/lib/media/media.module.mjs +37 -0
- package/{esm2015/lib/media/public_api.js → esm2020/lib/media/public_api.mjs} +0 -0
- package/esm2020/lib/media/services/media.service.mjs +108 -0
- package/esm2020/lib/menu/components/menu.component.mjs +52 -0
- package/{esm2015/lib/menu/enums/menu-scope.js → esm2020/lib/menu/enums/menu-scope.mjs} +0 -0
- package/esm2020/lib/menu/menu.module.mjs +50 -0
- package/{esm2015/lib/menu/models/menu-item.js → esm2020/lib/menu/models/menu-item.mjs} +0 -0
- package/{esm2015/lib/menu/models/menu.js → esm2020/lib/menu/models/menu.mjs} +0 -0
- package/{esm2015/lib/menu/public_api.js → esm2020/lib/menu/public_api.mjs} +0 -0
- package/esm2020/lib/menu/services/menu-items.service.mjs +19 -0
- package/esm2020/lib/menu/services/menu.resolve.mjs +55 -0
- package/esm2020/lib/menu/services/menu.service.mjs +19 -0
- package/{esm2015/lib/search/public_api.js → esm2020/lib/search/public_api.mjs} +0 -0
- package/esm2020/lib/search/search.module.mjs +47 -0
- package/esm2020/lib/search/vd-search-box/vd-search-box.component.mjs +143 -0
- package/esm2020/lib/search/vd-search-input/vd-search-input.component.mjs +148 -0
- package/esm2020/lib/select/public_api.mjs +3 -0
- package/esm2020/lib/select/select.component.mjs +407 -0
- package/esm2020/lib/select/select.module.mjs +45 -0
- package/esm2020/lib/table/components/dynamic-table/dynamic-table.component.mjs +301 -0
- package/esm2020/lib/table/components/filter-clear.component.mjs +44 -0
- package/esm2020/lib/table/components/filter-date.component.mjs +151 -0
- package/esm2020/lib/table/components/filter-input.component.mjs +198 -0
- package/esm2020/lib/table/components/filter-select.component.mjs +334 -0
- package/esm2020/lib/table/directives/data-source-filter.directive.mjs +45 -0
- package/{esm2015/lib/table/enums/table-column-type.js → esm2020/lib/table/enums/table-column-type.mjs} +0 -0
- package/esm2020/lib/table/functions/decorators.mjs +135 -0
- package/esm2020/lib/table/functions/functions.mjs +15 -0
- package/{esm2015/lib/table/models/pagination.js → esm2020/lib/table/models/pagination.mjs} +0 -0
- package/{esm2015/lib/table/models/table-column.js → esm2020/lib/table/models/table-column.mjs} +0 -0
- package/{esm2015/lib/table/models/table-definition.js → esm2020/lib/table/models/table-definition.mjs} +0 -0
- package/{esm2015/lib/table/models/table-menu-item.js → esm2020/lib/table/models/table-menu-item.mjs} +0 -0
- package/esm2020/lib/table/paginator-intl.mjs +44 -0
- package/esm2020/lib/table/public_api.mjs +3 -0
- package/esm2020/lib/table/table.data-source.mjs +210 -0
- package/esm2020/lib/table/table.module.mjs +140 -0
- package/esm2020/lib/table/table.static-data-source.mjs +133 -0
- package/esm2020/messaia-cdk.mjs +5 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/fesm2015/messaia-cdk.mjs +15946 -0
- package/fesm2015/messaia-cdk.mjs.map +1 -0
- package/fesm2020/messaia-cdk.mjs +15868 -0
- package/fesm2020/messaia-cdk.mjs.map +1 -0
- package/lib/base/base.module.d.ts +7 -0
- package/lib/base/components/base.component.d.ts +8 -0
- package/lib/base/components/generic-form.component.d.ts +3 -0
- package/lib/base/components/generic-list.component.d.ts +3 -0
- package/lib/base/interceptors/base.interceptor.d.ts +3 -0
- package/lib/base/interceptors/caching-interceptor.d.ts +3 -0
- package/lib/base/interceptors/loading.interceptor.d.ts +3 -0
- package/lib/base/services/file.service.d.ts +3 -0
- package/lib/base/services/loading-screen.service.d.ts +3 -0
- package/lib/base/services/print.service.d.ts +3 -0
- package/lib/chips/chips.module.d.ts +13 -2
- package/lib/chips/components/chips.component.d.ts +7 -0
- package/lib/chips/public_api.d.ts +1 -0
- package/lib/common/common.module.d.ts +20 -0
- package/lib/common/directives/disable-control.directive.d.ts +3 -0
- package/lib/common/functions/utils.d.ts +3 -0
- package/lib/common/helpers/app-storage.d.ts +3 -0
- package/lib/common/helpers/dynamic-builder.d.ts +3 -0
- package/lib/common/models/app-setting.d.ts +3 -0
- package/lib/common/pipes/data-source.pipe.d.ts +3 -0
- package/lib/common/pipes/enum.pipe.d.ts +3 -0
- package/lib/common/pipes/file-size.pipe.d.ts +3 -0
- package/lib/common/pipes/filter.pipe.d.ts +3 -0
- package/lib/common/pipes/first-letter.d.ts +3 -0
- package/lib/common/pipes/keys.d.ts +3 -0
- package/lib/common/pipes/month-name.pipe.d.ts +3 -0
- package/lib/common/pipes/only-number.d.ts +3 -0
- package/lib/common/pipes/order.pipe.d.ts +4 -1
- package/lib/common/pipes/placeholder.pipe.d.ts +3 -0
- package/lib/common/pipes/safe-html.pipe.d.ts +3 -0
- package/lib/common/pipes/time.pipe.d.ts +3 -0
- package/lib/common/pipes/titlecase.pipe.d.ts +3 -0
- package/lib/common/pipes/truncate.pipe.d.ts +3 -0
- package/lib/common/pipes/values.d.ts +3 -0
- package/lib/common/public_api.d.ts +16 -0
- package/lib/common/services/base.service.d.ts +3 -0
- package/lib/common/services/enum.service.d.ts +3 -0
- package/lib/common/styles/platform.scss +1 -1
- package/lib/common/theming/_all-theme.scss +1 -1
- package/lib/dialogs/alert-dialog/alert-dialog.component.d.ts +3 -0
- package/lib/dialogs/confirm-dialog/confirm-dialog.component.d.ts +3 -0
- package/lib/dialogs/dialog.component.d.ts +9 -0
- package/lib/dialogs/dialogs.module.d.ts +13 -0
- package/lib/dialogs/prompt-dialog/prompt-dialog.component.d.ts +3 -0
- package/lib/dialogs/services/dialog.service.d.ts +3 -0
- package/lib/file/file-input.component.d.ts +3 -0
- package/lib/file/file.module.d.ts +10 -0
- package/lib/form-validators/directives/base-directive.d.ts +3 -0
- package/lib/form-validators/directives/control-host.directive.d.ts +3 -0
- package/lib/form-validators/directives/html-control-template.directive.d.ts +3 -0
- package/lib/form-validators/directives/rx-form.directive.d.ts +3 -0
- package/lib/form-validators/directives/template-validations/async-validation.directive.d.ts +3 -0
- package/lib/form-validators/directives/template-validations/base-validator.directive.d.ts +3 -0
- package/lib/form-validators/directives/template-validations/control-expression-process.d.ts +3 -0
- package/lib/form-validators/directives/template-validations/file-control.directive.d.ts +3 -0
- package/lib/form-validators/directives/template-validations/image-file-control.directive.d.ts +3 -0
- package/lib/form-validators/directives/template-validations/rxformcontrol.directive.d.ts +3 -0
- package/lib/form-validators/domain/element-processor/decimal.provider.d.ts +3 -0
- package/lib/form-validators/services/reactive-form.module.d.ts +16 -0
- package/lib/form-validators/services/rx-form-builder.d.ts +3 -0
- package/lib/form-validators/services/typed-form-builder.d.ts +3 -0
- package/lib/forms/components/generic-form/generic-form.component.d.ts +11 -0
- package/lib/forms/directives/mat-form-field-readonly.directive.d.ts +3 -0
- package/lib/forms/forms.module.d.ts +23 -0
- package/lib/forms/helpers/abstract-mat-form-field.d.ts +4 -1
- package/lib/forms/helpers/value-accessor-base.d.ts +3 -0
- package/lib/forms/public_api.d.ts +2 -0
- package/lib/forms/validators/equal-validator.directive.d.ts +3 -0
- package/lib/forms/validators/native-element-injector.directive.d.ts +3 -0
- package/lib/forms/validators/unique-validator-directive.d.ts +3 -0
- package/lib/http/http.module.d.ts +5 -0
- package/lib/layout/layout-card-over/layout-card-over.component.d.ts +3 -0
- package/lib/layout/layout-footer/layout-footer.component.d.ts +3 -0
- package/lib/layout/layout-manage-list/layout-manage-list.component.d.ts +3 -0
- package/lib/layout/layout-manage-list/layout-manage-list.directives.d.ts +7 -0
- package/lib/layout/layout-nav/layout-nav.component.d.ts +3 -0
- package/lib/layout/layout-nav-list/layout-nav-list.component.d.ts +3 -0
- package/lib/layout/layout-nav-list/layout-nav-list.directives.d.ts +7 -0
- package/lib/layout/layout-toggle.class.d.ts +3 -0
- package/lib/layout/layout.component.d.ts +3 -0
- package/lib/layout/layout.directives.d.ts +7 -0
- package/lib/layout/layout.module.d.ts +22 -0
- package/lib/layout/navigation-drawer/navigation-drawer.component.d.ts +7 -0
- package/lib/media/directives/media-toggle.directive.d.ts +3 -0
- package/lib/media/media.module.d.ts +6 -0
- package/lib/media/services/media.service.d.ts +3 -0
- package/lib/menu/components/menu.component.d.ts +3 -0
- package/lib/menu/menu.module.d.ts +9 -0
- package/lib/menu/services/menu-items.service.d.ts +3 -0
- package/lib/menu/services/menu.resolve.d.ts +5 -0
- package/lib/menu/services/menu.service.d.ts +3 -0
- package/lib/search/search.module.d.ts +11 -0
- package/lib/search/vd-search-box/vd-search-box.component.d.ts +3 -0
- package/lib/search/vd-search-input/vd-search-input.component.d.ts +3 -0
- package/lib/select/public_api.d.ts +1 -0
- package/lib/select/select.component.d.ts +5 -0
- package/lib/select/select.module.d.ts +10 -0
- package/lib/table/components/dynamic-table/dynamic-table.component.d.ts +3 -0
- package/lib/table/components/filter-clear.component.d.ts +3 -0
- package/lib/table/components/filter-date.component.d.ts +3 -0
- package/lib/table/components/filter-input.component.d.ts +3 -0
- package/lib/table/components/filter-select.component.d.ts +5 -0
- package/lib/table/directives/data-source-filter.directive.d.ts +3 -0
- package/lib/table/paginator-intl.d.ts +3 -0
- package/lib/table/public_api.d.ts +1 -0
- package/lib/table/table.module.d.ts +28 -0
- package/messaia-cdk.d.ts +1 -25
- package/package.json +20 -8
- package/src/lib/common/styles/font/README.md +9 -0
- package/src/lib/layout/README.md +119 -0
- package/src/lib/layout/layout-card-over/README.md +36 -0
- package/src/lib/layout/layout-manage-list/README.md +76 -0
- package/src/lib/layout/layout-nav/README.md +40 -0
- package/src/lib/layout/layout-nav-list/README.md +85 -0
- package/bundles/messaia-cdk.umd.js +0 -17755
- package/bundles/messaia-cdk.umd.js.map +0 -1
- package/esm2015/lib/base/base.module.js +0 -47
- package/esm2015/lib/base/components/base.component.js +0 -441
- package/esm2015/lib/base/components/generic-form.component.js +0 -492
- package/esm2015/lib/base/components/generic-list.component.js +0 -469
- package/esm2015/lib/base/interceptors/base.interceptor.js +0 -148
- package/esm2015/lib/base/interceptors/caching-interceptor.js +0 -75
- package/esm2015/lib/base/interceptors/loading.interceptor.js +0 -70
- package/esm2015/lib/base/services/file.service.js +0 -25
- package/esm2015/lib/base/services/loading-screen.service.js +0 -46
- package/esm2015/lib/base/services/print.service.js +0 -49
- package/esm2015/lib/chips/chips.module.js +0 -44
- package/esm2015/lib/chips/components/chips.component.js +0 -420
- package/esm2015/lib/chips/public_api.js +0 -2
- package/esm2015/lib/common/behaviors/control-value-accesor.mixin.js +0 -41
- package/esm2015/lib/common/common.module.js +0 -86
- package/esm2015/lib/common/directives/disable-control.directive.js +0 -43
- package/esm2015/lib/common/functions/utils.js +0 -160
- package/esm2015/lib/common/helpers/app-storage.js +0 -51
- package/esm2015/lib/common/helpers/dynamic-builder.js +0 -58
- package/esm2015/lib/common/models/app-setting.js +0 -8
- package/esm2015/lib/common/pipes/data-source.pipe.js +0 -12
- package/esm2015/lib/common/pipes/enum.pipe.js +0 -20
- package/esm2015/lib/common/pipes/file-size.pipe.js +0 -34
- package/esm2015/lib/common/pipes/filter.pipe.js +0 -20
- package/esm2015/lib/common/pipes/first-letter.js +0 -21
- package/esm2015/lib/common/pipes/keys.js +0 -15
- package/esm2015/lib/common/pipes/month-name.pipe.js +0 -24
- package/esm2015/lib/common/pipes/only-number.js +0 -60
- package/esm2015/lib/common/pipes/order.pipe.js +0 -180
- package/esm2015/lib/common/pipes/placeholder.pipe.js +0 -23
- package/esm2015/lib/common/pipes/safe-html.pipe.js +0 -37
- package/esm2015/lib/common/pipes/time.pipe.js +0 -17
- package/esm2015/lib/common/pipes/titlecase.pipe.js +0 -11
- package/esm2015/lib/common/pipes/truncate.pipe.js +0 -12
- package/esm2015/lib/common/pipes/values.js +0 -11
- package/esm2015/lib/common/public_api.js +0 -2
- package/esm2015/lib/common/services/base.service.js +0 -26
- package/esm2015/lib/common/services/enum.service.js +0 -42
- package/esm2015/lib/dialogs/alert-dialog/alert-dialog.component.js +0 -38
- package/esm2015/lib/dialogs/confirm-dialog/confirm-dialog.component.js +0 -44
- package/esm2015/lib/dialogs/dialog.component.js +0 -47
- package/esm2015/lib/dialogs/dialogs.module.js +0 -54
- package/esm2015/lib/dialogs/prompt-dialog/prompt-dialog.component.js +0 -44
- package/esm2015/lib/dialogs/services/dialog.service.js +0 -145
- package/esm2015/lib/file/file-input.component.js +0 -301
- package/esm2015/lib/file/file.module.js +0 -25
- package/esm2015/lib/form-validators/abstract/typed-form.js +0 -3
- package/esm2015/lib/form-validators/algorithm/luhn-algorithm.js +0 -15
- package/esm2015/lib/form-validators/const/app-validators.const.js +0 -68
- package/esm2015/lib/form-validators/const/app.const.js +0 -17
- package/esm2015/lib/form-validators/const/config-names.const.js +0 -9
- package/esm2015/lib/form-validators/const/config-required-fields.const.js +0 -11
- package/esm2015/lib/form-validators/const/decorators.const.js +0 -23
- package/esm2015/lib/form-validators/const/events.const.js +0 -14
- package/esm2015/lib/form-validators/const/html-elements.const.js +0 -7
- package/esm2015/lib/form-validators/const/iban-country-wise-regex.const.js +0 -80
- package/esm2015/lib/form-validators/const/index.js +0 -6
- package/esm2015/lib/form-validators/const/operators.const.js +0 -7
- package/esm2015/lib/form-validators/const/validation-alphabet-locale.const.js +0 -9
- package/esm2015/lib/form-validators/const/validator.const.js +0 -8
- package/esm2015/lib/form-validators/core/defaultContainer.js +0 -243
- package/esm2015/lib/form-validators/core/validator.interface.js +0 -2
- package/esm2015/lib/form-validators/core/validator.static.js +0 -74
- package/esm2015/lib/form-validators/decorators/allOf.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/alpha.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/alphaNumeric.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/and.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/ascii.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/async.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/base-decorator.function.js +0 -7
- package/esm2015/lib/form-validators/decorators/choice.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/compare.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/compose.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/contains.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/credit-card.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/cusip.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/custom.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/dataUri.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/date.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/different.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/digit.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/email.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/endsWith.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/even.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/extension.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/factor.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/file.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/fileSize.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/greater-than-equal-to.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/greater-than.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/grid.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/hexColor.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/image.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/index.js +0 -91
- package/esm2015/lib/form-validators/decorators/json.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/latLong.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/latitude.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/leapYear.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/less-than-equal-to.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/less-than.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/longitude.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/lowercase.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/mac.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/mask.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/maxDate.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/maxLength.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/maxNumber.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/maxTime.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/minDate.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/minLength.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/minNumber.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/minTime.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/model.decorator.js +0 -7
- package/esm2015/lib/form-validators/decorators/non-validation-decorators/disable.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/non-validation-decorators/elementClass.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/non-validation-decorators/error.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/noneOf.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/not.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/notEmpty.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/numeric.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/odd.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/oneOf.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/or.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/password.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/pattern.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/port.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/primeNumber.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/prop-array.decorator.js +0 -18
- package/esm2015/lib/form-validators/decorators/prop-object.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/prop.decorator.js +0 -16
- package/esm2015/lib/form-validators/decorators/range.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/required.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/requiredTrue.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/rule.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/sanitize/blacklist.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/escape.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/ltrim.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/prefix.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/rtrim.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/sanitize.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/stripLow.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/suffix.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/toBoolean.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/toDate.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/toDouble.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/toFloat.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/toInt.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/toString.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/trim.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/sanitize/whitelist.decorator.js +0 -8
- package/esm2015/lib/form-validators/decorators/startsWith.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/time.decorator.js +0 -10
- package/esm2015/lib/form-validators/decorators/unique.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/uppercase.decorator.js +0 -6
- package/esm2015/lib/form-validators/decorators/url.decorator.js +0 -10
- package/esm2015/lib/form-validators/directives/base-directive.js +0 -43
- package/esm2015/lib/form-validators/directives/control-host.directive.js +0 -42
- package/esm2015/lib/form-validators/directives/html-control-template.directive.js +0 -28
- package/esm2015/lib/form-validators/directives/rx-form.directive.js +0 -131
- package/esm2015/lib/form-validators/directives/template-validations/async-validation.directive.js +0 -26
- package/esm2015/lib/form-validators/directives/template-validations/base-validator.directive.js +0 -42
- package/esm2015/lib/form-validators/directives/template-validations/control-expression-process.js +0 -25
- package/esm2015/lib/form-validators/directives/template-validations/file-control.directive.js +0 -93
- package/esm2015/lib/form-validators/directives/template-validations/image-file-control.directive.js +0 -55
- package/esm2015/lib/form-validators/directives/template-validations/rxformcontrol.directive.js +0 -237
- package/esm2015/lib/form-validators/domain/disable-provider.js +0 -93
- package/esm2015/lib/form-validators/domain/element-processor/decimal.provider.js +0 -64
- package/esm2015/lib/form-validators/domain/element-processor/mask.provider.js +0 -430
- package/esm2015/lib/form-validators/domain/form-data.js +0 -47
- package/esm2015/lib/form-validators/enums/error-message-binding-strategy.js +0 -11
- package/esm2015/lib/form-validators/enums/index.js +0 -5
- package/esm2015/lib/form-validators/enums/ip-version.js +0 -7
- package/esm2015/lib/form-validators/enums/numeric-value-type.js +0 -7
- package/esm2015/lib/form-validators/enums/reset-type.js +0 -10
- package/esm2015/lib/form-validators/enums/url-validation-type.js +0 -7
- package/esm2015/lib/form-validators/models/config/alpha-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/array-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/base-config-fn.js +0 -2
- package/esm2015/lib/form-validators/models/config/base-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/base-date-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/choice-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/compare-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/component-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/compose-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/contains-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/credit-card-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/custom-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/date-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/default-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/digit-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/disable-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/element-class-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/email-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/error-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/extension-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/factor-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/field-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/file-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/hex-color-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/iban-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/image-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/index.js +0 -35
- package/esm2015/lib/form-validators/models/config/ip-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/logical-operator-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/mask-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/max-date-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/message-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/min-date-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/model-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/number-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/numeric-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/password-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/pattern-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/prop-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/props-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/range-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/relational-operator-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/required-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/rule-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/sanitize-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/size-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/string-comparison-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/time-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/todate-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/unique-config.js +0 -2
- package/esm2015/lib/form-validators/models/config/url-config.js +0 -2
- package/esm2015/lib/form-validators/models/form-builder-configuration.js +0 -8
- package/esm2015/lib/form-validators/models/index.js +0 -3
- package/esm2015/lib/form-validators/models/interface/array-prop-instance-config.interface.js +0 -2
- package/esm2015/lib/form-validators/models/interface/auto-instance-config.interface.js +0 -2
- package/esm2015/lib/form-validators/models/interface/form-data-config.js +0 -2
- package/esm2015/lib/form-validators/models/interface/i-abstract-control.js +0 -4
- package/esm2015/lib/form-validators/models/interface/i-form-group.js +0 -2
- package/esm2015/lib/form-validators/models/interface/instance-argument.interface.js +0 -2
- package/esm2015/lib/form-validators/models/interface/object-prop-instance-config.interface.js +0 -2
- package/esm2015/lib/form-validators/models/interface/options.js +0 -2
- package/esm2015/lib/form-validators/models/password-validation.model.js +0 -2
- package/esm2015/lib/form-validators/models/prop-validation-config.js +0 -2
- package/esm2015/lib/form-validators/public_api.js +0 -25
- package/esm2015/lib/form-validators/reactive-form-validators/allOf.validator.js +0 -22
- package/esm2015/lib/form-validators/reactive-form-validators/alpha.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/alphaNumeric.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/and.validator.js +0 -23
- package/esm2015/lib/form-validators/reactive-form-validators/ascii.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/async/base.async.validator.js +0 -24
- package/esm2015/lib/form-validators/reactive-form-validators/choice.validator.js +0 -19
- package/esm2015/lib/form-validators/reactive-form-validators/compare.validator.js +0 -20
- package/esm2015/lib/form-validators/reactive-form-validators/compose.validator.js +0 -23
- package/esm2015/lib/form-validators/reactive-form-validators/conditional-change.validator.js +0 -63
- package/esm2015/lib/form-validators/reactive-form-validators/contains.validator.js +0 -15
- package/esm2015/lib/form-validators/reactive-form-validators/credit-card.validator.js +0 -48
- package/esm2015/lib/form-validators/reactive-form-validators/cusip.validator.js +0 -38
- package/esm2015/lib/form-validators/reactive-form-validators/custom.validator.js +0 -23
- package/esm2015/lib/form-validators/reactive-form-validators/dataUri.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/date.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/different.validator.js +0 -19
- package/esm2015/lib/form-validators/reactive-form-validators/digit.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/email.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/endsWith.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/even.validator.js +0 -15
- package/esm2015/lib/form-validators/reactive-form-validators/extension.validator.js +0 -40
- package/esm2015/lib/form-validators/reactive-form-validators/factor.validator.js +0 -37
- package/esm2015/lib/form-validators/reactive-form-validators/file.validator.js +0 -26
- package/esm2015/lib/form-validators/reactive-form-validators/fileSize.validator.js +0 -32
- package/esm2015/lib/form-validators/reactive-form-validators/greater-than-equal-to.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/greater-than.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/grid.validator.js +0 -31
- package/esm2015/lib/form-validators/reactive-form-validators/hexcolor.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/iban.validator.js +0 -30
- package/esm2015/lib/form-validators/reactive-form-validators/image.validator.js +0 -48
- package/esm2015/lib/form-validators/reactive-form-validators/index.js +0 -66
- package/esm2015/lib/form-validators/reactive-form-validators/ip.validator.js +0 -35
- package/esm2015/lib/form-validators/reactive-form-validators/json.validator.js +0 -26
- package/esm2015/lib/form-validators/reactive-form-validators/latLong.validator.js +0 -18
- package/esm2015/lib/form-validators/reactive-form-validators/latitude.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/leapYear.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/less-than-equal-to.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/less-than.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/longitude.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/lowercase.validator.js +0 -15
- package/esm2015/lib/form-validators/reactive-form-validators/mac.validator.js +0 -9
- package/esm2015/lib/form-validators/reactive-form-validators/mask.validator.js +0 -13
- package/esm2015/lib/form-validators/reactive-form-validators/maxDate.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/maxLength.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/maxNumber.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/maxTime.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/minDate.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/minLength.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/minNumber.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/minTime.validator.js +0 -8
- package/esm2015/lib/form-validators/reactive-form-validators/noneOf.validator.js +0 -24
- package/esm2015/lib/form-validators/reactive-form-validators/not.validator.js +0 -23
- package/esm2015/lib/form-validators/reactive-form-validators/notEmpty.validator.js +0 -17
- package/esm2015/lib/form-validators/reactive-form-validators/numeric.validator.js +0 -20
- package/esm2015/lib/form-validators/reactive-form-validators/odd.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/oneOf.validator.js +0 -22
- package/esm2015/lib/form-validators/reactive-form-validators/or.validator.js +0 -23
- package/esm2015/lib/form-validators/reactive-form-validators/password.validator.js +0 -33
- package/esm2015/lib/form-validators/reactive-form-validators/pattern.validator.js +0 -17
- package/esm2015/lib/form-validators/reactive-form-validators/port.validator.js +0 -18
- package/esm2015/lib/form-validators/reactive-form-validators/primeNumber.validator.js +0 -26
- package/esm2015/lib/form-validators/reactive-form-validators/range.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/required.validator.js +0 -17
- package/esm2015/lib/form-validators/reactive-form-validators/requiredTrue.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/rule.validator.js +0 -20
- package/esm2015/lib/form-validators/reactive-form-validators/startsWith.validator.js +0 -16
- package/esm2015/lib/form-validators/reactive-form-validators/time.validator.js +0 -18
- package/esm2015/lib/form-validators/reactive-form-validators/unique.validator.js +0 -70
- package/esm2015/lib/form-validators/reactive-form-validators/uppercase.validator.js +0 -15
- package/esm2015/lib/form-validators/reactive-form-validators/url.validator.js +0 -28
- package/esm2015/lib/form-validators/services/base-form-builder.js +0 -115
- package/esm2015/lib/form-validators/services/entity.service.js +0 -64
- package/esm2015/lib/form-validators/services/form-control.js +0 -349
- package/esm2015/lib/form-validators/services/form-group.js +0 -2
- package/esm2015/lib/form-validators/services/reactive-form.module.js +0 -53
- package/esm2015/lib/form-validators/services/rx-form-array.js +0 -100
- package/esm2015/lib/form-validators/services/rx-form-builder.js +0 -565
- package/esm2015/lib/form-validators/services/rx-form-group.js +0 -299
- package/esm2015/lib/form-validators/services/typed-form-builder.js +0 -29
- package/esm2015/lib/form-validators/util/alphabet-regex.locale.js +0 -29
- package/esm2015/lib/form-validators/util/app-util.js +0 -141
- package/esm2015/lib/form-validators/util/check-length.js +0 -10
- package/esm2015/lib/form-validators/util/config-provider.js +0 -35
- package/esm2015/lib/form-validators/util/date-checker.function.js +0 -52
- package/esm2015/lib/form-validators/util/date-provider.js +0 -97
- package/esm2015/lib/form-validators/util/form-const.js +0 -3
- package/esm2015/lib/form-validators/util/form-provider.js +0 -37
- package/esm2015/lib/form-validators/util/index.js +0 -7
- package/esm2015/lib/form-validators/util/instance-provider.function.js +0 -30
- package/esm2015/lib/form-validators/util/ip-checker.js +0 -18
- package/esm2015/lib/form-validators/util/linq.js +0 -147
- package/esm2015/lib/form-validators/util/object-maker.js +0 -38
- package/esm2015/lib/form-validators/util/reactive-form-config.js +0 -23
- package/esm2015/lib/form-validators/util/regex-rules.js +0 -37
- package/esm2015/lib/form-validators/util/regex-validator.js +0 -74
- package/esm2015/lib/form-validators/util/relational-checker.function.js +0 -85
- package/esm2015/lib/form-validators/util/reset-form.js +0 -56
- package/esm2015/lib/form-validators/util/sanitizers.js +0 -131
- package/esm2015/lib/form-validators/util/time-checker.function.js +0 -48
- package/esm2015/lib/form-validators/util/type.js +0 -2
- package/esm2015/lib/form-validators/util/validator-value-checker.js +0 -17
- package/esm2015/lib/form-validators/validators-extension/allOf-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/alpha-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/alphaNumeric-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/and-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/ascii-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/base-validator.function.js +0 -33
- package/esm2015/lib/form-validators/validators-extension/choice-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/compare-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/compose-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/contains-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/credit-card-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/cusip-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/custom-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/dataUri-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/date-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/different-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/digit-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/email-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/endsWith-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/even-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/extension-validator.extension.js +0 -10
- package/esm2015/lib/form-validators/validators-extension/factor-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/file-validator.extension.js +0 -10
- package/esm2015/lib/form-validators/validators-extension/fileSize-validator.extension.js +0 -10
- package/esm2015/lib/form-validators/validators-extension/greater-than-equal-to-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/greater-than-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/grid-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/hexcolor-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/iban-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/image-validator.extension.js +0 -10
- package/esm2015/lib/form-validators/validators-extension/index.js +0 -68
- package/esm2015/lib/form-validators/validators-extension/ip-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/json-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/latLong-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/latitude-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/leapYear-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/less-than-equal-to-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/less-than-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/longitude-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/lowercase-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/mac-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/mask-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/maxDate-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/maxLength-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/maxNumber-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/maxTime-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/minDate-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/minLength-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/minNumber-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/minTime-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/noneOf-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/not-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/notEmpty-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/numeric-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/odd-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/oneOf-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/or-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/password-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/pattern-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/port-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/primeNumber-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/range-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/required-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/requiredTrue-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/rxweb-validators.js +0 -108
- package/esm2015/lib/form-validators/validators-extension/startsWith-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/time-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-extension/unique-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/uppercase-validator.extension.js +0 -7
- package/esm2015/lib/form-validators/validators-extension/url-validator.extension.js +0 -11
- package/esm2015/lib/form-validators/validators-function/alpha-validation.function.js +0 -37
- package/esm2015/lib/form-validators/validators-function/regex-validation.function.js +0 -16
- package/esm2015/lib/forms/components/generic-form/generic-form.component.js +0 -149
- package/esm2015/lib/forms/directives/mat-form-field-readonly.directive.js +0 -40
- package/esm2015/lib/forms/forms.module.js +0 -70
- package/esm2015/lib/forms/functions/decorators.js +0 -129
- package/esm2015/lib/forms/helpers/abstract-mat-form-field.js +0 -257
- package/esm2015/lib/forms/helpers/value-accessor-base.js +0 -140
- package/esm2015/lib/forms/public_api.js +0 -2
- package/esm2015/lib/forms/validators/equal-validator.directive.js +0 -75
- package/esm2015/lib/forms/validators/native-element-injector.directive.js +0 -38
- package/esm2015/lib/forms/validators/unique-validator-directive.js +0 -78
- package/esm2015/lib/http/http.module.js +0 -14
- package/esm2015/lib/layout/layout-card-over/layout-card-over.component.js +0 -35
- package/esm2015/lib/layout/layout-footer/layout-footer.component.js +0 -48
- package/esm2015/lib/layout/layout-manage-list/layout-manage-list.component.js +0 -125
- package/esm2015/lib/layout/layout-manage-list/layout-manage-list.directives.js +0 -103
- package/esm2015/lib/layout/layout-nav/layout-nav.component.js +0 -59
- package/esm2015/lib/layout/layout-nav-list/layout-nav-list.component.js +0 -111
- package/esm2015/lib/layout/layout-nav-list/layout-nav-list.directives.js +0 -103
- package/esm2015/lib/layout/layout-toggle.class.js +0 -80
- package/esm2015/lib/layout/layout.component.js +0 -77
- package/esm2015/lib/layout/layout.directives.js +0 -103
- package/esm2015/lib/layout/layout.module.js +0 -64
- package/esm2015/lib/layout/navigation-drawer/navigation-drawer.component.js +0 -148
- package/esm2015/lib/media/directives/media-toggle.directive.js +0 -118
- package/esm2015/lib/media/media.module.js +0 -29
- package/esm2015/lib/media/services/media.service.js +0 -116
- package/esm2015/lib/menu/components/menu.component.js +0 -45
- package/esm2015/lib/menu/menu.module.js +0 -38
- package/esm2015/lib/menu/services/menu-items.service.js +0 -26
- package/esm2015/lib/menu/services/menu.resolve.js +0 -61
- package/esm2015/lib/menu/services/menu.service.js +0 -26
- package/esm2015/lib/search/search.module.js +0 -31
- package/esm2015/lib/search/vd-search-box/vd-search-box.component.js +0 -111
- package/esm2015/lib/search/vd-search-input/vd-search-input.component.js +0 -122
- package/esm2015/lib/select/public_api.js +0 -2
- package/esm2015/lib/select/select.component.js +0 -396
- package/esm2015/lib/select/select.module.js +0 -29
- package/esm2015/lib/table/components/dynamic-table/dynamic-table.component.js +0 -264
- package/esm2015/lib/table/components/filter-clear.component.js +0 -45
- package/esm2015/lib/table/components/filter-date.component.js +0 -133
- package/esm2015/lib/table/components/filter-input.component.js +0 -179
- package/esm2015/lib/table/components/filter-select.component.js +0 -309
- package/esm2015/lib/table/directives/data-source-filter.directive.js +0 -43
- package/esm2015/lib/table/functions/decorators.js +0 -137
- package/esm2015/lib/table/functions/functions.js +0 -18
- package/esm2015/lib/table/paginator-intl.js +0 -42
- package/esm2015/lib/table/public_api.js +0 -2
- package/esm2015/lib/table/table.data-source.js +0 -211
- package/esm2015/lib/table/table.module.js +0 -84
- package/esm2015/lib/table/table.static-data-source.js +0 -135
- package/esm2015/messaia-cdk.js +0 -29
- package/fesm2015/messaia-cdk.js +0 -15733
- package/fesm2015/messaia-cdk.js.map +0 -1
- package/messaia-cdk.metadata.json +0 -1
|
@@ -1,299 +0,0 @@
|
|
|
1
|
-
import { FormGroup, FormArray, FormControl } from "@angular/forms";
|
|
2
|
-
import { RxFormControl } from "./form-control";
|
|
3
|
-
import { clone } from './entity.service';
|
|
4
|
-
import { RegexValidator } from '../util/regex-validator';
|
|
5
|
-
import { ApplicationUtil } from '../util/app-util';
|
|
6
|
-
import { RxFormArray } from './rx-form-array';
|
|
7
|
-
import { FormDataProvider } from "../domain/form-data";
|
|
8
|
-
import { isResetControl, getNestedOptions } from '../util/reset-form';
|
|
9
|
-
import { defaultContainer } from '../core/defaultContainer';
|
|
10
|
-
export class RxFormGroup extends FormGroup {
|
|
11
|
-
constructor(model, entityObject, controls, validatorOrOpts, asyncValidator) {
|
|
12
|
-
super(controls, validatorOrOpts, asyncValidator);
|
|
13
|
-
this.model = model;
|
|
14
|
-
this.entityObject = entityObject;
|
|
15
|
-
this._modified = {};
|
|
16
|
-
this._isModified = false;
|
|
17
|
-
this.changing = false;
|
|
18
|
-
this.baseObject = {};
|
|
19
|
-
for (var column in this.entityObject)
|
|
20
|
-
this.baseObject[column] = this.entityObject[column];
|
|
21
|
-
this.formDataProvider = new FormDataProvider();
|
|
22
|
-
}
|
|
23
|
-
bindPrimaryKey(modelInstance, jObject) {
|
|
24
|
-
let instanceContainer = defaultContainer.get(modelInstance.constructor);
|
|
25
|
-
if (instanceContainer) {
|
|
26
|
-
let primaryKeyProp = instanceContainer.properties.filter(x => x.isPrimaryKey)[0];
|
|
27
|
-
if (primaryKeyProp && this.modelInstance[primaryKeyProp.name])
|
|
28
|
-
jObject[primaryKeyProp.name] = this.modelInstance[primaryKeyProp.name];
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
get modifiedValue() {
|
|
32
|
-
let jObject = {};
|
|
33
|
-
if (Object.keys(this._modified).length > 0) {
|
|
34
|
-
this.bindPrimaryKey(this.modelInstance, jObject);
|
|
35
|
-
for (var columnName in this._modified) {
|
|
36
|
-
if (this.controls[columnName] instanceof RxFormGroup)
|
|
37
|
-
jObject[columnName] = this.controls[columnName].modifiedValue;
|
|
38
|
-
else if (this.controls[columnName] instanceof FormArray) {
|
|
39
|
-
let formArray = this.controls[columnName];
|
|
40
|
-
jObject[columnName] = [];
|
|
41
|
-
for (var i = 0; i < this._modified[columnName].length; i++) {
|
|
42
|
-
let modifiedValue = formArray.controls[i].modifiedValue;
|
|
43
|
-
if (Object.keys(modifiedValue).length > 0)
|
|
44
|
-
jObject[columnName].push(modifiedValue);
|
|
45
|
-
}
|
|
46
|
-
if (jObject[columnName].length == 0)
|
|
47
|
-
delete jObject[columnName];
|
|
48
|
-
}
|
|
49
|
-
else
|
|
50
|
-
jObject[columnName] = this._modified[columnName];
|
|
51
|
-
}
|
|
52
|
-
return jObject;
|
|
53
|
-
}
|
|
54
|
-
return this._modified;
|
|
55
|
-
}
|
|
56
|
-
get isModified() {
|
|
57
|
-
return this._isModified;
|
|
58
|
-
}
|
|
59
|
-
patch(controlName) {
|
|
60
|
-
if (controlName) {
|
|
61
|
-
let control = this.controls[controlName];
|
|
62
|
-
this.processModified(controlName, control);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
this.nestedFormsModification();
|
|
66
|
-
}
|
|
67
|
-
this._isModified = Object.keys(this._modified).length > 0;
|
|
68
|
-
if (!this._isModified)
|
|
69
|
-
this.nestedArrayIsModified();
|
|
70
|
-
if (this.parent && this.parent.patch)
|
|
71
|
-
this.parent.patch();
|
|
72
|
-
}
|
|
73
|
-
isDirty() {
|
|
74
|
-
let isDirty = false;
|
|
75
|
-
for (let name in this.value) {
|
|
76
|
-
let currentValue = this.modelInstance[name];
|
|
77
|
-
if (!(this.controls[name] instanceof FormGroup || this.controls[name] instanceof FormArray)) {
|
|
78
|
-
isDirty = ApplicationUtil.notEqualTo(this.baseObject[name], currentValue);
|
|
79
|
-
}
|
|
80
|
-
else if (this.controls[name] instanceof RxFormGroup)
|
|
81
|
-
isDirty = this.controls[name].isDirty();
|
|
82
|
-
else if (this.controls[name] instanceof FormArray) {
|
|
83
|
-
for (let formGroup of this.controls[name].controls) {
|
|
84
|
-
isDirty = formGroup.isDirty();
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
if (isDirty)
|
|
88
|
-
break;
|
|
89
|
-
}
|
|
90
|
-
return isDirty;
|
|
91
|
-
}
|
|
92
|
-
;
|
|
93
|
-
resetForm(options) {
|
|
94
|
-
for (let name in this.controls) {
|
|
95
|
-
if (isResetControl(name, this.controls[name], options)) {
|
|
96
|
-
if (this.controls[name] instanceof FormGroup)
|
|
97
|
-
this.controls[name].resetForm(getNestedOptions(name, options));
|
|
98
|
-
else if (this.controls[name] instanceof FormArray) {
|
|
99
|
-
this.controls[name].resetForm(options && options.value ? options.value[name] : undefined);
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
if (options && options.value && RegexValidator.isNotBlank(options.value[name]))
|
|
103
|
-
this.controls[name].reset(options.value[name]);
|
|
104
|
-
else
|
|
105
|
-
this.controls[name].reset();
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
commit() {
|
|
111
|
-
for (let name in this.controls) {
|
|
112
|
-
if (this.controls[name] instanceof FormGroup)
|
|
113
|
-
this.controls[name].commit();
|
|
114
|
-
else if (this.controls[name] instanceof FormArray) {
|
|
115
|
-
this.controls[name].commit();
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
this.controls[name].commit();
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
patchModelValue(value, options) {
|
|
123
|
-
if (value) {
|
|
124
|
-
for (let name in this.controls) {
|
|
125
|
-
if (this.controls[name] instanceof RxFormGroup && value[name])
|
|
126
|
-
this.controls[name].patchModelValue(value[name], options);
|
|
127
|
-
else if (this.controls[name] instanceof FormArray && Array.isArray(value[name])) {
|
|
128
|
-
let index = 0;
|
|
129
|
-
for (let formGroup of this.controls[name].controls) {
|
|
130
|
-
if (value[name][index])
|
|
131
|
-
formGroup.patchModelValue(value[name][index], options);
|
|
132
|
-
index = index + 1;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
else if (value[name] !== undefined)
|
|
136
|
-
this.controls[name].patchValue(value[name], options);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
getErrorSummary(onlyMessage) {
|
|
141
|
-
let jObject = {};
|
|
142
|
-
Object.keys(this.controls).forEach(columnName => {
|
|
143
|
-
if (this.controls[columnName] instanceof FormGroup) {
|
|
144
|
-
let error = this.controls[columnName].getErrorSummary(false);
|
|
145
|
-
if (Object.keys(error).length > 0)
|
|
146
|
-
jObject[columnName] = error;
|
|
147
|
-
}
|
|
148
|
-
else if (this.controls[columnName] instanceof FormArray) {
|
|
149
|
-
let index = 0;
|
|
150
|
-
for (let formGroup of this.controls[columnName].controls) {
|
|
151
|
-
let error = formGroup.getErrorSummary(false);
|
|
152
|
-
if (Object.keys(error).length > 0) {
|
|
153
|
-
error.index = index;
|
|
154
|
-
if (!jObject[columnName])
|
|
155
|
-
jObject[columnName] = [];
|
|
156
|
-
jObject[columnName].push(error);
|
|
157
|
-
}
|
|
158
|
-
index++;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
if (this.controls[columnName].errors) {
|
|
163
|
-
let error = this.controls[columnName].errors;
|
|
164
|
-
if (onlyMessage)
|
|
165
|
-
for (let validationName in error)
|
|
166
|
-
jObject[columnName] = error[validationName].message;
|
|
167
|
-
else
|
|
168
|
-
jObject[columnName] = error;
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
});
|
|
172
|
-
return jObject;
|
|
173
|
-
}
|
|
174
|
-
valueChangedSync() {
|
|
175
|
-
Object.keys(this.controls).forEach(columnName => {
|
|
176
|
-
if (!(this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray) && !(this.controls[columnName] instanceof FormGroup || this.controls[columnName] instanceof RxFormGroup) && !(this.entityObject[columnName] instanceof FormControl || this.entityObject[columnName] instanceof RxFormControl) && this.controls[columnName].getControlValue && ApplicationUtil.notEqualTo(this.controls[columnName].getControlValue(), this.entityObject[columnName])) {
|
|
177
|
-
this.controls[columnName].setValue(this.entityObject[columnName], { updateChanged: true });
|
|
178
|
-
}
|
|
179
|
-
else if ((this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray)) {
|
|
180
|
-
for (let formGroup of this.controls[columnName].controls) {
|
|
181
|
-
formGroup.valueChangedSync();
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
else if ((this.controls[columnName] instanceof RxFormGroup)) {
|
|
185
|
-
this.controls[columnName].valueChangedSync();
|
|
186
|
-
}
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
refreshDisable() {
|
|
190
|
-
Object.keys(this.controls).forEach(columnName => {
|
|
191
|
-
if (!(this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray) && !(this.controls[columnName] instanceof FormGroup || this.controls[columnName] instanceof RxFormGroup)) {
|
|
192
|
-
this.controls[columnName].refresh();
|
|
193
|
-
}
|
|
194
|
-
else if ((this.controls[columnName] instanceof RxFormGroup)) {
|
|
195
|
-
this.controls[columnName].refreshDisable();
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
}
|
|
199
|
-
bindErrorMessages() {
|
|
200
|
-
Object.keys(this.controls).forEach(columnName => {
|
|
201
|
-
if (!(this.controls[columnName] instanceof FormArray || this.controls[columnName] instanceof RxFormArray) && !(this.controls[columnName] instanceof FormGroup || this.controls[columnName] instanceof RxFormGroup)) {
|
|
202
|
-
this.controls[columnName].bindError();
|
|
203
|
-
}
|
|
204
|
-
else if ((this.controls[columnName] instanceof RxFormGroup)) {
|
|
205
|
-
this.controls[columnName].bindErrorMessages();
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
get submitted() {
|
|
210
|
-
return this._submitted;
|
|
211
|
-
}
|
|
212
|
-
set submitted(value) {
|
|
213
|
-
this._submitted = value;
|
|
214
|
-
Object.keys(this.controls).forEach(columnName => {
|
|
215
|
-
if (this.controls[columnName] instanceof FormArray) {
|
|
216
|
-
let formArray = this.controls[columnName];
|
|
217
|
-
for (let formGroup of formArray.controls)
|
|
218
|
-
formGroup.submitted = value;
|
|
219
|
-
}
|
|
220
|
-
else if (this.controls[columnName] instanceof FormGroup) {
|
|
221
|
-
this.controls[columnName].submitted = value;
|
|
222
|
-
}
|
|
223
|
-
else
|
|
224
|
-
this.controls[columnName].bindError();
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
get modelInstanceValue() {
|
|
228
|
-
return clone(this.entityObject);
|
|
229
|
-
}
|
|
230
|
-
get modelInstance() {
|
|
231
|
-
return this.entityObject;
|
|
232
|
-
}
|
|
233
|
-
get controlsError() {
|
|
234
|
-
return this.getErrorSummary(true);
|
|
235
|
-
}
|
|
236
|
-
toFormData(options) {
|
|
237
|
-
return this.formDataProvider.convertToFormData(this.value, options);
|
|
238
|
-
}
|
|
239
|
-
processModified(controlName, control) {
|
|
240
|
-
if (control.isModified)
|
|
241
|
-
this._modified[controlName] = control.value;
|
|
242
|
-
else
|
|
243
|
-
delete this._modified[controlName];
|
|
244
|
-
this._isModified = Object.keys(this._modified).length > 0;
|
|
245
|
-
}
|
|
246
|
-
nestedArrayIsModified() {
|
|
247
|
-
for (var controlName in this.controls) {
|
|
248
|
-
if (this.controls[controlName] instanceof RxFormArray)
|
|
249
|
-
this._isModified = this.controls[controlName].isModified;
|
|
250
|
-
if (this._isModified)
|
|
251
|
-
break;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
setBackEndErrors(errors) {
|
|
255
|
-
Object.keys(errors).forEach(controlName => {
|
|
256
|
-
if (this.controls[controlName]) {
|
|
257
|
-
if (this.controls[controlName] instanceof FormGroup)
|
|
258
|
-
this.controls[controlName].setBackEndErrors(errors[controlName]);
|
|
259
|
-
else
|
|
260
|
-
this.controls[controlName].setBackEndErrors(errors[controlName]);
|
|
261
|
-
}
|
|
262
|
-
});
|
|
263
|
-
}
|
|
264
|
-
clearBackEndErrors(errors) {
|
|
265
|
-
let clearErrors = errors ? Object.keys(errors) : Object.keys(this.controls);
|
|
266
|
-
clearErrors.forEach(controlName => {
|
|
267
|
-
if (this.controls[controlName]) {
|
|
268
|
-
if (this.controls[controlName] instanceof FormGroup)
|
|
269
|
-
errors ? this.controls[controlName].clearBackEndErrors(errors[controlName]) : this.controls[controlName].clearBackEndErrors();
|
|
270
|
-
else
|
|
271
|
-
errors ? this.controls[controlName].clearBackEndErrors(errors[controlName]) : this.controls[controlName].clearBackEndErrors();
|
|
272
|
-
}
|
|
273
|
-
});
|
|
274
|
-
}
|
|
275
|
-
nestedFormsModification() {
|
|
276
|
-
for (var controlName in this.controls) {
|
|
277
|
-
if (this.controls[controlName] instanceof RxFormGroup)
|
|
278
|
-
this.processModified(controlName, this.controls[controlName]);
|
|
279
|
-
else if (this.controls[controlName] instanceof RxFormArray) {
|
|
280
|
-
if (this.controls[controlName].isModified) {
|
|
281
|
-
let formGroups = this.controls[controlName].controls;
|
|
282
|
-
this._modified[controlName] = [];
|
|
283
|
-
for (var formGroup of formGroups) {
|
|
284
|
-
if (formGroup.isModified) {
|
|
285
|
-
if (!this._modified[controlName])
|
|
286
|
-
this._modified[controlName] = [];
|
|
287
|
-
this._modified[controlName].push(formGroup.modifiedValue);
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
if (this._modified[controlName].length == 0)
|
|
291
|
-
delete this._modified[controlName];
|
|
292
|
-
}
|
|
293
|
-
else if (this._modified[controlName])
|
|
294
|
-
delete this._modified[controlName];
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicngtZm9ybS1ncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nkay9zcmMvbGliL2Zvcm0tdmFsaWRhdG9ycy9zZXJ2aWNlcy9yeC1mb3JtLWdyb3VwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBcUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE9BQU8sRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNyRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQTtBQUUzRCxNQUFNLE9BQU8sV0FBWSxTQUFRLFNBQVM7SUFPdEMsWUFBb0IsS0FBVSxFQUFVLFlBQW9DLEVBQUUsUUFFN0UsRUFBRSxlQUFxQixFQUFFLGNBQTZEO1FBQ25GLEtBQUssQ0FBQyxRQUFRLEVBQUUsZUFBZSxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBSGpDLFVBQUssR0FBTCxLQUFLLENBQUs7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBd0I7UUFIcEUsY0FBUyxHQUEyQixFQUFFLENBQUM7UUFDdkMsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDckMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUt0QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQTtRQUNwQixLQUFLLElBQUksTUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZO1lBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN2RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCxjQUFjLENBQUMsYUFBa0IsRUFBRSxPQUErQjtRQUM5RCxJQUFJLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDeEUsSUFBSSxpQkFBaUIsRUFDckI7WUFDSSxJQUFJLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pGLElBQUksY0FBYyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztnQkFDekQsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUM5RTtJQUNMLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDYixJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUNoRCxLQUFLLElBQUksVUFBVSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ25DLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsWUFBWSxXQUFXO29CQUNoRCxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQWlCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsYUFBYSxDQUFDO3FCQUM1RSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksU0FBUyxFQUFFO29CQUNyRCxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBYyxDQUFDO29CQUN2RCxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDO29CQUN6QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7d0JBQ3hELElBQUksYUFBYSxHQUFpQixTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBRSxDQUFDLGFBQWEsQ0FBQTt3QkFDdEUsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDOzRCQUNyQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO3FCQUM5QztvQkFDRCxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQzt3QkFDL0IsT0FBTyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQ2xDOztvQkFDRyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN4RDtZQUNELE9BQU8sT0FBTyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFvQjtRQUN0QixJQUFJLFdBQVcsRUFBRTtZQUNiLElBQUksT0FBTyxHQUFrQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxlQUFlLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQzlDO2FBQU07WUFDSCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztTQUNsQztRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVc7WUFDakIsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFrQixJQUFJLENBQUMsTUFBTyxDQUFDLEtBQUs7WUFDakMsSUFBSSxDQUFDLE1BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsT0FBTztRQUNILElBQUksT0FBTyxHQUFZLEtBQUssQ0FBQztRQUM3QixLQUFLLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDekIsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLFNBQVMsQ0FBQyxFQUFFO2dCQUN6RixPQUFPLEdBQUcsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO2FBQzdFO2lCQUFNLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxXQUFXO2dCQUNqRCxPQUFPLEdBQWlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQ3RELElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxTQUFTLEVBQUU7Z0JBQy9DLEtBQUssSUFBSSxTQUFTLElBQWdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFFLENBQUMsUUFBUSxFQUFFO29CQUM3RCxPQUFPLEdBQWlCLFNBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDaEQ7YUFDSjtZQUNELElBQUksT0FBTztnQkFDUCxNQUFNO1NBQ2I7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBQUEsQ0FBQztJQUVGLFNBQVMsQ0FBQyxPQUlUO1FBQ0csS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzVCLElBQUksY0FBYyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxFQUFFO2dCQUNwRCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksU0FBUztvQkFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUUsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7cUJBQzVFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxTQUFTLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDNUc7cUJBQU07b0JBQ0gsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQzFFLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzs7d0JBRS9DLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQ25DO2FBQ0o7U0FDSjtJQUNMLENBQUM7SUFFRCxNQUFNO1FBQ0YsS0FBSyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzVCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxTQUFTO2dCQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO2lCQUMzQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksU0FBUyxFQUFFO2dCQUNqQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBRS9DO2lCQUFNO2dCQUNhLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFFLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDakQ7U0FDSjtJQUNMLENBQUM7SUFFRCxlQUFlLENBQUMsS0FFZixFQUFFLE9BR0Y7UUFDRyxJQUFJLEtBQUssRUFBRTtZQUNQLEtBQUssSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDNUIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLFdBQVcsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDO29CQUMzQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBRSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7cUJBQ3hFLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxTQUFTLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRTtvQkFDN0UsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO29CQUNkLEtBQUssSUFBSSxTQUFTLElBQWdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFFLENBQUMsUUFBUSxFQUFFO3dCQUM3RCxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUM7NEJBQ0osU0FBVSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7d0JBQzFFLEtBQUssR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDO3FCQUNyQjtpQkFDSjtxQkFDRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxTQUFTO29CQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7YUFDaEU7U0FDSjtJQUNMLENBQUM7SUFHRCxlQUFlLENBQUMsV0FBb0I7UUFDaEMsSUFBSSxPQUFPLEdBQTJCLEVBQUUsQ0FBQztRQUN6QyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsRUFBRTtnQkFDaEQsSUFBSSxLQUFLLEdBQWlCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM1RSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUM7b0JBQzdCLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxLQUFLLENBQUM7YUFDbkM7aUJBQ0ksSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsRUFBRTtnQkFDckQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUNkLEtBQUssSUFBSSxTQUFTLElBQWdCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsUUFBUSxFQUFFO29CQUNuRSxJQUFJLEtBQUssR0FBaUIsU0FBVSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDNUQsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7d0JBQy9CLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO3dCQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQzs0QkFDcEIsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQzt3QkFDN0IsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDbkM7b0JBQ0QsS0FBSyxFQUFFLENBQUM7aUJBQ1g7YUFDSjtpQkFBTTtnQkFDSCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxFQUFFO29CQUNsQyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztvQkFDN0MsSUFBSSxXQUFXO3dCQUNYLEtBQUssSUFBSSxjQUFjLElBQUksS0FBSzs0QkFDNUIsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQyxPQUFPLENBQUM7O3dCQUV4RCxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsS0FBSyxDQUFDO2lCQUNuQzthQUNKO1FBQ0wsQ0FBQyxDQUFDLENBQUE7UUFDRixPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzVDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLFlBQVksYUFBYSxDQUFDLElBQW9CLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsZUFBZSxJQUFJLGVBQWUsQ0FBQyxVQUFVLENBQWlCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsZUFBZSxFQUFFLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFO2dCQUM5ZixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxFQUFFLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7YUFDOUY7aUJBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxDQUFDLEVBQUU7Z0JBQzdHLEtBQUssSUFBSSxTQUFTLElBQWdCLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsUUFBUSxFQUFFO29CQUNyRCxTQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztpQkFDL0M7YUFDSjtpQkFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsWUFBWSxXQUFXLENBQUMsRUFBRTtnQkFDN0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO2FBQy9EO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRUQsY0FBYztRQUNWLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUM1QyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFdBQVcsQ0FBQyxFQUFFO2dCQUNoTSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ3hEO2lCQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFdBQVcsQ0FBQyxFQUFFO2dCQUM3QyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBRSxDQUFDLGNBQWMsRUFBRSxDQUFDO2FBQzdEO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFFTixDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQzVDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxDQUFDLEVBQUU7Z0JBQ2hNLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7YUFDMUQ7aUJBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksV0FBVyxDQUFDLEVBQUU7Z0JBQzdDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQzthQUNoRTtRQUNMLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVELElBQUksU0FBUztRQUNULE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxTQUFTLENBQUMsS0FBYztRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDNUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsRUFBRTtnQkFDaEQsSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQWMsQ0FBQztnQkFDdkQsS0FBSyxJQUFJLFNBQVMsSUFBSSxTQUFTLENBQUMsUUFBUTtvQkFDdEIsU0FBVSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7YUFDbEQ7aUJBQU0sSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxZQUFZLFNBQVMsRUFBRTtnQkFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUUsQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2FBQzlEOztnQkFDbUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFRCxJQUFJLGtCQUFrQjtRQUNsQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELElBQUksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBd0I7UUFDL0IsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRU8sZUFBZSxDQUFDLFdBQWtCLEVBQUMsT0FBWTtRQUNuRCxJQUFJLE9BQU8sQ0FBQyxVQUFVO1lBQ2xCLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQzs7WUFFNUMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU8scUJBQXFCO1FBQ3pCLEtBQUssSUFBSSxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNuQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksV0FBVztnQkFDakQsSUFBSSxDQUFDLFdBQVcsR0FBaUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUUsQ0FBQyxVQUFVLENBQUM7WUFDNUUsSUFBSSxJQUFJLENBQUMsV0FBVztnQkFDaEIsTUFBTTtTQUNiO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQThCO1FBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ3RDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDNUIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxZQUFZLFNBQVM7b0JBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFFLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUE7O29CQUUvRCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBRSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2FBQ3pGO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRUYsa0JBQWtCLENBQUMsTUFBK0I7UUFDN0MsSUFBSSxXQUFXLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1RSxXQUFXLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQzlCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDNUIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxZQUFZLFNBQVM7b0JBQy9DLE1BQU0sQ0FBQyxDQUFDLENBQWUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFBOztvQkFFM0osTUFBTSxDQUFDLENBQUMsQ0FBaUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUUsQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO2FBQ3BLO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRU8sdUJBQXVCO1FBQzNCLEtBQUssSUFBSSxXQUFXLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNuQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksV0FBVztnQkFDakQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO2lCQUM3RCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksV0FBVyxFQUFFO2dCQUN4RCxJQUFrQixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBRSxDQUFDLFVBQVUsRUFBRTtvQkFDdEQsSUFBSSxVQUFVLEdBQWlCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFFLENBQUMsUUFBUSxDQUFDO29CQUNwRSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztvQkFDakMsS0FBSyxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUU7d0JBQzlCLElBQWtCLFNBQVUsQ0FBQyxVQUFVLEVBQUU7NEJBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQztnQ0FDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7NEJBQ3JDLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUFlLFNBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQTt5QkFDM0U7cUJBRUo7b0JBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDO3dCQUN2QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7aUJBQzFDO3FCQUFNLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUM7b0JBQ2xDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUMxQztTQUNKO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBBYnN0cmFjdENvbnRyb2wsIEFzeW5jVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcbmltcG9ydCB7IFJ4Rm9ybUNvbnRyb2wgfSBmcm9tIFwiLi9mb3JtLWNvbnRyb2xcIjtcbmltcG9ydCB7IGNsb25lIH0gZnJvbSAnLi9lbnRpdHkuc2VydmljZSc7XG5pbXBvcnQgeyBSZWdleFZhbGlkYXRvciB9IGZyb20gJy4uL3V0aWwvcmVnZXgtdmFsaWRhdG9yJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uVXRpbCB9IGZyb20gJy4uL3V0aWwvYXBwLXV0aWwnO1xuaW1wb3J0IHsgUnhGb3JtQXJyYXkgfSBmcm9tICcuL3J4LWZvcm0tYXJyYXknO1xuaW1wb3J0IHsgRm9ybURhdGFQcm92aWRlciB9IGZyb20gXCIuLi9kb21haW4vZm9ybS1kYXRhXCI7XG5pbXBvcnQgeyBSZXNldEZvcm1UeXBlIH0gZnJvbSBcIi4uL2VudW1zL3Jlc2V0LXR5cGVcIjtcbmltcG9ydCB7IGlzUmVzZXRDb250cm9sLCBnZXROZXN0ZWRPcHRpb25zIH0gZnJvbSAnLi4vdXRpbC9yZXNldC1mb3JtJ1xuaW1wb3J0IHsgZGVmYXVsdENvbnRhaW5lciB9IGZyb20gJy4uL2NvcmUvZGVmYXVsdENvbnRhaW5lcidcbmltcG9ydCB7IEZvcm1EYXRhQ29uZmlnIH0gZnJvbSBcIi4uL21vZGVscy9pbnRlcmZhY2UvZm9ybS1kYXRhLWNvbmZpZ1wiO1xuZXhwb3J0IGNsYXNzIFJ4Rm9ybUdyb3VwIGV4dGVuZHMgRm9ybUdyb3VwIHtcbiAgICBwcml2YXRlIGJhc2VPYmplY3Q6IHsgW2tleTogc3RyaW5nXTogYW55IH1cbiAgICBwcml2YXRlIGZvcm1EYXRhUHJvdmlkZXI6IEZvcm1EYXRhUHJvdmlkZXI7XG4gICAgcHJpdmF0ZSBfc3VibWl0dGVkOiBib29sZWFuO1xuICAgIHByaXZhdGUgX21vZGlmaWVkOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XG4gICAgcHJpdmF0ZSBfaXNNb2RpZmllZDogYm9vbGVhbiA9IGZhbHNlO1xuICAgIGNoYW5naW5nOiBib29sZWFuID0gZmFsc2U7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBtb2RlbDogYW55LCBwcml2YXRlIGVudGl0eU9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSwgY29udHJvbHM6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogQWJzdHJhY3RDb250cm9sO1xuICAgIH0sIHZhbGlkYXRvck9yT3B0cz86IGFueSwgYXN5bmNWYWxpZGF0b3I/OiBBc3luY1ZhbGlkYXRvckZuIHwgQXN5bmNWYWxpZGF0b3JGbltdIHwgbnVsbCkge1xuICAgICAgICBzdXBlcihjb250cm9scywgdmFsaWRhdG9yT3JPcHRzLCBhc3luY1ZhbGlkYXRvcik7XG4gICAgICAgIHRoaXMuYmFzZU9iamVjdCA9IHt9XG4gICAgICAgIGZvciAodmFyIGNvbHVtbiBpbiB0aGlzLmVudGl0eU9iamVjdClcbiAgICAgICAgICAgIHRoaXMuYmFzZU9iamVjdFtjb2x1bW5dID0gdGhpcy5lbnRpdHlPYmplY3RbY29sdW1uXVxuICAgICAgICB0aGlzLmZvcm1EYXRhUHJvdmlkZXIgPSBuZXcgRm9ybURhdGFQcm92aWRlcigpO1xuICAgIH1cblxuICAgIGJpbmRQcmltYXJ5S2V5KG1vZGVsSW5zdGFuY2U6IGFueSwgak9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgICAgICBsZXQgaW5zdGFuY2VDb250YWluZXIgPSBkZWZhdWx0Q29udGFpbmVyLmdldChtb2RlbEluc3RhbmNlLmNvbnN0cnVjdG9yKTsgICAgXG4gICAgICAgIGlmIChpbnN0YW5jZUNvbnRhaW5lcilcbiAgICAgICAge1xuICAgICAgICAgICAgbGV0IHByaW1hcnlLZXlQcm9wID0gaW5zdGFuY2VDb250YWluZXIucHJvcGVydGllcy5maWx0ZXIoeCA9PiB4LmlzUHJpbWFyeUtleSlbMF07XG4gICAgICAgICAgICBpZiAocHJpbWFyeUtleVByb3AgJiYgdGhpcy5tb2RlbEluc3RhbmNlW3ByaW1hcnlLZXlQcm9wLm5hbWVdKVxuICAgICAgICAgICAgICAgIGpPYmplY3RbcHJpbWFyeUtleVByb3AubmFtZV0gPSB0aGlzLm1vZGVsSW5zdGFuY2VbcHJpbWFyeUtleVByb3AubmFtZV07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXQgbW9kaWZpZWRWYWx1ZSgpOiB7IFtrZXk6IHN0cmluZ106IGFueSB9IHtcbiAgICAgICAgbGV0IGpPYmplY3QgPSB7fTtcbiAgICAgICAgaWYgKE9iamVjdC5rZXlzKHRoaXMuX21vZGlmaWVkKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLmJpbmRQcmltYXJ5S2V5KHRoaXMubW9kZWxJbnN0YW5jZSwgak9iamVjdClcbiAgICAgICAgICAgIGZvciAodmFyIGNvbHVtbk5hbWUgaW4gdGhpcy5fbW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gKDxSeEZvcm1Hcm91cD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5tb2RpZmllZFZhbHVlO1xuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGZvcm1BcnJheSA9IHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gYXMgRm9ybUFycmF5O1xuICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gW107XG4gICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5fbW9kaWZpZWRbY29sdW1uTmFtZV0ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBtb2RpZmllZFZhbHVlID0gKDxSeEZvcm1Hcm91cD5mb3JtQXJyYXkuY29udHJvbHNbaV0pLm1vZGlmaWVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhtb2RpZmllZFZhbHVlKS5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpPYmplY3RbY29sdW1uTmFtZV0ucHVzaChtb2RpZmllZFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChqT2JqZWN0W2NvbHVtbk5hbWVdLmxlbmd0aCA9PSAwKVxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGpPYmplY3RbY29sdW1uTmFtZV07XG4gICAgICAgICAgICAgICAgfSBlbHNlXG4gICAgICAgICAgICAgICAgICAgIGpPYmplY3RbY29sdW1uTmFtZV0gPSB0aGlzLl9tb2RpZmllZFtjb2x1bW5OYW1lXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBqT2JqZWN0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLl9tb2RpZmllZDtcbiAgICB9XG5cbiAgICBnZXQgaXNNb2RpZmllZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzTW9kaWZpZWQ7XG4gICAgfVxuXG4gICAgcGF0Y2goY29udHJvbE5hbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKGNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICBsZXQgY29udHJvbCA9IDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdO1xuICAgICAgICAgICAgdGhpcy5wcm9jZXNzTW9kaWZpZWQoY29udHJvbE5hbWUsIGNvbnRyb2wpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5uZXN0ZWRGb3Jtc01vZGlmaWNhdGlvbigpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2lzTW9kaWZpZWQgPSBPYmplY3Qua2V5cyh0aGlzLl9tb2RpZmllZCkubGVuZ3RoID4gMDtcbiAgICAgICAgaWYgKCF0aGlzLl9pc01vZGlmaWVkKVxuICAgICAgICAgICAgdGhpcy5uZXN0ZWRBcnJheUlzTW9kaWZpZWQoKTtcbiAgICAgICAgaWYgKHRoaXMucGFyZW50ICYmICg8UnhGb3JtR3JvdXA+dGhpcy5wYXJlbnQpLnBhdGNoKVxuICAgICAgICAgICAgKDxSeEZvcm1Hcm91cD50aGlzLnBhcmVudCkucGF0Y2goKTtcbiAgICB9XG5cbiAgICBpc0RpcnR5KCk6IGJvb2xlYW4ge1xuICAgICAgICBsZXQgaXNEaXJ0eTogYm9vbGVhbiA9IGZhbHNlO1xuICAgICAgICBmb3IgKGxldCBuYW1lIGluIHRoaXMudmFsdWUpIHtcbiAgICAgICAgICAgIGxldCBjdXJyZW50VmFsdWUgPSB0aGlzLm1vZGVsSW5zdGFuY2VbbmFtZV07XG4gICAgICAgICAgICBpZiAoISh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwIHx8IHRoaXMuY29udHJvbHNbbmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpKSB7XG4gICAgICAgICAgICAgICAgaXNEaXJ0eSA9IEFwcGxpY2F0aW9uVXRpbC5ub3RFcXVhbFRvKHRoaXMuYmFzZU9iamVjdFtuYW1lXSwgY3VycmVudFZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5jb250cm9sc1tuYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgIGlzRGlydHkgPSAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbbmFtZV0pLmlzRGlydHkoKTtcbiAgICAgICAgICAgIGVsc2UgaWYgKHRoaXMuY29udHJvbHNbbmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBmb3JtR3JvdXAgb2YgKDxGb3JtQXJyYXk+dGhpcy5jb250cm9sc1tuYW1lXSkuY29udHJvbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgaXNEaXJ0eSA9ICg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS5pc0RpcnR5KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzRGlydHkpXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGlzRGlydHk7XG4gICAgfTtcblxuICAgIHJlc2V0Rm9ybShvcHRpb25zPzoge1xuICAgICAgICByZXNldFR5cGU/OiBSZXNldEZvcm1UeXBlLFxuICAgICAgICB3aXRoPzogc3RyaW5nW10sXG4gICAgICAgIHZhbHVlPzogeyBba2V5OiBzdHJpbmddOmFueX1cbiAgICB9KTogdm9pZCB7XG4gICAgICAgIGZvciAobGV0IG5hbWUgaW4gdGhpcy5jb250cm9scykge1xuICAgICAgICAgICAgaWYgKGlzUmVzZXRDb250cm9sKG5hbWUsIHRoaXMuY29udHJvbHNbbmFtZV0sIG9wdGlvbnMpKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbbmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXApXG4gICAgICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tuYW1lXSkucmVzZXRGb3JtKGdldE5lc3RlZE9wdGlvbnMobmFtZSxvcHRpb25zKSk7XG4gICAgICAgICAgICAgICAgZWxzZSBpZiAodGhpcy5jb250cm9sc1tuYW1lXSBpbnN0YW5jZW9mIEZvcm1BcnJheSkge1xuICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbbmFtZV0pLnJlc2V0Rm9ybShvcHRpb25zICYmIG9wdGlvbnMudmFsdWUgPyBvcHRpb25zLnZhbHVlW25hbWVdIDogdW5kZWZpbmVkKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnZhbHVlICYmIFJlZ2V4VmFsaWRhdG9yLmlzTm90Qmxhbmsob3B0aW9ucy52YWx1ZVtuYW1lXSkpXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzW25hbWVdLnJlc2V0KG9wdGlvbnMudmFsdWVbbmFtZV0pO1xuICAgICAgICAgICAgICAgICAgICBlbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzW25hbWVdLnJlc2V0KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29tbWl0KCkge1xuICAgICAgICBmb3IgKGxldCBuYW1lIGluIHRoaXMuY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tuYW1lXSkuY29tbWl0KCk7XG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1BcnJheT50aGlzLmNvbnRyb2xzW25hbWVdKS5jb21taXQoKTtcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbbmFtZV0pLmNvbW1pdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGF0Y2hNb2RlbFZhbHVlKHZhbHVlOiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICB9LCBvcHRpb25zPzoge1xuICAgICAgICBvbmx5U2VsZj86IGJvb2xlYW47XG4gICAgICAgIGVtaXRFdmVudD86IGJvb2xlYW47XG4gICAgfSk6IHZvaWQge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIGZvciAobGV0IG5hbWUgaW4gdGhpcy5jb250cm9scykge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgUnhGb3JtR3JvdXAgJiYgdmFsdWVbbmFtZV0pXG4gICAgICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tuYW1lXSkucGF0Y2hNb2RlbFZhbHVlKHZhbHVlW25hbWVdLCBvcHRpb25zKTtcbiAgICAgICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW25hbWVdIGluc3RhbmNlb2YgRm9ybUFycmF5ICYmIEFycmF5LmlzQXJyYXkodmFsdWVbbmFtZV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBpbmRleCA9IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGZvcm1Hcm91cCBvZiAoPEZvcm1BcnJheT50aGlzLmNvbnRyb2xzW25hbWVdKS5jb250cm9scykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlW25hbWVdW2luZGV4XSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPmZvcm1Hcm91cCkucGF0Y2hNb2RlbFZhbHVlKHZhbHVlW25hbWVdW2luZGV4XSwgb3B0aW9ucyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbmRleCA9IGluZGV4ICsgMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWVbbmFtZV0gIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbHNbbmFtZV0ucGF0Y2hWYWx1ZSh2YWx1ZVtuYW1lXSwgb3B0aW9ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIGdldEVycm9yU3VtbWFyeShvbmx5TWVzc2FnZTogYm9vbGVhbik6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgICAgICBsZXQgak9iamVjdDogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRyb2xzKS5mb3JFYWNoKGNvbHVtbk5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXApIHtcbiAgICAgICAgICAgICAgICBsZXQgZXJyb3IgPSAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLmdldEVycm9yU3VtbWFyeShmYWxzZSk7XG4gICAgICAgICAgICAgICAgaWYgKE9iamVjdC5rZXlzKGVycm9yKS5sZW5ndGggPiAwKVxuICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gZXJyb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgRm9ybUFycmF5KSB7XG4gICAgICAgICAgICAgICAgbGV0IGluZGV4ID0gMDtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBmb3JtR3JvdXAgb2YgKDxGb3JtQXJyYXk+dGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSkuY29udHJvbHMpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGVycm9yID0gKDxSeEZvcm1Hcm91cD5mb3JtR3JvdXApLmdldEVycm9yU3VtbWFyeShmYWxzZSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhlcnJvcikubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IuaW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghak9iamVjdFtjb2x1bW5OYW1lXSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdID0gW107XG4gICAgICAgICAgICAgICAgICAgICAgICBqT2JqZWN0W2NvbHVtbk5hbWVdLnB1c2goZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGluZGV4Kys7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXS5lcnJvcnMpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGVycm9yID0gdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXS5lcnJvcnM7XG4gICAgICAgICAgICAgICAgICAgIGlmIChvbmx5TWVzc2FnZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHZhbGlkYXRpb25OYW1lIGluIGVycm9yKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpPYmplY3RbY29sdW1uTmFtZV0gPSBlcnJvclt2YWxpZGF0aW9uTmFtZV0ubWVzc2FnZTtcbiAgICAgICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAgICAgak9iamVjdFtjb2x1bW5OYW1lXSA9IGVycm9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIGpPYmplY3Q7XG4gICAgfVxuXG4gICAgdmFsdWVDaGFuZ2VkU3luYygpIHtcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5jb250cm9scykuZm9yRWFjaChjb2x1bW5OYW1lID0+IHtcbiAgICAgICAgICAgIGlmICghKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KSAmJiAhKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXAgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSAmJiAhKHRoaXMuZW50aXR5T2JqZWN0W2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgRm9ybUNvbnRyb2wgfHwgdGhpcy5lbnRpdHlPYmplY3RbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1Db250cm9sKSAmJiAoPFJ4Rm9ybUNvbnRyb2w+dGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSkuZ2V0Q29udHJvbFZhbHVlICYmIEFwcGxpY2F0aW9uVXRpbC5ub3RFcXVhbFRvKCg8UnhGb3JtQ29udHJvbD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5nZXRDb250cm9sVmFsdWUoKSwgdGhpcy5lbnRpdHlPYmplY3RbY29sdW1uTmFtZV0pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXS5zZXRWYWx1ZSh0aGlzLmVudGl0eU9iamVjdFtjb2x1bW5OYW1lXSwgeyB1cGRhdGVDaGFuZ2VkOiB0cnVlIH0pO1xuICAgICAgICAgICAgfSBlbHNlIGlmICgodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIEZvcm1BcnJheSB8fCB0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgUnhGb3JtQXJyYXkpKSB7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgZm9ybUdyb3VwIG9mICg8Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLmNvbnRyb2xzKSB7XG4gICAgICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS52YWx1ZUNoYW5nZWRTeW5jKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmICgodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSkge1xuICAgICAgICAgICAgICAgICg8UnhGb3JtR3JvdXA+dGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSkudmFsdWVDaGFuZ2VkU3luYygpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHJlZnJlc2hEaXNhYmxlKCkge1xuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRyb2xzKS5mb3JFYWNoKGNvbHVtbk5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKCEodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIEZvcm1BcnJheSB8fCB0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgUnhGb3JtQXJyYXkpICYmICEodGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIEZvcm1Hcm91cCB8fCB0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgUnhGb3JtR3JvdXApKSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLnJlZnJlc2goKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1Hcm91cCkpIHtcbiAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLnJlZnJlc2hEaXNhYmxlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICB9XG5cbiAgICBiaW5kRXJyb3JNZXNzYWdlcygpIHtcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5jb250cm9scykuZm9yRWFjaChjb2x1bW5OYW1lID0+IHtcbiAgICAgICAgICAgIGlmICghKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KSAmJiAhKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtR3JvdXAgfHwgdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSkge1xuICAgICAgICAgICAgICAgICg8UnhGb3JtQ29udHJvbD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5iaW5kRXJyb3IoKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1Hcm91cCkpIHtcbiAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0pLmJpbmRFcnJvck1lc3NhZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgZ2V0IHN1Ym1pdHRlZCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N1Ym1pdHRlZDtcbiAgICB9XG5cbiAgICBzZXQgc3VibWl0dGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3N1Ym1pdHRlZCA9IHZhbHVlO1xuICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmNvbnRyb2xzKS5mb3JFYWNoKGNvbHVtbk5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29sdW1uTmFtZV0gaW5zdGFuY2VvZiBGb3JtQXJyYXkpIHtcbiAgICAgICAgICAgICAgICBsZXQgZm9ybUFycmF5ID0gdGhpcy5jb250cm9sc1tjb2x1bW5OYW1lXSBhcyBGb3JtQXJyYXk7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgZm9ybUdyb3VwIG9mIGZvcm1BcnJheS5jb250cm9scylcbiAgICAgICAgICAgICAgICAgICAgKDxSeEZvcm1Hcm91cD5mb3JtR3JvdXApLnN1Ym1pdHRlZCA9IHZhbHVlO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKSB7XG4gICAgICAgICAgICAgICAgKDxSeEZvcm1Hcm91cD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5zdWJtaXR0ZWQgPSB2YWx1ZTtcbiAgICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgICAgICg8UnhGb3JtQ29udHJvbD50aGlzLmNvbnRyb2xzW2NvbHVtbk5hbWVdKS5iaW5kRXJyb3IoKTtcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBnZXQgbW9kZWxJbnN0YW5jZVZhbHVlKCkge1xuICAgICAgICByZXR1cm4gY2xvbmUodGhpcy5lbnRpdHlPYmplY3QpO1xuICAgIH1cblxuICAgIGdldCBtb2RlbEluc3RhbmNlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbnRpdHlPYmplY3Q7XG4gICAgfVxuXG4gICAgZ2V0IGNvbnRyb2xzRXJyb3IoKTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEVycm9yU3VtbWFyeSh0cnVlKTtcbiAgICB9XG5cbiAgICB0b0Zvcm1EYXRhKG9wdGlvbnM/OiBGb3JtRGF0YUNvbmZpZyk6IEZvcm1EYXRhIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybURhdGFQcm92aWRlci5jb252ZXJ0VG9Gb3JtRGF0YSh0aGlzLnZhbHVlLCBvcHRpb25zKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb2Nlc3NNb2RpZmllZChjb250cm9sTmFtZTpzdHJpbmcsY29udHJvbDogYW55KSB7XG4gICAgICAgIGlmIChjb250cm9sLmlzTW9kaWZpZWQpXG4gICAgICAgICAgICB0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV0gPSBjb250cm9sLnZhbHVlO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBkZWxldGUgdGhpcy5fbW9kaWZpZWRbY29udHJvbE5hbWVdO1xuICAgICAgICB0aGlzLl9pc01vZGlmaWVkID0gT2JqZWN0LmtleXModGhpcy5fbW9kaWZpZWQpLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBuZXN0ZWRBcnJheUlzTW9kaWZpZWQoKSB7XG4gICAgICAgIGZvciAodmFyIGNvbnRyb2xOYW1lIGluIHRoaXMuY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW2NvbnRyb2xOYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KVxuICAgICAgICAgICAgICAgIHRoaXMuX2lzTW9kaWZpZWQgPSAoPFJ4Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5pc01vZGlmaWVkO1xuICAgICAgICAgICAgaWYgKHRoaXMuX2lzTW9kaWZpZWQpXG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRCYWNrRW5kRXJyb3JzKGVycm9yczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgICAgICBPYmplY3Qua2V5cyhlcnJvcnMpLmZvckVhY2goY29udHJvbE5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5zZXRCYWNrRW5kRXJyb3JzKGVycm9yc1tjb250cm9sTmFtZV0pXG4gICAgICAgICAgICAgICAgZWxzZVxuICAgICAgICAgICAgICAgICAgICAoPFJ4Rm9ybUNvbnRyb2w+dGhpcy5jb250cm9sc1tjb250cm9sTmFtZV0pLnNldEJhY2tFbmRFcnJvcnMoZXJyb3JzW2NvbnRyb2xOYW1lXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgfVxuXG4gICBjbGVhckJhY2tFbmRFcnJvcnMoZXJyb3JzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfSkge1xuICAgICAgICBsZXQgY2xlYXJFcnJvcnMgPSBlcnJvcnMgPyBPYmplY3Qua2V5cyhlcnJvcnMpIDogT2JqZWN0LmtleXModGhpcy5jb250cm9scyk7XG4gICAgICAgIGNsZWFyRXJyb3JzLmZvckVhY2goY29udHJvbE5hbWUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKSB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdIGluc3RhbmNlb2YgRm9ybUdyb3VwKVxuICAgICAgICAgICAgICAgICAgICBlcnJvcnMgPyAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoZXJyb3JzW2NvbnRyb2xOYW1lXSkgOiAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoKVxuICAgICAgICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgICAgICAgICAgZXJyb3JzID8gKDxSeEZvcm1Db250cm9sPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoZXJyb3JzW2NvbnRyb2xOYW1lXSkgOiAoPFJ4Rm9ybUdyb3VwPnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5jbGVhckJhY2tFbmRFcnJvcnMoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIHByaXZhdGUgbmVzdGVkRm9ybXNNb2RpZmljYXRpb24oKSB7XG4gICAgICAgIGZvciAodmFyIGNvbnRyb2xOYW1lIGluIHRoaXMuY29udHJvbHMpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbnRyb2xzW2NvbnRyb2xOYW1lXSBpbnN0YW5jZW9mIFJ4Rm9ybUdyb3VwKSBcbiAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NNb2RpZmllZChjb250cm9sTmFtZSwgdGhpcy5jb250cm9sc1tjb250cm9sTmFtZV0pO1xuICAgICAgICAgICAgZWxzZSBpZiAodGhpcy5jb250cm9sc1tjb250cm9sTmFtZV0gaW5zdGFuY2VvZiBSeEZvcm1BcnJheSkge1xuICAgICAgICAgICAgICAgIGlmICgoPFJ4Rm9ybUFycmF5PnRoaXMuY29udHJvbHNbY29udHJvbE5hbWVdKS5pc01vZGlmaWVkKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBmb3JtR3JvdXBzID0gKDxSeEZvcm1BcnJheT50aGlzLmNvbnRyb2xzW2NvbnRyb2xOYW1lXSkuY29udHJvbHM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXSA9IFtdO1xuICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBmb3JtR3JvdXAgb2YgZm9ybUdyb3Vwcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS5pc01vZGlmaWVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXSA9IFtdO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXS5wdXNoKCg8UnhGb3JtR3JvdXA+Zm9ybUdyb3VwKS5tb2RpZmllZFZhbHVlKVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX21vZGlmaWVkW2NvbnRyb2xOYW1lXS5sZW5ndGggPT0gMClcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV07XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV0pXG4gICAgICAgICAgICAgICAgICAgIGRlbGV0ZSB0aGlzLl9tb2RpZmllZFtjb250cm9sTmFtZV07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { FormBuilder } from "@angular/forms";
|
|
2
|
-
import { RxFormBuilder } from "./rx-form-builder";
|
|
3
|
-
import { FUNCTION_STRING } from "../const/app.const";
|
|
4
|
-
import { Injectable } from "@angular/core";
|
|
5
|
-
export class TypedFormBuilder {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.formBuilder = new FormBuilder();
|
|
8
|
-
this.rxFormBuilder = new RxFormBuilder();
|
|
9
|
-
}
|
|
10
|
-
group(controlsConfig, options) {
|
|
11
|
-
let paramOptions = options || {};
|
|
12
|
-
if (typeof controlsConfig == FUNCTION_STRING)
|
|
13
|
-
return !(paramOptions && paramOptions.isInstance) ? this.rxFormBuilder.formGroup(controlsConfig, paramOptions.data, paramOptions.config) : this.rxFormBuilder.formGroup(controlsConfig, paramOptions.data, paramOptions.config).modelInstance;
|
|
14
|
-
return this.formBuilder.group(controlsConfig, options);
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
/** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */
|
|
18
|
-
TypedFormBuilder.decorators = [
|
|
19
|
-
{ type: Injectable }
|
|
20
|
-
];
|
|
21
|
-
/**
|
|
22
|
-
* @type {function(): !Array<(null|{
|
|
23
|
-
* type: ?,
|
|
24
|
-
* decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>),
|
|
25
|
-
* })>}
|
|
26
|
-
* @nocollapse
|
|
27
|
-
*/
|
|
28
|
-
TypedFormBuilder.ctorParameters = () => [];
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZm9ybS1idWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3NlcnZpY2VzL3R5cGVkLWZvcm0tYnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFxQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFJcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxNQUFNLE9BQU8sZ0JBQWdCO0lBR3pCO1FBQ0ksSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFJLGNBRVIsRUFBRSxPQUVLO1FBQ0osSUFBSSxZQUFZLEdBQVksT0FBTyxJQUFTLEVBQUUsQ0FBQztRQUMvQyxJQUFJLE9BQU8sY0FBYyxJQUFJLGVBQWU7WUFDeEMsT0FBTyxDQUFDLENBQUMsWUFBWSxJQUFJLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBa0IsQ0FBQyxDQUFDLENBQWUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBRSxDQUFDLGFBQWtCLENBQUM7UUFDdlIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUQsQ0FBQzs7OztZQWxCSixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgQWJzdHJhY3RDb250cm9sT3B0aW9ucyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgUnhGb3JtQnVpbGRlciB9IGZyb20gXCIuL3J4LWZvcm0tYnVpbGRlclwiO1xuaW1wb3J0IHsgRlVOQ1RJT05fU1RSSU5HIH0gZnJvbSBcIi4uL2NvbnN0L2FwcC5jb25zdFwiXG5pbXBvcnQgeyBPcHRpb25zIH0gZnJvbSBcIi4uL21vZGVscy9pbnRlcmZhY2Uvb3B0aW9uc1wiXG5pbXBvcnQgeyBSeEZvcm1Hcm91cCB9IGZyb20gXCIuL3J4LWZvcm0tZ3JvdXBcIjtcbmltcG9ydCB7IElGb3JtR3JvdXAgfSBmcm9tIFwiLi4vbW9kZWxzL2ludGVyZmFjZS9pLWZvcm0tZ3JvdXBcIjtcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFR5cGVkRm9ybUJ1aWxkZXIge1xuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyO1xuICAgIHByaXZhdGUgcnhGb3JtQnVpbGRlcjogUnhGb3JtQnVpbGRlcjtcbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5mb3JtQnVpbGRlciA9IG5ldyBGb3JtQnVpbGRlcigpO1xuICAgICAgICB0aGlzLnJ4Rm9ybUJ1aWxkZXIgPSBuZXcgUnhGb3JtQnVpbGRlcigpO1xuICAgIH1cblxuICAgIGdyb3VwPFQ+KGNvbnRyb2xzQ29uZmlnOiB7XG4gICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICB9LCBvcHRpb25zPzogQWJzdHJhY3RDb250cm9sT3B0aW9ucyB8IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgIH0gfCBudWxsKTogRm9ybUdyb3VwIHwgVCB7XG4gICAgICAgIGxldCBwYXJhbU9wdGlvbnMgPSA8T3B0aW9ucz5vcHRpb25zIHx8IDxhbnk+e307XG4gICAgICAgIGlmICh0eXBlb2YgY29udHJvbHNDb25maWcgPT0gRlVOQ1RJT05fU1RSSU5HKVxuICAgICAgICAgICAgcmV0dXJuICEocGFyYW1PcHRpb25zICYmIHBhcmFtT3B0aW9ucy5pc0luc3RhbmNlKSA/IHRoaXMucnhGb3JtQnVpbGRlci5mb3JtR3JvdXAoY29udHJvbHNDb25maWcsIHBhcmFtT3B0aW9ucy5kYXRhLCBwYXJhbU9wdGlvbnMuY29uZmlnKSBhcyBJRm9ybUdyb3VwPFQ+IDogKDxSeEZvcm1Hcm91cD50aGlzLnJ4Rm9ybUJ1aWxkZXIuZm9ybUdyb3VwKGNvbnRyb2xzQ29uZmlnLCBwYXJhbU9wdGlvbnMuZGF0YSwgcGFyYW1PcHRpb25zLmNvbmZpZykpLm1vZGVsSW5zdGFuY2UgYXMgVDtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoY29udHJvbHNDb25maWcsb3B0aW9ucyk7XG4gICAgfVxufSJdfQ==
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
export const alphabet = {
|
|
2
|
-
'danish': /^[A-ZÆØÅ]+$/,
|
|
3
|
-
'french': /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/,
|
|
4
|
-
'german': /^[A-ZÄÖÜß]+$/,
|
|
5
|
-
'spanish': /^[a-zñáéíóúü]+$/i,
|
|
6
|
-
'russian': /^[А-ЯЁ]+$/,
|
|
7
|
-
};
|
|
8
|
-
export const alphaWithWhitespace = {
|
|
9
|
-
'danish': /^[A-ZÆØÅ\s]+$/,
|
|
10
|
-
'french': /^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ\s]+$/,
|
|
11
|
-
'german': /^[A-ZÄÖÜß\s]+$/,
|
|
12
|
-
'spanish': /^[a-zñáéíóúü\s]+$/i,
|
|
13
|
-
'russian': /^[А-ЯЁ\s]+$/,
|
|
14
|
-
};
|
|
15
|
-
export const alphanumeric = {
|
|
16
|
-
'danish': /^[0-9A-ZÆØÅ]+$/,
|
|
17
|
-
'french': /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/,
|
|
18
|
-
'german': /^[0-9A-ZÄÖÜß]+$/,
|
|
19
|
-
'spanish': /^[0-9a-zñáéíóúü]+$/i,
|
|
20
|
-
'russian': /^[0-9А-ЯЁ]+$/,
|
|
21
|
-
};
|
|
22
|
-
export const alphanumericWithWitespace = {
|
|
23
|
-
'danish': /^[0-9A-ZÆØÅ]+$/,
|
|
24
|
-
'french': /^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/,
|
|
25
|
-
'german': /^[0-9A-ZÄÖÜß]+$/,
|
|
26
|
-
'spanish': /^[0-9a-zñáéíóúü\s]+$/i,
|
|
27
|
-
'russian': /^[0-9А-ЯЁ]+$/,
|
|
28
|
-
};
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxwaGFiZXQtcmVnZXgubG9jYWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3V0aWwvYWxwaGFiZXQtcmVnZXgubG9jYWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRztJQUNwQixRQUFRLEVBQUUsYUFBYTtJQUN2QixRQUFRLEVBQUUsMEJBQTBCO0lBQ3BDLFFBQVEsRUFBRSxjQUFjO0lBQ3hCLFNBQVMsRUFBRSxrQkFBa0I7SUFDN0IsU0FBUyxFQUFFLFdBQVc7Q0FFekIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQy9CLFFBQVEsRUFBRSxlQUFlO0lBQ3pCLFFBQVEsRUFBRSw0QkFBNEI7SUFDdEMsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixTQUFTLEVBQUUsb0JBQW9CO0lBQy9CLFNBQVMsRUFBRSxhQUFhO0NBRTNCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDeEIsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixRQUFRLEVBQUUsNkJBQTZCO0lBQ3ZDLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsU0FBUyxFQUFFLHFCQUFxQjtJQUNoQyxTQUFTLEVBQUUsY0FBYztDQUM1QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDckMsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixRQUFRLEVBQUUsNkJBQTZCO0lBQ3ZDLFFBQVEsRUFBRSxpQkFBaUI7SUFDM0IsU0FBUyxFQUFFLHVCQUF1QjtJQUNsQyxTQUFTLEVBQUUsY0FBYztDQUM1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGFscGhhYmV0ID0ge1xuICAgICdkYW5pc2gnOiAvXltBLVrDhsOYw4VdKyQvLFxuICAgICdmcmVuY2gnOiAvXltBLVrDgMOCw4bDh8OJw4jDisOLw4/DjsOUxZLDmcObw5zFuF0rJC8sXG4gICAgJ2dlcm1hbic6IC9eW0EtWsOEw5bDnMOfXSskLyxcbiAgICAnc3BhbmlzaCc6IC9eW2EtesOxw6HDqcOtw7PDusO8XSskL2ksXG4gICAgJ3J1c3NpYW4nOiAvXlvQkC3Qr9CBXSskLyxcblxufTtcblxuZXhwb3J0IGNvbnN0IGFscGhhV2l0aFdoaXRlc3BhY2UgPSB7XG4gICAgJ2RhbmlzaCc6IC9eW0EtWsOGw5jDhVxcc10rJC8sXG4gICAgJ2ZyZW5jaCc6IC9eW0EtWsOAw4LDhsOHw4nDiMOKw4vDj8OOw5TFksOZw5vDnMW4XFxzXSskLyxcbiAgICAnZ2VybWFuJzogL15bQS1aw4TDlsOcw59cXHNdKyQvLFxuICAgICdzcGFuaXNoJzogL15bYS16w7HDocOpw63Ds8O6w7xcXHNdKyQvaSxcbiAgICAncnVzc2lhbic6IC9eW9CQLdCv0IFcXHNdKyQvLFxuXG59O1xuXG5leHBvcnQgY29uc3QgYWxwaGFudW1lcmljID0ge1xuICAgICdkYW5pc2gnOiAvXlswLTlBLVrDhsOYw4VdKyQvLFxuICAgICdmcmVuY2gnOiAvXlswLTlBLVrDgMOCw4bDh8OJw4jDisOLw4/DjsOUxZLDmcObw5zFuF0rJC8sXG4gICAgJ2dlcm1hbic6IC9eWzAtOUEtWsOEw5bDnMOfXSskLyxcbiAgICAnc3BhbmlzaCc6IC9eWzAtOWEtesOxw6HDqcOtw7PDusO8XSskL2ksXG4gICAgJ3J1c3NpYW4nOiAvXlswLTnQkC3Qr9CBXSskLyxcbn07XG5cbmV4cG9ydCBjb25zdCBhbHBoYW51bWVyaWNXaXRoV2l0ZXNwYWNlID0ge1xuICAgICdkYW5pc2gnOiAvXlswLTlBLVrDhsOYw4VdKyQvLFxuICAgICdmcmVuY2gnOiAvXlswLTlBLVrDgMOCw4bDh8OJw4jDisOLw4/DjsOUxZLDmcObw5zFuF0rJC8sXG4gICAgJ2dlcm1hbic6IC9eWzAtOUEtWsOEw5bDnMOfXSskLyxcbiAgICAnc3BhbmlzaCc6IC9eWzAtOWEtesOxw6HDqcOtw7PDusO8XFxzXSskL2ksXG4gICAgJ3J1c3NpYW4nOiAvXlswLTnQkC3Qr9CBXSskLyxcbn07XG5cbiJdfQ==
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import { FormArray } from "@angular/forms";
|
|
2
|
-
import { RxFormArray } from "../services/rx-form-array";
|
|
3
|
-
import { NumericValueType } from '../enums';
|
|
4
|
-
import { ReactiveFormConfig } from "./reactive-form-config";
|
|
5
|
-
const MODEL_INSTANCE_VALUE = "modelInstanceValue";
|
|
6
|
-
export class ApplicationUtil {
|
|
7
|
-
static getParentObjectValue(control) {
|
|
8
|
-
if (control.parent) {
|
|
9
|
-
let parent = this.parentObjectValue(control.parent);
|
|
10
|
-
return parent.value;
|
|
11
|
-
}
|
|
12
|
-
return {};
|
|
13
|
-
}
|
|
14
|
-
static getParentModelInstanceValue(control) {
|
|
15
|
-
if (control.parent) {
|
|
16
|
-
let parent = this.parentObjectValue(control.parent);
|
|
17
|
-
return parent[MODEL_INSTANCE_VALUE];
|
|
18
|
-
}
|
|
19
|
-
return {};
|
|
20
|
-
}
|
|
21
|
-
static getRootFormGroup(control) {
|
|
22
|
-
if (control.parent) {
|
|
23
|
-
return this.getRootFormGroup(control.parent);
|
|
24
|
-
}
|
|
25
|
-
return control;
|
|
26
|
-
}
|
|
27
|
-
static getParentControl(control) {
|
|
28
|
-
if (control.parent) {
|
|
29
|
-
let parent = this.parentObjectValue(control.parent);
|
|
30
|
-
return parent;
|
|
31
|
-
}
|
|
32
|
-
return control;
|
|
33
|
-
}
|
|
34
|
-
static getFormControlName(control) {
|
|
35
|
-
let controlName = '';
|
|
36
|
-
if (control.parent) {
|
|
37
|
-
for (var formControlName in control.parent.controls) {
|
|
38
|
-
if (control.parent.controls[formControlName] == control) {
|
|
39
|
-
controlName = formControlName;
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return controlName;
|
|
45
|
-
}
|
|
46
|
-
static getParentFormArray(control) {
|
|
47
|
-
if (control.parent && !(control.parent instanceof FormArray || control.parent instanceof RxFormArray)) {
|
|
48
|
-
let parent = this.getParentFormArray(control.parent);
|
|
49
|
-
return parent;
|
|
50
|
-
}
|
|
51
|
-
return control.parent;
|
|
52
|
-
}
|
|
53
|
-
static toLower(value) {
|
|
54
|
-
if (value)
|
|
55
|
-
return String(value).toLowerCase().trim();
|
|
56
|
-
return value;
|
|
57
|
-
}
|
|
58
|
-
static getControl(fieldName, formGroup) {
|
|
59
|
-
let splitText = fieldName.split('.');
|
|
60
|
-
if (splitText.length > 1) {
|
|
61
|
-
var formControl = formGroup;
|
|
62
|
-
splitText.forEach((name, index) => { formControl = formControl.controls[name]; });
|
|
63
|
-
return formControl;
|
|
64
|
-
}
|
|
65
|
-
else
|
|
66
|
-
return formGroup.controls[fieldName];
|
|
67
|
-
}
|
|
68
|
-
static getFormControl(fieldName, control) {
|
|
69
|
-
let splitText = fieldName.split('.');
|
|
70
|
-
if (splitText.length > 1 && control.parent) {
|
|
71
|
-
var formControl = this.getParentControl(control);
|
|
72
|
-
splitText.forEach((name, index) => { formControl = formControl.controls[name]; });
|
|
73
|
-
return formControl;
|
|
74
|
-
}
|
|
75
|
-
return (control.parent) ? control.parent.get([fieldName]) : undefined;
|
|
76
|
-
}
|
|
77
|
-
static parentObjectValue(control) {
|
|
78
|
-
if (!control.parent)
|
|
79
|
-
return control;
|
|
80
|
-
else
|
|
81
|
-
control = this.parentObjectValue(control.parent);
|
|
82
|
-
return control;
|
|
83
|
-
}
|
|
84
|
-
static isNumeric(value) {
|
|
85
|
-
return (value - parseFloat(value) + 1) >= 0;
|
|
86
|
-
}
|
|
87
|
-
static notEqualTo(primaryValue, secondaryValue) {
|
|
88
|
-
let firstValue = (primaryValue === undefined || primaryValue === null) ? "" : primaryValue;
|
|
89
|
-
let secondValue = (secondaryValue === undefined || secondaryValue === null) ? "" : secondaryValue;
|
|
90
|
-
if (firstValue instanceof Date && secondValue instanceof Date)
|
|
91
|
-
return +firstValue != +secondValue;
|
|
92
|
-
return (firstValue != secondValue);
|
|
93
|
-
}
|
|
94
|
-
static numericValidation(allowDecimal, acceptValue) {
|
|
95
|
-
let decimalSymbol;
|
|
96
|
-
if (ReactiveFormConfig && ReactiveFormConfig.number) {
|
|
97
|
-
decimalSymbol = (ReactiveFormConfig.json && ReactiveFormConfig.json.allowDecimalSymbol) ? ReactiveFormConfig.json.allowDecimalSymbol : ReactiveFormConfig.number.decimalSymbol;
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
decimalSymbol = ".";
|
|
101
|
-
}
|
|
102
|
-
acceptValue = (acceptValue == undefined) ? NumericValueType.PositiveNumber : acceptValue;
|
|
103
|
-
let regex = /^[0-9]+$/;
|
|
104
|
-
switch (acceptValue) {
|
|
105
|
-
case NumericValueType.PositiveNumber:
|
|
106
|
-
regex = (!allowDecimal) ? /^[0-9]+$/ : (decimalSymbol == "." || decimalSymbol == undefined) ? /^[0-9\.]+$/ : /^[0-9\,]+$/;
|
|
107
|
-
break;
|
|
108
|
-
case NumericValueType.NegativeNumber:
|
|
109
|
-
regex = (!allowDecimal) ? /^[-][0-9]+$/ : (decimalSymbol == "." || decimalSymbol == undefined) ? /^[-][0-9\.]+$/ : /^[-][0-9\,]+$/;
|
|
110
|
-
break;
|
|
111
|
-
case NumericValueType.Both:
|
|
112
|
-
regex = (!allowDecimal) ? /^[-|+]?[0-9]+$/ : (decimalSymbol == "." || decimalSymbol == undefined) ? /^[-|+]?[0-9\.]+$/ : /^[-|+]?[0-9\,]+$/;
|
|
113
|
-
break;
|
|
114
|
-
}
|
|
115
|
-
return regex;
|
|
116
|
-
}
|
|
117
|
-
static configureControl(control, config, type) {
|
|
118
|
-
if (!control.validatorConfig) {
|
|
119
|
-
let jObject = {};
|
|
120
|
-
jObject[type] = config;
|
|
121
|
-
Object.assign(control, { validatorConfig: jObject });
|
|
122
|
-
}
|
|
123
|
-
else
|
|
124
|
-
control.validatorConfig[type] = config;
|
|
125
|
-
}
|
|
126
|
-
static lowerCaseWithTrim(value) {
|
|
127
|
-
return typeof value === "string" ? value.toLowerCase().trim() : String(value).toLowerCase().trim();
|
|
128
|
-
}
|
|
129
|
-
/** Check if a value is an object */
|
|
130
|
-
static isObject(value) {
|
|
131
|
-
return Object.prototype.toString.call(value) === '[object Object]';
|
|
132
|
-
}
|
|
133
|
-
/** Check if a value is an object */
|
|
134
|
-
static isArray(value) {
|
|
135
|
-
return Array.isArray(value);
|
|
136
|
-
}
|
|
137
|
-
static cloneValue(value) {
|
|
138
|
-
return ApplicationUtil.isObject(value) ? ApplicationUtil.isArray(value) ? [...value] : Object.assign({}, value) : value;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvc3JjL2xpYi9mb3JtLXZhbGlkYXRvcnMvdXRpbC9hcHAtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQThCLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDMUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsTUFBTSxvQkFBb0IsR0FBRyxvQkFBb0IsQ0FBQztBQUNsRCxNQUFNLE9BQU8sZUFBZTtJQUN4QixNQUFNLENBQUMsb0JBQW9CLENBQUMsT0FBd0I7UUFDaEQsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2hCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDbkQsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ3ZCO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxDQUFDLDJCQUEyQixDQUFDLE9BQXdCO1FBQ3ZELElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUNoQixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1lBQ25ELE9BQU8sTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDdkM7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBdUI7UUFDN0MsSUFBSSxPQUFPLENBQUMsTUFBTSxFQUFFO1lBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FB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SyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLG1CQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDOUcsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtR3JvdXAsIEZvcm1BcnJheSB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgUnhGb3JtQXJyYXkgfSBmcm9tIFwiLi4vc2VydmljZXMvcngtZm9ybS1hcnJheVwiO1xuaW1wb3J0IHtOdW1lcmljVmFsdWVUeXBlIH0gZnJvbSAnLi4vZW51bXMnXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1Db25maWcgfSBmcm9tIFwiLi9yZWFjdGl2ZS1mb3JtLWNvbmZpZ1wiO1xuY29uc3QgTU9ERUxfSU5TVEFOQ0VfVkFMVUUgPSBcIm1vZGVsSW5zdGFuY2VWYWx1ZVwiO1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uVXRpbHtcbiAgICBzdGF0aWMgZ2V0UGFyZW50T2JqZWN0VmFsdWUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA6eyBba2V5OnN0cmluZ106YW55fSB7XG4gICAgICAgIGlmIChjb250cm9sLnBhcmVudCkge1xuICAgICAgICAgICAgbGV0IHBhcmVudCA9IHRoaXMucGFyZW50T2JqZWN0VmFsdWUoY29udHJvbC5wYXJlbnQpXG4gICAgICAgICAgICByZXR1cm4gcGFyZW50LnZhbHVlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0UGFyZW50TW9kZWxJbnN0YW5jZVZhbHVlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IHsgW2tleTogc3RyaW5nXTogYW55IH0ge1xuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudE9iamVjdFZhbHVlKGNvbnRyb2wucGFyZW50KVxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudFtNT0RFTF9JTlNUQU5DRV9WQUxVRV07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHt9O1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRSb290Rm9ybUdyb3VwKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKTpGb3JtR3JvdXB7XG4gICAgICBpZiAoY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Um9vdEZvcm1Hcm91cChjb250cm9sLnBhcmVudCk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZvcm1Hcm91cD5jb250cm9sO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldFBhcmVudENvbnRyb2woY29udHJvbDpBYnN0cmFjdENvbnRyb2wpe1xuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQpIHtcbiAgICAgICAgICAgIGxldCBwYXJlbnQgPSB0aGlzLnBhcmVudE9iamVjdFZhbHVlKGNvbnRyb2wucGFyZW50KVxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udHJvbDtcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0Rm9ybUNvbnRyb2xOYW1lKGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKXtcbiAgICAgICAgbGV0IGNvbnRyb2xOYW1lOnN0cmluZyA9ICcnO1xuICAgICAgICBpZihjb250cm9sLnBhcmVudCl7XG4gICAgICAgICAgZm9yKHZhciBmb3JtQ29udHJvbE5hbWUgaW4gY29udHJvbC5wYXJlbnQuY29udHJvbHMpe1xuICAgICAgICAgICAgaWYoY29udHJvbC5wYXJlbnQuY29udHJvbHNbZm9ybUNvbnRyb2xOYW1lXSA9PSBjb250cm9sKXtcbiAgICAgICAgICAgICAgY29udHJvbE5hbWUgPSBmb3JtQ29udHJvbE5hbWU7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgcmV0dXJuIGNvbnRyb2xOYW1lO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRQYXJlbnRGb3JtQXJyYXkoY29udHJvbDpBYnN0cmFjdENvbnRyb2wpe1xuICAgICAgICBpZiAoY29udHJvbC5wYXJlbnQgJiYgIShjb250cm9sLnBhcmVudCBpbnN0YW5jZW9mIEZvcm1BcnJheSB8fCBjb250cm9sLnBhcmVudCBpbnN0YW5jZW9mIFJ4Rm9ybUFycmF5KSkge1xuICAgICAgICAgICAgbGV0IHBhcmVudCA9IHRoaXMuZ2V0UGFyZW50Rm9ybUFycmF5KGNvbnRyb2wucGFyZW50KVxuICAgICAgICAgICAgcmV0dXJuIHBhcmVudDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udHJvbC5wYXJlbnQ7XG4gICAgfVxuXG4gICAgc3RhdGljIHRvTG93ZXIodmFsdWUpe1xuICAgICAgICBpZiAodmFsdWUpXG4gICAgICAgICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKS50b0xvd2VyQ2FzZSgpLnRyaW0oKTtcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRDb250cm9sKGZpZWxkTmFtZTpzdHJpbmcsZm9ybUdyb3VwOkZvcm1Hcm91cCl7XG4gICAgICBsZXQgc3BsaXRUZXh0ID0gZmllbGROYW1lLnNwbGl0KCcuJyk7XG4gICAgICBpZihzcGxpdFRleHQubGVuZ3RoID4gMSl7XG4gICAgICAgIHZhciBmb3JtQ29udHJvbDphbnkgPSBmb3JtR3JvdXA7XG4gICAgICAgIHNwbGl0VGV4dC5mb3JFYWNoKChuYW1lLGluZGV4KT0+eyBmb3JtQ29udHJvbCA9IGZvcm1Db250cm9sLmNvbnRyb2xzW25hbWVdfSlcbiAgICAgICAgcmV0dXJuIGZvcm1Db250cm9sO1xuICAgICAgfWVsc2VcbiAgICAgIHJldHVybiBmb3JtR3JvdXAuY29udHJvbHNbZmllbGROYW1lXTtcblxuICAgIH1cblxuICAgIHN0YXRpYyBnZXRGb3JtQ29udHJvbChmaWVsZE5hbWU6c3RyaW5nLGNvbnRyb2w6QWJzdHJhY3RDb250cm9sKXtcbiAgICAgICAgbGV0IHNwbGl0VGV4dCA9IGZpZWxkTmFtZS5zcGxpdCgnLicpO1xuICAgICAgICAgIGlmKHNwbGl0VGV4dC5sZW5ndGggPiAxICYmIGNvbnRyb2wucGFyZW50KXtcbiAgICAgICAgICB2YXIgZm9ybUNvbnRyb2w6YW55ID0gdGhpcy5nZXRQYXJlbnRDb250cm9sKGNvbnRyb2wpO1xuICAgICAgICAgIHNwbGl0VGV4dC5mb3JFYWNoKChuYW1lLGluZGV4KT0+eyBmb3JtQ29udHJvbCA9IGZvcm1Db250cm9sLmNvbnRyb2xzW25hbWVdfSlcbiAgICAgICAgICByZXR1cm4gZm9ybUNvbnRyb2w7XG4gICAgICAgICAgfVxuICAgICAgICByZXR1cm4gKGNvbnRyb2wucGFyZW50KSA/IGNvbnRyb2wucGFyZW50LmdldChbZmllbGROYW1lXSkgOiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgcGFyZW50T2JqZWN0VmFsdWUoY29udHJvbDogRm9ybUdyb3VwIHwgRm9ybUFycmF5KTogRm9ybUdyb3VwIHwgRm9ybUFycmF5IHtcbiAgICAgICAgaWYgKCFjb250cm9sLnBhcmVudClcbiAgICAgICAgICAgIHJldHVybiBjb250cm9sO1xuICAgICAgICBlbHNlXG4gICAgICAgICAgICBjb250cm9sID0gdGhpcy5wYXJlbnRPYmplY3RWYWx1ZShjb250cm9sLnBhcmVudClcbiAgICAgICAgcmV0dXJuIGNvbnRyb2xcbiAgICB9XG5cbiAgICBcblxuICAgIHN0YXRpYyBpc051bWVyaWModmFsdWU6YW55KXtcbiAgICAgICByZXR1cm4gKHZhbHVlIC0gcGFyc2VGbG9hdCh2YWx1ZSkgKyAxKSA+PSAwO1xuICB9XG5cbiAgc3RhdGljIG5vdEVxdWFsVG8ocHJpbWFyeVZhbHVlOiBhbnksIHNlY29uZGFyeVZhbHVlOiBhbnkpIHtcbiAgICBsZXQgZmlyc3RWYWx1ZSA9IChwcmltYXJ5VmFsdWUgPT09IHVuZGVmaW5lZCB8fCBwcmltYXJ5VmFsdWUgPT09IG51bGwpID8gXCJcIiA6IHByaW1hcnlWYWx1ZTtcbiAgICBsZXQgc2Vjb25kVmFsdWUgPSAoc2Vjb25kYXJ5VmFsdWUgPT09IHVuZGVmaW5lZCB8fCBzZWNvbmRhcnlWYWx1ZSA9PT0gbnVsbCkgPyBcIlwiIDogc2Vjb25kYXJ5VmFsdWU7XG4gICAgaWYoZmlyc3RWYWx1ZSBpbnN0YW5jZW9mIERhdGUgJiYgc2Vjb25kVmFsdWUgaW5zdGFuY2VvZiBEYXRlKVxuICAgICAgICByZXR1cm4gK2ZpcnN0VmFsdWUgIT0gK3NlY29uZFZhbHVlO1xuICAgIHJldHVybiAoZmlyc3RWYWx1ZSAhPSBzZWNvbmRWYWx1ZSlcbiAgfVxuXG4gICAgc3RhdGljIG51bWVyaWNWYWxpZGF0aW9uKGFsbG93RGVjaW1hbDpib29sZWFuLCBhY2NlcHRWYWx1ZTpOdW1lcmljVmFsdWVUeXBlKSB7XG4gICAgICBsZXQgZGVjaW1hbFN5bWJvbDpzdHJpbmc7XG4gICAgICBpZihSZWFjdGl2ZUZvcm1Db25maWcgJiYgUmVhY3RpdmVGb3JtQ29uZmlnLm51bWJlcil7XG4gICAgICAgIGRlY2ltYWxTeW1ib2wgPSAoUmVhY3RpdmVGb3JtQ29uZmlnLmpzb24gJiYgUmVhY3RpdmVGb3JtQ29uZmlnLmpzb24uYWxsb3dEZWNpbWFsU3ltYm9sKSA/IFJlYWN0aXZlRm9ybUNvbmZpZy5qc29uLmFsbG93RGVjaW1hbFN5bWJvbCA6ICBSZWFjdGl2ZUZvcm1Db25maWcubnVtYmVyLmRlY2ltYWxTeW1ib2w7XG4gICAgICB9ZWxzZXtcbiAgICAgICAgZGVjaW1hbFN5bWJvbCA9IFwiLlwiO1xuICAgICAgfVxuICAgICAgICBcbiAgICAgICAgYWNjZXB0VmFsdWUgPSAoYWNjZXB0VmFsdWUgPT0gdW5kZWZpbmVkKSA/IE51bWVyaWNWYWx1ZVR5cGUuUG9zaXRpdmVOdW1iZXIgOiBhY2NlcHRWYWx1ZTtcbiAgICAgICAgbGV0IHJlZ2V4ID0gL15bMC05XSskLztcbiAgICAgICAgc3dpdGNoKGFjY2VwdFZhbHVlKXtcbiAgICAgICAgICAgIGNhc2UgTnVtZXJpY1ZhbHVlVHlwZS5Qb3NpdGl2ZU51bWJlcjpcbiAgICAgICAgICAgICAgcmVnZXggPSAoIWFsbG93RGVjaW1hbCkgPyAvXlswLTldKyQvIDogKGRlY2ltYWxTeW1ib2wgPT0gXCIuXCIgIHx8IGRlY2ltYWxTeW1ib2wgPT0gdW5kZWZpbmVkKSA/IC9eWzAtOVxcLl0rJC8gOiAvXlswLTlcXCxdKyQvO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICBOdW1lcmljVmFsdWVUeXBlLk5lZ2F0aXZlTnVtYmVyOlxuICAgICAgICAgICAgICAgIHJlZ2V4ID0gKCFhbGxvd0RlY2ltYWwpID8gL15bLV1bMC05XSskLyA6IChkZWNpbWFsU3ltYm9sID09IFwiLlwiIHx8IGRlY2ltYWxTeW1ib2wgPT0gdW5kZWZpbmVkKT8gIC9eWy1dWzAtOVxcLl0rJC8gOiAvXlstXVswLTlcXCxdKyQvO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIE51bWVyaWNWYWx1ZVR5cGUuQm90aCA6XG4gICAgICAgICAgICAgICAgcmVnZXggPSAoIWFsbG93RGVjaW1hbCkgPyAvXlstfCtdP1swLTldKyQvIDogKGRlY2ltYWxTeW1ib2wgPT0gXCIuXCIgfHwgZGVjaW1hbFN5bWJvbCA9PSB1bmRlZmluZWQpID8gIC9eWy18K10/WzAtOVxcLl0rJC8gOiAvXlstfCtdP1swLTlcXCxdKyQvO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIHJldHVybiByZWdleDtcbiAgICB9XG5cbiAgICBzdGF0aWMgY29uZmlndXJlQ29udHJvbChjb250cm9sOmFueSxjb25maWc6YW55LHR5cGU6c3RyaW5nKXtcbiAgICAgICAgICBpZighY29udHJvbC52YWxpZGF0b3JDb25maWcpe1xuICAgICAgICAgICAgbGV0IGpPYmplY3Q9IHt9O1xuICAgICAgICAgICAgak9iamVjdFt0eXBlXSA9IGNvbmZpZztcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oY29udHJvbCx7dmFsaWRhdG9yQ29uZmlnOmpPYmplY3R9KVxuICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgY29udHJvbC52YWxpZGF0b3JDb25maWdbdHlwZV0gPSBjb25maWc7XG4gICAgfVxuXG4gICAgc3RhdGljIGxvd2VyQ2FzZVdpdGhUcmltKHZhbHVlOnN0cmluZykge1xuICAgICAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiID8gdmFsdWUudG9Mb3dlckNhc2UoKS50cmltKCkgOiBTdHJpbmcodmFsdWUpLnRvTG93ZXJDYXNlKCkudHJpbSgpO1xuICAgIH1cblxuICAgIC8qKiBDaGVjayBpZiBhIHZhbHVlIGlzIGFuIG9iamVjdCAqL1xuICAgIHN0YXRpYyBpc09iamVjdCh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodmFsdWUpID09PSAnW29iamVjdCBPYmplY3RdJztcbiAgICB9XG5cbiAgICAvKiogQ2hlY2sgaWYgYSB2YWx1ZSBpcyBhbiBvYmplY3QgKi9cbiAgICBzdGF0aWMgaXNBcnJheSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBzdGF0aWMgY2xvbmVWYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgcmV0dXJuIEFwcGxpY2F0aW9uVXRpbC5pc09iamVjdCh2YWx1ZSkgPyBBcHBsaWNhdGlvblV0aWwuaXNBcnJheSh2YWx1ZSkgPyBbLi4udmFsdWVdIDogey4uLnZhbHVlfSA6IHZhbHVlO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export function checkLength(length, checks) {
|
|
2
|
-
let isPassed = false;
|
|
3
|
-
for (let check of checks) {
|
|
4
|
-
isPassed = (check == length);
|
|
5
|
-
if (isPassed)
|
|
6
|
-
break;
|
|
7
|
-
}
|
|
8
|
-
return isPassed;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stbGVuZ3RoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2RrL3NyYy9saWIvZm9ybS12YWxpZGF0b3JzL3V0aWwvY2hlY2stbGVuZ3RoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxXQUFXLENBQUMsTUFBYyxFQUFFLE1BQWdCO0lBQzFELElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNyQixLQUFLLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRTtRQUN4QixRQUFRLEdBQUcsQ0FBQyxLQUFLLElBQUksTUFBTSxDQUFDLENBQUE7UUFDNUIsSUFBSSxRQUFRO1lBQ1YsTUFBTTtLQUNUO0lBQ0QsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBjaGVja0xlbmd0aChsZW5ndGg6IG51bWJlciwgY2hlY2tzOiBudW1iZXJbXSk6IGJvb2xlYW4ge1xuICBsZXQgaXNQYXNzZWQgPSBmYWxzZTtcbiAgZm9yIChsZXQgY2hlY2sgb2YgY2hlY2tzKSB7XG4gICAgaXNQYXNzZWQgPSAoY2hlY2sgPT0gbGVuZ3RoKVxuICAgIGlmIChpc1Bhc3NlZClcbiAgICAgIGJyZWFrO1xuICB9XG4gIHJldHVybiBpc1Bhc3NlZDtcbn1cbiJdfQ==
|