@simpleangularcontrols/sac-common 10.0.0-rc.29 → 10.0.0-rc.30
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/bundles/simpleangularcontrols-sac-common.umd.js +1848 -1249
- package/bundles/simpleangularcontrols-sac-common.umd.js.map +1 -1
- package/bundles/simpleangularcontrols-sac-common.umd.min.js +1 -1
- package/bundles/simpleangularcontrols-sac-common.umd.min.js.map +1 -1
- package/common/basedatetimecontrol.d.ts +47 -21
- package/common/baseinputcontrol.d.ts +10 -8
- package/common/baselistcontrol.d.ts +15 -15
- package/common/basemodelcontrol.d.ts +59 -43
- package/common/baseselectcontrol.d.ts +5 -5
- package/common/baseuploadcontrol.d.ts +77 -57
- package/components/browser/browser.d.ts +86 -89
- package/components/browser/models/browserfile.d.ts +6 -6
- package/components/browser/models/browserfiledeleterequest.d.ts +7 -7
- package/components/browser/models/browserfilerenamerequest.d.ts +10 -10
- package/components/browser/models/browserfileresponse.d.ts +2 -2
- package/components/browser/models/browserfilesaverequest.d.ts +7 -7
- package/components/browser/models/browsernode.d.ts +13 -13
- package/components/browser/models/browsernodedeleterequest.d.ts +6 -6
- package/components/browser/models/browsernodenewrequest.d.ts +7 -7
- package/components/browser/models/browsernoderenamerequest.d.ts +7 -7
- package/components/browser/models/browsernoderequest.d.ts +7 -7
- package/components/browser/models/browsernoderesponse.d.ts +1 -1
- package/controls/buttons/button.d.ts +25 -19
- package/controls/checkbox/checkbox.d.ts +3 -3
- package/controls/checkbox/radiobutton.d.ts +19 -13
- package/controls/checkbox/radiobuttons.d.ts +13 -10
- package/controls/confirm/confirm.button.d.ts +3 -3
- package/controls/confirm/confirm.d.ts +13 -12
- package/controls/confirm/confirm.service.d.ts +14 -14
- package/controls/contextmenu/contextmenu.d.ts +33 -27
- package/controls/contextmenu/contextmenu.interface.d.ts +6 -0
- package/controls/contextmenu/contextmenuanchor.d.ts +4 -4
- package/controls/contextmenu/contextmenucontainer.d.ts +4 -4
- package/controls/contextmenu/contextmenuitembutton.d.ts +12 -12
- package/controls/datetime/date.d.ts +11 -11
- package/controls/datetime/dateselector.d.ts +47 -40
- package/controls/datetime/datetime.d.ts +15 -14
- package/controls/datetime/time.d.ts +22 -12
- package/controls/dialog/dialog.d.ts +28 -22
- package/controls/form/form.d.ts +17 -12
- package/controls/grid/grid.d.ts +1 -0
- package/controls/grid/gridbutton.d.ts +1 -0
- package/controls/grid/gridcolumn.d.ts +5 -1
- package/controls/grid/gridcolumnaction.d.ts +1 -1
- package/controls/grid/gridcolumnbase.d.ts +8 -3
- package/controls/grid/model.d.ts +5 -2
- package/controls/grid/paging.d.ts +2 -3
- package/controls/input/input.d.ts +7 -7
- package/controls/input/inputarea.d.ts +8 -6
- package/controls/input/inputcurrency.d.ts +4 -1
- package/controls/input/inputdecimal.d.ts +14 -14
- package/controls/input/inputemail.d.ts +4 -4
- package/controls/input/inputinteger.d.ts +14 -14
- package/controls/input/inputpassword.d.ts +3 -3
- package/controls/input/inputsearch.d.ts +8 -5
- package/controls/layout/formlayout.d.ts +8 -5
- package/controls/list/buildvaluestring.d.ts +2 -2
- package/controls/list/dropdown.d.ts +23 -22
- package/controls/list/dropdownoptions.d.ts +10 -10
- package/controls/list/listbox.d.ts +25 -23
- package/controls/multilanguage/multilanguageinput.d.ts +25 -25
- package/controls/multilanguage/multilanguageinputarea.d.ts +27 -27
- package/controls/static/formcontainer.d.ts +8 -8
- package/controls/static/staticlabel.d.ts +5 -5
- package/controls/tabs/tab.d.ts +2 -2
- package/controls/tabs/tabitem.d.ts +7 -7
- package/controls/tinymce/tinymce.d.ts +37 -37
- package/controls/tinymce/tinymcedialogsettings.d.ts +6 -6
- package/controls/tinymce/tinymcedialogsettingsmeta.d.ts +2 -2
- package/controls/tinymce/tinymceinstance.d.ts +2 -2
- package/controls/tooltip/tooltip.d.ts +10 -5
- package/controls/treeview/treeview.d.ts +50 -5
- package/controls/upload/dropzonemultiple.d.ts +16 -16
- package/controls/upload/dropzonesingle.d.ts +11 -11
- package/controls/upload/uploadmultiple.d.ts +12 -12
- package/controls/upload/uploadsingle.d.ts +7 -7
- package/controls/validation/validationsummary.d.ts +12 -11
- package/controls/wizard/wizard.d.ts +25 -18
- package/controls/wizard/wizarditem.d.ts +5 -5
- package/enums/ButtonRoleType.d.ts +26 -1
- package/enums/ControlHeight.d.ts +1 -1
- package/enums/IconType.d.ts +1 -1
- package/esm2015/common/basedatetimecontrol.js +47 -22
- package/esm2015/common/baseinputcontrol.js +13 -11
- package/esm2015/common/baselistcontrol.js +21 -17
- package/esm2015/common/basemodelcontrol.js +72 -49
- package/esm2015/common/baseselectcontrol.js +11 -9
- package/esm2015/common/baseuploadcontrol.js +69 -49
- package/esm2015/components/browser/browser.js +93 -105
- package/esm2015/components/browser/models/browserfile.js +1 -1
- package/esm2015/components/browser/models/browserfiledeleterequest.js +6 -4
- package/esm2015/components/browser/models/browserfilerenamerequest.js +6 -4
- package/esm2015/components/browser/models/browserfileresponse.js +1 -1
- package/esm2015/components/browser/models/browserfilesaverequest.js +5 -3
- package/esm2015/components/browser/models/browsernode.js +1 -1
- package/esm2015/components/browser/models/browsernodedeleterequest.js +6 -4
- package/esm2015/components/browser/models/browsernodenewrequest.js +6 -4
- package/esm2015/components/browser/models/browsernoderenamerequest.js +6 -4
- package/esm2015/components/browser/models/browsernoderequest.js +6 -4
- package/esm2015/components/browser/models/browsernoderesponse.js +1 -1
- package/esm2015/controls/buttons/button.js +26 -20
- package/esm2015/controls/checkbox/checkbox.js +3 -3
- package/esm2015/controls/checkbox/radiobutton.js +21 -15
- package/esm2015/controls/checkbox/radiobuttons.js +14 -11
- package/esm2015/controls/confirm/confirm.button.js +4 -4
- package/esm2015/controls/confirm/confirm.js +14 -13
- package/esm2015/controls/confirm/confirm.service.js +21 -21
- package/esm2015/controls/contextmenu/contextmenu.interface.js +1 -1
- package/esm2015/controls/contextmenu/contextmenu.js +29 -23
- package/esm2015/controls/contextmenu/contextmenuanchor.js +4 -4
- package/esm2015/controls/contextmenu/contextmenucontainer.js +4 -4
- package/esm2015/controls/contextmenu/contextmenuitembutton.js +10 -10
- package/esm2015/controls/datetime/date.js +13 -13
- package/esm2015/controls/datetime/dateselector.js +55 -54
- package/esm2015/controls/datetime/datetime.js +17 -16
- package/esm2015/controls/datetime/time.js +24 -14
- package/esm2015/controls/dialog/dialog.js +31 -24
- package/esm2015/controls/form/form.js +18 -13
- package/esm2015/controls/grid/grid.js +2 -1
- package/esm2015/controls/grid/gridbutton.js +2 -1
- package/esm2015/controls/grid/gridcolumn.js +6 -2
- package/esm2015/controls/grid/gridcolumnaction.js +2 -2
- package/esm2015/controls/grid/gridcolumnbase.js +9 -4
- package/esm2015/controls/grid/model.js +5 -2
- package/esm2015/controls/grid/paging.js +6 -7
- package/esm2015/controls/input/input.js +8 -8
- package/esm2015/controls/input/inputarea.js +9 -7
- package/esm2015/controls/input/inputcurrency.js +6 -3
- package/esm2015/controls/input/inputdecimal.js +21 -27
- package/esm2015/controls/input/inputemail.js +5 -5
- package/esm2015/controls/input/inputinteger.js +19 -23
- package/esm2015/controls/input/inputpassword.js +4 -4
- package/esm2015/controls/input/inputsearch.js +9 -6
- package/esm2015/controls/layout/formlayout.js +10 -7
- package/esm2015/controls/list/buildvaluestring.js +6 -6
- package/esm2015/controls/list/dropdown.js +28 -27
- package/esm2015/controls/list/dropdownoptions.js +12 -12
- package/esm2015/controls/list/listbox.js +26 -24
- package/esm2015/controls/multilanguage/multilanguageinput.js +29 -29
- package/esm2015/controls/multilanguage/multilanguageinputarea.js +31 -31
- package/esm2015/controls/static/formcontainer.js +10 -10
- package/esm2015/controls/static/staticlabel.js +7 -7
- package/esm2015/controls/tabs/tab.js +2 -2
- package/esm2015/controls/tabs/tabitem.js +5 -5
- package/esm2015/controls/tinymce/tinymce.js +35 -35
- package/esm2015/controls/tinymce/tinymcedialogsettings.js +4 -4
- package/esm2015/controls/tinymce/tinymcedialogsettingsmeta.js +1 -1
- package/esm2015/controls/tinymce/tinymceinstance.js +1 -1
- package/esm2015/controls/tooltip/tooltip.js +13 -8
- package/esm2015/controls/treeview/treeview.js +52 -7
- package/esm2015/controls/upload/dropzonemultiple.js +18 -18
- package/esm2015/controls/upload/dropzonesingle.js +12 -12
- package/esm2015/controls/upload/uploadmultiple.js +14 -14
- package/esm2015/controls/upload/uploadsingle.js +8 -8
- package/esm2015/controls/validation/validationsummary.js +14 -13
- package/esm2015/controls/wizard/wizard.js +24 -17
- package/esm2015/controls/wizard/wizarditem.js +4 -4
- package/esm2015/enums/ButtonRoleType.js +1 -1
- package/esm2015/enums/ControlHeight.js +2 -2
- package/esm2015/enums/IconType.js +2 -2
- package/esm2015/interfaces/ISacConfigurationService.js +1 -1
- package/esm2015/interfaces/ISacFileBrowserService.js +1 -1
- package/esm2015/interfaces/ISacLabelSizes.js +1 -1
- package/esm2015/interfaces/ISacLanguageService.js +1 -1
- package/esm2015/interfaces/ISacLocalisationService.js +1 -1
- package/esm2015/interfaces/ISacUploadEventCompleteState.js +1 -1
- package/esm2015/interfaces/iabstractcontrollabel.js +1 -1
- package/esm2015/interfaces/iconfirmcomponent.js +1 -1
- package/esm2015/interfaces/idatetimecontrol.js +1 -1
- package/esm2015/interfaces/iuploadcontrol.js +1 -1
- package/esm2015/interfaces/treeviewaction.interface.js +1 -1
- package/esm2015/models/languagemodel.js +5 -3
- package/esm2015/public_api.js +3 -2
- package/esm2015/services/index.js +4 -4
- package/esm2015/services/sac-configuration.service.js +7 -1
- package/esm2015/services/sac-filebrowser.service.js +46 -38
- package/esm2015/services/sac-localisation.service.js +11 -7
- package/esm2015/services/sac-validationkey.service.js +148 -1
- package/esm2015/utilities/convertion.js +7 -5
- package/esm2015/utilities/datatypes.js +6 -4
- package/esm2015/utilities/enums.js +9 -8
- package/esm2015/utilities/guid.js +2 -2
- package/esm2015/utilities/interpolation.js +16 -9
- package/esm2015/utilities/popuphelper.js +62 -25
- package/esm2015/utilities/positioncalculator.js +209 -0
- package/esm2015/utilities/positioncalculator.ngfactory.js +7 -0
- package/esm2015/utilities/positionelements.js +108 -0
- package/esm2015/utilities/positionelements.ngfactory.js +7 -0
- package/esm2015/utilities/testingattribute.pipe.js +17 -2
- package/esm2015/validation/email.validator.js +11 -2
- package/esm2015/validation/equals.validator.js +11 -1
- package/esm2015/validation/index.js +1 -1
- package/esm2015/validation/invaliddate.validator.js +11 -2
- package/esm2015/validation/isDateValid.js +11 -10
- package/esm2015/validation/maxdate.validator.js +14 -4
- package/esm2015/validation/maxtime.validator.js +14 -4
- package/esm2015/validation/maxvalue.validator.js +12 -2
- package/esm2015/validation/mindate.validator.js +14 -4
- package/esm2015/validation/minfiles.validator.js +12 -2
- package/esm2015/validation/mintextlength.validator.js +9 -1
- package/esm2015/validation/mintime.validator.js +14 -4
- package/esm2015/validation/minvalue.validator.js +12 -2
- package/esm2015/validation/multilanguagerequired.validator.js +11 -1
- package/esm2015/validation/multilanguagerequiredany.validator.js +11 -1
- package/esm2015/validation/notequals.validator.js +11 -1
- package/esm2015/validation/pattern.validator.js +12 -2
- package/esm2015/validation/required.validator.js +11 -2
- package/esm2015/validation/validation.class.js +84 -101
- package/esm2015/validation/validationerrorcreator.js +12 -1
- package/esm2015/validation/validationerroritem.js +11 -9
- package/fesm2015/simpleangularcontrols-sac-common.js +1823 -1226
- package/fesm2015/simpleangularcontrols-sac-common.js.map +1 -1
- package/interfaces/ISacConfigurationService.d.ts +9 -1
- package/interfaces/ISacFileBrowserService.d.ts +43 -43
- package/interfaces/ISacLabelSizes.d.ts +15 -12
- package/interfaces/ISacLanguageService.d.ts +3 -3
- package/interfaces/ISacLocalisationService.d.ts +2 -2
- package/interfaces/ISacUploadEventCompleteState.d.ts +6 -0
- package/interfaces/iabstractcontrollabel.d.ts +4 -1
- package/interfaces/iconfirmcomponent.d.ts +6 -6
- package/interfaces/idatetimecontrol.d.ts +10 -1
- package/interfaces/treeviewaction.interface.d.ts +9 -0
- package/models/languagemodel.d.ts +9 -9
- package/package.json +1 -1
- package/public_api.d.ts +2 -1
- package/services/index.d.ts +3 -3
- package/services/sac-configuration.service.d.ts +8 -0
- package/services/sac-filebrowser.service.d.ts +78 -70
- package/services/sac-localisation.service.d.ts +11 -7
- package/services/sac-validationkey.service.d.ts +147 -0
- package/simpleangularcontrols-sac-common-10.0.0-rc.30.tgz +0 -0
- package/simpleangularcontrols-sac-common.metadata.json +1 -1
- package/utilities/convertion.d.ts +4 -4
- package/utilities/datatypes.d.ts +3 -3
- package/utilities/enums.d.ts +8 -1
- package/utilities/guid.d.ts +1 -1
- package/utilities/interpolation.d.ts +9 -8
- package/utilities/popuphelper.d.ts +47 -10
- package/utilities/positioncalculator.d.ts +82 -0
- package/utilities/positionelements.d.ts +30 -0
- package/utilities/positionelements.ngfactory.d.ts +1 -0
- package/utilities/testingattribute.pipe.d.ts +16 -1
- package/validation/email.validator.d.ts +7 -0
- package/validation/equals.validator.d.ts +8 -0
- package/validation/invaliddate.validator.d.ts +7 -0
- package/validation/isDateValid.d.ts +5 -2
- package/validation/maxdate.validator.d.ts +8 -0
- package/validation/maxtime.validator.d.ts +8 -0
- package/validation/maxvalue.validator.d.ts +8 -0
- package/validation/mindate.validator.d.ts +8 -0
- package/validation/minfiles.validator.d.ts +8 -0
- package/validation/mintextlength.validator.d.ts +8 -0
- package/validation/mintime.validator.d.ts +8 -0
- package/validation/minvalue.validator.d.ts +8 -0
- package/validation/multilanguagerequired.validator.d.ts +9 -1
- package/validation/multilanguagerequiredany.validator.d.ts +9 -1
- package/validation/notequals.validator.d.ts +8 -0
- package/validation/pattern.validator.d.ts +8 -0
- package/validation/required.validator.d.ts +7 -0
- package/validation/validation.class.d.ts +83 -100
- package/validation/validationerrorcreator.d.ts +9 -0
- package/validation/validationerroritem.d.ts +16 -16
- package/esm2015/utilities/positioning.js +0 -301
- package/esm2015/utilities/positioning.ngfactory.js +0 -7
- package/simpleangularcontrols-sac-common-10.0.0-rc.29.tgz +0 -0
- package/utilities/positioning.d.ts +0 -82
- /package/utilities/{positioning.ngfactory.d.ts → positioncalculator.ngfactory.d.ts} +0 -0
|
@@ -1,10 +1,19 @@
|
|
|
1
|
-
import moment from 'moment';
|
|
2
|
-
import { CreateValidationError } from './validationerrorcreator';
|
|
3
1
|
import { isDateValid } from './isDateValid';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
import moment from 'moment';
|
|
4
|
+
// #region Exported Functions
|
|
5
|
+
/**
|
|
6
|
+
* Returns a validator that checks if the control time is <= maxTime.
|
|
7
|
+
*
|
|
8
|
+
* @param maxTime Maximum allowed time.
|
|
9
|
+
* @param validationMessage Message shown when time is too late.
|
|
10
|
+
* @param validationMessageSummary Summary message shown when time is too late.
|
|
11
|
+
* @returns Validator function for maximum time validation.
|
|
12
|
+
*/
|
|
4
13
|
export function maxTimeValidator(maxTime, validationMessage, validationMessageSummary) {
|
|
5
14
|
return (control) => {
|
|
6
15
|
const ctl = control;
|
|
7
|
-
//
|
|
16
|
+
// Cancel check if no valid date
|
|
8
17
|
if (!isDateValid(ctl.value, ctl.datetimeformatstring) || maxTime === null) {
|
|
9
18
|
return null;
|
|
10
19
|
}
|
|
@@ -18,4 +27,5 @@ export function maxTimeValidator(maxTime, validationMessage, validationMessageSu
|
|
|
18
27
|
}
|
|
19
28
|
};
|
|
20
29
|
}
|
|
21
|
-
|
|
30
|
+
// #endregion Exported Functions
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4dGltZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NpbXBsZWFuZ3VsYXJjb250cm9scy9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJ2YWxpZGF0aW9uL21heHRpbWUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFakUsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLDZCQUE2QjtBQUU3Qjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM1QixPQUFhLEVBQ2IsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLEdBQUcsR0FBRyxPQUFzQyxDQUFDO1FBRW5ELGdDQUFnQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtZQUN2RSxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRTtZQUMzQyxNQUFNLFVBQVUsR0FBcUIsSUFBSSxHQUFHLEVBQWUsQ0FBQztZQUM1RCxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7WUFFNUUsT0FBTyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDcEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURhdGVUaW1lQ29udHJvbCB9IGZyb20gJy4uL2ludGVyZmFjZXMvaWRhdGV0aW1lY29udHJvbCc7XG5pbXBvcnQgeyBpc0RhdGVWYWxpZCB9IGZyb20gJy4vaXNEYXRlVmFsaWQnO1xuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBpZiB0aGUgY29udHJvbCB0aW1lIGlzIDw9IG1heFRpbWUuXG4gKlxuICogQHBhcmFtIG1heFRpbWUgTWF4aW11bSBhbGxvd2VkIHRpbWUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIHRpbWUgaXMgdG9vIGxhdGUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5IFN1bW1hcnkgbWVzc2FnZSBzaG93biB3aGVuIHRpbWUgaXMgdG9vIGxhdGUuXG4gKiBAcmV0dXJucyBWYWxpZGF0b3IgZnVuY3Rpb24gZm9yIG1heGltdW0gdGltZSB2YWxpZGF0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWF4VGltZVZhbGlkYXRvcihcbiAgICBtYXhUaW1lOiBEYXRlLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcsXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5OiBzdHJpbmdcbik6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICAgICAgY29uc3QgY3RsID0gY29udHJvbCBhcyB1bmtub3duIGFzIElEYXRlVGltZUNvbnRyb2w7XG5cbiAgICAgICAgLy8gQ2FuY2VsIGNoZWNrIGlmIG5vIHZhbGlkIGRhdGVcbiAgICAgICAgaWYgKCFpc0RhdGVWYWxpZChjdGwudmFsdWUsIGN0bC5kYXRldGltZWZvcm1hdHN0cmluZykgfHwgbWF4VGltZSA9PT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoY3RsLnZhbHVlICE9PSBudWxsICYmIG1heFRpbWUgPCBjdGwudmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmFtZXRlcnM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuICAgICAgICAgICAgcGFyYW1ldGVycy5zZXQoJ01BWFRJTUUnLCBtb21lbnQobWF4VGltZSkuZm9ybWF0KGN0bC5kYXRldGltZWZvcm1hdHN0cmluZykpO1xuXG4gICAgICAgICAgICByZXR1cm4gQ3JlYXRlVmFsaWRhdGlvbkVycm9yKCd0aW1lbWF4JywgdmFsaWRhdGlvbk1lc3NhZ2UsIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSwgcGFyYW1ldGVycyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbi8vICNlbmRyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG4iXX0=
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import { Validators, } from '@angular/forms';
|
|
2
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
// #region Exported Functions
|
|
4
|
+
/**
|
|
5
|
+
* Returns a validator that checks if the control value is <= maxvalue.
|
|
6
|
+
*
|
|
7
|
+
* @param maxvalue Maximum allowed numeric value.
|
|
8
|
+
* @param validationMessage Message shown when value is too large.
|
|
9
|
+
* @param validationMessageSummary Summary message shown when value is too large.
|
|
10
|
+
* @returns Validator function for maximum value validation.
|
|
11
|
+
*/
|
|
3
12
|
export function maxValueValidator(maxvalue, validationMessage, validationMessageSummary) {
|
|
4
13
|
return (control) => {
|
|
5
14
|
const validator = Validators.max(maxvalue);
|
|
@@ -13,4 +22,5 @@ export function maxValueValidator(maxvalue, validationMessage, validationMessage
|
|
|
13
22
|
}
|
|
14
23
|
};
|
|
15
24
|
}
|
|
16
|
-
|
|
25
|
+
// #endregion Exported Functions
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4dmFsdWUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL3NpbXBsZWFuZ3VsYXJjb250cm9scy9zaW1wbGVhbmd1bGFyY29udHJvbHMvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1jb21tb24vc3JjLyIsInNvdXJjZXMiOlsidmFsaWRhdGlvbi9tYXh2YWx1ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFrRCxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1Riw2QkFBNkI7QUFFN0I7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FDN0IsUUFBZ0IsRUFDaEIsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLFNBQVMsR0FBZ0IsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RCxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDN0IsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFckMsT0FBTyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDckc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBpZiB0aGUgY29udHJvbCB2YWx1ZSBpcyA8PSBtYXh2YWx1ZS5cbiAqXG4gKiBAcGFyYW0gbWF4dmFsdWUgTWF4aW11bSBhbGxvd2VkIG51bWVyaWMgdmFsdWUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIHZhbHVlIGlzIHRvbyBsYXJnZS5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnkgU3VtbWFyeSBtZXNzYWdlIHNob3duIHdoZW4gdmFsdWUgaXMgdG9vIGxhcmdlLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBtYXhpbXVtIHZhbHVlIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYXhWYWx1ZVZhbGlkYXRvcihcbiAgICBtYXh2YWx1ZTogbnVtYmVyLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcsXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5OiBzdHJpbmdcbik6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IFZhbGlkYXRvcnMubWF4KG1heHZhbHVlKTtcblxuICAgICAgICBpZiAodmFsaWRhdG9yKGNvbnRyb2wpICE9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcbiAgICAgICAgICAgIHBhcmFtZXRlcnMuc2V0KCdNQVhWQUxVRScsIG1heHZhbHVlKTtcblxuICAgICAgICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcignbWF4dmFsdWUnLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5LCBwYXJhbWV0ZXJzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,10 +1,19 @@
|
|
|
1
|
-
import moment from 'moment';
|
|
2
|
-
import { CreateValidationError } from './validationerrorcreator';
|
|
3
1
|
import { isDateValid } from './isDateValid';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
import moment from 'moment';
|
|
4
|
+
// #region Exported Functions
|
|
5
|
+
/**
|
|
6
|
+
* Returns a validator that checks if the control date is >= minDate.
|
|
7
|
+
*
|
|
8
|
+
* @param minDate Minimum allowed date.
|
|
9
|
+
* @param validationMessage Message shown when date is too early.
|
|
10
|
+
* @param validationMessageSummary Summary message shown when date is too early.
|
|
11
|
+
* @returns Validator function for minimum date validation.
|
|
12
|
+
*/
|
|
4
13
|
export function minDateValidator(minDate, validationMessage, validationMessageSummary) {
|
|
5
14
|
return (control) => {
|
|
6
15
|
const ctl = control;
|
|
7
|
-
//
|
|
16
|
+
// Cancel check if no valid date
|
|
8
17
|
if (!isDateValid(ctl.value, ctl.datetimeformatstring) || minDate === null) {
|
|
9
18
|
return null;
|
|
10
19
|
}
|
|
@@ -18,4 +27,5 @@ export function minDateValidator(minDate, validationMessage, validationMessageSu
|
|
|
18
27
|
}
|
|
19
28
|
};
|
|
20
29
|
}
|
|
21
|
-
|
|
30
|
+
// #endregion Exported Functions
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluZGF0ZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NpbXBsZWFuZ3VsYXJjb250cm9scy9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJ2YWxpZGF0aW9uL21pbmRhdGUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFakUsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLDZCQUE2QjtBQUU3Qjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM1QixPQUFhLEVBQ2IsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLEdBQUcsR0FBRyxPQUFzQyxDQUFDO1FBRW5ELGdDQUFnQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtZQUN2RSxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRTtZQUMzQyxNQUFNLFVBQVUsR0FBcUIsSUFBSSxHQUFHLEVBQWUsQ0FBQztZQUM1RCxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7WUFFNUUsT0FBTyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDcEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURhdGVUaW1lQ29udHJvbCB9IGZyb20gJy4uL2ludGVyZmFjZXMvaWRhdGV0aW1lY29udHJvbCc7XG5pbXBvcnQgeyBpc0RhdGVWYWxpZCB9IGZyb20gJy4vaXNEYXRlVmFsaWQnO1xuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBpZiB0aGUgY29udHJvbCBkYXRlIGlzID49IG1pbkRhdGUuXG4gKlxuICogQHBhcmFtIG1pbkRhdGUgTWluaW11bSBhbGxvd2VkIGRhdGUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIGRhdGUgaXMgdG9vIGVhcmx5LlxuICogQHBhcmFtIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSBTdW1tYXJ5IG1lc3NhZ2Ugc2hvd24gd2hlbiBkYXRlIGlzIHRvbyBlYXJseS5cbiAqIEByZXR1cm5zIFZhbGlkYXRvciBmdW5jdGlvbiBmb3IgbWluaW11bSBkYXRlIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaW5EYXRlVmFsaWRhdG9yKFxuICAgIG1pbkRhdGU6IERhdGUsXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcbiAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xuKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBjb25zdCBjdGwgPSBjb250cm9sIGFzIHVua25vd24gYXMgSURhdGVUaW1lQ29udHJvbDtcblxuICAgICAgICAvLyBDYW5jZWwgY2hlY2sgaWYgbm8gdmFsaWQgZGF0ZVxuICAgICAgICBpZiAoIWlzRGF0ZVZhbGlkKGN0bC52YWx1ZSwgY3RsLmRhdGV0aW1lZm9ybWF0c3RyaW5nKSB8fCBtaW5EYXRlID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjdGwudmFsdWUgIT09IG51bGwgJiYgbWluRGF0ZSA+IGN0bC52YWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1ldGVyczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnNldCgnTUlOREFURScsIG1vbWVudChtaW5EYXRlKS5mb3JtYXQoY3RsLmRhdGV0aW1lZm9ybWF0c3RyaW5nKSk7XG5cbiAgICAgICAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoJ2RhdGVtaW4nLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5LCBwYXJhbWV0ZXJzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,8 +1,17 @@
|
|
|
1
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
// #region Exported Functions
|
|
3
|
+
/**
|
|
4
|
+
* Returns a validator that checks if the number of uploaded files is >= minFiles.
|
|
5
|
+
*
|
|
6
|
+
* @param minFiles Minimum number of files required.
|
|
7
|
+
* @param validationMessage Message shown when too few files are uploaded.
|
|
8
|
+
* @param validationMessageSummary Summary message shown when too few files are uploaded.
|
|
9
|
+
* @returns Validator function for minimum files validation.
|
|
10
|
+
*/
|
|
2
11
|
export function minFilesValidator(minFiles, validationMessage, validationMessageSummary) {
|
|
3
12
|
return (control) => {
|
|
4
13
|
const ctl = control;
|
|
5
|
-
//
|
|
14
|
+
// Cancel check if minimum files requirement is disabled
|
|
6
15
|
if (!minFiles || minFiles === 0) {
|
|
7
16
|
return null;
|
|
8
17
|
}
|
|
@@ -16,4 +25,5 @@ export function minFilesValidator(minFiles, validationMessage, validationMessage
|
|
|
16
25
|
}
|
|
17
26
|
};
|
|
18
27
|
}
|
|
19
|
-
|
|
28
|
+
// #endregion Exported Functions
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluZmlsZXMudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL3NpbXBsZWFuZ3VsYXJjb250cm9scy9zaW1wbGVhbmd1bGFyY29udHJvbHMvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1jb21tb24vc3JjLyIsInNvdXJjZXMiOlsidmFsaWRhdGlvbi9taW5maWxlcy52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHakUsNkJBQTZCO0FBRTdCOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQzdCLFFBQWdCLEVBQ2hCLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDekQsTUFBTSxHQUFHLEdBQUcsT0FBb0MsQ0FBQztRQUVqRCx3REFBd0Q7UUFDeEQsSUFBSSxDQUFDLFFBQVEsSUFBSSxRQUFRLEtBQUssQ0FBQyxFQUFFO1lBQzdCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJLEdBQUcsQ0FBQyxpQkFBaUIsS0FBSyxJQUFJLElBQUksUUFBUSxHQUFHLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRTtZQUNwRSxNQUFNLFVBQVUsR0FBcUIsSUFBSSxHQUFHLEVBQWUsQ0FBQztZQUM1RCxVQUFVLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztZQUVyQyxPQUFPLHFCQUFxQixDQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUNyRzthQUFNO1lBQ0gsT0FBTyxJQUFJLENBQUM7U0FDZjtJQUNMLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVXBsb2FkQ29udHJvbCB9IGZyb20gJy4uL2ludGVyZmFjZXMvaXVwbG9hZGNvbnRyb2wnO1xuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBpZiB0aGUgbnVtYmVyIG9mIHVwbG9hZGVkIGZpbGVzIGlzID49IG1pbkZpbGVzLlxuICpcbiAqIEBwYXJhbSBtaW5GaWxlcyBNaW5pbXVtIG51bWJlciBvZiBmaWxlcyByZXF1aXJlZC5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZSBNZXNzYWdlIHNob3duIHdoZW4gdG9vIGZldyBmaWxlcyBhcmUgdXBsb2FkZWQuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5IFN1bW1hcnkgbWVzc2FnZSBzaG93biB3aGVuIHRvbyBmZXcgZmlsZXMgYXJlIHVwbG9hZGVkLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBtaW5pbXVtIGZpbGVzIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaW5GaWxlc1ZhbGlkYXRvcihcbiAgICBtaW5GaWxlczogbnVtYmVyLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcsXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5OiBzdHJpbmdcbik6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICAgICAgY29uc3QgY3RsID0gY29udHJvbCBhcyB1bmtub3duIGFzIElVcGxvYWRDb250cm9sO1xuXG4gICAgICAgIC8vIENhbmNlbCBjaGVjayBpZiBtaW5pbXVtIGZpbGVzIHJlcXVpcmVtZW50IGlzIGRpc2FibGVkXG4gICAgICAgIGlmICghbWluRmlsZXMgfHwgbWluRmlsZXMgPT09IDApIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGN0bC51cGxvYWRlZGZpbGVjb3VudCAhPT0gbnVsbCAmJiBtaW5GaWxlcyA+IGN0bC51cGxvYWRlZGZpbGVjb3VudCkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1ldGVyczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnNldCgnTUlORklMRVMnLCBtaW5GaWxlcyk7XG5cbiAgICAgICAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoJ21pbmZpbGVzJywgdmFsaWRhdGlvbk1lc3NhZ2UsIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSwgcGFyYW1ldGVycyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbi8vICNlbmRyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG4iXX0=
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
2
|
import { Validators } from '@angular/forms';
|
|
3
3
|
// #region Exported Functions
|
|
4
|
+
/**
|
|
5
|
+
* Returns a validator that checks if the text length is >= mintextlength.
|
|
6
|
+
*
|
|
7
|
+
* @param mintextlength Minimum text length required.
|
|
8
|
+
* @param validationMessage Message shown when text is too short.
|
|
9
|
+
* @param validationMessageSummary Summary message shown when text is too short.
|
|
10
|
+
* @returns Validator function for minimum text length validation.
|
|
11
|
+
*/
|
|
4
12
|
export function minTextLengthValidator(mintextlength, validationMessage, validationMessageSummary) {
|
|
5
13
|
return (control) => {
|
|
6
14
|
const validator = Validators.minLength(mintextlength);
|
|
@@ -20,4 +28,4 @@ export function minTextLengthValidator(mintextlength, validationMessage, validat
|
|
|
20
28
|
};
|
|
21
29
|
}
|
|
22
30
|
// #endregion Exported Functions
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludGV4dGxlbmd0aC52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NpbXBsZWFuZ3VsYXJjb250cm9scy9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJ2YWxpZGF0aW9uL21pbnRleHRsZW5ndGgudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBa0QsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUYsNkJBQTZCO0FBRTdCOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQ2xDLGFBQXFCLEVBQ3JCLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDekQsTUFBTSxTQUFTLEdBQWdCLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFbkUsSUFDSSxhQUFhLEtBQUssSUFBSTtZQUN0QixhQUFhLEtBQUssU0FBUztZQUMzQixPQUFPLENBQUMsS0FBSyxLQUFLLEVBQUU7WUFDcEIsT0FBTyxDQUFDLEtBQUssS0FBSyxTQUFTO1lBQzNCLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSTtZQUNyQixTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxFQUM1QjtZQUNFLE1BQU0sVUFBVSxHQUFxQixJQUFJLEdBQUcsRUFBZSxDQUFDO1lBQzVELFVBQVUsQ0FBQyxHQUFHLENBQUMsZUFBZSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBRS9DLE9BQU8scUJBQXFCLENBQUMsZUFBZSxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQzFHO2FBQU07WUFDSCxPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVELGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWF0ZVZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4vdmFsaWRhdGlvbmVycm9yY3JlYXRvcic7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyAjcmVnaW9uIEV4cG9ydGVkIEZ1bmN0aW9uc1xuXG4vKipcbiAqIFJldHVybnMgYSB2YWxpZGF0b3IgdGhhdCBjaGVja3MgaWYgdGhlIHRleHQgbGVuZ3RoIGlzID49IG1pbnRleHRsZW5ndGguXG4gKlxuICogQHBhcmFtIG1pbnRleHRsZW5ndGggTWluaW11bSB0ZXh0IGxlbmd0aCByZXF1aXJlZC5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZSBNZXNzYWdlIHNob3duIHdoZW4gdGV4dCBpcyB0b28gc2hvcnQuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5IFN1bW1hcnkgbWVzc2FnZSBzaG93biB3aGVuIHRleHQgaXMgdG9vIHNob3J0LlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBtaW5pbXVtIHRleHQgbGVuZ3RoIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaW5UZXh0TGVuZ3RoVmFsaWRhdG9yKFxuICAgIG1pbnRleHRsZW5ndGg6IG51bWJlcixcbiAgICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nXG4pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcjogVmFsaWRhdG9yRm4gPSBWYWxpZGF0b3JzLm1pbkxlbmd0aChtaW50ZXh0bGVuZ3RoKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBtaW50ZXh0bGVuZ3RoICE9PSBudWxsICYmXG4gICAgICAgICAgICBtaW50ZXh0bGVuZ3RoICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGNvbnRyb2wudmFsdWUgIT09ICcnICYmXG4gICAgICAgICAgICBjb250cm9sLnZhbHVlICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIGNvbnRyb2wudmFsdWUgIT0gbnVsbCAmJlxuICAgICAgICAgICAgdmFsaWRhdG9yKGNvbnRyb2wpICE9IG51bGxcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcbiAgICAgICAgICAgIHBhcmFtZXRlcnMuc2V0KCdNSU5URVhUTEVOR1RIJywgbWludGV4dGxlbmd0aCk7XG5cbiAgICAgICAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoJ21pbnRleHRsZW5ndGgnLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5LCBwYXJhbWV0ZXJzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,10 +1,19 @@
|
|
|
1
|
-
import moment from 'moment';
|
|
2
|
-
import { CreateValidationError } from './validationerrorcreator';
|
|
3
1
|
import { isDateValid } from './isDateValid';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
import moment from 'moment';
|
|
4
|
+
// #region Exported Functions
|
|
5
|
+
/**
|
|
6
|
+
* Returns a validator that checks if the control time is >= minTime.
|
|
7
|
+
*
|
|
8
|
+
* @param minTime Minimum allowed time.
|
|
9
|
+
* @param validationMessage Message shown when time is too early.
|
|
10
|
+
* @param validationMessageSummary Summary message shown when time is too early.
|
|
11
|
+
* @returns Validator function for minimum time validation.
|
|
12
|
+
*/
|
|
4
13
|
export function minTimeValidator(minTime, validationMessage, validationMessageSummary) {
|
|
5
14
|
return (control) => {
|
|
6
15
|
const ctl = control;
|
|
7
|
-
//
|
|
16
|
+
// Cancel check if no valid date
|
|
8
17
|
if (!isDateValid(ctl.value, ctl.datetimeformatstring) || minTime === null) {
|
|
9
18
|
return null;
|
|
10
19
|
}
|
|
@@ -18,4 +27,5 @@ export function minTimeValidator(minTime, validationMessage, validationMessageSu
|
|
|
18
27
|
}
|
|
19
28
|
};
|
|
20
29
|
}
|
|
21
|
-
|
|
30
|
+
// #endregion Exported Functions
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludGltZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NpbXBsZWFuZ3VsYXJjb250cm9scy9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJ2YWxpZGF0aW9uL21pbnRpbWUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFakUsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCLDZCQUE2QjtBQUU3Qjs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM1QixPQUFhLEVBQ2IsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLEdBQUcsR0FBRyxPQUFzQyxDQUFDO1FBRW5ELGdDQUFnQztRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtZQUN2RSxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxHQUFHLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxPQUFPLEdBQUcsR0FBRyxDQUFDLEtBQUssRUFBRTtZQUMzQyxNQUFNLFVBQVUsR0FBcUIsSUFBSSxHQUFHLEVBQWUsQ0FBQztZQUM1RCxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUM7WUFFNUUsT0FBTyxxQkFBcUIsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDcEc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSURhdGVUaW1lQ29udHJvbCB9IGZyb20gJy4uL2ludGVyZmFjZXMvaWRhdGV0aW1lY29udHJvbCc7XG5pbXBvcnQgeyBpc0RhdGVWYWxpZCB9IGZyb20gJy4vaXNEYXRlVmFsaWQnO1xuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBpZiB0aGUgY29udHJvbCB0aW1lIGlzID49IG1pblRpbWUuXG4gKlxuICogQHBhcmFtIG1pblRpbWUgTWluaW11bSBhbGxvd2VkIHRpbWUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIHRpbWUgaXMgdG9vIGVhcmx5LlxuICogQHBhcmFtIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSBTdW1tYXJ5IG1lc3NhZ2Ugc2hvd24gd2hlbiB0aW1lIGlzIHRvbyBlYXJseS5cbiAqIEByZXR1cm5zIFZhbGlkYXRvciBmdW5jdGlvbiBmb3IgbWluaW11bSB0aW1lIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaW5UaW1lVmFsaWRhdG9yKFxuICAgIG1pblRpbWU6IERhdGUsXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcbiAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xuKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBjb25zdCBjdGwgPSBjb250cm9sIGFzIHVua25vd24gYXMgSURhdGVUaW1lQ29udHJvbDtcblxuICAgICAgICAvLyBDYW5jZWwgY2hlY2sgaWYgbm8gdmFsaWQgZGF0ZVxuICAgICAgICBpZiAoIWlzRGF0ZVZhbGlkKGN0bC52YWx1ZSwgY3RsLmRhdGV0aW1lZm9ybWF0c3RyaW5nKSB8fCBtaW5UaW1lID09PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjdGwudmFsdWUgIT09IG51bGwgJiYgbWluVGltZSA+IGN0bC52YWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1ldGVyczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnNldCgnTUlOVElNRScsIG1vbWVudChtaW5UaW1lKS5mb3JtYXQoY3RsLmRhdGV0aW1lZm9ybWF0c3RyaW5nKSk7XG5cbiAgICAgICAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoJ3RpbWVtaW4nLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5LCBwYXJhbWV0ZXJzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import { Validators, } from '@angular/forms';
|
|
2
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
// #region Exported Functions
|
|
4
|
+
/**
|
|
5
|
+
* Returns a validator that checks if the control value is >= minvalue.
|
|
6
|
+
*
|
|
7
|
+
* @param minvalue Minimum allowed numeric value.
|
|
8
|
+
* @param validationMessage Message shown when value is too small.
|
|
9
|
+
* @param validationMessageSummary Summary message shown when value is too small.
|
|
10
|
+
* @returns Validator function for minimum value validation.
|
|
11
|
+
*/
|
|
3
12
|
export function minValueValidator(minvalue, validationMessage, validationMessageSummary) {
|
|
4
13
|
return (control) => {
|
|
5
14
|
const validator = Validators.min(minvalue);
|
|
@@ -13,4 +22,5 @@ export function minValueValidator(minvalue, validationMessage, validationMessage
|
|
|
13
22
|
}
|
|
14
23
|
};
|
|
15
24
|
}
|
|
16
|
-
|
|
25
|
+
// #endregion Exported Functions
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludmFsdWUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL3NpbXBsZWFuZ3VsYXJjb250cm9scy9zaW1wbGVhbmd1bGFyY29udHJvbHMvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1jb21tb24vc3JjLyIsInNvdXJjZXMiOlsidmFsaWRhdGlvbi9taW52YWx1ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFrRCxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1Riw2QkFBNkI7QUFFN0I7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxpQkFBaUIsQ0FDN0IsUUFBZ0IsRUFDaEIsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxNQUFNLFNBQVMsR0FBZ0IsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RCxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDN0IsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFckMsT0FBTyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDckc7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBpZiB0aGUgY29udHJvbCB2YWx1ZSBpcyA+PSBtaW52YWx1ZS5cbiAqXG4gKiBAcGFyYW0gbWludmFsdWUgTWluaW11bSBhbGxvd2VkIG51bWVyaWMgdmFsdWUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIHZhbHVlIGlzIHRvbyBzbWFsbC5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnkgU3VtbWFyeSBtZXNzYWdlIHNob3duIHdoZW4gdmFsdWUgaXMgdG9vIHNtYWxsLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBtaW5pbXVtIHZhbHVlIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtaW5WYWx1ZVZhbGlkYXRvcihcbiAgICBtaW52YWx1ZTogbnVtYmVyLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcsXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5OiBzdHJpbmdcbik6IFZhbGlkYXRvckZuIHtcbiAgICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcbiAgICAgICAgY29uc3QgdmFsaWRhdG9yOiBWYWxpZGF0b3JGbiA9IFZhbGlkYXRvcnMubWluKG1pbnZhbHVlKTtcblxuICAgICAgICBpZiAodmFsaWRhdG9yKGNvbnRyb2wpICE9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhbWV0ZXJzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcbiAgICAgICAgICAgIHBhcmFtZXRlcnMuc2V0KCdNSU5WQUxVRScsIG1pbnZhbHVlKTtcblxuICAgICAgICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcignbWludmFsdWUnLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5LCBwYXJhbWV0ZXJzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
// #region Exported Functions
|
|
3
|
+
/**
|
|
4
|
+
* Returns a validator that checks all language values are provided.
|
|
5
|
+
*
|
|
6
|
+
* @param languages Languages to validate in the form value object.
|
|
7
|
+
* @param validationMessage Message shown when required language fields are missing.
|
|
8
|
+
* @param validationMessageSummary Summary message shown when required language fields are missing.
|
|
9
|
+
* @returns Validator function for multilanguage required validation.
|
|
10
|
+
*/
|
|
2
11
|
export function multilanguageRequiredValidator(languages, validationMessage, validationMessageSummary) {
|
|
3
12
|
return (control) => {
|
|
4
13
|
let missing = false;
|
|
@@ -19,4 +28,5 @@ export function multilanguageRequiredValidator(languages, validationMessage, val
|
|
|
19
28
|
}
|
|
20
29
|
};
|
|
21
30
|
}
|
|
22
|
-
|
|
31
|
+
// #endregion Exported Functions
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsYW5ndWFnZXJlcXVpcmVkLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9zaW1wbGVhbmd1bGFyY29udHJvbHMvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbInZhbGlkYXRpb24vbXVsdGlsYW5ndWFnZXJlcXVpcmVkLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdqRSw2QkFBNkI7QUFFN0I7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSw4QkFBOEIsQ0FDMUMsU0FBMEIsRUFDMUIsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFFcEIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQW1CLEVBQUUsRUFBRTtZQUN0QyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUU7Z0JBQ2YsSUFDSSxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxTQUFTO29CQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJO29CQUNwQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQ3BDO29CQUNFLE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2xCO2FBQ0o7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksT0FBTyxFQUFFO1lBQ1QsT0FBTyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztTQUN6RjthQUFNO1lBQ0gsT0FBTyxJQUFJLENBQUM7U0FDZjtJQUNMLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMYW5ndWFnZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2xhbmd1YWdlbW9kZWwnO1xuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGNoZWNrcyBhbGwgbGFuZ3VhZ2UgdmFsdWVzIGFyZSBwcm92aWRlZC5cbiAqXG4gKiBAcGFyYW0gbGFuZ3VhZ2VzIExhbmd1YWdlcyB0byB2YWxpZGF0ZSBpbiB0aGUgZm9ybSB2YWx1ZSBvYmplY3QuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIHJlcXVpcmVkIGxhbmd1YWdlIGZpZWxkcyBhcmUgbWlzc2luZy5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnkgU3VtbWFyeSBtZXNzYWdlIHNob3duIHdoZW4gcmVxdWlyZWQgbGFuZ3VhZ2UgZmllbGRzIGFyZSBtaXNzaW5nLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBtdWx0aWxhbmd1YWdlIHJlcXVpcmVkIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtdWx0aWxhbmd1YWdlUmVxdWlyZWRWYWxpZGF0b3IoXG4gICAgbGFuZ3VhZ2VzOiBMYW5ndWFnZU1vZGVsW10sXG4gICAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcbiAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xuKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBsZXQgbWlzc2luZyA9IGZhbHNlO1xuXG4gICAgICAgIGxhbmd1YWdlcy5mb3JFYWNoKChpdGVtOiBMYW5ndWFnZU1vZGVsKSA9PiB7XG4gICAgICAgICAgICBpZiAoY29udHJvbC52YWx1ZSkge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbC52YWx1ZVtpdGVtLklzb0NvZGVdID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbC52YWx1ZVtpdGVtLklzb0NvZGVdID09PSBudWxsIHx8XG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2wudmFsdWVbaXRlbS5Jc29Db2RlXSA9PT0gJydcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgbWlzc2luZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAobWlzc2luZykge1xuICAgICAgICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcigncmVxdWlyZWQnLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
// #region Exported Functions
|
|
3
|
+
/**
|
|
4
|
+
* Returns a validator that checks at least one language value is provided.
|
|
5
|
+
*
|
|
6
|
+
* @param languages Languages to validate in the form value object.
|
|
7
|
+
* @param validationMessage Message shown when no language value is provided.
|
|
8
|
+
* @param validationMessageSummary Summary message shown when no language value is provided.
|
|
9
|
+
* @returns Validator function for multilanguage-any required validation.
|
|
10
|
+
*/
|
|
2
11
|
export function multilanguageRequiredAnyValidator(languages, validationMessage, validationMessageSummary) {
|
|
3
12
|
return (control) => {
|
|
4
13
|
let missing = false;
|
|
@@ -19,4 +28,5 @@ export function multilanguageRequiredAnyValidator(languages, validationMessage,
|
|
|
19
28
|
}
|
|
20
29
|
};
|
|
21
30
|
}
|
|
22
|
-
|
|
31
|
+
// #endregion Exported Functions
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlsYW5ndWFnZXJlcXVpcmVkYW55LnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9zaW1wbGVhbmd1bGFyY29udHJvbHMvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbInZhbGlkYXRpb24vbXVsdGlsYW5ndWFnZXJlcXVpcmVkYW55LnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdqRSw2QkFBNkI7QUFFN0I7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxpQ0FBaUMsQ0FDN0MsU0FBMEIsRUFDMUIsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxJQUFJLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFFcEIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQW1CLEVBQUUsRUFBRTtZQUN0QyxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUU7Z0JBQ2YsSUFDSSxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxTQUFTO29CQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJO29CQUNwQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQ3BDO29CQUNFLE9BQU8sR0FBRyxJQUFJLENBQUM7aUJBQ2xCO2FBQ0o7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDVixPQUFPLHFCQUFxQixDQUFDLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDO1NBQzVGO2FBQU07WUFDSCxPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVELGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExhbmd1YWdlTW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvbGFuZ3VhZ2Vtb2RlbCc7XG5pbXBvcnQgeyBDcmVhdGVWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL3ZhbGlkYXRpb25lcnJvcmNyZWF0b3InO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLy8gI3JlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcblxuLyoqXG4gKiBSZXR1cm5zIGEgdmFsaWRhdG9yIHRoYXQgY2hlY2tzIGF0IGxlYXN0IG9uZSBsYW5ndWFnZSB2YWx1ZSBpcyBwcm92aWRlZC5cbiAqXG4gKiBAcGFyYW0gbGFuZ3VhZ2VzIExhbmd1YWdlcyB0byB2YWxpZGF0ZSBpbiB0aGUgZm9ybSB2YWx1ZSBvYmplY3QuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIG5vIGxhbmd1YWdlIHZhbHVlIGlzIHByb3ZpZGVkLlxuICogQHBhcmFtIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSBTdW1tYXJ5IG1lc3NhZ2Ugc2hvd24gd2hlbiBubyBsYW5ndWFnZSB2YWx1ZSBpcyBwcm92aWRlZC5cbiAqIEByZXR1cm5zIFZhbGlkYXRvciBmdW5jdGlvbiBmb3IgbXVsdGlsYW5ndWFnZS1hbnkgcmVxdWlyZWQgdmFsaWRhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG11bHRpbGFuZ3VhZ2VSZXF1aXJlZEFueVZhbGlkYXRvcihcbiAgICBsYW5ndWFnZXM6IExhbmd1YWdlTW9kZWxbXSxcbiAgICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nXG4pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgIGxldCBtaXNzaW5nID0gZmFsc2U7XG5cbiAgICAgICAgbGFuZ3VhZ2VzLmZvckVhY2goKGl0ZW06IExhbmd1YWdlTW9kZWwpID0+IHtcbiAgICAgICAgICAgIGlmIChjb250cm9sLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICBjb250cm9sLnZhbHVlW2l0ZW0uSXNvQ29kZV0gIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgICBjb250cm9sLnZhbHVlW2l0ZW0uSXNvQ29kZV0gIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICAgICAgY29udHJvbC52YWx1ZVtpdGVtLklzb0NvZGVdICE9PSAnJ1xuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICBtaXNzaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICghbWlzc2luZykge1xuICAgICAgICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcigncmVxdWlyZWRhbnknLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
// #region Exported Functions
|
|
3
|
+
/**
|
|
4
|
+
* Returns a validator that checks the control value is different from invalidValue.
|
|
5
|
+
*
|
|
6
|
+
* @param invalidValue Value that is not allowed.
|
|
7
|
+
* @param validationMessage Message shown when control value matches invalid value.
|
|
8
|
+
* @param validationMessageSummary Summary message shown when control value matches invalid value.
|
|
9
|
+
* @returns Validator function for not-equals validation.
|
|
10
|
+
*/
|
|
2
11
|
export function notEqualsValueValidator(invalidValue, validationMessage, validationMessageSummary) {
|
|
3
12
|
return (control) => {
|
|
4
13
|
if (control.value === invalidValue) {
|
|
@@ -11,4 +20,5 @@ export function notEqualsValueValidator(invalidValue, validationMessage, validat
|
|
|
11
20
|
}
|
|
12
21
|
};
|
|
13
22
|
}
|
|
14
|
-
|
|
23
|
+
// #endregion Exported Functions
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90ZXF1YWxzLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIvaG9tZS9ydW5uZXIvd29yay9zaW1wbGVhbmd1bGFyY29udHJvbHMvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbInZhbGlkYXRpb24vbm90ZXF1YWxzLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUdqRSw2QkFBNkI7QUFFN0I7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSx1QkFBdUIsQ0FDbkMsWUFBaUIsRUFDakIsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxJQUFJLE9BQU8sQ0FBQyxLQUFLLEtBQUssWUFBWSxFQUFFO1lBQ2hDLE1BQU0sVUFBVSxHQUFxQixJQUFJLEdBQUcsRUFBZSxDQUFDO1lBQzVELFVBQVUsQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDO1lBRTVDLE9BQU8scUJBQXFCLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQ3RHO2FBQU07WUFDSCxPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQyxDQUFDO0FBQ04sQ0FBQztBQUVELGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyZWF0ZVZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4vdmFsaWRhdGlvbmVycm9yY3JlYXRvcic7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyAjcmVnaW9uIEV4cG9ydGVkIEZ1bmN0aW9uc1xuXG4vKipcbiAqIFJldHVybnMgYSB2YWxpZGF0b3IgdGhhdCBjaGVja3MgdGhlIGNvbnRyb2wgdmFsdWUgaXMgZGlmZmVyZW50IGZyb20gaW52YWxpZFZhbHVlLlxuICpcbiAqIEBwYXJhbSBpbnZhbGlkVmFsdWUgVmFsdWUgdGhhdCBpcyBub3QgYWxsb3dlZC5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZSBNZXNzYWdlIHNob3duIHdoZW4gY29udHJvbCB2YWx1ZSBtYXRjaGVzIGludmFsaWQgdmFsdWUuXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5IFN1bW1hcnkgbWVzc2FnZSBzaG93biB3aGVuIGNvbnRyb2wgdmFsdWUgbWF0Y2hlcyBpbnZhbGlkIHZhbHVlLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBub3QtZXF1YWxzIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3RFcXVhbHNWYWx1ZVZhbGlkYXRvcihcbiAgICBpbnZhbGlkVmFsdWU6IGFueSxcbiAgICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nXG4pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgIGlmIChjb250cm9sLnZhbHVlID09PSBpbnZhbGlkVmFsdWUpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmFtZXRlcnM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuICAgICAgICAgICAgcGFyYW1ldGVycy5zZXQoJ0VRVUFMU1ZBTFVFJywgaW52YWxpZFZhbHVlKTtcblxuICAgICAgICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcignbm90ZXF1YWxzJywgdmFsaWRhdGlvbk1lc3NhZ2UsIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSwgcGFyYW1ldGVycyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbi8vICNlbmRyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG4iXX0=
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
import { Validators, } from '@angular/forms';
|
|
2
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
// #region Exported Functions
|
|
4
|
+
/**
|
|
5
|
+
* Returns a validator that checks if the control value matches a RegExp pattern.
|
|
6
|
+
*
|
|
7
|
+
* @param pattern Regular expression string that the value must match.
|
|
8
|
+
* @param validationMessage Message shown when pattern validation fails.
|
|
9
|
+
* @param validationMessageSummary Summary message shown when pattern validation fails.
|
|
10
|
+
* @returns Validator function for pattern validation.
|
|
11
|
+
*/
|
|
3
12
|
export function patternValidator(pattern, validationMessage, validationMessageSummary) {
|
|
4
13
|
return (control) => {
|
|
5
14
|
const validator = Validators.pattern(pattern);
|
|
@@ -13,4 +22,5 @@ export function patternValidator(pattern, validationMessage, validationMessageSu
|
|
|
13
22
|
}
|
|
14
23
|
};
|
|
15
24
|
}
|
|
16
|
-
|
|
25
|
+
// #endregion Exported Functions
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NpbXBsZWFuZ3VsYXJjb250cm9scy9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvIiwic291cmNlcyI6WyJ2YWxpZGF0aW9uL3BhdHRlcm4udmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBa0QsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUYsNkJBQTZCO0FBRTdCOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCLENBQzVCLE9BQWUsRUFDZixpQkFBeUIsRUFDekIsd0JBQWdDO0lBRWhDLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQ3pELE1BQU0sU0FBUyxHQUFnQixVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTNELElBQUksU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRTtZQUM3QixNQUFNLFVBQVUsR0FBcUIsSUFBSSxHQUFHLEVBQWUsQ0FBQztZQUM1RCxVQUFVLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUVuQyxPQUFPLHFCQUFxQixDQUFDLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUNwRzthQUFNO1lBQ0gsT0FBTyxJQUFJLENBQUM7U0FDZjtJQUNMLENBQUMsQ0FBQztBQUNOLENBQUM7QUFFRCxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDcmVhdGVWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL3ZhbGlkYXRpb25lcnJvcmNyZWF0b3InO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLy8gI3JlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcblxuLyoqXG4gKiBSZXR1cm5zIGEgdmFsaWRhdG9yIHRoYXQgY2hlY2tzIGlmIHRoZSBjb250cm9sIHZhbHVlIG1hdGNoZXMgYSBSZWdFeHAgcGF0dGVybi5cbiAqXG4gKiBAcGFyYW0gcGF0dGVybiBSZWd1bGFyIGV4cHJlc3Npb24gc3RyaW5nIHRoYXQgdGhlIHZhbHVlIG11c3QgbWF0Y2guXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biB3aGVuIHBhdHRlcm4gdmFsaWRhdGlvbiBmYWlscy5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnkgU3VtbWFyeSBtZXNzYWdlIHNob3duIHdoZW4gcGF0dGVybiB2YWxpZGF0aW9uIGZhaWxzLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIGZvciBwYXR0ZXJuIHZhbGlkYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXR0ZXJuVmFsaWRhdG9yKFxuICAgIHBhdHRlcm46IHN0cmluZyxcbiAgICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nLFxuICAgIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nXG4pOiBWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRvcjogVmFsaWRhdG9yRm4gPSBWYWxpZGF0b3JzLnBhdHRlcm4ocGF0dGVybik7XG5cbiAgICAgICAgaWYgKHZhbGlkYXRvcihjb250cm9sKSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc3QgcGFyYW1ldGVyczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnNldCgnUEFUVEVSTicsIHBhdHRlcm4pO1xuXG4gICAgICAgICAgICByZXR1cm4gQ3JlYXRlVmFsaWRhdGlvbkVycm9yKCdwYXR0ZXJuJywgdmFsaWRhdGlvbk1lc3NhZ2UsIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSwgcGFyYW1ldGVycyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbi8vICNlbmRyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG4iXX0=
|
|
@@ -1,5 +1,13 @@
|
|
|
1
|
-
import { Validators, } from '@angular/forms';
|
|
2
1
|
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
// #region Exported Functions
|
|
4
|
+
/**
|
|
5
|
+
* Returns a validator that ensures the control value is present.
|
|
6
|
+
*
|
|
7
|
+
* @param validationMessage Message shown for the field when validation fails.
|
|
8
|
+
* @param validationMessageSummary Message shown in summary for the field when validation fails.
|
|
9
|
+
* @returns Validator function to validate required values.
|
|
10
|
+
*/
|
|
3
11
|
export function requiredValidator(validationMessage, validationMessageSummary) {
|
|
4
12
|
return (control) => {
|
|
5
13
|
if (Validators.required(control) !== null) {
|
|
@@ -10,4 +18,5 @@ export function requiredValidator(validationMessage, validationMessageSummary) {
|
|
|
10
18
|
}
|
|
11
19
|
};
|
|
12
20
|
}
|
|
13
|
-
|
|
21
|
+
// #endregion Exported Functions
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6Ii9ob21lL3J1bm5lci93b3JrL3NpbXBsZWFuZ3VsYXJjb250cm9scy9zaW1wbGVhbmd1bGFyY29udHJvbHMvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1jb21tb24vc3JjLyIsInNvdXJjZXMiOlsidmFsaWRhdGlvbi9yZXF1aXJlZC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFrRCxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1Riw2QkFBNkI7QUFFN0I7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLGlCQUF5QixFQUFFLHdCQUFnQztJQUN6RixPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUN6RCxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFO1lBQ3ZDLE9BQU8scUJBQXFCLENBQUMsVUFBVSxFQUFFLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLENBQUM7U0FDekY7YUFBTTtZQUNILE9BQU8sSUFBSSxDQUFDO1NBQ2Y7SUFDTCxDQUFDLENBQUM7QUFDTixDQUFDO0FBRUQsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vICNyZWdpb24gRXhwb3J0ZWQgRnVuY3Rpb25zXG5cbi8qKlxuICogUmV0dXJucyBhIHZhbGlkYXRvciB0aGF0IGVuc3VyZXMgdGhlIGNvbnRyb2wgdmFsdWUgaXMgcHJlc2VudC5cbiAqXG4gKiBAcGFyYW0gdmFsaWRhdGlvbk1lc3NhZ2UgTWVzc2FnZSBzaG93biBmb3IgdGhlIGZpZWxkIHdoZW4gdmFsaWRhdGlvbiBmYWlscy5cbiAqIEBwYXJhbSB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnkgTWVzc2FnZSBzaG93biBpbiBzdW1tYXJ5IGZvciB0aGUgZmllbGQgd2hlbiB2YWxpZGF0aW9uIGZhaWxzLlxuICogQHJldHVybnMgVmFsaWRhdG9yIGZ1bmN0aW9uIHRvIHZhbGlkYXRlIHJlcXVpcmVkIHZhbHVlcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcXVpcmVkVmFsaWRhdG9yKHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcsIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nKTogVmFsaWRhdG9yRm4ge1xuICAgIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xuICAgICAgICBpZiAoVmFsaWRhdG9ycy5yZXF1aXJlZChjb250cm9sKSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcigncmVxdWlyZWQnLCB2YWxpZGF0aW9uTWVzc2FnZSwgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfTtcbn1cblxuLy8gI2VuZHJlZ2lvbiBFeHBvcnRlZCBGdW5jdGlvbnNcbiJdfQ==
|