@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
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
function cov_rgjnay8wp(){var path="C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\browser.mjs";var hash="204dcf076985f9d7a44ef20a7df739fe2c8f3449";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\browser.mjs",statementMap:{"0":{start:{line:22,column:8},end:{line:22,column:35}},"1":{start:{line:27,column:8},end:{line:27,column:31}},"2":{start:{line:31,column:8},end:{line:31,column:36}},"3":{start:{line:35,column:8},end:{line:35,column:36}},"4":{start:{line:39,column:8},end:{line:39,column:36}},"5":{start:{line:43,column:8},end:{line:43,column:38}},"6":{start:{line:47,column:8},end:{line:47,column:38}},"7":{start:{line:51,column:8},end:{line:51,column:38}},"8":{start:{line:55,column:8},end:{line:55,column:39}},"9":{start:{line:59,column:8},end:{line:67,column:10}},"10":{start:{line:71,column:8},end:{line:71,column:37}},"11":{start:{line:75,column:8},end:{line:75,column:33}},"12":{start:{line:79,column:8},end:{line:79,column:26}},"13":{start:{line:80,column:8},end:{line:80,column:113}},"14":{start:{line:81,column:8},end:{line:81,column:113}},"15":{start:{line:82,column:8},end:{line:82,column:134}},"16":{start:{line:83,column:8},end:{line:83,column:86}},"17":{start:{line:91,column:29},end:{line:91,column:74}},"18":{start:{line:92,column:8},end:{line:94,column:9}},"19":{start:{line:93,column:12},end:{line:93,column:42}},"20":{start:{line:95,column:8},end:{line:95,column:32}},"21":{start:{line:102,column:8},end:{line:102,column:59}},"22":{start:{line:109,column:8},end:{line:109,column:57}},"23":{start:{line:116,column:8},end:{line:116,column:65}},"24":{start:{line:123,column:8},end:{line:123,column:64}},"25":{start:{line:130,column:8},end:{line:130,column:62}},"26":{start:{line:137,column:8},end:{line:137,column:63}},"27":{start:{line:144,column:8},end:{line:144,column:60}},"28":{start:{line:150,column:8},end:{line:155,column:9}},"29":{start:{line:151,column:12},end:{line:151,column:37}},"30":{start:{line:154,column:12},end:{line:154,column:24}},"31":{start:{line:163,column:8},end:{line:170,column:9}},"32":{start:{line:164,column:12},end:{line:164,column:79}},"33":{start:{line:164,column:54},end:{line:164,column:76}},"34":{start:{line:165,column:12},end:{line:169,column:13}},"35":{start:{line:168,column:16},end:{line:168,column:55}},"36":{start:{line:171,column:8},end:{line:171,column:37}},"37":{start:{line:178,column:8},end:{line:186,column:11}},"38":{start:{line:179,column:12},end:{line:185,column:13}},"39":{start:{line:180,column:16},end:{line:184,column:19}},"40":{start:{line:183,column:20},end:{line:183,column:59}},"41":{start:{line:193,column:8},end:{line:206,column:11}},"42":{start:{line:194,column:12},end:{line:205,column:13}},"43":{start:{line:195,column:16},end:{line:204,column:19}},"44":{start:{line:198,column:39},end:{line:198,column:79}},"45":{start:{line:199,column:20},end:{line:199,column:67}},"46":{start:{line:200,column:20},end:{line:202,column:23}},"47":{start:{line:201,column:24},end:{line:201,column:47}},"48":{start:{line:203,column:20},end:{line:203,column:48}},"49":{start:{line:213,column:8},end:{line:213,column:31}},"50":{start:{line:220,column:8},end:{line:220,column:31}},"51":{start:{line:227,column:21},end:{line:235,column:9}},"52":{start:{line:236,column:8},end:{line:236,column:35}},"53":{start:{line:237,column:8},end:{line:237,column:30}},"54":{start:{line:238,column:8},end:{line:238,column:28}},"55":{start:{line:244,column:8},end:{line:262,column:11}},"56":{start:{line:247,column:12},end:{line:255,column:14}},"57":{start:{line:256,column:12},end:{line:256,column:37}},"58":{start:{line:257,column:12},end:{line:257,column:46}},"59":{start:{line:259,column:12},end:{line:261,column:13}},"60":{start:{line:260,column:16},end:{line:260,column:56}},"61":{start:{line:268,column:8},end:{line:270,column:9}},"62":{start:{line:269,column:12},end:{line:269,column:40}},"63":{start:{line:271,column:8},end:{line:277,column:11}},"64":{start:{line:274,column:12},end:{line:274,column:53}},"65":{start:{line:275,column:12},end:{line:275,column:43}},"66":{start:{line:276,column:12},end:{line:276,column:37}},"67":{start:{line:285,column:8},end:{line:285,column:32}},"68":{start:{line:286,column:8},end:{line:289,column:9}},"69":{start:{line:288,column:12},end:{line:288,column:19}},"70":{start:{line:290,column:8},end:{line:296,column:9}},"71":{start:{line:291,column:12},end:{line:295,column:15}},"72":{start:{line:294,column:16},end:{line:294,column:55}},"73":{start:{line:304,column:8},end:{line:304,column:32}},"74":{start:{line:305,column:8},end:{line:337,column:9}},"75":{start:{line:306,column:12},end:{line:311,column:13}},"76":{start:{line:310,column:16},end:{line:310,column:23}},"77":{start:{line:312,column:12},end:{line:319,column:13}},"78":{start:{line:313,column:16},end:{line:318,column:19}},"79":{start:{line:316,column:20},end:{line:316,column:49}},"80":{start:{line:317,column:20},end:{line:317,column:45}},"81":{start:{line:322,column:12},end:{line:327,column:13}},"82":{start:{line:325,column:16},end:{line:325,column:55}},"83":{start:{line:326,column:16},end:{line:326,column:23}},"84":{start:{line:328,column:12},end:{line:328,column:38}},"85":{start:{line:329,column:12},end:{line:329,column:35}},"86":{start:{line:330,column:12},end:{line:336,column:15}},"87":{start:{line:333,column:16},end:{line:333,column:45}},"88":{start:{line:334,column:16},end:{line:334,column:47}},"89":{start:{line:335,column:16},end:{line:335,column:41}},"90":{start:{line:344,column:8},end:{line:346,column:9}},"91":{start:{line:345,column:12},end:{line:345,column:79}},"92":{start:{line:345,column:54},end:{line:345,column:76}},"93":{start:{line:347,column:8},end:{line:352,column:9}},"94":{start:{line:348,column:12},end:{line:348,column:77}},"95":{start:{line:351,column:12},end:{line:351,column:52}},"96":{start:{line:353,column:8},end:{line:353,column:37}},"97":{start:{line:354,column:8},end:{line:354,column:42}},"98":{start:{line:361,column:8},end:{line:363,column:9}},"99":{start:{line:362,column:12},end:{line:362,column:40}},"100":{start:{line:365,column:8},end:{line:365,column:37}},"101":{start:{line:366,column:8},end:{line:383,column:9}},"102":{start:{line:367,column:12},end:{line:379,column:15}},"103":{start:{line:370,column:16},end:{line:370,column:42}},"104":{start:{line:371,column:16},end:{line:371,column:41}},"105":{start:{line:372,column:16},end:{line:378,column:17}},"106":{start:{line:373,column:37},end:{line:373,column:108}},"107":{start:{line:374,column:33},end:{line:374,column:84}},"108":{start:{line:374,column:58},end:{line:374,column:83}},"109":{start:{line:375,column:20},end:{line:377,column:21}},"110":{start:{line:376,column:24},end:{line:376,column:46}},"111":{start:{line:382,column:12},end:{line:382,column:37}},"112":{start:{line:390,column:8},end:{line:395,column:9}},"113":{start:{line:391,column:12},end:{line:391,column:36}},"114":{start:{line:394,column:12},end:{line:394,column:35}},"115":{start:{line:402,column:8},end:{line:408,column:9}},"116":{start:{line:403,column:12},end:{line:407,column:15}},"117":{start:{line:404,column:16},end:{line:406,column:17}},"118":{start:{line:405,column:20},end:{line:405,column:47}},"119":{start:{line:409,column:19},end:{line:409,column:37}},"120":{start:{line:410,column:8},end:{line:417,column:9}},"121":{start:{line:411,column:12},end:{line:416,column:15}},"122":{start:{line:414,column:16},end:{line:414,column:55}},"123":{start:{line:415,column:16},end:{line:415,column:43}},"124":{start:{line:426,column:8},end:{line:430,column:11}},"125":{start:{line:427,column:12},end:{line:429,column:13}},"126":{start:{line:428,column:16},end:{line:428,column:69}},"127":{start:{line:431,column:8},end:{line:431,column:71}},"128":{start:{line:431,column:41},end:{line:431,column:69}},"129":{start:{line:439,column:8},end:{line:439,column:49}},"130":{start:{line:440,column:8},end:{line:442,column:11}},"131":{start:{line:441,column:12},end:{line:441,column:42}},"132":{start:{line:451,column:8},end:{line:453,column:9}},"133":{start:{line:452,column:12},end:{line:452,column:24}},"134":{start:{line:454,column:8},end:{line:459,column:9}},"135":{start:{line:455,column:27},end:{line:455,column:65}},"136":{start:{line:456,column:12},end:{line:458,column:13}},"137":{start:{line:457,column:16},end:{line:457,column:30}},"138":{start:{line:460,column:8},end:{line:460,column:20}},"139":{start:{line:470,column:8},end:{line:472,column:9}},"140":{start:{line:471,column:12},end:{line:471,column:24}},"141":{start:{line:474,column:26},end:{line:474,column:41}},"142":{start:{line:475,column:8},end:{line:475,column:42}},"143":{start:{line:476,column:8},end:{line:476,column:68}},"144":{start:{line:487,column:8},end:{line:499,column:9}},"145":{start:{line:488,column:12},end:{line:488,column:24}},"146":{start:{line:490,column:13},end:{line:499,column:9}},"147":{start:{line:492,column:12},end:{line:492,column:35}},"148":{start:{line:493,column:12},end:{line:498,column:13}},"149":{start:{line:494,column:31},end:{line:494,column:86}},"150":{start:{line:495,column:16},end:{line:497,column:17}},"151":{start:{line:496,column:20},end:{line:496,column:34}},"152":{start:{line:500,column:8},end:{line:500,column:20}},"153":{start:{line:507,column:8},end:{line:515,column:9}},"154":{start:{line:508,column:12},end:{line:508,column:50}},"155":{start:{line:511,column:12},end:{line:511,column:36}},"156":{start:{line:512,column:12},end:{line:514,column:13}},"157":{start:{line:513,column:16},end:{line:513,column:78}},"158":{start:{line:513,column:49},end:{line:513,column:76}},"159":{start:{line:521,column:8},end:{line:523,column:11}},"160":{start:{line:522,column:12},end:{line:522,column:35}},"161":{start:{line:526,column:0},end:{line:526,column:233}},"162":{start:{line:527,column:0},end:{line:527,column:558}},"163":{start:{line:528,column:0},end:{line:553,column:20}},"164":{start:{line:530,column:42},end:{line:530,column:98}}},fnMap:{"0":{name:"(anonymous_0)",decl:{start:{line:18,column:4},end:{line:18,column:5}},loc:{start:{line:18,column:38},end:{line:84,column:5}},line:18},"1":{name:"(anonymous_1)",decl:{start:{line:90,column:4},end:{line:90,column:5}},loc:{start:{line:90,column:24},end:{line:96,column:5}},line:90},"2":{name:"(anonymous_2)",decl:{start:{line:101,column:4},end:{line:101,column:5}},loc:{start:{line:101,column:21},end:{line:103,column:5}},line:101},"3":{name:"(anonymous_3)",decl:{start:{line:108,column:4},end:{line:108,column:5}},loc:{start:{line:108,column:19},end:{line:110,column:5}},line:108},"4":{name:"(anonymous_4)",decl:{start:{line:115,column:4},end:{line:115,column:5}},loc:{start:{line:115,column:30},end:{line:117,column:5}},line:115},"5":{name:"(anonymous_5)",decl:{start:{line:122,column:4},end:{line:122,column:5}},loc:{start:{line:122,column:26},end:{line:124,column:5}},line:122},"6":{name:"(anonymous_6)",decl:{start:{line:129,column:4},end:{line:129,column:5}},loc:{start:{line:129,column:24},end:{line:131,column:5}},line:129},"7":{name:"(anonymous_7)",decl:{start:{line:136,column:4},end:{line:136,column:5}},loc:{start:{line:136,column:25},end:{line:138,column:5}},line:136},"8":{name:"(anonymous_8)",decl:{start:{line:143,column:4},end:{line:143,column:5}},loc:{start:{line:143,column:22},end:{line:145,column:5}},line:143},"9":{name:"(anonymous_9)",decl:{start:{line:149,column:4},end:{line:149,column:5}},loc:{start:{line:149,column:23},end:{line:156,column:5}},line:149},"10":{name:"(anonymous_10)",decl:{start:{line:162,column:4},end:{line:162,column:5}},loc:{start:{line:162,column:32},end:{line:172,column:5}},line:162},"11":{name:"(anonymous_11)",decl:{start:{line:164,column:44},end:{line:164,column:45}},loc:{start:{line:164,column:54},end:{line:164,column:76}},line:164},"12":{name:"(anonymous_12)",decl:{start:{line:177,column:4},end:{line:177,column:5}},loc:{start:{line:177,column:21},end:{line:187,column:5}},line:177},"13":{name:"(anonymous_13)",decl:{start:{line:178,column:47},end:{line:178,column:48}},loc:{start:{line:178,column:60},end:{line:186,column:9}},line:178},"14":{name:"(anonymous_14)",decl:{start:{line:182,column:31},end:{line:182,column:32}},loc:{start:{line:182,column:43},end:{line:184,column:17}},line:182},"15":{name:"(anonymous_15)",decl:{start:{line:192,column:4},end:{line:192,column:5}},loc:{start:{line:192,column:21},end:{line:207,column:5}},line:192},"16":{name:"(anonymous_16)",decl:{start:{line:193,column:47},end:{line:193,column:48}},loc:{start:{line:193,column:60},end:{line:206,column:9}},line:193},"17":{name:"(anonymous_17)",decl:{start:{line:197,column:31},end:{line:197,column:32}},loc:{start:{line:197,column:43},end:{line:204,column:17}},line:197},"18":{name:"(anonymous_18)",decl:{start:{line:200,column:53},end:{line:200,column:54}},loc:{start:{line:200,column:62},end:{line:202,column:21}},line:200},"19":{name:"(anonymous_19)",decl:{start:{line:212,column:4},end:{line:212,column:5}},loc:{start:{line:212,column:19},end:{line:214,column:5}},line:212},"20":{name:"(anonymous_20)",decl:{start:{line:219,column:4},end:{line:219,column:5}},loc:{start:{line:219,column:19},end:{line:221,column:5}},line:219},"21":{name:"(anonymous_21)",decl:{start:{line:226,column:4},end:{line:226,column:5}},loc:{start:{line:226,column:18},end:{line:239,column:5}},line:226},"22":{name:"(anonymous_22)",decl:{start:{line:243,column:4},end:{line:243,column:5}},loc:{start:{line:243,column:15},end:{line:263,column:5}},line:243},"23":{name:"(anonymous_23)",decl:{start:{line:246,column:23},end:{line:246,column:24}},loc:{start:{line:246,column:35},end:{line:262,column:9}},line:246},"24":{name:"(anonymous_24)",decl:{start:{line:267,column:4},end:{line:267,column:5}},loc:{start:{line:267,column:22},end:{line:278,column:5}},line:267},"25":{name:"(anonymous_25)",decl:{start:{line:273,column:23},end:{line:273,column:24}},loc:{start:{line:273,column:35},end:{line:277,column:9}},line:273},"26":{name:"(anonymous_26)",decl:{start:{line:284,column:4},end:{line:284,column:5}},loc:{start:{line:284,column:34},end:{line:297,column:5}},line:284},"27":{name:"(anonymous_27)",decl:{start:{line:293,column:27},end:{line:293,column:28}},loc:{start:{line:293,column:39},end:{line:295,column:13}},line:293},"28":{name:"(anonymous_28)",decl:{start:{line:303,column:4},end:{line:303,column:5}},loc:{start:{line:303,column:36},end:{line:338,column:5}},line:303},"29":{name:"(anonymous_29)",decl:{start:{line:315,column:31},end:{line:315,column:32}},loc:{start:{line:315,column:43},end:{line:318,column:17}},line:315},"30":{name:"(anonymous_30)",decl:{start:{line:332,column:27},end:{line:332,column:28}},loc:{start:{line:332,column:39},end:{line:336,column:13}},line:332},"31":{name:"(anonymous_31)",decl:{start:{line:343,column:4},end:{line:343,column:5}},loc:{start:{line:343,column:21},end:{line:355,column:5}},line:343},"32":{name:"(anonymous_32)",decl:{start:{line:345,column:44},end:{line:345,column:45}},loc:{start:{line:345,column:54},end:{line:345,column:76}},line:345},"33":{name:"(anonymous_33)",decl:{start:{line:360,column:4},end:{line:360,column:5}},loc:{start:{line:360,column:21},end:{line:384,column:5}},line:360},"34":{name:"(anonymous_34)",decl:{start:{line:369,column:27},end:{line:369,column:28}},loc:{start:{line:369,column:39},end:{line:379,column:13}},line:369},"35":{name:"(anonymous_35)",decl:{start:{line:374,column:49},end:{line:374,column:50}},loc:{start:{line:374,column:58},end:{line:374,column:83}},line:374},"36":{name:"(anonymous_36)",decl:{start:{line:389,column:4},end:{line:389,column:5}},loc:{start:{line:389,column:27},end:{line:396,column:5}},line:389},"37":{name:"(anonymous_37)",decl:{start:{line:401,column:4},end:{line:401,column:5}},loc:{start:{line:401,column:39},end:{line:418,column:5}},line:401},"38":{name:"(anonymous_38)",decl:{start:{line:403,column:33},end:{line:403,column:34}},loc:{start:{line:403,column:46},end:{line:407,column:13}},line:403},"39":{name:"(anonymous_39)",decl:{start:{line:413,column:27},end:{line:413,column:28}},loc:{start:{line:413,column:39},end:{line:416,column:13}},line:413},"40":{name:"(anonymous_40)",decl:{start:{line:425,column:4},end:{line:425,column:5}},loc:{start:{line:425,column:29},end:{line:432,column:5}},line:425},"41":{name:"(anonymous_41)",decl:{start:{line:426,column:32},end:{line:426,column:33}},loc:{start:{line:426,column:41},end:{line:430,column:9}},line:426},"42":{name:"(anonymous_42)",decl:{start:{line:431,column:32},end:{line:431,column:33}},loc:{start:{line:431,column:41},end:{line:431,column:69}},line:431},"43":{name:"(anonymous_43)",decl:{start:{line:438,column:4},end:{line:438,column:5}},loc:{start:{line:438,column:31},end:{line:443,column:5}},line:438},"44":{name:"(anonymous_44)",decl:{start:{line:440,column:32},end:{line:440,column:33}},loc:{start:{line:440,column:41},end:{line:442,column:9}},line:440},"45":{name:"(anonymous_45)",decl:{start:{line:450,column:4},end:{line:450,column:5}},loc:{start:{line:450,column:37},end:{line:461,column:5}},line:450},"46":{name:"(anonymous_46)",decl:{start:{line:468,column:4},end:{line:468,column:5}},loc:{start:{line:468,column:39},end:{line:477,column:5}},line:468},"47":{name:"(anonymous_47)",decl:{start:{line:485,column:4},end:{line:485,column:5}},loc:{start:{line:485,column:51},end:{line:501,column:5}},line:485},"48":{name:"(anonymous_48)",decl:{start:{line:506,column:4},end:{line:506,column:5}},loc:{start:{line:506,column:28},end:{line:516,column:5}},line:506},"49":{name:"(anonymous_49)",decl:{start:{line:513,column:40},end:{line:513,column:41}},loc:{start:{line:513,column:49},end:{line:513,column:76}},line:513},"50":{name:"(anonymous_50)",decl:{start:{line:520,column:4},end:{line:520,column:5}},loc:{start:{line:520,column:24},end:{line:524,column:5}},line:520},"51":{name:"(anonymous_51)",decl:{start:{line:521,column:41},end:{line:521,column:42}},loc:{start:{line:521,column:50},end:{line:523,column:9}},line:521},"52":{name:"(anonymous_52)",decl:{start:{line:530,column:28},end:{line:530,column:29}},loc:{start:{line:530,column:40},end:{line:530,column:100}},line:530}},branchMap:{"0":{loc:{start:{line:92,column:8},end:{line:94,column:9}},type:"if",locations:[{start:{line:92,column:8},end:{line:94,column:9}},{start:{line:92,column:8},end:{line:94,column:9}}],line:92},"1":{loc:{start:{line:150,column:8},end:{line:155,column:9}},type:"if",locations:[{start:{line:150,column:8},end:{line:155,column:9}},{start:{line:150,column:8},end:{line:155,column:9}}],line:150},"2":{loc:{start:{line:150,column:12},end:{line:150,column:57}},type:"binary-expr",locations:[{start:{line:150,column:12},end:{line:150,column:27}},{start:{line:150,column:31},end:{line:150,column:57}}],line:150},"3":{loc:{start:{line:163,column:8},end:{line:170,column:9}},type:"if",locations:[{start:{line:163,column:8},end:{line:170,column:9}},{start:{line:163,column:8},end:{line:170,column:9}}],line:163},"4":{loc:{start:{line:165,column:12},end:{line:169,column:13}},type:"if",locations:[{start:{line:165,column:12},end:{line:169,column:13}},{start:{line:165,column:12},end:{line:169,column:13}}],line:165},"5":{loc:{start:{line:165,column:16},end:{line:167,column:51}},type:"binary-expr",locations:[{start:{line:165,column:16},end:{line:165,column:34}},{start:{line:166,column:16},end:{line:166,column:47}},{start:{line:167,column:16},end:{line:167,column:51}}],line:165},"6":{loc:{start:{line:179,column:12},end:{line:185,column:13}},type:"if",locations:[{start:{line:179,column:12},end:{line:185,column:13}},{start:{line:179,column:12},end:{line:185,column:13}}],line:179},"7":{loc:{start:{line:194,column:12},end:{line:205,column:13}},type:"if",locations:[{start:{line:194,column:12},end:{line:205,column:13}},{start:{line:194,column:12},end:{line:205,column:13}}],line:194},"8":{loc:{start:{line:259,column:12},end:{line:261,column:13}},type:"if",locations:[{start:{line:259,column:12},end:{line:261,column:13}},{start:{line:259,column:12},end:{line:261,column:13}}],line:259},"9":{loc:{start:{line:259,column:16},end:{line:259,column:78}},type:"binary-expr",locations:[{start:{line:259,column:16},end:{line:259,column:44}},{start:{line:259,column:48},end:{line:259,column:78}}],line:259},"10":{loc:{start:{line:268,column:8},end:{line:270,column:9}},type:"if",locations:[{start:{line:268,column:8},end:{line:270,column:9}},{start:{line:268,column:8},end:{line:270,column:9}}],line:268},"11":{loc:{start:{line:286,column:8},end:{line:289,column:9}},type:"if",locations:[{start:{line:286,column:8},end:{line:289,column:9}},{start:{line:286,column:8},end:{line:289,column:9}}],line:286},"12":{loc:{start:{line:286,column:12},end:{line:286,column:76}},type:"binary-expr",locations:[{start:{line:286,column:12},end:{line:286,column:24}},{start:{line:286,column:28},end:{line:286,column:48}},{start:{line:286,column:52},end:{line:286,column:76}}],line:286},"13":{loc:{start:{line:290,column:8},end:{line:296,column:9}},type:"if",locations:[{start:{line:290,column:8},end:{line:296,column:9}},{start:{line:290,column:8},end:{line:296,column:9}}],line:290},"14":{loc:{start:{line:305,column:8},end:{line:337,column:9}},type:"if",locations:[{start:{line:305,column:8},end:{line:337,column:9}},{start:{line:305,column:8},end:{line:337,column:9}}],line:305},"15":{loc:{start:{line:306,column:12},end:{line:311,column:13}},type:"if",locations:[{start:{line:306,column:12},end:{line:311,column:13}},{start:{line:306,column:12},end:{line:311,column:13}}],line:306},"16":{loc:{start:{line:306,column:16},end:{line:308,column:42}},type:"binary-expr",locations:[{start:{line:306,column:16},end:{line:306,column:30}},{start:{line:307,column:16},end:{line:307,column:38}},{start:{line:308,column:16},end:{line:308,column:42}}],line:306},"17":{loc:{start:{line:312,column:12},end:{line:319,column:13}},type:"if",locations:[{start:{line:312,column:12},end:{line:319,column:13}},{start:{line:312,column:12},end:{line:319,column:13}}],line:312},"18":{loc:{start:{line:322,column:12},end:{line:327,column:13}},type:"if",locations:[{start:{line:322,column:12},end:{line:327,column:13}},{start:{line:322,column:12},end:{line:327,column:13}}],line:322},"19":{loc:{start:{line:322,column:16},end:{line:324,column:42}},type:"binary-expr",locations:[{start:{line:322,column:16},end:{line:322,column:30}},{start:{line:323,column:16},end:{line:323,column:38}},{start:{line:324,column:16},end:{line:324,column:42}}],line:322},"20":{loc:{start:{line:344,column:8},end:{line:346,column:9}},type:"if",locations:[{start:{line:344,column:8},end:{line:346,column:9}},{start:{line:344,column:8},end:{line:346,column:9}}],line:344},"21":{loc:{start:{line:347,column:8},end:{line:352,column:9}},type:"if",locations:[{start:{line:347,column:8},end:{line:352,column:9}},{start:{line:347,column:8},end:{line:352,column:9}}],line:347},"22":{loc:{start:{line:361,column:8},end:{line:363,column:9}},type:"if",locations:[{start:{line:361,column:8},end:{line:363,column:9}},{start:{line:361,column:8},end:{line:363,column:9}}],line:361},"23":{loc:{start:{line:366,column:8},end:{line:383,column:9}},type:"if",locations:[{start:{line:366,column:8},end:{line:383,column:9}},{start:{line:366,column:8},end:{line:383,column:9}}],line:366},"24":{loc:{start:{line:372,column:16},end:{line:378,column:17}},type:"if",locations:[{start:{line:372,column:16},end:{line:378,column:17}},{start:{line:372,column:16},end:{line:378,column:17}}],line:372},"25":{loc:{start:{line:372,column:20},end:{line:372,column:82}},type:"binary-expr",locations:[{start:{line:372,column:20},end:{line:372,column:48}},{start:{line:372,column:52},end:{line:372,column:82}}],line:372},"26":{loc:{start:{line:375,column:20},end:{line:377,column:21}},type:"if",locations:[{start:{line:375,column:20},end:{line:377,column:21}},{start:{line:375,column:20},end:{line:377,column:21}}],line:375},"27":{loc:{start:{line:390,column:8},end:{line:395,column:9}},type:"if",locations:[{start:{line:390,column:8},end:{line:395,column:9}},{start:{line:390,column:8},end:{line:395,column:9}}],line:390},"28":{loc:{start:{line:402,column:8},end:{line:408,column:9}},type:"if",locations:[{start:{line:402,column:8},end:{line:408,column:9}},{start:{line:402,column:8},end:{line:408,column:9}}],line:402},"29":{loc:{start:{line:404,column:16},end:{line:406,column:17}},type:"if",locations:[{start:{line:404,column:16},end:{line:406,column:17}},{start:{line:404,column:16},end:{line:406,column:17}}],line:404},"30":{loc:{start:{line:410,column:8},end:{line:417,column:9}},type:"if",locations:[{start:{line:410,column:8},end:{line:417,column:9}},{start:{line:410,column:8},end:{line:417,column:9}}],line:410},"31":{loc:{start:{line:427,column:12},end:{line:429,column:13}},type:"if",locations:[{start:{line:427,column:12},end:{line:429,column:13}},{start:{line:427,column:12},end:{line:429,column:13}}],line:427},"32":{loc:{start:{line:451,column:8},end:{line:453,column:9}},type:"if",locations:[{start:{line:451,column:8},end:{line:453,column:9}},{start:{line:451,column:8},end:{line:453,column:9}}],line:451},"33":{loc:{start:{line:456,column:12},end:{line:458,column:13}},type:"if",locations:[{start:{line:456,column:12},end:{line:458,column:13}},{start:{line:456,column:12},end:{line:458,column:13}}],line:456},"34":{loc:{start:{line:470,column:8},end:{line:472,column:9}},type:"if",locations:[{start:{line:470,column:8},end:{line:472,column:9}},{start:{line:470,column:8},end:{line:472,column:9}}],line:470},"35":{loc:{start:{line:470,column:12},end:{line:470,column:47}},type:"binary-expr",locations:[{start:{line:470,column:12},end:{line:470,column:30}},{start:{line:470,column:34},end:{line:470,column:47}}],line:470},"36":{loc:{start:{line:487,column:8},end:{line:499,column:9}},type:"if",locations:[{start:{line:487,column:8},end:{line:499,column:9}},{start:{line:487,column:8},end:{line:499,column:9}}],line:487},"37":{loc:{start:{line:487,column:12},end:{line:487,column:66}},type:"binary-expr",locations:[{start:{line:487,column:12},end:{line:487,column:37}},{start:{line:487,column:41},end:{line:487,column:66}}],line:487},"38":{loc:{start:{line:490,column:13},end:{line:499,column:9}},type:"if",locations:[{start:{line:490,column:13},end:{line:499,column:9}},{start:{line:490,column:13},end:{line:499,column:9}}],line:490},"39":{loc:{start:{line:495,column:16},end:{line:497,column:17}},type:"if",locations:[{start:{line:495,column:16},end:{line:497,column:17}},{start:{line:495,column:16},end:{line:497,column:17}}],line:495},"40":{loc:{start:{line:507,column:8},end:{line:515,column:9}},type:"if",locations:[{start:{line:507,column:8},end:{line:515,column:9}},{start:{line:507,column:8},end:{line:515,column:9}}],line:507},"41":{loc:{start:{line:512,column:12},end:{line:514,column:13}},type:"if",locations:[{start:{line:512,column:12},end:{line:514,column:13}},{start:{line:512,column:12},end:{line:514,column:13}}],line:512}},s:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0,"143":0,"144":0,"145":0,"146":0,"147":0,"148":0,"149":0,"150":0,"151":0,"152":0,"153":0,"154":0,"155":0,"156":0,"157":0,"158":0,"159":0,"160":0,"161":0,"162":0,"163":0,"164":0},f:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0},b:{"0":[0,0],"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0,0],"13":[0,0],"14":[0,0],"15":[0,0],"16":[0,0,0],"17":[0,0],"18":[0,0],"19":[0,0,0],"20":[0,0],"21":[0,0],"22":[0,0],"23":[0,0],"24":[0,0],"25":[0,0],"26":[0,0],"27":[0,0],"28":[0,0],"29":[0,0],"30":[0,0],"31":[0,0],"32":[0,0],"33":[0,0],"34":[0,0],"35":[0,0],"36":[0,0],"37":[0,0],"38":[0,0],"39":[0,0],"40":[0,0],"41":[0,0]},inputSourceMap:{version:3,file:"browser.js",sourceRoot:"",sources:["../../../../../projects/sac-common/src/components/browser/browser.ts"],names:[],mappings:"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",sourcesContent:["import { HttpClient } from '@angular/common/http';\r\nimport {\r\n Directive,\r\n EventEmitter,\r\n HostListener,\r\n Injector,\r\n Input,\r\n OnInit,\r\n Output,\r\n} from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { ISacFileBrowserService } from '../../interfaces/ISacFileBrowserService';\r\nimport { ISacIconService } from '../../interfaces/ISacIconService';\r\nimport { ISacLocalisationService } from '../../interfaces/ISacLocalisationService';\r\nimport { ISacValidationKeyService } from '../../interfaces/ISacValidationKeyService';\r\nimport {\r\n SACICON_SERVICE,\r\n SACLOCALISATION_SERVICE,\r\n SACVALIDATIONKEY_SERVICE,\r\n SacDefaultIconService,\r\n SacDefaultValidationKeyService,\r\n} from '../../services';\r\nimport {\r\n SACFILEBROWSER_SERVICE,\r\n SacDefaultFileBrowserService,\r\n} from '../../services/sac-filebrowser.service';\r\nimport { SacDefaultLocalisationService } from '../../services/sac-localisation.service';\r\nimport { IBrowserFile } from './models/browserfile';\r\nimport { IBrowserFileResponse } from './models/browserfileresponse';\r\nimport { IBrowserNode } from './models/browsernode';\r\nimport { IBrowserNodeResponse } from './models/browsernoderesponse';\r\n\r\n/**\r\n * Base Component f\xFCr File Browser\r\n */\r\n@Directive()\r\nexport abstract class SacFileBrowserCommon implements OnInit {\r\n // #region Properties\r\n\r\n /**\r\n * Service f\xFCr File Browser Zugriff (Backend)\r\n */\r\n private browserService: ISacFileBrowserService;\r\n /**\r\n * Icon service to receive icon classes for ui\r\n */\r\n private iconService: ISacIconService;\r\n /**\r\n * File welches beim starten des Browsers bereits selektiert ist\r\n */\r\n private preselecedfile: string | null = null;\r\n\r\n /**\r\n * Erlaubte Dateierweiterungen f\xFCr Fileauswahl und Upload. Dateierweiterung mit Punkt und\r\n * getrennt durch Komma f\xFCr mehr als eine Erweiterung (Example: \".jpg,.gif\")\r\n */\r\n @Input()\r\n public allowedtypes: string = '';\r\n /**\r\n * Erlaubt das l\xF6schen einer Datei\r\n */\r\n @Input()\r\n public allowfiledelete: boolean = true;\r\n /**\r\n * Erlaubt das umbenennen einer Datei\r\n */\r\n @Input()\r\n public allowfilerename: boolean = true;\r\n /**\r\n * Erlaubt den Upload von Dateien\r\n */\r\n @Input()\r\n public allowfileupload: boolean = true;\r\n /**\r\n * Erlaubt das erstellen eines neuen Ordners\r\n */\r\n @Input()\r\n public allowfoldercreate: boolean = true;\r\n /**\r\n * Erlaubt das l\xF6schen eines Ordners\r\n */\r\n @Input()\r\n public allowfolderdelete: boolean = true;\r\n /**\r\n * Erlaubt das Umbenennen eines Ordners\r\n */\r\n @Input()\r\n public allowfolderrename: boolean = true;\r\n /**\r\n * URL f\xFCr Backend API\r\n */\r\n @Input()\r\n public apiurl: string;\r\n /**\r\n * Output Emitter wenn File selektiert wird.\r\n */\r\n @Output()\r\n public file: EventEmitter<string> = new EventEmitter<string>();\r\n\r\n /**\r\n * Service f\xFCr Error Localisation\r\n */\r\n public lngResourceService: ISacLocalisationService;\r\n /**\r\n * Root Node Item f\xFCr Tree\r\n */\r\n public rootNode: IBrowserNode = {\r\n Name: '',\r\n ChildNodes: [],\r\n Files: [],\r\n IsExpanded: true,\r\n IsEditMode: false,\r\n IsNewNode: false,\r\n Path: '',\r\n };\r\n /**\r\n * Selected File Name\r\n */\r\n public selectedFile: string;\r\n /**\r\n * Selected File Item\r\n */\r\n public selectedFileItem: IBrowserFile = null;\r\n /**\r\n * Selected Node Item\r\n */\r\n public selectedNode: IBrowserNode = null;\r\n /**\r\n * Liste von Uploads\r\n */\r\n public uploads: string[] = [];\r\n /**\r\n * Service to receive standard validation message keys and texts\r\n */\r\n public validationKeyService: ISacValidationKeyService;\r\n\r\n // #endregion Properties\r\n\r\n // #region Constructors\r\n\r\n /**\r\n * Konstruktor\r\n * @param httpclient Angular HTTP Client\r\n * @param injector Service Injector\r\n */\r\n constructor(httpclient: HttpClient, injector: Injector) {\r\n this.browserService = injector.get(\r\n SACFILEBROWSER_SERVICE,\r\n new SacDefaultFileBrowserService(httpclient)\r\n );\r\n this.validationKeyService = injector.get(\r\n SACVALIDATIONKEY_SERVICE,\r\n new SacDefaultValidationKeyService()\r\n );\r\n this.lngResourceService = injector.get(\r\n SACLOCALISATION_SERVICE,\r\n new SacDefaultLocalisationService(this.validationKeyService)\r\n );\r\n\r\n this.iconService = injector.get(\r\n SACICON_SERVICE,\r\n new SacDefaultIconService()\r\n );\r\n }\r\n\r\n // #endregion Constructors\r\n\r\n // #region Public Getters And Setters\r\n\r\n /**\r\n * Setzt den Seleced Node \xFCber den Pfad\r\n */\r\n @Input()\r\n public set selectedfile(v: string | null) {\r\n const selectednode = this.findSelectedNodeByPath(this.rootNode, v);\r\n\r\n if (selectednode !== null) {\r\n this.selectNode(selectednode);\r\n }\r\n\r\n this.preselecedfile = v;\r\n }\r\n\r\n /**\r\n * CSS icon class for delete icon\r\n * @returns css class with icon\r\n */\r\n public get iconDelete(): string {\r\n return this.iconService.BrowserComponentDeleteIcon;\r\n }\r\n\r\n /**\r\n * CSS icon class for edit icon\r\n * @returns css class with icon\r\n */\r\n public get iconEdit(): string {\r\n return this.iconService.BrowserComponentEditIcon;\r\n }\r\n\r\n /**\r\n * CSS icon for folders in tree there are collabsed\r\n * @returns css class with icon\r\n */\r\n public get iconFolderCollabsed(): string {\r\n return this.iconService.BrowserComponentFolderClosedIcon;\r\n }\r\n\r\n /**\r\n * CSS icon class for folders without subfolders\r\n * @returns css class with icon\r\n */\r\n public get iconFolderEmpty(): string {\r\n return this.iconService.BrowserComponentFolderEmptyIcon;\r\n }\r\n\r\n /**\r\n * CSS icon for new folders action\r\n * @returns css class with icon\r\n */\r\n public get iconFolderNew(): string {\r\n return this.iconService.BrowserComponentFolderNewIcon;\r\n }\r\n\r\n /**\r\n * CSS icon for folders in tree there are expanded\r\n * @returns css class with icon\r\n */\r\n public get iconFolderOpen(): string {\r\n return this.iconService.BrowserComponentFolderOpenIcon;\r\n }\r\n\r\n /**\r\n * CSS icon class for refresh icon\r\n * @returns css class with icon\r\n */\r\n public get iconRefresh(): string {\r\n return this.iconService.BrowserComponentRefreshIcon;\r\n }\r\n\r\n /**\r\n * Getter f\xFCr Selected File. Ist an Input Property gebunden\r\n */\r\n public get selectedfile(): string | null {\r\n if (this.selectFile && this.selectFile.length > 0) {\r\n return this.selectedFile;\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n // #endregion Public Getters And Setters\r\n\r\n // #region Public Methods\r\n\r\n /**\r\n * HostListener welcher den Edit Mode bei allen Files und Nodes beendet.\r\n */\r\n @HostListener('document:click', ['$event.target'])\r\n /**\r\n * Click Event\r\n */\r\n public exitEditMode(targetElement): void {\r\n if (this.selectedNode) {\r\n this.selectedNode.Files.forEach((itm) => (itm.IsEditMode = false));\r\n\r\n if (\r\n !this.selectedNode ||\r\n this.selectedNode.Name === null ||\r\n this.selectedNode.Name.length === 0\r\n ) {\r\n this.clearNewChildNodes(this.rootNode);\r\n }\r\n }\r\n\r\n this.resetNodeEditMode(null);\r\n }\r\n\r\n /**\r\n * L\xF6scht ein File\r\n * @param file File welches gel\xF6scht werden soll\r\n */\r\n public deleteFile(file: IBrowserFile): void {\r\n this.confirmDeleteFile(file).subscribe((confirm) => {\r\n if (confirm) {\r\n this.browserService\r\n .DeleteFile(\r\n this.apiurl,\r\n this.selectedNode.Path + '/' + file.Filename,\r\n this.allowedtypes\r\n )\r\n .subscribe((result: IBrowserFileResponse) => {\r\n this.selectedNode.Files = result.Files;\r\n });\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * L\xF6scht einen Node\r\n * @param node Node welcher gel\xF6scht werden soll\r\n */\r\n public deleteNode(node: IBrowserNode): void {\r\n this.confirmDeleteNode(node).subscribe((confirm) => {\r\n if (confirm) {\r\n this.browserService\r\n .DeleteNode(this.apiurl, node.Path)\r\n .subscribe((result: IBrowserNodeResponse) => {\r\n const parentNode = this.findParentNode(this.rootNode, node);\r\n parentNode.ChildNodes = result.Node.ChildNodes;\r\n\r\n this.rootNode.ChildNodes.forEach((itm) => {\r\n this.fillPath(itm, '');\r\n });\r\n\r\n this.selectNode(parentNode);\r\n });\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Setzt ein File in den Edit Mode\r\n * @param file File welches in den Edit Mode gesetzt werden soll\r\n */\r\n public editFile(file: IBrowserFile): void {\r\n file.IsEditMode = true;\r\n }\r\n\r\n /**\r\n * Setzt einen Node in den Edit Mode\r\n * @param node Node welcher bearbeitet werden soll\r\n */\r\n public editNode(node: IBrowserNode): void {\r\n node.IsEditMode = true;\r\n }\r\n\r\n /**\r\n * Erzeugt einen neuen Node im Tree\r\n * @param node Node unter welchem ein neuer Node erstellt werden soll\r\n */\r\n public newNode(node: IBrowserNode) {\r\n const item: IBrowserNode = {\r\n ChildNodes: [],\r\n Files: [],\r\n IsEditMode: false,\r\n IsExpanded: false,\r\n Name: '',\r\n Path: node.Path,\r\n IsNewNode: true,\r\n };\r\n\r\n node.ChildNodes.push(item);\r\n this.selectNode(item);\r\n this.editNode(item);\r\n }\r\n\r\n /**\r\n * Init Event der Komponente\r\n */\r\n public ngOnInit(): void {\r\n this.browserService\r\n .GetNode(this.apiurl, '', this.allowedtypes)\r\n .subscribe((result: IBrowserNodeResponse) => {\r\n this.rootNode = {\r\n Name: result.Node.Name,\r\n Files: result.Node.Files,\r\n ChildNodes: result.Node.ChildNodes,\r\n IsExpanded: true,\r\n IsEditMode: false,\r\n IsNewNode: false,\r\n Path: '/',\r\n };\r\n\r\n this.setPathToAllNodes();\r\n this.selectedNode = this.rootNode;\r\n\r\n // Selected File erneut setzen, wenn Property gesetzt wurde bevor Daten vom Service geladen wurden.\r\n if (this.preselecedfile !== null && this.preselecedfile.length > 0) {\r\n this.selectedfile = this.preselecedfile;\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * Aktualisiert den Node\r\n */\r\n public refreshNode(node: IBrowserNode): void {\r\n if (!node.IsExpanded) {\r\n this.switchExpandNode(node);\r\n }\r\n\r\n this.browserService\r\n .GetNode(this.apiurl, node.Path, this.allowedtypes)\r\n .subscribe((result: IBrowserNodeResponse) => {\r\n node.ChildNodes = result.Node.ChildNodes;\r\n node.Files = result.Node.Files;\r\n\r\n this.setPathToAllNodes();\r\n });\r\n }\r\n\r\n /**\r\n * Methode wenn eine Datei umbenannt werden soll\r\n * @param file File welches umbenannt werden soll\r\n * @param newFilename Neuer Dateiname\r\n */\r\n public renameFile(file: IBrowserFile, newFilename: string): void {\r\n file.IsEditMode = false;\r\n\r\n if (!newFilename || newFilename === null || newFilename.length === 0) {\r\n // Cancel, Invalid Filename\r\n return;\r\n }\r\n\r\n if (file.Filename !== newFilename) {\r\n this.browserService\r\n .RenameFile(\r\n this.apiurl,\r\n this.selectedNode.Path + '/' + file.Filename,\r\n newFilename,\r\n this.allowedtypes\r\n )\r\n .subscribe((result: IBrowserFileResponse) => {\r\n this.selectedNode.Files = result.Files;\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Methode wenn ein Node umbenannt werden soll\r\n * @param node Node welcher umbenannt werden soll\r\n * @param newFoldername Neuer Ordnername\r\n */\r\n public renameNode(node: IBrowserNode, newFoldername: string): void {\r\n node.IsEditMode = false;\r\n\r\n if (!node.IsNewNode) {\r\n if (\r\n !newFoldername ||\r\n newFoldername === null ||\r\n newFoldername.length === 0\r\n ) {\r\n // Cancel Rename. Invalid Foldername\r\n return;\r\n }\r\n\r\n if (node.Name !== newFoldername) {\r\n this.browserService\r\n .RenameNode(this.apiurl, node.Path, newFoldername)\r\n .subscribe((result: IBrowserNodeResponse) => {\r\n node.Name = result.Node.Name;\r\n\r\n this.setPathToAllNodes();\r\n });\r\n }\r\n } else {\r\n if (\r\n !newFoldername ||\r\n newFoldername === null ||\r\n newFoldername.length === 0\r\n ) {\r\n this.clearNewChildNodes(this.rootNode);\r\n return;\r\n }\r\n\r\n node.Name = newFoldername;\r\n node.IsNewNode = false;\r\n this.browserService\r\n .SaveNode(this.apiurl, node.Path, newFoldername)\r\n .subscribe((result: IBrowserNodeResponse) => {\r\n node.Name = result.Node.Name;\r\n node.Files = result.Node.Files;\r\n\r\n this.setPathToAllNodes();\r\n });\r\n }\r\n }\r\n\r\n /**\r\n * Methode wenn ein File selektiert wird\r\n * @param file File welches selektiert wird\r\n */\r\n public selectFile(file: IBrowserFile) {\r\n if (!file.IsEditMode) {\r\n this.selectedNode.Files.forEach((itm) => (itm.IsEditMode = false));\r\n }\r\n\r\n if (!this.selectedNode.Path.endsWith('/')) {\r\n this.selectedFile = this.selectedNode.Path + '/' + file.Filename;\r\n } else {\r\n this.selectedFile = '/' + file.Filename;\r\n }\r\n\r\n this.selectedFileItem = file;\r\n this.file.emit(this.selectedFile);\r\n }\r\n\r\n /**\r\n * Methode wenn ein Node selektiert wird\r\n * @param node Node welcher selektiert werden soll\r\n */\r\n public selectNode(node: IBrowserNode): void {\r\n if (!node.IsExpanded) {\r\n this.switchExpandNode(node);\r\n }\r\n\r\n // Reset the Edit Mode in all Nodes\r\n this.resetNodeEditMode(null);\r\n\r\n if (!node.Files) {\r\n this.browserService\r\n .GetFiles(this.apiurl, node.Path, this.allowedtypes)\r\n .subscribe((result: IBrowserFileResponse) => {\r\n node.Files = result.Files;\r\n this.selectedNode = node;\r\n\r\n if (this.preselecedfile !== null && this.preselecedfile.length > 0) {\r\n const filename = this.preselecedfile.substring(\r\n this.preselecedfile.lastIndexOf('/') + 1\r\n );\r\n const file = node.Files.find((itm) => itm.Filename === filename);\r\n if (file) {\r\n this.selectFile(file);\r\n }\r\n }\r\n });\r\n } else {\r\n this.selectedNode = node;\r\n }\r\n }\r\n\r\n /**\r\n * Expand/Collabse Methode f\xFCr Nodes\r\n * @param node Node welcher ge\xF6ffnet oder geschlossen werden soll\r\n */\r\n public switchExpandNode(node: IBrowserNode): void {\r\n if (node.IsExpanded) {\r\n node.IsExpanded = false;\r\n } else {\r\n node.IsExpanded = true;\r\n }\r\n }\r\n\r\n /**\r\n * Methode die Aufgerufen werden muss, wenn ein Upload beendet ist.\r\n * @param param Parameter des hochgeladenen Files\r\n */\r\n public uploadComplete(node: IBrowserNode, uploadIdList: string[]): void {\r\n if (uploadIdList !== null) {\r\n uploadIdList.forEach((element) => {\r\n if (this.uploads.indexOf(element) < 0) {\r\n this.uploads.push(element);\r\n }\r\n });\r\n }\r\n\r\n const id = this.uploads.pop();\r\n if (id) {\r\n this.browserService\r\n .SaveFile(this.apiurl, node.Path, id, this.allowedtypes)\r\n .subscribe((result: IBrowserFileResponse) => {\r\n this.selectedNode.Files = result.Files;\r\n this.uploadedFileMoved(id);\r\n });\r\n }\r\n }\r\n\r\n // #endregion Public Methods\r\n\r\n // #region Public Abstract Methods\r\n\r\n /**\r\n * Abstrakte Confirm Methode welche implementiert werden muss. Methode wird aufgerufen, wenn eine\r\n * Datei gel\xF6scht werden soll.\r\n * @param file File f\xFCr welches ein Delete Confirm eingefordert werden soll\r\n */\r\n public abstract confirmDeleteFile(file: IBrowserFile): Observable<boolean>;\r\n /**\r\n * Abstrakte Confirm Methode welche implementiert werden muss. Methode wird aufgerufen, wenn ein\r\n * Ordner gel\xF6scht werden soll.\r\n * @param folder Ordern f\xFCr welchen ein Delete Confirm eingefordert werden soll.\r\n */\r\n public abstract confirmDeleteNode(folder: IBrowserNode): Observable<boolean>;\r\n /**\r\n * Abstrakte Methode die Aufgerufen wird, wenn das Hochgeladene File aus dem Temp Folder in die\r\n * Struktur verschoben wurde.\r\n * @param uploadid ID des Uploads\r\n */\r\n public abstract uploadedFileMoved(uploadid: string): void;\r\n\r\n // #endregion Public Abstract Methods\r\n\r\n // #region Private Methods\r\n\r\n /**\r\n * Rekursive Methode welche beim Node und all seinen Childs neue Nodes entfernt\r\n * @param node Node bei welchem alle neuen Nodes entfernt werden soll.\r\n */\r\n private clearNewChildNodes(node: IBrowserNode) {\r\n node.ChildNodes.forEach((itm) => {\r\n if (itm.IsNewNode) {\r\n node.ChildNodes.splice(node.ChildNodes.indexOf(itm));\r\n }\r\n });\r\n\r\n node.ChildNodes.forEach((itm) => this.clearNewChildNodes(itm));\r\n }\r\n\r\n /**\r\n * Methode welche den Pfad f\xFCr einen Node erzeugt\r\n * @param node Node f\xFCr welchen der Pfad erzeugt werden soll\r\n * @param parentPath \xDCbergeordneter Pfad\r\n */\r\n private fillPath(node: IBrowserNode, parentPath: string) {\r\n node.Path = parentPath + '/' + node.Name;\r\n node.ChildNodes.forEach((itm) => {\r\n this.fillPath(itm, node.Path);\r\n });\r\n }\r\n\r\n /**\r\n * Sucht den \xFCbergeordneten Node im Tree\r\n * @param node Aktueller Node\r\n * @param nodeToFind Node welcher gefunden werden soll\r\n * @returns Node wenn er gefunden wurde, ansonsten wird NULL zur\xFCckgegeben\r\n */\r\n private findParentNode(\r\n node: IBrowserNode,\r\n nodeToFind: IBrowserNode\r\n ): IBrowserNode {\r\n if (node.ChildNodes.indexOf(nodeToFind) >= 0) {\r\n return node;\r\n }\r\n\r\n for (const child of node.ChildNodes) {\r\n const result = this.findParentNode(child, nodeToFind);\r\n if (result !== null) {\r\n return result;\r\n }\r\n }\r\n\r\n return null;\r\n }\r\n\r\n /**\r\n * Sucht einen Node gem. einem URL Pfad\r\n * @param node Node in welchem gesucht werden soll\r\n * @param path Pfad nach welchem gesucht wird\r\n * @returns Node welcher zum gesuchten Pfad passt. Wenn kein Node gefunden wird, wird NULL zur\xFCckgegeben\r\n */\r\n private findSelectedNodeByPath(\r\n node: IBrowserNode,\r\n path: string\r\n ): IBrowserNode {\r\n // Cancel wenn Pfad nicht definiert\r\n if (path === undefined || path === null) {\r\n return null;\r\n }\r\n\r\n // Pfad in Array splitten und Root Foldername setzen\r\n const pathArray = path.split('/');\r\n pathArray[0] = this.rootNode.Name;\r\n\r\n return this.findSelectedNodeByPathArray(node, pathArray, 0);\r\n }\r\n\r\n /**\r\n * Sucht einen Node gem. einem Array von Node Namen\r\n * @param node Node in welchem gesucht werden soll\r\n * @param path Array von Node Namen, welche die Hirarchy des Pfades abbilden\r\n * @param index Aktueller Index im PATH Array\r\n * @returns Node wenn einer gefunden wurde, ansonsten NULL\r\n */\r\n private findSelectedNodeByPathArray(\r\n node: IBrowserNode,\r\n path: string[],\r\n index: number\r\n ): IBrowserNode {\r\n // Check ob Ordner korrekt. Letzer Ordner zur\xFCckgeben. Path Last Index ist der Filename\r\n if (node.Name === path[index] && path.length - 2 === index) {\r\n return node;\r\n } else if (node.Name === path[index]) {\r\n // Expand Node\r\n node.IsExpanded = true;\r\n for (const item of node.ChildNodes) {\r\n const result = this.findSelectedNodeByPathArray(item, path, index + 1);\r\n\r\n if (result !== null) {\r\n return result;\r\n }\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n /**\r\n * Rekursive Methode welche beim Node und all seinen Childs den Edit Mode beendet.\r\n * @param node Node bei welchem der Edit Mode beendet werden soll\r\n */\r\n private resetNodeEditMode(node: IBrowserNode): void {\r\n if (node === null) {\r\n this.resetNodeEditMode(this.rootNode);\r\n } else {\r\n node.IsEditMode = false;\r\n\r\n if (node.ChildNodes) {\r\n node.ChildNodes.forEach((itm) => this.resetNodeEditMode(itm));\r\n }\r\n }\r\n }\r\n\r\n /**\r\n * Setzt den Pfad in allen Nodes\r\n */\r\n private setPathToAllNodes() {\r\n this.rootNode.ChildNodes.forEach((itm) => {\r\n this.fillPath(itm, '');\r\n });\r\n }\r\n\r\n // #endregion Private Methods\r\n}\r\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"204dcf076985f9d7a44ef20a7df739fe2c8f3449"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
|
-
cov_rgjnay8wp=function(){return actualCoverage;};}return actualCoverage;}cov_rgjnay8wp();import{Directive,EventEmitter,HostListener,Input,Output}from'@angular/core';import{SACICON_SERVICE,SACLOCALISATION_SERVICE,SACVALIDATIONKEY_SERVICE,SacDefaultIconService,SacDefaultValidationKeyService}from'../../services';import{SACFILEBROWSER_SERVICE,SacDefaultFileBrowserService}from'../../services/sac-filebrowser.service';import{SacDefaultLocalisationService}from'../../services/sac-localisation.service';import*as i0 from"@angular/core";import*as i1 from"@angular/common/http";/**
|
|
3
|
-
* Base Component für File Browser
|
|
4
|
-
*/export class SacFileBrowserCommon{// #endregion Properties
|
|
5
|
-
// #region Constructors
|
|
6
|
-
/**
|
|
7
|
-
* Konstruktor
|
|
8
|
-
* @param httpclient Angular HTTP Client
|
|
9
|
-
* @param injector Service Injector
|
|
10
|
-
*/constructor(httpclient,injector){cov_rgjnay8wp().f[0]++;cov_rgjnay8wp().s[0]++;/**
|
|
11
|
-
* File welches beim starten des Browsers bereits selektiert ist
|
|
12
|
-
*/this.preselecedfile=null;/**
|
|
13
|
-
* Erlaubte Dateierweiterungen für Fileauswahl und Upload. Dateierweiterung mit Punkt und
|
|
14
|
-
* getrennt durch Komma für mehr als eine Erweiterung (Example: ".jpg,.gif")
|
|
15
|
-
*/cov_rgjnay8wp().s[1]++;this.allowedtypes='';/**
|
|
16
|
-
* Erlaubt das löschen einer Datei
|
|
17
|
-
*/cov_rgjnay8wp().s[2]++;this.allowfiledelete=true;/**
|
|
18
|
-
* Erlaubt das umbenennen einer Datei
|
|
19
|
-
*/cov_rgjnay8wp().s[3]++;this.allowfilerename=true;/**
|
|
20
|
-
* Erlaubt den Upload von Dateien
|
|
21
|
-
*/cov_rgjnay8wp().s[4]++;this.allowfileupload=true;/**
|
|
22
|
-
* Erlaubt das erstellen eines neuen Ordners
|
|
23
|
-
*/cov_rgjnay8wp().s[5]++;this.allowfoldercreate=true;/**
|
|
24
|
-
* Erlaubt das löschen eines Ordners
|
|
25
|
-
*/cov_rgjnay8wp().s[6]++;this.allowfolderdelete=true;/**
|
|
26
|
-
* Erlaubt das Umbenennen eines Ordners
|
|
27
|
-
*/cov_rgjnay8wp().s[7]++;this.allowfolderrename=true;/**
|
|
28
|
-
* Output Emitter wenn File selektiert wird.
|
|
29
|
-
*/cov_rgjnay8wp().s[8]++;this.file=new EventEmitter();/**
|
|
30
|
-
* Root Node Item für Tree
|
|
31
|
-
*/cov_rgjnay8wp().s[9]++;this.rootNode={Name:'',ChildNodes:[],Files:[],IsExpanded:true,IsEditMode:false,IsNewNode:false,Path:''};/**
|
|
32
|
-
* Selected File Item
|
|
33
|
-
*/cov_rgjnay8wp().s[10]++;this.selectedFileItem=null;/**
|
|
34
|
-
* Selected Node Item
|
|
35
|
-
*/cov_rgjnay8wp().s[11]++;this.selectedNode=null;/**
|
|
36
|
-
* Liste von Uploads
|
|
37
|
-
*/cov_rgjnay8wp().s[12]++;this.uploads=[];cov_rgjnay8wp().s[13]++;this.browserService=injector.get(SACFILEBROWSER_SERVICE,new SacDefaultFileBrowserService(httpclient));cov_rgjnay8wp().s[14]++;this.validationKeyService=injector.get(SACVALIDATIONKEY_SERVICE,new SacDefaultValidationKeyService());cov_rgjnay8wp().s[15]++;this.lngResourceService=injector.get(SACLOCALISATION_SERVICE,new SacDefaultLocalisationService(this.validationKeyService));cov_rgjnay8wp().s[16]++;this.iconService=injector.get(SACICON_SERVICE,new SacDefaultIconService());}// #endregion Constructors
|
|
38
|
-
// #region Public Getters And Setters
|
|
39
|
-
/**
|
|
40
|
-
* Setzt den Seleced Node über den Pfad
|
|
41
|
-
*/set selectedfile(v){cov_rgjnay8wp().f[1]++;const selectednode=(cov_rgjnay8wp().s[17]++,this.findSelectedNodeByPath(this.rootNode,v));cov_rgjnay8wp().s[18]++;if(selectednode!==null){cov_rgjnay8wp().b[0][0]++;cov_rgjnay8wp().s[19]++;this.selectNode(selectednode);}else{cov_rgjnay8wp().b[0][1]++;}cov_rgjnay8wp().s[20]++;this.preselecedfile=v;}/**
|
|
42
|
-
* CSS icon class for delete icon
|
|
43
|
-
* @returns css class with icon
|
|
44
|
-
*/get iconDelete(){cov_rgjnay8wp().f[2]++;cov_rgjnay8wp().s[21]++;return this.iconService.BrowserComponentDeleteIcon;}/**
|
|
45
|
-
* CSS icon class for edit icon
|
|
46
|
-
* @returns css class with icon
|
|
47
|
-
*/get iconEdit(){cov_rgjnay8wp().f[3]++;cov_rgjnay8wp().s[22]++;return this.iconService.BrowserComponentEditIcon;}/**
|
|
48
|
-
* CSS icon for folders in tree there are collabsed
|
|
49
|
-
* @returns css class with icon
|
|
50
|
-
*/get iconFolderCollabsed(){cov_rgjnay8wp().f[4]++;cov_rgjnay8wp().s[23]++;return this.iconService.BrowserComponentFolderClosedIcon;}/**
|
|
51
|
-
* CSS icon class for folders without subfolders
|
|
52
|
-
* @returns css class with icon
|
|
53
|
-
*/get iconFolderEmpty(){cov_rgjnay8wp().f[5]++;cov_rgjnay8wp().s[24]++;return this.iconService.BrowserComponentFolderEmptyIcon;}/**
|
|
54
|
-
* CSS icon for new folders action
|
|
55
|
-
* @returns css class with icon
|
|
56
|
-
*/get iconFolderNew(){cov_rgjnay8wp().f[6]++;cov_rgjnay8wp().s[25]++;return this.iconService.BrowserComponentFolderNewIcon;}/**
|
|
57
|
-
* CSS icon for folders in tree there are expanded
|
|
58
|
-
* @returns css class with icon
|
|
59
|
-
*/get iconFolderOpen(){cov_rgjnay8wp().f[7]++;cov_rgjnay8wp().s[26]++;return this.iconService.BrowserComponentFolderOpenIcon;}/**
|
|
60
|
-
* CSS icon class for refresh icon
|
|
61
|
-
* @returns css class with icon
|
|
62
|
-
*/get iconRefresh(){cov_rgjnay8wp().f[8]++;cov_rgjnay8wp().s[27]++;return this.iconService.BrowserComponentRefreshIcon;}/**
|
|
63
|
-
* Getter für Selected File. Ist an Input Property gebunden
|
|
64
|
-
*/get selectedfile(){cov_rgjnay8wp().f[9]++;cov_rgjnay8wp().s[28]++;if((cov_rgjnay8wp().b[2][0]++,this.selectFile)&&(cov_rgjnay8wp().b[2][1]++,this.selectFile.length>0)){cov_rgjnay8wp().b[1][0]++;cov_rgjnay8wp().s[29]++;return this.selectedFile;}else{cov_rgjnay8wp().b[1][1]++;cov_rgjnay8wp().s[30]++;return null;}}// #endregion Public Getters And Setters
|
|
65
|
-
// #region Public Methods
|
|
66
|
-
/**
|
|
67
|
-
* HostListener welcher den Edit Mode bei allen Files und Nodes beendet.
|
|
68
|
-
*/exitEditMode(targetElement){cov_rgjnay8wp().f[10]++;cov_rgjnay8wp().s[31]++;if(this.selectedNode){cov_rgjnay8wp().b[3][0]++;cov_rgjnay8wp().s[32]++;this.selectedNode.Files.forEach(itm=>{cov_rgjnay8wp().f[11]++;cov_rgjnay8wp().s[33]++;return itm.IsEditMode=false;});cov_rgjnay8wp().s[34]++;if((cov_rgjnay8wp().b[5][0]++,!this.selectedNode)||(cov_rgjnay8wp().b[5][1]++,this.selectedNode.Name===null)||(cov_rgjnay8wp().b[5][2]++,this.selectedNode.Name.length===0)){cov_rgjnay8wp().b[4][0]++;cov_rgjnay8wp().s[35]++;this.clearNewChildNodes(this.rootNode);}else{cov_rgjnay8wp().b[4][1]++;}}else{cov_rgjnay8wp().b[3][1]++;}cov_rgjnay8wp().s[36]++;this.resetNodeEditMode(null);}/**
|
|
69
|
-
* Löscht ein File
|
|
70
|
-
* @param file File welches gelöscht werden soll
|
|
71
|
-
*/deleteFile(file){cov_rgjnay8wp().f[12]++;cov_rgjnay8wp().s[37]++;this.confirmDeleteFile(file).subscribe(confirm=>{cov_rgjnay8wp().f[13]++;cov_rgjnay8wp().s[38]++;if(confirm){cov_rgjnay8wp().b[6][0]++;cov_rgjnay8wp().s[39]++;this.browserService.DeleteFile(this.apiurl,this.selectedNode.Path+'/'+file.Filename,this.allowedtypes).subscribe(result=>{cov_rgjnay8wp().f[14]++;cov_rgjnay8wp().s[40]++;this.selectedNode.Files=result.Files;});}else{cov_rgjnay8wp().b[6][1]++;}});}/**
|
|
72
|
-
* Löscht einen Node
|
|
73
|
-
* @param node Node welcher gelöscht werden soll
|
|
74
|
-
*/deleteNode(node){cov_rgjnay8wp().f[15]++;cov_rgjnay8wp().s[41]++;this.confirmDeleteNode(node).subscribe(confirm=>{cov_rgjnay8wp().f[16]++;cov_rgjnay8wp().s[42]++;if(confirm){cov_rgjnay8wp().b[7][0]++;cov_rgjnay8wp().s[43]++;this.browserService.DeleteNode(this.apiurl,node.Path).subscribe(result=>{cov_rgjnay8wp().f[17]++;const parentNode=(cov_rgjnay8wp().s[44]++,this.findParentNode(this.rootNode,node));cov_rgjnay8wp().s[45]++;parentNode.ChildNodes=result.Node.ChildNodes;cov_rgjnay8wp().s[46]++;this.rootNode.ChildNodes.forEach(itm=>{cov_rgjnay8wp().f[18]++;cov_rgjnay8wp().s[47]++;this.fillPath(itm,'');});cov_rgjnay8wp().s[48]++;this.selectNode(parentNode);});}else{cov_rgjnay8wp().b[7][1]++;}});}/**
|
|
75
|
-
* Setzt ein File in den Edit Mode
|
|
76
|
-
* @param file File welches in den Edit Mode gesetzt werden soll
|
|
77
|
-
*/editFile(file){cov_rgjnay8wp().f[19]++;cov_rgjnay8wp().s[49]++;file.IsEditMode=true;}/**
|
|
78
|
-
* Setzt einen Node in den Edit Mode
|
|
79
|
-
* @param node Node welcher bearbeitet werden soll
|
|
80
|
-
*/editNode(node){cov_rgjnay8wp().f[20]++;cov_rgjnay8wp().s[50]++;node.IsEditMode=true;}/**
|
|
81
|
-
* Erzeugt einen neuen Node im Tree
|
|
82
|
-
* @param node Node unter welchem ein neuer Node erstellt werden soll
|
|
83
|
-
*/newNode(node){cov_rgjnay8wp().f[21]++;const item=(cov_rgjnay8wp().s[51]++,{ChildNodes:[],Files:[],IsEditMode:false,IsExpanded:false,Name:'',Path:node.Path,IsNewNode:true});cov_rgjnay8wp().s[52]++;node.ChildNodes.push(item);cov_rgjnay8wp().s[53]++;this.selectNode(item);cov_rgjnay8wp().s[54]++;this.editNode(item);}/**
|
|
84
|
-
* Init Event der Komponente
|
|
85
|
-
*/ngOnInit(){cov_rgjnay8wp().f[22]++;cov_rgjnay8wp().s[55]++;this.browserService.GetNode(this.apiurl,'',this.allowedtypes).subscribe(result=>{cov_rgjnay8wp().f[23]++;cov_rgjnay8wp().s[56]++;this.rootNode={Name:result.Node.Name,Files:result.Node.Files,ChildNodes:result.Node.ChildNodes,IsExpanded:true,IsEditMode:false,IsNewNode:false,Path:'/'};cov_rgjnay8wp().s[57]++;this.setPathToAllNodes();cov_rgjnay8wp().s[58]++;this.selectedNode=this.rootNode;// Selected File erneut setzen, wenn Property gesetzt wurde bevor Daten vom Service geladen wurden.
|
|
86
|
-
cov_rgjnay8wp().s[59]++;if((cov_rgjnay8wp().b[9][0]++,this.preselecedfile!==null)&&(cov_rgjnay8wp().b[9][1]++,this.preselecedfile.length>0)){cov_rgjnay8wp().b[8][0]++;cov_rgjnay8wp().s[60]++;this.selectedfile=this.preselecedfile;}else{cov_rgjnay8wp().b[8][1]++;}});}/**
|
|
87
|
-
* Aktualisiert den Node
|
|
88
|
-
*/refreshNode(node){cov_rgjnay8wp().f[24]++;cov_rgjnay8wp().s[61]++;if(!node.IsExpanded){cov_rgjnay8wp().b[10][0]++;cov_rgjnay8wp().s[62]++;this.switchExpandNode(node);}else{cov_rgjnay8wp().b[10][1]++;}cov_rgjnay8wp().s[63]++;this.browserService.GetNode(this.apiurl,node.Path,this.allowedtypes).subscribe(result=>{cov_rgjnay8wp().f[25]++;cov_rgjnay8wp().s[64]++;node.ChildNodes=result.Node.ChildNodes;cov_rgjnay8wp().s[65]++;node.Files=result.Node.Files;cov_rgjnay8wp().s[66]++;this.setPathToAllNodes();});}/**
|
|
89
|
-
* Methode wenn eine Datei umbenannt werden soll
|
|
90
|
-
* @param file File welches umbenannt werden soll
|
|
91
|
-
* @param newFilename Neuer Dateiname
|
|
92
|
-
*/renameFile(file,newFilename){cov_rgjnay8wp().f[26]++;cov_rgjnay8wp().s[67]++;file.IsEditMode=false;cov_rgjnay8wp().s[68]++;if((cov_rgjnay8wp().b[12][0]++,!newFilename)||(cov_rgjnay8wp().b[12][1]++,newFilename===null)||(cov_rgjnay8wp().b[12][2]++,newFilename.length===0)){cov_rgjnay8wp().b[11][0]++;cov_rgjnay8wp().s[69]++;// Cancel, Invalid Filename
|
|
93
|
-
return;}else{cov_rgjnay8wp().b[11][1]++;}cov_rgjnay8wp().s[70]++;if(file.Filename!==newFilename){cov_rgjnay8wp().b[13][0]++;cov_rgjnay8wp().s[71]++;this.browserService.RenameFile(this.apiurl,this.selectedNode.Path+'/'+file.Filename,newFilename,this.allowedtypes).subscribe(result=>{cov_rgjnay8wp().f[27]++;cov_rgjnay8wp().s[72]++;this.selectedNode.Files=result.Files;});}else{cov_rgjnay8wp().b[13][1]++;}}/**
|
|
94
|
-
* Methode wenn ein Node umbenannt werden soll
|
|
95
|
-
* @param node Node welcher umbenannt werden soll
|
|
96
|
-
* @param newFoldername Neuer Ordnername
|
|
97
|
-
*/renameNode(node,newFoldername){cov_rgjnay8wp().f[28]++;cov_rgjnay8wp().s[73]++;node.IsEditMode=false;cov_rgjnay8wp().s[74]++;if(!node.IsNewNode){cov_rgjnay8wp().b[14][0]++;cov_rgjnay8wp().s[75]++;if((cov_rgjnay8wp().b[16][0]++,!newFoldername)||(cov_rgjnay8wp().b[16][1]++,newFoldername===null)||(cov_rgjnay8wp().b[16][2]++,newFoldername.length===0)){cov_rgjnay8wp().b[15][0]++;cov_rgjnay8wp().s[76]++;// Cancel Rename. Invalid Foldername
|
|
98
|
-
return;}else{cov_rgjnay8wp().b[15][1]++;}cov_rgjnay8wp().s[77]++;if(node.Name!==newFoldername){cov_rgjnay8wp().b[17][0]++;cov_rgjnay8wp().s[78]++;this.browserService.RenameNode(this.apiurl,node.Path,newFoldername).subscribe(result=>{cov_rgjnay8wp().f[29]++;cov_rgjnay8wp().s[79]++;node.Name=result.Node.Name;cov_rgjnay8wp().s[80]++;this.setPathToAllNodes();});}else{cov_rgjnay8wp().b[17][1]++;}}else{cov_rgjnay8wp().b[14][1]++;cov_rgjnay8wp().s[81]++;if((cov_rgjnay8wp().b[19][0]++,!newFoldername)||(cov_rgjnay8wp().b[19][1]++,newFoldername===null)||(cov_rgjnay8wp().b[19][2]++,newFoldername.length===0)){cov_rgjnay8wp().b[18][0]++;cov_rgjnay8wp().s[82]++;this.clearNewChildNodes(this.rootNode);cov_rgjnay8wp().s[83]++;return;}else{cov_rgjnay8wp().b[18][1]++;}cov_rgjnay8wp().s[84]++;node.Name=newFoldername;cov_rgjnay8wp().s[85]++;node.IsNewNode=false;cov_rgjnay8wp().s[86]++;this.browserService.SaveNode(this.apiurl,node.Path,newFoldername).subscribe(result=>{cov_rgjnay8wp().f[30]++;cov_rgjnay8wp().s[87]++;node.Name=result.Node.Name;cov_rgjnay8wp().s[88]++;node.Files=result.Node.Files;cov_rgjnay8wp().s[89]++;this.setPathToAllNodes();});}}/**
|
|
99
|
-
* Methode wenn ein File selektiert wird
|
|
100
|
-
* @param file File welches selektiert wird
|
|
101
|
-
*/selectFile(file){cov_rgjnay8wp().f[31]++;cov_rgjnay8wp().s[90]++;if(!file.IsEditMode){cov_rgjnay8wp().b[20][0]++;cov_rgjnay8wp().s[91]++;this.selectedNode.Files.forEach(itm=>{cov_rgjnay8wp().f[32]++;cov_rgjnay8wp().s[92]++;return itm.IsEditMode=false;});}else{cov_rgjnay8wp().b[20][1]++;}cov_rgjnay8wp().s[93]++;if(!this.selectedNode.Path.endsWith('/')){cov_rgjnay8wp().b[21][0]++;cov_rgjnay8wp().s[94]++;this.selectedFile=this.selectedNode.Path+'/'+file.Filename;}else{cov_rgjnay8wp().b[21][1]++;cov_rgjnay8wp().s[95]++;this.selectedFile='/'+file.Filename;}cov_rgjnay8wp().s[96]++;this.selectedFileItem=file;cov_rgjnay8wp().s[97]++;this.file.emit(this.selectedFile);}/**
|
|
102
|
-
* Methode wenn ein Node selektiert wird
|
|
103
|
-
* @param node Node welcher selektiert werden soll
|
|
104
|
-
*/selectNode(node){cov_rgjnay8wp().f[33]++;cov_rgjnay8wp().s[98]++;if(!node.IsExpanded){cov_rgjnay8wp().b[22][0]++;cov_rgjnay8wp().s[99]++;this.switchExpandNode(node);}else{cov_rgjnay8wp().b[22][1]++;}// Reset the Edit Mode in all Nodes
|
|
105
|
-
cov_rgjnay8wp().s[100]++;this.resetNodeEditMode(null);cov_rgjnay8wp().s[101]++;if(!node.Files){cov_rgjnay8wp().b[23][0]++;cov_rgjnay8wp().s[102]++;this.browserService.GetFiles(this.apiurl,node.Path,this.allowedtypes).subscribe(result=>{cov_rgjnay8wp().f[34]++;cov_rgjnay8wp().s[103]++;node.Files=result.Files;cov_rgjnay8wp().s[104]++;this.selectedNode=node;cov_rgjnay8wp().s[105]++;if((cov_rgjnay8wp().b[25][0]++,this.preselecedfile!==null)&&(cov_rgjnay8wp().b[25][1]++,this.preselecedfile.length>0)){cov_rgjnay8wp().b[24][0]++;const filename=(cov_rgjnay8wp().s[106]++,this.preselecedfile.substring(this.preselecedfile.lastIndexOf('/')+1));const file=(cov_rgjnay8wp().s[107]++,node.Files.find(itm=>{cov_rgjnay8wp().f[35]++;cov_rgjnay8wp().s[108]++;return itm.Filename===filename;}));cov_rgjnay8wp().s[109]++;if(file){cov_rgjnay8wp().b[26][0]++;cov_rgjnay8wp().s[110]++;this.selectFile(file);}else{cov_rgjnay8wp().b[26][1]++;}}else{cov_rgjnay8wp().b[24][1]++;}});}else{cov_rgjnay8wp().b[23][1]++;cov_rgjnay8wp().s[111]++;this.selectedNode=node;}}/**
|
|
106
|
-
* Expand/Collabse Methode für Nodes
|
|
107
|
-
* @param node Node welcher geöffnet oder geschlossen werden soll
|
|
108
|
-
*/switchExpandNode(node){cov_rgjnay8wp().f[36]++;cov_rgjnay8wp().s[112]++;if(node.IsExpanded){cov_rgjnay8wp().b[27][0]++;cov_rgjnay8wp().s[113]++;node.IsExpanded=false;}else{cov_rgjnay8wp().b[27][1]++;cov_rgjnay8wp().s[114]++;node.IsExpanded=true;}}/**
|
|
109
|
-
* Methode die Aufgerufen werden muss, wenn ein Upload beendet ist.
|
|
110
|
-
* @param param Parameter des hochgeladenen Files
|
|
111
|
-
*/uploadComplete(node,uploadIdList){cov_rgjnay8wp().f[37]++;cov_rgjnay8wp().s[115]++;if(uploadIdList!==null){cov_rgjnay8wp().b[28][0]++;cov_rgjnay8wp().s[116]++;uploadIdList.forEach(element=>{cov_rgjnay8wp().f[38]++;cov_rgjnay8wp().s[117]++;if(this.uploads.indexOf(element)<0){cov_rgjnay8wp().b[29][0]++;cov_rgjnay8wp().s[118]++;this.uploads.push(element);}else{cov_rgjnay8wp().b[29][1]++;}});}else{cov_rgjnay8wp().b[28][1]++;}const id=(cov_rgjnay8wp().s[119]++,this.uploads.pop());cov_rgjnay8wp().s[120]++;if(id){cov_rgjnay8wp().b[30][0]++;cov_rgjnay8wp().s[121]++;this.browserService.SaveFile(this.apiurl,node.Path,id,this.allowedtypes).subscribe(result=>{cov_rgjnay8wp().f[39]++;cov_rgjnay8wp().s[122]++;this.selectedNode.Files=result.Files;cov_rgjnay8wp().s[123]++;this.uploadedFileMoved(id);});}else{cov_rgjnay8wp().b[30][1]++;}}// #endregion Public Abstract Methods
|
|
112
|
-
// #region Private Methods
|
|
113
|
-
/**
|
|
114
|
-
* Rekursive Methode welche beim Node und all seinen Childs neue Nodes entfernt
|
|
115
|
-
* @param node Node bei welchem alle neuen Nodes entfernt werden soll.
|
|
116
|
-
*/clearNewChildNodes(node){cov_rgjnay8wp().f[40]++;cov_rgjnay8wp().s[124]++;node.ChildNodes.forEach(itm=>{cov_rgjnay8wp().f[41]++;cov_rgjnay8wp().s[125]++;if(itm.IsNewNode){cov_rgjnay8wp().b[31][0]++;cov_rgjnay8wp().s[126]++;node.ChildNodes.splice(node.ChildNodes.indexOf(itm));}else{cov_rgjnay8wp().b[31][1]++;}});cov_rgjnay8wp().s[127]++;node.ChildNodes.forEach(itm=>{cov_rgjnay8wp().f[42]++;cov_rgjnay8wp().s[128]++;return this.clearNewChildNodes(itm);});}/**
|
|
117
|
-
* Methode welche den Pfad für einen Node erzeugt
|
|
118
|
-
* @param node Node für welchen der Pfad erzeugt werden soll
|
|
119
|
-
* @param parentPath Übergeordneter Pfad
|
|
120
|
-
*/fillPath(node,parentPath){cov_rgjnay8wp().f[43]++;cov_rgjnay8wp().s[129]++;node.Path=parentPath+'/'+node.Name;cov_rgjnay8wp().s[130]++;node.ChildNodes.forEach(itm=>{cov_rgjnay8wp().f[44]++;cov_rgjnay8wp().s[131]++;this.fillPath(itm,node.Path);});}/**
|
|
121
|
-
* Sucht den übergeordneten Node im Tree
|
|
122
|
-
* @param node Aktueller Node
|
|
123
|
-
* @param nodeToFind Node welcher gefunden werden soll
|
|
124
|
-
* @returns Node wenn er gefunden wurde, ansonsten wird NULL zurückgegeben
|
|
125
|
-
*/findParentNode(node,nodeToFind){cov_rgjnay8wp().f[45]++;cov_rgjnay8wp().s[132]++;if(node.ChildNodes.indexOf(nodeToFind)>=0){cov_rgjnay8wp().b[32][0]++;cov_rgjnay8wp().s[133]++;return node;}else{cov_rgjnay8wp().b[32][1]++;}cov_rgjnay8wp().s[134]++;for(const child of node.ChildNodes){const result=(cov_rgjnay8wp().s[135]++,this.findParentNode(child,nodeToFind));cov_rgjnay8wp().s[136]++;if(result!==null){cov_rgjnay8wp().b[33][0]++;cov_rgjnay8wp().s[137]++;return result;}else{cov_rgjnay8wp().b[33][1]++;}}cov_rgjnay8wp().s[138]++;return null;}/**
|
|
126
|
-
* Sucht einen Node gem. einem URL Pfad
|
|
127
|
-
* @param node Node in welchem gesucht werden soll
|
|
128
|
-
* @param path Pfad nach welchem gesucht wird
|
|
129
|
-
* @returns Node welcher zum gesuchten Pfad passt. Wenn kein Node gefunden wird, wird NULL zurückgegeben
|
|
130
|
-
*/findSelectedNodeByPath(node,path){cov_rgjnay8wp().f[46]++;cov_rgjnay8wp().s[139]++;// Cancel wenn Pfad nicht definiert
|
|
131
|
-
if((cov_rgjnay8wp().b[35][0]++,path===undefined)||(cov_rgjnay8wp().b[35][1]++,path===null)){cov_rgjnay8wp().b[34][0]++;cov_rgjnay8wp().s[140]++;return null;}else{cov_rgjnay8wp().b[34][1]++;}// Pfad in Array splitten und Root Foldername setzen
|
|
132
|
-
const pathArray=(cov_rgjnay8wp().s[141]++,path.split('/'));cov_rgjnay8wp().s[142]++;pathArray[0]=this.rootNode.Name;cov_rgjnay8wp().s[143]++;return this.findSelectedNodeByPathArray(node,pathArray,0);}/**
|
|
133
|
-
* Sucht einen Node gem. einem Array von Node Namen
|
|
134
|
-
* @param node Node in welchem gesucht werden soll
|
|
135
|
-
* @param path Array von Node Namen, welche die Hirarchy des Pfades abbilden
|
|
136
|
-
* @param index Aktueller Index im PATH Array
|
|
137
|
-
* @returns Node wenn einer gefunden wurde, ansonsten NULL
|
|
138
|
-
*/findSelectedNodeByPathArray(node,path,index){cov_rgjnay8wp().f[47]++;cov_rgjnay8wp().s[144]++;// Check ob Ordner korrekt. Letzer Ordner zurückgeben. Path Last Index ist der Filename
|
|
139
|
-
if((cov_rgjnay8wp().b[37][0]++,node.Name===path[index])&&(cov_rgjnay8wp().b[37][1]++,path.length-2===index)){cov_rgjnay8wp().b[36][0]++;cov_rgjnay8wp().s[145]++;return node;}else{cov_rgjnay8wp().b[36][1]++;cov_rgjnay8wp().s[146]++;if(node.Name===path[index]){cov_rgjnay8wp().b[38][0]++;cov_rgjnay8wp().s[147]++;// Expand Node
|
|
140
|
-
node.IsExpanded=true;cov_rgjnay8wp().s[148]++;for(const item of node.ChildNodes){const result=(cov_rgjnay8wp().s[149]++,this.findSelectedNodeByPathArray(item,path,index+1));cov_rgjnay8wp().s[150]++;if(result!==null){cov_rgjnay8wp().b[39][0]++;cov_rgjnay8wp().s[151]++;return result;}else{cov_rgjnay8wp().b[39][1]++;}}}else{cov_rgjnay8wp().b[38][1]++;}}cov_rgjnay8wp().s[152]++;return null;}/**
|
|
141
|
-
* Rekursive Methode welche beim Node und all seinen Childs den Edit Mode beendet.
|
|
142
|
-
* @param node Node bei welchem der Edit Mode beendet werden soll
|
|
143
|
-
*/resetNodeEditMode(node){cov_rgjnay8wp().f[48]++;cov_rgjnay8wp().s[153]++;if(node===null){cov_rgjnay8wp().b[40][0]++;cov_rgjnay8wp().s[154]++;this.resetNodeEditMode(this.rootNode);}else{cov_rgjnay8wp().b[40][1]++;cov_rgjnay8wp().s[155]++;node.IsEditMode=false;cov_rgjnay8wp().s[156]++;if(node.ChildNodes){cov_rgjnay8wp().b[41][0]++;cov_rgjnay8wp().s[157]++;node.ChildNodes.forEach(itm=>{cov_rgjnay8wp().f[49]++;cov_rgjnay8wp().s[158]++;return this.resetNodeEditMode(itm);});}else{cov_rgjnay8wp().b[41][1]++;}}}/**
|
|
144
|
-
* Setzt den Pfad in allen Nodes
|
|
145
|
-
*/setPathToAllNodes(){cov_rgjnay8wp().f[50]++;cov_rgjnay8wp().s[159]++;this.rootNode.ChildNodes.forEach(itm=>{cov_rgjnay8wp().f[51]++;cov_rgjnay8wp().s[160]++;this.fillPath(itm,'');});}}cov_rgjnay8wp().s[161]++;SacFileBrowserCommon.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"13.2.7",ngImport:i0,type:SacFileBrowserCommon,deps:[{token:i1.HttpClient},{token:i0.Injector}],target:i0.ɵɵFactoryTarget.Directive});cov_rgjnay8wp().s[162]++;SacFileBrowserCommon.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"12.0.0",version:"13.2.7",type:SacFileBrowserCommon,inputs:{allowedtypes:"allowedtypes",allowfiledelete:"allowfiledelete",allowfilerename:"allowfilerename",allowfileupload:"allowfileupload",allowfoldercreate:"allowfoldercreate",allowfolderdelete:"allowfolderdelete",allowfolderrename:"allowfolderrename",apiurl:"apiurl",selectedfile:"selectedfile"},outputs:{file:"file"},host:{listeners:{"document:click":"exitEditMode($event.target)"}},ngImport:i0});cov_rgjnay8wp().s[163]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"13.2.7",ngImport:i0,type:SacFileBrowserCommon,decorators:[{type:Directive}],ctorParameters:function(){cov_rgjnay8wp().f[52]++;cov_rgjnay8wp().s[164]++;return[{type:i1.HttpClient},{type:i0.Injector}];},propDecorators:{allowedtypes:[{type:Input}],allowfiledelete:[{type:Input}],allowfilerename:[{type:Input}],allowfileupload:[{type:Input}],allowfoldercreate:[{type:Input}],allowfolderdelete:[{type:Input}],allowfolderrename:[{type:Input}],apiurl:[{type:Input}],file:[{type:Output}],selectedfile:[{type:Input}],exitEditMode:[{type:HostListener,args:['document:click',['$event.target']]}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9icm93c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFFWixLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBTXZCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsOEJBQThCLEdBQy9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qiw0QkFBNEIsR0FDN0IsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7O0FBTXhGOztHQUVHO0FBRUgsTUFBTSxPQUFnQixvQkFBb0I7SUFvR3hDLHdCQUF3QjtJQUV4Qix1QkFBdUI7SUFFdkI7Ozs7T0FJRztJQUNILFlBQVksVUFBc0IsRUFBRSxRQUFrQjtRQWxHdEQ7O1dBRUc7UUFDSyxtQkFBYyxHQUFrQixJQUFJLENBQUM7UUFFN0M7OztXQUdHO1FBRUksaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDakM7O1dBRUc7UUFFSSxvQkFBZSxHQUFZLElBQUksQ0FBQztRQUN2Qzs7V0FFRztRQUVJLG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBQ3ZDOztXQUVHO1FBRUksb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDdkM7O1dBRUc7UUFFSSxzQkFBaUIsR0FBWSxJQUFJLENBQUM7UUFDekM7O1dBRUc7UUFFSSxzQkFBaUIsR0FBWSxJQUFJLENBQUM7UUFDekM7O1dBRUc7UUFFSSxzQkFBaUIsR0FBWSxJQUFJLENBQUM7UUFNekM7O1dBRUc7UUFFSSxTQUFJLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFN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QUcsRUFBRSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7aUhBMXFCbUIsb0JBQW9CO3FHQUFwQixvQkFBb0I7MkZBQXBCLG9CQUFvQjtrQkFEekMsU0FBUzt3SEFzQkQsWUFBWTtzQkFEbEIsS0FBSztnQkFNQyxlQUFlO3NCQURyQixLQUFLO2dCQU1DLGVBQWU7c0JBRHJCLEtBQUs7Z0JBTUMsZUFBZTtzQkFEckIsS0FBSztnQkFNQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU1DLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFNQyxNQUFNO3NCQURaLEtBQUs7Z0JBTUMsSUFBSTtzQkFEVixNQUFNO2dCQTZFSSxZQUFZO3NCQUR0QixLQUFLO2dCQXlGQyxZQUFZO3NCQUpsQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElTYWNGaWxlQnJvd3NlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNGaWxlQnJvd3NlclNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJU2FjSWNvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNJY29uU2VydmljZSc7XHJcbmltcG9ydCB7IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTG9jYWxpc2F0aW9uU2VydmljZSc7XHJcbmltcG9ydCB7IElTYWNWYWxpZGF0aW9uS2V5U2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBTQUNJQ09OX1NFUlZJQ0UsXHJcbiAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXHJcbiAgU0FDVkFMSURBVElPTktFWV9TRVJWSUNFLFxyXG4gIFNhY0RlZmF1bHRJY29uU2VydmljZSxcclxuICBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UsXHJcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQge1xyXG4gIFNBQ0ZJTEVCUk9XU0VSX1NFUlZJQ0UsXHJcbiAgU2FjRGVmYXVsdEZpbGVCcm93c2VyU2VydmljZSxcclxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtZmlsZWJyb3dzZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLWxvY2FsaXNhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUJyb3dzZXJGaWxlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3NlcmZpbGUnO1xyXG5pbXBvcnQgeyBJQnJvd3NlckZpbGVSZXNwb25zZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJmaWxlcmVzcG9uc2UnO1xyXG5pbXBvcnQgeyBJQnJvd3Nlck5vZGUgfSBmcm9tICcuL21vZGVscy9icm93c2Vybm9kZSc7XHJcbmltcG9ydCB7IElCcm93c2VyTm9kZVJlc3BvbnNlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3Nlcm5vZGVyZXNwb25zZSc7XHJcblxyXG4vKipcclxuICogQmFzZSBDb21wb25lbnQgZsO8ciBGaWxlIEJyb3dzZXJcclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2FjRmlsZUJyb3dzZXJDb21tb24gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvKipcclxuICAgKiBTZXJ2aWNlIGbDvHIgRmlsZSBCcm93c2VyIFp1Z3JpZmYgKEJhY2tlbmQpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBicm93c2VyU2VydmljZTogSVNhY0ZpbGVCcm93c2VyU2VydmljZTtcclxuICAvKipcclxuICAgKiBJY29uIHNlcnZpY2UgdG8gcmVjZWl2ZSBpY29uIGNsYXNzZXMgZm9yIHVpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBpY29uU2VydmljZTogSVNhY0ljb25TZXJ2aWNlO1xyXG4gIC8qKlxyXG4gICAqIEZpbGUgd2VsY2hlcyBiZWltIHN0YXJ0ZW4gZGVzIEJyb3dzZXJzIGJlcmVpdHMgc2VsZWt0aWVydCBpc3RcclxuICAgKi9cclxuICBwcml2YXRlIHByZXNlbGVjZWRmaWxlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogRXJsYXVidGUgRGF0ZWllcndlaXRlcnVuZ2VuIGbDvHIgRmlsZWF1c3dhaGwgdW5kIFVwbG9hZC4gRGF0ZWllcndlaXRlcnVuZyBtaXQgUHVua3QgdW5kXHJcbiAgICogZ2V0cmVubnQgZHVyY2ggS29tbWEgZsO8ciBtZWhyIGFscyBlaW5lIEVyd2VpdGVydW5nIChFeGFtcGxlOiBcIi5qcGcsLmdpZlwiKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZWR0eXBlczogc3RyaW5nID0gJyc7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXIgRGF0ZWlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGVkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgZGFzIHVtYmVuZW5uZW4gZWluZXIgRGF0ZWlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGVyZW5hbWU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgZGVuIFVwbG9hZCB2b24gRGF0ZWllblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZmlsZXVwbG9hZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgZXJzdGVsbGVuIGVpbmVzIG5ldWVuIE9yZG5lcnNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcmNyZWF0ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVyZGVsZXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGRhcyBVbWJlbmVubmVuIGVpbmVzIE9yZG5lcnNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcnJlbmFtZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogVVJMIGbDvHIgQmFja2VuZCBBUElcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcGl1cmw6IHN0cmluZztcclxuICAvKipcclxuICAgKiBPdXRwdXQgRW1pdHRlciB3ZW5uIEZpbGUgc2VsZWt0aWVydCB3aXJkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBmaWxlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAvKipcclxuICAgKiBTZXJ2aWNlIGbDvHIgRXJyb3IgTG9jYWxpc2F0aW9uXHJcbiAgICovXHJcbiAgcHVibGljIGxuZ1Jlc291cmNlU2VydmljZTogSVNhY0xvY2FsaXNhdGlvblNlcnZpY2U7XHJcbiAgLyoqXHJcbiAgICogUm9vdCBOb2RlIEl0ZW0gZsO8ciBUcmVlXHJcbiAgICovXHJcbiAgcHVibGljIHJvb3ROb2RlOiBJQnJvd3Nlck5vZGUgPSB7XHJcbiAgICBOYW1lOiAnJyxcclxuICAgIENoaWxkTm9kZXM6IFtdLFxyXG4gICAgRmlsZXM6IFtdLFxyXG4gICAgSXNFeHBhbmRlZDogdHJ1ZSxcclxuICAgIElzRWRpdE1vZGU6IGZhbHNlLFxyXG4gICAgSXNOZXdOb2RlOiBmYWxzZSxcclxuICAgIFBhdGg6ICcnLFxyXG4gIH07XHJcbiAgLyoqXHJcbiAgICogU2VsZWN0ZWQgRmlsZSBOYW1lXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdGVkRmlsZTogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIFNlbGVjdGVkIEZpbGUgSXRlbVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGVJdGVtOiBJQnJvd3NlckZpbGUgPSBudWxsO1xyXG4gIC8qKlxyXG4gICAqIFNlbGVjdGVkIE5vZGUgSXRlbVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RlZE5vZGU6IElCcm93c2VyTm9kZSA9IG51bGw7XHJcbiAgLyoqXHJcbiAgICogTGlzdGUgdm9uIFVwbG9hZHNcclxuICAgKi9cclxuICBwdWJsaWMgdXBsb2Fkczogc3RyaW5nW10gPSBbXTtcclxuICAvKipcclxuICAgKiBTZXJ2aWNlIHRvIHJlY2VpdmUgc3RhbmRhcmQgdmFsaWRhdGlvbiBtZXNzYWdlIGtleXMgYW5kIHRleHRzXHJcbiAgICovXHJcbiAgcHVibGljIHZhbGlkYXRpb25LZXlTZXJ2aWNlOiBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2U7XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBLb25zdHJ1a3RvclxyXG4gICAqIEBwYXJhbSBodHRwY2xpZW50IEFuZ3VsYXIgSFRUUCBDbGllbnRcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgU2VydmljZSBJbmplY3RvclxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGh0dHBjbGllbnQ6IEh0dHBDbGllbnQsIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgdGhpcy5icm93c2VyU2VydmljZSA9IGluamVjdG9yLmdldChcclxuICAgICAgU0FDRklMRUJST1dTRVJfU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UoaHR0cGNsaWVudClcclxuICAgICk7XHJcbiAgICB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxyXG4gICAgICBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsXHJcbiAgICAgIG5ldyBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UoKVxyXG4gICAgKTtcclxuICAgIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxyXG4gICAgICBTQUNMT0NBTElTQVRJT05fU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlKHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UpXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuaWNvblNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0lDT05fU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRJY29uU2VydmljZSgpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xyXG5cclxuICAvKipcclxuICAgKiBTZXR6dCBkZW4gU2VsZWNlZCBOb2RlIMO8YmVyIGRlbiBQZmFkXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHNlbGVjdGVkZmlsZSh2OiBzdHJpbmcgfCBudWxsKSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZG5vZGUgPSB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGgodGhpcy5yb290Tm9kZSwgdik7XHJcblxyXG4gICAgaWYgKHNlbGVjdGVkbm9kZSAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnNlbGVjdE5vZGUoc2VsZWN0ZWRub2RlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnByZXNlbGVjZWRmaWxlID0gdjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBkZWxldGUgaWNvblxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25EZWxldGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnREZWxldGVJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGVkaXQgaWNvblxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25FZGl0KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50RWRpdEljb247XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDU1MgaWNvbiBmb3IgZm9sZGVycyBpbiB0cmVlIHRoZXJlIGFyZSBjb2xsYWJzZWRcclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uRm9sZGVyQ29sbGFic2VkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyQ2xvc2VkSWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBmb2xkZXJzIHdpdGhvdXQgc3ViZm9sZGVyc1xyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJFbXB0eSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlckVtcHR5SWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGZvciBuZXcgZm9sZGVycyBhY3Rpb25cclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uRm9sZGVyTmV3KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyTmV3SWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGZvciBmb2xkZXJzIGluIHRyZWUgdGhlcmUgYXJlIGV4cGFuZGVkXHJcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlck9wZW4oKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJPcGVuSWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciByZWZyZXNoIGljb25cclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uUmVmcmVzaCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudFJlZnJlc2hJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0dGVyIGbDvHIgU2VsZWN0ZWQgRmlsZS4gSXN0IGFuIElucHV0IFByb3BlcnR5IGdlYnVuZGVuXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBzZWxlY3RlZGZpbGUoKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RGaWxlICYmIHRoaXMuc2VsZWN0RmlsZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkRmlsZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xyXG5cclxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8qKlxyXG4gICAqIEhvc3RMaXN0ZW5lciB3ZWxjaGVyIGRlbiBFZGl0IE1vZGUgYmVpIGFsbGVuIEZpbGVzIHVuZCBOb2RlcyBiZWVuZGV0LlxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXHJcbiAgLyoqXHJcbiAgICogQ2xpY2sgRXZlbnRcclxuICAgKi9cclxuICBwdWJsaWMgZXhpdEVkaXRNb2RlKHRhcmdldEVsZW1lbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkTm9kZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XHJcblxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgIXRoaXMuc2VsZWN0ZWROb2RlIHx8XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuTmFtZSA9PT0gbnVsbCB8fFxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLk5hbWUubGVuZ3RoID09PSAwXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuY2xlYXJOZXdDaGlsZE5vZGVzKHRoaXMucm9vdE5vZGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZShudWxsKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEzDtnNjaHQgZWluIEZpbGVcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGRlbGV0ZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpcm1EZWxldGVGaWxlKGZpbGUpLnN1YnNjcmliZSgoY29uZmlybSkgPT4ge1xyXG4gICAgICBpZiAoY29uZmlybSkge1xyXG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAgIC5EZWxldGVGaWxlKFxyXG4gICAgICAgICAgICB0aGlzLmFwaXVybCxcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWUsXHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dlZHR5cGVzXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTMO2c2NodCBlaW5lbiBOb2RlXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBkZWxldGVOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25maXJtRGVsZXRlTm9kZShub2RlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcclxuICAgICAgaWYgKGNvbmZpcm0pIHtcclxuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgICAuRGVsZXRlTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJlbnROb2RlID0gdGhpcy5maW5kUGFyZW50Tm9kZSh0aGlzLnJvb3ROb2RlLCBub2RlKTtcclxuICAgICAgICAgICAgcGFyZW50Tm9kZS5DaGlsZE5vZGVzID0gcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcztcclxuXHJcbiAgICAgICAgICAgIHRoaXMucm9vdE5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgJycpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0Tm9kZShwYXJlbnROb2RlKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGVpbiBGaWxlIGluIGRlbiBFZGl0IE1vZGVcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgaW4gZGVuIEVkaXQgTW9kZSBnZXNldHp0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGVkaXRGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IHZvaWQge1xyXG4gICAgZmlsZS5Jc0VkaXRNb2RlID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGVpbmVuIE5vZGUgaW4gZGVuIEVkaXQgTW9kZVxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBiZWFyYmVpdGV0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGVkaXROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgbm9kZS5Jc0VkaXRNb2RlID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVyemV1Z3QgZWluZW4gbmV1ZW4gTm9kZSBpbSBUcmVlXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB1bnRlciB3ZWxjaGVtIGVpbiBuZXVlciBOb2RlIGVyc3RlbGx0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIG5ld05vZGUobm9kZTogSUJyb3dzZXJOb2RlKSB7XHJcbiAgICBjb25zdCBpdGVtOiBJQnJvd3Nlck5vZGUgPSB7XHJcbiAgICAgIENoaWxkTm9kZXM6IFtdLFxyXG4gICAgICBGaWxlczogW10sXHJcbiAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxyXG4gICAgICBJc0V4cGFuZGVkOiBmYWxzZSxcclxuICAgICAgTmFtZTogJycsXHJcbiAgICAgIFBhdGg6IG5vZGUuUGF0aCxcclxuICAgICAgSXNOZXdOb2RlOiB0cnVlLFxyXG4gICAgfTtcclxuXHJcbiAgICBub2RlLkNoaWxkTm9kZXMucHVzaChpdGVtKTtcclxuICAgIHRoaXMuc2VsZWN0Tm9kZShpdGVtKTtcclxuICAgIHRoaXMuZWRpdE5vZGUoaXRlbSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0IEV2ZW50IGRlciBLb21wb25lbnRlXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAuR2V0Tm9kZSh0aGlzLmFwaXVybCwgJycsIHRoaXMuYWxsb3dlZHR5cGVzKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5yb290Tm9kZSA9IHtcclxuICAgICAgICAgIE5hbWU6IHJlc3VsdC5Ob2RlLk5hbWUsXHJcbiAgICAgICAgICBGaWxlczogcmVzdWx0Lk5vZGUuRmlsZXMsXHJcbiAgICAgICAgICBDaGlsZE5vZGVzOiByZXN1bHQuTm9kZS5DaGlsZE5vZGVzLFxyXG4gICAgICAgICAgSXNFeHBhbmRlZDogdHJ1ZSxcclxuICAgICAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxyXG4gICAgICAgICAgSXNOZXdOb2RlOiBmYWxzZSxcclxuICAgICAgICAgIFBhdGg6ICcvJyxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSB0aGlzLnJvb3ROb2RlO1xyXG5cclxuICAgICAgICAvLyBTZWxlY3RlZCBGaWxlIGVybmV1dCBzZXR6ZW4sIHdlbm4gUHJvcGVydHkgZ2VzZXR6dCB3dXJkZSBiZXZvciBEYXRlbiB2b20gU2VydmljZSBnZWxhZGVuIHd1cmRlbi5cclxuICAgICAgICBpZiAodGhpcy5wcmVzZWxlY2VkZmlsZSAhPT0gbnVsbCAmJiB0aGlzLnByZXNlbGVjZWRmaWxlLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRmaWxlID0gdGhpcy5wcmVzZWxlY2VkZmlsZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWt0dWFsaXNpZXJ0IGRlbiBOb2RlXHJcbiAgICovXHJcbiAgcHVibGljIHJlZnJlc2hOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgaWYgKCFub2RlLklzRXhwYW5kZWQpIHtcclxuICAgICAgdGhpcy5zd2l0Y2hFeHBhbmROb2RlKG5vZGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgLkdldE5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBub2RlLkNoaWxkTm9kZXMgPSByZXN1bHQuTm9kZS5DaGlsZE5vZGVzO1xyXG4gICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcclxuXHJcbiAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW5lIERhdGVpIHVtYmVuYW5udCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyB1bWJlbmFubnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcGFyYW0gbmV3RmlsZW5hbWUgTmV1ZXIgRGF0ZWluYW1lXHJcbiAgICovXHJcbiAgcHVibGljIHJlbmFtZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlLCBuZXdGaWxlbmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBmaWxlLklzRWRpdE1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIW5ld0ZpbGVuYW1lIHx8IG5ld0ZpbGVuYW1lID09PSBudWxsIHx8IG5ld0ZpbGVuYW1lLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAvLyBDYW5jZWwsIEludmFsaWQgRmlsZW5hbWVcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChmaWxlLkZpbGVuYW1lICE9PSBuZXdGaWxlbmFtZSkge1xyXG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgLlJlbmFtZUZpbGUoXHJcbiAgICAgICAgICB0aGlzLmFwaXVybCxcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLlBhdGggKyAnLycgKyBmaWxlLkZpbGVuYW1lLFxyXG4gICAgICAgICAgbmV3RmlsZW5hbWUsXHJcbiAgICAgICAgICB0aGlzLmFsbG93ZWR0eXBlc1xyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gTm9kZSB1bWJlbmFubnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgdW1iZW5hbm50IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIG5ld0ZvbGRlcm5hbWUgTmV1ZXIgT3JkbmVybmFtZVxyXG4gICAqL1xyXG4gIHB1YmxpYyByZW5hbWVOb2RlKG5vZGU6IElCcm93c2VyTm9kZSwgbmV3Rm9sZGVybmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBub2RlLklzRWRpdE1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIW5vZGUuSXNOZXdOb2RlKSB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICAhbmV3Rm9sZGVybmFtZSB8fFxyXG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcclxuICAgICAgICBuZXdGb2xkZXJuYW1lLmxlbmd0aCA9PT0gMFxyXG4gICAgICApIHtcclxuICAgICAgICAvLyBDYW5jZWwgUmVuYW1lLiBJbnZhbGlkIEZvbGRlcm5hbWVcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChub2RlLk5hbWUgIT09IG5ld0ZvbGRlcm5hbWUpIHtcclxuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgICAuUmVuYW1lTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBuZXdGb2xkZXJuYW1lKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICBub2RlLk5hbWUgPSByZXN1bHQuTm9kZS5OYW1lO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICAhbmV3Rm9sZGVybmFtZSB8fFxyXG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcclxuICAgICAgICBuZXdGb2xkZXJuYW1lLmxlbmd0aCA9PT0gMFxyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG5vZGUuTmFtZSA9IG5ld0ZvbGRlcm5hbWU7XHJcbiAgICAgIG5vZGUuSXNOZXdOb2RlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAuU2F2ZU5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgbmV3Rm9sZGVybmFtZSlcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBub2RlLk5hbWUgPSByZXN1bHQuTm9kZS5OYW1lO1xyXG4gICAgICAgICAgbm9kZS5GaWxlcyA9IHJlc3VsdC5Ob2RlLkZpbGVzO1xyXG5cclxuICAgICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gRmlsZSBzZWxla3RpZXJ0IHdpcmRcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgc2VsZWt0aWVydCB3aXJkXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdEZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKSB7XHJcbiAgICBpZiAoIWZpbGUuSXNFZGl0TW9kZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkTm9kZS5QYXRoLmVuZHNXaXRoKCcvJykpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEZpbGUgPSB0aGlzLnNlbGVjdGVkTm9kZS5QYXRoICsgJy8nICsgZmlsZS5GaWxlbmFtZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlID0gJy8nICsgZmlsZS5GaWxlbmFtZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkRmlsZUl0ZW0gPSBmaWxlO1xyXG4gICAgdGhpcy5maWxlLmVtaXQodGhpcy5zZWxlY3RlZEZpbGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0aG9kZSB3ZW5uIGVpbiBOb2RlIHNlbGVrdGllcnQgd2lyZFxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBzZWxla3RpZXJ0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdE5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XHJcbiAgICBpZiAoIW5vZGUuSXNFeHBhbmRlZCkge1xyXG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZE5vZGUobm9kZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzZXQgdGhlIEVkaXQgTW9kZSBpbiBhbGwgTm9kZXNcclxuICAgIHRoaXMucmVzZXROb2RlRWRpdE1vZGUobnVsbCk7XHJcblxyXG4gICAgaWYgKCFub2RlLkZpbGVzKSB7XHJcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAuR2V0RmlsZXModGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgbm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlID0gbm9kZTtcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5wcmVzZWxlY2VkZmlsZSAhPT0gbnVsbCAmJiB0aGlzLnByZXNlbGVjZWRmaWxlLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29uc3QgZmlsZW5hbWUgPSB0aGlzLnByZXNlbGVjZWRmaWxlLnN1YnN0cmluZyhcclxuICAgICAgICAgICAgICB0aGlzLnByZXNlbGVjZWRmaWxlLmxhc3RJbmRleE9mKCcvJykgKyAxXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBub2RlLkZpbGVzLmZpbmQoKGl0bSkgPT4gaXRtLkZpbGVuYW1lID09PSBmaWxlbmFtZSk7XHJcbiAgICAgICAgICAgIGlmIChmaWxlKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3RGaWxlKGZpbGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFeHBhbmQvQ29sbGFic2UgTWV0aG9kZSBmw7xyIE5vZGVzXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlw7ZmZm5ldCBvZGVyIGdlc2NobG9zc2VuIHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIHN3aXRjaEV4cGFuZE5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XHJcbiAgICBpZiAobm9kZS5Jc0V4cGFuZGVkKSB7XHJcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbm9kZS5Jc0V4cGFuZGVkID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2VyZGVuIG11c3MsIHdlbm4gZWluIFVwbG9hZCBiZWVuZGV0IGlzdC5cclxuICAgKiBAcGFyYW0gcGFyYW0gUGFyYW1ldGVyIGRlcyBob2NoZ2VsYWRlbmVuIEZpbGVzXHJcbiAgICovXHJcbiAgcHVibGljIHVwbG9hZENvbXBsZXRlKG5vZGU6IElCcm93c2VyTm9kZSwgdXBsb2FkSWRMaXN0OiBzdHJpbmdbXSk6IHZvaWQge1xyXG4gICAgaWYgKHVwbG9hZElkTGlzdCAhPT0gbnVsbCkge1xyXG4gICAgICB1cGxvYWRJZExpc3QuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLnVwbG9hZHMuaW5kZXhPZihlbGVtZW50KSA8IDApIHtcclxuICAgICAgICAgIHRoaXMudXBsb2Fkcy5wdXNoKGVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaWQgPSB0aGlzLnVwbG9hZHMucG9wKCk7XHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAgIC5TYXZlRmlsZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBpZCwgdGhpcy5hbGxvd2VkdHlwZXMpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XHJcbiAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZU1vdmVkKGlkKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5lXHJcbiAgICogRGF0ZWkgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsLlxyXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgZsO8ciB3ZWxjaGVzIGVpbiBEZWxldGUgQ29uZmlybSBlaW5nZWZvcmRlcnQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlybURlbGV0ZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAvKipcclxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5cclxuICAgKiBPcmRuZXIgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsLlxyXG4gICAqIEBwYXJhbSBmb2xkZXIgT3JkZXJuIGbDvHIgd2VsY2hlbiBlaW4gRGVsZXRlIENvbmZpcm0gZWluZ2Vmb3JkZXJ0IHdlcmRlbiBzb2xsLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBhYnN0cmFjdCBjb25maXJtRGVsZXRlTm9kZShmb2xkZXI6IElCcm93c2VyTm9kZSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgLyoqXHJcbiAgICogQWJzdHJha3RlIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2lyZCwgd2VubiBkYXMgSG9jaGdlbGFkZW5lIEZpbGUgYXVzIGRlbSBUZW1wIEZvbGRlciBpbiBkaWVcclxuICAgKiBTdHJ1a3R1ciB2ZXJzY2hvYmVuIHd1cmRlLlxyXG4gICAqIEBwYXJhbSB1cGxvYWRpZCBJRCBkZXMgVXBsb2Fkc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBhYnN0cmFjdCB1cGxvYWRlZEZpbGVNb3ZlZCh1cGxvYWRpZDogc3RyaW5nKTogdm9pZDtcclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xyXG5cclxuICAvLyAjcmVnaW9uIFByaXZhdGUgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBSZWt1cnNpdmUgTWV0aG9kZSB3ZWxjaGUgYmVpbSBOb2RlIHVuZCBhbGwgc2VpbmVuIENoaWxkcyBuZXVlIE5vZGVzIGVudGZlcm50XHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBhbGxlIG5ldWVuIE5vZGVzIGVudGZlcm50IHdlcmRlbiBzb2xsLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgY2xlYXJOZXdDaGlsZE5vZGVzKG5vZGU6IElCcm93c2VyTm9kZSkge1xyXG4gICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xyXG4gICAgICBpZiAoaXRtLklzTmV3Tm9kZSkge1xyXG4gICAgICAgIG5vZGUuQ2hpbGROb2Rlcy5zcGxpY2Uobm9kZS5DaGlsZE5vZGVzLmluZGV4T2YoaXRtKSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMuY2xlYXJOZXdDaGlsZE5vZGVzKGl0bSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0aG9kZSB3ZWxjaGUgZGVuIFBmYWQgZsO8ciBlaW5lbiBOb2RlIGVyemV1Z3RcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGbDvHIgd2VsY2hlbiBkZXIgUGZhZCBlcnpldWd0IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIHBhcmVudFBhdGggw5xiZXJnZW9yZG5ldGVyIFBmYWRcclxuICAgKi9cclxuICBwcml2YXRlIGZpbGxQYXRoKG5vZGU6IElCcm93c2VyTm9kZSwgcGFyZW50UGF0aDogc3RyaW5nKSB7XHJcbiAgICBub2RlLlBhdGggPSBwYXJlbnRQYXRoICsgJy8nICsgbm9kZS5OYW1lO1xyXG4gICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xyXG4gICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgbm9kZS5QYXRoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3VjaHQgZGVuIMO8YmVyZ2VvcmRuZXRlbiBOb2RlIGltIFRyZWVcclxuICAgKiBAcGFyYW0gbm9kZSBBa3R1ZWxsZXIgTm9kZVxyXG4gICAqIEBwYXJhbSBub2RlVG9GaW5kIE5vZGUgd2VsY2hlciBnZWZ1bmRlbiB3ZXJkZW4gc29sbFxyXG4gICAqIEByZXR1cm5zIE5vZGUgd2VubiBlciBnZWZ1bmRlbiB3dXJkZSwgYW5zb25zdGVuIHdpcmQgTlVMTCB6dXLDvGNrZ2VnZWJlblxyXG4gICAqL1xyXG4gIHByaXZhdGUgZmluZFBhcmVudE5vZGUoXHJcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXHJcbiAgICBub2RlVG9GaW5kOiBJQnJvd3Nlck5vZGVcclxuICApOiBJQnJvd3Nlck5vZGUge1xyXG4gICAgaWYgKG5vZGUuQ2hpbGROb2Rlcy5pbmRleE9mKG5vZGVUb0ZpbmQpID49IDApIHtcclxuICAgICAgcmV0dXJuIG5vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBub2RlLkNoaWxkTm9kZXMpIHtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5maW5kUGFyZW50Tm9kZShjaGlsZCwgbm9kZVRvRmluZCk7XHJcbiAgICAgIGlmIChyZXN1bHQgIT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdWNodCBlaW5lbiBOb2RlIGdlbS4gZWluZW0gVVJMIFBmYWRcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGluIHdlbGNoZW0gZ2VzdWNodCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBwYXRoIFBmYWQgbmFjaCB3ZWxjaGVtIGdlc3VjaHQgd2lyZFxyXG4gICAqIEByZXR1cm5zIE5vZGUgd2VsY2hlciB6dW0gZ2VzdWNodGVuIFBmYWQgcGFzc3QuIFdlbm4ga2VpbiBOb2RlIGdlZnVuZGVuIHdpcmQsIHdpcmQgTlVMTCB6dXLDvGNrZ2VnZWJlblxyXG4gICAqL1xyXG4gIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZUJ5UGF0aChcclxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcclxuICAgIHBhdGg6IHN0cmluZ1xyXG4gICk6IElCcm93c2VyTm9kZSB7XHJcbiAgICAvLyBDYW5jZWwgd2VubiBQZmFkIG5pY2h0IGRlZmluaWVydFxyXG4gICAgaWYgKHBhdGggPT09IHVuZGVmaW5lZCB8fCBwYXRoID09PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFBmYWQgaW4gQXJyYXkgc3BsaXR0ZW4gdW5kIFJvb3QgRm9sZGVybmFtZSBzZXR6ZW5cclxuICAgIGNvbnN0IHBhdGhBcnJheSA9IHBhdGguc3BsaXQoJy8nKTtcclxuICAgIHBhdGhBcnJheVswXSA9IHRoaXMucm9vdE5vZGUuTmFtZTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5maW5kU2VsZWN0ZWROb2RlQnlQYXRoQXJyYXkobm9kZSwgcGF0aEFycmF5LCAwKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1Y2h0IGVpbmVuIE5vZGUgZ2VtLiBlaW5lbSBBcnJheSB2b24gTm9kZSBOYW1lblxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgaW4gd2VsY2hlbSBnZXN1Y2h0IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIHBhdGggQXJyYXkgdm9uIE5vZGUgTmFtZW4sIHdlbGNoZSBkaWUgSGlyYXJjaHkgZGVzIFBmYWRlcyBhYmJpbGRlblxyXG4gICAqIEBwYXJhbSBpbmRleCBBa3R1ZWxsZXIgSW5kZXggaW0gUEFUSCBBcnJheVxyXG4gICAqIEByZXR1cm5zIE5vZGUgd2VubiBlaW5lciBnZWZ1bmRlbiB3dXJkZSwgYW5zb25zdGVuIE5VTExcclxuICAgKi9cclxuICBwcml2YXRlIGZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShcclxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcclxuICAgIHBhdGg6IHN0cmluZ1tdLFxyXG4gICAgaW5kZXg6IG51bWJlclxyXG4gICk6IElCcm93c2VyTm9kZSB7XHJcbiAgICAvLyBDaGVjayBvYiBPcmRuZXIga29ycmVrdC4gTGV0emVyIE9yZG5lciB6dXLDvGNrZ2ViZW4uIFBhdGggTGFzdCBJbmRleCBpc3QgZGVyIEZpbGVuYW1lXHJcbiAgICBpZiAobm9kZS5OYW1lID09PSBwYXRoW2luZGV4XSAmJiBwYXRoLmxlbmd0aCAtIDIgPT09IGluZGV4KSB7XHJcbiAgICAgIHJldHVybiBub2RlO1xyXG4gICAgfSBlbHNlIGlmIChub2RlLk5hbWUgPT09IHBhdGhbaW5kZXhdKSB7XHJcbiAgICAgIC8vIEV4cGFuZCBOb2RlXHJcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IHRydWU7XHJcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBub2RlLkNoaWxkTm9kZXMpIHtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShpdGVtLCBwYXRoLCBpbmRleCArIDEpO1xyXG5cclxuICAgICAgICBpZiAocmVzdWx0ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZWt1cnNpdmUgTWV0aG9kZSB3ZWxjaGUgYmVpbSBOb2RlIHVuZCBhbGwgc2VpbmVuIENoaWxkcyBkZW4gRWRpdCBNb2RlIGJlZW5kZXQuXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBkZXIgRWRpdCBNb2RlIGJlZW5kZXQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwcml2YXRlIHJlc2V0Tm9kZUVkaXRNb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgaWYgKG5vZGUgPT09IG51bGwpIHtcclxuICAgICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZSh0aGlzLnJvb3ROb2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5vZGUuSXNFZGl0TW9kZSA9IGZhbHNlO1xyXG5cclxuICAgICAgaWYgKG5vZGUuQ2hpbGROb2Rlcykge1xyXG4gICAgICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMucmVzZXROb2RlRWRpdE1vZGUoaXRtKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGRlbiBQZmFkIGluIGFsbGVuIE5vZGVzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZXRQYXRoVG9BbGxOb2RlcygpIHtcclxuICAgIHRoaXMucm9vdE5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcclxuICAgICAgdGhpcy5maWxsUGF0aChpdG0sICcnKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcml2YXRlIE1ldGhvZHNcclxufVxyXG4iXX0=
|
|
146
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEaXJlY3RpdmUiLCJFdmVudEVtaXR0ZXIiLCJIb3N0TGlzdGVuZXIiLCJJbnB1dCIsIk91dHB1dCIsIlNBQ0lDT05fU0VSVklDRSIsIlNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFIiwiU0FDVkFMSURBVElPTktFWV9TRVJWSUNFIiwiU2FjRGVmYXVsdEljb25TZXJ2aWNlIiwiU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlIiwiU0FDRklMRUJST1dTRVJfU0VSVklDRSIsIlNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UiLCJTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSIsIlNhY0ZpbGVCcm93c2VyQ29tbW9uIiwiY29uc3RydWN0b3IiLCJodHRwY2xpZW50IiwiaW5qZWN0b3IiLCJjb3ZfcmdqbmF5OHdwIiwiZiIsInMiLCJwcmVzZWxlY2VkZmlsZSIsImFsbG93ZWR0eXBlcyIsImFsbG93ZmlsZWRlbGV0ZSIsImFsbG93ZmlsZXJlbmFtZSIsImFsbG93ZmlsZXVwbG9hZCIsImFsbG93Zm9sZGVyY3JlYXRlIiwiYWxsb3dmb2xkZXJkZWxldGUiLCJhbGxvd2ZvbGRlcnJlbmFtZSIsImZpbGUiLCJyb290Tm9kZSIsIk5hbWUiLCJDaGlsZE5vZGVzIiwiRmlsZXMiLCJJc0V4cGFuZGVkIiwiSXNFZGl0TW9kZSIsIklzTmV3Tm9kZSIsIlBhdGgiLCJzZWxlY3RlZEZpbGVJdGVtIiwic2VsZWN0ZWROb2RlIiwidXBsb2FkcyIsImJyb3dzZXJTZXJ2aWNlIiwiZ2V0IiwidmFsaWRhdGlvbktleVNlcnZpY2UiLCJsbmdSZXNvdXJjZVNlcnZpY2UiLCJpY29uU2VydmljZSIsInNlbGVjdGVkZmlsZSIsInYiLCJzZWxlY3RlZG5vZGUiLCJmaW5kU2VsZWN0ZWROb2RlQnlQYXRoIiwiYiIsInNlbGVjdE5vZGUiLCJpY29uRGVsZXRlIiwiQnJvd3NlckNvbXBvbmVudERlbGV0ZUljb24iLCJpY29uRWRpdCIsIkJyb3dzZXJDb21wb25lbnRFZGl0SWNvbiIsImljb25Gb2xkZXJDb2xsYWJzZWQiLCJCcm93c2VyQ29tcG9uZW50Rm9sZGVyQ2xvc2VkSWNvbiIsImljb25Gb2xkZXJFbXB0eSIsIkJyb3dzZXJDb21wb25lbnRGb2xkZXJFbXB0eUljb24iLCJpY29uRm9sZGVyTmV3IiwiQnJvd3NlckNvbXBvbmVudEZvbGRlck5ld0ljb24iLCJpY29uRm9sZGVyT3BlbiIsIkJyb3dzZXJDb21wb25lbnRGb2xkZXJPcGVuSWNvbiIsImljb25SZWZyZXNoIiwiQnJvd3NlckNvbXBvbmVudFJlZnJlc2hJY29uIiwic2VsZWN0RmlsZSIsImxlbmd0aCIsInNlbGVjdGVkRmlsZSIsImV4aXRFZGl0TW9kZSIsInRhcmdldEVsZW1lbnQiLCJmb3JFYWNoIiwiaXRtIiwiY2xlYXJOZXdDaGlsZE5vZGVzIiwicmVzZXROb2RlRWRpdE1vZGUiLCJkZWxldGVGaWxlIiwiY29uZmlybURlbGV0ZUZpbGUiLCJzdWJzY3JpYmUiLCJjb25maXJtIiwiRGVsZXRlRmlsZSIsImFwaXVybCIsIkZpbGVuYW1lIiwicmVzdWx0IiwiZGVsZXRlTm9kZSIsIm5vZGUiLCJjb25maXJtRGVsZXRlTm9kZSIsIkRlbGV0ZU5vZGUiLCJwYXJlbnROb2RlIiwiZmluZFBhcmVudE5vZGUiLCJOb2RlIiwiZmlsbFBhdGgiLCJlZGl0RmlsZSIsImVkaXROb2RlIiwibmV3Tm9kZSIsIml0ZW0iLCJwdXNoIiwibmdPbkluaXQiLCJHZXROb2RlIiwic2V0UGF0aFRvQWxsTm9kZXMiLCJyZWZyZXNoTm9kZSIsInN3aXRjaEV4cGFuZE5vZGUiLCJyZW5hbWVGaWxlIiwibmV3RmlsZW5hbWUiLCJSZW5hbWVGaWxlIiwicmVuYW1lTm9kZSIsIm5ld0ZvbGRlcm5hbWUiLCJSZW5hbWVOb2RlIiwiU2F2ZU5vZGUiLCJlbmRzV2l0aCIsImVtaXQiLCJHZXRGaWxlcyIsImZpbGVuYW1lIiwic3Vic3RyaW5nIiwibGFzdEluZGV4T2YiLCJmaW5kIiwidXBsb2FkQ29tcGxldGUiLCJ1cGxvYWRJZExpc3QiLCJlbGVtZW50IiwiaW5kZXhPZiIsImlkIiwicG9wIiwiU2F2ZUZpbGUiLCJ1cGxvYWRlZEZpbGVNb3ZlZCIsInNwbGljZSIsInBhcmVudFBhdGgiLCJub2RlVG9GaW5kIiwiY2hpbGQiLCJwYXRoIiwidW5kZWZpbmVkIiwicGF0aEFycmF5Iiwic3BsaXQiLCJmaW5kU2VsZWN0ZWROb2RlQnlQYXRoQXJyYXkiLCJpbmRleCIsImRlcHMiLCJ0b2tlbiIsImkxIiwiSHR0cENsaWVudCIsImkwIiwiSW5qZWN0b3IiLCJ0YXJnZXQiLCLJtcm1RmFjdG9yeVRhcmdldCIsImlucHV0cyIsIm91dHB1dHMiLCJob3N0IiwibGlzdGVuZXJzIiwibmdJbXBvcnQiLCJkZWNvcmF0b3JzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL2Jyb3dzZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElTYWNGaWxlQnJvd3NlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNGaWxlQnJvd3NlclNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJU2FjSWNvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNJY29uU2VydmljZSc7XHJcbmltcG9ydCB7IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTG9jYWxpc2F0aW9uU2VydmljZSc7XHJcbmltcG9ydCB7IElTYWNWYWxpZGF0aW9uS2V5U2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBTQUNJQ09OX1NFUlZJQ0UsXHJcbiAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXHJcbiAgU0FDVkFMSURBVElPTktFWV9TRVJWSUNFLFxyXG4gIFNhY0RlZmF1bHRJY29uU2VydmljZSxcclxuICBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UsXHJcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQge1xyXG4gIFNBQ0ZJTEVCUk9XU0VSX1NFUlZJQ0UsXHJcbiAgU2FjRGVmYXVsdEZpbGVCcm93c2VyU2VydmljZSxcclxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtZmlsZWJyb3dzZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLWxvY2FsaXNhdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSUJyb3dzZXJGaWxlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3NlcmZpbGUnO1xyXG5pbXBvcnQgeyBJQnJvd3NlckZpbGVSZXNwb25zZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJmaWxlcmVzcG9uc2UnO1xyXG5pbXBvcnQgeyBJQnJvd3Nlck5vZGUgfSBmcm9tICcuL21vZGVscy9icm93c2Vybm9kZSc7XHJcbmltcG9ydCB7IElCcm93c2VyTm9kZVJlc3BvbnNlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3Nlcm5vZGVyZXNwb25zZSc7XHJcblxyXG4vKipcclxuICogQmFzZSBDb21wb25lbnQgZsO8ciBGaWxlIEJyb3dzZXJcclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2FjRmlsZUJyb3dzZXJDb21tb24gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvKipcclxuICAgKiBTZXJ2aWNlIGbDvHIgRmlsZSBCcm93c2VyIFp1Z3JpZmYgKEJhY2tlbmQpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBicm93c2VyU2VydmljZTogSVNhY0ZpbGVCcm93c2VyU2VydmljZTtcclxuICAvKipcclxuICAgKiBJY29uIHNlcnZpY2UgdG8gcmVjZWl2ZSBpY29uIGNsYXNzZXMgZm9yIHVpXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBpY29uU2VydmljZTogSVNhY0ljb25TZXJ2aWNlO1xyXG4gIC8qKlxyXG4gICAqIEZpbGUgd2VsY2hlcyBiZWltIHN0YXJ0ZW4gZGVzIEJyb3dzZXJzIGJlcmVpdHMgc2VsZWt0aWVydCBpc3RcclxuICAgKi9cclxuICBwcml2YXRlIHByZXNlbGVjZWRmaWxlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgLyoqXHJcbiAgICogRXJsYXVidGUgRGF0ZWllcndlaXRlcnVuZ2VuIGbDvHIgRmlsZWF1c3dhaGwgdW5kIFVwbG9hZC4gRGF0ZWllcndlaXRlcnVuZyBtaXQgUHVua3QgdW5kXHJcbiAgICogZ2V0cmVubnQgZHVyY2ggS29tbWEgZsO8ciBtZWhyIGFscyBlaW5lIEVyd2VpdGVydW5nIChFeGFtcGxlOiBcIi5qcGcsLmdpZlwiKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZWR0eXBlczogc3RyaW5nID0gJyc7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXIgRGF0ZWlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGVkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgZGFzIHVtYmVuZW5uZW4gZWluZXIgRGF0ZWlcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZpbGVyZW5hbWU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgZGVuIFVwbG9hZCB2b24gRGF0ZWllblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZmlsZXVwbG9hZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgZXJzdGVsbGVuIGVpbmVzIG5ldWVuIE9yZG5lcnNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcmNyZWF0ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVyZGVsZXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGRhcyBVbWJlbmVubmVuIGVpbmVzIE9yZG5lcnNcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcnJlbmFtZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogVVJMIGbDvHIgQmFja2VuZCBBUElcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhcGl1cmw6IHN0cmluZztcclxuICAvKipcclxuICAgKiBPdXRwdXQgRW1pdHRlciB3ZW5uIEZpbGUgc2VsZWt0aWVydCB3aXJkLlxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBmaWxlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAvKipcclxuICAgKiBTZXJ2aWNlIGbDvHIgRXJyb3IgTG9jYWxpc2F0aW9uXHJcbiAgICovXHJcbiAgcHVibGljIGxuZ1Jlc291cmNlU2VydmljZTogSVNhY0xvY2FsaXNhdGlvblNlcnZpY2U7XHJcbiAgLyoqXHJcbiAgICogUm9vdCBOb2RlIEl0ZW0gZsO8ciBUcmVlXHJcbiAgICovXHJcbiAgcHVibGljIHJvb3ROb2RlOiBJQnJvd3Nlck5vZGUgPSB7XHJcbiAgICBOYW1lOiAnJyxcclxuICAgIENoaWxkTm9kZXM6IFtdLFxyXG4gICAgRmlsZXM6IFtdLFxyXG4gICAgSXNFeHBhbmRlZDogdHJ1ZSxcclxuICAgIElzRWRpdE1vZGU6IGZhbHNlLFxyXG4gICAgSXNOZXdOb2RlOiBmYWxzZSxcclxuICAgIFBhdGg6ICcnLFxyXG4gIH07XHJcbiAgLyoqXHJcbiAgICogU2VsZWN0ZWQgRmlsZSBOYW1lXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdGVkRmlsZTogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIFNlbGVjdGVkIEZpbGUgSXRlbVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGVJdGVtOiBJQnJvd3NlckZpbGUgPSBudWxsO1xyXG4gIC8qKlxyXG4gICAqIFNlbGVjdGVkIE5vZGUgSXRlbVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RlZE5vZGU6IElCcm93c2VyTm9kZSA9IG51bGw7XHJcbiAgLyoqXHJcbiAgICogTGlzdGUgdm9uIFVwbG9hZHNcclxuICAgKi9cclxuICBwdWJsaWMgdXBsb2Fkczogc3RyaW5nW10gPSBbXTtcclxuICAvKipcclxuICAgKiBTZXJ2aWNlIHRvIHJlY2VpdmUgc3RhbmRhcmQgdmFsaWRhdGlvbiBtZXNzYWdlIGtleXMgYW5kIHRleHRzXHJcbiAgICovXHJcbiAgcHVibGljIHZhbGlkYXRpb25LZXlTZXJ2aWNlOiBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2U7XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBLb25zdHJ1a3RvclxyXG4gICAqIEBwYXJhbSBodHRwY2xpZW50IEFuZ3VsYXIgSFRUUCBDbGllbnRcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgU2VydmljZSBJbmplY3RvclxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGh0dHBjbGllbnQ6IEh0dHBDbGllbnQsIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgdGhpcy5icm93c2VyU2VydmljZSA9IGluamVjdG9yLmdldChcclxuICAgICAgU0FDRklMRUJST1dTRVJfU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UoaHR0cGNsaWVudClcclxuICAgICk7XHJcbiAgICB0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxyXG4gICAgICBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsXHJcbiAgICAgIG5ldyBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UoKVxyXG4gICAgKTtcclxuICAgIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxyXG4gICAgICBTQUNMT0NBTElTQVRJT05fU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlKHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UpXHJcbiAgICApO1xyXG5cclxuICAgIHRoaXMuaWNvblNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0lDT05fU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRJY29uU2VydmljZSgpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xyXG5cclxuICAvKipcclxuICAgKiBTZXR6dCBkZW4gU2VsZWNlZCBOb2RlIMO8YmVyIGRlbiBQZmFkXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHNlbGVjdGVkZmlsZSh2OiBzdHJpbmcgfCBudWxsKSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZG5vZGUgPSB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGgodGhpcy5yb290Tm9kZSwgdik7XHJcblxyXG4gICAgaWYgKHNlbGVjdGVkbm9kZSAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnNlbGVjdE5vZGUoc2VsZWN0ZWRub2RlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnByZXNlbGVjZWRmaWxlID0gdjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBkZWxldGUgaWNvblxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25EZWxldGUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnREZWxldGVJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGVkaXQgaWNvblxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25FZGl0KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50RWRpdEljb247XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDU1MgaWNvbiBmb3IgZm9sZGVycyBpbiB0cmVlIHRoZXJlIGFyZSBjb2xsYWJzZWRcclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uRm9sZGVyQ29sbGFic2VkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyQ2xvc2VkSWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBmb2xkZXJzIHdpdGhvdXQgc3ViZm9sZGVyc1xyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJFbXB0eSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlckVtcHR5SWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGZvciBuZXcgZm9sZGVycyBhY3Rpb25cclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uRm9sZGVyTmV3KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyTmV3SWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGZvciBmb2xkZXJzIGluIHRyZWUgdGhlcmUgYXJlIGV4cGFuZGVkXHJcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlck9wZW4oKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJPcGVuSWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciByZWZyZXNoIGljb25cclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uUmVmcmVzaCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudFJlZnJlc2hJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0dGVyIGbDvHIgU2VsZWN0ZWQgRmlsZS4gSXN0IGFuIElucHV0IFByb3BlcnR5IGdlYnVuZGVuXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBzZWxlY3RlZGZpbGUoKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RGaWxlICYmIHRoaXMuc2VsZWN0RmlsZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkRmlsZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xyXG5cclxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8qKlxyXG4gICAqIEhvc3RMaXN0ZW5lciB3ZWxjaGVyIGRlbiBFZGl0IE1vZGUgYmVpIGFsbGVuIEZpbGVzIHVuZCBOb2RlcyBiZWVuZGV0LlxyXG4gICAqL1xyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXHJcbiAgLyoqXHJcbiAgICogQ2xpY2sgRXZlbnRcclxuICAgKi9cclxuICBwdWJsaWMgZXhpdEVkaXRNb2RlKHRhcmdldEVsZW1lbnQpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkTm9kZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XHJcblxyXG4gICAgICBpZiAoXHJcbiAgICAgICAgIXRoaXMuc2VsZWN0ZWROb2RlIHx8XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuTmFtZSA9PT0gbnVsbCB8fFxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLk5hbWUubGVuZ3RoID09PSAwXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuY2xlYXJOZXdDaGlsZE5vZGVzKHRoaXMucm9vdE5vZGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZShudWxsKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEzDtnNjaHQgZWluIEZpbGVcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGRlbGV0ZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbmZpcm1EZWxldGVGaWxlKGZpbGUpLnN1YnNjcmliZSgoY29uZmlybSkgPT4ge1xyXG4gICAgICBpZiAoY29uZmlybSkge1xyXG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAgIC5EZWxldGVGaWxlKFxyXG4gICAgICAgICAgICB0aGlzLmFwaXVybCxcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWUsXHJcbiAgICAgICAgICAgIHRoaXMuYWxsb3dlZHR5cGVzXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTMO2c2NodCBlaW5lbiBOb2RlXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBkZWxldGVOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25maXJtRGVsZXRlTm9kZShub2RlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcclxuICAgICAgaWYgKGNvbmZpcm0pIHtcclxuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgICAuRGVsZXRlTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBwYXJlbnROb2RlID0gdGhpcy5maW5kUGFyZW50Tm9kZSh0aGlzLnJvb3ROb2RlLCBub2RlKTtcclxuICAgICAgICAgICAgcGFyZW50Tm9kZS5DaGlsZE5vZGVzID0gcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcztcclxuXHJcbiAgICAgICAgICAgIHRoaXMucm9vdE5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcclxuICAgICAgICAgICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgJycpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0Tm9kZShwYXJlbnROb2RlKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGVpbiBGaWxlIGluIGRlbiBFZGl0IE1vZGVcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgaW4gZGVuIEVkaXQgTW9kZSBnZXNldHp0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGVkaXRGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IHZvaWQge1xyXG4gICAgZmlsZS5Jc0VkaXRNb2RlID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGVpbmVuIE5vZGUgaW4gZGVuIEVkaXQgTW9kZVxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBiZWFyYmVpdGV0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGVkaXROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgbm9kZS5Jc0VkaXRNb2RlID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVyemV1Z3QgZWluZW4gbmV1ZW4gTm9kZSBpbSBUcmVlXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB1bnRlciB3ZWxjaGVtIGVpbiBuZXVlciBOb2RlIGVyc3RlbGx0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIG5ld05vZGUobm9kZTogSUJyb3dzZXJOb2RlKSB7XHJcbiAgICBjb25zdCBpdGVtOiBJQnJvd3Nlck5vZGUgPSB7XHJcbiAgICAgIENoaWxkTm9kZXM6IFtdLFxyXG4gICAgICBGaWxlczogW10sXHJcbiAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxyXG4gICAgICBJc0V4cGFuZGVkOiBmYWxzZSxcclxuICAgICAgTmFtZTogJycsXHJcbiAgICAgIFBhdGg6IG5vZGUuUGF0aCxcclxuICAgICAgSXNOZXdOb2RlOiB0cnVlLFxyXG4gICAgfTtcclxuXHJcbiAgICBub2RlLkNoaWxkTm9kZXMucHVzaChpdGVtKTtcclxuICAgIHRoaXMuc2VsZWN0Tm9kZShpdGVtKTtcclxuICAgIHRoaXMuZWRpdE5vZGUoaXRlbSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbml0IEV2ZW50IGRlciBLb21wb25lbnRlXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAuR2V0Tm9kZSh0aGlzLmFwaXVybCwgJycsIHRoaXMuYWxsb3dlZHR5cGVzKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5yb290Tm9kZSA9IHtcclxuICAgICAgICAgIE5hbWU6IHJlc3VsdC5Ob2RlLk5hbWUsXHJcbiAgICAgICAgICBGaWxlczogcmVzdWx0Lk5vZGUuRmlsZXMsXHJcbiAgICAgICAgICBDaGlsZE5vZGVzOiByZXN1bHQuTm9kZS5DaGlsZE5vZGVzLFxyXG4gICAgICAgICAgSXNFeHBhbmRlZDogdHJ1ZSxcclxuICAgICAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxyXG4gICAgICAgICAgSXNOZXdOb2RlOiBmYWxzZSxcclxuICAgICAgICAgIFBhdGg6ICcvJyxcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSB0aGlzLnJvb3ROb2RlO1xyXG5cclxuICAgICAgICAvLyBTZWxlY3RlZCBGaWxlIGVybmV1dCBzZXR6ZW4sIHdlbm4gUHJvcGVydHkgZ2VzZXR6dCB3dXJkZSBiZXZvciBEYXRlbiB2b20gU2VydmljZSBnZWxhZGVuIHd1cmRlbi5cclxuICAgICAgICBpZiAodGhpcy5wcmVzZWxlY2VkZmlsZSAhPT0gbnVsbCAmJiB0aGlzLnByZXNlbGVjZWRmaWxlLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRmaWxlID0gdGhpcy5wcmVzZWxlY2VkZmlsZTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWt0dWFsaXNpZXJ0IGRlbiBOb2RlXHJcbiAgICovXHJcbiAgcHVibGljIHJlZnJlc2hOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgaWYgKCFub2RlLklzRXhwYW5kZWQpIHtcclxuICAgICAgdGhpcy5zd2l0Y2hFeHBhbmROb2RlKG5vZGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgLkdldE5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICBub2RlLkNoaWxkTm9kZXMgPSByZXN1bHQuTm9kZS5DaGlsZE5vZGVzO1xyXG4gICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcclxuXHJcbiAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW5lIERhdGVpIHVtYmVuYW5udCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyB1bWJlbmFubnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcGFyYW0gbmV3RmlsZW5hbWUgTmV1ZXIgRGF0ZWluYW1lXHJcbiAgICovXHJcbiAgcHVibGljIHJlbmFtZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlLCBuZXdGaWxlbmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBmaWxlLklzRWRpdE1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIW5ld0ZpbGVuYW1lIHx8IG5ld0ZpbGVuYW1lID09PSBudWxsIHx8IG5ld0ZpbGVuYW1lLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAvLyBDYW5jZWwsIEludmFsaWQgRmlsZW5hbWVcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChmaWxlLkZpbGVuYW1lICE9PSBuZXdGaWxlbmFtZSkge1xyXG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgLlJlbmFtZUZpbGUoXHJcbiAgICAgICAgICB0aGlzLmFwaXVybCxcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLlBhdGggKyAnLycgKyBmaWxlLkZpbGVuYW1lLFxyXG4gICAgICAgICAgbmV3RmlsZW5hbWUsXHJcbiAgICAgICAgICB0aGlzLmFsbG93ZWR0eXBlc1xyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gTm9kZSB1bWJlbmFubnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgdW1iZW5hbm50IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIG5ld0ZvbGRlcm5hbWUgTmV1ZXIgT3JkbmVybmFtZVxyXG4gICAqL1xyXG4gIHB1YmxpYyByZW5hbWVOb2RlKG5vZGU6IElCcm93c2VyTm9kZSwgbmV3Rm9sZGVybmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBub2RlLklzRWRpdE1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIW5vZGUuSXNOZXdOb2RlKSB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICAhbmV3Rm9sZGVybmFtZSB8fFxyXG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcclxuICAgICAgICBuZXdGb2xkZXJuYW1lLmxlbmd0aCA9PT0gMFxyXG4gICAgICApIHtcclxuICAgICAgICAvLyBDYW5jZWwgUmVuYW1lLiBJbnZhbGlkIEZvbGRlcm5hbWVcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChub2RlLk5hbWUgIT09IG5ld0ZvbGRlcm5hbWUpIHtcclxuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgICAuUmVuYW1lTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBuZXdGb2xkZXJuYW1lKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICBub2RlLk5hbWUgPSByZXN1bHQuTm9kZS5OYW1lO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChcclxuICAgICAgICAhbmV3Rm9sZGVybmFtZSB8fFxyXG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcclxuICAgICAgICBuZXdGb2xkZXJuYW1lLmxlbmd0aCA9PT0gMFxyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG5vZGUuTmFtZSA9IG5ld0ZvbGRlcm5hbWU7XHJcbiAgICAgIG5vZGUuSXNOZXdOb2RlID0gZmFsc2U7XHJcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAuU2F2ZU5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgbmV3Rm9sZGVybmFtZSlcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICBub2RlLk5hbWUgPSByZXN1bHQuTm9kZS5OYW1lO1xyXG4gICAgICAgICAgbm9kZS5GaWxlcyA9IHJlc3VsdC5Ob2RlLkZpbGVzO1xyXG5cclxuICAgICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gRmlsZSBzZWxla3RpZXJ0IHdpcmRcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgc2VsZWt0aWVydCB3aXJkXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdEZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKSB7XHJcbiAgICBpZiAoIWZpbGUuSXNFZGl0TW9kZSkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkTm9kZS5QYXRoLmVuZHNXaXRoKCcvJykpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEZpbGUgPSB0aGlzLnNlbGVjdGVkTm9kZS5QYXRoICsgJy8nICsgZmlsZS5GaWxlbmFtZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlID0gJy8nICsgZmlsZS5GaWxlbmFtZTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnNlbGVjdGVkRmlsZUl0ZW0gPSBmaWxlO1xyXG4gICAgdGhpcy5maWxlLmVtaXQodGhpcy5zZWxlY3RlZEZpbGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0aG9kZSB3ZW5uIGVpbiBOb2RlIHNlbGVrdGllcnQgd2lyZFxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBzZWxla3RpZXJ0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIHNlbGVjdE5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XHJcbiAgICBpZiAoIW5vZGUuSXNFeHBhbmRlZCkge1xyXG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZE5vZGUobm9kZSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVzZXQgdGhlIEVkaXQgTW9kZSBpbiBhbGwgTm9kZXNcclxuICAgIHRoaXMucmVzZXROb2RlRWRpdE1vZGUobnVsbCk7XHJcblxyXG4gICAgaWYgKCFub2RlLkZpbGVzKSB7XHJcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAuR2V0RmlsZXModGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgbm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlID0gbm9kZTtcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5wcmVzZWxlY2VkZmlsZSAhPT0gbnVsbCAmJiB0aGlzLnByZXNlbGVjZWRmaWxlLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29uc3QgZmlsZW5hbWUgPSB0aGlzLnByZXNlbGVjZWRmaWxlLnN1YnN0cmluZyhcclxuICAgICAgICAgICAgICB0aGlzLnByZXNlbGVjZWRmaWxlLmxhc3RJbmRleE9mKCcvJykgKyAxXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBub2RlLkZpbGVzLmZpbmQoKGl0bSkgPT4gaXRtLkZpbGVuYW1lID09PSBmaWxlbmFtZSk7XHJcbiAgICAgICAgICAgIGlmIChmaWxlKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zZWxlY3RGaWxlKGZpbGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFeHBhbmQvQ29sbGFic2UgTWV0aG9kZSBmw7xyIE5vZGVzXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlw7ZmZm5ldCBvZGVyIGdlc2NobG9zc2VuIHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIHN3aXRjaEV4cGFuZE5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XHJcbiAgICBpZiAobm9kZS5Jc0V4cGFuZGVkKSB7XHJcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgbm9kZS5Jc0V4cGFuZGVkID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2VyZGVuIG11c3MsIHdlbm4gZWluIFVwbG9hZCBiZWVuZGV0IGlzdC5cclxuICAgKiBAcGFyYW0gcGFyYW0gUGFyYW1ldGVyIGRlcyBob2NoZ2VsYWRlbmVuIEZpbGVzXHJcbiAgICovXHJcbiAgcHVibGljIHVwbG9hZENvbXBsZXRlKG5vZGU6IElCcm93c2VyTm9kZSwgdXBsb2FkSWRMaXN0OiBzdHJpbmdbXSk6IHZvaWQge1xyXG4gICAgaWYgKHVwbG9hZElkTGlzdCAhPT0gbnVsbCkge1xyXG4gICAgICB1cGxvYWRJZExpc3QuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLnVwbG9hZHMuaW5kZXhPZihlbGVtZW50KSA8IDApIHtcclxuICAgICAgICAgIHRoaXMudXBsb2Fkcy5wdXNoKGVsZW1lbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaWQgPSB0aGlzLnVwbG9hZHMucG9wKCk7XHJcbiAgICBpZiAoaWQpIHtcclxuICAgICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAgIC5TYXZlRmlsZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBpZCwgdGhpcy5hbGxvd2VkdHlwZXMpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XHJcbiAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZU1vdmVkKGlkKTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5lXHJcbiAgICogRGF0ZWkgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsLlxyXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgZsO8ciB3ZWxjaGVzIGVpbiBEZWxldGUgQ29uZmlybSBlaW5nZWZvcmRlcnQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlybURlbGV0ZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcclxuICAvKipcclxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5cclxuICAgKiBPcmRuZXIgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsLlxyXG4gICAqIEBwYXJhbSBmb2xkZXIgT3JkZXJuIGbDvHIgd2VsY2hlbiBlaW4gRGVsZXRlIENvbmZpcm0gZWluZ2Vmb3JkZXJ0IHdlcmRlbiBzb2xsLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBhYnN0cmFjdCBjb25maXJtRGVsZXRlTm9kZShmb2xkZXI6IElCcm93c2VyTm9kZSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgLyoqXHJcbiAgICogQWJzdHJha3RlIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2lyZCwgd2VubiBkYXMgSG9jaGdlbGFkZW5lIEZpbGUgYXVzIGRlbSBUZW1wIEZvbGRlciBpbiBkaWVcclxuICAgKiBTdHJ1a3R1ciB2ZXJzY2hvYmVuIHd1cmRlLlxyXG4gICAqIEBwYXJhbSB1cGxvYWRpZCBJRCBkZXMgVXBsb2Fkc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBhYnN0cmFjdCB1cGxvYWRlZEZpbGVNb3ZlZCh1cGxvYWRpZDogc3RyaW5nKTogdm9pZDtcclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xyXG5cclxuICAvLyAjcmVnaW9uIFByaXZhdGUgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBSZWt1cnNpdmUgTWV0aG9kZSB3ZWxjaGUgYmVpbSBOb2RlIHVuZCBhbGwgc2VpbmVuIENoaWxkcyBuZXVlIE5vZGVzIGVudGZlcm50XHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBhbGxlIG5ldWVuIE5vZGVzIGVudGZlcm50IHdlcmRlbiBzb2xsLlxyXG4gICAqL1xyXG4gIHByaXZhdGUgY2xlYXJOZXdDaGlsZE5vZGVzKG5vZGU6IElCcm93c2VyTm9kZSkge1xyXG4gICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xyXG4gICAgICBpZiAoaXRtLklzTmV3Tm9kZSkge1xyXG4gICAgICAgIG5vZGUuQ2hpbGROb2Rlcy5zcGxpY2Uobm9kZS5DaGlsZE5vZGVzLmluZGV4T2YoaXRtKSk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMuY2xlYXJOZXdDaGlsZE5vZGVzKGl0bSkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTWV0aG9kZSB3ZWxjaGUgZGVuIFBmYWQgZsO8ciBlaW5lbiBOb2RlIGVyemV1Z3RcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGbDvHIgd2VsY2hlbiBkZXIgUGZhZCBlcnpldWd0IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIHBhcmVudFBhdGggw5xiZXJnZW9yZG5ldGVyIFBmYWRcclxuICAgKi9cclxuICBwcml2YXRlIGZpbGxQYXRoKG5vZGU6IElCcm93c2VyTm9kZSwgcGFyZW50UGF0aDogc3RyaW5nKSB7XHJcbiAgICBub2RlLlBhdGggPSBwYXJlbnRQYXRoICsgJy8nICsgbm9kZS5OYW1lO1xyXG4gICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xyXG4gICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgbm9kZS5QYXRoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3VjaHQgZGVuIMO8YmVyZ2VvcmRuZXRlbiBOb2RlIGltIFRyZWVcclxuICAgKiBAcGFyYW0gbm9kZSBBa3R1ZWxsZXIgTm9kZVxyXG4gICAqIEBwYXJhbSBub2RlVG9GaW5kIE5vZGUgd2VsY2hlciBnZWZ1bmRlbiB3ZXJkZW4gc29sbFxyXG4gICAqIEByZXR1cm5zIE5vZGUgd2VubiBlciBnZWZ1bmRlbiB3dXJkZSwgYW5zb25zdGVuIHdpcmQgTlVMTCB6dXLDvGNrZ2VnZWJlblxyXG4gICAqL1xyXG4gIHByaXZhdGUgZmluZFBhcmVudE5vZGUoXHJcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXHJcbiAgICBub2RlVG9GaW5kOiBJQnJvd3Nlck5vZGVcclxuICApOiBJQnJvd3Nlck5vZGUge1xyXG4gICAgaWYgKG5vZGUuQ2hpbGROb2Rlcy5pbmRleE9mKG5vZGVUb0ZpbmQpID49IDApIHtcclxuICAgICAgcmV0dXJuIG5vZGU7XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBub2RlLkNoaWxkTm9kZXMpIHtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5maW5kUGFyZW50Tm9kZShjaGlsZCwgbm9kZVRvRmluZCk7XHJcbiAgICAgIGlmIChyZXN1bHQgIT09IG51bGwpIHtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdWNodCBlaW5lbiBOb2RlIGdlbS4gZWluZW0gVVJMIFBmYWRcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGluIHdlbGNoZW0gZ2VzdWNodCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBwYXRoIFBmYWQgbmFjaCB3ZWxjaGVtIGdlc3VjaHQgd2lyZFxyXG4gICAqIEByZXR1cm5zIE5vZGUgd2VsY2hlciB6dW0gZ2VzdWNodGVuIFBmYWQgcGFzc3QuIFdlbm4ga2VpbiBOb2RlIGdlZnVuZGVuIHdpcmQsIHdpcmQgTlVMTCB6dXLDvGNrZ2VnZWJlblxyXG4gICAqL1xyXG4gIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZUJ5UGF0aChcclxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcclxuICAgIHBhdGg6IHN0cmluZ1xyXG4gICk6IElCcm93c2VyTm9kZSB7XHJcbiAgICAvLyBDYW5jZWwgd2VubiBQZmFkIG5pY2h0IGRlZmluaWVydFxyXG4gICAgaWYgKHBhdGggPT09IHVuZGVmaW5lZCB8fCBwYXRoID09PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFBmYWQgaW4gQXJyYXkgc3BsaXR0ZW4gdW5kIFJvb3QgRm9sZGVybmFtZSBzZXR6ZW5cclxuICAgIGNvbnN0IHBhdGhBcnJheSA9IHBhdGguc3BsaXQoJy8nKTtcclxuICAgIHBhdGhBcnJheVswXSA9IHRoaXMucm9vdE5vZGUuTmFtZTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5maW5kU2VsZWN0ZWROb2RlQnlQYXRoQXJyYXkobm9kZSwgcGF0aEFycmF5LCAwKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1Y2h0IGVpbmVuIE5vZGUgZ2VtLiBlaW5lbSBBcnJheSB2b24gTm9kZSBOYW1lblxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgaW4gd2VsY2hlbSBnZXN1Y2h0IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIHBhdGggQXJyYXkgdm9uIE5vZGUgTmFtZW4sIHdlbGNoZSBkaWUgSGlyYXJjaHkgZGVzIFBmYWRlcyBhYmJpbGRlblxyXG4gICAqIEBwYXJhbSBpbmRleCBBa3R1ZWxsZXIgSW5kZXggaW0gUEFUSCBBcnJheVxyXG4gICAqIEByZXR1cm5zIE5vZGUgd2VubiBlaW5lciBnZWZ1bmRlbiB3dXJkZSwgYW5zb25zdGVuIE5VTExcclxuICAgKi9cclxuICBwcml2YXRlIGZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShcclxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcclxuICAgIHBhdGg6IHN0cmluZ1tdLFxyXG4gICAgaW5kZXg6IG51bWJlclxyXG4gICk6IElCcm93c2VyTm9kZSB7XHJcbiAgICAvLyBDaGVjayBvYiBPcmRuZXIga29ycmVrdC4gTGV0emVyIE9yZG5lciB6dXLDvGNrZ2ViZW4uIFBhdGggTGFzdCBJbmRleCBpc3QgZGVyIEZpbGVuYW1lXHJcbiAgICBpZiAobm9kZS5OYW1lID09PSBwYXRoW2luZGV4XSAmJiBwYXRoLmxlbmd0aCAtIDIgPT09IGluZGV4KSB7XHJcbiAgICAgIHJldHVybiBub2RlO1xyXG4gICAgfSBlbHNlIGlmIChub2RlLk5hbWUgPT09IHBhdGhbaW5kZXhdKSB7XHJcbiAgICAgIC8vIEV4cGFuZCBOb2RlXHJcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IHRydWU7XHJcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBub2RlLkNoaWxkTm9kZXMpIHtcclxuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShpdGVtLCBwYXRoLCBpbmRleCArIDEpO1xyXG5cclxuICAgICAgICBpZiAocmVzdWx0ICE9PSBudWxsKSB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZWt1cnNpdmUgTWV0aG9kZSB3ZWxjaGUgYmVpbSBOb2RlIHVuZCBhbGwgc2VpbmVuIENoaWxkcyBkZW4gRWRpdCBNb2RlIGJlZW5kZXQuXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBkZXIgRWRpdCBNb2RlIGJlZW5kZXQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwcml2YXRlIHJlc2V0Tm9kZUVkaXRNb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgaWYgKG5vZGUgPT09IG51bGwpIHtcclxuICAgICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZSh0aGlzLnJvb3ROb2RlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5vZGUuSXNFZGl0TW9kZSA9IGZhbHNlO1xyXG5cclxuICAgICAgaWYgKG5vZGUuQ2hpbGROb2Rlcykge1xyXG4gICAgICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMucmVzZXROb2RlRWRpdE1vZGUoaXRtKSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFNldHp0IGRlbiBQZmFkIGluIGFsbGVuIE5vZGVzXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBzZXRQYXRoVG9BbGxOb2RlcygpIHtcclxuICAgIHRoaXMucm9vdE5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcclxuICAgICAgdGhpcy5maWxsUGF0aChpdG0sICcnKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcml2YXRlIE1ldGhvZHNcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7eUZBQ0EsT0FDRUEsU0FBUyxDQUNUQyxZQUFZLENBQ1pDLFlBQVksQ0FFWkMsS0FBSyxDQUVMQyxNQUFNLEtBQ0QsZUFBZSxDQU10QixPQUNFQyxlQUFlLENBQ2ZDLHVCQUF1QixDQUN2QkMsd0JBQXdCLENBQ3hCQyxxQkFBcUIsQ0FDckJDLDhCQUE4QixLQUN6QixnQkFBZ0IsQ0FDdkIsT0FDRUMsc0JBQXNCLENBQ3RCQyw0QkFBNEIsS0FDdkIsd0NBQXdDLENBQy9DLE9BQVNDLDZCQUE2QixLQUFRLHlDQUF5QyxDLHlFQU12Rjs7R0FJQSxNQUFNLE1BQWdCLENBQUFDLG9CQUFvQixDQW9HeEM7QUFFQTtBQUVBOzs7O09BS0FDLFlBQVlDLFVBQXNCLENBQUVDLFFBQWtCLEVBQUFDLGFBQUEsR0FBQUMsQ0FBQSxNQUFBRCxhQUFBLEdBQUFFLENBQUEsTUFsR3REOztXQUdRLEtBQUFDLGNBQWMsQ0FBa0IsSUFBSSxDQUU1Qzs7O1dBQUFILGFBQUEsR0FBQUUsQ0FBQSxNQUtPLEtBQUFFLFlBQVksQ0FBVyxFQUFFLENBQ2hDOztXQUFBSixhQUFBLEdBQUFFLENBQUEsTUFJTyxLQUFBRyxlQUFlLENBQVksSUFBSSxDQUN0Qzs7V0FBQUwsYUFBQSxHQUFBRSxDQUFBLE1BSU8sS0FBQUksZUFBZSxDQUFZLElBQUksQ0FDdEM7O1dBQUFOLGFBQUEsR0FBQUUsQ0FBQSxNQUlPLEtBQUFLLGVBQWUsQ0FBWSxJQUFJLENBQ3RDOztXQUFBUCxhQUFBLEdBQUFFLENBQUEsTUFJTyxLQUFBTSxp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
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
function cov_22mrz279pt(){var path="C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\browser.ngfactory.mjs";var hash="2e9b974cec91132480ca795dcd9eb71c3f367d86";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\browser.ngfactory.mjs",statementMap:{"0":{start:{line:3,column:31},end:{line:3,column:35}}},fnMap:{},branchMap:{},s:{"0":0},f:{},b:{},inputSourceMap:{version:3,file:"browser.ngfactory.js",sourceRoot:"",sources:["../../../../../projects/sac-common/src/components/browser/browser.ngfactory.ts"],names:[],mappings:"AAAA,OAAO,KAAK,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAC,oBAAoB,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAC",sourcesContent:["import * as i0 from '@angular/core';\nimport {SacFileBrowserCommon} from './browser';\nexport const SacFileBrowserCommonNgFactory: i0.\u0275NgModuleFactory<any> = new i0.\u0275NgModuleFactory(SacFileBrowserCommon);\nexport const \u0275NonEmptyModule = true;"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"2e9b974cec91132480ca795dcd9eb71c3f367d86"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
|
-
cov_22mrz279pt=function(){return actualCoverage;};}return actualCoverage;}cov_22mrz279pt();import*as i0 from'@angular/core';import{SacFileBrowserCommon}from'./browser';export const ɵNonEmptyModule=(cov_22mrz279pt().s[0]++,true);//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvYnJvd3Nlci5uZ2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2FjRmlsZUJyb3dzZXJDb21tb259IGZyb20gJy4vYnJvd3Nlcic7XG5leHBvcnQgY29uc3QgU2FjRmlsZUJyb3dzZXJDb21tb25OZ0ZhY3Rvcnk6IGkwLsm1TmdNb2R1bGVGYWN0b3J5PGFueT4gPSBuZXcgaTAuybVOZ01vZHVsZUZhY3RvcnkoU2FjRmlsZUJyb3dzZXJDb21tb24pO1xuZXhwb3J0IGNvbnN0IMm1Tm9uRW1wdHlNb2R1bGUgPSB0cnVlOyJdfQ==
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpMCIsIlNhY0ZpbGVCcm93c2VyQ29tbW9uIiwiybVOb25FbXB0eU1vZHVsZSIsImNvdl8yMm1yejI3OXB0IiwicyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9icm93c2VyLm5nZmFjdG9yeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2FjRmlsZUJyb3dzZXJDb21tb259IGZyb20gJy4vYnJvd3Nlcic7XG5leHBvcnQgY29uc3QgU2FjRmlsZUJyb3dzZXJDb21tb25OZ0ZhY3Rvcnk6IGkwLsm1TmdNb2R1bGVGYWN0b3J5PGFueT4gPSBuZXcgaTAuybVOZ01vZHVsZUZhY3RvcnkoU2FjRmlsZUJyb3dzZXJDb21tb24pO1xuZXhwb3J0IGNvbnN0IMm1Tm9uRW1wdHlNb2R1bGUgPSB0cnVlOyJdLCJtYXBwaW5ncyI6IjsyRkFBQSxNQUFPLEdBQUssQ0FBQUEsRUFBRSxLQUFNLGVBQWUsQ0FDbkMsT0FBUUMsb0JBQW9CLEtBQU8sV0FBVyxDQUU5QyxNQUFPLE1BQU0sQ0FBQUMsZUFBZSxFQUFBQyxjQUFBLEdBQUFDLENBQUEsTUFBRyxJQUFJLEUifQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
function cov_ru506iqrp(){var path="C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\browser.ngsummary.mjs";var hash="0d9414e0dfd341d850bca72a1bb117fa83342a0d";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\browser.ngsummary.mjs",statementMap:{"0":{start:{line:1,column:45},end:{line:1,column:49}}},fnMap:{},branchMap:{},s:{"0":0},f:{},b:{},inputSourceMap:{version:3,file:"browser.ngsummary.js",sourceRoot:"",sources:["../../../../../projects/sac-common/src/components/browser/browser.ngsummary.ts"],names:[],mappings:"AAAA,MAAM,CAAC,MAAM,6BAA6B,GAAQ,IAAI,CAAC",sourcesContent:["export const SacFileBrowserCommonNgSummary: any = null;"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"0d9414e0dfd341d850bca72a1bb117fa83342a0d"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
|
-
cov_ru506iqrp=function(){return actualCoverage;};}return actualCoverage;}cov_ru506iqrp();export const SacFileBrowserCommonNgSummary=(cov_ru506iqrp().s[0]++,null);//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5uZ3N1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvYnJvd3Nlci5uZ3N1bW1hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQVEsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFNhY0ZpbGVCcm93c2VyQ29tbW9uTmdTdW1tYXJ5OiBhbnkgPSBudWxsOyJdfQ==
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTYWNGaWxlQnJvd3NlckNvbW1vbk5nU3VtbWFyeSIsImNvdl9ydTUwNmlxcnAiLCJzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL2Jyb3dzZXIubmdzdW1tYXJ5LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBTYWNGaWxlQnJvd3NlckNvbW1vbk5nU3VtbWFyeTogYW55ID0gbnVsbDsiXSwibWFwcGluZ3MiOiI7eUZBQUEsTUFBTyxNQUFNLENBQUFBLDZCQUE2QixFQUFBQyxhQUFBLEdBQUFDLENBQUEsTUFBUSxJQUFJLEUifQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
function cov_hybevirfn(){var path="C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\models\\browserfile.mjs";var hash="12a1873c3c217480d8b769749ad84e2fe1fbe571";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"C:\\Projekte\\simpleangularcontrols-ng13\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2020\\components\\browser\\models\\browserfile.mjs",statementMap:{},fnMap:{},branchMap:{},s:{},f:{},b:{},inputSourceMap:{version:3,file:"browserfile.js",sourceRoot:"",sources:["../../../../../../projects/sac-common/src/components/browser/models/browserfile.ts"],names:[],mappings:"",sourcesContent:["/**\r\n * Interface f\xFCr Datei Items in File Browser Component\r\n */\r\nexport interface IBrowserFile {\r\n /**\r\n * Dateiname\r\n */\r\n Filename: string;\r\n /**\r\n * Gr\xF6sse der Datei\r\n */\r\n Size: number;\r\n /**\r\n * Item wird bearbeitet\r\n */\r\n IsEditMode: boolean;\r\n}\r\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"12a1873c3c217480d8b769749ad84e2fe1fbe571"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
|
-
cov_hybevirfn=function(){return actualCoverage;};}return actualCoverage;}cov_hybevirfn();export{};//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJmaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogSW50ZXJmYWNlIGbDvHIgRGF0ZWkgSXRlbXMgaW4gRmlsZSBCcm93c2VyIENvbXBvbmVudFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBJQnJvd3NlckZpbGUge1xyXG4gIC8qKlxyXG4gICAqIERhdGVpbmFtZVxyXG4gICAqL1xyXG4gIEZpbGVuYW1lOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogR3LDtnNzZSBkZXIgRGF0ZWlcclxuICAgKi9cclxuICBTaXplOiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogSXRlbSB3aXJkIGJlYXJiZWl0ZXRcclxuICAgKi9cclxuICBJc0VkaXRNb2RlOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
|
|
3
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2VyZmlsZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogSW50ZXJmYWNlIGbDvHIgRGF0ZWkgSXRlbXMgaW4gRmlsZSBCcm93c2VyIENvbXBvbmVudFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBJQnJvd3NlckZpbGUge1xyXG4gIC8qKlxyXG4gICAqIERhdGVpbmFtZVxyXG4gICAqL1xyXG4gIEZpbGVuYW1lOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogR3LDtnNzZSBkZXIgRGF0ZWlcclxuICAgKi9cclxuICBTaXplOiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogSXRlbSB3aXJkIGJlYXJiZWl0ZXRcclxuICAgKi9cclxuICBJc0VkaXRNb2RlOiBib29sZWFuO1xyXG59XHJcbiJdLCJtYXBwaW5ncyI6IiJ9
|