@simpleangularcontrols/sac-common 13.0.0-rc.5 → 16.0.0-rc.2
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/common/basedatetimecontrol.d.ts +86 -86
- package/common/basedatetimecontrol.d.ts.map +1 -1
- package/common/baseinputcontrol.d.ts +45 -45
- package/common/baseinputcontrol.d.ts.map +1 -1
- package/common/baselistcontrol.d.ts +46 -46
- package/common/basemodelcontrol.d.ts +200 -251
- package/common/basemodelcontrol.d.ts.map +1 -1
- package/common/baseselectcontrol.d.ts +17 -17
- package/common/baseuploadcontrol.d.ts +287 -287
- package/common/baseuploadcontrol.d.ts.map +1 -1
- package/components/browser/browser.d.ts +265 -270
- package/components/browser/browser.d.ts.map +1 -1
- package/components/browser/models/browserfile.d.ts +17 -17
- package/components/browser/models/browserfiledeleterequest.d.ts +18 -18
- package/components/browser/models/browserfilerenamerequest.d.ts +22 -22
- package/components/browser/models/browserfileresponse.d.ts +10 -10
- package/components/browser/models/browserfilesaverequest.d.ts +22 -22
- package/components/browser/models/browsernode.d.ts +34 -34
- package/components/browser/models/browsernodedeleterequest.d.ts +14 -14
- package/components/browser/models/browsernodenewrequest.d.ts +18 -18
- package/components/browser/models/browsernoderenamerequest.d.ts +18 -18
- package/components/browser/models/browsernoderequest.d.ts +18 -18
- package/components/browser/models/browsernoderesponse.d.ts +10 -10
- package/controls/buttons/button.d.ts +72 -73
- package/controls/buttons/button.d.ts.map +1 -1
- package/controls/checkbox/checkbox.d.ts +22 -26
- package/controls/checkbox/checkbox.d.ts.map +1 -1
- package/controls/checkbox/radiobutton.d.ts +73 -82
- package/controls/checkbox/radiobutton.d.ts.map +1 -1
- package/controls/checkbox/radiobuttons.d.ts +62 -63
- package/controls/checkbox/radiobuttons.d.ts.map +1 -1
- package/controls/confirm/confirm.button.d.ts +19 -25
- package/controls/confirm/confirm.button.d.ts.map +1 -1
- package/controls/confirm/confirm.d.ts +52 -52
- package/controls/confirm/confirm.service.d.ts +58 -63
- package/controls/confirm/confirm.service.d.ts.map +1 -1
- package/controls/contextmenu/contextmenu.d.ts +116 -116
- package/controls/contextmenu/contextmenu.d.ts.map +1 -1
- package/controls/contextmenu/contextmenuanchor.d.ts +18 -18
- package/controls/contextmenu/contextmenuanchor.d.ts.map +1 -1
- package/controls/contextmenu/contextmenucontainer.d.ts +18 -18
- package/controls/contextmenu/contextmenucontainer.d.ts.map +1 -1
- package/controls/contextmenu/contextmenuitem.d.ts +8 -8
- package/controls/contextmenu/contextmenuitembutton.d.ts +69 -69
- package/controls/datetime/date.d.ts +123 -123
- package/controls/datetime/date.d.ts.map +1 -1
- package/controls/datetime/dateselector.d.ts +164 -164
- package/controls/datetime/datetime.d.ts +138 -138
- package/controls/datetime/datetime.d.ts.map +1 -1
- package/controls/datetime/time.d.ts +118 -118
- package/controls/datetime/time.d.ts.map +1 -1
- package/controls/dialog/dialog.d.ts +108 -108
- package/controls/form/form.d.ts +86 -50
- package/controls/form/form.d.ts.map +1 -1
- package/controls/grid/grid.d.ts +125 -128
- package/controls/grid/grid.d.ts.map +1 -1
- package/controls/grid/gridbutton.d.ts +36 -36
- package/controls/grid/gridcolumn.d.ts +31 -31
- package/controls/grid/gridcolumnaction.d.ts +18 -18
- package/controls/grid/gridcolumnbase.d.ts +89 -89
- package/controls/grid/gridimage.d.ts +12 -12
- package/controls/grid/model.d.ts +83 -83
- package/controls/grid/paging.d.ts +147 -150
- package/controls/grid/paging.d.ts.map +1 -1
- package/controls/input/input.d.ts +38 -38
- package/controls/input/input.d.ts.map +1 -1
- package/controls/input/inputarea.d.ts +29 -29
- package/controls/input/inputcurrency.d.ts +9 -9
- package/controls/input/inputdecimal.d.ts +62 -62
- package/controls/input/inputdecimal.d.ts.map +1 -1
- package/controls/input/inputemail.d.ts +22 -22
- package/controls/input/inputemail.d.ts.map +1 -1
- package/controls/input/inputinteger.d.ts +62 -62
- package/controls/input/inputinteger.d.ts.map +1 -1
- package/controls/input/inputpassword.d.ts +26 -26
- package/controls/input/inputpassword.d.ts.map +1 -1
- package/controls/input/inputsearch.d.ts +26 -26
- package/controls/list/dropdown.d.ts +143 -143
- package/controls/list/dropdown.d.ts.map +1 -1
- package/controls/list/listbox.d.ts +91 -91
- package/controls/list/listbox.d.ts.map +1 -1
- package/controls/multilanguage/multilanguageinput.d.ts +104 -105
- package/controls/multilanguage/multilanguageinput.d.ts.map +1 -1
- package/controls/multilanguage/multilanguageinputarea.d.ts +109 -110
- package/controls/multilanguage/multilanguageinputarea.d.ts.map +1 -1
- package/controls/static/formcontainer.d.ts +34 -34
- package/controls/static/staticlabel.d.ts +21 -21
- package/controls/tabs/tab.d.ts +48 -48
- package/controls/tabs/tabitem.d.ts +33 -33
- package/controls/tinymce/tinymce.d.ts +152 -152
- package/controls/tinymce/tinymce.d.ts.map +1 -1
- package/controls/tinymce/tinymcedialogsettings.d.ts +27 -27
- package/controls/tinymce/tinymcedialogsettingsmeta.d.ts +9 -9
- package/controls/tinymce/tinymceinstance.d.ts +10 -10
- package/controls/tooltip/tooltip.d.ts +141 -141
- package/controls/treeview/ngtreeitemaction.d.ts +43 -43
- package/controls/treeview/treeview.d.ts +188 -188
- package/controls/treeview/treeviewchild.d.ts +15 -15
- package/controls/upload/dropzonemultiple.d.ts +73 -73
- package/controls/upload/dropzonemultiple.d.ts.map +1 -1
- package/controls/upload/dropzonesingle.d.ts +50 -50
- package/controls/upload/uploadmultiple.d.ts +53 -53
- package/controls/upload/uploadmultiple.d.ts.map +1 -1
- package/controls/upload/uploadsingle.d.ts +30 -30
- package/controls/validation/validationsummary.d.ts +58 -63
- package/controls/validation/validationsummary.d.ts.map +1 -1
- package/controls/wizard/wizard.d.ts +76 -76
- package/controls/wizard/wizarditem.d.ts +28 -28
- package/enums/IconType.d.ts +7 -7
- package/esm2022/common/basedatetimecontrol.mjs +174 -0
- package/esm2022/common/baseinputcontrol.mjs +86 -0
- package/esm2022/common/baselistcontrol.mjs +64 -0
- package/esm2022/common/basemodelcontrol.mjs +368 -0
- package/esm2022/common/baseselectcontrol.mjs +30 -0
- package/esm2022/common/baseuploadcontrol.mjs +461 -0
- package/esm2022/components/browser/browser.mjs +554 -0
- package/esm2022/components/browser/models/browserfile.mjs +2 -0
- package/esm2022/components/browser/models/browserfiledeleterequest.mjs +13 -0
- package/esm2022/components/browser/models/browserfilerenamerequest.mjs +13 -0
- package/esm2022/components/browser/models/browserfileresponse.mjs +2 -0
- package/esm2022/components/browser/models/browserfilesaverequest.mjs +13 -0
- package/esm2022/components/browser/models/browsernode.mjs +2 -0
- package/esm2022/components/browser/models/browsernodedeleterequest.mjs +13 -0
- package/esm2022/components/browser/models/browsernodenewrequest.mjs +13 -0
- package/esm2022/components/browser/models/browsernoderenamerequest.mjs +13 -0
- package/esm2022/components/browser/models/browsernoderequest.mjs +13 -0
- package/esm2022/components/browser/models/browsernoderesponse.mjs +2 -0
- package/esm2022/controls/buttons/button.mjs +144 -0
- package/esm2022/controls/checkbox/checkbox.mjs +32 -0
- package/esm2022/controls/checkbox/radiobutton.mjs +110 -0
- package/esm2022/controls/checkbox/radiobuttons.mjs +113 -0
- package/esm2022/controls/confirm/confirm.button.mjs +23 -0
- package/esm2022/controls/confirm/confirm.mjs +81 -0
- package/esm2022/controls/confirm/confirm.service.mjs +82 -0
- package/esm2022/controls/contextmenu/contextmenu.mjs +192 -0
- package/esm2022/controls/contextmenu/contextmenuanchor.mjs +21 -0
- package/esm2022/controls/contextmenu/contextmenucontainer.mjs +21 -0
- package/esm2022/controls/contextmenu/contextmenuitem.mjs +14 -0
- package/esm2022/controls/contextmenu/contextmenuitembutton.mjs +104 -0
- package/esm2022/controls/datetime/date.mjs +219 -0
- package/esm2022/controls/datetime/dateselector.mjs +463 -0
- package/esm2022/controls/datetime/datetime.mjs +237 -0
- package/esm2022/controls/datetime/time.mjs +218 -0
- package/esm2022/controls/dialog/dialog.mjs +222 -0
- package/esm2022/controls/form/form.mjs +164 -0
- package/esm2022/controls/grid/grid.mjs +157 -0
- package/esm2022/controls/grid/gridbutton.mjs +60 -0
- package/esm2022/controls/grid/gridcolumn.mjs +47 -0
- package/esm2022/controls/grid/gridcolumnaction.mjs +25 -0
- package/esm2022/controls/grid/gridcolumnbase.mjs +129 -0
- package/esm2022/controls/grid/gridimage.mjs +16 -0
- package/esm2022/controls/grid/model.mjs +79 -0
- package/esm2022/controls/grid/paging.mjs +254 -0
- package/esm2022/controls/input/input.mjs +70 -0
- package/esm2022/controls/input/inputarea.mjs +59 -0
- package/esm2022/controls/input/inputcurrency.mjs +15 -0
- package/esm2022/controls/input/inputdecimal.mjs +151 -0
- package/esm2022/controls/input/inputemail.mjs +41 -0
- package/esm2022/controls/input/inputinteger.mjs +135 -0
- package/esm2022/controls/input/inputpassword.mjs +47 -0
- package/esm2022/controls/input/inputsearch.mjs +42 -0
- package/esm2022/controls/list/dropdown.mjs +251 -0
- package/esm2022/controls/list/listbox.mjs +177 -0
- package/esm2022/controls/multilanguage/multilanguageinput.mjs +229 -0
- package/esm2022/controls/multilanguage/multilanguageinputarea.mjs +231 -0
- package/esm2022/controls/static/formcontainer.mjs +54 -0
- package/esm2022/controls/static/staticlabel.mjs +34 -0
- package/esm2022/controls/tabs/tab.mjs +78 -0
- package/esm2022/controls/tabs/tabitem.mjs +41 -0
- package/esm2022/controls/tinymce/tinymce.mjs +250 -0
- package/esm2022/controls/tinymce/tinymcedialogsettings.mjs +13 -0
- package/esm2022/controls/tinymce/tinymcedialogsettingsmeta.mjs +5 -0
- package/esm2022/controls/tinymce/tinymceinstance.mjs +2 -0
- package/esm2022/controls/tooltip/tooltip.mjs +366 -0
- package/esm2022/controls/treeview/ngtreeitemaction.mjs +63 -0
- package/esm2022/controls/treeview/treeview.mjs +344 -0
- package/esm2022/controls/treeview/treeviewchild.mjs +22 -0
- package/esm2022/controls/upload/dropzonemultiple.mjs +166 -0
- package/esm2022/controls/upload/dropzonesingle.mjs +107 -0
- package/esm2022/controls/upload/uploadmultiple.mjs +125 -0
- package/esm2022/controls/upload/uploadsingle.mjs +59 -0
- package/esm2022/controls/validation/validationsummary.mjs +128 -0
- package/esm2022/controls/wizard/wizard.mjs +145 -0
- package/esm2022/controls/wizard/wizarditem.mjs +34 -0
- package/esm2022/enums/IconType.mjs +9 -0
- package/esm2022/interfaces/ISacFileBrowserService.mjs +2 -0
- package/esm2022/interfaces/ISacIconService.mjs +2 -0
- package/esm2022/interfaces/ISacLanguageService.mjs +2 -0
- package/esm2022/interfaces/ISacLocalisationService.mjs +2 -0
- package/esm2022/interfaces/iabstractcontrollabel.mjs +2 -0
- package/esm2022/interfaces/iconfirmcomponent.mjs +2 -0
- package/esm2022/interfaces/idatetimecontrol.mjs +2 -0
- package/esm2022/interfaces/iuploadcontrol.mjs +2 -0
- package/esm2022/models/languagemodel.mjs +13 -0
- package/esm2022/public_api.mjs +95 -0
- package/esm2022/services/index.mjs +5 -0
- package/esm2022/services/sac-filebrowser.service.mjs +205 -0
- package/esm2022/services/sac-icon.service.mjs +161 -0
- package/esm2022/services/sac-language.service.mjs +49 -0
- package/esm2022/services/sac-localisation.service.mjs +435 -0
- package/esm2022/simpleangularcontrols-sac-common.mjs +5 -0
- package/esm2022/utilities/convertion.mjs +32 -0
- package/esm2022/utilities/datatypes.mjs +9 -0
- package/esm2022/utilities/enums.mjs +16 -0
- package/esm2022/utilities/interpolation.mjs +50 -0
- package/esm2022/utilities/positioning.mjs +301 -0
- package/esm2022/validation/email.validator.mjs +13 -0
- package/esm2022/validation/index.mjs +3 -0
- package/esm2022/validation/invaliddate.validator.mjs +14 -0
- package/esm2022/validation/isDateValid.mjs +15 -0
- package/esm2022/validation/maxdate.validator.mjs +21 -0
- package/esm2022/validation/maxtime.validator.mjs +21 -0
- package/esm2022/validation/maxvalue.validator.mjs +16 -0
- package/esm2022/validation/mindate.validator.mjs +21 -0
- package/esm2022/validation/minfiles.validator.mjs +19 -0
- package/esm2022/validation/minlength.validator.mjs +21 -0
- package/esm2022/validation/mintime.validator.mjs +21 -0
- package/esm2022/validation/minvalue.validator.mjs +16 -0
- package/esm2022/validation/multilanguagerequired.validator.mjs +22 -0
- package/esm2022/validation/multilanguagerequiredany.validator.mjs +22 -0
- package/esm2022/validation/pattern.validator.mjs +16 -0
- package/esm2022/validation/required.validator.mjs +13 -0
- package/esm2022/validation/validation.mjs +188 -0
- package/esm2022/validation/validationerrorcreator.mjs +11 -0
- package/esm2022/validation/validationerroritem.mjs +27 -0
- package/fesm2022/simpleangularcontrols-sac-common.mjs +9958 -0
- package/fesm2022/simpleangularcontrols-sac-common.mjs.map +1 -0
- package/{simpleangularcontrols-sac-common.d.ts → index.d.ts} +5 -5
- package/interfaces/ISacFileBrowserService.d.ts +65 -65
- package/interfaces/ISacIconService.d.ts +89 -89
- package/interfaces/ISacIconService.d.ts.map +1 -1
- package/interfaces/ISacLanguageService.d.ts +12 -12
- package/interfaces/ISacLocalisationService.d.ts +10 -10
- package/interfaces/iabstractcontrollabel.d.ts +6 -6
- package/interfaces/iconfirmcomponent.d.ts +18 -18
- package/interfaces/idatetimecontrol.d.ts +7 -7
- package/interfaces/iuploadcontrol.d.ts +9 -9
- package/models/languagemodel.d.ts +22 -22
- package/package.json +11 -17
- package/public_api.d.ts +73 -79
- package/public_api.d.ts.map +1 -1
- package/services/index.d.ts +4 -6
- package/services/index.d.ts.map +1 -1
- package/services/sac-filebrowser.service.d.ts +145 -145
- package/services/sac-icon.service.d.ts +189 -189
- package/services/sac-language.service.d.ts +31 -31
- package/services/sac-localisation.service.d.ts +136 -142
- package/services/sac-localisation.service.d.ts.map +1 -1
- package/simpleangularcontrols-sac-common-16.0.0-rc.2.tgz +0 -0
- package/utilities/convertion.d.ts +15 -15
- package/utilities/datatypes.d.ts +6 -6
- package/utilities/enums.d.ts +10 -10
- package/utilities/interpolation.d.ts +21 -21
- package/utilities/positioning.d.ts +82 -82
- package/utilities/positioning.d.ts.map +1 -1
- package/validation/email.validator.d.ts +2 -2
- package/validation/index.d.ts +2 -2
- package/validation/invaliddate.validator.d.ts +2 -2
- package/validation/isDateValid.d.ts +5 -5
- package/validation/maxdate.validator.d.ts +2 -2
- package/validation/maxtime.validator.d.ts +2 -2
- package/validation/maxvalue.validator.d.ts +2 -2
- package/validation/mindate.validator.d.ts +2 -2
- package/validation/minfiles.validator.d.ts +2 -2
- package/validation/minlength.validator.d.ts +2 -2
- package/validation/mintime.validator.d.ts +2 -2
- package/validation/minvalue.validator.d.ts +2 -2
- package/validation/multilanguagerequired.validator.d.ts +3 -3
- package/validation/multilanguagerequiredany.validator.d.ts +3 -3
- package/validation/pattern.validator.d.ts +2 -2
- package/validation/required.validator.d.ts +2 -2
- package/validation/validation.d.ts +139 -139
- package/validation/validationerrorcreator.d.ts +1 -1
- package/validation/validationerroritem.d.ts +33 -33
- package/common/basedatetimecontrol.ngfactory.d.ts +0 -4
- package/common/basedatetimecontrol.ngfactory.d.ts.map +0 -1
- package/common/basedatetimecontrol.ngsummary.d.ts +0 -2
- package/common/basedatetimecontrol.ngsummary.d.ts.map +0 -1
- package/common/baseinputcontrol.ngfactory.d.ts +0 -4
- package/common/baseinputcontrol.ngfactory.d.ts.map +0 -1
- package/common/baseinputcontrol.ngsummary.d.ts +0 -2
- package/common/baseinputcontrol.ngsummary.d.ts.map +0 -1
- package/common/baselistcontrol.ngfactory.d.ts +0 -4
- package/common/baselistcontrol.ngfactory.d.ts.map +0 -1
- package/common/baselistcontrol.ngsummary.d.ts +0 -2
- package/common/baselistcontrol.ngsummary.d.ts.map +0 -1
- package/common/basemodelcontrol.ngfactory.d.ts +0 -4
- package/common/basemodelcontrol.ngfactory.d.ts.map +0 -1
- package/common/basemodelcontrol.ngsummary.d.ts +0 -2
- package/common/basemodelcontrol.ngsummary.d.ts.map +0 -1
- package/common/baseselectcontrol.ngfactory.d.ts +0 -4
- package/common/baseselectcontrol.ngfactory.d.ts.map +0 -1
- package/common/baseselectcontrol.ngsummary.d.ts +0 -2
- package/common/baseselectcontrol.ngsummary.d.ts.map +0 -1
- package/common/baseuploadcontrol.ngfactory.d.ts +0 -4
- package/common/baseuploadcontrol.ngfactory.d.ts.map +0 -1
- package/common/baseuploadcontrol.ngsummary.d.ts +0 -2
- package/common/baseuploadcontrol.ngsummary.d.ts.map +0 -1
- package/components/browser/browser.ngfactory.d.ts +0 -4
- package/components/browser/browser.ngfactory.d.ts.map +0 -1
- package/components/browser/browser.ngsummary.d.ts +0 -2
- package/components/browser/browser.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browserfile.ngfactory.d.ts +0 -2
- package/components/browser/models/browserfile.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browserfile.ngsummary.d.ts +0 -2
- package/components/browser/models/browserfile.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browserfiledeleterequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browserfiledeleterequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browserfiledeleterequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browserfiledeleterequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browserfilerenamerequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browserfilerenamerequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browserfilerenamerequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browserfilerenamerequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browserfileresponse.ngfactory.d.ts +0 -2
- package/components/browser/models/browserfileresponse.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browserfileresponse.ngsummary.d.ts +0 -2
- package/components/browser/models/browserfileresponse.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browserfilesaverequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browserfilesaverequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browserfilesaverequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browserfilesaverequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browsernode.ngfactory.d.ts +0 -2
- package/components/browser/models/browsernode.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browsernode.ngsummary.d.ts +0 -2
- package/components/browser/models/browsernode.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browsernodedeleterequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browsernodedeleterequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browsernodedeleterequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browsernodedeleterequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browsernodenewrequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browsernodenewrequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browsernodenewrequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browsernodenewrequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browsernoderenamerequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browsernoderenamerequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browsernoderenamerequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browsernoderenamerequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browsernoderequest.ngfactory.d.ts +0 -2
- package/components/browser/models/browsernoderequest.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browsernoderequest.ngsummary.d.ts +0 -2
- package/components/browser/models/browsernoderequest.ngsummary.d.ts.map +0 -1
- package/components/browser/models/browsernoderesponse.ngfactory.d.ts +0 -2
- package/components/browser/models/browsernoderesponse.ngfactory.d.ts.map +0 -1
- package/components/browser/models/browsernoderesponse.ngsummary.d.ts +0 -2
- package/components/browser/models/browsernoderesponse.ngsummary.d.ts.map +0 -1
- package/controls/buttons/button.ngfactory.d.ts +0 -4
- package/controls/buttons/button.ngfactory.d.ts.map +0 -1
- package/controls/buttons/button.ngsummary.d.ts +0 -2
- package/controls/buttons/button.ngsummary.d.ts.map +0 -1
- package/controls/checkbox/checkbox.ngfactory.d.ts +0 -4
- package/controls/checkbox/checkbox.ngfactory.d.ts.map +0 -1
- package/controls/checkbox/checkbox.ngsummary.d.ts +0 -2
- package/controls/checkbox/checkbox.ngsummary.d.ts.map +0 -1
- package/controls/checkbox/radiobutton.ngfactory.d.ts +0 -4
- package/controls/checkbox/radiobutton.ngfactory.d.ts.map +0 -1
- package/controls/checkbox/radiobutton.ngsummary.d.ts +0 -2
- package/controls/checkbox/radiobutton.ngsummary.d.ts.map +0 -1
- package/controls/checkbox/radiobuttons.ngfactory.d.ts +0 -4
- package/controls/checkbox/radiobuttons.ngfactory.d.ts.map +0 -1
- package/controls/checkbox/radiobuttons.ngsummary.d.ts +0 -2
- package/controls/checkbox/radiobuttons.ngsummary.d.ts.map +0 -1
- package/controls/confirm/confirm.button.ngfactory.d.ts +0 -2
- package/controls/confirm/confirm.button.ngfactory.d.ts.map +0 -1
- package/controls/confirm/confirm.button.ngsummary.d.ts +0 -2
- package/controls/confirm/confirm.button.ngsummary.d.ts.map +0 -1
- package/controls/confirm/confirm.ngfactory.d.ts +0 -4
- package/controls/confirm/confirm.ngfactory.d.ts.map +0 -1
- package/controls/confirm/confirm.ngsummary.d.ts +0 -2
- package/controls/confirm/confirm.ngsummary.d.ts.map +0 -1
- package/controls/confirm/confirm.service.ngfactory.d.ts +0 -2
- package/controls/confirm/confirm.service.ngfactory.d.ts.map +0 -1
- package/controls/confirm/confirm.service.ngsummary.d.ts +0 -2
- package/controls/confirm/confirm.service.ngsummary.d.ts.map +0 -1
- package/controls/contextmenu/contextmenu.ngfactory.d.ts +0 -4
- package/controls/contextmenu/contextmenu.ngfactory.d.ts.map +0 -1
- package/controls/contextmenu/contextmenu.ngsummary.d.ts +0 -2
- package/controls/contextmenu/contextmenu.ngsummary.d.ts.map +0 -1
- package/controls/contextmenu/contextmenuanchor.ngfactory.d.ts +0 -4
- package/controls/contextmenu/contextmenuanchor.ngfactory.d.ts.map +0 -1
- package/controls/contextmenu/contextmenuanchor.ngsummary.d.ts +0 -2
- package/controls/contextmenu/contextmenuanchor.ngsummary.d.ts.map +0 -1
- package/controls/contextmenu/contextmenucontainer.ngfactory.d.ts +0 -4
- package/controls/contextmenu/contextmenucontainer.ngfactory.d.ts.map +0 -1
- package/controls/contextmenu/contextmenucontainer.ngsummary.d.ts +0 -2
- package/controls/contextmenu/contextmenucontainer.ngsummary.d.ts.map +0 -1
- package/controls/contextmenu/contextmenuitem.ngfactory.d.ts +0 -4
- package/controls/contextmenu/contextmenuitem.ngfactory.d.ts.map +0 -1
- package/controls/contextmenu/contextmenuitem.ngsummary.d.ts +0 -2
- package/controls/contextmenu/contextmenuitem.ngsummary.d.ts.map +0 -1
- package/controls/contextmenu/contextmenuitembutton.ngfactory.d.ts +0 -4
- package/controls/contextmenu/contextmenuitembutton.ngfactory.d.ts.map +0 -1
- package/controls/contextmenu/contextmenuitembutton.ngsummary.d.ts +0 -2
- package/controls/contextmenu/contextmenuitembutton.ngsummary.d.ts.map +0 -1
- package/controls/datetime/date.ngfactory.d.ts +0 -4
- package/controls/datetime/date.ngfactory.d.ts.map +0 -1
- package/controls/datetime/date.ngsummary.d.ts +0 -2
- package/controls/datetime/date.ngsummary.d.ts.map +0 -1
- package/controls/datetime/dateselector.ngfactory.d.ts +0 -4
- package/controls/datetime/dateselector.ngfactory.d.ts.map +0 -1
- package/controls/datetime/dateselector.ngsummary.d.ts +0 -2
- package/controls/datetime/dateselector.ngsummary.d.ts.map +0 -1
- package/controls/datetime/datetime.ngfactory.d.ts +0 -4
- package/controls/datetime/datetime.ngfactory.d.ts.map +0 -1
- package/controls/datetime/datetime.ngsummary.d.ts +0 -2
- package/controls/datetime/datetime.ngsummary.d.ts.map +0 -1
- package/controls/datetime/time.ngfactory.d.ts +0 -4
- package/controls/datetime/time.ngfactory.d.ts.map +0 -1
- package/controls/datetime/time.ngsummary.d.ts +0 -2
- package/controls/datetime/time.ngsummary.d.ts.map +0 -1
- package/controls/dialog/dialog.ngfactory.d.ts +0 -4
- package/controls/dialog/dialog.ngfactory.d.ts.map +0 -1
- package/controls/dialog/dialog.ngsummary.d.ts +0 -2
- package/controls/dialog/dialog.ngsummary.d.ts.map +0 -1
- package/controls/form/form.ngfactory.d.ts +0 -4
- package/controls/form/form.ngfactory.d.ts.map +0 -1
- package/controls/form/form.ngsummary.d.ts +0 -2
- package/controls/form/form.ngsummary.d.ts.map +0 -1
- package/controls/grid/grid.ngfactory.d.ts +0 -4
- package/controls/grid/grid.ngfactory.d.ts.map +0 -1
- package/controls/grid/grid.ngsummary.d.ts +0 -2
- package/controls/grid/grid.ngsummary.d.ts.map +0 -1
- package/controls/grid/gridbutton.ngfactory.d.ts +0 -4
- package/controls/grid/gridbutton.ngfactory.d.ts.map +0 -1
- package/controls/grid/gridbutton.ngsummary.d.ts +0 -2
- package/controls/grid/gridbutton.ngsummary.d.ts.map +0 -1
- package/controls/grid/gridcolumn.ngfactory.d.ts +0 -4
- package/controls/grid/gridcolumn.ngfactory.d.ts.map +0 -1
- package/controls/grid/gridcolumn.ngsummary.d.ts +0 -2
- package/controls/grid/gridcolumn.ngsummary.d.ts.map +0 -1
- package/controls/grid/gridcolumnaction.ngfactory.d.ts +0 -4
- package/controls/grid/gridcolumnaction.ngfactory.d.ts.map +0 -1
- package/controls/grid/gridcolumnaction.ngsummary.d.ts +0 -2
- package/controls/grid/gridcolumnaction.ngsummary.d.ts.map +0 -1
- package/controls/grid/gridcolumnbase.ngfactory.d.ts +0 -4
- package/controls/grid/gridcolumnbase.ngfactory.d.ts.map +0 -1
- package/controls/grid/gridcolumnbase.ngsummary.d.ts +0 -2
- package/controls/grid/gridcolumnbase.ngsummary.d.ts.map +0 -1
- package/controls/grid/gridimage.ngfactory.d.ts +0 -4
- package/controls/grid/gridimage.ngfactory.d.ts.map +0 -1
- package/controls/grid/gridimage.ngsummary.d.ts +0 -2
- package/controls/grid/gridimage.ngsummary.d.ts.map +0 -1
- package/controls/grid/model.ngfactory.d.ts +0 -2
- package/controls/grid/model.ngfactory.d.ts.map +0 -1
- package/controls/grid/model.ngsummary.d.ts +0 -2
- package/controls/grid/model.ngsummary.d.ts.map +0 -1
- package/controls/grid/paging.ngfactory.d.ts +0 -4
- package/controls/grid/paging.ngfactory.d.ts.map +0 -1
- package/controls/grid/paging.ngsummary.d.ts +0 -2
- package/controls/grid/paging.ngsummary.d.ts.map +0 -1
- package/controls/input/input.ngfactory.d.ts +0 -4
- package/controls/input/input.ngfactory.d.ts.map +0 -1
- package/controls/input/input.ngsummary.d.ts +0 -2
- package/controls/input/input.ngsummary.d.ts.map +0 -1
- package/controls/input/inputarea.ngfactory.d.ts +0 -4
- package/controls/input/inputarea.ngfactory.d.ts.map +0 -1
- package/controls/input/inputarea.ngsummary.d.ts +0 -2
- package/controls/input/inputarea.ngsummary.d.ts.map +0 -1
- package/controls/input/inputcurrency.ngfactory.d.ts +0 -4
- package/controls/input/inputcurrency.ngfactory.d.ts.map +0 -1
- package/controls/input/inputcurrency.ngsummary.d.ts +0 -2
- package/controls/input/inputcurrency.ngsummary.d.ts.map +0 -1
- package/controls/input/inputdecimal.ngfactory.d.ts +0 -4
- package/controls/input/inputdecimal.ngfactory.d.ts.map +0 -1
- package/controls/input/inputdecimal.ngsummary.d.ts +0 -2
- package/controls/input/inputdecimal.ngsummary.d.ts.map +0 -1
- package/controls/input/inputemail.ngfactory.d.ts +0 -4
- package/controls/input/inputemail.ngfactory.d.ts.map +0 -1
- package/controls/input/inputemail.ngsummary.d.ts +0 -2
- package/controls/input/inputemail.ngsummary.d.ts.map +0 -1
- package/controls/input/inputinteger.ngfactory.d.ts +0 -4
- package/controls/input/inputinteger.ngfactory.d.ts.map +0 -1
- package/controls/input/inputinteger.ngsummary.d.ts +0 -2
- package/controls/input/inputinteger.ngsummary.d.ts.map +0 -1
- package/controls/input/inputpassword.ngfactory.d.ts +0 -4
- package/controls/input/inputpassword.ngfactory.d.ts.map +0 -1
- package/controls/input/inputpassword.ngsummary.d.ts +0 -2
- package/controls/input/inputpassword.ngsummary.d.ts.map +0 -1
- package/controls/input/inputsearch.ngfactory.d.ts +0 -4
- package/controls/input/inputsearch.ngfactory.d.ts.map +0 -1
- package/controls/input/inputsearch.ngsummary.d.ts +0 -2
- package/controls/input/inputsearch.ngsummary.d.ts.map +0 -1
- package/controls/layout/formlayout.d.ts +0 -50
- package/controls/layout/formlayout.d.ts.map +0 -1
- package/controls/layout/formlayout.ngfactory.d.ts +0 -4
- package/controls/layout/formlayout.ngfactory.d.ts.map +0 -1
- package/controls/layout/formlayout.ngsummary.d.ts +0 -2
- package/controls/layout/formlayout.ngsummary.d.ts.map +0 -1
- package/controls/list/dropdown.ngfactory.d.ts +0 -5
- package/controls/list/dropdown.ngfactory.d.ts.map +0 -1
- package/controls/list/dropdown.ngsummary.d.ts +0 -3
- package/controls/list/dropdown.ngsummary.d.ts.map +0 -1
- package/controls/list/list.module.d.ts +0 -7
- package/controls/list/list.module.d.ts.map +0 -1
- package/controls/list/list.module.ngfactory.d.ts +0 -4
- package/controls/list/list.module.ngfactory.d.ts.map +0 -1
- package/controls/list/list.module.ngsummary.d.ts +0 -2
- package/controls/list/list.module.ngsummary.d.ts.map +0 -1
- package/controls/list/listbox.ngfactory.d.ts +0 -5
- package/controls/list/listbox.ngfactory.d.ts.map +0 -1
- package/controls/list/listbox.ngsummary.d.ts +0 -3
- package/controls/list/listbox.ngsummary.d.ts.map +0 -1
- package/controls/multilanguage/multilanguageinput.ngfactory.d.ts +0 -4
- package/controls/multilanguage/multilanguageinput.ngfactory.d.ts.map +0 -1
- package/controls/multilanguage/multilanguageinput.ngsummary.d.ts +0 -2
- package/controls/multilanguage/multilanguageinput.ngsummary.d.ts.map +0 -1
- package/controls/multilanguage/multilanguageinputarea.ngfactory.d.ts +0 -4
- package/controls/multilanguage/multilanguageinputarea.ngfactory.d.ts.map +0 -1
- package/controls/multilanguage/multilanguageinputarea.ngsummary.d.ts +0 -2
- package/controls/multilanguage/multilanguageinputarea.ngsummary.d.ts.map +0 -1
- package/controls/static/formcontainer.ngfactory.d.ts +0 -4
- package/controls/static/formcontainer.ngfactory.d.ts.map +0 -1
- package/controls/static/formcontainer.ngsummary.d.ts +0 -2
- package/controls/static/formcontainer.ngsummary.d.ts.map +0 -1
- package/controls/static/staticlabel.ngfactory.d.ts +0 -4
- package/controls/static/staticlabel.ngfactory.d.ts.map +0 -1
- package/controls/static/staticlabel.ngsummary.d.ts +0 -2
- package/controls/static/staticlabel.ngsummary.d.ts.map +0 -1
- package/controls/tabs/tab.ngfactory.d.ts +0 -4
- package/controls/tabs/tab.ngfactory.d.ts.map +0 -1
- package/controls/tabs/tab.ngsummary.d.ts +0 -2
- package/controls/tabs/tab.ngsummary.d.ts.map +0 -1
- package/controls/tabs/tabitem.ngfactory.d.ts +0 -4
- package/controls/tabs/tabitem.ngfactory.d.ts.map +0 -1
- package/controls/tabs/tabitem.ngsummary.d.ts +0 -2
- package/controls/tabs/tabitem.ngsummary.d.ts.map +0 -1
- package/controls/tinymce/tinymce.ngfactory.d.ts +0 -4
- package/controls/tinymce/tinymce.ngfactory.d.ts.map +0 -1
- package/controls/tinymce/tinymce.ngsummary.d.ts +0 -2
- package/controls/tinymce/tinymce.ngsummary.d.ts.map +0 -1
- package/controls/tinymce/tinymcedialogsettings.ngfactory.d.ts +0 -2
- package/controls/tinymce/tinymcedialogsettings.ngfactory.d.ts.map +0 -1
- package/controls/tinymce/tinymcedialogsettings.ngsummary.d.ts +0 -2
- package/controls/tinymce/tinymcedialogsettings.ngsummary.d.ts.map +0 -1
- package/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.d.ts +0 -2
- package/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.d.ts.map +0 -1
- package/controls/tinymce/tinymcedialogsettingsmeta.ngsummary.d.ts +0 -2
- package/controls/tinymce/tinymcedialogsettingsmeta.ngsummary.d.ts.map +0 -1
- package/controls/tinymce/tinymceinstance.ngfactory.d.ts +0 -2
- package/controls/tinymce/tinymceinstance.ngfactory.d.ts.map +0 -1
- package/controls/tinymce/tinymceinstance.ngsummary.d.ts +0 -2
- package/controls/tinymce/tinymceinstance.ngsummary.d.ts.map +0 -1
- package/controls/tooltip/tooltip.ngfactory.d.ts +0 -4
- package/controls/tooltip/tooltip.ngfactory.d.ts.map +0 -1
- package/controls/tooltip/tooltip.ngsummary.d.ts +0 -2
- package/controls/tooltip/tooltip.ngsummary.d.ts.map +0 -1
- package/controls/treeview/ngtreeitemaction.ngfactory.d.ts +0 -4
- package/controls/treeview/ngtreeitemaction.ngfactory.d.ts.map +0 -1
- package/controls/treeview/ngtreeitemaction.ngsummary.d.ts +0 -2
- package/controls/treeview/ngtreeitemaction.ngsummary.d.ts.map +0 -1
- package/controls/treeview/treeview.ngfactory.d.ts +0 -4
- package/controls/treeview/treeview.ngfactory.d.ts.map +0 -1
- package/controls/treeview/treeview.ngsummary.d.ts +0 -2
- package/controls/treeview/treeview.ngsummary.d.ts.map +0 -1
- package/controls/treeview/treeviewchild.ngfactory.d.ts +0 -4
- package/controls/treeview/treeviewchild.ngfactory.d.ts.map +0 -1
- package/controls/treeview/treeviewchild.ngsummary.d.ts +0 -2
- package/controls/treeview/treeviewchild.ngsummary.d.ts.map +0 -1
- package/controls/upload/dropzonemultiple.ngfactory.d.ts +0 -4
- package/controls/upload/dropzonemultiple.ngfactory.d.ts.map +0 -1
- package/controls/upload/dropzonemultiple.ngsummary.d.ts +0 -2
- package/controls/upload/dropzonemultiple.ngsummary.d.ts.map +0 -1
- package/controls/upload/dropzonesingle.ngfactory.d.ts +0 -4
- package/controls/upload/dropzonesingle.ngfactory.d.ts.map +0 -1
- package/controls/upload/dropzonesingle.ngsummary.d.ts +0 -2
- package/controls/upload/dropzonesingle.ngsummary.d.ts.map +0 -1
- package/controls/upload/uploadmultiple.ngfactory.d.ts +0 -4
- package/controls/upload/uploadmultiple.ngfactory.d.ts.map +0 -1
- package/controls/upload/uploadmultiple.ngsummary.d.ts +0 -2
- package/controls/upload/uploadmultiple.ngsummary.d.ts.map +0 -1
- package/controls/upload/uploadsingle.ngfactory.d.ts +0 -4
- package/controls/upload/uploadsingle.ngfactory.d.ts.map +0 -1
- package/controls/upload/uploadsingle.ngsummary.d.ts +0 -2
- package/controls/upload/uploadsingle.ngsummary.d.ts.map +0 -1
- package/controls/validation/validationsummary.ngfactory.d.ts +0 -4
- package/controls/validation/validationsummary.ngfactory.d.ts.map +0 -1
- package/controls/validation/validationsummary.ngsummary.d.ts +0 -2
- package/controls/validation/validationsummary.ngsummary.d.ts.map +0 -1
- package/controls/wizard/wizard.ngfactory.d.ts +0 -4
- package/controls/wizard/wizard.ngfactory.d.ts.map +0 -1
- package/controls/wizard/wizard.ngsummary.d.ts +0 -2
- package/controls/wizard/wizard.ngsummary.d.ts.map +0 -1
- package/controls/wizard/wizarditem.ngfactory.d.ts +0 -4
- package/controls/wizard/wizarditem.ngfactory.d.ts.map +0 -1
- package/controls/wizard/wizarditem.ngsummary.d.ts +0 -2
- package/controls/wizard/wizarditem.ngsummary.d.ts.map +0 -1
- package/enums/ButtonRoleType.d.ts +0 -2
- package/enums/ButtonRoleType.d.ts.map +0 -1
- package/enums/ButtonRoleType.ngfactory.d.ts +0 -2
- package/enums/ButtonRoleType.ngfactory.d.ts.map +0 -1
- package/enums/ButtonRoleType.ngsummary.d.ts +0 -2
- package/enums/ButtonRoleType.ngsummary.d.ts.map +0 -1
- package/enums/ControlHeight.d.ts +0 -18
- package/enums/ControlHeight.d.ts.map +0 -1
- package/enums/ControlHeight.ngfactory.d.ts +0 -2
- package/enums/ControlHeight.ngfactory.d.ts.map +0 -1
- package/enums/ControlHeight.ngsummary.d.ts +0 -2
- package/enums/ControlHeight.ngsummary.d.ts.map +0 -1
- package/enums/IconType.ngfactory.d.ts +0 -2
- package/enums/IconType.ngfactory.d.ts.map +0 -1
- package/enums/IconType.ngsummary.d.ts +0 -2
- package/enums/IconType.ngsummary.d.ts.map +0 -1
- package/esm2020/common/basedatetimecontrol.mjs +0 -52
- package/esm2020/common/basedatetimecontrol.ngfactory.mjs +0 -3
- package/esm2020/common/basedatetimecontrol.ngsummary.mjs +0 -3
- package/esm2020/common/baseinputcontrol.mjs +0 -29
- package/esm2020/common/baseinputcontrol.ngfactory.mjs +0 -3
- package/esm2020/common/baseinputcontrol.ngsummary.mjs +0 -3
- package/esm2020/common/baselistcontrol.mjs +0 -19
- package/esm2020/common/baselistcontrol.ngfactory.mjs +0 -3
- package/esm2020/common/baselistcontrol.ngsummary.mjs +0 -3
- package/esm2020/common/basemodelcontrol.mjs +0 -135
- package/esm2020/common/basemodelcontrol.ngfactory.mjs +0 -3
- package/esm2020/common/basemodelcontrol.ngsummary.mjs +0 -3
- package/esm2020/common/baseselectcontrol.mjs +0 -9
- package/esm2020/common/baseselectcontrol.ngfactory.mjs +0 -3
- package/esm2020/common/baseselectcontrol.ngsummary.mjs +0 -3
- package/esm2020/common/baseuploadcontrol.mjs +0 -137
- package/esm2020/common/baseuploadcontrol.ngfactory.mjs +0 -3
- package/esm2020/common/baseuploadcontrol.ngsummary.mjs +0 -3
- package/esm2020/components/browser/browser.mjs +0 -146
- package/esm2020/components/browser/browser.ngfactory.mjs +0 -3
- package/esm2020/components/browser/browser.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browserfile.mjs +0 -3
- package/esm2020/components/browser/models/browserfile.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browserfile.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browserfiledeleterequest.mjs +0 -8
- package/esm2020/components/browser/models/browserfiledeleterequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browserfiledeleterequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browserfilerenamerequest.mjs +0 -8
- package/esm2020/components/browser/models/browserfilerenamerequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browserfilerenamerequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browserfileresponse.mjs +0 -3
- package/esm2020/components/browser/models/browserfileresponse.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browserfileresponse.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browserfilesaverequest.mjs +0 -8
- package/esm2020/components/browser/models/browserfilesaverequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browserfilesaverequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browsernode.mjs +0 -3
- package/esm2020/components/browser/models/browsernode.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browsernode.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browsernodedeleterequest.mjs +0 -8
- package/esm2020/components/browser/models/browsernodedeleterequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browsernodedeleterequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browsernodenewrequest.mjs +0 -8
- package/esm2020/components/browser/models/browsernodenewrequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browsernodenewrequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderenamerequest.mjs +0 -8
- package/esm2020/components/browser/models/browsernoderenamerequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderenamerequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderequest.mjs +0 -8
- package/esm2020/components/browser/models/browsernoderequest.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderequest.ngsummary.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderesponse.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderesponse.ngfactory.mjs +0 -3
- package/esm2020/components/browser/models/browsernoderesponse.ngsummary.mjs +0 -3
- package/esm2020/controls/buttons/button.mjs +0 -45
- package/esm2020/controls/buttons/button.ngfactory.mjs +0 -3
- package/esm2020/controls/buttons/button.ngsummary.mjs +0 -3
- package/esm2020/controls/checkbox/checkbox.mjs +0 -11
- package/esm2020/controls/checkbox/checkbox.ngfactory.mjs +0 -3
- package/esm2020/controls/checkbox/checkbox.ngsummary.mjs +0 -3
- package/esm2020/controls/checkbox/radiobutton.mjs +0 -36
- package/esm2020/controls/checkbox/radiobutton.ngfactory.mjs +0 -3
- package/esm2020/controls/checkbox/radiobutton.ngsummary.mjs +0 -3
- package/esm2020/controls/checkbox/radiobuttons.mjs +0 -36
- package/esm2020/controls/checkbox/radiobuttons.ngfactory.mjs +0 -3
- package/esm2020/controls/checkbox/radiobuttons.ngsummary.mjs +0 -3
- package/esm2020/controls/confirm/confirm.button.mjs +0 -19
- package/esm2020/controls/confirm/confirm.button.ngfactory.mjs +0 -3
- package/esm2020/controls/confirm/confirm.button.ngsummary.mjs +0 -3
- package/esm2020/controls/confirm/confirm.mjs +0 -31
- package/esm2020/controls/confirm/confirm.ngfactory.mjs +0 -3
- package/esm2020/controls/confirm/confirm.ngsummary.mjs +0 -3
- package/esm2020/controls/confirm/confirm.service.mjs +0 -37
- package/esm2020/controls/confirm/confirm.service.ngfactory.mjs +0 -3
- package/esm2020/controls/confirm/confirm.service.ngsummary.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenu.mjs +0 -64
- package/esm2020/controls/contextmenu/contextmenu.ngfactory.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenu.ngsummary.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenuanchor.mjs +0 -10
- package/esm2020/controls/contextmenu/contextmenuanchor.ngfactory.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenuanchor.ngsummary.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenucontainer.mjs +0 -10
- package/esm2020/controls/contextmenu/contextmenucontainer.ngfactory.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenucontainer.ngsummary.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenuitem.mjs +0 -5
- package/esm2020/controls/contextmenu/contextmenuitem.ngfactory.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenuitem.ngsummary.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenuitembutton.mjs +0 -28
- package/esm2020/controls/contextmenu/contextmenuitembutton.ngfactory.mjs +0 -3
- package/esm2020/controls/contextmenu/contextmenuitembutton.ngsummary.mjs +0 -3
- package/esm2020/controls/datetime/date.mjs +0 -55
- package/esm2020/controls/datetime/date.ngfactory.mjs +0 -3
- package/esm2020/controls/datetime/date.ngsummary.mjs +0 -3
- package/esm2020/controls/datetime/dateselector.mjs +0 -119
- package/esm2020/controls/datetime/dateselector.ngfactory.mjs +0 -3
- package/esm2020/controls/datetime/dateselector.ngsummary.mjs +0 -3
- package/esm2020/controls/datetime/datetime.mjs +0 -58
- package/esm2020/controls/datetime/datetime.ngfactory.mjs +0 -3
- package/esm2020/controls/datetime/datetime.ngsummary.mjs +0 -3
- package/esm2020/controls/datetime/time.mjs +0 -55
- package/esm2020/controls/datetime/time.ngfactory.mjs +0 -3
- package/esm2020/controls/datetime/time.ngsummary.mjs +0 -3
- package/esm2020/controls/dialog/dialog.mjs +0 -61
- package/esm2020/controls/dialog/dialog.ngfactory.mjs +0 -3
- package/esm2020/controls/dialog/dialog.ngsummary.mjs +0 -3
- package/esm2020/controls/form/form.mjs +0 -38
- package/esm2020/controls/form/form.ngfactory.mjs +0 -3
- package/esm2020/controls/form/form.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/grid.mjs +0 -50
- package/esm2020/controls/grid/grid.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/grid.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/gridbutton.mjs +0 -17
- package/esm2020/controls/grid/gridbutton.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/gridbutton.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/gridcolumn.mjs +0 -15
- package/esm2020/controls/grid/gridcolumn.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/gridcolumn.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/gridcolumnaction.mjs +0 -10
- package/esm2020/controls/grid/gridcolumnaction.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/gridcolumnaction.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/gridcolumnbase.mjs +0 -35
- package/esm2020/controls/grid/gridcolumnbase.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/gridcolumnbase.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/gridimage.mjs +0 -5
- package/esm2020/controls/grid/gridimage.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/gridimage.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/model.mjs +0 -36
- package/esm2020/controls/grid/model.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/model.ngsummary.mjs +0 -3
- package/esm2020/controls/grid/paging.mjs +0 -87
- package/esm2020/controls/grid/paging.ngfactory.mjs +0 -3
- package/esm2020/controls/grid/paging.ngsummary.mjs +0 -3
- package/esm2020/controls/input/input.mjs +0 -22
- package/esm2020/controls/input/input.ngfactory.mjs +0 -3
- package/esm2020/controls/input/input.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputarea.mjs +0 -16
- package/esm2020/controls/input/inputarea.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputarea.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputcurrency.mjs +0 -5
- package/esm2020/controls/input/inputcurrency.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputcurrency.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputdecimal.mjs +0 -41
- package/esm2020/controls/input/inputdecimal.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputdecimal.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputemail.mjs +0 -14
- package/esm2020/controls/input/inputemail.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputemail.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputinteger.mjs +0 -40
- package/esm2020/controls/input/inputinteger.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputinteger.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputpassword.mjs +0 -16
- package/esm2020/controls/input/inputpassword.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputpassword.ngsummary.mjs +0 -3
- package/esm2020/controls/input/inputsearch.mjs +0 -13
- package/esm2020/controls/input/inputsearch.ngfactory.mjs +0 -3
- package/esm2020/controls/input/inputsearch.ngsummary.mjs +0 -3
- package/esm2020/controls/layout/formlayout.mjs +0 -28
- package/esm2020/controls/layout/formlayout.ngfactory.mjs +0 -3
- package/esm2020/controls/layout/formlayout.ngsummary.mjs +0 -3
- package/esm2020/controls/list/dropdown.mjs +0 -105
- package/esm2020/controls/list/dropdown.ngfactory.mjs +0 -3
- package/esm2020/controls/list/dropdown.ngsummary.mjs +0 -3
- package/esm2020/controls/list/list.module.mjs +0 -3
- package/esm2020/controls/list/list.module.ngfactory.mjs +0 -3
- package/esm2020/controls/list/list.module.ngsummary.mjs +0 -3
- package/esm2020/controls/list/listbox.mjs +0 -58
- package/esm2020/controls/list/listbox.ngfactory.mjs +0 -3
- package/esm2020/controls/list/listbox.ngsummary.mjs +0 -3
- package/esm2020/controls/multilanguage/multilanguageinput.mjs +0 -62
- package/esm2020/controls/multilanguage/multilanguageinput.ngfactory.mjs +0 -3
- package/esm2020/controls/multilanguage/multilanguageinput.ngsummary.mjs +0 -3
- package/esm2020/controls/multilanguage/multilanguageinputarea.mjs +0 -65
- package/esm2020/controls/multilanguage/multilanguageinputarea.ngfactory.mjs +0 -3
- package/esm2020/controls/multilanguage/multilanguageinputarea.ngsummary.mjs +0 -3
- package/esm2020/controls/static/formcontainer.mjs +0 -20
- package/esm2020/controls/static/formcontainer.ngfactory.mjs +0 -3
- package/esm2020/controls/static/formcontainer.ngsummary.mjs +0 -3
- package/esm2020/controls/static/staticlabel.mjs +0 -13
- package/esm2020/controls/static/staticlabel.ngfactory.mjs +0 -3
- package/esm2020/controls/static/staticlabel.ngsummary.mjs +0 -3
- package/esm2020/controls/tabs/tab.mjs +0 -24
- package/esm2020/controls/tabs/tab.ngfactory.mjs +0 -3
- package/esm2020/controls/tabs/tab.ngsummary.mjs +0 -3
- package/esm2020/controls/tabs/tabitem.mjs +0 -11
- package/esm2020/controls/tabs/tabitem.ngfactory.mjs +0 -3
- package/esm2020/controls/tabs/tabitem.ngsummary.mjs +0 -3
- package/esm2020/controls/tinymce/tinymce.mjs +0 -80
- package/esm2020/controls/tinymce/tinymce.ngfactory.mjs +0 -3
- package/esm2020/controls/tinymce/tinymce.ngsummary.mjs +0 -3
- package/esm2020/controls/tinymce/tinymcedialogsettings.mjs +0 -8
- package/esm2020/controls/tinymce/tinymcedialogsettings.ngfactory.mjs +0 -3
- package/esm2020/controls/tinymce/tinymcedialogsettings.ngsummary.mjs +0 -3
- package/esm2020/controls/tinymce/tinymcedialogsettingsmeta.mjs +0 -5
- package/esm2020/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.mjs +0 -3
- package/esm2020/controls/tinymce/tinymcedialogsettingsmeta.ngsummary.mjs +0 -3
- package/esm2020/controls/tinymce/tinymceinstance.mjs +0 -3
- package/esm2020/controls/tinymce/tinymceinstance.ngfactory.mjs +0 -3
- package/esm2020/controls/tinymce/tinymceinstance.ngsummary.mjs +0 -3
- package/esm2020/controls/tooltip/tooltip.mjs +0 -85
- package/esm2020/controls/tooltip/tooltip.ngfactory.mjs +0 -3
- package/esm2020/controls/tooltip/tooltip.ngsummary.mjs +0 -3
- package/esm2020/controls/treeview/ngtreeitemaction.mjs +0 -16
- package/esm2020/controls/treeview/ngtreeitemaction.ngfactory.mjs +0 -3
- package/esm2020/controls/treeview/ngtreeitemaction.ngsummary.mjs +0 -3
- package/esm2020/controls/treeview/treeview.mjs +0 -98
- package/esm2020/controls/treeview/treeview.ngfactory.mjs +0 -3
- package/esm2020/controls/treeview/treeview.ngsummary.mjs +0 -3
- package/esm2020/controls/treeview/treeviewchild.mjs +0 -8
- package/esm2020/controls/treeview/treeviewchild.ngfactory.mjs +0 -3
- package/esm2020/controls/treeview/treeviewchild.ngsummary.mjs +0 -3
- package/esm2020/controls/upload/dropzonemultiple.mjs +0 -46
- package/esm2020/controls/upload/dropzonemultiple.ngfactory.mjs +0 -3
- package/esm2020/controls/upload/dropzonemultiple.ngsummary.mjs +0 -3
- package/esm2020/controls/upload/dropzonesingle.mjs +0 -28
- package/esm2020/controls/upload/dropzonesingle.ngfactory.mjs +0 -3
- package/esm2020/controls/upload/dropzonesingle.ngsummary.mjs +0 -3
- package/esm2020/controls/upload/uploadmultiple.mjs +0 -35
- package/esm2020/controls/upload/uploadmultiple.ngfactory.mjs +0 -3
- package/esm2020/controls/upload/uploadmultiple.ngsummary.mjs +0 -3
- package/esm2020/controls/upload/uploadsingle.mjs +0 -17
- package/esm2020/controls/upload/uploadsingle.ngfactory.mjs +0 -3
- package/esm2020/controls/upload/uploadsingle.ngsummary.mjs +0 -3
- package/esm2020/controls/validation/validationsummary.mjs +0 -31
- package/esm2020/controls/validation/validationsummary.ngfactory.mjs +0 -3
- package/esm2020/controls/validation/validationsummary.ngsummary.mjs +0 -3
- package/esm2020/controls/wizard/wizard.mjs +0 -37
- package/esm2020/controls/wizard/wizard.ngfactory.mjs +0 -3
- package/esm2020/controls/wizard/wizard.ngsummary.mjs +0 -3
- package/esm2020/controls/wizard/wizarditem.mjs +0 -9
- package/esm2020/controls/wizard/wizarditem.ngfactory.mjs +0 -3
- package/esm2020/controls/wizard/wizarditem.ngsummary.mjs +0 -3
- package/esm2020/enums/ButtonRoleType.mjs +0 -3
- package/esm2020/enums/ButtonRoleType.ngfactory.mjs +0 -3
- package/esm2020/enums/ButtonRoleType.ngsummary.mjs +0 -3
- package/esm2020/enums/ControlHeight.mjs +0 -11
- package/esm2020/enums/ControlHeight.ngfactory.mjs +0 -3
- package/esm2020/enums/ControlHeight.ngsummary.mjs +0 -3
- package/esm2020/enums/IconType.mjs +0 -5
- package/esm2020/enums/IconType.ngfactory.mjs +0 -3
- package/esm2020/enums/IconType.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacConfigurationService.mjs +0 -3
- package/esm2020/interfaces/ISacConfigurationService.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacConfigurationService.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacFileBrowserService.mjs +0 -3
- package/esm2020/interfaces/ISacFileBrowserService.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacFileBrowserService.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacIconService.mjs +0 -3
- package/esm2020/interfaces/ISacIconService.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacIconService.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacLabelSizes.mjs +0 -3
- package/esm2020/interfaces/ISacLabelSizes.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacLabelSizes.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacLanguageService.mjs +0 -3
- package/esm2020/interfaces/ISacLanguageService.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacLanguageService.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacLocalisationService.mjs +0 -3
- package/esm2020/interfaces/ISacLocalisationService.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacLocalisationService.ngsummary.mjs +0 -3
- package/esm2020/interfaces/ISacValidationKeyService.mjs +0 -3
- package/esm2020/interfaces/ISacValidationKeyService.ngfactory.mjs +0 -3
- package/esm2020/interfaces/ISacValidationKeyService.ngsummary.mjs +0 -3
- package/esm2020/interfaces/iabstractcontrollabel.mjs +0 -3
- package/esm2020/interfaces/iabstractcontrollabel.ngfactory.mjs +0 -3
- package/esm2020/interfaces/iabstractcontrollabel.ngsummary.mjs +0 -3
- package/esm2020/interfaces/iconfirmcomponent.mjs +0 -3
- package/esm2020/interfaces/iconfirmcomponent.ngfactory.mjs +0 -3
- package/esm2020/interfaces/iconfirmcomponent.ngsummary.mjs +0 -3
- package/esm2020/interfaces/idatetimecontrol.mjs +0 -3
- package/esm2020/interfaces/idatetimecontrol.ngfactory.mjs +0 -3
- package/esm2020/interfaces/idatetimecontrol.ngsummary.mjs +0 -3
- package/esm2020/interfaces/iuploadcontrol.mjs +0 -3
- package/esm2020/interfaces/iuploadcontrol.ngfactory.mjs +0 -3
- package/esm2020/interfaces/iuploadcontrol.ngsummary.mjs +0 -3
- package/esm2020/models/languagemodel.mjs +0 -7
- package/esm2020/models/languagemodel.ngfactory.mjs +0 -3
- package/esm2020/models/languagemodel.ngsummary.mjs +0 -3
- package/esm2020/public_api.mjs +0 -25
- package/esm2020/public_api.ngfactory.mjs +0 -3
- package/esm2020/public_api.ngsummary.mjs +0 -3
- package/esm2020/services/index.mjs +0 -3
- package/esm2020/services/index.ngfactory.mjs +0 -3
- package/esm2020/services/index.ngsummary.mjs +0 -3
- package/esm2020/services/sac-configuration.service.mjs +0 -25
- package/esm2020/services/sac-configuration.service.ngfactory.mjs +0 -3
- package/esm2020/services/sac-configuration.service.ngsummary.mjs +0 -3
- package/esm2020/services/sac-filebrowser.service.mjs +0 -53
- package/esm2020/services/sac-filebrowser.service.ngfactory.mjs +0 -3
- package/esm2020/services/sac-filebrowser.service.ngsummary.mjs +0 -3
- package/esm2020/services/sac-icon.service.mjs +0 -55
- package/esm2020/services/sac-icon.service.ngfactory.mjs +0 -3
- package/esm2020/services/sac-icon.service.ngsummary.mjs +0 -3
- package/esm2020/services/sac-language.service.mjs +0 -11
- package/esm2020/services/sac-language.service.ngfactory.mjs +0 -3
- package/esm2020/services/sac-language.service.ngsummary.mjs +0 -3
- package/esm2020/services/sac-localisation.service.mjs +0 -40
- package/esm2020/services/sac-localisation.service.ngfactory.mjs +0 -3
- package/esm2020/services/sac-localisation.service.ngsummary.mjs +0 -3
- package/esm2020/services/sac-validationkey.service.mjs +0 -7
- package/esm2020/services/sac-validationkey.service.ngfactory.mjs +0 -3
- package/esm2020/services/sac-validationkey.service.ngsummary.mjs +0 -3
- package/esm2020/simpleangularcontrols-sac-common.mjs +0 -5
- package/esm2020/utilities/convertion.mjs +0 -12
- package/esm2020/utilities/convertion.ngfactory.mjs +0 -3
- package/esm2020/utilities/convertion.ngsummary.mjs +0 -3
- package/esm2020/utilities/datatypes.mjs +0 -7
- package/esm2020/utilities/datatypes.ngfactory.mjs +0 -3
- package/esm2020/utilities/datatypes.ngsummary.mjs +0 -3
- package/esm2020/utilities/enums.mjs +0 -9
- package/esm2020/utilities/enums.ngfactory.mjs +0 -3
- package/esm2020/utilities/enums.ngsummary.mjs +0 -3
- package/esm2020/utilities/guid.mjs +0 -6
- package/esm2020/utilities/guid.ngfactory.mjs +0 -3
- package/esm2020/utilities/guid.ngsummary.mjs +0 -3
- package/esm2020/utilities/interpolation.mjs +0 -15
- package/esm2020/utilities/interpolation.ngfactory.mjs +0 -3
- package/esm2020/utilities/interpolation.ngsummary.mjs +0 -3
- package/esm2020/utilities/positioning.mjs +0 -58
- package/esm2020/utilities/positioning.ngfactory.mjs +0 -3
- package/esm2020/utilities/positioning.ngsummary.mjs +0 -3
- package/esm2020/validation/email.validator.mjs +0 -3
- package/esm2020/validation/email.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/email.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/index.mjs +0 -3
- package/esm2020/validation/index.ngfactory.mjs +0 -3
- package/esm2020/validation/index.ngsummary.mjs +0 -3
- package/esm2020/validation/invaliddate.validator.mjs +0 -3
- package/esm2020/validation/invaliddate.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/invaliddate.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/isDateValid.mjs +0 -6
- package/esm2020/validation/isDateValid.ngfactory.mjs +0 -3
- package/esm2020/validation/isDateValid.ngsummary.mjs +0 -3
- package/esm2020/validation/maxdate.validator.mjs +0 -4
- package/esm2020/validation/maxdate.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/maxdate.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/maxtime.validator.mjs +0 -4
- package/esm2020/validation/maxtime.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/maxtime.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/maxvalue.validator.mjs +0 -3
- package/esm2020/validation/maxvalue.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/maxvalue.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/mindate.validator.mjs +0 -4
- package/esm2020/validation/mindate.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/mindate.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/minfiles.validator.mjs +0 -4
- package/esm2020/validation/minfiles.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/minfiles.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/minlength.validator.mjs +0 -3
- package/esm2020/validation/minlength.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/minlength.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/mintime.validator.mjs +0 -4
- package/esm2020/validation/mintime.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/mintime.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/minvalue.validator.mjs +0 -3
- package/esm2020/validation/minvalue.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/minvalue.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/multilanguagerequired.validator.mjs +0 -3
- package/esm2020/validation/multilanguagerequired.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/multilanguagerequired.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/multilanguagerequiredany.validator.mjs +0 -3
- package/esm2020/validation/multilanguagerequiredany.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/multilanguagerequiredany.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/pattern.validator.mjs +0 -3
- package/esm2020/validation/pattern.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/pattern.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/required.validator.mjs +0 -3
- package/esm2020/validation/required.validator.ngfactory.mjs +0 -3
- package/esm2020/validation/required.validator.ngsummary.mjs +0 -3
- package/esm2020/validation/validation.mjs +0 -109
- package/esm2020/validation/validation.ngfactory.mjs +0 -3
- package/esm2020/validation/validation.ngsummary.mjs +0 -3
- package/esm2020/validation/validationerrorcreator.mjs +0 -3
- package/esm2020/validation/validationerrorcreator.ngfactory.mjs +0 -3
- package/esm2020/validation/validationerrorcreator.ngsummary.mjs +0 -3
- package/esm2020/validation/validationerroritem.mjs +0 -15
- package/esm2020/validation/validationerroritem.ngfactory.mjs +0 -3
- package/esm2020/validation/validationerroritem.ngsummary.mjs +0 -3
- package/fesm2015/simpleangularcontrols-sac-common.mjs +0 -2806
- package/fesm2015/simpleangularcontrols-sac-common.mjs.map +0 -1
- package/fesm2020/simpleangularcontrols-sac-common.mjs +0 -2806
- package/fesm2020/simpleangularcontrols-sac-common.mjs.map +0 -1
- package/interfaces/ISacConfigurationService.d.ts +0 -35
- package/interfaces/ISacConfigurationService.d.ts.map +0 -1
- package/interfaces/ISacConfigurationService.ngfactory.d.ts +0 -2
- package/interfaces/ISacConfigurationService.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacConfigurationService.ngsummary.d.ts +0 -2
- package/interfaces/ISacConfigurationService.ngsummary.d.ts.map +0 -1
- package/interfaces/ISacFileBrowserService.ngfactory.d.ts +0 -2
- package/interfaces/ISacFileBrowserService.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacFileBrowserService.ngsummary.d.ts +0 -2
- package/interfaces/ISacFileBrowserService.ngsummary.d.ts.map +0 -1
- package/interfaces/ISacIconService.ngfactory.d.ts +0 -2
- package/interfaces/ISacIconService.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacIconService.ngsummary.d.ts +0 -2
- package/interfaces/ISacIconService.ngsummary.d.ts.map +0 -1
- package/interfaces/ISacLabelSizes.d.ts +0 -27
- package/interfaces/ISacLabelSizes.d.ts.map +0 -1
- package/interfaces/ISacLabelSizes.ngfactory.d.ts +0 -2
- package/interfaces/ISacLabelSizes.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacLabelSizes.ngsummary.d.ts +0 -2
- package/interfaces/ISacLabelSizes.ngsummary.d.ts.map +0 -1
- package/interfaces/ISacLanguageService.ngfactory.d.ts +0 -2
- package/interfaces/ISacLanguageService.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacLanguageService.ngsummary.d.ts +0 -2
- package/interfaces/ISacLanguageService.ngsummary.d.ts.map +0 -1
- package/interfaces/ISacLocalisationService.ngfactory.d.ts +0 -2
- package/interfaces/ISacLocalisationService.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacLocalisationService.ngsummary.d.ts +0 -2
- package/interfaces/ISacLocalisationService.ngsummary.d.ts.map +0 -1
- package/interfaces/ISacValidationKeyService.d.ts +0 -53
- package/interfaces/ISacValidationKeyService.d.ts.map +0 -1
- package/interfaces/ISacValidationKeyService.ngfactory.d.ts +0 -2
- package/interfaces/ISacValidationKeyService.ngfactory.d.ts.map +0 -1
- package/interfaces/ISacValidationKeyService.ngsummary.d.ts +0 -2
- package/interfaces/ISacValidationKeyService.ngsummary.d.ts.map +0 -1
- package/interfaces/iabstractcontrollabel.ngfactory.d.ts +0 -2
- package/interfaces/iabstractcontrollabel.ngfactory.d.ts.map +0 -1
- package/interfaces/iabstractcontrollabel.ngsummary.d.ts +0 -2
- package/interfaces/iabstractcontrollabel.ngsummary.d.ts.map +0 -1
- package/interfaces/iconfirmcomponent.ngfactory.d.ts +0 -2
- package/interfaces/iconfirmcomponent.ngfactory.d.ts.map +0 -1
- package/interfaces/iconfirmcomponent.ngsummary.d.ts +0 -2
- package/interfaces/iconfirmcomponent.ngsummary.d.ts.map +0 -1
- package/interfaces/idatetimecontrol.ngfactory.d.ts +0 -2
- package/interfaces/idatetimecontrol.ngfactory.d.ts.map +0 -1
- package/interfaces/idatetimecontrol.ngsummary.d.ts +0 -2
- package/interfaces/idatetimecontrol.ngsummary.d.ts.map +0 -1
- package/interfaces/iuploadcontrol.ngfactory.d.ts +0 -2
- package/interfaces/iuploadcontrol.ngfactory.d.ts.map +0 -1
- package/interfaces/iuploadcontrol.ngsummary.d.ts +0 -2
- package/interfaces/iuploadcontrol.ngsummary.d.ts.map +0 -1
- package/models/languagemodel.ngfactory.d.ts +0 -2
- package/models/languagemodel.ngfactory.d.ts.map +0 -1
- package/models/languagemodel.ngsummary.d.ts +0 -2
- package/models/languagemodel.ngsummary.d.ts.map +0 -1
- package/public_api.ngfactory.d.ts +0 -2
- package/public_api.ngfactory.d.ts.map +0 -1
- package/public_api.ngsummary.d.ts +0 -2
- package/public_api.ngsummary.d.ts.map +0 -1
- package/services/index.ngfactory.d.ts +0 -2
- package/services/index.ngfactory.d.ts.map +0 -1
- package/services/index.ngsummary.d.ts +0 -2
- package/services/index.ngsummary.d.ts.map +0 -1
- package/services/sac-configuration.service.d.ts +0 -76
- package/services/sac-configuration.service.d.ts.map +0 -1
- package/services/sac-configuration.service.ngfactory.d.ts +0 -5
- package/services/sac-configuration.service.ngfactory.d.ts.map +0 -1
- package/services/sac-configuration.service.ngsummary.d.ts +0 -3
- package/services/sac-configuration.service.ngsummary.d.ts.map +0 -1
- package/services/sac-filebrowser.service.ngfactory.d.ts +0 -5
- package/services/sac-filebrowser.service.ngfactory.d.ts.map +0 -1
- package/services/sac-filebrowser.service.ngsummary.d.ts +0 -3
- package/services/sac-filebrowser.service.ngsummary.d.ts.map +0 -1
- package/services/sac-icon.service.ngfactory.d.ts +0 -5
- package/services/sac-icon.service.ngfactory.d.ts.map +0 -1
- package/services/sac-icon.service.ngsummary.d.ts +0 -3
- package/services/sac-icon.service.ngsummary.d.ts.map +0 -1
- package/services/sac-language.service.ngfactory.d.ts +0 -5
- package/services/sac-language.service.ngfactory.d.ts.map +0 -1
- package/services/sac-language.service.ngsummary.d.ts +0 -3
- package/services/sac-language.service.ngsummary.d.ts.map +0 -1
- package/services/sac-localisation.service.ngfactory.d.ts +0 -5
- package/services/sac-localisation.service.ngfactory.d.ts.map +0 -1
- package/services/sac-localisation.service.ngsummary.d.ts +0 -3
- package/services/sac-localisation.service.ngsummary.d.ts.map +0 -1
- package/services/sac-validationkey.service.d.ts +0 -59
- package/services/sac-validationkey.service.d.ts.map +0 -1
- package/services/sac-validationkey.service.ngfactory.d.ts +0 -4
- package/services/sac-validationkey.service.ngfactory.d.ts.map +0 -1
- package/services/sac-validationkey.service.ngsummary.d.ts +0 -2
- package/services/sac-validationkey.service.ngsummary.d.ts.map +0 -1
- package/simpleangularcontrols-sac-common-13.0.0-rc.5.tgz +0 -0
- package/utilities/convertion.ngfactory.d.ts +0 -2
- package/utilities/convertion.ngfactory.d.ts.map +0 -1
- package/utilities/convertion.ngsummary.d.ts +0 -2
- package/utilities/convertion.ngsummary.d.ts.map +0 -1
- package/utilities/datatypes.ngfactory.d.ts +0 -2
- package/utilities/datatypes.ngfactory.d.ts.map +0 -1
- package/utilities/datatypes.ngsummary.d.ts +0 -2
- package/utilities/datatypes.ngsummary.d.ts.map +0 -1
- package/utilities/enums.ngfactory.d.ts +0 -2
- package/utilities/enums.ngfactory.d.ts.map +0 -1
- package/utilities/enums.ngsummary.d.ts +0 -2
- package/utilities/enums.ngsummary.d.ts.map +0 -1
- package/utilities/guid.d.ts +0 -5
- package/utilities/guid.d.ts.map +0 -1
- package/utilities/guid.ngfactory.d.ts +0 -2
- package/utilities/guid.ngfactory.d.ts.map +0 -1
- package/utilities/guid.ngsummary.d.ts +0 -2
- package/utilities/guid.ngsummary.d.ts.map +0 -1
- package/utilities/interpolation.ngfactory.d.ts +0 -2
- package/utilities/interpolation.ngfactory.d.ts.map +0 -1
- package/utilities/interpolation.ngsummary.d.ts +0 -2
- package/utilities/interpolation.ngsummary.d.ts.map +0 -1
- package/utilities/positioning.ngfactory.d.ts +0 -2
- package/utilities/positioning.ngfactory.d.ts.map +0 -1
- package/utilities/positioning.ngsummary.d.ts +0 -2
- package/utilities/positioning.ngsummary.d.ts.map +0 -1
- package/validation/email.validator.ngfactory.d.ts +0 -2
- package/validation/email.validator.ngfactory.d.ts.map +0 -1
- package/validation/email.validator.ngsummary.d.ts +0 -2
- package/validation/email.validator.ngsummary.d.ts.map +0 -1
- package/validation/index.ngfactory.d.ts +0 -2
- package/validation/index.ngfactory.d.ts.map +0 -1
- package/validation/index.ngsummary.d.ts +0 -2
- package/validation/index.ngsummary.d.ts.map +0 -1
- package/validation/invaliddate.validator.ngfactory.d.ts +0 -2
- package/validation/invaliddate.validator.ngfactory.d.ts.map +0 -1
- package/validation/invaliddate.validator.ngsummary.d.ts +0 -2
- package/validation/invaliddate.validator.ngsummary.d.ts.map +0 -1
- package/validation/isDateValid.ngfactory.d.ts +0 -2
- package/validation/isDateValid.ngfactory.d.ts.map +0 -1
- package/validation/isDateValid.ngsummary.d.ts +0 -2
- package/validation/isDateValid.ngsummary.d.ts.map +0 -1
- package/validation/maxdate.validator.ngfactory.d.ts +0 -2
- package/validation/maxdate.validator.ngfactory.d.ts.map +0 -1
- package/validation/maxdate.validator.ngsummary.d.ts +0 -2
- package/validation/maxdate.validator.ngsummary.d.ts.map +0 -1
- package/validation/maxtime.validator.ngfactory.d.ts +0 -2
- package/validation/maxtime.validator.ngfactory.d.ts.map +0 -1
- package/validation/maxtime.validator.ngsummary.d.ts +0 -2
- package/validation/maxtime.validator.ngsummary.d.ts.map +0 -1
- package/validation/maxvalue.validator.ngfactory.d.ts +0 -2
- package/validation/maxvalue.validator.ngfactory.d.ts.map +0 -1
- package/validation/maxvalue.validator.ngsummary.d.ts +0 -2
- package/validation/maxvalue.validator.ngsummary.d.ts.map +0 -1
- package/validation/mindate.validator.ngfactory.d.ts +0 -2
- package/validation/mindate.validator.ngfactory.d.ts.map +0 -1
- package/validation/mindate.validator.ngsummary.d.ts +0 -2
- package/validation/mindate.validator.ngsummary.d.ts.map +0 -1
- package/validation/minfiles.validator.ngfactory.d.ts +0 -2
- package/validation/minfiles.validator.ngfactory.d.ts.map +0 -1
- package/validation/minfiles.validator.ngsummary.d.ts +0 -2
- package/validation/minfiles.validator.ngsummary.d.ts.map +0 -1
- package/validation/minlength.validator.ngfactory.d.ts +0 -2
- package/validation/minlength.validator.ngfactory.d.ts.map +0 -1
- package/validation/minlength.validator.ngsummary.d.ts +0 -2
- package/validation/minlength.validator.ngsummary.d.ts.map +0 -1
- package/validation/mintime.validator.ngfactory.d.ts +0 -2
- package/validation/mintime.validator.ngfactory.d.ts.map +0 -1
- package/validation/mintime.validator.ngsummary.d.ts +0 -2
- package/validation/mintime.validator.ngsummary.d.ts.map +0 -1
- package/validation/minvalue.validator.ngfactory.d.ts +0 -2
- package/validation/minvalue.validator.ngfactory.d.ts.map +0 -1
- package/validation/minvalue.validator.ngsummary.d.ts +0 -2
- package/validation/minvalue.validator.ngsummary.d.ts.map +0 -1
- package/validation/multilanguagerequired.validator.ngfactory.d.ts +0 -2
- package/validation/multilanguagerequired.validator.ngfactory.d.ts.map +0 -1
- package/validation/multilanguagerequired.validator.ngsummary.d.ts +0 -2
- package/validation/multilanguagerequired.validator.ngsummary.d.ts.map +0 -1
- package/validation/multilanguagerequiredany.validator.ngfactory.d.ts +0 -2
- package/validation/multilanguagerequiredany.validator.ngfactory.d.ts.map +0 -1
- package/validation/multilanguagerequiredany.validator.ngsummary.d.ts +0 -2
- package/validation/multilanguagerequiredany.validator.ngsummary.d.ts.map +0 -1
- package/validation/pattern.validator.ngfactory.d.ts +0 -2
- package/validation/pattern.validator.ngfactory.d.ts.map +0 -1
- package/validation/pattern.validator.ngsummary.d.ts +0 -2
- package/validation/pattern.validator.ngsummary.d.ts.map +0 -1
- package/validation/required.validator.ngfactory.d.ts +0 -2
- package/validation/required.validator.ngfactory.d.ts.map +0 -1
- package/validation/required.validator.ngsummary.d.ts +0 -2
- package/validation/required.validator.ngsummary.d.ts.map +0 -1
- package/validation/validation.ngfactory.d.ts +0 -2
- package/validation/validation.ngfactory.d.ts.map +0 -1
- package/validation/validation.ngsummary.d.ts +0 -2
- package/validation/validation.ngsummary.d.ts.map +0 -1
- package/validation/validationerrorcreator.ngfactory.d.ts +0 -2
- package/validation/validationerrorcreator.ngfactory.d.ts.map +0 -1
- package/validation/validationerrorcreator.ngsummary.d.ts +0 -2
- package/validation/validationerrorcreator.ngsummary.d.ts.map +0 -1
- package/validation/validationerroritem.ngfactory.d.ts +0 -2
- package/validation/validationerroritem.ngfactory.d.ts.map +0 -1
- package/validation/validationerroritem.ngsummary.d.ts +0 -2
- package/validation/validationerroritem.ngsummary.d.ts.map +0 -1
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { isDefined } from './datatypes';
|
|
2
|
+
/**
|
|
3
|
+
* Klasse zum ersetzen von Platzhaltern in Strings
|
|
4
|
+
*/
|
|
5
|
+
export class Interpolation {
|
|
6
|
+
constructor() {
|
|
7
|
+
/**
|
|
8
|
+
* Template zum Parsen der Platzhalter
|
|
9
|
+
*/
|
|
10
|
+
this.templateMatcher = /{{\s?([^{}\s]*)\s?}}/g;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Platzhalter in String ersetzen
|
|
14
|
+
* @param text Text in welchem die Platzhalter ersetzt werden
|
|
15
|
+
* @param params Objekt mit Parameter.
|
|
16
|
+
*/
|
|
17
|
+
interpolateString(text, params) {
|
|
18
|
+
if (!params) {
|
|
19
|
+
return text;
|
|
20
|
+
}
|
|
21
|
+
return text.replace(this.templateMatcher, (substring, b) => {
|
|
22
|
+
const r = this.getValue(params, b);
|
|
23
|
+
return isDefined(r) ? r : substring;
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Wert aus Objekt in Objekt oder Objektstruktur lesen
|
|
28
|
+
* @param target Objekt das zu parsen ist.
|
|
29
|
+
* @param key Key nach welchem gesucht wird. Navigation in Properties des Objekt mit einem Punkt.
|
|
30
|
+
*/
|
|
31
|
+
getValue(target, key) {
|
|
32
|
+
const keys = key.split('.');
|
|
33
|
+
key = '';
|
|
34
|
+
do {
|
|
35
|
+
key += keys.shift();
|
|
36
|
+
if (isDefined(target) && isDefined(target[key]) && (typeof target[key] === 'object' || !keys.length)) {
|
|
37
|
+
target = target[key];
|
|
38
|
+
key = '';
|
|
39
|
+
}
|
|
40
|
+
else if (!keys.length) {
|
|
41
|
+
target = undefined;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
key += '.';
|
|
45
|
+
}
|
|
46
|
+
} while (keys.length);
|
|
47
|
+
return target;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJwb2xhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL3V0aWxpdGllcy9pbnRlcnBvbGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEM7O0dBRUc7QUFDSCxNQUFNLE9BQU8sYUFBYTtJQUExQjtRQUVFOztXQUVHO1FBQ0ssb0JBQWUsR0FBVyx1QkFBdUIsQ0FBQztJQXlDNUQsQ0FBQztJQXZDQzs7OztPQUlHO0lBQ0ksaUJBQWlCLENBQUMsSUFBWSxFQUFFLE1BQVk7UUFDakQsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNYLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQWlCLEVBQUUsQ0FBUyxFQUFFLEVBQUU7WUFDekUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkMsT0FBTyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxRQUFRLENBQUMsTUFBVyxFQUFFLEdBQVc7UUFDdkMsTUFBTSxJQUFJLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixHQUFHLEdBQUcsRUFBRSxDQUFDO1FBQ1QsR0FBRztZQUNELEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDcEIsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNwRyxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQixHQUFHLEdBQUcsRUFBRSxDQUFDO2FBQ1Y7aUJBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ3ZCLE1BQU0sR0FBRyxTQUFTLENBQUM7YUFDcEI7aUJBQU07Z0JBQ0wsR0FBRyxJQUFJLEdBQUcsQ0FBQzthQUNaO1NBQ0YsUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFO1FBRXRCLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzRGVmaW5lZCB9IGZyb20gJy4vZGF0YXR5cGVzJztcclxuXHJcbi8qKlxyXG4gKiAgS2xhc3NlIHp1bSBlcnNldHplbiB2b24gUGxhdHpoYWx0ZXJuIGluIFN0cmluZ3NcclxuICovXHJcbmV4cG9ydCBjbGFzcyBJbnRlcnBvbGF0aW9uIHtcclxuXHJcbiAgLyoqXHJcbiAgICogIFRlbXBsYXRlIHp1bSBQYXJzZW4gZGVyIFBsYXR6aGFsdGVyXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB0ZW1wbGF0ZU1hdGNoZXI6IFJlZ0V4cCA9IC97e1xccz8oW157fVxcc10qKVxccz99fS9nO1xyXG5cclxuICAvKipcclxuICAgKiBQbGF0emhhbHRlciBpbiBTdHJpbmcgZXJzZXR6ZW5cclxuICAgKiBAcGFyYW0gdGV4dCBUZXh0IGluIHdlbGNoZW0gZGllIFBsYXR6aGFsdGVyIGVyc2V0enQgd2VyZGVuXHJcbiAgICogQHBhcmFtIHBhcmFtcyBPYmpla3QgbWl0IFBhcmFtZXRlci5cclxuICAgKi9cclxuICBwdWJsaWMgaW50ZXJwb2xhdGVTdHJpbmcodGV4dDogc3RyaW5nLCBwYXJhbXM/OiBhbnkpIHtcclxuICAgIGlmICghcGFyYW1zKSB7XHJcbiAgICAgIHJldHVybiB0ZXh0O1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0ZXh0LnJlcGxhY2UodGhpcy50ZW1wbGF0ZU1hdGNoZXIsIChzdWJzdHJpbmc6IHN0cmluZywgYjogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGNvbnN0IHIgPSB0aGlzLmdldFZhbHVlKHBhcmFtcywgYik7XHJcbiAgICAgIHJldHVybiBpc0RlZmluZWQocikgPyByIDogc3Vic3RyaW5nO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXZXJ0IGF1cyBPYmpla3QgaW4gT2JqZWt0IG9kZXIgT2JqZWt0c3RydWt0dXIgbGVzZW5cclxuICAgKiBAcGFyYW0gdGFyZ2V0IE9iamVrdCBkYXMgenUgcGFyc2VuIGlzdC5cclxuICAgKiBAcGFyYW0ga2V5IEtleSBuYWNoIHdlbGNoZW0gZ2VzdWNodCB3aXJkLiBOYXZpZ2F0aW9uIGluIFByb3BlcnRpZXMgZGVzIE9iamVrdCBtaXQgZWluZW0gUHVua3QuXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBnZXRWYWx1ZSh0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcpOiBhbnkge1xyXG4gICAgY29uc3Qga2V5cyA9IGtleS5zcGxpdCgnLicpO1xyXG4gICAga2V5ID0gJyc7XHJcbiAgICBkbyB7XHJcbiAgICAgIGtleSArPSBrZXlzLnNoaWZ0KCk7XHJcbiAgICAgIGlmIChpc0RlZmluZWQodGFyZ2V0KSAmJiBpc0RlZmluZWQodGFyZ2V0W2tleV0pICYmICh0eXBlb2YgdGFyZ2V0W2tleV0gPT09ICdvYmplY3QnIHx8ICFrZXlzLmxlbmd0aCkpIHtcclxuICAgICAgICB0YXJnZXQgPSB0YXJnZXRba2V5XTtcclxuICAgICAgICBrZXkgPSAnJztcclxuICAgICAgfSBlbHNlIGlmICgha2V5cy5sZW5ndGgpIHtcclxuICAgICAgICB0YXJnZXQgPSB1bmRlZmluZWQ7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAga2V5ICs9ICcuJztcclxuICAgICAgfVxyXG4gICAgfSB3aGlsZSAoa2V5cy5sZW5ndGgpO1xyXG5cclxuICAgIHJldHVybiB0YXJnZXQ7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Position Utility Klasse
|
|
3
|
+
* @see https://github.com/ng-bootstrap/ng-bootstrap/blob/master/src/util/positioning.ts
|
|
4
|
+
*/
|
|
5
|
+
export class Positioning {
|
|
6
|
+
/**
|
|
7
|
+
* Get all Styles of Element
|
|
8
|
+
* @param element HTML Element
|
|
9
|
+
* @returns All Styles of element
|
|
10
|
+
*/
|
|
11
|
+
getAllStyles(element) {
|
|
12
|
+
return window.getComputedStyle(element);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get Style value of element
|
|
16
|
+
* @param element HTML Element
|
|
17
|
+
* @param prop Style
|
|
18
|
+
* @returns Value of Style
|
|
19
|
+
*/
|
|
20
|
+
getStyle(element, prop) {
|
|
21
|
+
return this.getAllStyles(element)[prop];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Check if the element has an static position
|
|
25
|
+
* @param element HTML Element
|
|
26
|
+
* @returns Item has a static position
|
|
27
|
+
*/
|
|
28
|
+
isStaticPositioned(element) {
|
|
29
|
+
return (this.getStyle(element, 'position') || 'static') === 'static';
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Get the Offset of the parent element
|
|
33
|
+
* @param element HTML Element
|
|
34
|
+
* @returns HTML ELement
|
|
35
|
+
*/
|
|
36
|
+
offsetParent(element) {
|
|
37
|
+
let offsetParentEl = element.offsetParent || document.documentElement;
|
|
38
|
+
while (offsetParentEl &&
|
|
39
|
+
offsetParentEl !== document.documentElement &&
|
|
40
|
+
this.isStaticPositioned(offsetParentEl)) {
|
|
41
|
+
offsetParentEl = offsetParentEl.offsetParent;
|
|
42
|
+
}
|
|
43
|
+
return offsetParentEl || document.documentElement;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get Element Position
|
|
47
|
+
* @param element HTML Element for Position
|
|
48
|
+
* @param round Round Values
|
|
49
|
+
* @returns Position Values
|
|
50
|
+
*/
|
|
51
|
+
position(element, round = true) {
|
|
52
|
+
let elPosition;
|
|
53
|
+
let parentOffset = {
|
|
54
|
+
width: 0,
|
|
55
|
+
height: 0,
|
|
56
|
+
top: 0,
|
|
57
|
+
bottom: 0,
|
|
58
|
+
left: 0,
|
|
59
|
+
right: 0,
|
|
60
|
+
};
|
|
61
|
+
if (this.getStyle(element, 'position') === 'fixed') {
|
|
62
|
+
elPosition = element.getBoundingClientRect();
|
|
63
|
+
elPosition = {
|
|
64
|
+
top: elPosition.top,
|
|
65
|
+
bottom: elPosition.bottom,
|
|
66
|
+
left: elPosition.left,
|
|
67
|
+
right: elPosition.right,
|
|
68
|
+
height: elPosition.height,
|
|
69
|
+
width: elPosition.width,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const offsetParentEl = this.offsetParent(element);
|
|
74
|
+
elPosition = this.offset(element, false);
|
|
75
|
+
if (offsetParentEl !== document.documentElement) {
|
|
76
|
+
parentOffset = this.offset(offsetParentEl, false);
|
|
77
|
+
}
|
|
78
|
+
parentOffset.top += offsetParentEl.clientTop;
|
|
79
|
+
parentOffset.left += offsetParentEl.clientLeft;
|
|
80
|
+
}
|
|
81
|
+
elPosition.top -= parentOffset.top;
|
|
82
|
+
elPosition.bottom -= parentOffset.top;
|
|
83
|
+
elPosition.left -= parentOffset.left;
|
|
84
|
+
elPosition.right -= parentOffset.left;
|
|
85
|
+
if (round) {
|
|
86
|
+
elPosition.top = Math.round(elPosition.top);
|
|
87
|
+
elPosition.bottom = Math.round(elPosition.bottom);
|
|
88
|
+
elPosition.left = Math.round(elPosition.left);
|
|
89
|
+
elPosition.right = Math.round(elPosition.right);
|
|
90
|
+
}
|
|
91
|
+
return elPosition;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Get Offset of Item
|
|
95
|
+
* @param element HTML Element for Offset
|
|
96
|
+
* @param round Round the Values
|
|
97
|
+
* @returns Return Offset Position
|
|
98
|
+
*/
|
|
99
|
+
offset(element, round = true) {
|
|
100
|
+
const elBcr = element.getBoundingClientRect();
|
|
101
|
+
const viewportOffset = {
|
|
102
|
+
top: window.pageYOffset - document.documentElement.clientTop,
|
|
103
|
+
left: window.pageXOffset - document.documentElement.clientLeft,
|
|
104
|
+
};
|
|
105
|
+
const elOffset = {
|
|
106
|
+
height: elBcr.height || element.offsetHeight,
|
|
107
|
+
width: elBcr.width || element.offsetWidth,
|
|
108
|
+
top: elBcr.top + viewportOffset.top,
|
|
109
|
+
bottom: elBcr.bottom + viewportOffset.top,
|
|
110
|
+
left: elBcr.left + viewportOffset.left,
|
|
111
|
+
right: elBcr.right + viewportOffset.left,
|
|
112
|
+
};
|
|
113
|
+
if (round) {
|
|
114
|
+
elOffset.height = Math.round(elOffset.height);
|
|
115
|
+
elOffset.width = Math.round(elOffset.width);
|
|
116
|
+
elOffset.top = Math.round(elOffset.top);
|
|
117
|
+
elOffset.bottom = Math.round(elOffset.bottom);
|
|
118
|
+
elOffset.left = Math.round(elOffset.left);
|
|
119
|
+
elOffset.right = Math.round(elOffset.right);
|
|
120
|
+
}
|
|
121
|
+
return elOffset;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Return false if the element to position is outside the viewport
|
|
125
|
+
* @returns position is inside viewport
|
|
126
|
+
*/
|
|
127
|
+
positionElements(hostElement, targetElement, placement, appendToBody) {
|
|
128
|
+
const [placementPrimary = 'top', placementSecondary = 'center'] = placement.split('-');
|
|
129
|
+
const hostElPosition = appendToBody
|
|
130
|
+
? this.offset(hostElement, false)
|
|
131
|
+
: this.position(hostElement, false);
|
|
132
|
+
const targetElStyles = this.getAllStyles(targetElement);
|
|
133
|
+
const marginTop = parseFloat(targetElStyles.marginTop);
|
|
134
|
+
const marginBottom = parseFloat(targetElStyles.marginBottom);
|
|
135
|
+
const marginLeft = parseFloat(targetElStyles.marginLeft);
|
|
136
|
+
const marginRight = parseFloat(targetElStyles.marginRight);
|
|
137
|
+
let topPosition = 0;
|
|
138
|
+
let leftPosition = 0;
|
|
139
|
+
switch (placementPrimary) {
|
|
140
|
+
case 'top':
|
|
141
|
+
topPosition =
|
|
142
|
+
hostElPosition.top -
|
|
143
|
+
(targetElement.offsetHeight + marginTop + marginBottom);
|
|
144
|
+
break;
|
|
145
|
+
case 'bottom':
|
|
146
|
+
topPosition = hostElPosition.top + hostElPosition.height;
|
|
147
|
+
break;
|
|
148
|
+
case 'left':
|
|
149
|
+
leftPosition =
|
|
150
|
+
hostElPosition.left -
|
|
151
|
+
(targetElement.offsetWidth + marginLeft + marginRight);
|
|
152
|
+
break;
|
|
153
|
+
case 'right':
|
|
154
|
+
leftPosition = hostElPosition.left + hostElPosition.width;
|
|
155
|
+
break;
|
|
156
|
+
}
|
|
157
|
+
switch (placementSecondary) {
|
|
158
|
+
case 'top':
|
|
159
|
+
topPosition = hostElPosition.top;
|
|
160
|
+
break;
|
|
161
|
+
case 'bottom':
|
|
162
|
+
topPosition =
|
|
163
|
+
hostElPosition.top +
|
|
164
|
+
hostElPosition.height -
|
|
165
|
+
targetElement.offsetHeight;
|
|
166
|
+
break;
|
|
167
|
+
case 'left':
|
|
168
|
+
leftPosition = hostElPosition.left;
|
|
169
|
+
break;
|
|
170
|
+
case 'right':
|
|
171
|
+
leftPosition =
|
|
172
|
+
hostElPosition.left +
|
|
173
|
+
hostElPosition.width -
|
|
174
|
+
targetElement.offsetWidth;
|
|
175
|
+
break;
|
|
176
|
+
case 'center':
|
|
177
|
+
if (placementPrimary === 'top' || placementPrimary === 'bottom') {
|
|
178
|
+
leftPosition =
|
|
179
|
+
hostElPosition.left +
|
|
180
|
+
hostElPosition.width / 2 -
|
|
181
|
+
targetElement.offsetWidth / 2;
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
topPosition =
|
|
185
|
+
hostElPosition.top +
|
|
186
|
+
hostElPosition.height / 2 -
|
|
187
|
+
targetElement.offsetHeight / 2;
|
|
188
|
+
}
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
191
|
+
/// The translate3d/gpu acceleration render a blurry text on chrome, the next line is commented until a browser fix
|
|
192
|
+
// targetElement.style.transform = `translate3d(${Math.round(leftPosition)}px, ${Math.floor(topPosition)}px, 0px)`;
|
|
193
|
+
targetElement.style.transform = `translate(${Math.round(leftPosition)}px, ${Math.round(topPosition)}px)`;
|
|
194
|
+
// Check if the targetElement is inside the viewport
|
|
195
|
+
const targetElBCR = targetElement.getBoundingClientRect();
|
|
196
|
+
const html = document.documentElement;
|
|
197
|
+
const windowHeight = window.innerHeight || html.clientHeight;
|
|
198
|
+
const windowWidth = window.innerWidth || html.clientWidth;
|
|
199
|
+
return (targetElBCR.left >= 0 &&
|
|
200
|
+
targetElBCR.top >= 0 &&
|
|
201
|
+
targetElBCR.right <= windowWidth &&
|
|
202
|
+
targetElBCR.bottom <= windowHeight);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Placement Separator Regex
|
|
207
|
+
*/
|
|
208
|
+
const placementSeparator = /\s+/;
|
|
209
|
+
/**
|
|
210
|
+
* Global Position Service
|
|
211
|
+
*/
|
|
212
|
+
export const positionService = new Positioning();
|
|
213
|
+
/**
|
|
214
|
+
* Accept the placement array and applies the appropriate placement dependent on the viewport.
|
|
215
|
+
* Returns the applied placement.
|
|
216
|
+
* In case of auto placement, placements are selected in order
|
|
217
|
+
* 'top', 'bottom', 'left', 'right',
|
|
218
|
+
* 'top-left', 'top-right',
|
|
219
|
+
* 'bottom-left', 'bottom-right',
|
|
220
|
+
* 'left-top', 'left-bottom',
|
|
221
|
+
* 'right-top', 'right-bottom'.
|
|
222
|
+
*/
|
|
223
|
+
export function positionElements(hostElement, targetElement, placement, appendToBody, baseClass) {
|
|
224
|
+
const placementVals = Array.isArray(placement)
|
|
225
|
+
? placement
|
|
226
|
+
: placement.split(placementSeparator);
|
|
227
|
+
const allowedPlacements = [
|
|
228
|
+
'top',
|
|
229
|
+
'bottom',
|
|
230
|
+
'left',
|
|
231
|
+
'right',
|
|
232
|
+
'top-left',
|
|
233
|
+
'top-right',
|
|
234
|
+
'bottom-left',
|
|
235
|
+
'bottom-right',
|
|
236
|
+
'left-top',
|
|
237
|
+
'left-bottom',
|
|
238
|
+
'right-top',
|
|
239
|
+
'right-bottom',
|
|
240
|
+
];
|
|
241
|
+
const classList = targetElement.classList;
|
|
242
|
+
const addClassesToTarget = (targetPlacement) => {
|
|
243
|
+
const [primary, secondary] = targetPlacement.split('-');
|
|
244
|
+
const classes = [];
|
|
245
|
+
if (baseClass) {
|
|
246
|
+
classes.push(`${baseClass}-${primary}`);
|
|
247
|
+
if (secondary) {
|
|
248
|
+
classes.push(`${baseClass}-${primary}-${secondary}`);
|
|
249
|
+
}
|
|
250
|
+
classes.forEach((classname) => {
|
|
251
|
+
classList.add(classname);
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
return classes;
|
|
255
|
+
};
|
|
256
|
+
// Remove old placement classes to avoid issues
|
|
257
|
+
if (baseClass) {
|
|
258
|
+
allowedPlacements.forEach((placementToRemove) => {
|
|
259
|
+
classList.remove(`${baseClass}-${placementToRemove}`);
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
// replace auto placement with other placements
|
|
263
|
+
let hasAuto = placementVals.findIndex((val) => val === 'auto');
|
|
264
|
+
if (hasAuto >= 0) {
|
|
265
|
+
allowedPlacements.forEach(function (obj) {
|
|
266
|
+
if (placementVals.find((val) => val.search('^' + obj) !== -1) == null) {
|
|
267
|
+
placementVals.splice(hasAuto++, 1, obj);
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
// coordinates where to position
|
|
272
|
+
// Required for transform:
|
|
273
|
+
const style = targetElement.style;
|
|
274
|
+
style.position = 'absolute';
|
|
275
|
+
style.top = '0';
|
|
276
|
+
style.left = '0';
|
|
277
|
+
style['will-change'] = 'transform';
|
|
278
|
+
let testPlacement = null;
|
|
279
|
+
let isInViewport = false;
|
|
280
|
+
for (testPlacement of placementVals) {
|
|
281
|
+
const addedClasses = addClassesToTarget(testPlacement);
|
|
282
|
+
if (positionService.positionElements(hostElement, targetElement, testPlacement, appendToBody)) {
|
|
283
|
+
isInViewport = true;
|
|
284
|
+
break;
|
|
285
|
+
}
|
|
286
|
+
// Remove the baseClasses for further calculation
|
|
287
|
+
if (baseClass) {
|
|
288
|
+
addedClasses.forEach((classname) => {
|
|
289
|
+
classList.remove(classname);
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
if (!isInViewport) {
|
|
294
|
+
// If nothing match, the first placement is the default one
|
|
295
|
+
testPlacement = placementVals[0];
|
|
296
|
+
addClassesToTarget(testPlacement);
|
|
297
|
+
positionService.positionElements(hostElement, targetElement, testPlacement, appendToBody);
|
|
298
|
+
}
|
|
299
|
+
return testPlacement;
|
|
300
|
+
}
|
|
301
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb25pbmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy91dGlsaXRpZXMvcG9zaXRpb25pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0E7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFDdEI7Ozs7T0FJRztJQUNLLFlBQVksQ0FBQyxPQUFvQjtRQUN2QyxPQUFPLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSyxRQUFRLENBQUMsT0FBb0IsRUFBRSxJQUFZO1FBQ2pELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGtCQUFrQixDQUFDLE9BQW9CO1FBQzdDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsSUFBSSxRQUFRLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxZQUFZLENBQUMsT0FBb0I7UUFDdkMsSUFBSSxjQUFjLEdBQ0gsT0FBTyxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUMsZUFBZSxDQUFDO1FBRWhFLE9BQ0UsY0FBYztZQUNkLGNBQWMsS0FBSyxRQUFRLENBQUMsZUFBZTtZQUMzQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsY0FBYyxDQUFDLEVBQ3ZDO1lBQ0EsY0FBYyxHQUFnQixjQUFjLENBQUMsWUFBWSxDQUFDO1NBQzNEO1FBRUQsT0FBTyxjQUFjLElBQUksUUFBUSxDQUFDLGVBQWUsQ0FBQztJQUNwRCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxRQUFRLENBQUMsT0FBb0IsRUFBRSxLQUFLLEdBQUcsSUFBSTtRQUN6QyxJQUFJLFVBQXNCLENBQUM7UUFDM0IsSUFBSSxZQUFZLEdB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YUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxLQUFLLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM1QixLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUNoQixLQUFLLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztJQUNqQixLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsV0FBVyxDQUFDO0lBRW5DLElBQUksYUFBYSxHQUFxQixJQUFJLENBQUM7SUFDM0MsSUFBSSxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQ3pCLEtBQUssYUFBYSxJQUFJLGFBQWEsRUFBRTtRQUNuQyxNQUFNLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUV2RCxJQUNFLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FDOUIsV0FBVyxFQUNYLGFBQWEsRUFDYixhQUFhLEVBQ2IsWUFBWSxDQUNiLEVBQ0Q7WUFDQSxZQUFZLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLE1BQU07U0FDUDtRQUVELGlEQUFpRDtRQUNqRCxJQUFJLFNBQVMsRUFBRTtZQUNiLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtnQkFDakMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztTQUNKO0tBQ0Y7SUFFRCxJQUFJLENBQUMsWUFBWSxFQUFFO1FBQ2pCLDJEQUEyRDtRQUMzRCxhQUFhLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FDOUIsV0FBVyxFQUNYLGFBQWEsRUFDYixhQUFhLEVBQ2IsWUFBWSxDQUNiLENBQUM7S0FDSDtJQUVELE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbnRlcmZhY2UgQ2xpZW50UmVjdCB7XHJcbiAgdG9wOiBudW1iZXI7XHJcbiAgYm90dG9tOiBudW1iZXI7XHJcbiAgbGVmdDogbnVtYmVyO1xyXG4gIHJpZ2h0OiBudW1iZXI7XHJcbiAgaGVpZ2h0OiBudW1iZXI7XHJcbiAgd2lkdGg6IG51bWJlcjtcclxufVxyXG5cclxuLyoqXHJcbiAqIFBvc2l0aW9uIFV0aWxpdHkgS2xhc3NlXHJcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAvYmxvYi9tYXN0ZXIvc3JjL3V0aWwvcG9zaXRpb25pbmcudHNcclxuICovXHJcbmV4cG9ydCBjbGFzcyBQb3NpdGlvbmluZyB7XHJcbiAgLyoqXHJcbiAgICogR2V0IGFsbCBTdHlsZXMgb2YgRWxlbWVudFxyXG4gICAqIEBwYXJhbSBlbGVtZW50IEhUTUwgRWxlbWVudFxyXG4gICAqIEByZXR1cm5zIEFsbCBTdHlsZXMgb2YgZWxlbWVudFxyXG4gICAqL1xyXG4gIHByaXZhdGUgZ2V0QWxsU3R5bGVzKGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XHJcbiAgICByZXR1cm4gd2luZG93LmdldENvbXB1dGVkU3R5bGUoZWxlbWVudCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgU3R5bGUgdmFsdWUgb2YgZWxlbWVudFxyXG4gICAqIEBwYXJhbSBlbGVtZW50IEhUTUwgRWxlbWVudFxyXG4gICAqIEBwYXJhbSBwcm9wIFN0eWxlXHJcbiAgICogQHJldHVybnMgVmFsdWUgb2YgU3R5bGVcclxuICAgKi9cclxuICBwcml2YXRlIGdldFN0eWxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBwcm9wOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0QWxsU3R5bGVzKGVsZW1lbnQpW3Byb3BdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgdGhlIGVsZW1lbnQgaGFzIGFuIHN0YXRpYyBwb3NpdGlvblxyXG4gICAqIEBwYXJhbSBlbGVtZW50IEhUTUwgRWxlbWVudFxyXG4gICAqIEByZXR1cm5zIEl0ZW0gaGFzIGEgc3RhdGljIHBvc2l0aW9uXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBpc1N0YXRpY1Bvc2l0aW9uZWQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcclxuICAgIHJldHVybiAodGhpcy5nZXRTdHlsZShlbGVtZW50LCAncG9zaXRpb24nKSB8fCAnc3RhdGljJykgPT09ICdzdGF0aWMnO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IHRoZSBPZmZzZXQgb2YgdGhlIHBhcmVudCBlbGVtZW50XHJcbiAgICogQHBhcmFtIGVsZW1lbnQgSFRNTCBFbGVtZW50XHJcbiAgICogQHJldHVybnMgSFRNTCBFTGVtZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBvZmZzZXRQYXJlbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudCB7XHJcbiAgICBsZXQgb2Zmc2V0UGFyZW50RWwgPVxyXG4gICAgICA8SFRNTEVsZW1lbnQ+ZWxlbWVudC5vZmZzZXRQYXJlbnQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xyXG5cclxuICAgIHdoaWxlIChcclxuICAgICAgb2Zmc2V0UGFyZW50RWwgJiZcclxuICAgICAgb2Zmc2V0UGFyZW50RWwgIT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCAmJlxyXG4gICAgICB0aGlzLmlzU3RhdGljUG9zaXRpb25lZChvZmZzZXRQYXJlbnRFbClcclxuICAgICkge1xyXG4gICAgICBvZmZzZXRQYXJlbnRFbCA9IDxIVE1MRWxlbWVudD5vZmZzZXRQYXJlbnRFbC5vZmZzZXRQYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9mZnNldFBhcmVudEVsIHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBFbGVtZW50IFBvc2l0aW9uXHJcbiAgICogQHBhcmFtIGVsZW1lbnQgSFRNTCBFbGVtZW50IGZvciBQb3NpdGlvblxyXG4gICAqIEBwYXJhbSByb3VuZCBSb3VuZCBWYWx1ZXNcclxuICAgKiBAcmV0dXJucyBQb3NpdGlvbiBWYWx1ZXNcclxuICAgKi9cclxuICBwb3NpdGlvbihlbGVtZW50OiBIVE1MRWxlbWVudCwgcm91bmQgPSB0cnVlKTogQ2xpZW50UmVjdCB7XHJcbiAgICBsZXQgZWxQb3NpdGlvbjogQ2xpZW50UmVjdDtcclxuICAgIGxldCBwYXJlbnRPZmZzZXQ6IENsaWVudFJlY3QgPSB7XHJcbiAgICAgIHdpZHRoOiAwLFxyXG4gICAgICBoZWlnaHQ6IDAsXHJcbiAgICAgIHRvcDogMCxcclxuICAgICAgYm90dG9tOiAwLFxyXG4gICAgICBsZWZ0OiAwLFxyXG4gICAgICByaWdodDogMCxcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMuZ2V0U3R5bGUoZWxlbWVudCwgJ3Bvc2l0aW9uJykgPT09ICdmaXhlZCcpIHtcclxuICAgICAgZWxQb3NpdGlvbiA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgIGVsUG9zaXRpb24gPSB7XHJcbiAgICAgICAgdG9wOiBlbFBvc2l0aW9uLnRvcCxcclxuICAgICAgICBib3R0b206IGVsUG9zaXRpb24uYm90dG9tLFxyXG4gICAgICAgIGxlZnQ6IGVsUG9zaXRpb24ubGVmdCxcclxuICAgICAgICByaWdodDogZWxQb3NpdGlvbi5yaWdodCxcclxuICAgICAgICBoZWlnaHQ6IGVsUG9zaXRpb24uaGVpZ2h0LFxyXG4gICAgICAgIHdpZHRoOiBlbFBvc2l0aW9uLndpZHRoLFxyXG4gICAgICB9O1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3Qgb2Zmc2V0UGFyZW50RWwgPSB0aGlzLm9mZnNldFBhcmVudChlbGVtZW50KTtcclxuXHJcbiAgICAgIGVsUG9zaXRpb24gPSB0aGlzLm9mZnNldChlbGVtZW50LCBmYWxzZSk7XHJcblxyXG4gICAgICBpZiAob2Zmc2V0UGFyZW50RWwgIT09IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkge1xyXG4gICAgICAgIHBhcmVudE9mZnNldCA9IHRoaXMub2Zmc2V0KG9mZnNldFBhcmVudEVsLCBmYWxzZSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHBhcmVudE9mZnNldC50b3AgKz0gb2Zmc2V0UGFyZW50RWwuY2xpZW50VG9wO1xyXG4gICAgICBwYXJlbnRPZmZzZXQubGVmdCArPSBvZmZzZXRQYXJlbnRFbC5jbGllbnRMZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIGVsUG9zaXRpb24udG9wIC09IHBhcmVudE9mZnNldC50b3A7XHJcbiAgICBlbFBvc2l0aW9uLmJvdHRvbSAtPSBwYXJlbnRPZmZzZXQudG9wO1xyXG4gICAgZWxQb3NpdGlvbi5sZWZ0IC09IHBhcmVudE9mZnNldC5sZWZ0O1xyXG4gICAgZWxQb3NpdGlvbi5yaWdodCAtPSBwYXJlbnRPZmZzZXQubGVmdDtcclxuXHJcbiAgICBpZiAocm91bmQpIHtcclxuICAgICAgZWxQb3NpdGlvbi50b3AgPSBNYXRoLnJvdW5kKGVsUG9zaXRpb24udG9wKTtcclxuICAgICAgZWxQb3NpdGlvbi5ib3R0b20gPSBNYXRoLnJvdW5kKGVsUG9zaXRpb24uYm90dG9tKTtcclxuICAgICAgZWxQb3NpdGlvbi5sZWZ0ID0gTWF0aC5yb3VuZChlbFBvc2l0aW9uLmxlZnQpO1xyXG4gICAgICBlbFBvc2l0aW9uLnJpZ2h0ID0gTWF0aC5yb3VuZChlbFBvc2l0aW9uLnJpZ2h0KTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZWxQb3NpdGlvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBPZmZzZXQgb2YgSXRlbVxyXG4gICAqIEBwYXJhbSBlbGVtZW50IEhUTUwgRWxlbWVudCBmb3IgT2Zmc2V0XHJcbiAgICogQHBhcmFtIHJvdW5kIFJvdW5kIHRoZSBWYWx1ZXNcclxuICAgKiBAcmV0dXJucyBSZXR1cm4gT2Zmc2V0IFBvc2l0aW9uXHJcbiAgICovXHJcbiAgb2Zmc2V0KGVsZW1lbnQ6IEhUTUxFbGVtZW50LCByb3VuZCA9IHRydWUpOiBDbGllbnRSZWN0IHtcclxuICAgIGNvbnN0IGVsQmNyID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIGNvbnN0IHZpZXdwb3J0T2Zmc2V0ID0ge1xyXG4gICAgICB0b3A6IHdpbmRvdy5wYWdlWU9mZnNldCAtIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRUb3AsXHJcbiAgICAgIGxlZnQ6IHdpbmRvdy5wYWdlWE9mZnNldCAtIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRMZWZ0LFxyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdCBlbE9mZnNldCA9IHtcclxuICAgICAgaGVpZ2h0OiBlbEJjci5oZWlnaHQgfHwgZWxlbWVudC5vZmZzZXRIZWlnaHQsXHJcbiAgICAgIHdpZHRoOiBlbEJjci53aWR0aCB8fCBlbGVtZW50Lm9mZnNldFdpZHRoLFxyXG4gICAgICB0b3A6IGVsQmNyLnRvcCArIHZpZXdwb3J0T2Zmc2V0LnRvcCxcclxuICAgICAgYm90dG9tOiBlbEJjci5ib3R0b20gKyB2aWV3cG9ydE9mZnNldC50b3AsXHJcbiAgICAgIGxlZnQ6IGVsQmNyLmxlZnQgKyB2aWV3cG9ydE9mZnNldC5sZWZ0LFxyXG4gICAgICByaWdodDogZWxCY3IucmlnaHQgKyB2aWV3cG9ydE9mZnNldC5sZWZ0LFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAocm91bmQpIHtcclxuICAgICAgZWxPZmZzZXQuaGVpZ2h0ID0gTWF0aC5yb3VuZChlbE9mZnNldC5oZWlnaHQpO1xyXG4gICAgICBlbE9mZnNldC53aWR0aCA9IE1hdGgucm91bmQoZWxPZmZzZXQud2lkdGgpO1xyXG4gICAgICBlbE9mZnNldC50b3AgPSBNYXRoLnJvdW5kKGVsT2Zmc2V0LnRvcCk7XHJcbiAgICAgIGVsT2Zmc2V0LmJvdHRvbSA9IE1hdGgucm91bmQoZWxPZmZzZXQuYm90dG9tKTtcclxuICAgICAgZWxPZmZzZXQubGVmdCA9IE1hdGgucm91bmQoZWxPZmZzZXQubGVmdCk7XHJcbiAgICAgIGVsT2Zmc2V0LnJpZ2h0ID0gTWF0aC5yb3VuZChlbE9mZnNldC5yaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGVsT2Zmc2V0O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJuIGZhbHNlIGlmIHRoZSBlbGVtZW50IHRvIHBvc2l0aW9uIGlzIG91dHNpZGUgdGhlIHZpZXdwb3J0XHJcbiAgICogQHJldHVybnMgcG9zaXRpb24gaXMgaW5zaWRlIHZpZXdwb3J0XHJcbiAgICovXHJcbiAgcG9zaXRpb25FbGVtZW50cyhcclxuICAgIGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCxcclxuICAgIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxyXG4gICAgcGxhY2VtZW50OiBzdHJpbmcsXHJcbiAgICBhcHBlbmRUb0JvZHk/OiBib29sZWFuXHJcbiAgKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBbcGxhY2VtZW50UHJpbWFyeSA9ICd0b3AnLCBwbGFjZW1lbnRTZWNvbmRhcnkgPSAnY2VudGVyJ10gPVxyXG4gICAgICBwbGFjZW1lbnQuc3BsaXQoJy0nKTtcclxuXHJcbiAgICBjb25zdCBob3N0RWxQb3NpdGlvbiA9IGFwcGVuZFRvQm9keVxyXG4gICAgICA/IHRoaXMub2Zmc2V0KGhvc3RFbGVtZW50LCBmYWxzZSlcclxuICAgICAgOiB0aGlzLnBvc2l0aW9uKGhvc3RFbGVtZW50LCBmYWxzZSk7XHJcbiAgICBjb25zdCB0YXJnZXRFbFN0eWxlcyA9IHRoaXMuZ2V0QWxsU3R5bGVzKHRhcmdldEVsZW1lbnQpO1xyXG5cclxuICAgIGNvbnN0IG1hcmdpblRvcCA9IHBhcnNlRmxvYXQodGFyZ2V0RWxTdHlsZXMubWFyZ2luVG9wKTtcclxuICAgIGNvbnN0IG1hcmdpbkJvdHRvbSA9IHBhcnNlRmxvYXQodGFyZ2V0RWxTdHlsZXMubWFyZ2luQm90dG9tKTtcclxuICAgIGNvbnN0IG1hcmdpbkxlZnQgPSBwYXJzZUZsb2F0KHRhcmdldEVsU3R5bGVzLm1hcmdpbkxlZnQpO1xyXG4gICAgY29uc3QgbWFyZ2luUmlnaHQgPSBwYXJzZUZsb2F0KHRhcmdldEVsU3R5bGVzLm1hcmdpblJpZ2h0KTtcclxuXHJcbiAgICBsZXQgdG9wUG9zaXRpb24gPSAwO1xyXG4gICAgbGV0IGxlZnRQb3NpdGlvbiA9IDA7XHJcblxyXG4gICAgc3dpdGNoIChwbGFjZW1lbnRQcmltYXJ5KSB7XHJcbiAgICAgIGNhc2UgJ3RvcCc6XHJcbiAgICAgICAgdG9wUG9zaXRpb24gPVxyXG4gICAgICAgICAgaG9zdEVsUG9zaXRpb24udG9wIC1cclxuICAgICAgICAgICh0YXJnZXRFbGVtZW50Lm9mZnNldEhlaWdodCArIG1hcmdpblRvcCArIG1hcmdpbkJvdHRvbSk7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2JvdHRvbSc6XHJcbiAgICAgICAgdG9wUG9zaXRpb24gPSBob3N0RWxQb3NpdGlvbi50b3AgKyBob3N0RWxQb3NpdGlvbi5oZWlnaHQ7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2xlZnQnOlxyXG4gICAgICAgIGxlZnRQb3NpdGlvbiA9XHJcbiAgICAgICAgICBob3N0RWxQb3NpdGlvbi5sZWZ0IC1cclxuICAgICAgICAgICh0YXJnZXRFbGVtZW50Lm9mZnNldFdpZHRoICsgbWFyZ2luTGVmdCArIG1hcmdpblJpZ2h0KTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAncmlnaHQnOlxyXG4gICAgICAgIGxlZnRQb3NpdGlvbiA9IGhvc3RFbFBvc2l0aW9uLmxlZnQgKyBob3N0RWxQb3NpdGlvbi53aWR0aDtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICBzd2l0Y2ggKHBsYWNlbWVudFNlY29uZGFyeSkge1xyXG4gICAgICBjYXNlICd0b3AnOlxyXG4gICAgICAgIHRvcFBvc2l0aW9uID0gaG9zdEVsUG9zaXRpb24udG9wO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdib3R0b20nOlxyXG4gICAgICAgIHRvcFBvc2l0aW9uID1cclxuICAgICAgICAgIGhvc3RFbFBvc2l0aW9uLnRvcCArXHJcbiAgICAgICAgICBob3N0RWxQb3NpdGlvbi5oZWlnaHQgLVxyXG4gICAgICAgICAgdGFyZ2V0RWxlbWVudC5vZmZzZXRIZWlnaHQ7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ2xlZnQnOlxyXG4gICAgICAgIGxlZnRQb3NpdGlvbiA9IGhvc3RFbFBvc2l0aW9uLmxlZnQ7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ3JpZ2h0JzpcclxuICAgICAgICBsZWZ0UG9zaXRpb24gPVxyXG4gICAgICAgICAgaG9zdEVsUG9zaXRpb24ubGVmdCArXHJcbiAgICAgICAgICBob3N0RWxQb3NpdGlvbi53aWR0aCAtXHJcbiAgICAgICAgICB0YXJnZXRFbGVtZW50Lm9mZnNldFdpZHRoO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICBjYXNlICdjZW50ZXInOlxyXG4gICAgICAgIGlmIChwbGFjZW1lbnRQcmltYXJ5ID09PSAndG9wJyB8fCBwbGFjZW1lbnRQcmltYXJ5ID09PSAnYm90dG9tJykge1xyXG4gICAgICAgICAgbGVmdFBvc2l0aW9uID1cclxuICAgICAgICAgICAgaG9zdEVsUG9zaXRpb24ubGVmdCArXHJcbiAgICAgICAgICAgIGhvc3RFbFBvc2l0aW9uLndpZHRoIC8gMiAtXHJcbiAgICAgICAgICAgIHRhcmdldEVsZW1lbnQub2Zmc2V0V2lkdGggLyAyO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0b3BQb3NpdGlvbiA9XHJcbiAgICAgICAgICAgIGhvc3RFbFBvc2l0aW9uLnRvcCArXHJcbiAgICAgICAgICAgIGhvc3RFbFBvc2l0aW9uLmhlaWdodCAvIDIgLVxyXG4gICAgICAgICAgICB0YXJnZXRFbGVtZW50Lm9mZnNldEhlaWdodCAvIDI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIC8vLyBUaGUgdHJhbnNsYXRlM2QvZ3B1IGFjY2VsZXJhdGlvbiByZW5kZXIgYSBibHVycnkgdGV4dCBvbiBjaHJvbWUsIHRoZSBuZXh0IGxpbmUgaXMgY29tbWVudGVkIHVudGlsIGEgYnJvd3NlciBmaXhcclxuICAgIC8vIHRhcmdldEVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZTNkKCR7TWF0aC5yb3VuZChsZWZ0UG9zaXRpb24pfXB4LCAke01hdGguZmxvb3IodG9wUG9zaXRpb24pfXB4LCAwcHgpYDtcclxuICAgIHRhcmdldEVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZSgke01hdGgucm91bmQoXHJcbiAgICAgIGxlZnRQb3NpdGlvblxyXG4gICAgKX1weCwgJHtNYXRoLnJvdW5kKHRvcFBvc2l0aW9uKX1weClgO1xyXG5cclxuICAgIC8vIENoZWNrIGlmIHRoZSB0YXJnZXRFbGVtZW50IGlzIGluc2lkZSB0aGUgdmlld3BvcnRcclxuICAgIGNvbnN0IHRhcmdldEVsQkNSID0gdGFyZ2V0RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIGNvbnN0IGh0bWwgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XHJcbiAgICBjb25zdCB3aW5kb3dIZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgfHwgaHRtbC5jbGllbnRIZWlnaHQ7XHJcbiAgICBjb25zdCB3aW5kb3dXaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoIHx8IGh0bWwuY2xpZW50V2lkdGg7XHJcblxyXG4gICAgcmV0dXJuIChcclxuICAgICAgdGFyZ2V0RWxCQ1IubGVmdCA+PSAwICYmXHJcbiAgICAgIHRhcmdldEVsQkNSLnRvcCA+PSAwICYmXHJcbiAgICAgIHRhcmdldEVsQkNSLnJpZ2h0IDw9IHdpbmRvd1dpZHRoICYmXHJcbiAgICAgIHRhcmdldEVsQkNSLmJvdHRvbSA8PSB3aW5kb3dIZWlnaHRcclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogUGxhY2VtZW50IFNlcGFyYXRvciBSZWdleFxyXG4gKi9cclxuY29uc3QgcGxhY2VtZW50U2VwYXJhdG9yID0gL1xccysvO1xyXG4vKipcclxuICogR2xvYmFsIFBvc2l0aW9uIFNlcnZpY2VcclxuICovXHJcbmV4cG9ydCBjb25zdCBwb3NpdGlvblNlcnZpY2UgPSBuZXcgUG9zaXRpb25pbmcoKTtcclxuXHJcbi8qKlxyXG4gKiBBY2NlcHQgdGhlIHBsYWNlbWVudCBhcnJheSBhbmQgYXBwbGllcyB0aGUgYXBwcm9wcmlhdGUgcGxhY2VtZW50IGRlcGVuZGVudCBvbiB0aGUgdmlld3BvcnQuXHJcbiAqIFJldHVybnMgdGhlIGFwcGxpZWQgcGxhY2VtZW50LlxyXG4gKiBJbiBjYXNlIG9mIGF1dG8gcGxhY2VtZW50LCBwbGFjZW1lbnRzIGFyZSBzZWxlY3RlZCBpbiBvcmRlclxyXG4gKiAgICd0b3AnLCAnYm90dG9tJywgJ2xlZnQnLCAncmlnaHQnLFxyXG4gKiAgICd0b3AtbGVmdCcsICd0b3AtcmlnaHQnLFxyXG4gKiAgICdib3R0b20tbGVmdCcsICdib3R0b20tcmlnaHQnLFxyXG4gKiAgICdsZWZ0LXRvcCcsICdsZWZ0LWJvdHRvbScsXHJcbiAqICAgJ3JpZ2h0LXRvcCcsICdyaWdodC1ib3R0b20nLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHBvc2l0aW9uRWxlbWVudHMoXHJcbiAgaG9zdEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxyXG4gIHRhcmdldEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxyXG4gIHBsYWNlbWVudDogc3RyaW5nIHwgUGxhY2VtZW50IHwgUGxhY2VtZW50QXJyYXksXHJcbiAgYXBwZW5kVG9Cb2R5PzogYm9vbGVhbixcclxuICBiYXNlQ2xhc3M/OiBzdHJpbmdcclxuKTogUGxhY2VtZW50IHwgbnVsbCB7XHJcbiAgY29uc3QgcGxhY2VtZW50VmFsczogQXJyYXk8UGxhY2VtZW50PiA9IEFycmF5LmlzQXJyYXkocGxhY2VtZW50KVxyXG4gICAgPyBwbGFjZW1lbnRcclxuICAgIDogKHBsYWNlbWVudC5zcGxpdChwbGFjZW1lbnRTZXBhcmF0b3IpIGFzIEFycmF5PFBsYWNlbWVudD4pO1xyXG5cclxuICBjb25zdCBhbGxvd2VkUGxhY2VtZW50cyA9IFtcclxuICAgICd0b3AnLFxyXG4gICAgJ2JvdHRvbScsXHJcbiAgICAnbGVmdCcsXHJcbiAgICAncmlnaHQnLFxyXG4gICAgJ3RvcC1sZWZ0JyxcclxuICAgICd0b3AtcmlnaHQnLFxyXG4gICAgJ2JvdHRvbS1sZWZ0JyxcclxuICAgICdib3R0b20tcmlnaHQnLFxyXG4gICAgJ2xlZnQtdG9wJyxcclxuICAgICdsZWZ0LWJvdHRvbScsXHJcbiAgICAncmlnaHQtdG9wJyxcclxuICAgICdyaWdodC1ib3R0b20nLFxyXG4gIF07XHJcblxyXG4gIGNvbnN0IGNsYXNzTGlzdCA9IHRhcmdldEVsZW1lbnQuY2xhc3NMaXN0O1xyXG4gIGNvbnN0IGFkZENsYXNzZXNUb1RhcmdldCA9ICh0YXJnZXRQbGFjZW1lbnQ6IFBsYWNlbWVudCk6IEFycmF5PHN0cmluZz4gPT4ge1xyXG4gICAgY29uc3QgW3ByaW1hcnksIHNlY29uZGFyeV0gPSB0YXJnZXRQbGFjZW1lbnQuc3BsaXQoJy0nKTtcclxuICAgIGNvbnN0IGNsYXNzZXM6IHN0cmluZ1tdID0gW107XHJcbiAgICBpZiAoYmFzZUNsYXNzKSB7XHJcbiAgICAgIGNsYXNzZXMucHVzaChgJHtiYXNlQ2xhc3N9LSR7cHJpbWFyeX1gKTtcclxuICAgICAgaWYgKHNlY29uZGFyeSkge1xyXG4gICAgICAgIGNsYXNzZXMucHVzaChgJHtiYXNlQ2xhc3N9LSR7cHJpbWFyeX0tJHtzZWNvbmRhcnl9YCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNsYXNzZXMuZm9yRWFjaCgoY2xhc3NuYW1lKSA9PiB7XHJcbiAgICAgICAgY2xhc3NMaXN0LmFkZChjbGFzc25hbWUpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiBjbGFzc2VzO1xyXG4gIH07XHJcblxyXG4gIC8vIFJlbW92ZSBvbGQgcGxhY2VtZW50IGNsYXNzZXMgdG8gYXZvaWQgaXNzdWVzXHJcbiAgaWYgKGJhc2VDbGFzcykge1xyXG4gICAgYWxsb3dlZFBsYWNlbWVudHMuZm9yRWFjaCgocGxhY2VtZW50VG9SZW1vdmUpID0+IHtcclxuICAgICAgY2xhc3NMaXN0LnJlbW92ZShgJHtiYXNlQ2xhc3N9LSR7cGxhY2VtZW50VG9SZW1vdmV9YCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vIHJlcGxhY2UgYXV0byBwbGFjZW1lbnQgd2l0aCBvdGhlciBwbGFjZW1lbnRzXHJcbiAgbGV0IGhhc0F1dG8gPSBwbGFjZW1lbnRWYWxzLmZpbmRJbmRleCgodmFsKSA9PiB2YWwgPT09ICdhdXRvJyk7XHJcbiAgaWYgKGhhc0F1dG8gPj0gMCkge1xyXG4gICAgYWxsb3dlZFBsYWNlbWVudHMuZm9yRWFjaChmdW5jdGlvbiAob2JqKSB7XHJcbiAgICAgIGlmIChwbGFjZW1lbnRWYWxzLmZpbmQoKHZhbCkgPT4gdmFsLnNlYXJjaCgnXicgKyBvYmopICE9PSAtMSkgPT0gbnVsbCkge1xyXG4gICAgICAgIHBsYWNlbWVudFZhbHMuc3BsaWNlKGhhc0F1dG8rKywgMSwgb2JqIGFzIFBsYWNlbWVudCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gY29vcmRpbmF0ZXMgd2hlcmUgdG8gcG9zaXRpb25cclxuXHJcbiAgLy8gUmVxdWlyZWQgZm9yIHRyYW5zZm9ybTpcclxuICBjb25zdCBzdHlsZSA9IHRhcmdldEVsZW1lbnQuc3R5bGU7XHJcbiAgc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xyXG4gIHN0eWxlLnRvcCA9ICcwJztcclxuICBzdHlsZS5sZWZ0ID0gJzAnO1xyXG4gIHN0eWxlWyd3aWxsLWNoYW5nZSddID0gJ3RyYW5zZm9ybSc7XHJcblxyXG4gIGxldCB0ZXN0UGxhY2VtZW50OiBQbGFjZW1lbnQgfCBudWxsID0gbnVsbDtcclxuICBsZXQgaXNJblZpZXdwb3J0ID0gZmFsc2U7XHJcbiAgZm9yICh0ZXN0UGxhY2VtZW50IG9mIHBsYWNlbWVudFZhbHMpIHtcclxuICAgIGNvbnN0IGFkZGVkQ2xhc3NlcyA9IGFkZENsYXNzZXNUb1RhcmdldCh0ZXN0UGxhY2VtZW50KTtcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIHBvc2l0aW9uU2VydmljZS5wb3NpdGlvbkVsZW1lbnRzKFxyXG4gICAgICAgIGhvc3RFbGVtZW50LFxyXG4gICAgICAgIHRhcmdldEVsZW1lbnQsXHJcbiAgICAgICAgdGVzdFBsYWNlbWVudCxcclxuICAgICAgICBhcHBlbmRUb0JvZHlcclxuICAgICAgKVxyXG4gICAgKSB7XHJcbiAgICAgIGlzSW5WaWV3cG9ydCA9IHRydWU7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlbW92ZSB0aGUgYmFzZUNsYXNzZXMgZm9yIGZ1cnRoZXIgY2FsY3VsYXRpb25cclxuICAgIGlmIChiYXNlQ2xhc3MpIHtcclxuICAgICAgYWRkZWRDbGFzc2VzLmZvckVhY2goKGNsYXNzbmFtZSkgPT4ge1xyXG4gICAgICAgIGNsYXNzTGlzdC5yZW1vdmUoY2xhc3NuYW1lKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpZiAoIWlzSW5WaWV3cG9ydCkge1xyXG4gICAgLy8gSWYgbm90aGluZyBtYXRjaCwgdGhlIGZpcnN0IHBsYWNlbWVudCBpcyB0aGUgZGVmYXVsdCBvbmVcclxuICAgIHRlc3RQbGFjZW1lbnQgPSBwbGFjZW1lbnRWYWxzWzBdO1xyXG4gICAgYWRkQ2xhc3Nlc1RvVGFyZ2V0KHRlc3RQbGFjZW1lbnQpO1xyXG4gICAgcG9zaXRpb25TZXJ2aWNlLnBvc2l0aW9uRWxlbWVudHMoXHJcbiAgICAgIGhvc3RFbGVtZW50LFxyXG4gICAgICB0YXJnZXRFbGVtZW50LFxyXG4gICAgICB0ZXN0UGxhY2VtZW50LFxyXG4gICAgICBhcHBlbmRUb0JvZHlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gdGVzdFBsYWNlbWVudDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFBsYWNlbWVudCBUeXBlblxyXG4gKi9cclxuZXhwb3J0IHR5cGUgUGxhY2VtZW50ID1cclxuICB8ICdhdXRvJ1xyXG4gIHwgJ3RvcCdcclxuICB8ICdib3R0b20nXHJcbiAgfCAnbGVmdCdcclxuICB8ICdyaWdodCdcclxuICB8ICd0b3AtbGVmdCdcclxuICB8ICd0b3AtcmlnaHQnXHJcbiAgfCAnYm90dG9tLWxlZnQnXHJcbiAgfCAnYm90dG9tLXJpZ2h0J1xyXG4gIHwgJ2xlZnQtdG9wJ1xyXG4gIHwgJ2xlZnQtYm90dG9tJ1xyXG4gIHwgJ3JpZ2h0LXRvcCdcclxuICB8ICdyaWdodC1ib3R0b20nO1xyXG5cclxuLyoqXHJcbiAqIFBsYWNlbWVudCBBcnJheVxyXG4gKi9cclxuZXhwb3J0IHR5cGUgUGxhY2VtZW50QXJyYXkgPSBQbGFjZW1lbnQgfCBBcnJheTxQbGFjZW1lbnQ+IHwgc3RyaW5nO1xyXG4iXX0=
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Validators, } from '@angular/forms';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
export function emailValidator(validationMessage, validationMessageSummary) {
|
|
4
|
+
return (control) => {
|
|
5
|
+
if (Validators.email(control) !== null) {
|
|
6
|
+
return CreateValidationError('email', validationMessage, validationMessageSummary);
|
|
7
|
+
}
|
|
8
|
+
else {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1haWwudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvdmFsaWRhdGlvbi9lbWFpbC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWpFLE1BQU0sVUFBVSxjQUFjLENBQzVCLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRTtZQUN0QyxPQUFPLHFCQUFxQixDQUMxQixPQUFPLEVBQ1AsaUJBQWlCLEVBQ2pCLHdCQUF3QixDQUN6QixDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgVmFsaWRhdGlvbkVycm9ycyxcclxuICBWYWxpZGF0b3JGbixcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBlbWFpbFZhbGlkYXRvcihcclxuICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nXHJcbik6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgIGlmIChWYWxpZGF0b3JzLmVtYWlsKGNvbnRyb2wpICE9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoXHJcbiAgICAgICAgJ2VtYWlsJyxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZSxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnlcclxuICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH07XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { Validation } from './validation';
|
|
2
|
+
export { ValidationErrorItem } from './validationerroritem';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy92YWxpZGF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBWYWxpZGF0aW9uIH0gZnJvbSAnLi92YWxpZGF0aW9uJztcclxuZXhwb3J0IHsgVmFsaWRhdGlvbkVycm9ySXRlbSB9IGZyb20gJy4vdmFsaWRhdGlvbmVycm9yaXRlbSc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
import { isDateValid } from './isDateValid';
|
|
3
|
+
export function isValidDateValidator(validationMessage, validationMessageSummary) {
|
|
4
|
+
return (control) => {
|
|
5
|
+
const ctl = control;
|
|
6
|
+
if (!isDateValid(control.value, ctl.datetimeformatstring)) {
|
|
7
|
+
return CreateValidationError('dateformat', validationMessage, validationMessageSummary);
|
|
8
|
+
}
|
|
9
|
+
else {
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52YWxpZGRhdGUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvdmFsaWRhdGlvbi9pbnZhbGlkZGF0ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDakUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUc1QyxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxHQUFHLEdBQUcsT0FBc0MsQ0FBQztRQUVuRCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLEVBQUU7WUFDekQsT0FBTyxxQkFBcUIsQ0FDMUIsWUFBWSxFQUNaLGlCQUFpQixFQUNqQix3QkFBd0IsQ0FDekIsQ0FBQztTQUNIO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENyZWF0ZVZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4vdmFsaWRhdGlvbmVycm9yY3JlYXRvcic7XHJcbmltcG9ydCB7IGlzRGF0ZVZhbGlkIH0gZnJvbSAnLi9pc0RhdGVWYWxpZCc7XHJcbmltcG9ydCB7IElEYXRlVGltZUNvbnRyb2wgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2lkYXRldGltZWNvbnRyb2wnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWREYXRlVmFsaWRhdG9yKFxyXG4gIHZhbGlkYXRpb25NZXNzYWdlOiBzdHJpbmcsXHJcbiAgdmFsaWRhdGlvbk1lc3NhZ2VTdW1tYXJ5OiBzdHJpbmdcclxuKTogVmFsaWRhdG9yRm4ge1xyXG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPT4ge1xyXG4gICAgY29uc3QgY3RsID0gY29udHJvbCBhcyB1bmtub3duIGFzIElEYXRlVGltZUNvbnRyb2w7XHJcblxyXG4gICAgaWYgKCFpc0RhdGVWYWxpZChjb250cm9sLnZhbHVlLCBjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpKSB7XHJcbiAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoXHJcbiAgICAgICAgJ2RhdGVmb3JtYXQnLFxyXG4gICAgICAgIHZhbGlkYXRpb25NZXNzYWdlLFxyXG4gICAgICAgIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as moment_ from 'moment';
|
|
2
|
+
/**
|
|
3
|
+
* Moment
|
|
4
|
+
*/
|
|
5
|
+
export const moment = moment_['default'];
|
|
6
|
+
export function isDateValid(value, format) {
|
|
7
|
+
// NULL ist gültig
|
|
8
|
+
if (value === null || value === undefined || value === '') {
|
|
9
|
+
return true;
|
|
10
|
+
}
|
|
11
|
+
let date = moment(value, [format], true);
|
|
12
|
+
date = date.utc();
|
|
13
|
+
return date.isValid();
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNEYXRlVmFsaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy92YWxpZGF0aW9uL2lzRGF0ZVZhbGlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxPQUFPLE1BQU0sUUFBUSxDQUFDO0FBQ2xDOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUV6QyxNQUFNLFVBQVUsV0FBVyxDQUFDLEtBQVUsRUFBRSxNQUFjO0lBQ3BELGtCQUFrQjtJQUNsQixJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssRUFBRSxFQUFFO1FBQ3pELE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxJQUFJLElBQUksR0FBVyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDakQsSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUVsQixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztBQUN4QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9tZW50IH0gZnJvbSAnbW9tZW50JztcclxuaW1wb3J0ICogYXMgbW9tZW50XyBmcm9tICdtb21lbnQnO1xyXG4vKipcclxuICogTW9tZW50XHJcbiAqL1xyXG5leHBvcnQgY29uc3QgbW9tZW50ID0gbW9tZW50X1snZGVmYXVsdCddO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRGF0ZVZhbGlkKHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nKSB7XHJcbiAgLy8gTlVMTCBpc3QgZ8O8bHRpZ1xyXG4gIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSAnJykge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG5cclxuICBsZXQgZGF0ZTogTW9tZW50ID0gbW9tZW50KHZhbHVlLCBbZm9ybWF0XSwgdHJ1ZSk7XHJcbiAgZGF0ZSA9IGRhdGUudXRjKCk7XHJcblxyXG4gIHJldHVybiBkYXRlLmlzVmFsaWQoKTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
import { isDateValid } from './isDateValid';
|
|
4
|
+
export function maxDateValidator(maxDate, validationMessage, validationMessageSummary) {
|
|
5
|
+
return (control) => {
|
|
6
|
+
const ctl = control;
|
|
7
|
+
// Check abbrechen, wenn kein gültiges Datum
|
|
8
|
+
if (!isDateValid(ctl.value, ctl.datetimeformatstring) || maxDate === null) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
if (ctl.value !== null && maxDate < ctl.value) {
|
|
12
|
+
const parameters = new Map();
|
|
13
|
+
parameters.set('MAXDATE', moment(maxDate).format(ctl.datetimeformatstring));
|
|
14
|
+
return CreateValidationError('datemax', validationMessage, validationMessageSummary, parameters);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4ZGF0ZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy92YWxpZGF0aW9uL21heGRhdGUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVDLE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsT0FBYSxFQUNiLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxHQUFHLEdBQUcsT0FBc0MsQ0FBQztRQUVuRCw0Q0FBNEM7UUFDNUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDekUsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELElBQUksR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksT0FBTyxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQUU7WUFDN0MsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FDWixTQUFTLEVBQ1QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FDakQsQ0FBQztZQUVGLE9BQU8scUJBQXFCLENBQzFCLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLFVBQVUsQ0FDWCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBJRGF0ZVRpbWVDb250cm9sIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pZGF0ZXRpbWVjb250cm9sJztcclxuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcclxuaW1wb3J0IHsgaXNEYXRlVmFsaWQgfSBmcm9tICcuL2lzRGF0ZVZhbGlkJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXhEYXRlVmFsaWRhdG9yKFxyXG4gIG1heERhdGU6IERhdGUsXHJcbiAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xyXG4pOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCBjdGwgPSBjb250cm9sIGFzIHVua25vd24gYXMgSURhdGVUaW1lQ29udHJvbDtcclxuXHJcbiAgICAvLyBDaGVjayBhYmJyZWNoZW4sIHdlbm4ga2VpbiBnw7xsdGlnZXMgRGF0dW1cclxuICAgIGlmICghaXNEYXRlVmFsaWQoY3RsLnZhbHVlLCBjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpIHx8IG1heERhdGUgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGN0bC52YWx1ZSAhPT0gbnVsbCAmJiBtYXhEYXRlIDwgY3RsLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IHBhcmFtZXRlcnM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xyXG4gICAgICBwYXJhbWV0ZXJzLnNldChcclxuICAgICAgICAnTUFYREFURScsXHJcbiAgICAgICAgbW9tZW50KG1heERhdGUpLmZvcm1hdChjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpXHJcbiAgICAgICk7XHJcblxyXG4gICAgICByZXR1cm4gQ3JlYXRlVmFsaWRhdGlvbkVycm9yKFxyXG4gICAgICAgICdkYXRlbWF4JyxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZSxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnksXHJcbiAgICAgICAgcGFyYW1ldGVyc1xyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
import { isDateValid } from './isDateValid';
|
|
4
|
+
export function maxTimeValidator(maxTime, validationMessage, validationMessageSummary) {
|
|
5
|
+
return (control) => {
|
|
6
|
+
const ctl = control;
|
|
7
|
+
// Check abbrechen, wenn kein gültiges Datum
|
|
8
|
+
if (!isDateValid(ctl.value, ctl.datetimeformatstring) || maxTime === null) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
if (ctl.value !== null && maxTime < ctl.value) {
|
|
12
|
+
const parameters = new Map();
|
|
13
|
+
parameters.set('MAXTIME', moment(maxTime).format(ctl.datetimeformatstring));
|
|
14
|
+
return CreateValidationError('timemax', validationMessage, validationMessageSummary, parameters);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4dGltZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy92YWxpZGF0aW9uL21heHRpbWUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVDLE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsT0FBYSxFQUNiLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxHQUFHLEdBQUcsT0FBc0MsQ0FBQztRQUVuRCw0Q0FBNEM7UUFDNUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDekUsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELElBQUksR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksT0FBTyxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQUU7WUFDN0MsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FDWixTQUFTLEVBQ1QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FDakQsQ0FBQztZQUVGLE9BQU8scUJBQXFCLENBQzFCLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLFVBQVUsQ0FDWCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBJRGF0ZVRpbWVDb250cm9sIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pZGF0ZXRpbWVjb250cm9sJztcclxuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcclxuaW1wb3J0IHsgaXNEYXRlVmFsaWQgfSBmcm9tICcuL2lzRGF0ZVZhbGlkJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXhUaW1lVmFsaWRhdG9yKFxyXG4gIG1heFRpbWU6IERhdGUsXHJcbiAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xyXG4pOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCBjdGwgPSBjb250cm9sIGFzIHVua25vd24gYXMgSURhdGVUaW1lQ29udHJvbDtcclxuXHJcbiAgICAvLyBDaGVjayBhYmJyZWNoZW4sIHdlbm4ga2VpbiBnw7xsdGlnZXMgRGF0dW1cclxuICAgIGlmICghaXNEYXRlVmFsaWQoY3RsLnZhbHVlLCBjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpIHx8IG1heFRpbWUgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGN0bC52YWx1ZSAhPT0gbnVsbCAmJiBtYXhUaW1lIDwgY3RsLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IHBhcmFtZXRlcnM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xyXG4gICAgICBwYXJhbWV0ZXJzLnNldChcclxuICAgICAgICAnTUFYVElNRScsXHJcbiAgICAgICAgbW9tZW50KG1heFRpbWUpLmZvcm1hdChjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpXHJcbiAgICAgICk7XHJcblxyXG4gICAgICByZXR1cm4gQ3JlYXRlVmFsaWRhdGlvbkVycm9yKFxyXG4gICAgICAgICd0aW1lbWF4JyxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZSxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnksXHJcbiAgICAgICAgcGFyYW1ldGVyc1xyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Validators, } from '@angular/forms';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
export function maxValueValidator(maxvalue, validationMessage, validationMessageSummary) {
|
|
4
|
+
return (control) => {
|
|
5
|
+
const validator = Validators.max(maxvalue);
|
|
6
|
+
if (validator(control) !== null) {
|
|
7
|
+
const parameters = new Map();
|
|
8
|
+
parameters.set('MAXVALUE', maxvalue);
|
|
9
|
+
return CreateValidationError('maxvalue', validationMessage, validationMessageSummary, parameters);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF4dmFsdWUudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvdmFsaWRhdGlvbi9tYXh2YWx1ZS52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlILFVBQVUsR0FDYixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWpFLE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsUUFBZ0IsRUFDaEIsaUJBQXlCLEVBQ3pCLHdCQUFnQztJQUVoQyxPQUFPLENBQUMsT0FBd0IsRUFBMkIsRUFBRTtRQUMzRCxNQUFNLFNBQVMsR0FBZ0IsVUFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV4RCxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDL0IsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFckMsT0FBTyxxQkFBcUIsQ0FDMUIsVUFBVSxFQUNWLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsVUFBVSxDQUNYLENBQUM7U0FDSDthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWJzdHJhY3RDb250cm9sLFxyXG4gICAgVmFsaWRhdGlvbkVycm9ycyxcclxuICAgIFZhbGlkYXRvckZuLFxyXG4gICAgVmFsaWRhdG9ycyxcclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENyZWF0ZVZhbGlkYXRpb25FcnJvciB9IGZyb20gJy4vdmFsaWRhdGlvbmVycm9yY3JlYXRvcic7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWF4VmFsdWVWYWxpZGF0b3IoXHJcbiAgbWF4dmFsdWU6IG51bWJlcixcclxuICB2YWxpZGF0aW9uTWVzc2FnZTogc3RyaW5nLFxyXG4gIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeTogc3RyaW5nXHJcbik6IFZhbGlkYXRvckZuIHtcclxuICByZXR1cm4gKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsID0+IHtcclxuICAgIGNvbnN0IHZhbGlkYXRvcjogVmFsaWRhdG9yRm4gPSBWYWxpZGF0b3JzLm1heChtYXh2YWx1ZSk7XHJcblxyXG4gICAgaWYgKHZhbGlkYXRvcihjb250cm9sKSAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBwYXJhbWV0ZXJzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcclxuICAgICAgcGFyYW1ldGVycy5zZXQoJ01BWFZBTFVFJywgbWF4dmFsdWUpO1xyXG5cclxuICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcihcclxuICAgICAgICAnbWF4dmFsdWUnLFxyXG4gICAgICAgIHZhbGlkYXRpb25NZXNzYWdlLFxyXG4gICAgICAgIHZhbGlkYXRpb25NZXNzYWdlU3VtbWFyeSxcclxuICAgICAgICBwYXJhbWV0ZXJzXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
import { isDateValid } from './isDateValid';
|
|
4
|
+
export function minDateValidator(minDate, validationMessage, validationMessageSummary) {
|
|
5
|
+
return (control) => {
|
|
6
|
+
const ctl = control;
|
|
7
|
+
// Check abbrechen, wenn kein gültiges Datum
|
|
8
|
+
if (!isDateValid(ctl.value, ctl.datetimeformatstring) || minDate === null) {
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
if (ctl.value !== null && minDate > ctl.value) {
|
|
12
|
+
const parameters = new Map();
|
|
13
|
+
parameters.set('MINDATE', moment(minDate).format(ctl.datetimeformatstring));
|
|
14
|
+
return CreateValidationError('datemin', validationMessage, validationMessageSummary, parameters);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluZGF0ZS52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy92YWxpZGF0aW9uL21pbmRhdGUudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUU1QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVDLE1BQU0sVUFBVSxnQkFBZ0IsQ0FDOUIsT0FBYSxFQUNiLGlCQUF5QixFQUN6Qix3QkFBZ0M7SUFFaEMsT0FBTyxDQUFDLE9BQXdCLEVBQTJCLEVBQUU7UUFDM0QsTUFBTSxHQUFHLEdBQUcsT0FBc0MsQ0FBQztRQUVuRCw0Q0FBNEM7UUFDNUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDekUsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELElBQUksR0FBRyxDQUFDLEtBQUssS0FBSyxJQUFJLElBQUksT0FBTyxHQUFHLEdBQUcsQ0FBQyxLQUFLLEVBQUU7WUFDN0MsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FDWixTQUFTLEVBQ1QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FDakQsQ0FBQztZQUVGLE9BQU8scUJBQXFCLENBQzFCLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLFVBQVUsQ0FDWCxDQUFDO1NBQ0g7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgeyBJRGF0ZVRpbWVDb250cm9sIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9pZGF0ZXRpbWVjb250cm9sJztcclxuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcclxuaW1wb3J0IHsgaXNEYXRlVmFsaWQgfSBmcm9tICcuL2lzRGF0ZVZhbGlkJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtaW5EYXRlVmFsaWRhdG9yKFxyXG4gIG1pbkRhdGU6IERhdGUsXHJcbiAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xyXG4pOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCBjdGwgPSBjb250cm9sIGFzIHVua25vd24gYXMgSURhdGVUaW1lQ29udHJvbDtcclxuXHJcbiAgICAvLyBDaGVjayBhYmJyZWNoZW4sIHdlbm4ga2VpbiBnw7xsdGlnZXMgRGF0dW1cclxuICAgIGlmICghaXNEYXRlVmFsaWQoY3RsLnZhbHVlLCBjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpIHx8IG1pbkRhdGUgPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGN0bC52YWx1ZSAhPT0gbnVsbCAmJiBtaW5EYXRlID4gY3RsLnZhbHVlKSB7XHJcbiAgICAgIGNvbnN0IHBhcmFtZXRlcnM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xyXG4gICAgICBwYXJhbWV0ZXJzLnNldChcclxuICAgICAgICAnTUlOREFURScsXHJcbiAgICAgICAgbW9tZW50KG1pbkRhdGUpLmZvcm1hdChjdGwuZGF0ZXRpbWVmb3JtYXRzdHJpbmcpXHJcbiAgICAgICk7XHJcblxyXG4gICAgICByZXR1cm4gQ3JlYXRlVmFsaWRhdGlvbkVycm9yKFxyXG4gICAgICAgICdkYXRlbWluJyxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZSxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnksXHJcbiAgICAgICAgcGFyYW1ldGVyc1xyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
2
|
+
export function minFilesValidator(minFiles, validationMessage, validationMessageSummary) {
|
|
3
|
+
return (control) => {
|
|
4
|
+
const ctl = control;
|
|
5
|
+
// Check abbrechen, wenn kein gültiges Datum
|
|
6
|
+
if (!minFiles || minFiles === 0) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
if (ctl.uploadedfilecount !== null && minFiles > ctl.uploadedfilecount) {
|
|
10
|
+
const parameters = new Map();
|
|
11
|
+
parameters.set('MINFILES', minFiles);
|
|
12
|
+
return CreateValidationError('minfiles', validationMessage, validationMessageSummary, parameters);
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluZmlsZXMudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvdmFsaWRhdGlvbi9taW5maWxlcy52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFakUsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixRQUFnQixFQUNoQixpQkFBeUIsRUFDekIsd0JBQWdDO0lBRWhDLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQzNELE1BQU0sR0FBRyxHQUFHLE9BQW9DLENBQUM7UUFFakQsNENBQTRDO1FBQzVDLElBQUksQ0FBQyxRQUFRLElBQUksUUFBUSxLQUFLLENBQUMsRUFBRTtZQUMvQixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsSUFBSSxHQUFHLENBQUMsaUJBQWlCLEtBQUssSUFBSSxJQUFJLFFBQVEsR0FBRyxHQUFHLENBQUMsaUJBQWlCLEVBQUU7WUFDdEUsTUFBTSxVQUFVLEdBQXFCLElBQUksR0FBRyxFQUFlLENBQUM7WUFDNUQsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFFckMsT0FBTyxxQkFBcUIsQ0FDMUIsVUFBVSxFQUNWLGlCQUFpQixFQUNqQix3QkFBd0IsRUFDeEIsVUFBVSxDQUNYLENBQUM7U0FDSDthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBJVXBsb2FkQ29udHJvbCB9IGZyb20gJy4uL2ludGVyZmFjZXMvaXVwbG9hZGNvbnRyb2wnO1xyXG5pbXBvcnQgeyBDcmVhdGVWYWxpZGF0aW9uRXJyb3IgfSBmcm9tICcuL3ZhbGlkYXRpb25lcnJvcmNyZWF0b3InO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1pbkZpbGVzVmFsaWRhdG9yKFxyXG4gIG1pbkZpbGVzOiBudW1iZXIsXHJcbiAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xyXG4pOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCBjdGwgPSBjb250cm9sIGFzIHVua25vd24gYXMgSVVwbG9hZENvbnRyb2w7XHJcblxyXG4gICAgLy8gQ2hlY2sgYWJicmVjaGVuLCB3ZW5uIGtlaW4gZ8O8bHRpZ2VzIERhdHVtXHJcbiAgICBpZiAoIW1pbkZpbGVzIHx8IG1pbkZpbGVzID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjdGwudXBsb2FkZWRmaWxlY291bnQgIT09IG51bGwgJiYgbWluRmlsZXMgPiBjdGwudXBsb2FkZWRmaWxlY291bnQpIHtcclxuICAgICAgY29uc3QgcGFyYW1ldGVyczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcbiAgICAgIHBhcmFtZXRlcnMuc2V0KCdNSU5GSUxFUycsIG1pbkZpbGVzKTtcclxuXHJcbiAgICAgIHJldHVybiBDcmVhdGVWYWxpZGF0aW9uRXJyb3IoXHJcbiAgICAgICAgJ21pbmZpbGVzJyxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZSxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnksXHJcbiAgICAgICAgcGFyYW1ldGVyc1xyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Validators, } from '@angular/forms';
|
|
2
|
+
import { CreateValidationError } from './validationerrorcreator';
|
|
3
|
+
export function minLengthValidator(minlength, validationMessage, validationMessageSummary) {
|
|
4
|
+
return (control) => {
|
|
5
|
+
const validator = Validators.minLength(minlength);
|
|
6
|
+
if (minlength !== null &&
|
|
7
|
+
minlength !== undefined &&
|
|
8
|
+
control.value !== '' &&
|
|
9
|
+
control.value !== undefined &&
|
|
10
|
+
control.value != null &&
|
|
11
|
+
validator(control) != null) {
|
|
12
|
+
const parameters = new Map();
|
|
13
|
+
parameters.set('MINLENGTH', minlength);
|
|
14
|
+
return CreateValidationError('minlength', validationMessage, validationMessageSummary, parameters);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlubGVuZ3RoLnZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL3ZhbGlkYXRpb24vbWlubGVuZ3RoLnZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUgsVUFBVSxHQUNiLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFakUsTUFBTSxVQUFVLGtCQUFrQixDQUNoQyxTQUFpQixFQUNqQixpQkFBeUIsRUFDekIsd0JBQWdDO0lBRWhDLE9BQU8sQ0FBQyxPQUF3QixFQUEyQixFQUFFO1FBQzNELE1BQU0sU0FBUyxHQUFnQixVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRS9ELElBQ0UsU0FBUyxLQUFLLElBQUk7WUFDbEIsU0FBUyxLQUFLLFNBQVM7WUFDdkIsT0FBTyxDQUFDLEtBQUssS0FBSyxFQUFFO1lBQ3BCLE9BQU8sQ0FBQyxLQUFLLEtBQUssU0FBUztZQUMzQixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUk7WUFDckIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFDMUI7WUFDQSxNQUFNLFVBQVUsR0FBcUIsSUFBSSxHQUFHLEVBQWUsQ0FBQztZQUM1RCxVQUFVLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUV2QyxPQUFPLHFCQUFxQixDQUMxQixXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLHdCQUF3QixFQUN4QixVQUFVLENBQ1gsQ0FBQztTQUNIO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBYnN0cmFjdENvbnRyb2wsXHJcbiAgICBWYWxpZGF0aW9uRXJyb3JzLFxyXG4gICAgVmFsaWRhdG9yRm4sXHJcbiAgICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQ3JlYXRlVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnLi92YWxpZGF0aW9uZXJyb3JjcmVhdG9yJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtaW5MZW5ndGhWYWxpZGF0b3IoXHJcbiAgbWlubGVuZ3RoOiBudW1iZXIsXHJcbiAgdmFsaWRhdGlvbk1lc3NhZ2U6IHN0cmluZyxcclxuICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnk6IHN0cmluZ1xyXG4pOiBWYWxpZGF0b3JGbiB7XHJcbiAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9PiB7XHJcbiAgICBjb25zdCB2YWxpZGF0b3I6IFZhbGlkYXRvckZuID0gVmFsaWRhdG9ycy5taW5MZW5ndGgobWlubGVuZ3RoKTtcclxuXHJcbiAgICBpZiAoXHJcbiAgICAgIG1pbmxlbmd0aCAhPT0gbnVsbCAmJlxyXG4gICAgICBtaW5sZW5ndGggIT09IHVuZGVmaW5lZCAmJlxyXG4gICAgICBjb250cm9sLnZhbHVlICE9PSAnJyAmJlxyXG4gICAgICBjb250cm9sLnZhbHVlICE9PSB1bmRlZmluZWQgJiZcclxuICAgICAgY29udHJvbC52YWx1ZSAhPSBudWxsICYmXHJcbiAgICAgIHZhbGlkYXRvcihjb250cm9sKSAhPSBudWxsXHJcbiAgICApIHtcclxuICAgICAgY29uc3QgcGFyYW1ldGVyczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcbiAgICAgIHBhcmFtZXRlcnMuc2V0KCdNSU5MRU5HVEgnLCBtaW5sZW5ndGgpO1xyXG5cclxuICAgICAgcmV0dXJuIENyZWF0ZVZhbGlkYXRpb25FcnJvcihcclxuICAgICAgICAnbWlubGVuZ3RoJyxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZSxcclxuICAgICAgICB2YWxpZGF0aW9uTWVzc2FnZVN1bW1hcnksXHJcbiAgICAgICAgcGFyYW1ldGVyc1xyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0=
|