@simpleangularcontrols/sac-common 13.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/README.md +16 -0
- package/common/basedatetimecontrol.d.ts +87 -0
- package/common/basedatetimecontrol.d.ts.map +1 -0
- package/common/basedatetimecontrol.ngfactory.d.ts +4 -0
- package/common/basedatetimecontrol.ngfactory.d.ts.map +1 -0
- package/common/basedatetimecontrol.ngsummary.d.ts +2 -0
- package/common/basedatetimecontrol.ngsummary.d.ts.map +1 -0
- package/common/baseinputcontrol.d.ts +46 -0
- package/common/baseinputcontrol.d.ts.map +1 -0
- package/common/baseinputcontrol.ngfactory.d.ts +4 -0
- package/common/baseinputcontrol.ngfactory.d.ts.map +1 -0
- package/common/baseinputcontrol.ngsummary.d.ts +2 -0
- package/common/baseinputcontrol.ngsummary.d.ts.map +1 -0
- package/common/baselistcontrol.d.ts +47 -0
- package/common/baselistcontrol.d.ts.map +1 -0
- package/common/baselistcontrol.ngfactory.d.ts +4 -0
- package/common/baselistcontrol.ngfactory.d.ts.map +1 -0
- package/common/baselistcontrol.ngsummary.d.ts +2 -0
- package/common/baselistcontrol.ngsummary.d.ts.map +1 -0
- package/common/basemodelcontrol.d.ts +201 -0
- package/common/basemodelcontrol.d.ts.map +1 -0
- package/common/basemodelcontrol.ngfactory.d.ts +4 -0
- package/common/basemodelcontrol.ngfactory.d.ts.map +1 -0
- package/common/basemodelcontrol.ngsummary.d.ts +2 -0
- package/common/basemodelcontrol.ngsummary.d.ts.map +1 -0
- package/common/baseselectcontrol.d.ts +18 -0
- package/common/baseselectcontrol.d.ts.map +1 -0
- package/common/baseselectcontrol.ngfactory.d.ts +4 -0
- package/common/baseselectcontrol.ngfactory.d.ts.map +1 -0
- package/common/baseselectcontrol.ngsummary.d.ts +2 -0
- package/common/baseselectcontrol.ngsummary.d.ts.map +1 -0
- package/common/baseuploadcontrol.d.ts +288 -0
- package/common/baseuploadcontrol.d.ts.map +1 -0
- package/common/baseuploadcontrol.ngfactory.d.ts +4 -0
- package/common/baseuploadcontrol.ngfactory.d.ts.map +1 -0
- package/common/baseuploadcontrol.ngsummary.d.ts +2 -0
- package/common/baseuploadcontrol.ngsummary.d.ts.map +1 -0
- package/components/browser/browser.d.ts +266 -0
- package/components/browser/browser.d.ts.map +1 -0
- package/components/browser/browser.ngfactory.d.ts +4 -0
- package/components/browser/browser.ngfactory.d.ts.map +1 -0
- package/components/browser/browser.ngsummary.d.ts +2 -0
- package/components/browser/browser.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browserfile.d.ts +18 -0
- package/components/browser/models/browserfile.d.ts.map +1 -0
- package/components/browser/models/browserfile.ngfactory.d.ts +2 -0
- package/components/browser/models/browserfile.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browserfile.ngsummary.d.ts +2 -0
- package/components/browser/models/browserfile.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browserfiledeleterequest.d.ts +19 -0
- package/components/browser/models/browserfiledeleterequest.d.ts.map +1 -0
- package/components/browser/models/browserfiledeleterequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browserfiledeleterequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browserfiledeleterequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browserfiledeleterequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browserfilerenamerequest.d.ts +23 -0
- package/components/browser/models/browserfilerenamerequest.d.ts.map +1 -0
- package/components/browser/models/browserfilerenamerequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browserfilerenamerequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browserfilerenamerequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browserfilerenamerequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browserfileresponse.d.ts +11 -0
- package/components/browser/models/browserfileresponse.d.ts.map +1 -0
- package/components/browser/models/browserfileresponse.ngfactory.d.ts +2 -0
- package/components/browser/models/browserfileresponse.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browserfileresponse.ngsummary.d.ts +2 -0
- package/components/browser/models/browserfileresponse.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browserfilesaverequest.d.ts +23 -0
- package/components/browser/models/browserfilesaverequest.d.ts.map +1 -0
- package/components/browser/models/browserfilesaverequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browserfilesaverequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browserfilesaverequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browserfilesaverequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browsernode.d.ts +35 -0
- package/components/browser/models/browsernode.d.ts.map +1 -0
- package/components/browser/models/browsernode.ngfactory.d.ts +2 -0
- package/components/browser/models/browsernode.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browsernode.ngsummary.d.ts +2 -0
- package/components/browser/models/browsernode.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browsernodedeleterequest.d.ts +15 -0
- package/components/browser/models/browsernodedeleterequest.d.ts.map +1 -0
- package/components/browser/models/browsernodedeleterequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browsernodedeleterequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browsernodedeleterequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browsernodedeleterequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browsernodenewrequest.d.ts +19 -0
- package/components/browser/models/browsernodenewrequest.d.ts.map +1 -0
- package/components/browser/models/browsernodenewrequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browsernodenewrequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browsernodenewrequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browsernodenewrequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browsernoderenamerequest.d.ts +19 -0
- package/components/browser/models/browsernoderenamerequest.d.ts.map +1 -0
- package/components/browser/models/browsernoderenamerequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browsernoderenamerequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browsernoderenamerequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browsernoderenamerequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browsernoderequest.d.ts +19 -0
- package/components/browser/models/browsernoderequest.d.ts.map +1 -0
- package/components/browser/models/browsernoderequest.ngfactory.d.ts +2 -0
- package/components/browser/models/browsernoderequest.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browsernoderequest.ngsummary.d.ts +2 -0
- package/components/browser/models/browsernoderequest.ngsummary.d.ts.map +1 -0
- package/components/browser/models/browsernoderesponse.d.ts +11 -0
- package/components/browser/models/browsernoderesponse.d.ts.map +1 -0
- package/components/browser/models/browsernoderesponse.ngfactory.d.ts +2 -0
- package/components/browser/models/browsernoderesponse.ngfactory.d.ts.map +1 -0
- package/components/browser/models/browsernoderesponse.ngsummary.d.ts +2 -0
- package/components/browser/models/browsernoderesponse.ngsummary.d.ts.map +1 -0
- package/controls/buttons/button.d.ts +73 -0
- package/controls/buttons/button.d.ts.map +1 -0
- package/controls/buttons/button.ngfactory.d.ts +4 -0
- package/controls/buttons/button.ngfactory.d.ts.map +1 -0
- package/controls/buttons/button.ngsummary.d.ts +2 -0
- package/controls/buttons/button.ngsummary.d.ts.map +1 -0
- package/controls/checkbox/checkbox.d.ts +23 -0
- package/controls/checkbox/checkbox.d.ts.map +1 -0
- package/controls/checkbox/checkbox.ngfactory.d.ts +4 -0
- package/controls/checkbox/checkbox.ngfactory.d.ts.map +1 -0
- package/controls/checkbox/checkbox.ngsummary.d.ts +2 -0
- package/controls/checkbox/checkbox.ngsummary.d.ts.map +1 -0
- package/controls/checkbox/radiobutton.d.ts +74 -0
- package/controls/checkbox/radiobutton.d.ts.map +1 -0
- package/controls/checkbox/radiobutton.ngfactory.d.ts +4 -0
- package/controls/checkbox/radiobutton.ngfactory.d.ts.map +1 -0
- package/controls/checkbox/radiobutton.ngsummary.d.ts +2 -0
- package/controls/checkbox/radiobutton.ngsummary.d.ts.map +1 -0
- package/controls/checkbox/radiobuttons.d.ts +63 -0
- package/controls/checkbox/radiobuttons.d.ts.map +1 -0
- package/controls/checkbox/radiobuttons.ngfactory.d.ts +4 -0
- package/controls/checkbox/radiobuttons.ngfactory.d.ts.map +1 -0
- package/controls/checkbox/radiobuttons.ngsummary.d.ts +2 -0
- package/controls/checkbox/radiobuttons.ngsummary.d.ts.map +1 -0
- package/controls/confirm/confirm.button.d.ts +20 -0
- package/controls/confirm/confirm.button.d.ts.map +1 -0
- package/controls/confirm/confirm.button.ngfactory.d.ts +2 -0
- package/controls/confirm/confirm.button.ngfactory.d.ts.map +1 -0
- package/controls/confirm/confirm.button.ngsummary.d.ts +2 -0
- package/controls/confirm/confirm.button.ngsummary.d.ts.map +1 -0
- package/controls/confirm/confirm.d.ts +53 -0
- package/controls/confirm/confirm.d.ts.map +1 -0
- package/controls/confirm/confirm.ngfactory.d.ts +4 -0
- package/controls/confirm/confirm.ngfactory.d.ts.map +1 -0
- package/controls/confirm/confirm.ngsummary.d.ts +2 -0
- package/controls/confirm/confirm.ngsummary.d.ts.map +1 -0
- package/controls/confirm/confirm.service.d.ts +59 -0
- package/controls/confirm/confirm.service.d.ts.map +1 -0
- package/controls/confirm/confirm.service.ngfactory.d.ts +2 -0
- package/controls/confirm/confirm.service.ngfactory.d.ts.map +1 -0
- package/controls/confirm/confirm.service.ngsummary.d.ts +2 -0
- package/controls/confirm/confirm.service.ngsummary.d.ts.map +1 -0
- package/controls/contextmenu/contextmenu.d.ts +117 -0
- package/controls/contextmenu/contextmenu.d.ts.map +1 -0
- package/controls/contextmenu/contextmenu.ngfactory.d.ts +4 -0
- package/controls/contextmenu/contextmenu.ngfactory.d.ts.map +1 -0
- package/controls/contextmenu/contextmenu.ngsummary.d.ts +2 -0
- package/controls/contextmenu/contextmenu.ngsummary.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuanchor.d.ts +19 -0
- package/controls/contextmenu/contextmenuanchor.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuanchor.ngfactory.d.ts +4 -0
- package/controls/contextmenu/contextmenuanchor.ngfactory.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuanchor.ngsummary.d.ts +2 -0
- package/controls/contextmenu/contextmenuanchor.ngsummary.d.ts.map +1 -0
- package/controls/contextmenu/contextmenucontainer.d.ts +19 -0
- package/controls/contextmenu/contextmenucontainer.d.ts.map +1 -0
- package/controls/contextmenu/contextmenucontainer.ngfactory.d.ts +4 -0
- package/controls/contextmenu/contextmenucontainer.ngfactory.d.ts.map +1 -0
- package/controls/contextmenu/contextmenucontainer.ngsummary.d.ts +2 -0
- package/controls/contextmenu/contextmenucontainer.ngsummary.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuitem.d.ts +9 -0
- package/controls/contextmenu/contextmenuitem.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuitem.ngfactory.d.ts +4 -0
- package/controls/contextmenu/contextmenuitem.ngfactory.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuitem.ngsummary.d.ts +2 -0
- package/controls/contextmenu/contextmenuitem.ngsummary.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuitembutton.d.ts +70 -0
- package/controls/contextmenu/contextmenuitembutton.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuitembutton.ngfactory.d.ts +4 -0
- package/controls/contextmenu/contextmenuitembutton.ngfactory.d.ts.map +1 -0
- package/controls/contextmenu/contextmenuitembutton.ngsummary.d.ts +2 -0
- package/controls/contextmenu/contextmenuitembutton.ngsummary.d.ts.map +1 -0
- package/controls/datetime/date.d.ts +124 -0
- package/controls/datetime/date.d.ts.map +1 -0
- package/controls/datetime/date.ngfactory.d.ts +4 -0
- package/controls/datetime/date.ngfactory.d.ts.map +1 -0
- package/controls/datetime/date.ngsummary.d.ts +2 -0
- package/controls/datetime/date.ngsummary.d.ts.map +1 -0
- package/controls/datetime/dateselector.d.ts +165 -0
- package/controls/datetime/dateselector.d.ts.map +1 -0
- package/controls/datetime/dateselector.ngfactory.d.ts +4 -0
- package/controls/datetime/dateselector.ngfactory.d.ts.map +1 -0
- package/controls/datetime/dateselector.ngsummary.d.ts +2 -0
- package/controls/datetime/dateselector.ngsummary.d.ts.map +1 -0
- package/controls/datetime/datetime.d.ts +139 -0
- package/controls/datetime/datetime.d.ts.map +1 -0
- package/controls/datetime/datetime.ngfactory.d.ts +4 -0
- package/controls/datetime/datetime.ngfactory.d.ts.map +1 -0
- package/controls/datetime/datetime.ngsummary.d.ts +2 -0
- package/controls/datetime/datetime.ngsummary.d.ts.map +1 -0
- package/controls/datetime/time.d.ts +119 -0
- package/controls/datetime/time.d.ts.map +1 -0
- package/controls/datetime/time.ngfactory.d.ts +4 -0
- package/controls/datetime/time.ngfactory.d.ts.map +1 -0
- package/controls/datetime/time.ngsummary.d.ts +2 -0
- package/controls/datetime/time.ngsummary.d.ts.map +1 -0
- package/controls/dialog/dialog.d.ts +109 -0
- package/controls/dialog/dialog.d.ts.map +1 -0
- package/controls/dialog/dialog.ngfactory.d.ts +4 -0
- package/controls/dialog/dialog.ngfactory.d.ts.map +1 -0
- package/controls/dialog/dialog.ngsummary.d.ts +2 -0
- package/controls/dialog/dialog.ngsummary.d.ts.map +1 -0
- package/controls/form/form.d.ts +87 -0
- package/controls/form/form.d.ts.map +1 -0
- package/controls/form/form.ngfactory.d.ts +4 -0
- package/controls/form/form.ngfactory.d.ts.map +1 -0
- package/controls/form/form.ngsummary.d.ts +2 -0
- package/controls/form/form.ngsummary.d.ts.map +1 -0
- package/controls/grid/grid.d.ts +126 -0
- package/controls/grid/grid.d.ts.map +1 -0
- package/controls/grid/grid.ngfactory.d.ts +4 -0
- package/controls/grid/grid.ngfactory.d.ts.map +1 -0
- package/controls/grid/grid.ngsummary.d.ts +2 -0
- package/controls/grid/grid.ngsummary.d.ts.map +1 -0
- package/controls/grid/gridbutton.d.ts +37 -0
- package/controls/grid/gridbutton.d.ts.map +1 -0
- package/controls/grid/gridbutton.ngfactory.d.ts +4 -0
- package/controls/grid/gridbutton.ngfactory.d.ts.map +1 -0
- package/controls/grid/gridbutton.ngsummary.d.ts +2 -0
- package/controls/grid/gridbutton.ngsummary.d.ts.map +1 -0
- package/controls/grid/gridcolumn.d.ts +32 -0
- package/controls/grid/gridcolumn.d.ts.map +1 -0
- package/controls/grid/gridcolumn.ngfactory.d.ts +4 -0
- package/controls/grid/gridcolumn.ngfactory.d.ts.map +1 -0
- package/controls/grid/gridcolumn.ngsummary.d.ts +2 -0
- package/controls/grid/gridcolumn.ngsummary.d.ts.map +1 -0
- package/controls/grid/gridcolumnaction.d.ts +19 -0
- package/controls/grid/gridcolumnaction.d.ts.map +1 -0
- package/controls/grid/gridcolumnaction.ngfactory.d.ts +4 -0
- package/controls/grid/gridcolumnaction.ngfactory.d.ts.map +1 -0
- package/controls/grid/gridcolumnaction.ngsummary.d.ts +2 -0
- package/controls/grid/gridcolumnaction.ngsummary.d.ts.map +1 -0
- package/controls/grid/gridcolumnbase.d.ts +90 -0
- package/controls/grid/gridcolumnbase.d.ts.map +1 -0
- package/controls/grid/gridcolumnbase.ngfactory.d.ts +4 -0
- package/controls/grid/gridcolumnbase.ngfactory.d.ts.map +1 -0
- package/controls/grid/gridcolumnbase.ngsummary.d.ts +2 -0
- package/controls/grid/gridcolumnbase.ngsummary.d.ts.map +1 -0
- package/controls/grid/gridimage.d.ts +13 -0
- package/controls/grid/gridimage.d.ts.map +1 -0
- package/controls/grid/gridimage.ngfactory.d.ts +4 -0
- package/controls/grid/gridimage.ngfactory.d.ts.map +1 -0
- package/controls/grid/gridimage.ngsummary.d.ts +2 -0
- package/controls/grid/gridimage.ngsummary.d.ts.map +1 -0
- package/controls/grid/model.d.ts +84 -0
- package/controls/grid/model.d.ts.map +1 -0
- package/controls/grid/model.ngfactory.d.ts +2 -0
- package/controls/grid/model.ngfactory.d.ts.map +1 -0
- package/controls/grid/model.ngsummary.d.ts +2 -0
- package/controls/grid/model.ngsummary.d.ts.map +1 -0
- package/controls/grid/paging.d.ts +148 -0
- package/controls/grid/paging.d.ts.map +1 -0
- package/controls/grid/paging.ngfactory.d.ts +4 -0
- package/controls/grid/paging.ngfactory.d.ts.map +1 -0
- package/controls/grid/paging.ngsummary.d.ts +2 -0
- package/controls/grid/paging.ngsummary.d.ts.map +1 -0
- package/controls/input/input.d.ts +39 -0
- package/controls/input/input.d.ts.map +1 -0
- package/controls/input/input.ngfactory.d.ts +4 -0
- package/controls/input/input.ngfactory.d.ts.map +1 -0
- package/controls/input/input.ngsummary.d.ts +2 -0
- package/controls/input/input.ngsummary.d.ts.map +1 -0
- package/controls/input/inputarea.d.ts +30 -0
- package/controls/input/inputarea.d.ts.map +1 -0
- package/controls/input/inputarea.ngfactory.d.ts +4 -0
- package/controls/input/inputarea.ngfactory.d.ts.map +1 -0
- package/controls/input/inputarea.ngsummary.d.ts +2 -0
- package/controls/input/inputarea.ngsummary.d.ts.map +1 -0
- package/controls/input/inputcurrency.d.ts +10 -0
- package/controls/input/inputcurrency.d.ts.map +1 -0
- package/controls/input/inputcurrency.ngfactory.d.ts +4 -0
- package/controls/input/inputcurrency.ngfactory.d.ts.map +1 -0
- package/controls/input/inputcurrency.ngsummary.d.ts +2 -0
- package/controls/input/inputcurrency.ngsummary.d.ts.map +1 -0
- package/controls/input/inputdecimal.d.ts +63 -0
- package/controls/input/inputdecimal.d.ts.map +1 -0
- package/controls/input/inputdecimal.ngfactory.d.ts +4 -0
- package/controls/input/inputdecimal.ngfactory.d.ts.map +1 -0
- package/controls/input/inputdecimal.ngsummary.d.ts +2 -0
- package/controls/input/inputdecimal.ngsummary.d.ts.map +1 -0
- package/controls/input/inputemail.d.ts +23 -0
- package/controls/input/inputemail.d.ts.map +1 -0
- package/controls/input/inputemail.ngfactory.d.ts +4 -0
- package/controls/input/inputemail.ngfactory.d.ts.map +1 -0
- package/controls/input/inputemail.ngsummary.d.ts +2 -0
- package/controls/input/inputemail.ngsummary.d.ts.map +1 -0
- package/controls/input/inputinteger.d.ts +63 -0
- package/controls/input/inputinteger.d.ts.map +1 -0
- package/controls/input/inputinteger.ngfactory.d.ts +4 -0
- package/controls/input/inputinteger.ngfactory.d.ts.map +1 -0
- package/controls/input/inputinteger.ngsummary.d.ts +2 -0
- package/controls/input/inputinteger.ngsummary.d.ts.map +1 -0
- package/controls/input/inputpassword.d.ts +27 -0
- package/controls/input/inputpassword.d.ts.map +1 -0
- package/controls/input/inputpassword.ngfactory.d.ts +4 -0
- package/controls/input/inputpassword.ngfactory.d.ts.map +1 -0
- package/controls/input/inputpassword.ngsummary.d.ts +2 -0
- package/controls/input/inputpassword.ngsummary.d.ts.map +1 -0
- package/controls/input/inputsearch.d.ts +27 -0
- package/controls/input/inputsearch.d.ts.map +1 -0
- package/controls/input/inputsearch.ngfactory.d.ts +4 -0
- package/controls/input/inputsearch.ngfactory.d.ts.map +1 -0
- package/controls/input/inputsearch.ngsummary.d.ts +2 -0
- package/controls/input/inputsearch.ngsummary.d.ts.map +1 -0
- package/controls/list/dropdown.d.ts +144 -0
- package/controls/list/dropdown.d.ts.map +1 -0
- package/controls/list/dropdown.ngfactory.d.ts +5 -0
- package/controls/list/dropdown.ngfactory.d.ts.map +1 -0
- package/controls/list/dropdown.ngsummary.d.ts +3 -0
- package/controls/list/dropdown.ngsummary.d.ts.map +1 -0
- package/controls/list/list.module.d.ts +7 -0
- package/controls/list/list.module.d.ts.map +1 -0
- package/controls/list/list.module.ngfactory.d.ts +4 -0
- package/controls/list/list.module.ngfactory.d.ts.map +1 -0
- package/controls/list/list.module.ngsummary.d.ts +2 -0
- package/controls/list/list.module.ngsummary.d.ts.map +1 -0
- package/controls/list/listbox.d.ts +92 -0
- package/controls/list/listbox.d.ts.map +1 -0
- package/controls/list/listbox.ngfactory.d.ts +5 -0
- package/controls/list/listbox.ngfactory.d.ts.map +1 -0
- package/controls/list/listbox.ngsummary.d.ts +3 -0
- package/controls/list/listbox.ngsummary.d.ts.map +1 -0
- package/controls/multilanguage/multilanguageinput.d.ts +105 -0
- package/controls/multilanguage/multilanguageinput.d.ts.map +1 -0
- package/controls/multilanguage/multilanguageinput.ngfactory.d.ts +4 -0
- package/controls/multilanguage/multilanguageinput.ngfactory.d.ts.map +1 -0
- package/controls/multilanguage/multilanguageinput.ngsummary.d.ts +2 -0
- package/controls/multilanguage/multilanguageinput.ngsummary.d.ts.map +1 -0
- package/controls/multilanguage/multilanguageinputarea.d.ts +110 -0
- package/controls/multilanguage/multilanguageinputarea.d.ts.map +1 -0
- package/controls/multilanguage/multilanguageinputarea.ngfactory.d.ts +4 -0
- package/controls/multilanguage/multilanguageinputarea.ngfactory.d.ts.map +1 -0
- package/controls/multilanguage/multilanguageinputarea.ngsummary.d.ts +2 -0
- package/controls/multilanguage/multilanguageinputarea.ngsummary.d.ts.map +1 -0
- package/controls/static/formcontainer.d.ts +35 -0
- package/controls/static/formcontainer.d.ts.map +1 -0
- package/controls/static/formcontainer.ngfactory.d.ts +4 -0
- package/controls/static/formcontainer.ngfactory.d.ts.map +1 -0
- package/controls/static/formcontainer.ngsummary.d.ts +2 -0
- package/controls/static/formcontainer.ngsummary.d.ts.map +1 -0
- package/controls/static/staticlabel.d.ts +22 -0
- package/controls/static/staticlabel.d.ts.map +1 -0
- package/controls/static/staticlabel.ngfactory.d.ts +4 -0
- package/controls/static/staticlabel.ngfactory.d.ts.map +1 -0
- package/controls/static/staticlabel.ngsummary.d.ts +2 -0
- package/controls/static/staticlabel.ngsummary.d.ts.map +1 -0
- package/controls/tabs/tab.d.ts +49 -0
- package/controls/tabs/tab.d.ts.map +1 -0
- package/controls/tabs/tab.ngfactory.d.ts +4 -0
- package/controls/tabs/tab.ngfactory.d.ts.map +1 -0
- package/controls/tabs/tab.ngsummary.d.ts +2 -0
- package/controls/tabs/tab.ngsummary.d.ts.map +1 -0
- package/controls/tabs/tabitem.d.ts +34 -0
- package/controls/tabs/tabitem.d.ts.map +1 -0
- package/controls/tabs/tabitem.ngfactory.d.ts +4 -0
- package/controls/tabs/tabitem.ngfactory.d.ts.map +1 -0
- package/controls/tabs/tabitem.ngsummary.d.ts +2 -0
- package/controls/tabs/tabitem.ngsummary.d.ts.map +1 -0
- package/controls/tinymce/tinymce.d.ts +153 -0
- package/controls/tinymce/tinymce.d.ts.map +1 -0
- package/controls/tinymce/tinymce.ngfactory.d.ts +4 -0
- package/controls/tinymce/tinymce.ngfactory.d.ts.map +1 -0
- package/controls/tinymce/tinymce.ngsummary.d.ts +2 -0
- package/controls/tinymce/tinymce.ngsummary.d.ts.map +1 -0
- package/controls/tinymce/tinymcedialogsettings.d.ts +28 -0
- package/controls/tinymce/tinymcedialogsettings.d.ts.map +1 -0
- package/controls/tinymce/tinymcedialogsettings.ngfactory.d.ts +2 -0
- package/controls/tinymce/tinymcedialogsettings.ngfactory.d.ts.map +1 -0
- package/controls/tinymce/tinymcedialogsettings.ngsummary.d.ts +2 -0
- package/controls/tinymce/tinymcedialogsettings.ngsummary.d.ts.map +1 -0
- package/controls/tinymce/tinymcedialogsettingsmeta.d.ts +10 -0
- package/controls/tinymce/tinymcedialogsettingsmeta.d.ts.map +1 -0
- package/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.d.ts +2 -0
- package/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.d.ts.map +1 -0
- package/controls/tinymce/tinymcedialogsettingsmeta.ngsummary.d.ts +2 -0
- package/controls/tinymce/tinymcedialogsettingsmeta.ngsummary.d.ts.map +1 -0
- package/controls/tinymce/tinymceinstance.d.ts +11 -0
- package/controls/tinymce/tinymceinstance.d.ts.map +1 -0
- package/controls/tinymce/tinymceinstance.ngfactory.d.ts +2 -0
- package/controls/tinymce/tinymceinstance.ngfactory.d.ts.map +1 -0
- package/controls/tinymce/tinymceinstance.ngsummary.d.ts +2 -0
- package/controls/tinymce/tinymceinstance.ngsummary.d.ts.map +1 -0
- package/controls/tooltip/tooltip.d.ts +142 -0
- package/controls/tooltip/tooltip.d.ts.map +1 -0
- package/controls/tooltip/tooltip.ngfactory.d.ts +4 -0
- package/controls/tooltip/tooltip.ngfactory.d.ts.map +1 -0
- package/controls/tooltip/tooltip.ngsummary.d.ts +2 -0
- package/controls/tooltip/tooltip.ngsummary.d.ts.map +1 -0
- package/controls/treeview/ngtreeitemaction.d.ts +44 -0
- package/controls/treeview/ngtreeitemaction.d.ts.map +1 -0
- package/controls/treeview/ngtreeitemaction.ngfactory.d.ts +4 -0
- package/controls/treeview/ngtreeitemaction.ngfactory.d.ts.map +1 -0
- package/controls/treeview/ngtreeitemaction.ngsummary.d.ts +2 -0
- package/controls/treeview/ngtreeitemaction.ngsummary.d.ts.map +1 -0
- package/controls/treeview/treeview.d.ts +189 -0
- package/controls/treeview/treeview.d.ts.map +1 -0
- package/controls/treeview/treeview.ngfactory.d.ts +4 -0
- package/controls/treeview/treeview.ngfactory.d.ts.map +1 -0
- package/controls/treeview/treeview.ngsummary.d.ts +2 -0
- package/controls/treeview/treeview.ngsummary.d.ts.map +1 -0
- package/controls/treeview/treeviewchild.d.ts +16 -0
- package/controls/treeview/treeviewchild.d.ts.map +1 -0
- package/controls/treeview/treeviewchild.ngfactory.d.ts +4 -0
- package/controls/treeview/treeviewchild.ngfactory.d.ts.map +1 -0
- package/controls/treeview/treeviewchild.ngsummary.d.ts +2 -0
- package/controls/treeview/treeviewchild.ngsummary.d.ts.map +1 -0
- package/controls/upload/dropzonemultiple.d.ts +74 -0
- package/controls/upload/dropzonemultiple.d.ts.map +1 -0
- package/controls/upload/dropzonemultiple.ngfactory.d.ts +4 -0
- package/controls/upload/dropzonemultiple.ngfactory.d.ts.map +1 -0
- package/controls/upload/dropzonemultiple.ngsummary.d.ts +2 -0
- package/controls/upload/dropzonemultiple.ngsummary.d.ts.map +1 -0
- package/controls/upload/dropzonesingle.d.ts +51 -0
- package/controls/upload/dropzonesingle.d.ts.map +1 -0
- package/controls/upload/dropzonesingle.ngfactory.d.ts +4 -0
- package/controls/upload/dropzonesingle.ngfactory.d.ts.map +1 -0
- package/controls/upload/dropzonesingle.ngsummary.d.ts +2 -0
- package/controls/upload/dropzonesingle.ngsummary.d.ts.map +1 -0
- package/controls/upload/uploadmultiple.d.ts +54 -0
- package/controls/upload/uploadmultiple.d.ts.map +1 -0
- package/controls/upload/uploadmultiple.ngfactory.d.ts +4 -0
- package/controls/upload/uploadmultiple.ngfactory.d.ts.map +1 -0
- package/controls/upload/uploadmultiple.ngsummary.d.ts +2 -0
- package/controls/upload/uploadmultiple.ngsummary.d.ts.map +1 -0
- package/controls/upload/uploadsingle.d.ts +31 -0
- package/controls/upload/uploadsingle.d.ts.map +1 -0
- package/controls/upload/uploadsingle.ngfactory.d.ts +4 -0
- package/controls/upload/uploadsingle.ngfactory.d.ts.map +1 -0
- package/controls/upload/uploadsingle.ngsummary.d.ts +2 -0
- package/controls/upload/uploadsingle.ngsummary.d.ts.map +1 -0
- package/controls/validation/validationsummary.d.ts +59 -0
- package/controls/validation/validationsummary.d.ts.map +1 -0
- package/controls/validation/validationsummary.ngfactory.d.ts +4 -0
- package/controls/validation/validationsummary.ngfactory.d.ts.map +1 -0
- package/controls/validation/validationsummary.ngsummary.d.ts +2 -0
- package/controls/validation/validationsummary.ngsummary.d.ts.map +1 -0
- package/controls/wizard/wizard.d.ts +77 -0
- package/controls/wizard/wizard.d.ts.map +1 -0
- package/controls/wizard/wizard.ngfactory.d.ts +4 -0
- package/controls/wizard/wizard.ngfactory.d.ts.map +1 -0
- package/controls/wizard/wizard.ngsummary.d.ts +2 -0
- package/controls/wizard/wizard.ngsummary.d.ts.map +1 -0
- package/controls/wizard/wizarditem.d.ts +29 -0
- package/controls/wizard/wizarditem.d.ts.map +1 -0
- package/controls/wizard/wizarditem.ngfactory.d.ts +4 -0
- package/controls/wizard/wizarditem.ngfactory.d.ts.map +1 -0
- package/controls/wizard/wizarditem.ngsummary.d.ts +2 -0
- package/controls/wizard/wizarditem.ngsummary.d.ts.map +1 -0
- package/enums/IconType.d.ts +8 -0
- package/enums/IconType.d.ts.map +1 -0
- package/enums/IconType.ngfactory.d.ts +2 -0
- package/enums/IconType.ngfactory.d.ts.map +1 -0
- package/enums/IconType.ngsummary.d.ts +2 -0
- package/enums/IconType.ngsummary.d.ts.map +1 -0
- package/esm2020/common/basedatetimecontrol.mjs +173 -0
- package/esm2020/common/basedatetimecontrol.ngfactory.mjs +4 -0
- package/esm2020/common/basedatetimecontrol.ngsummary.mjs +2 -0
- package/esm2020/common/baseinputcontrol.mjs +85 -0
- package/esm2020/common/baseinputcontrol.ngfactory.mjs +4 -0
- package/esm2020/common/baseinputcontrol.ngsummary.mjs +2 -0
- package/esm2020/common/baselistcontrol.mjs +63 -0
- package/esm2020/common/baselistcontrol.ngfactory.mjs +4 -0
- package/esm2020/common/baselistcontrol.ngsummary.mjs +2 -0
- package/esm2020/common/basemodelcontrol.mjs +367 -0
- package/esm2020/common/basemodelcontrol.ngfactory.mjs +4 -0
- package/esm2020/common/basemodelcontrol.ngsummary.mjs +2 -0
- package/esm2020/common/baseselectcontrol.mjs +29 -0
- package/esm2020/common/baseselectcontrol.ngfactory.mjs +4 -0
- package/esm2020/common/baseselectcontrol.ngsummary.mjs +2 -0
- package/esm2020/common/baseuploadcontrol.mjs +460 -0
- package/esm2020/common/baseuploadcontrol.ngfactory.mjs +4 -0
- package/esm2020/common/baseuploadcontrol.ngsummary.mjs +2 -0
- package/esm2020/components/browser/browser.mjs +553 -0
- package/esm2020/components/browser/browser.ngfactory.mjs +4 -0
- package/esm2020/components/browser/browser.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browserfile.mjs +2 -0
- package/esm2020/components/browser/models/browserfile.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browserfile.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browserfiledeleterequest.mjs +13 -0
- package/esm2020/components/browser/models/browserfiledeleterequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browserfiledeleterequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browserfilerenamerequest.mjs +13 -0
- package/esm2020/components/browser/models/browserfilerenamerequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browserfilerenamerequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browserfileresponse.mjs +2 -0
- package/esm2020/components/browser/models/browserfileresponse.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browserfileresponse.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browserfilesaverequest.mjs +13 -0
- package/esm2020/components/browser/models/browserfilesaverequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browserfilesaverequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browsernode.mjs +2 -0
- package/esm2020/components/browser/models/browsernode.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browsernode.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browsernodedeleterequest.mjs +13 -0
- package/esm2020/components/browser/models/browsernodedeleterequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browsernodedeleterequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browsernodenewrequest.mjs +13 -0
- package/esm2020/components/browser/models/browsernodenewrequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browsernodenewrequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderenamerequest.mjs +13 -0
- package/esm2020/components/browser/models/browsernoderenamerequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderenamerequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderequest.mjs +13 -0
- package/esm2020/components/browser/models/browsernoderequest.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderequest.ngsummary.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderesponse.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderesponse.ngfactory.mjs +2 -0
- package/esm2020/components/browser/models/browsernoderesponse.ngsummary.mjs +2 -0
- package/esm2020/controls/buttons/button.mjs +143 -0
- package/esm2020/controls/buttons/button.ngfactory.mjs +4 -0
- package/esm2020/controls/buttons/button.ngsummary.mjs +2 -0
- package/esm2020/controls/checkbox/checkbox.mjs +31 -0
- package/esm2020/controls/checkbox/checkbox.ngfactory.mjs +4 -0
- package/esm2020/controls/checkbox/checkbox.ngsummary.mjs +2 -0
- package/esm2020/controls/checkbox/radiobutton.mjs +109 -0
- package/esm2020/controls/checkbox/radiobutton.ngfactory.mjs +4 -0
- package/esm2020/controls/checkbox/radiobutton.ngsummary.mjs +2 -0
- package/esm2020/controls/checkbox/radiobuttons.mjs +112 -0
- package/esm2020/controls/checkbox/radiobuttons.ngfactory.mjs +4 -0
- package/esm2020/controls/checkbox/radiobuttons.ngsummary.mjs +2 -0
- package/esm2020/controls/confirm/confirm.button.mjs +23 -0
- package/esm2020/controls/confirm/confirm.button.ngfactory.mjs +2 -0
- package/esm2020/controls/confirm/confirm.button.ngsummary.mjs +2 -0
- package/esm2020/controls/confirm/confirm.mjs +80 -0
- package/esm2020/controls/confirm/confirm.ngfactory.mjs +4 -0
- package/esm2020/controls/confirm/confirm.ngsummary.mjs +2 -0
- package/esm2020/controls/confirm/confirm.service.mjs +82 -0
- package/esm2020/controls/confirm/confirm.service.ngfactory.mjs +2 -0
- package/esm2020/controls/confirm/confirm.service.ngsummary.mjs +2 -0
- package/esm2020/controls/contextmenu/contextmenu.mjs +191 -0
- package/esm2020/controls/contextmenu/contextmenu.ngfactory.mjs +4 -0
- package/esm2020/controls/contextmenu/contextmenu.ngsummary.mjs +2 -0
- package/esm2020/controls/contextmenu/contextmenuanchor.mjs +20 -0
- package/esm2020/controls/contextmenu/contextmenuanchor.ngfactory.mjs +4 -0
- package/esm2020/controls/contextmenu/contextmenuanchor.ngsummary.mjs +2 -0
- package/esm2020/controls/contextmenu/contextmenucontainer.mjs +20 -0
- package/esm2020/controls/contextmenu/contextmenucontainer.ngfactory.mjs +4 -0
- package/esm2020/controls/contextmenu/contextmenucontainer.ngsummary.mjs +2 -0
- package/esm2020/controls/contextmenu/contextmenuitem.mjs +13 -0
- package/esm2020/controls/contextmenu/contextmenuitem.ngfactory.mjs +4 -0
- package/esm2020/controls/contextmenu/contextmenuitem.ngsummary.mjs +2 -0
- package/esm2020/controls/contextmenu/contextmenuitembutton.mjs +103 -0
- package/esm2020/controls/contextmenu/contextmenuitembutton.ngfactory.mjs +4 -0
- package/esm2020/controls/contextmenu/contextmenuitembutton.ngsummary.mjs +2 -0
- package/esm2020/controls/datetime/date.mjs +218 -0
- package/esm2020/controls/datetime/date.ngfactory.mjs +4 -0
- package/esm2020/controls/datetime/date.ngsummary.mjs +2 -0
- package/esm2020/controls/datetime/dateselector.mjs +462 -0
- package/esm2020/controls/datetime/dateselector.ngfactory.mjs +4 -0
- package/esm2020/controls/datetime/dateselector.ngsummary.mjs +2 -0
- package/esm2020/controls/datetime/datetime.mjs +236 -0
- package/esm2020/controls/datetime/datetime.ngfactory.mjs +4 -0
- package/esm2020/controls/datetime/datetime.ngsummary.mjs +2 -0
- package/esm2020/controls/datetime/time.mjs +217 -0
- package/esm2020/controls/datetime/time.ngfactory.mjs +4 -0
- package/esm2020/controls/datetime/time.ngsummary.mjs +2 -0
- package/esm2020/controls/dialog/dialog.mjs +221 -0
- package/esm2020/controls/dialog/dialog.ngfactory.mjs +4 -0
- package/esm2020/controls/dialog/dialog.ngsummary.mjs +2 -0
- package/esm2020/controls/form/form.mjs +163 -0
- package/esm2020/controls/form/form.ngfactory.mjs +4 -0
- package/esm2020/controls/form/form.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/grid.mjs +156 -0
- package/esm2020/controls/grid/grid.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/grid.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/gridbutton.mjs +59 -0
- package/esm2020/controls/grid/gridbutton.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/gridbutton.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/gridcolumn.mjs +46 -0
- package/esm2020/controls/grid/gridcolumn.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/gridcolumn.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/gridcolumnaction.mjs +24 -0
- package/esm2020/controls/grid/gridcolumnaction.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/gridcolumnaction.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/gridcolumnbase.mjs +128 -0
- package/esm2020/controls/grid/gridcolumnbase.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/gridcolumnbase.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/gridimage.mjs +15 -0
- package/esm2020/controls/grid/gridimage.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/gridimage.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/model.mjs +79 -0
- package/esm2020/controls/grid/model.ngfactory.mjs +2 -0
- package/esm2020/controls/grid/model.ngsummary.mjs +2 -0
- package/esm2020/controls/grid/paging.mjs +253 -0
- package/esm2020/controls/grid/paging.ngfactory.mjs +4 -0
- package/esm2020/controls/grid/paging.ngsummary.mjs +2 -0
- package/esm2020/controls/input/input.mjs +69 -0
- package/esm2020/controls/input/input.ngfactory.mjs +4 -0
- package/esm2020/controls/input/input.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputarea.mjs +58 -0
- package/esm2020/controls/input/inputarea.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputarea.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputcurrency.mjs +14 -0
- package/esm2020/controls/input/inputcurrency.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputcurrency.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputdecimal.mjs +150 -0
- package/esm2020/controls/input/inputdecimal.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputdecimal.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputemail.mjs +40 -0
- package/esm2020/controls/input/inputemail.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputemail.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputinteger.mjs +134 -0
- package/esm2020/controls/input/inputinteger.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputinteger.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputpassword.mjs +46 -0
- package/esm2020/controls/input/inputpassword.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputpassword.ngsummary.mjs +2 -0
- package/esm2020/controls/input/inputsearch.mjs +41 -0
- package/esm2020/controls/input/inputsearch.ngfactory.mjs +4 -0
- package/esm2020/controls/input/inputsearch.ngsummary.mjs +2 -0
- package/esm2020/controls/list/dropdown.mjs +249 -0
- package/esm2020/controls/list/dropdown.ngfactory.mjs +4 -0
- package/esm2020/controls/list/dropdown.ngsummary.mjs +3 -0
- package/esm2020/controls/list/list.module.mjs +16 -0
- package/esm2020/controls/list/list.module.ngfactory.mjs +4 -0
- package/esm2020/controls/list/list.module.ngsummary.mjs +2 -0
- package/esm2020/controls/list/listbox.mjs +175 -0
- package/esm2020/controls/list/listbox.ngfactory.mjs +4 -0
- package/esm2020/controls/list/listbox.ngsummary.mjs +3 -0
- package/esm2020/controls/multilanguage/multilanguageinput.mjs +228 -0
- package/esm2020/controls/multilanguage/multilanguageinput.ngfactory.mjs +4 -0
- package/esm2020/controls/multilanguage/multilanguageinput.ngsummary.mjs +2 -0
- package/esm2020/controls/multilanguage/multilanguageinputarea.mjs +230 -0
- package/esm2020/controls/multilanguage/multilanguageinputarea.ngfactory.mjs +4 -0
- package/esm2020/controls/multilanguage/multilanguageinputarea.ngsummary.mjs +2 -0
- package/esm2020/controls/static/formcontainer.mjs +53 -0
- package/esm2020/controls/static/formcontainer.ngfactory.mjs +4 -0
- package/esm2020/controls/static/formcontainer.ngsummary.mjs +2 -0
- package/esm2020/controls/static/staticlabel.mjs +33 -0
- package/esm2020/controls/static/staticlabel.ngfactory.mjs +4 -0
- package/esm2020/controls/static/staticlabel.ngsummary.mjs +2 -0
- package/esm2020/controls/tabs/tab.mjs +77 -0
- package/esm2020/controls/tabs/tab.ngfactory.mjs +4 -0
- package/esm2020/controls/tabs/tab.ngsummary.mjs +2 -0
- package/esm2020/controls/tabs/tabitem.mjs +40 -0
- package/esm2020/controls/tabs/tabitem.ngfactory.mjs +4 -0
- package/esm2020/controls/tabs/tabitem.ngsummary.mjs +2 -0
- package/esm2020/controls/tinymce/tinymce.mjs +249 -0
- package/esm2020/controls/tinymce/tinymce.ngfactory.mjs +4 -0
- package/esm2020/controls/tinymce/tinymce.ngsummary.mjs +2 -0
- package/esm2020/controls/tinymce/tinymcedialogsettings.mjs +13 -0
- package/esm2020/controls/tinymce/tinymcedialogsettings.ngfactory.mjs +2 -0
- package/esm2020/controls/tinymce/tinymcedialogsettings.ngsummary.mjs +2 -0
- package/esm2020/controls/tinymce/tinymcedialogsettingsmeta.mjs +5 -0
- package/esm2020/controls/tinymce/tinymcedialogsettingsmeta.ngfactory.mjs +2 -0
- package/esm2020/controls/tinymce/tinymcedialogsettingsmeta.ngsummary.mjs +2 -0
- package/esm2020/controls/tinymce/tinymceinstance.mjs +2 -0
- package/esm2020/controls/tinymce/tinymceinstance.ngfactory.mjs +2 -0
- package/esm2020/controls/tinymce/tinymceinstance.ngsummary.mjs +2 -0
- package/esm2020/controls/tooltip/tooltip.mjs +365 -0
- package/esm2020/controls/tooltip/tooltip.ngfactory.mjs +4 -0
- package/esm2020/controls/tooltip/tooltip.ngsummary.mjs +2 -0
- package/esm2020/controls/treeview/ngtreeitemaction.mjs +62 -0
- package/esm2020/controls/treeview/ngtreeitemaction.ngfactory.mjs +4 -0
- package/esm2020/controls/treeview/ngtreeitemaction.ngsummary.mjs +2 -0
- package/esm2020/controls/treeview/treeview.mjs +343 -0
- package/esm2020/controls/treeview/treeview.ngfactory.mjs +4 -0
- package/esm2020/controls/treeview/treeview.ngsummary.mjs +2 -0
- package/esm2020/controls/treeview/treeviewchild.mjs +21 -0
- package/esm2020/controls/treeview/treeviewchild.ngfactory.mjs +4 -0
- package/esm2020/controls/treeview/treeviewchild.ngsummary.mjs +2 -0
- package/esm2020/controls/upload/dropzonemultiple.mjs +165 -0
- package/esm2020/controls/upload/dropzonemultiple.ngfactory.mjs +4 -0
- package/esm2020/controls/upload/dropzonemultiple.ngsummary.mjs +2 -0
- package/esm2020/controls/upload/dropzonesingle.mjs +106 -0
- package/esm2020/controls/upload/dropzonesingle.ngfactory.mjs +4 -0
- package/esm2020/controls/upload/dropzonesingle.ngsummary.mjs +2 -0
- package/esm2020/controls/upload/uploadmultiple.mjs +124 -0
- package/esm2020/controls/upload/uploadmultiple.ngfactory.mjs +4 -0
- package/esm2020/controls/upload/uploadmultiple.ngsummary.mjs +2 -0
- package/esm2020/controls/upload/uploadsingle.mjs +58 -0
- package/esm2020/controls/upload/uploadsingle.ngfactory.mjs +4 -0
- package/esm2020/controls/upload/uploadsingle.ngsummary.mjs +2 -0
- package/esm2020/controls/validation/validationsummary.mjs +127 -0
- package/esm2020/controls/validation/validationsummary.ngfactory.mjs +4 -0
- package/esm2020/controls/validation/validationsummary.ngsummary.mjs +2 -0
- package/esm2020/controls/wizard/wizard.mjs +144 -0
- package/esm2020/controls/wizard/wizard.ngfactory.mjs +4 -0
- package/esm2020/controls/wizard/wizard.ngsummary.mjs +2 -0
- package/esm2020/controls/wizard/wizarditem.mjs +33 -0
- package/esm2020/controls/wizard/wizarditem.ngfactory.mjs +4 -0
- package/esm2020/controls/wizard/wizarditem.ngsummary.mjs +2 -0
- package/esm2020/enums/IconType.mjs +9 -0
- package/esm2020/enums/IconType.ngfactory.mjs +2 -0
- package/esm2020/enums/IconType.ngsummary.mjs +2 -0
- package/esm2020/interfaces/ISacFileBrowserService.mjs +2 -0
- package/esm2020/interfaces/ISacFileBrowserService.ngfactory.mjs +2 -0
- package/esm2020/interfaces/ISacFileBrowserService.ngsummary.mjs +2 -0
- package/esm2020/interfaces/ISacIconService.mjs +2 -0
- package/esm2020/interfaces/ISacIconService.ngfactory.mjs +2 -0
- package/esm2020/interfaces/ISacIconService.ngsummary.mjs +2 -0
- package/esm2020/interfaces/ISacLanguageService.mjs +2 -0
- package/esm2020/interfaces/ISacLanguageService.ngfactory.mjs +2 -0
- package/esm2020/interfaces/ISacLanguageService.ngsummary.mjs +2 -0
- package/esm2020/interfaces/ISacLocalisationService.mjs +2 -0
- package/esm2020/interfaces/ISacLocalisationService.ngfactory.mjs +2 -0
- package/esm2020/interfaces/ISacLocalisationService.ngsummary.mjs +2 -0
- package/esm2020/interfaces/iabstractcontrollabel.mjs +2 -0
- package/esm2020/interfaces/iabstractcontrollabel.ngfactory.mjs +2 -0
- package/esm2020/interfaces/iabstractcontrollabel.ngsummary.mjs +2 -0
- package/esm2020/interfaces/iconfirmcomponent.mjs +2 -0
- package/esm2020/interfaces/iconfirmcomponent.ngfactory.mjs +2 -0
- package/esm2020/interfaces/iconfirmcomponent.ngsummary.mjs +2 -0
- package/esm2020/interfaces/idatetimecontrol.mjs +2 -0
- package/esm2020/interfaces/idatetimecontrol.ngfactory.mjs +2 -0
- package/esm2020/interfaces/idatetimecontrol.ngsummary.mjs +2 -0
- package/esm2020/interfaces/iuploadcontrol.mjs +2 -0
- package/esm2020/interfaces/iuploadcontrol.ngfactory.mjs +2 -0
- package/esm2020/interfaces/iuploadcontrol.ngsummary.mjs +2 -0
- package/esm2020/models/languagemodel.mjs +13 -0
- package/esm2020/models/languagemodel.ngfactory.mjs +2 -0
- package/esm2020/models/languagemodel.ngsummary.mjs +2 -0
- package/esm2020/public_api.mjs +96 -0
- package/esm2020/public_api.ngfactory.mjs +2 -0
- package/esm2020/public_api.ngsummary.mjs +2 -0
- package/esm2020/services/index.mjs +5 -0
- package/esm2020/services/index.ngfactory.mjs +2 -0
- package/esm2020/services/index.ngsummary.mjs +2 -0
- package/esm2020/services/sac-filebrowser.service.mjs +203 -0
- package/esm2020/services/sac-filebrowser.service.ngfactory.mjs +4 -0
- package/esm2020/services/sac-filebrowser.service.ngsummary.mjs +3 -0
- package/esm2020/services/sac-icon.service.mjs +159 -0
- package/esm2020/services/sac-icon.service.ngfactory.mjs +4 -0
- package/esm2020/services/sac-icon.service.ngsummary.mjs +3 -0
- package/esm2020/services/sac-language.service.mjs +47 -0
- package/esm2020/services/sac-language.service.ngfactory.mjs +4 -0
- package/esm2020/services/sac-language.service.ngsummary.mjs +3 -0
- package/esm2020/services/sac-localisation.service.mjs +433 -0
- package/esm2020/services/sac-localisation.service.ngfactory.mjs +4 -0
- package/esm2020/services/sac-localisation.service.ngsummary.mjs +3 -0
- package/esm2020/simpleangularcontrols-sac-common.mjs +5 -0
- package/esm2020/utilities/convertion.mjs +32 -0
- package/esm2020/utilities/convertion.ngfactory.mjs +2 -0
- package/esm2020/utilities/convertion.ngsummary.mjs +2 -0
- package/esm2020/utilities/datatypes.mjs +9 -0
- package/esm2020/utilities/datatypes.ngfactory.mjs +2 -0
- package/esm2020/utilities/datatypes.ngsummary.mjs +2 -0
- package/esm2020/utilities/enums.mjs +16 -0
- package/esm2020/utilities/enums.ngfactory.mjs +2 -0
- package/esm2020/utilities/enums.ngsummary.mjs +2 -0
- package/esm2020/utilities/interpolation.mjs +50 -0
- package/esm2020/utilities/interpolation.ngfactory.mjs +2 -0
- package/esm2020/utilities/interpolation.ngsummary.mjs +2 -0
- package/esm2020/utilities/positioning.mjs +301 -0
- package/esm2020/utilities/positioning.ngfactory.mjs +2 -0
- package/esm2020/utilities/positioning.ngsummary.mjs +2 -0
- package/esm2020/validation/email.validator.mjs +13 -0
- package/esm2020/validation/email.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/email.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/index.mjs +3 -0
- package/esm2020/validation/index.ngfactory.mjs +2 -0
- package/esm2020/validation/index.ngsummary.mjs +2 -0
- package/esm2020/validation/invaliddate.validator.mjs +14 -0
- package/esm2020/validation/invaliddate.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/invaliddate.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/isDateValid.mjs +15 -0
- package/esm2020/validation/isDateValid.ngfactory.mjs +2 -0
- package/esm2020/validation/isDateValid.ngsummary.mjs +2 -0
- package/esm2020/validation/maxdate.validator.mjs +21 -0
- package/esm2020/validation/maxdate.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/maxdate.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/maxtime.validator.mjs +21 -0
- package/esm2020/validation/maxtime.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/maxtime.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/maxvalue.validator.mjs +16 -0
- package/esm2020/validation/maxvalue.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/maxvalue.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/mindate.validator.mjs +21 -0
- package/esm2020/validation/mindate.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/mindate.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/minfiles.validator.mjs +19 -0
- package/esm2020/validation/minfiles.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/minfiles.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/minlength.validator.mjs +21 -0
- package/esm2020/validation/minlength.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/minlength.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/mintime.validator.mjs +21 -0
- package/esm2020/validation/mintime.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/mintime.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/minvalue.validator.mjs +16 -0
- package/esm2020/validation/minvalue.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/minvalue.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/multilanguagerequired.validator.mjs +22 -0
- package/esm2020/validation/multilanguagerequired.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/multilanguagerequired.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/multilanguagerequiredany.validator.mjs +22 -0
- package/esm2020/validation/multilanguagerequiredany.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/multilanguagerequiredany.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/pattern.validator.mjs +16 -0
- package/esm2020/validation/pattern.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/pattern.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/required.validator.mjs +13 -0
- package/esm2020/validation/required.validator.ngfactory.mjs +2 -0
- package/esm2020/validation/required.validator.ngsummary.mjs +2 -0
- package/esm2020/validation/validation.mjs +188 -0
- package/esm2020/validation/validation.ngfactory.mjs +2 -0
- package/esm2020/validation/validation.ngsummary.mjs +2 -0
- package/esm2020/validation/validationerrorcreator.mjs +11 -0
- package/esm2020/validation/validationerrorcreator.ngfactory.mjs +2 -0
- package/esm2020/validation/validationerrorcreator.ngsummary.mjs +2 -0
- package/esm2020/validation/validationerroritem.mjs +27 -0
- package/esm2020/validation/validationerroritem.ngfactory.mjs +2 -0
- package/esm2020/validation/validationerroritem.ngsummary.mjs +2 -0
- package/fesm2015/simpleangularcontrols-sac-common.mjs +9983 -0
- package/fesm2015/simpleangularcontrols-sac-common.mjs.map +1 -0
- package/fesm2020/simpleangularcontrols-sac-common.mjs +9972 -0
- package/fesm2020/simpleangularcontrols-sac-common.mjs.map +1 -0
- package/interfaces/ISacFileBrowserService.d.ts +66 -0
- package/interfaces/ISacFileBrowserService.d.ts.map +1 -0
- package/interfaces/ISacFileBrowserService.ngfactory.d.ts +2 -0
- package/interfaces/ISacFileBrowserService.ngfactory.d.ts.map +1 -0
- package/interfaces/ISacFileBrowserService.ngsummary.d.ts +2 -0
- package/interfaces/ISacFileBrowserService.ngsummary.d.ts.map +1 -0
- package/interfaces/ISacIconService.d.ts +90 -0
- package/interfaces/ISacIconService.d.ts.map +1 -0
- package/interfaces/ISacIconService.ngfactory.d.ts +2 -0
- package/interfaces/ISacIconService.ngfactory.d.ts.map +1 -0
- package/interfaces/ISacIconService.ngsummary.d.ts +2 -0
- package/interfaces/ISacIconService.ngsummary.d.ts.map +1 -0
- package/interfaces/ISacLanguageService.d.ts +13 -0
- package/interfaces/ISacLanguageService.d.ts.map +1 -0
- package/interfaces/ISacLanguageService.ngfactory.d.ts +2 -0
- package/interfaces/ISacLanguageService.ngfactory.d.ts.map +1 -0
- package/interfaces/ISacLanguageService.ngsummary.d.ts +2 -0
- package/interfaces/ISacLanguageService.ngsummary.d.ts.map +1 -0
- package/interfaces/ISacLocalisationService.d.ts +11 -0
- package/interfaces/ISacLocalisationService.d.ts.map +1 -0
- package/interfaces/ISacLocalisationService.ngfactory.d.ts +2 -0
- package/interfaces/ISacLocalisationService.ngfactory.d.ts.map +1 -0
- package/interfaces/ISacLocalisationService.ngsummary.d.ts +2 -0
- package/interfaces/ISacLocalisationService.ngsummary.d.ts.map +1 -0
- package/interfaces/iabstractcontrollabel.d.ts +7 -0
- package/interfaces/iabstractcontrollabel.d.ts.map +1 -0
- package/interfaces/iabstractcontrollabel.ngfactory.d.ts +2 -0
- package/interfaces/iabstractcontrollabel.ngfactory.d.ts.map +1 -0
- package/interfaces/iabstractcontrollabel.ngsummary.d.ts +2 -0
- package/interfaces/iabstractcontrollabel.ngsummary.d.ts.map +1 -0
- package/interfaces/iconfirmcomponent.d.ts +19 -0
- package/interfaces/iconfirmcomponent.d.ts.map +1 -0
- package/interfaces/iconfirmcomponent.ngfactory.d.ts +2 -0
- package/interfaces/iconfirmcomponent.ngfactory.d.ts.map +1 -0
- package/interfaces/iconfirmcomponent.ngsummary.d.ts +2 -0
- package/interfaces/iconfirmcomponent.ngsummary.d.ts.map +1 -0
- package/interfaces/idatetimecontrol.d.ts +8 -0
- package/interfaces/idatetimecontrol.d.ts.map +1 -0
- package/interfaces/idatetimecontrol.ngfactory.d.ts +2 -0
- package/interfaces/idatetimecontrol.ngfactory.d.ts.map +1 -0
- package/interfaces/idatetimecontrol.ngsummary.d.ts +2 -0
- package/interfaces/idatetimecontrol.ngsummary.d.ts.map +1 -0
- package/interfaces/iuploadcontrol.d.ts +10 -0
- package/interfaces/iuploadcontrol.d.ts.map +1 -0
- package/interfaces/iuploadcontrol.ngfactory.d.ts +2 -0
- package/interfaces/iuploadcontrol.ngfactory.d.ts.map +1 -0
- package/interfaces/iuploadcontrol.ngsummary.d.ts +2 -0
- package/interfaces/iuploadcontrol.ngsummary.d.ts.map +1 -0
- package/models/languagemodel.d.ts +23 -0
- package/models/languagemodel.d.ts.map +1 -0
- package/models/languagemodel.ngfactory.d.ts +2 -0
- package/models/languagemodel.ngfactory.d.ts.map +1 -0
- package/models/languagemodel.ngsummary.d.ts +2 -0
- package/models/languagemodel.ngsummary.d.ts.map +1 -0
- package/package.json +45 -0
- package/public_api.d.ts +75 -0
- package/public_api.d.ts.map +1 -0
- package/public_api.ngfactory.d.ts +2 -0
- package/public_api.ngfactory.d.ts.map +1 -0
- package/public_api.ngsummary.d.ts +2 -0
- package/public_api.ngsummary.d.ts.map +1 -0
- package/services/index.d.ts +5 -0
- package/services/index.d.ts.map +1 -0
- package/services/index.ngfactory.d.ts +2 -0
- package/services/index.ngfactory.d.ts.map +1 -0
- package/services/index.ngsummary.d.ts +2 -0
- package/services/index.ngsummary.d.ts.map +1 -0
- package/services/sac-filebrowser.service.d.ts +146 -0
- package/services/sac-filebrowser.service.d.ts.map +1 -0
- package/services/sac-filebrowser.service.ngfactory.d.ts +5 -0
- package/services/sac-filebrowser.service.ngfactory.d.ts.map +1 -0
- package/services/sac-filebrowser.service.ngsummary.d.ts +3 -0
- package/services/sac-filebrowser.service.ngsummary.d.ts.map +1 -0
- package/services/sac-icon.service.d.ts +190 -0
- package/services/sac-icon.service.d.ts.map +1 -0
- package/services/sac-icon.service.ngfactory.d.ts +5 -0
- package/services/sac-icon.service.ngfactory.d.ts.map +1 -0
- package/services/sac-icon.service.ngsummary.d.ts +3 -0
- package/services/sac-icon.service.ngsummary.d.ts.map +1 -0
- package/services/sac-language.service.d.ts +32 -0
- package/services/sac-language.service.d.ts.map +1 -0
- package/services/sac-language.service.ngfactory.d.ts +5 -0
- package/services/sac-language.service.ngfactory.d.ts.map +1 -0
- package/services/sac-language.service.ngsummary.d.ts +3 -0
- package/services/sac-language.service.ngsummary.d.ts.map +1 -0
- package/services/sac-localisation.service.d.ts +137 -0
- package/services/sac-localisation.service.d.ts.map +1 -0
- package/services/sac-localisation.service.ngfactory.d.ts +5 -0
- package/services/sac-localisation.service.ngfactory.d.ts.map +1 -0
- package/services/sac-localisation.service.ngsummary.d.ts +3 -0
- package/services/sac-localisation.service.ngsummary.d.ts.map +1 -0
- package/simpleangularcontrols-sac-common-13.0.0-rc.2.tgz +0 -0
- package/simpleangularcontrols-sac-common.d.ts +6 -0
- package/simpleangularcontrols-sac-common.d.ts.map +1 -0
- package/utilities/convertion.d.ts +16 -0
- package/utilities/convertion.d.ts.map +1 -0
- package/utilities/convertion.ngfactory.d.ts +2 -0
- package/utilities/convertion.ngfactory.d.ts.map +1 -0
- package/utilities/convertion.ngsummary.d.ts +2 -0
- package/utilities/convertion.ngsummary.d.ts.map +1 -0
- package/utilities/datatypes.d.ts +7 -0
- package/utilities/datatypes.d.ts.map +1 -0
- package/utilities/datatypes.ngfactory.d.ts +2 -0
- package/utilities/datatypes.ngfactory.d.ts.map +1 -0
- package/utilities/datatypes.ngsummary.d.ts +2 -0
- package/utilities/datatypes.ngsummary.d.ts.map +1 -0
- package/utilities/enums.d.ts +11 -0
- package/utilities/enums.d.ts.map +1 -0
- package/utilities/enums.ngfactory.d.ts +2 -0
- package/utilities/enums.ngfactory.d.ts.map +1 -0
- package/utilities/enums.ngsummary.d.ts +2 -0
- package/utilities/enums.ngsummary.d.ts.map +1 -0
- package/utilities/interpolation.d.ts +22 -0
- package/utilities/interpolation.d.ts.map +1 -0
- package/utilities/interpolation.ngfactory.d.ts +2 -0
- package/utilities/interpolation.ngfactory.d.ts.map +1 -0
- package/utilities/interpolation.ngsummary.d.ts +2 -0
- package/utilities/interpolation.ngsummary.d.ts.map +1 -0
- package/utilities/positioning.d.ts +83 -0
- package/utilities/positioning.d.ts.map +1 -0
- package/utilities/positioning.ngfactory.d.ts +2 -0
- package/utilities/positioning.ngfactory.d.ts.map +1 -0
- package/utilities/positioning.ngsummary.d.ts +2 -0
- package/utilities/positioning.ngsummary.d.ts.map +1 -0
- package/validation/email.validator.d.ts +3 -0
- package/validation/email.validator.d.ts.map +1 -0
- package/validation/email.validator.ngfactory.d.ts +2 -0
- package/validation/email.validator.ngfactory.d.ts.map +1 -0
- package/validation/email.validator.ngsummary.d.ts +2 -0
- package/validation/email.validator.ngsummary.d.ts.map +1 -0
- package/validation/index.d.ts +3 -0
- package/validation/index.d.ts.map +1 -0
- package/validation/index.ngfactory.d.ts +2 -0
- package/validation/index.ngfactory.d.ts.map +1 -0
- package/validation/index.ngsummary.d.ts +2 -0
- package/validation/index.ngsummary.d.ts.map +1 -0
- package/validation/invaliddate.validator.d.ts +3 -0
- package/validation/invaliddate.validator.d.ts.map +1 -0
- package/validation/invaliddate.validator.ngfactory.d.ts +2 -0
- package/validation/invaliddate.validator.ngfactory.d.ts.map +1 -0
- package/validation/invaliddate.validator.ngsummary.d.ts +2 -0
- package/validation/invaliddate.validator.ngsummary.d.ts.map +1 -0
- package/validation/isDateValid.d.ts +6 -0
- package/validation/isDateValid.d.ts.map +1 -0
- package/validation/isDateValid.ngfactory.d.ts +2 -0
- package/validation/isDateValid.ngfactory.d.ts.map +1 -0
- package/validation/isDateValid.ngsummary.d.ts +2 -0
- package/validation/isDateValid.ngsummary.d.ts.map +1 -0
- package/validation/maxdate.validator.d.ts +3 -0
- package/validation/maxdate.validator.d.ts.map +1 -0
- package/validation/maxdate.validator.ngfactory.d.ts +2 -0
- package/validation/maxdate.validator.ngfactory.d.ts.map +1 -0
- package/validation/maxdate.validator.ngsummary.d.ts +2 -0
- package/validation/maxdate.validator.ngsummary.d.ts.map +1 -0
- package/validation/maxtime.validator.d.ts +3 -0
- package/validation/maxtime.validator.d.ts.map +1 -0
- package/validation/maxtime.validator.ngfactory.d.ts +2 -0
- package/validation/maxtime.validator.ngfactory.d.ts.map +1 -0
- package/validation/maxtime.validator.ngsummary.d.ts +2 -0
- package/validation/maxtime.validator.ngsummary.d.ts.map +1 -0
- package/validation/maxvalue.validator.d.ts +3 -0
- package/validation/maxvalue.validator.d.ts.map +1 -0
- package/validation/maxvalue.validator.ngfactory.d.ts +2 -0
- package/validation/maxvalue.validator.ngfactory.d.ts.map +1 -0
- package/validation/maxvalue.validator.ngsummary.d.ts +2 -0
- package/validation/maxvalue.validator.ngsummary.d.ts.map +1 -0
- package/validation/mindate.validator.d.ts +3 -0
- package/validation/mindate.validator.d.ts.map +1 -0
- package/validation/mindate.validator.ngfactory.d.ts +2 -0
- package/validation/mindate.validator.ngfactory.d.ts.map +1 -0
- package/validation/mindate.validator.ngsummary.d.ts +2 -0
- package/validation/mindate.validator.ngsummary.d.ts.map +1 -0
- package/validation/minfiles.validator.d.ts +3 -0
- package/validation/minfiles.validator.d.ts.map +1 -0
- package/validation/minfiles.validator.ngfactory.d.ts +2 -0
- package/validation/minfiles.validator.ngfactory.d.ts.map +1 -0
- package/validation/minfiles.validator.ngsummary.d.ts +2 -0
- package/validation/minfiles.validator.ngsummary.d.ts.map +1 -0
- package/validation/minlength.validator.d.ts +3 -0
- package/validation/minlength.validator.d.ts.map +1 -0
- package/validation/minlength.validator.ngfactory.d.ts +2 -0
- package/validation/minlength.validator.ngfactory.d.ts.map +1 -0
- package/validation/minlength.validator.ngsummary.d.ts +2 -0
- package/validation/minlength.validator.ngsummary.d.ts.map +1 -0
- package/validation/mintime.validator.d.ts +3 -0
- package/validation/mintime.validator.d.ts.map +1 -0
- package/validation/mintime.validator.ngfactory.d.ts +2 -0
- package/validation/mintime.validator.ngfactory.d.ts.map +1 -0
- package/validation/mintime.validator.ngsummary.d.ts +2 -0
- package/validation/mintime.validator.ngsummary.d.ts.map +1 -0
- package/validation/minvalue.validator.d.ts +3 -0
- package/validation/minvalue.validator.d.ts.map +1 -0
- package/validation/minvalue.validator.ngfactory.d.ts +2 -0
- package/validation/minvalue.validator.ngfactory.d.ts.map +1 -0
- package/validation/minvalue.validator.ngsummary.d.ts +2 -0
- package/validation/minvalue.validator.ngsummary.d.ts.map +1 -0
- package/validation/multilanguagerequired.validator.d.ts +4 -0
- package/validation/multilanguagerequired.validator.d.ts.map +1 -0
- package/validation/multilanguagerequired.validator.ngfactory.d.ts +2 -0
- package/validation/multilanguagerequired.validator.ngfactory.d.ts.map +1 -0
- package/validation/multilanguagerequired.validator.ngsummary.d.ts +2 -0
- package/validation/multilanguagerequired.validator.ngsummary.d.ts.map +1 -0
- package/validation/multilanguagerequiredany.validator.d.ts +4 -0
- package/validation/multilanguagerequiredany.validator.d.ts.map +1 -0
- package/validation/multilanguagerequiredany.validator.ngfactory.d.ts +2 -0
- package/validation/multilanguagerequiredany.validator.ngfactory.d.ts.map +1 -0
- package/validation/multilanguagerequiredany.validator.ngsummary.d.ts +2 -0
- package/validation/multilanguagerequiredany.validator.ngsummary.d.ts.map +1 -0
- package/validation/pattern.validator.d.ts +3 -0
- package/validation/pattern.validator.d.ts.map +1 -0
- package/validation/pattern.validator.ngfactory.d.ts +2 -0
- package/validation/pattern.validator.ngfactory.d.ts.map +1 -0
- package/validation/pattern.validator.ngsummary.d.ts +2 -0
- package/validation/pattern.validator.ngsummary.d.ts.map +1 -0
- package/validation/required.validator.d.ts +3 -0
- package/validation/required.validator.d.ts.map +1 -0
- package/validation/required.validator.ngfactory.d.ts +2 -0
- package/validation/required.validator.ngfactory.d.ts.map +1 -0
- package/validation/required.validator.ngsummary.d.ts +2 -0
- package/validation/required.validator.ngsummary.d.ts.map +1 -0
- package/validation/validation.d.ts +140 -0
- package/validation/validation.d.ts.map +1 -0
- package/validation/validation.ngfactory.d.ts +2 -0
- package/validation/validation.ngfactory.d.ts.map +1 -0
- package/validation/validation.ngsummary.d.ts +2 -0
- package/validation/validation.ngsummary.d.ts.map +1 -0
- package/validation/validationerrorcreator.d.ts +2 -0
- package/validation/validationerrorcreator.d.ts.map +1 -0
- package/validation/validationerrorcreator.ngfactory.d.ts +2 -0
- package/validation/validationerrorcreator.ngfactory.d.ts.map +1 -0
- package/validation/validationerrorcreator.ngsummary.d.ts +2 -0
- package/validation/validationerrorcreator.ngsummary.d.ts.map +1 -0
- package/validation/validationerroritem.d.ts +34 -0
- package/validation/validationerroritem.d.ts.map +1 -0
- package/validation/validationerroritem.ngfactory.d.ts +2 -0
- package/validation/validationerroritem.ngfactory.d.ts.map +1 -0
- package/validation/validationerroritem.ngsummary.d.ts +2 -0
- package/validation/validationerroritem.ngsummary.d.ts.map +1 -0
|
@@ -0,0 +1,553 @@
|
|
|
1
|
+
import { Directive, EventEmitter, HostListener, Input, Output, } from '@angular/core';
|
|
2
|
+
import { SACICON_SERVICE, SACLOCALISATION_SERVICE, SacDefaultIconService, } from '../../services';
|
|
3
|
+
import { SACFILEBROWSER_SERVICE, SacDefaultFileBrowserService, } from '../../services/sac-filebrowser.service';
|
|
4
|
+
import { SacDefaultLocalisationService } from '../../services/sac-localisation.service';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common/http";
|
|
7
|
+
/**
|
|
8
|
+
* Base Component für File Browser
|
|
9
|
+
*/
|
|
10
|
+
export class SacFileBrowserCommon {
|
|
11
|
+
// #endregion Properties
|
|
12
|
+
// #region Constructors
|
|
13
|
+
/**
|
|
14
|
+
* Konstruktor
|
|
15
|
+
* @param httpclient Angular HTTP Client
|
|
16
|
+
* @param injector Service Injector
|
|
17
|
+
*/
|
|
18
|
+
constructor(httpclient, injector) {
|
|
19
|
+
/**
|
|
20
|
+
* File welches beim starten des Browsers bereits selektiert ist
|
|
21
|
+
*/
|
|
22
|
+
this.preselecedfile = null;
|
|
23
|
+
/**
|
|
24
|
+
* Erlaubte Dateierweiterungen für Fileauswahl und Upload. Dateierweiterung mit Punkt und
|
|
25
|
+
* getrennt durch Komma für mehr als eine Erweiterung (Example: ".jpg,.gif")
|
|
26
|
+
*/
|
|
27
|
+
this.allowedtypes = '';
|
|
28
|
+
/**
|
|
29
|
+
* Erlaubt das löschen einer Datei
|
|
30
|
+
*/
|
|
31
|
+
this.allowfiledelete = true;
|
|
32
|
+
/**
|
|
33
|
+
* Erlaubt das umbenennen einer Datei
|
|
34
|
+
*/
|
|
35
|
+
this.allowfilerename = true;
|
|
36
|
+
/**
|
|
37
|
+
* Erlaubt den Upload von Dateien
|
|
38
|
+
*/
|
|
39
|
+
this.allowfileupload = true;
|
|
40
|
+
/**
|
|
41
|
+
* Erlaubt das erstellen eines neuen Ordners
|
|
42
|
+
*/
|
|
43
|
+
this.allowfoldercreate = true;
|
|
44
|
+
/**
|
|
45
|
+
* Erlaubt das löschen eines Ordners
|
|
46
|
+
*/
|
|
47
|
+
this.allowfolderdelete = true;
|
|
48
|
+
/**
|
|
49
|
+
* Erlaubt das Umbenennen eines Ordners
|
|
50
|
+
*/
|
|
51
|
+
this.allowfolderrename = true;
|
|
52
|
+
/**
|
|
53
|
+
* Output Emitter wenn File selektiert wird.
|
|
54
|
+
*/
|
|
55
|
+
this.file = new EventEmitter();
|
|
56
|
+
/**
|
|
57
|
+
* Root Node Item für Tree
|
|
58
|
+
*/
|
|
59
|
+
this.rootNode = {
|
|
60
|
+
Name: '',
|
|
61
|
+
ChildNodes: [],
|
|
62
|
+
Files: [],
|
|
63
|
+
IsExpanded: true,
|
|
64
|
+
IsEditMode: false,
|
|
65
|
+
IsNewNode: false,
|
|
66
|
+
Path: '',
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Selected File Item
|
|
70
|
+
*/
|
|
71
|
+
this.selectedFileItem = null;
|
|
72
|
+
/**
|
|
73
|
+
* Selected Node Item
|
|
74
|
+
*/
|
|
75
|
+
this.selectedNode = null;
|
|
76
|
+
/**
|
|
77
|
+
* Liste von Uploads
|
|
78
|
+
*/
|
|
79
|
+
this.uploads = [];
|
|
80
|
+
this.browserService = injector.get(SACFILEBROWSER_SERVICE, new SacDefaultFileBrowserService(httpclient));
|
|
81
|
+
this.lngResourceService = injector.get(SACLOCALISATION_SERVICE, new SacDefaultLocalisationService());
|
|
82
|
+
this.iconService = injector.get(SACICON_SERVICE, new SacDefaultIconService());
|
|
83
|
+
}
|
|
84
|
+
// #endregion Constructors
|
|
85
|
+
// #region Public Getters And Setters
|
|
86
|
+
/**
|
|
87
|
+
* CSS icon class for delete icon
|
|
88
|
+
* @returns css class with icon
|
|
89
|
+
*/
|
|
90
|
+
get iconDelete() {
|
|
91
|
+
return this.iconService.BrowserComponentDeleteIcon;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* CSS icon class for edit icon
|
|
95
|
+
* @returns css class with icon
|
|
96
|
+
*/
|
|
97
|
+
get iconEdit() {
|
|
98
|
+
return this.iconService.BrowserComponentEditIcon;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* CSS icon for folders in tree there are collabsed
|
|
102
|
+
* @returns css class with icon
|
|
103
|
+
*/
|
|
104
|
+
get iconFolderCollabsed() {
|
|
105
|
+
return this.iconService.BrowserComponentFolderClosedIcon;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* CSS icon class for folders without subfolders
|
|
109
|
+
* @returns css class with icon
|
|
110
|
+
*/
|
|
111
|
+
get iconFolderEmpty() {
|
|
112
|
+
return this.iconService.BrowserComponentFolderEmptyIcon;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* CSS icon for new folders action
|
|
116
|
+
* @returns css class with icon
|
|
117
|
+
*/
|
|
118
|
+
get iconFolderNew() {
|
|
119
|
+
return this.iconService.BrowserComponentFolderNewIcon;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* CSS icon for folders in tree there are expanded
|
|
123
|
+
* @returns css class with icon
|
|
124
|
+
*/
|
|
125
|
+
get iconFolderOpen() {
|
|
126
|
+
return this.iconService.BrowserComponentFolderOpenIcon;
|
|
127
|
+
}
|
|
128
|
+
/**
|
|
129
|
+
* CSS icon class for refresh icon
|
|
130
|
+
* @returns css class with icon
|
|
131
|
+
*/
|
|
132
|
+
get iconRefresh() {
|
|
133
|
+
return this.iconService.BrowserComponentRefreshIcon;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Getter für Selected File. Ist an Input Property gebunden
|
|
137
|
+
*/
|
|
138
|
+
get selectedfile() {
|
|
139
|
+
if (this.selectFile && this.selectFile.length > 0) {
|
|
140
|
+
return this.selectedFile;
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
return null;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Setzt den Seleced Node über den Pfad
|
|
148
|
+
*/
|
|
149
|
+
set selectedfile(v) {
|
|
150
|
+
const selectednode = this.findSelectedNodeByPath(this.rootNode, v);
|
|
151
|
+
if (selectednode !== null) {
|
|
152
|
+
this.selectNode(selectednode);
|
|
153
|
+
}
|
|
154
|
+
this.preselecedfile = v;
|
|
155
|
+
}
|
|
156
|
+
// #endregion Public Getters And Setters
|
|
157
|
+
// #region Public Methods
|
|
158
|
+
/**
|
|
159
|
+
* Löscht ein File
|
|
160
|
+
* @param file File welches gelöscht werden soll
|
|
161
|
+
*/
|
|
162
|
+
deleteFile(file) {
|
|
163
|
+
this.confirmDeleteFile(file).subscribe((confirm) => {
|
|
164
|
+
if (confirm) {
|
|
165
|
+
this.browserService
|
|
166
|
+
.DeleteFile(this.apiurl, this.selectedNode.Path + '/' + file.Filename, this.allowedtypes)
|
|
167
|
+
.subscribe((result) => {
|
|
168
|
+
this.selectedNode.Files = result.Files;
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Löscht einen Node
|
|
175
|
+
* @param node Node welcher gelöscht werden soll
|
|
176
|
+
*/
|
|
177
|
+
deleteNode(node) {
|
|
178
|
+
this.confirmDeleteNode(node).subscribe((confirm) => {
|
|
179
|
+
if (confirm) {
|
|
180
|
+
this.browserService
|
|
181
|
+
.DeleteNode(this.apiurl, node.Path)
|
|
182
|
+
.subscribe((result) => {
|
|
183
|
+
const parentNode = this.findParentNode(this.rootNode, node);
|
|
184
|
+
parentNode.ChildNodes = result.Node.ChildNodes;
|
|
185
|
+
this.rootNode.ChildNodes.forEach((itm) => {
|
|
186
|
+
this.fillPath(itm, '');
|
|
187
|
+
});
|
|
188
|
+
this.selectNode(parentNode);
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Setzt ein File in den Edit Mode
|
|
195
|
+
* @param file File welches in den Edit Mode gesetzt werden soll
|
|
196
|
+
*/
|
|
197
|
+
editFile(file) {
|
|
198
|
+
file.IsEditMode = true;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Setzt einen Node in den Edit Mode
|
|
202
|
+
* @param node Node welcher bearbeitet werden soll
|
|
203
|
+
*/
|
|
204
|
+
editNode(node) {
|
|
205
|
+
node.IsEditMode = true;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* HostListener welcher den Edit Mode bei allen Files und Nodes beendet.
|
|
209
|
+
*/
|
|
210
|
+
exitEditMode(targetElement) {
|
|
211
|
+
if (this.selectedNode) {
|
|
212
|
+
this.selectedNode.Files.forEach((itm) => (itm.IsEditMode = false));
|
|
213
|
+
if (!this.selectedNode ||
|
|
214
|
+
this.selectedNode.Name === null ||
|
|
215
|
+
this.selectedNode.Name.length === 0) {
|
|
216
|
+
this.clearNewChildNodes(this.rootNode);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
this.resetNodeEditMode(null);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Erzeugt einen neuen Node im Tree
|
|
223
|
+
* @param node Node unter welchem ein neuer Node erstellt werden soll
|
|
224
|
+
*/
|
|
225
|
+
newNode(node) {
|
|
226
|
+
const item = {
|
|
227
|
+
ChildNodes: [],
|
|
228
|
+
Files: [],
|
|
229
|
+
IsEditMode: false,
|
|
230
|
+
IsExpanded: false,
|
|
231
|
+
Name: '',
|
|
232
|
+
Path: node.Path,
|
|
233
|
+
IsNewNode: true,
|
|
234
|
+
};
|
|
235
|
+
node.ChildNodes.push(item);
|
|
236
|
+
this.selectNode(item);
|
|
237
|
+
this.editNode(item);
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Init Event der Komponente
|
|
241
|
+
*/
|
|
242
|
+
ngOnInit() {
|
|
243
|
+
this.browserService
|
|
244
|
+
.GetNode(this.apiurl, '', this.allowedtypes)
|
|
245
|
+
.subscribe((result) => {
|
|
246
|
+
this.rootNode = {
|
|
247
|
+
Name: result.Node.Name,
|
|
248
|
+
Files: result.Node.Files,
|
|
249
|
+
ChildNodes: result.Node.ChildNodes,
|
|
250
|
+
IsExpanded: true,
|
|
251
|
+
IsEditMode: false,
|
|
252
|
+
IsNewNode: false,
|
|
253
|
+
Path: '/',
|
|
254
|
+
};
|
|
255
|
+
this.setPathToAllNodes();
|
|
256
|
+
this.selectedNode = this.rootNode;
|
|
257
|
+
// Selected File erneut setzen, wenn Property gesetzt wurde bevor Daten vom Service geladen wurden.
|
|
258
|
+
if (this.preselecedfile !== null && this.preselecedfile.length > 0) {
|
|
259
|
+
this.selectedfile = this.preselecedfile;
|
|
260
|
+
}
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Aktualisiert den Node
|
|
265
|
+
*/
|
|
266
|
+
refreshNode(node) {
|
|
267
|
+
if (!node.IsExpanded) {
|
|
268
|
+
this.switchExpandNode(node);
|
|
269
|
+
}
|
|
270
|
+
this.browserService
|
|
271
|
+
.GetNode(this.apiurl, node.Path, this.allowedtypes)
|
|
272
|
+
.subscribe((result) => {
|
|
273
|
+
node.ChildNodes = result.Node.ChildNodes;
|
|
274
|
+
node.Files = result.Node.Files;
|
|
275
|
+
this.setPathToAllNodes();
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Methode wenn eine Datei umbenannt werden soll
|
|
280
|
+
* @param file File welches umbenannt werden soll
|
|
281
|
+
* @param newFilename Neuer Dateiname
|
|
282
|
+
*/
|
|
283
|
+
renameFile(file, newFilename) {
|
|
284
|
+
file.IsEditMode = false;
|
|
285
|
+
if (!newFilename || newFilename === null || newFilename.length === 0) {
|
|
286
|
+
// Cancel, Invalid Filename
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
289
|
+
if (file.Filename !== newFilename) {
|
|
290
|
+
this.browserService
|
|
291
|
+
.RenameFile(this.apiurl, this.selectedNode.Path + '/' + file.Filename, newFilename, this.allowedtypes)
|
|
292
|
+
.subscribe((result) => {
|
|
293
|
+
this.selectedNode.Files = result.Files;
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
/**
|
|
298
|
+
* Methode wenn ein Node umbenannt werden soll
|
|
299
|
+
* @param node Node welcher umbenannt werden soll
|
|
300
|
+
* @param newFoldername Neuer Ordnername
|
|
301
|
+
*/
|
|
302
|
+
renameNode(node, newFoldername) {
|
|
303
|
+
node.IsEditMode = false;
|
|
304
|
+
if (!node.IsNewNode) {
|
|
305
|
+
if (!newFoldername ||
|
|
306
|
+
newFoldername === null ||
|
|
307
|
+
newFoldername.length === 0) {
|
|
308
|
+
// Cancel Rename. Invalid Foldername
|
|
309
|
+
return;
|
|
310
|
+
}
|
|
311
|
+
if (node.Name !== newFoldername) {
|
|
312
|
+
this.browserService
|
|
313
|
+
.RenameNode(this.apiurl, node.Path, newFoldername)
|
|
314
|
+
.subscribe((result) => {
|
|
315
|
+
node.Name = result.Node.Name;
|
|
316
|
+
this.setPathToAllNodes();
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
if (!newFoldername ||
|
|
322
|
+
newFoldername === null ||
|
|
323
|
+
newFoldername.length === 0) {
|
|
324
|
+
this.clearNewChildNodes(this.rootNode);
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
node.Name = newFoldername;
|
|
328
|
+
node.IsNewNode = false;
|
|
329
|
+
this.browserService
|
|
330
|
+
.SaveNode(this.apiurl, node.Path, newFoldername)
|
|
331
|
+
.subscribe((result) => {
|
|
332
|
+
node.Name = result.Node.Name;
|
|
333
|
+
node.Files = result.Node.Files;
|
|
334
|
+
this.setPathToAllNodes();
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Methode wenn ein File selektiert wird
|
|
340
|
+
* @param file File welches selektiert wird
|
|
341
|
+
*/
|
|
342
|
+
selectFile(file) {
|
|
343
|
+
if (!file.IsEditMode) {
|
|
344
|
+
this.selectedNode.Files.forEach((itm) => (itm.IsEditMode = false));
|
|
345
|
+
}
|
|
346
|
+
if (!this.selectedNode.Path.endsWith('/')) {
|
|
347
|
+
this.selectedFile = this.selectedNode.Path + '/' + file.Filename;
|
|
348
|
+
}
|
|
349
|
+
else {
|
|
350
|
+
this.selectedFile = '/' + file.Filename;
|
|
351
|
+
}
|
|
352
|
+
this.selectedFileItem = file;
|
|
353
|
+
this.file.emit(this.selectedFile);
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Methode wenn ein Node selektiert wird
|
|
357
|
+
* @param node Node welcher selektiert werden soll
|
|
358
|
+
*/
|
|
359
|
+
selectNode(node) {
|
|
360
|
+
if (!node.IsExpanded) {
|
|
361
|
+
this.switchExpandNode(node);
|
|
362
|
+
}
|
|
363
|
+
// Reset the Edit Mode in all Nodes
|
|
364
|
+
this.resetNodeEditMode(null);
|
|
365
|
+
if (!node.Files) {
|
|
366
|
+
this.browserService
|
|
367
|
+
.GetFiles(this.apiurl, node.Path, this.allowedtypes)
|
|
368
|
+
.subscribe((result) => {
|
|
369
|
+
node.Files = result.Files;
|
|
370
|
+
this.selectedNode = node;
|
|
371
|
+
if (this.preselecedfile !== null && this.preselecedfile.length > 0) {
|
|
372
|
+
const filename = this.preselecedfile.substring(this.preselecedfile.lastIndexOf('/') + 1);
|
|
373
|
+
const file = node.Files.find((itm) => itm.Filename === filename);
|
|
374
|
+
if (file) {
|
|
375
|
+
this.selectFile(file);
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
else {
|
|
381
|
+
this.selectedNode = node;
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Expand/Collabse Methode für Nodes
|
|
386
|
+
* @param node Node welcher geöffnet oder geschlossen werden soll
|
|
387
|
+
*/
|
|
388
|
+
switchExpandNode(node) {
|
|
389
|
+
if (node.IsExpanded) {
|
|
390
|
+
node.IsExpanded = false;
|
|
391
|
+
}
|
|
392
|
+
else {
|
|
393
|
+
node.IsExpanded = true;
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* Methode die Aufgerufen werden muss, wenn ein Upload beendet ist.
|
|
398
|
+
* @param param Parameter des hochgeladenen Files
|
|
399
|
+
*/
|
|
400
|
+
uploadComplete(node, uploadIdList) {
|
|
401
|
+
if (uploadIdList !== null) {
|
|
402
|
+
uploadIdList.forEach((element) => {
|
|
403
|
+
if (this.uploads.indexOf(element) < 0) {
|
|
404
|
+
this.uploads.push(element);
|
|
405
|
+
}
|
|
406
|
+
});
|
|
407
|
+
}
|
|
408
|
+
const id = this.uploads.pop();
|
|
409
|
+
if (id) {
|
|
410
|
+
this.browserService
|
|
411
|
+
.SaveFile(this.apiurl, node.Path, id, this.allowedtypes)
|
|
412
|
+
.subscribe((result) => {
|
|
413
|
+
this.selectedNode.Files = result.Files;
|
|
414
|
+
this.uploadedFileMoved(id);
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
// #endregion Public Abstract Methods
|
|
419
|
+
// #region Private Methods
|
|
420
|
+
/**
|
|
421
|
+
* Rekursive Methode welche beim Node und all seinen Childs neue Nodes entfernt
|
|
422
|
+
* @param node Node bei welchem alle neuen Nodes entfernt werden soll.
|
|
423
|
+
*/
|
|
424
|
+
clearNewChildNodes(node) {
|
|
425
|
+
node.ChildNodes.forEach((itm) => {
|
|
426
|
+
if (itm.IsNewNode) {
|
|
427
|
+
node.ChildNodes.splice(node.ChildNodes.indexOf(itm));
|
|
428
|
+
}
|
|
429
|
+
});
|
|
430
|
+
node.ChildNodes.forEach((itm) => this.clearNewChildNodes(itm));
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* Methode welche den Pfad für einen Node erzeugt
|
|
434
|
+
* @param node Node für welchen der Pfad erzeugt werden soll
|
|
435
|
+
* @param parentPath Übergeordneter Pfad
|
|
436
|
+
*/
|
|
437
|
+
fillPath(node, parentPath) {
|
|
438
|
+
node.Path = parentPath + '/' + node.Name;
|
|
439
|
+
node.ChildNodes.forEach((itm) => {
|
|
440
|
+
this.fillPath(itm, node.Path);
|
|
441
|
+
});
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* Sucht den übergeordneten Node im Tree
|
|
445
|
+
* @param node Aktueller Node
|
|
446
|
+
* @param nodeToFind Node welcher gefunden werden soll
|
|
447
|
+
* @returns Node wenn er gefunden wurde, ansonsten wird NULL zurückgegeben
|
|
448
|
+
*/
|
|
449
|
+
findParentNode(node, nodeToFind) {
|
|
450
|
+
if (node.ChildNodes.indexOf(nodeToFind) >= 0) {
|
|
451
|
+
return node;
|
|
452
|
+
}
|
|
453
|
+
for (const child of node.ChildNodes) {
|
|
454
|
+
const result = this.findParentNode(child, nodeToFind);
|
|
455
|
+
if (result !== null) {
|
|
456
|
+
return result;
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
return null;
|
|
460
|
+
}
|
|
461
|
+
/**
|
|
462
|
+
* Sucht einen Node gem. einem URL Pfad
|
|
463
|
+
* @param node Node in welchem gesucht werden soll
|
|
464
|
+
* @param path Pfad nach welchem gesucht wird
|
|
465
|
+
* @returns Node welcher zum gesuchten Pfad passt. Wenn kein Node gefunden wird, wird NULL zurückgegeben
|
|
466
|
+
*/
|
|
467
|
+
findSelectedNodeByPath(node, path) {
|
|
468
|
+
// Cancel wenn Pfad nicht definiert
|
|
469
|
+
if (path === undefined || path === null) {
|
|
470
|
+
return null;
|
|
471
|
+
}
|
|
472
|
+
// Pfad in Array splitten und Root Foldername setzen
|
|
473
|
+
const pathArray = path.split('/');
|
|
474
|
+
pathArray[0] = this.rootNode.Name;
|
|
475
|
+
return this.findSelectedNodeByPathArray(node, pathArray, 0);
|
|
476
|
+
}
|
|
477
|
+
/**
|
|
478
|
+
* Sucht einen Node gem. einem Array von Node Namen
|
|
479
|
+
* @param node Node in welchem gesucht werden soll
|
|
480
|
+
* @param path Array von Node Namen, welche die Hirarchy des Pfades abbilden
|
|
481
|
+
* @param index Aktueller Index im PATH Array
|
|
482
|
+
* @returns Node wenn einer gefunden wurde, ansonsten NULL
|
|
483
|
+
*/
|
|
484
|
+
findSelectedNodeByPathArray(node, path, index) {
|
|
485
|
+
// Check ob Ordner korrekt. Letzer Ordner zurückgeben. Path Last Index ist der Filename
|
|
486
|
+
if (node.Name === path[index] && path.length - 2 === index) {
|
|
487
|
+
return node;
|
|
488
|
+
}
|
|
489
|
+
else if (node.Name === path[index]) {
|
|
490
|
+
// Expand Node
|
|
491
|
+
node.IsExpanded = true;
|
|
492
|
+
for (const item of node.ChildNodes) {
|
|
493
|
+
const result = this.findSelectedNodeByPathArray(item, path, index + 1);
|
|
494
|
+
if (result !== null) {
|
|
495
|
+
return result;
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
return null;
|
|
500
|
+
}
|
|
501
|
+
/**
|
|
502
|
+
* Rekursive Methode welche beim Node und all seinen Childs den Edit Mode beendet.
|
|
503
|
+
* @param node Node bei welchem der Edit Mode beendet werden soll
|
|
504
|
+
*/
|
|
505
|
+
resetNodeEditMode(node) {
|
|
506
|
+
if (node === null) {
|
|
507
|
+
this.resetNodeEditMode(this.rootNode);
|
|
508
|
+
}
|
|
509
|
+
else {
|
|
510
|
+
node.IsEditMode = false;
|
|
511
|
+
if (node.ChildNodes) {
|
|
512
|
+
node.ChildNodes.forEach((itm) => this.resetNodeEditMode(itm));
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
/**
|
|
517
|
+
* Setzt den Pfad in allen Nodes
|
|
518
|
+
*/
|
|
519
|
+
setPathToAllNodes() {
|
|
520
|
+
this.rootNode.ChildNodes.forEach((itm) => {
|
|
521
|
+
this.fillPath(itm, '');
|
|
522
|
+
});
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
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 });
|
|
526
|
+
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 });
|
|
527
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SacFileBrowserCommon, decorators: [{
|
|
528
|
+
type: Directive
|
|
529
|
+
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i0.Injector }]; }, propDecorators: { allowedtypes: [{
|
|
530
|
+
type: Input
|
|
531
|
+
}], allowfiledelete: [{
|
|
532
|
+
type: Input
|
|
533
|
+
}], allowfilerename: [{
|
|
534
|
+
type: Input
|
|
535
|
+
}], allowfileupload: [{
|
|
536
|
+
type: Input
|
|
537
|
+
}], allowfoldercreate: [{
|
|
538
|
+
type: Input
|
|
539
|
+
}], allowfolderdelete: [{
|
|
540
|
+
type: Input
|
|
541
|
+
}], allowfolderrename: [{
|
|
542
|
+
type: Input
|
|
543
|
+
}], apiurl: [{
|
|
544
|
+
type: Input
|
|
545
|
+
}], file: [{
|
|
546
|
+
type: Output
|
|
547
|
+
}], selectedfile: [{
|
|
548
|
+
type: Input
|
|
549
|
+
}], exitEditMode: [{
|
|
550
|
+
type: HostListener,
|
|
551
|
+
args: ['document:click', ['$event.target']]
|
|
552
|
+
}] } });
|
|
553
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9icm93c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFFWixLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLHFCQUFxQixHQUN0QixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDTCxzQkFBc0IsRUFDdEIsNEJBQTRCLEdBQzdCLE1BQU0sd0NBQXdDLENBQUM7QUFDaEQsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0seUNBQXlDLENBQUM7OztBQU14Rjs7R0FFRztBQUVILE1BQU0sT0FBZ0Isb0JBQW9CO0lBK0Z4Qyx3QkFBd0I7SUFFeEIsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUFZLFVBQXNCLEVBQUUsUUFBa0I7UUE3RnREOztXQUVHO1FBQ0ssbUJBQWMsR0FBa0IsSUFBSSxDQUFDO1FBRTdDOzs7V0FHRztRQUVJLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQ2pDOztXQUVHO1FBRUksb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDdkM7O1dBRUc7UUFFSSxvQkFBZSxHQUFZLElBQUksQ0FBQztRQUN2Qzs7V0FFRztRQUVJLG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBQ3ZDOztXQUVHO1FBRUksc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBQ3pDOztXQUVHO1FBRUksc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBQ3pDOztXQUVHO1FBRUksc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBTXpDOztXQUVHO1FBRUksU0FBSSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBSy9EOztXQUVHO1FBQ0ksYUFBUSxHQUFpQjtZ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QjtrQkFEekMsU0FBUzt3SEFzQkQsWUFBWTtzQkFEbEIsS0FBSztnQkFNQyxlQUFlO3NCQURyQixLQUFLO2dCQU1DLGVBQWU7c0JBRHJCLEtBQUs7Z0JBTUMsZUFBZTtzQkFEckIsS0FBSztnQkFNQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU1DLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFNQyxNQUFNO3NCQURaLEtBQUs7Z0JBTUMsSUFBSTtzQkFEVixNQUFNO2dCQXdJSSxZQUFZO3NCQUR0QixLQUFLO2dCQWlGQyxZQUFZO3NCQUpsQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHtcclxuICBEaXJlY3RpdmUsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbmplY3RvcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IElTYWNGaWxlQnJvd3NlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNGaWxlQnJvd3NlclNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJU2FjSWNvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNJY29uU2VydmljZSc7XHJcbmltcG9ydCB7IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTG9jYWxpc2F0aW9uU2VydmljZSc7XHJcbmltcG9ydCB7XHJcbiAgU0FDSUNPTl9TRVJWSUNFLFxyXG4gIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxyXG4gIFNhY0RlZmF1bHRJY29uU2VydmljZSxcclxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7XHJcbiAgU0FDRklMRUJST1dTRVJfU0VSVklDRSxcclxuICBTYWNEZWZhdWx0RmlsZUJyb3dzZXJTZXJ2aWNlLFxyXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1maWxlYnJvd3Nlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtbG9jYWxpc2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJQnJvd3NlckZpbGUgfSBmcm9tICcuL21vZGVscy9icm93c2VyZmlsZSc7XHJcbmltcG9ydCB7IElCcm93c2VyRmlsZVJlc3BvbnNlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3NlcmZpbGVyZXNwb25zZSc7XHJcbmltcG9ydCB7IElCcm93c2VyTm9kZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJub2RlJztcclxuaW1wb3J0IHsgSUJyb3dzZXJOb2RlUmVzcG9uc2UgfSBmcm9tICcuL21vZGVscy9icm93c2Vybm9kZXJlc3BvbnNlJztcclxuXHJcbi8qKlxyXG4gKiBCYXNlIENvbXBvbmVudCBmw7xyIEZpbGUgQnJvd3NlclxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYWNGaWxlQnJvd3NlckNvbW1vbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZpY2UgZsO8ciBGaWxlIEJyb3dzZXIgWnVncmlmZiAoQmFja2VuZClcclxuICAgKi9cclxuICBwcml2YXRlIGJyb3dzZXJTZXJ2aWNlOiBJU2FjRmlsZUJyb3dzZXJTZXJ2aWNlO1xyXG4gIC8qKlxyXG4gICAqIEljb24gc2VydmljZSB0byByZWNlaXZlIGljb24gY2xhc3NlcyBmb3IgdWlcclxuICAgKi9cclxuICBwcml2YXRlIGljb25TZXJ2aWNlOiBJU2FjSWNvblNlcnZpY2U7XHJcbiAgLyoqXHJcbiAgICogRmlsZSB3ZWxjaGVzIGJlaW0gc3RhcnRlbiBkZXMgQnJvd3NlcnMgYmVyZWl0cyBzZWxla3RpZXJ0IGlzdFxyXG4gICAqL1xyXG4gIHByaXZhdGUgcHJlc2VsZWNlZGZpbGU6IHN0cmluZyB8IG51bGwgPSBudWxsO1xyXG5cclxuICAvKipcclxuICAgKiBFcmxhdWJ0ZSBEYXRlaWVyd2VpdGVydW5nZW4gZsO8ciBGaWxlYXVzd2FobCB1bmQgVXBsb2FkLiBEYXRlaWVyd2VpdGVydW5nIG1pdCBQdW5rdCB1bmRcclxuICAgKiBnZXRyZW5udCBkdXJjaCBLb21tYSBmw7xyIG1laHIgYWxzIGVpbmUgRXJ3ZWl0ZXJ1bmcgKEV4YW1wbGU6IFwiLmpwZywuZ2lmXCIpXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWxsb3dlZHR5cGVzOiBzdHJpbmcgPSAnJztcclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGRhcyBsw7ZzY2hlbiBlaW5lciBEYXRlaVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZmlsZWRlbGV0ZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkYXMgdW1iZW5lbm5lbiBlaW5lciBEYXRlaVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93ZmlsZXJlbmFtZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgLyoqXHJcbiAgICogRXJsYXVidCBkZW4gVXBsb2FkIHZvbiBEYXRlaWVuXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWxsb3dmaWxldXBsb2FkOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGRhcyBlcnN0ZWxsZW4gZWluZXMgbmV1ZW4gT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVyY3JlYXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBFcmxhdWJ0IGRhcyBsw7ZzY2hlbiBlaW5lcyBPcmRuZXJzXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWxsb3dmb2xkZXJkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIC8qKlxyXG4gICAqIEVybGF1YnQgZGFzIFVtYmVuZW5uZW4gZWluZXMgT3JkbmVyc1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFsbG93Zm9sZGVycmVuYW1lOiBib29sZWFuID0gdHJ1ZTtcclxuICAvKipcclxuICAgKiBVUkwgZsO8ciBCYWNrZW5kIEFQSVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFwaXVybDogc3RyaW5nO1xyXG4gIC8qKlxyXG4gICAqIE91dHB1dCBFbWl0dGVyIHdlbm4gRmlsZSBzZWxla3RpZXJ0IHdpcmQuXHJcbiAgICovXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGZpbGU6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgLyoqXHJcbiAgICogU2VydmljZSBmw7xyIEVycm9yIExvY2FsaXNhdGlvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBsbmdSZXNvdXJjZVNlcnZpY2U6IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlO1xyXG4gIC8qKlxyXG4gICAqIFJvb3QgTm9kZSBJdGVtIGbDvHIgVHJlZVxyXG4gICAqL1xyXG4gIHB1YmxpYyByb290Tm9kZTogSUJyb3dzZXJOb2RlID0ge1xyXG4gICAgTmFtZTogJycsXHJcbiAgICBDaGlsZE5vZGVzOiBbXSxcclxuICAgIEZpbGVzOiBbXSxcclxuICAgIElzRXhwYW5kZWQ6IHRydWUsXHJcbiAgICBJc0VkaXRNb2RlOiBmYWxzZSxcclxuICAgIElzTmV3Tm9kZTogZmFsc2UsXHJcbiAgICBQYXRoOiAnJyxcclxuICB9O1xyXG4gIC8qKlxyXG4gICAqIFNlbGVjdGVkIEZpbGUgTmFtZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGU6IHN0cmluZztcclxuICAvKipcclxuICAgKiBTZWxlY3RlZCBGaWxlIEl0ZW1cclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0ZWRGaWxlSXRlbTogSUJyb3dzZXJGaWxlID0gbnVsbDtcclxuICAvKipcclxuICAgKiBTZWxlY3RlZCBOb2RlIEl0ZW1cclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0ZWROb2RlOiBJQnJvd3Nlck5vZGUgPSBudWxsO1xyXG4gIC8qKlxyXG4gICAqIExpc3RlIHZvbiBVcGxvYWRzXHJcbiAgICovXHJcbiAgcHVibGljIHVwbG9hZHM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvLyAjcmVnaW9uIENvbnN0cnVjdG9yc1xyXG5cclxuICAvKipcclxuICAgKiBLb25zdHJ1a3RvclxyXG4gICAqIEBwYXJhbSBodHRwY2xpZW50IEFuZ3VsYXIgSFRUUCBDbGllbnRcclxuICAgKiBAcGFyYW0gaW5qZWN0b3IgU2VydmljZSBJbmplY3RvclxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGh0dHBjbGllbnQ6IEh0dHBDbGllbnQsIGluamVjdG9yOiBJbmplY3Rvcikge1xyXG4gICAgdGhpcy5icm93c2VyU2VydmljZSA9IGluamVjdG9yLmdldChcclxuICAgICAgU0FDRklMRUJST1dTRVJfU0VSVklDRSxcclxuICAgICAgbmV3IFNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UoaHR0cGNsaWVudClcclxuICAgICk7XHJcblxyXG4gICAgdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXHJcbiAgICAgIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxyXG4gICAgICBuZXcgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UoKVxyXG4gICAgKTtcclxuXHJcbiAgICB0aGlzLmljb25TZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxyXG4gICAgICBTQUNJQ09OX1NFUlZJQ0UsXHJcbiAgICAgIG5ldyBTYWNEZWZhdWx0SWNvblNlcnZpY2UoKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXHJcblxyXG4gIC8vICNyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGRlbGV0ZSBpY29uXHJcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXQgaWNvbkRlbGV0ZSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudERlbGV0ZUljb247XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDU1MgaWNvbiBjbGFzcyBmb3IgZWRpdCBpY29uXHJcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXQgaWNvbkVkaXQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRFZGl0SWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENTUyBpY29uIGZvciBmb2xkZXJzIGluIHRyZWUgdGhlcmUgYXJlIGNvbGxhYnNlZFxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJDb2xsYWJzZWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJDbG9zZWRJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGZvbGRlcnMgd2l0aG91dCBzdWJmb2xkZXJzXHJcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxyXG4gICAqL1xyXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlckVtcHR5KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyRW1wdHlJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gZm9yIG5ldyBmb2xkZXJzIGFjdGlvblxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJOZXcoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJOZXdJY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gZm9yIGZvbGRlcnMgaW4gdHJlZSB0aGVyZSBhcmUgZXhwYW5kZWRcclxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXHJcbiAgICovXHJcbiAgcHVibGljIGdldCBpY29uRm9sZGVyT3BlbigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlck9wZW5JY29uO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIHJlZnJlc2ggaWNvblxyXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IGljb25SZWZyZXNoKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50UmVmcmVzaEljb247XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXR0ZXIgZsO8ciBTZWxlY3RlZCBGaWxlLiBJc3QgYW4gSW5wdXQgUHJvcGVydHkgZ2VidW5kZW5cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0IHNlbGVjdGVkZmlsZSgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdEZpbGUgJiYgdGhpcy5zZWxlY3RGaWxlLmxlbmd0aCA+IDApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRGaWxlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXR6dCBkZW4gU2VsZWNlZCBOb2RlIMO8YmVyIGRlbiBQZmFkXHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2V0IHNlbGVjdGVkZmlsZSh2OiBzdHJpbmcgfCBudWxsKSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZG5vZGUgPSB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGgodGhpcy5yb290Tm9kZSwgdik7XHJcblxyXG4gICAgaWYgKHNlbGVjdGVkbm9kZSAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnNlbGVjdE5vZGUoc2VsZWN0ZWRub2RlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnByZXNlbGVjZWRmaWxlID0gdjtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBMw7ZzY2h0IGVpbiBGaWxlXHJcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBkZWxldGVGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25maXJtRGVsZXRlRmlsZShmaWxlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcclxuICAgICAgaWYgKGNvbmZpcm0pIHtcclxuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgICAuRGVsZXRlRmlsZShcclxuICAgICAgICAgICAgdGhpcy5hcGl1cmwsXHJcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLlBhdGggKyAnLycgKyBmaWxlLkZpbGVuYW1lLFxyXG4gICAgICAgICAgICB0aGlzLmFsbG93ZWR0eXBlc1xyXG4gICAgICAgICAgKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEzDtnNjaHQgZWluZW4gTm9kZVxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBnZWzDtnNjaHQgd2VyZGVuIHNvbGxcclxuICAgKi9cclxuICBwdWJsaWMgZGVsZXRlTm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcclxuICAgIHRoaXMuY29uZmlybURlbGV0ZU5vZGUobm9kZSkuc3Vic2NyaWJlKChjb25maXJtKSA9PiB7XHJcbiAgICAgIGlmIChjb25maXJtKSB7XHJcbiAgICAgICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAgICAgLkRlbGV0ZU5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aClcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgY29uc3QgcGFyZW50Tm9kZSA9IHRoaXMuZmluZFBhcmVudE5vZGUodGhpcy5yb290Tm9kZSwgbm9kZSk7XHJcbiAgICAgICAgICAgIHBhcmVudE5vZGUuQ2hpbGROb2RlcyA9IHJlc3VsdC5Ob2RlLkNoaWxkTm9kZXM7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnJvb3ROb2RlLkNoaWxkTm9kZXMuZm9yRWFjaCgoaXRtKSA9PiB7XHJcbiAgICAgICAgICAgICAgdGhpcy5maWxsUGF0aChpdG0sICcnKTtcclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdE5vZGUocGFyZW50Tm9kZSk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXR6dCBlaW4gRmlsZSBpbiBkZW4gRWRpdCBNb2RlXHJcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIGluIGRlbiBFZGl0IE1vZGUgZ2VzZXR6dCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBlZGl0RmlsZShmaWxlOiBJQnJvd3NlckZpbGUpOiB2b2lkIHtcclxuICAgIGZpbGUuSXNFZGl0TW9kZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXR6dCBlaW5lbiBOb2RlIGluIGRlbiBFZGl0IE1vZGVcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgYmVhcmJlaXRldCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBlZGl0Tm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcclxuICAgIG5vZGUuSXNFZGl0TW9kZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBIb3N0TGlzdGVuZXIgd2VsY2hlciBkZW4gRWRpdCBNb2RlIGJlaSBhbGxlbiBGaWxlcyB1bmQgTm9kZXMgYmVlbmRldC5cclxuICAgKi9cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxyXG4gIC8qKlxyXG4gICAqIENsaWNrIEV2ZW50XHJcbiAgICovXHJcbiAgcHVibGljIGV4aXRFZGl0TW9kZSh0YXJnZXRFbGVtZW50KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZE5vZGUpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMuZm9yRWFjaCgoaXRtKSA9PiAoaXRtLklzRWRpdE1vZGUgPSBmYWxzZSkpO1xyXG5cclxuICAgICAgaWYgKFxyXG4gICAgICAgICF0aGlzLnNlbGVjdGVkTm9kZSB8fFxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLk5hbWUgPT09IG51bGwgfHxcclxuICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5OYW1lLmxlbmd0aCA9PT0gMFxyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVzZXROb2RlRWRpdE1vZGUobnVsbCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFcnpldWd0IGVpbmVuIG5ldWVuIE5vZGUgaW0gVHJlZVxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgdW50ZXIgd2VsY2hlbSBlaW4gbmV1ZXIgTm9kZSBlcnN0ZWxsdCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZXdOb2RlKG5vZGU6IElCcm93c2VyTm9kZSkge1xyXG4gICAgY29uc3QgaXRlbTogSUJyb3dzZXJOb2RlID0ge1xyXG4gICAgICBDaGlsZE5vZGVzOiBbXSxcclxuICAgICAgRmlsZXM6IFtdLFxyXG4gICAgICBJc0VkaXRNb2RlOiBmYWxzZSxcclxuICAgICAgSXNFeHBhbmRlZDogZmFsc2UsXHJcbiAgICAgIE5hbWU6ICcnLFxyXG4gICAgICBQYXRoOiBub2RlLlBhdGgsXHJcbiAgICAgIElzTmV3Tm9kZTogdHJ1ZSxcclxuICAgIH07XHJcblxyXG4gICAgbm9kZS5DaGlsZE5vZGVzLnB1c2goaXRlbSk7XHJcbiAgICB0aGlzLnNlbGVjdE5vZGUoaXRlbSk7XHJcbiAgICB0aGlzLmVkaXROb2RlKGl0ZW0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW5pdCBFdmVudCBkZXIgS29tcG9uZW50ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgLkdldE5vZGUodGhpcy5hcGl1cmwsICcnLCB0aGlzLmFsbG93ZWR0eXBlcylcclxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgIHRoaXMucm9vdE5vZGUgPSB7XHJcbiAgICAgICAgICBOYW1lOiByZXN1bHQuTm9kZS5OYW1lLFxyXG4gICAgICAgICAgRmlsZXM6IHJlc3VsdC5Ob2RlLkZpbGVzLFxyXG4gICAgICAgICAgQ2hpbGROb2RlczogcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcyxcclxuICAgICAgICAgIElzRXhwYW5kZWQ6IHRydWUsXHJcbiAgICAgICAgICBJc0VkaXRNb2RlOiBmYWxzZSxcclxuICAgICAgICAgIElzTmV3Tm9kZTogZmFsc2UsXHJcbiAgICAgICAgICBQYXRoOiAnLycsXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlID0gdGhpcy5yb290Tm9kZTtcclxuXHJcbiAgICAgICAgLy8gU2VsZWN0ZWQgRmlsZSBlcm5ldXQgc2V0emVuLCB3ZW5uIFByb3BlcnR5IGdlc2V0enQgd3VyZGUgYmV2b3IgRGF0ZW4gdm9tIFNlcnZpY2UgZ2VsYWRlbiB3dXJkZW4uXHJcbiAgICAgICAgaWYgKHRoaXMucHJlc2VsZWNlZGZpbGUgIT09IG51bGwgJiYgdGhpcy5wcmVzZWxlY2VkZmlsZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkZmlsZSA9IHRoaXMucHJlc2VsZWNlZGZpbGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFrdHVhbGlzaWVydCBkZW4gTm9kZVxyXG4gICAqL1xyXG4gIHB1YmxpYyByZWZyZXNoTm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcclxuICAgIGlmICghbm9kZS5Jc0V4cGFuZGVkKSB7XHJcbiAgICAgIHRoaXMuc3dpdGNoRXhwYW5kTm9kZShub2RlKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgIC5HZXROb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIHRoaXMuYWxsb3dlZHR5cGVzKVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgbm9kZS5DaGlsZE5vZGVzID0gcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcztcclxuICAgICAgICBub2RlLkZpbGVzID0gcmVzdWx0Lk5vZGUuRmlsZXM7XHJcblxyXG4gICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHdlbm4gZWluZSBEYXRlaSB1bWJlbmFubnQgd2VyZGVuIHNvbGxcclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgdW1iZW5hbm50IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIG5ld0ZpbGVuYW1lIE5ldWVyIERhdGVpbmFtZVxyXG4gICAqL1xyXG4gIHB1YmxpYyByZW5hbWVGaWxlKGZpbGU6IElCcm93c2VyRmlsZSwgbmV3RmlsZW5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgZmlsZS5Jc0VkaXRNb2RlID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKCFuZXdGaWxlbmFtZSB8fCBuZXdGaWxlbmFtZSA9PT0gbnVsbCB8fCBuZXdGaWxlbmFtZS5sZW5ndGggPT09IDApIHtcclxuICAgICAgLy8gQ2FuY2VsLCBJbnZhbGlkIEZpbGVuYW1lXHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoZmlsZS5GaWxlbmFtZSAhPT0gbmV3RmlsZW5hbWUpIHtcclxuICAgICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAgIC5SZW5hbWVGaWxlKFxyXG4gICAgICAgICAgdGhpcy5hcGl1cmwsXHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5QYXRoICsgJy8nICsgZmlsZS5GaWxlbmFtZSxcclxuICAgICAgICAgIG5ld0ZpbGVuYW1lLFxyXG4gICAgICAgICAgdGhpcy5hbGxvd2VkdHlwZXNcclxuICAgICAgICApXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHdlbm4gZWluIE5vZGUgdW1iZW5hbm50IHdlcmRlbiBzb2xsXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIHVtYmVuYW5udCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBuZXdGb2xkZXJuYW1lIE5ldWVyIE9yZG5lcm5hbWVcclxuICAgKi9cclxuICBwdWJsaWMgcmVuYW1lTm9kZShub2RlOiBJQnJvd3Nlck5vZGUsIG5ld0ZvbGRlcm5hbWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgbm9kZS5Jc0VkaXRNb2RlID0gZmFsc2U7XHJcblxyXG4gICAgaWYgKCFub2RlLklzTmV3Tm9kZSkge1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgIW5ld0ZvbGRlcm5hbWUgfHxcclxuICAgICAgICBuZXdGb2xkZXJuYW1lID09PSBudWxsIHx8XHJcbiAgICAgICAgbmV3Rm9sZGVybmFtZS5sZW5ndGggPT09IDBcclxuICAgICAgKSB7XHJcbiAgICAgICAgLy8gQ2FuY2VsIFJlbmFtZS4gSW52YWxpZCBGb2xkZXJuYW1lXHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAobm9kZS5OYW1lICE9PSBuZXdGb2xkZXJuYW1lKSB7XHJcbiAgICAgICAgdGhpcy5icm93c2VyU2VydmljZVxyXG4gICAgICAgICAgLlJlbmFtZU5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgbmV3Rm9sZGVybmFtZSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgICAgbm9kZS5OYW1lID0gcmVzdWx0Lk5vZGUuTmFtZTtcclxuXHJcbiAgICAgICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgIW5ld0ZvbGRlcm5hbWUgfHxcclxuICAgICAgICBuZXdGb2xkZXJuYW1lID09PSBudWxsIHx8XHJcbiAgICAgICAgbmV3Rm9sZGVybmFtZS5sZW5ndGggPT09IDBcclxuICAgICAgKSB7XHJcbiAgICAgICAgdGhpcy5jbGVhck5ld0NoaWxkTm9kZXModGhpcy5yb290Tm9kZSk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBub2RlLk5hbWUgPSBuZXdGb2xkZXJuYW1lO1xyXG4gICAgICBub2RlLklzTmV3Tm9kZSA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgLlNhdmVOb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIG5ld0ZvbGRlcm5hbWUpXHJcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xyXG4gICAgICAgICAgbm9kZS5OYW1lID0gcmVzdWx0Lk5vZGUuTmFtZTtcclxuICAgICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcclxuXHJcbiAgICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHdlbm4gZWluIEZpbGUgc2VsZWt0aWVydCB3aXJkXHJcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIHNlbGVrdGllcnQgd2lyZFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3RGaWxlKGZpbGU6IElCcm93c2VyRmlsZSkge1xyXG4gICAgaWYgKCFmaWxlLklzRWRpdE1vZGUpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMuZm9yRWFjaCgoaXRtKSA9PiAoaXRtLklzRWRpdE1vZGUgPSBmYWxzZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5zZWxlY3RlZE5vZGUuUGF0aC5lbmRzV2l0aCgnLycpKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlID0gdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWU7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkRmlsZSA9ICcvJyArIGZpbGUuRmlsZW5hbWU7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZWxlY3RlZEZpbGVJdGVtID0gZmlsZTtcclxuICAgIHRoaXMuZmlsZS5lbWl0KHRoaXMuc2VsZWN0ZWRGaWxlKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gTm9kZSBzZWxla3RpZXJ0IHdpcmRcclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgc2VsZWt0aWVydCB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzZWxlY3ROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgaWYgKCFub2RlLklzRXhwYW5kZWQpIHtcclxuICAgICAgdGhpcy5zd2l0Y2hFeHBhbmROb2RlKG5vZGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlc2V0IHRoZSBFZGl0IE1vZGUgaW4gYWxsIE5vZGVzXHJcbiAgICB0aGlzLnJlc2V0Tm9kZUVkaXRNb2RlKG51bGwpO1xyXG5cclxuICAgIGlmICghbm9kZS5GaWxlcykge1xyXG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXHJcbiAgICAgICAgLkdldEZpbGVzKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIHRoaXMuYWxsb3dlZHR5cGVzKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJGaWxlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XHJcblxyXG4gICAgICAgICAgaWYgKHRoaXMucHJlc2VsZWNlZGZpbGUgIT09IG51bGwgJiYgdGhpcy5wcmVzZWxlY2VkZmlsZS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGVuYW1lID0gdGhpcy5wcmVzZWxlY2VkZmlsZS5zdWJzdHJpbmcoXHJcbiAgICAgICAgICAgICAgdGhpcy5wcmVzZWxlY2VkZmlsZS5sYXN0SW5kZXhPZignLycpICsgMVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBjb25zdCBmaWxlID0gbm9kZS5GaWxlcy5maW5kKChpdG0pID0+IGl0bS5GaWxlbmFtZSA9PT0gZmlsZW5hbWUpO1xyXG4gICAgICAgICAgICBpZiAoZmlsZSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0RmlsZShmaWxlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSBub2RlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXhwYW5kL0NvbGxhYnNlIE1ldGhvZGUgZsO8ciBOb2Rlc1xyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBnZcO2ZmZuZXQgb2RlciBnZXNjaGxvc3NlbiB3ZXJkZW4gc29sbFxyXG4gICAqL1xyXG4gIHB1YmxpYyBzd2l0Y2hFeHBhbmROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xyXG4gICAgaWYgKG5vZGUuSXNFeHBhbmRlZCkge1xyXG4gICAgICBub2RlLklzRXhwYW5kZWQgPSBmYWxzZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIGRpZSBBdWZnZXJ1ZmVuIHdlcmRlbiBtdXNzLCB3ZW5uIGVpbiBVcGxvYWQgYmVlbmRldCBpc3QuXHJcbiAgICogQHBhcmFtIHBhcmFtIFBhcmFtZXRlciBkZXMgaG9jaGdlbGFkZW5lbiBGaWxlc1xyXG4gICAqL1xyXG4gIHB1YmxpYyB1cGxvYWRDb21wbGV0ZShub2RlOiBJQnJvd3Nlck5vZGUsIHVwbG9hZElkTGlzdDogc3RyaW5nW10pOiB2b2lkIHtcclxuICAgIGlmICh1cGxvYWRJZExpc3QgIT09IG51bGwpIHtcclxuICAgICAgdXBsb2FkSWRMaXN0LmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuICAgICAgICBpZiAodGhpcy51cGxvYWRzLmluZGV4T2YoZWxlbWVudCkgPCAwKSB7XHJcbiAgICAgICAgICB0aGlzLnVwbG9hZHMucHVzaChlbGVtZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGlkID0gdGhpcy51cGxvYWRzLnBvcCgpO1xyXG4gICAgaWYgKGlkKSB7XHJcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcclxuICAgICAgICAuU2F2ZUZpbGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgaWQsIHRoaXMuYWxsb3dlZHR5cGVzKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJGaWxlUmVzcG9uc2UpID0+IHtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xyXG4gICAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVNb3ZlZChpZCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8vICNyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcclxuXHJcbiAgLyoqXHJcbiAgICogQWJzdHJha3RlIENvbmZpcm0gTWV0aG9kZSB3ZWxjaGUgaW1wbGVtZW50aWVydCB3ZXJkZW4gbXVzcy4gTWV0aG9kZSB3aXJkIGF1ZmdlcnVmZW4sIHdlbm4gZWluZVxyXG4gICAqIERhdGVpIGdlbMO2c2NodCB3ZXJkZW4gc29sbC5cclxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIGbDvHIgd2VsY2hlcyBlaW4gRGVsZXRlIENvbmZpcm0gZWluZ2Vmb3JkZXJ0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHVibGljIGFic3RyYWN0IGNvbmZpcm1EZWxldGVGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XHJcbiAgLyoqXHJcbiAgICogQWJzdHJha3RlIENvbmZpcm0gTWV0aG9kZSB3ZWxjaGUgaW1wbGVtZW50aWVydCB3ZXJkZW4gbXVzcy4gTWV0aG9kZSB3aXJkIGF1ZmdlcnVmZW4sIHdlbm4gZWluXHJcbiAgICogT3JkbmVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbC5cclxuICAgKiBAcGFyYW0gZm9sZGVyIE9yZGVybiBmw7xyIHdlbGNoZW4gZWluIERlbGV0ZSBDb25maXJtIGVpbmdlZm9yZGVydCB3ZXJkZW4gc29sbC5cclxuICAgKi9cclxuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlybURlbGV0ZU5vZGUoZm9sZGVyOiBJQnJvd3Nlck5vZGUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xyXG4gIC8qKlxyXG4gICAqIEFic3RyYWt0ZSBNZXRob2RlIGRpZSBBdWZnZXJ1ZmVuIHdpcmQsIHdlbm4gZGFzIEhvY2hnZWxhZGVuZSBGaWxlIGF1cyBkZW0gVGVtcCBGb2xkZXIgaW4gZGllXHJcbiAgICogU3RydWt0dXIgdmVyc2Nob2JlbiB3dXJkZS5cclxuICAgKiBAcGFyYW0gdXBsb2FkaWQgSUQgZGVzIFVwbG9hZHNcclxuICAgKi9cclxuICBwdWJsaWMgYWJzdHJhY3QgdXBsb2FkZWRGaWxlTW92ZWQodXBsb2FkaWQ6IHN0cmluZyk6IHZvaWQ7XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQcml2YXRlIE1ldGhvZHNcclxuXHJcbiAgLyoqXHJcbiAgICogUmVrdXJzaXZlIE1ldGhvZGUgd2VsY2hlIGJlaW0gTm9kZSB1bmQgYWxsIHNlaW5lbiBDaGlsZHMgbmV1ZSBOb2RlcyBlbnRmZXJudFxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgYmVpIHdlbGNoZW0gYWxsZSBuZXVlbiBOb2RlcyBlbnRmZXJudCB3ZXJkZW4gc29sbC5cclxuICAgKi9cclxuICBwcml2YXRlIGNsZWFyTmV3Q2hpbGROb2Rlcyhub2RlOiBJQnJvd3Nlck5vZGUpIHtcclxuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcclxuICAgICAgaWYgKGl0bS5Jc05ld05vZGUpIHtcclxuICAgICAgICBub2RlLkNoaWxkTm9kZXMuc3BsaWNlKG5vZGUuQ2hpbGROb2Rlcy5pbmRleE9mKGl0bSkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBub2RlLkNoaWxkTm9kZXMuZm9yRWFjaCgoaXRtKSA9PiB0aGlzLmNsZWFyTmV3Q2hpbGROb2RlcyhpdG0pKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldGhvZGUgd2VsY2hlIGRlbiBQZmFkIGbDvHIgZWluZW4gTm9kZSBlcnpldWd0XHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBmw7xyIHdlbGNoZW4gZGVyIFBmYWQgZXJ6ZXVndCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBwYXJlbnRQYXRoIMOcYmVyZ2VvcmRuZXRlciBQZmFkXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBmaWxsUGF0aChub2RlOiBJQnJvd3Nlck5vZGUsIHBhcmVudFBhdGg6IHN0cmluZykge1xyXG4gICAgbm9kZS5QYXRoID0gcGFyZW50UGF0aCArICcvJyArIG5vZGUuTmFtZTtcclxuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcclxuICAgICAgdGhpcy5maWxsUGF0aChpdG0sIG5vZGUuUGF0aCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFN1Y2h0IGRlbiDDvGJlcmdlb3JkbmV0ZW4gTm9kZSBpbSBUcmVlXHJcbiAgICogQHBhcmFtIG5vZGUgQWt0dWVsbGVyIE5vZGVcclxuICAgKiBAcGFyYW0gbm9kZVRvRmluZCBOb2RlIHdlbGNoZXIgZ2VmdW5kZW4gd2VyZGVuIHNvbGxcclxuICAgKiBAcmV0dXJucyBOb2RlIHdlbm4gZXIgZ2VmdW5kZW4gd3VyZGUsIGFuc29uc3RlbiB3aXJkIE5VTEwgenVyw7xja2dlZ2ViZW5cclxuICAgKi9cclxuICBwcml2YXRlIGZpbmRQYXJlbnROb2RlKFxyXG4gICAgbm9kZTogSUJyb3dzZXJOb2RlLFxyXG4gICAgbm9kZVRvRmluZDogSUJyb3dzZXJOb2RlXHJcbiAgKTogSUJyb3dzZXJOb2RlIHtcclxuICAgIGlmIChub2RlLkNoaWxkTm9kZXMuaW5kZXhPZihub2RlVG9GaW5kKSA+PSAwKSB7XHJcbiAgICAgIHJldHVybiBub2RlO1xyXG4gICAgfVxyXG5cclxuICAgIGZvciAoY29uc3QgY2hpbGQgb2Ygbm9kZS5DaGlsZE5vZGVzKSB7XHJcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZmluZFBhcmVudE5vZGUoY2hpbGQsIG5vZGVUb0ZpbmQpO1xyXG4gICAgICBpZiAocmVzdWx0ICE9PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogU3VjaHQgZWluZW4gTm9kZSBnZW0uIGVpbmVtIFVSTCBQZmFkXHJcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBpbiB3ZWxjaGVtIGdlc3VjaHQgd2VyZGVuIHNvbGxcclxuICAgKiBAcGFyYW0gcGF0aCBQZmFkIG5hY2ggd2VsY2hlbSBnZXN1Y2h0IHdpcmRcclxuICAgKiBAcmV0dXJucyBOb2RlIHdlbGNoZXIgenVtIGdlc3VjaHRlbiBQZmFkIHBhc3N0LiBXZW5uIGtlaW4gTm9kZSBnZWZ1bmRlbiB3aXJkLCB3aXJkIE5VTEwgenVyw7xja2dlZ2ViZW5cclxuICAgKi9cclxuICBwcml2YXRlIGZpbmRTZWxlY3RlZE5vZGVCeVBhdGgoXHJcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXHJcbiAgICBwYXRoOiBzdHJpbmdcclxuICApOiBJQnJvd3Nlck5vZGUge1xyXG4gICAgLy8gQ2FuY2VsIHdlbm4gUGZhZCBuaWNodCBkZWZpbmllcnRcclxuICAgIGlmIChwYXRoID09PSB1bmRlZmluZWQgfHwgcGF0aCA9PT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBQZmFkIGluIEFycmF5IHNwbGl0dGVuIHVuZCBSb290IEZvbGRlcm5hbWUgc2V0emVuXHJcbiAgICBjb25zdCBwYXRoQXJyYXkgPSBwYXRoLnNwbGl0KCcvJyk7XHJcbiAgICBwYXRoQXJyYXlbMF0gPSB0aGlzLnJvb3ROb2RlLk5hbWU7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KG5vZGUsIHBhdGhBcnJheSwgMCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTdWNodCBlaW5lbiBOb2RlIGdlbS4gZWluZW0gQXJyYXkgdm9uIE5vZGUgTmFtZW5cclxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGluIHdlbGNoZW0gZ2VzdWNodCB3ZXJkZW4gc29sbFxyXG4gICAqIEBwYXJhbSBwYXRoIEFycmF5IHZvbiBOb2RlIE5hbWVuLCB3ZWxjaGUgZGllIEhpcmFyY2h5IGRlcyBQZmFkZXMgYWJiaWxkZW5cclxuICAgKiBAcGFyYW0gaW5kZXggQWt0dWVsbGVyIEluZGV4IGltIFBBVEggQXJyYXlcclxuICAgKiBAcmV0dXJucyBOb2RlIHdlbm4gZWluZXIgZ2VmdW5kZW4gd3VyZGUsIGFuc29uc3RlbiBOVUxMXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBmaW5kU2VsZWN0ZWROb2RlQnlQYXRoQXJyYXkoXHJcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXHJcbiAgICBwYXRoOiBzdHJpbmdbXSxcclxuICAgIGluZGV4OiBudW1iZXJcclxuICApOiBJQnJvd3Nlck5vZGUge1xyXG4gICAgLy8gQ2hlY2sgb2IgT3JkbmVyIGtvcnJla3QuIExldHplciBPcmRuZXIgenVyw7xja2dlYmVuLiBQYXRoIExhc3QgSW5kZXggaXN0IGRlciBGaWxlbmFtZVxyXG4gICAgaWYgKG5vZGUuTmFtZSA9PT0gcGF0aFtpbmRleF0gJiYgcGF0aC5sZW5ndGggLSAyID09PSBpbmRleCkge1xyXG4gICAgICByZXR1cm4gbm9kZTtcclxuICAgIH0gZWxzZSBpZiAobm9kZS5OYW1lID09PSBwYXRoW2luZGV4XSkge1xyXG4gICAgICAvLyBFeHBhbmQgTm9kZVxyXG4gICAgICBub2RlLklzRXhwYW5kZWQgPSB0cnVlO1xyXG4gICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygbm9kZS5DaGlsZE5vZGVzKSB7XHJcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5maW5kU2VsZWN0ZWROb2RlQnlQYXRoQXJyYXkoaXRlbSwgcGF0aCwgaW5kZXggKyAxKTtcclxuXHJcbiAgICAgICAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVrdXJzaXZlIE1ldGhvZGUgd2VsY2hlIGJlaW0gTm9kZSB1bmQgYWxsIHNlaW5lbiBDaGlsZHMgZGVuIEVkaXQgTW9kZSBiZWVuZGV0LlxyXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgYmVpIHdlbGNoZW0gZGVyIEVkaXQgTW9kZSBiZWVuZGV0IHdlcmRlbiBzb2xsXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZXNldE5vZGVFZGl0TW9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcclxuICAgIGlmIChub2RlID09PSBudWxsKSB7XHJcbiAgICAgIHRoaXMucmVzZXROb2RlRWRpdE1vZGUodGhpcy5yb290Tm9kZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBub2RlLklzRWRpdE1vZGUgPSBmYWxzZTtcclxuXHJcbiAgICAgIGlmIChub2RlLkNoaWxkTm9kZXMpIHtcclxuICAgICAgICBub2RlLkNoaWxkTm9kZXMuZm9yRWFjaCgoaXRtKSA9PiB0aGlzLnJlc2V0Tm9kZUVkaXRNb2RlKGl0bSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXR6dCBkZW4gUGZhZCBpbiBhbGxlbiBOb2Rlc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0UGF0aFRvQWxsTm9kZXMoKSB7XHJcbiAgICB0aGlzLnJvb3ROb2RlLkNoaWxkTm9kZXMuZm9yRWFjaCgoaXRtKSA9PiB7XHJcbiAgICAgIHRoaXMuZmlsbFBhdGgoaXRtLCAnJyk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJpdmF0ZSBNZXRob2RzXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { SacFileBrowserCommon } from './browser';
|
|
3
|
+
export const ɵNonEmptyModule = true;
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvYnJvd3Nlci5uZ2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2FjRmlsZUJyb3dzZXJDb21tb259IGZyb20gJy4vYnJvd3Nlcic7XG5leHBvcnQgY29uc3QgU2FjRmlsZUJyb3dzZXJDb21tb25OZ0ZhY3Rvcnk6IGkwLsm1TmdNb2R1bGVGYWN0b3J5PGFueT4gPSBuZXcgaTAuybVOZ01vZHVsZUZhY3RvcnkoU2FjRmlsZUJyb3dzZXJDb21tb24pO1xuZXhwb3J0IGNvbnN0IMm1Tm9uRW1wdHlNb2R1bGUgPSB0cnVlOyJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const SacFileBrowserCommonNgSummary = null;
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5uZ3N1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvYnJvd3Nlci5uZ3N1bW1hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQVEsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFNhY0ZpbGVCcm93c2VyQ29tbW9uTmdTdW1tYXJ5OiBhbnkgPSBudWxsOyJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJmaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogSW50ZXJmYWNlIGbDvHIgRGF0ZWkgSXRlbXMgaW4gRmlsZSBCcm93c2VyIENvbXBvbmVudFxyXG4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBJQnJvd3NlckZpbGUge1xyXG4gIC8qKlxyXG4gICAqIERhdGVpbmFtZVxyXG4gICAqL1xyXG4gIEZpbGVuYW1lOiBzdHJpbmc7XHJcbiAgLyoqXHJcbiAgICogR3LDtnNzZSBkZXIgRGF0ZWlcclxuICAgKi9cclxuICBTaXplOiBudW1iZXI7XHJcbiAgLyoqXHJcbiAgICogSXRlbSB3aXJkIGJlYXJiZWl0ZXRcclxuICAgKi9cclxuICBJc0VkaXRNb2RlOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const ɵNonEmptyModule = true;
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGUubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2VyZmlsZS5uZ2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGNvbnN0IMm1Tm9uRW1wdHlNb2R1bGUgPSB0cnVlOyJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const ɵempty = null;
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGUubmdzdW1tYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2VyZmlsZS5uZ3N1bW1hcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCDJtWVtcHR5ID0gbnVsbDsiXX0=
|