@simpleangularcontrols/sac-bootstrap3 10.0.0-rc.1
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 +27 -0
- package/bundles/simpleangularcontrols-sac-bootstrap3.umd.js +2587 -0
- package/bundles/simpleangularcontrols-sac-bootstrap3.umd.js.map +1 -0
- package/bundles/simpleangularcontrols-sac-bootstrap3.umd.min.js +2 -0
- package/bundles/simpleangularcontrols-sac-bootstrap3.umd.min.js.map +1 -0
- package/controls/buttons/button.d.ts +3 -0
- package/controls/buttons/button.module.d.ts +2 -0
- package/controls/buttons/button.module.ngfactory.d.ts +3 -0
- package/controls/buttons/button.ngfactory.d.ts +1 -0
- package/controls/checkbox/checkbox.d.ts +11 -0
- package/controls/checkbox/checkbox.module.d.ts +2 -0
- package/controls/checkbox/checkbox.module.ngfactory.d.ts +3 -0
- package/controls/checkbox/checkbox.ngfactory.d.ts +1 -0
- package/controls/checkbox/checkbox.scss.ngstyle.d.ts +1 -0
- package/controls/checkbox/checkbox.scss.shim.ngstyle.d.ts +1 -0
- package/controls/checkbox/radiobutton.d.ts +5 -0
- package/controls/checkbox/radiobutton.ngfactory.d.ts +1 -0
- package/controls/checkbox/radiobutton.scss.ngstyle.d.ts +1 -0
- package/controls/checkbox/radiobutton.scss.shim.ngstyle.d.ts +1 -0
- package/controls/checkbox/radiobuttons.d.ts +11 -0
- package/controls/checkbox/radiobuttons.ngfactory.d.ts +1 -0
- package/controls/confirm/confirm.d.ts +3 -0
- package/controls/confirm/confirm.module.d.ts +11 -0
- package/controls/confirm/confirm.module.ngfactory.d.ts +3 -0
- package/controls/confirm/confirm.ngfactory.d.ts +1 -0
- package/controls/confirm/confirm.service.d.ts +54 -0
- package/controls/confirm/confirm.service.ngfactory.d.ts +1 -0
- package/controls/datetime/date.d.ts +12 -0
- package/controls/datetime/date.ngfactory.d.ts +1 -0
- package/controls/datetime/dateselector.d.ts +3 -0
- package/controls/datetime/dateselector.ngfactory.d.ts +1 -0
- package/controls/datetime/datetime.d.ts +12 -0
- package/controls/datetime/datetime.module.d.ts +2 -0
- package/controls/datetime/datetime.module.ngfactory.d.ts +3 -0
- package/controls/datetime/datetime.ngfactory.d.ts +1 -0
- package/controls/datetime/time.d.ts +12 -0
- package/controls/datetime/time.ngfactory.d.ts +1 -0
- package/controls/dialog/dialog.d.ts +11 -0
- package/controls/dialog/dialog.module.d.ts +2 -0
- package/controls/dialog/dialog.module.ngfactory.d.ts +3 -0
- package/controls/dialog/dialog.ngfactory.d.ts +1 -0
- package/controls/form/form.d.ts +28 -0
- package/controls/form/form.module.d.ts +2 -0
- package/controls/form/form.module.ngfactory.d.ts +3 -0
- package/controls/form/form.ngfactory.d.ts +1 -0
- package/controls/form/inheritform.directive.d.ts +47 -0
- package/controls/form/inheritform.directive.ngfactory.d.ts +1 -0
- package/controls/grid/grid.d.ts +6 -0
- package/controls/grid/grid.module.d.ts +2 -0
- package/controls/grid/grid.module.ngfactory.d.ts +3 -0
- package/controls/grid/grid.ngfactory.d.ts +1 -0
- package/controls/grid/gridbutton.d.ts +19 -0
- package/controls/grid/gridbutton.ngfactory.d.ts +1 -0
- package/controls/grid/gridcolumn.d.ts +6 -0
- package/controls/grid/gridcolumn.ngfactory.d.ts +1 -0
- package/controls/grid/gridcolumnaction.d.ts +6 -0
- package/controls/grid/gridcolumnaction.ngfactory.d.ts +1 -0
- package/controls/grid/gridimage.d.ts +4 -0
- package/controls/grid/gridimage.ngfactory.d.ts +1 -0
- package/controls/grid/paging.d.ts +8 -0
- package/controls/grid/paging.ngfactory.d.ts +1 -0
- package/controls/input/input.d.ts +11 -0
- package/controls/input/input.module.d.ts +2 -0
- package/controls/input/input.module.ngfactory.d.ts +3 -0
- package/controls/input/input.ngfactory.d.ts +1 -0
- package/controls/input/inputarea.d.ts +23 -0
- package/controls/input/inputarea.ngfactory.d.ts +1 -0
- package/controls/input/inputcurrency.d.ts +11 -0
- package/controls/input/inputcurrency.ngfactory.d.ts +1 -0
- package/controls/input/inputdecimal.d.ts +11 -0
- package/controls/input/inputdecimal.ngfactory.d.ts +1 -0
- package/controls/input/inputemail.d.ts +11 -0
- package/controls/input/inputemail.ngfactory.d.ts +1 -0
- package/controls/input/inputinteger.d.ts +11 -0
- package/controls/input/inputinteger.ngfactory.d.ts +1 -0
- package/controls/input/inputpassword.d.ts +11 -0
- package/controls/input/inputpassword.ngfactory.d.ts +1 -0
- package/controls/input/inputsearch.d.ts +11 -0
- package/controls/input/inputsearch.ngfactory.d.ts +1 -0
- package/controls/layout/formlayout.directive.d.ts +3 -0
- package/controls/layout/formlayout.directive.ngfactory.d.ts +1 -0
- package/controls/layout/layout.module.d.ts +2 -0
- package/controls/layout/layout.module.ngfactory.d.ts +3 -0
- package/controls/layout/tocontrolheight.pipe.d.ts +9 -0
- package/controls/layout/tocontrolheight.pipe.ngfactory.d.ts +1 -0
- package/controls/layout/tocontrolwidthcss.pipe.d.ts +16 -0
- package/controls/layout/tocontrolwidthcss.pipe.ngfactory.d.ts +1 -0
- package/controls/layout/tolabelheight.pipe.d.ts +9 -0
- package/controls/layout/tolabelheight.pipe.ngfactory.d.ts +1 -0
- package/controls/layout/tolabelwidthcss.pipe.d.ts +10 -0
- package/controls/layout/tolabelwidthcss.pipe.ngfactory.d.ts +1 -0
- package/controls/list/dropdown.d.ts +22 -0
- package/controls/list/dropdown.ngfactory.d.ts +1 -0
- package/controls/list/list.module.d.ts +2 -0
- package/controls/list/list.module.ngfactory.d.ts +3 -0
- package/controls/list/listbox.d.ts +11 -0
- package/controls/list/listbox.ngfactory.d.ts +1 -0
- package/controls/static/formcontainer.d.ts +25 -0
- package/controls/static/formcontainer.ngfactory.d.ts +1 -0
- package/controls/static/staticlabel.d.ts +11 -0
- package/controls/static/staticlabel.module.d.ts +2 -0
- package/controls/static/staticlabel.module.ngfactory.d.ts +3 -0
- package/controls/static/staticlabel.ngfactory.d.ts +1 -0
- package/controls/tabs/tab.d.ts +7 -0
- package/controls/tabs/tab.ngfactory.d.ts +1 -0
- package/controls/tabs/tabitem.d.ts +3 -0
- package/controls/tabs/tabitem.ngfactory.d.ts +1 -0
- package/controls/tabs/tabs.module.d.ts +2 -0
- package/controls/tabs/tabs.module.ngfactory.d.ts +3 -0
- package/controls/tinymce/tinymce.d.ts +20 -0
- package/controls/tinymce/tinymce.module.d.ts +2 -0
- package/controls/tinymce/tinymce.module.ngfactory.d.ts +3 -0
- package/controls/tinymce/tinymce.ngfactory.d.ts +1 -0
- package/controls/tooltip/tooltip.d.ts +29 -0
- package/controls/tooltip/tooltip.module.d.ts +2 -0
- package/controls/tooltip/tooltip.module.ngfactory.d.ts +3 -0
- package/controls/tooltip/tooltip.ngfactory.d.ts +1 -0
- package/controls/treeview/ngtreeitemaction.d.ts +5 -0
- package/controls/treeview/ngtreeitemaction.ngfactory.d.ts +1 -0
- package/controls/treeview/treeview.d.ts +3 -0
- package/controls/treeview/treeview.module.d.ts +2 -0
- package/controls/treeview/treeview.module.ngfactory.d.ts +3 -0
- package/controls/treeview/treeview.ngfactory.d.ts +1 -0
- package/controls/treeview/treeviewchild.d.ts +3 -0
- package/controls/treeview/treeviewchild.ngfactory.d.ts +1 -0
- package/controls/upload/upload.d.ts +13 -0
- package/controls/upload/upload.module.d.ts +2 -0
- package/controls/upload/upload.module.ngfactory.d.ts +3 -0
- package/controls/upload/upload.ngfactory.d.ts +1 -0
- package/controls/upload/upload.scss.ngstyle.d.ts +1 -0
- package/controls/upload/upload.scss.shim.ngstyle.d.ts +1 -0
- package/controls/upload/uploadmultiple.d.ts +13 -0
- package/controls/upload/uploadmultiple.ngfactory.d.ts +1 -0
- package/controls/validation/validationsummary.d.ts +11 -0
- package/controls/validation/validationsummary.module.d.ts +2 -0
- package/controls/validation/validationsummary.module.ngfactory.d.ts +3 -0
- package/controls/validation/validationsummary.ngfactory.d.ts +1 -0
- package/controls/wizard/wizard.d.ts +7 -0
- package/controls/wizard/wizard.module.d.ts +2 -0
- package/controls/wizard/wizard.module.ngfactory.d.ts +3 -0
- package/controls/wizard/wizard.ngfactory.d.ts +1 -0
- package/controls/wizard/wizarditem.d.ts +3 -0
- package/controls/wizard/wizarditem.ngfactory.d.ts +1 -0
- package/esm2015/controls/buttons/button.js +11 -0
- package/esm2015/controls/buttons/button.module.js +15 -0
- package/esm2015/controls/buttons/button.module.ngfactory.js +7 -0
- package/esm2015/controls/buttons/button.ngfactory.js +7 -0
- package/esm2015/controls/checkbox/checkbox.js +40 -0
- package/esm2015/controls/checkbox/checkbox.module.js +24 -0
- package/esm2015/controls/checkbox/checkbox.module.ngfactory.js +7 -0
- package/esm2015/controls/checkbox/checkbox.ngfactory.js +7 -0
- package/esm2015/controls/checkbox/checkbox.scss.ngstyle.js +7 -0
- package/esm2015/controls/checkbox/checkbox.scss.shim.ngstyle.js +7 -0
- package/esm2015/controls/checkbox/radiobutton.js +19 -0
- package/esm2015/controls/checkbox/radiobutton.ngfactory.js +7 -0
- package/esm2015/controls/checkbox/radiobutton.scss.ngstyle.js +7 -0
- package/esm2015/controls/checkbox/radiobutton.scss.shim.ngstyle.js +7 -0
- package/esm2015/controls/checkbox/radiobuttons.js +39 -0
- package/esm2015/controls/checkbox/radiobuttons.ngfactory.js +7 -0
- package/esm2015/controls/confirm/confirm.js +11 -0
- package/esm2015/controls/confirm/confirm.module.js +31 -0
- package/esm2015/controls/confirm/confirm.module.ngfactory.js +7 -0
- package/esm2015/controls/confirm/confirm.ngfactory.js +7 -0
- package/esm2015/controls/confirm/confirm.service.js +102 -0
- package/esm2015/controls/confirm/confirm.service.ngfactory.js +7 -0
- package/esm2015/controls/datetime/date.js +44 -0
- package/esm2015/controls/datetime/date.ngfactory.js +7 -0
- package/esm2015/controls/datetime/dateselector.js +11 -0
- package/esm2015/controls/datetime/dateselector.ngfactory.js +7 -0
- package/esm2015/controls/datetime/datetime.js +41 -0
- package/esm2015/controls/datetime/datetime.module.js +28 -0
- package/esm2015/controls/datetime/datetime.module.ngfactory.js +7 -0
- package/esm2015/controls/datetime/datetime.ngfactory.js +7 -0
- package/esm2015/controls/datetime/time.js +41 -0
- package/esm2015/controls/datetime/time.ngfactory.js +7 -0
- package/esm2015/controls/dialog/dialog.js +51 -0
- package/esm2015/controls/dialog/dialog.module.js +15 -0
- package/esm2015/controls/dialog/dialog.module.ngfactory.js +7 -0
- package/esm2015/controls/dialog/dialog.ngfactory.js +7 -0
- package/esm2015/controls/form/form.js +49 -0
- package/esm2015/controls/form/form.module.js +15 -0
- package/esm2015/controls/form/form.module.ngfactory.js +7 -0
- package/esm2015/controls/form/form.ngfactory.js +7 -0
- package/esm2015/controls/form/inheritform.directive.js +71 -0
- package/esm2015/controls/form/inheritform.directive.ngfactory.js +7 -0
- package/esm2015/controls/grid/grid.js +24 -0
- package/esm2015/controls/grid/grid.module.js +20 -0
- package/esm2015/controls/grid/grid.module.ngfactory.js +7 -0
- package/esm2015/controls/grid/grid.ngfactory.js +7 -0
- package/esm2015/controls/grid/gridbutton.js +47 -0
- package/esm2015/controls/grid/gridbutton.ngfactory.js +7 -0
- package/esm2015/controls/grid/gridcolumn.js +26 -0
- package/esm2015/controls/grid/gridcolumn.ngfactory.js +7 -0
- package/esm2015/controls/grid/gridcolumnaction.js +27 -0
- package/esm2015/controls/grid/gridcolumnaction.ngfactory.js +7 -0
- package/esm2015/controls/grid/gridimage.js +21 -0
- package/esm2015/controls/grid/gridimage.ngfactory.js +7 -0
- package/esm2015/controls/grid/paging.js +24 -0
- package/esm2015/controls/grid/paging.ngfactory.js +7 -0
- package/esm2015/controls/input/input.js +35 -0
- package/esm2015/controls/input/input.module.js +47 -0
- package/esm2015/controls/input/input.module.ngfactory.js +7 -0
- package/esm2015/controls/input/input.ngfactory.js +7 -0
- package/esm2015/controls/input/inputarea.js +51 -0
- package/esm2015/controls/input/inputarea.ngfactory.js +7 -0
- package/esm2015/controls/input/inputcurrency.js +39 -0
- package/esm2015/controls/input/inputcurrency.ngfactory.js +7 -0
- package/esm2015/controls/input/inputdecimal.js +39 -0
- package/esm2015/controls/input/inputdecimal.ngfactory.js +7 -0
- package/esm2015/controls/input/inputemail.js +39 -0
- package/esm2015/controls/input/inputemail.ngfactory.js +7 -0
- package/esm2015/controls/input/inputinteger.js +39 -0
- package/esm2015/controls/input/inputinteger.ngfactory.js +7 -0
- package/esm2015/controls/input/inputpassword.js +39 -0
- package/esm2015/controls/input/inputpassword.ngfactory.js +7 -0
- package/esm2015/controls/input/inputsearch.js +39 -0
- package/esm2015/controls/input/inputsearch.ngfactory.js +7 -0
- package/esm2015/controls/layout/formlayout.directive.js +10 -0
- package/esm2015/controls/layout/formlayout.directive.ngfactory.js +7 -0
- package/esm2015/controls/layout/layout.module.js +29 -0
- package/esm2015/controls/layout/layout.module.ngfactory.js +7 -0
- package/esm2015/controls/layout/tocontrolheight.pipe.js +29 -0
- package/esm2015/controls/layout/tocontrolheight.pipe.ngfactory.js +7 -0
- package/esm2015/controls/layout/tocontrolwidthcss.pipe.js +47 -0
- package/esm2015/controls/layout/tocontrolwidthcss.pipe.ngfactory.js +7 -0
- package/esm2015/controls/layout/tolabelheight.pipe.js +29 -0
- package/esm2015/controls/layout/tolabelheight.pipe.ngfactory.js +7 -0
- package/esm2015/controls/layout/tolabelwidthcss.pipe.js +31 -0
- package/esm2015/controls/layout/tolabelwidthcss.pipe.ngfactory.js +7 -0
- package/esm2015/controls/list/dropdown.js +65 -0
- package/esm2015/controls/list/dropdown.ngfactory.js +7 -0
- package/esm2015/controls/list/list.module.js +30 -0
- package/esm2015/controls/list/list.module.ngfactory.js +7 -0
- package/esm2015/controls/list/listbox.js +41 -0
- package/esm2015/controls/list/listbox.ngfactory.js +7 -0
- package/esm2015/controls/static/formcontainer.js +53 -0
- package/esm2015/controls/static/formcontainer.ngfactory.js +7 -0
- package/esm2015/controls/static/staticlabel.js +39 -0
- package/esm2015/controls/static/staticlabel.module.js +20 -0
- package/esm2015/controls/static/staticlabel.module.ngfactory.js +7 -0
- package/esm2015/controls/static/staticlabel.ngfactory.js +7 -0
- package/esm2015/controls/tabs/tab.js +18 -0
- package/esm2015/controls/tabs/tab.ngfactory.js +7 -0
- package/esm2015/controls/tabs/tabitem.js +11 -0
- package/esm2015/controls/tabs/tabitem.ngfactory.js +7 -0
- package/esm2015/controls/tabs/tabs.module.js +16 -0
- package/esm2015/controls/tabs/tabs.module.ngfactory.js +7 -0
- package/esm2015/controls/tinymce/tinymce.js +50 -0
- package/esm2015/controls/tinymce/tinymce.module.js +25 -0
- package/esm2015/controls/tinymce/tinymce.module.ngfactory.js +7 -0
- package/esm2015/controls/tinymce/tinymce.ngfactory.js +7 -0
- package/esm2015/controls/tooltip/tooltip.js +42 -0
- package/esm2015/controls/tooltip/tooltip.module.js +15 -0
- package/esm2015/controls/tooltip/tooltip.module.ngfactory.js +7 -0
- package/esm2015/controls/tooltip/tooltip.ngfactory.js +7 -0
- package/esm2015/controls/treeview/ngtreeitemaction.js +17 -0
- package/esm2015/controls/treeview/ngtreeitemaction.ngfactory.js +7 -0
- package/esm2015/controls/treeview/treeview.js +11 -0
- package/esm2015/controls/treeview/treeview.module.js +17 -0
- package/esm2015/controls/treeview/treeview.module.ngfactory.js +7 -0
- package/esm2015/controls/treeview/treeview.ngfactory.js +7 -0
- package/esm2015/controls/treeview/treeviewchild.js +11 -0
- package/esm2015/controls/treeview/treeviewchild.ngfactory.js +7 -0
- package/esm2015/controls/upload/upload.js +44 -0
- package/esm2015/controls/upload/upload.module.js +16 -0
- package/esm2015/controls/upload/upload.module.ngfactory.js +7 -0
- package/esm2015/controls/upload/upload.ngfactory.js +7 -0
- package/esm2015/controls/upload/upload.scss.ngstyle.js +7 -0
- package/esm2015/controls/upload/upload.scss.shim.ngstyle.js +7 -0
- package/esm2015/controls/upload/uploadmultiple.js +44 -0
- package/esm2015/controls/upload/uploadmultiple.ngfactory.js +7 -0
- package/esm2015/controls/validation/validationsummary.js +34 -0
- package/esm2015/controls/validation/validationsummary.module.js +15 -0
- package/esm2015/controls/validation/validationsummary.module.ngfactory.js +7 -0
- package/esm2015/controls/validation/validationsummary.ngfactory.js +7 -0
- package/esm2015/controls/wizard/wizard.js +23 -0
- package/esm2015/controls/wizard/wizard.module.js +16 -0
- package/esm2015/controls/wizard/wizard.module.ngfactory.js +7 -0
- package/esm2015/controls/wizard/wizard.ngfactory.js +7 -0
- package/esm2015/controls/wizard/wizarditem.js +11 -0
- package/esm2015/controls/wizard/wizarditem.ngfactory.js +7 -0
- package/esm2015/public_api.js +72 -0
- package/esm2015/public_api.ngfactory.js +7 -0
- package/esm2015/simpleangularcontrols-sac-bootstrap3.js +5 -0
- package/esm2015/simpleangularcontrols-sac-bootstrap3.ngfactory.js +7 -0
- package/fesm2015/simpleangularcontrols-sac-bootstrap3.js +1832 -0
- package/fesm2015/simpleangularcontrols-sac-bootstrap3.js.map +1 -0
- package/package.json +32 -0
- package/public_api.d.ts +66 -0
- package/public_api.ngfactory.d.ts +1 -0
- package/simpleangularcontrols-sac-bootstrap3-10.0.0-rc.1.tgz +0 -0
- package/simpleangularcontrols-sac-bootstrap3.d.ts +4 -0
- package/simpleangularcontrols-sac-bootstrap3.metadata.json +1 -0
- package/simpleangularcontrols-sac-bootstrap3.ngfactory.d.ts +1 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import { SacGridImageCommon } from '@simpleangularcontrols/sac-common';
|
|
3
|
+
export class SacGridImageComponent extends SacGridImageCommon {
|
|
4
|
+
getIconClass() {
|
|
5
|
+
switch (this.iconstyle) {
|
|
6
|
+
case 'edit':
|
|
7
|
+
return 'sprite icon-sprite-base-main_edit';
|
|
8
|
+
case 'delete':
|
|
9
|
+
return 'sprite icon-sprite-base-main_delete';
|
|
10
|
+
default:
|
|
11
|
+
return this.iconstyle;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
SacGridImageComponent.decorators = [
|
|
16
|
+
{ type: Component, args: [{
|
|
17
|
+
selector: 'sac-gridimage',
|
|
18
|
+
template: "<span style=\"padding-right: 5px;\"><span class=\"{{getIconClass()}}\"></span></span>\r\n"
|
|
19
|
+
},] }
|
|
20
|
+
];
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZGltYWdlLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9ncmlkL2dyaWRpbWFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUEyQyxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQWlCLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFPdEYsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGtCQUFrQjtJQUVwRCxZQUFZO1FBQ2pCLFFBQVEsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUN0QixLQUFLLE1BQU07Z0JBQ1QsT0FBTyxtQ0FBbUMsQ0FBQztZQUM3QyxLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxxQ0FBcUMsQ0FBQztZQUMvQztnQkFDRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDekI7SUFDSCxDQUFDOzs7WUFmRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLHFHQUErQjthQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhY0dyaWRDb21tb24sIFNhY0dyaWRJbWFnZUNvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtZ3JpZGltYWdlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZGltYWdlLmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNHcmlkSW1hZ2VDb21wb25lbnQgZXh0ZW5kcyBTYWNHcmlkSW1hZ2VDb21tb24ge1xyXG5cclxuICBwdWJsaWMgZ2V0SWNvbkNsYXNzKCk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuaWNvbnN0eWxlKSB7XHJcbiAgICAgIGNhc2UgJ2VkaXQnOlxyXG4gICAgICAgIHJldHVybiAnc3ByaXRlIGljb24tc3ByaXRlLWJhc2UtbWFpbl9lZGl0JztcclxuICAgICAgY2FzZSAnZGVsZXRlJzpcclxuICAgICAgICByZXR1cm4gJ3Nwcml0ZSBpY29uLXNwcml0ZS1iYXNlLW1haW5fZGVsZXRlJztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gdGhpcy5pY29uc3R5bGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZGltYWdlLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvZ3JpZC9ncmlkaW1hZ2UubmdmYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Component, forwardRef, Injector } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacPagingCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
export class SacPagingComponent extends SacPagingCommon {
|
|
5
|
+
/**
|
|
6
|
+
* Konstruktor
|
|
7
|
+
*/
|
|
8
|
+
constructor(injector) { super(injector); }
|
|
9
|
+
}
|
|
10
|
+
SacPagingComponent.decorators = [
|
|
11
|
+
{ type: Component, args: [{
|
|
12
|
+
selector: 'sac-paging',
|
|
13
|
+
template: "<div class=\"row\">\r\n <div class=\"pager-nav col-sm-9\" id=\"{{name}}\">\r\n <ul class=\"pagination\" style=\"margin: 10px 0\">\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === firstPageIndex}\"\r\n >\r\n <a (click)=\"firstPage()\">\u00AB</a>\r\n </li>\r\n <li\r\n *ngFor=\"let page of paginators; let i = index\"\r\n [ngClass]=\"{'active': page === activePageIndex}\"\r\n >\r\n <a (click)=\"changePage(page)\">{{page + 1 }}</a>\r\n </li>\r\n <li\r\n [ngClass]=\"{'aspNetDisabled disabled': activePageIndex === lastPageIndex}\"\r\n >\r\n <a (click)=\"lastPage()\">\u00BB</a>\r\n </li>\r\n </ul>\r\n </div>\r\n <div class=\"col-sm-3 text-right\" style=\"margin: 20px 0\">\r\n Seite {{getCurrentPageNumber()}} von {{getTotalPageNumber()}}\r\n </div>\r\n</div>\r\n",
|
|
14
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
15
|
+
providers: [
|
|
16
|
+
{ provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacPagingComponent },
|
|
17
|
+
{ provide: NG_VALIDATORS, multi: true, useExisting: forwardRef(() => SacPagingComponent) }
|
|
18
|
+
]
|
|
19
|
+
},] }
|
|
20
|
+
];
|
|
21
|
+
SacPagingComponent.ctorParameters = () => [
|
|
22
|
+
{ type: Injector }
|
|
23
|
+
];
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9ncmlkL3BhZ2luZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVlwRSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsZUFBZTtJQUVyRDs7T0FFRztJQUNILFlBQVksUUFBa0IsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDOzs7WUFkckQsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxZQUFZO2dCQUN0Qix5NEJBQTRCO2dCQUM1QiwrRkFBK0Y7Z0JBQy9GLFNBQVMsRUFBRTtvQkFDVCxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRTtvQkFDNUUsRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFO2lCQUMzRjthQUNGOzs7WUFiK0IsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY1BhZ2luZ0NvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtcGFnaW5nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnaW5nLmh0bWwnLFxyXG4gIC8vIFZhbHVlIEFjY2VzcyBQcm92aWRlciByZWdpc3RyaWVyZW4sIGRhbWl0IFdlcnQgdmlhIE1vZGVsIGdlc2NocmllYmVuIHVuZCBnZWxlc2VuIHdlcmRlbiBrYW5uXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCBtdWx0aTogdHJ1ZSwgdXNlRXhpc3Rpbmc6IFNhY1BhZ2luZ0NvbXBvbmVudCB9LFxyXG4gICAgeyBwcm92aWRlOiBOR19WQUxJREFUT1JTLCBtdWx0aTogdHJ1ZSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjUGFnaW5nQ29tcG9uZW50KSB9XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FjUGFnaW5nQ29tcG9uZW50IGV4dGVuZHMgU2FjUGFnaW5nQ29tbW9uIHtcclxuXHJcbiAgLyoqXHJcbiAgICogS29uc3RydWt0b3JcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHsgc3VwZXIoaW5qZWN0b3IpOyB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvZ3JpZC9wYWdpbmcubmdmYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iXX0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Component, Host, Injector, Optional, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacInputCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
import { SacFormLayoutDirective } from '../layout/formlayout.directive';
|
|
5
|
+
export class SacInputComponent extends SacInputCommon {
|
|
6
|
+
// #region Constructors
|
|
7
|
+
/**
|
|
8
|
+
* Constructor
|
|
9
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
10
|
+
* @param injector Injector for injecting services
|
|
11
|
+
*/
|
|
12
|
+
constructor(formLayout, injector) {
|
|
13
|
+
super(formLayout, injector);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
SacInputComponent.decorators = [
|
|
17
|
+
{ type: Component, args: [{
|
|
18
|
+
selector: 'sac-input',
|
|
19
|
+
template: "<div\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [ngClass]=\"[componentHeight | toControlHeight]\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
21
|
+
providers: [
|
|
22
|
+
{ provide: NG_VALUE_ACCESSOR, multi: true, useExisting: SacInputComponent },
|
|
23
|
+
{
|
|
24
|
+
provide: NG_VALIDATORS,
|
|
25
|
+
multi: true,
|
|
26
|
+
useExisting: forwardRef(() => SacInputComponent),
|
|
27
|
+
},
|
|
28
|
+
]
|
|
29
|
+
},] }
|
|
30
|
+
];
|
|
31
|
+
SacInputComponent.ctorParameters = () => [
|
|
32
|
+
{ type: SacFormLayoutDirective, decorators: [{ type: Host }, { type: Optional }] },
|
|
33
|
+
{ type: Injector }
|
|
34
|
+
];
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuanMiLCJzb3VyY2VSb290IjoiQzovUHJvamVrdGUvc2ltcGxlYW5ndWxhcmNvbnRyb2xzLW5nMTAvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2lucHV0L2lucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFleEUsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGNBQWM7SUFDbkQsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUNzQixVQUFrQyxFQUN0RCxRQUFrQjtRQUVsQixLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OztZQTFCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFdBQVc7Z0JBQ3JCLDgvQ0FBMkI7Z0JBQzNCLCtGQUErRjtnQkFDL0YsU0FBUyxFQUFFO29CQUNULEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFO29CQUMzRTt3QkFDRSxPQUFPLEVBQUUsYUFBYTt3QkFDdEIsS0FBSyxFQUFFLElBQUk7d0JBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztxQkFDakQ7aUJBQ0Y7YUFDRjs7O1lBZFEsc0JBQXNCLHVCQXdCMUIsSUFBSSxZQUFJLFFBQVE7WUEzQkssUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dENvbW1vbiB9IGZyb20gJ0BzaW1wbGVhbmd1bGFyY29udHJvbHMvc2FjLWNvbW1vbic7XHJcbmltcG9ydCB7IFNhY0Zvcm1MYXlvdXREaXJlY3RpdmUgfSBmcm9tICcuLi9sYXlvdXQvZm9ybWxheW91dC5kaXJlY3RpdmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzYWMtaW5wdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgbXVsdGk6IHRydWUsIHVzZUV4aXN0aW5nOiBTYWNJbnB1dENvbXBvbmVudCB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRDb21wb25lbnQpLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FjSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBTYWNJbnB1dENvbW1vbiB7XHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAcGFyYW0gZm9ybUxheW91dCBTYWNGb3JtTGF5b3V0IHRvIGRlZmluZSBzY29wZWQgbGF5b3V0IHNldHRpbmdzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoZm9ybUxheW91dCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { FormsModule } from '@angular/forms';
|
|
4
|
+
import { SACBootstrap3TooltipModule } from '../tooltip/tooltip.module';
|
|
5
|
+
import { SacInputComponent } from './input';
|
|
6
|
+
import { SacInputAreaComponent } from './inputarea';
|
|
7
|
+
import { SacInputCurrencyComponent } from './inputcurrency';
|
|
8
|
+
import { SacInputDecimalComponent } from './inputdecimal';
|
|
9
|
+
import { SacInputEmailComponent } from './inputemail';
|
|
10
|
+
import { SacInputIntegerComponent } from './inputinteger';
|
|
11
|
+
import { SacInputPasswordComponent } from './inputpassword';
|
|
12
|
+
import { SacInputSearchComponent } from './inputsearch';
|
|
13
|
+
import { SACBootstrap3LayoutModule } from '../layout/layout.module';
|
|
14
|
+
export class SACBootstrap3InputModule {
|
|
15
|
+
}
|
|
16
|
+
SACBootstrap3InputModule.decorators = [
|
|
17
|
+
{ type: NgModule, args: [{
|
|
18
|
+
declarations: [
|
|
19
|
+
SacInputComponent,
|
|
20
|
+
SacInputAreaComponent,
|
|
21
|
+
SacInputCurrencyComponent,
|
|
22
|
+
SacInputDecimalComponent,
|
|
23
|
+
SacInputEmailComponent,
|
|
24
|
+
SacInputIntegerComponent,
|
|
25
|
+
SacInputPasswordComponent,
|
|
26
|
+
SacInputSearchComponent,
|
|
27
|
+
],
|
|
28
|
+
imports: [
|
|
29
|
+
CommonModule,
|
|
30
|
+
CommonModule,
|
|
31
|
+
FormsModule,
|
|
32
|
+
SACBootstrap3TooltipModule,
|
|
33
|
+
SACBootstrap3LayoutModule,
|
|
34
|
+
],
|
|
35
|
+
exports: [
|
|
36
|
+
SacInputComponent,
|
|
37
|
+
SacInputAreaComponent,
|
|
38
|
+
SacInputCurrencyComponent,
|
|
39
|
+
SacInputDecimalComponent,
|
|
40
|
+
SacInputEmailComponent,
|
|
41
|
+
SacInputIntegerComponent,
|
|
42
|
+
SacInputPasswordComponent,
|
|
43
|
+
SacInputSearchComponent,
|
|
44
|
+
],
|
|
45
|
+
},] }
|
|
46
|
+
];
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9pbnB1dC9pbnB1dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUM1QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQStCcEUsTUFBTSxPQUFPLHdCQUF3Qjs7O1lBN0JwQyxRQUFRLFNBQUM7Z0JBQ1IsWUFBWSxFQUFFO29CQUNaLGlCQUFpQjtvQkFDakIscUJBQXFCO29CQUNyQix5QkFBeUI7b0JBQ3pCLHdCQUF3QjtvQkFDeEIsc0JBQXNCO29CQUN0Qix3QkFBd0I7b0JBQ3hCLHlCQUF5QjtvQkFDekIsdUJBQXVCO2lCQUN4QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixZQUFZO29CQUNaLFdBQVc7b0JBQ1gsMEJBQTBCO29CQUMxQix5QkFBeUI7aUJBQzFCO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxpQkFBaUI7b0JBQ2pCLHFCQUFxQjtvQkFDckIseUJBQXlCO29CQUN6Qix3QkFBd0I7b0JBQ3hCLHNCQUFzQjtvQkFDdEIsd0JBQXdCO29CQUN4Qix5QkFBeUI7b0JBQ3pCLHVCQUF1QjtpQkFDeEI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTQUNCb290c3RyYXAzVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4uL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dEFyZWFDb21wb25lbnQgfSBmcm9tICcuL2lucHV0YXJlYSc7XHJcbmltcG9ydCB7IFNhY0lucHV0Q3VycmVuY3lDb21wb25lbnQgfSBmcm9tICcuL2lucHV0Y3VycmVuY3knO1xyXG5pbXBvcnQgeyBTYWNJbnB1dERlY2ltYWxDb21wb25lbnQgfSBmcm9tICcuL2lucHV0ZGVjaW1hbCc7XHJcbmltcG9ydCB7IFNhY0lucHV0RW1haWxDb21wb25lbnQgfSBmcm9tICcuL2lucHV0ZW1haWwnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dEludGVnZXJDb21wb25lbnQgfSBmcm9tICcuL2lucHV0aW50ZWdlcic7XHJcbmltcG9ydCB7IFNhY0lucHV0UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0cGFzc3dvcmQnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vaW5wdXRzZWFyY2gnO1xyXG5pbXBvcnQgeyBTQUNCb290c3RyYXAzTGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vbGF5b3V0L2xheW91dC5tb2R1bGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNhY0lucHV0Q29tcG9uZW50LFxyXG4gICAgU2FjSW5wdXRBcmVhQ29tcG9uZW50LFxyXG4gICAgU2FjSW5wdXRDdXJyZW5jeUNvbXBvbmVudCxcclxuICAgIFNhY0lucHV0RGVjaW1hbENvbXBvbmVudCxcclxuICAgIFNhY0lucHV0RW1haWxDb21wb25lbnQsXHJcbiAgICBTYWNJbnB1dEludGVnZXJDb21wb25lbnQsXHJcbiAgICBTYWNJbnB1dFBhc3N3b3JkQ29tcG9uZW50LFxyXG4gICAgU2FjSW5wdXRTZWFyY2hDb21wb25lbnQsXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIFNBQ0Jvb3RzdHJhcDNUb29sdGlwTW9kdWxlLFxyXG4gICAgU0FDQm9vdHN0cmFwM0xheW91dE1vZHVsZSxcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFNhY0lucHV0Q29tcG9uZW50LFxyXG4gICAgU2FjSW5wdXRBcmVhQ29tcG9uZW50LFxyXG4gICAgU2FjSW5wdXRDdXJyZW5jeUNvbXBvbmVudCxcclxuICAgIFNhY0lucHV0RGVjaW1hbENvbXBvbmVudCxcclxuICAgIFNhY0lucHV0RW1haWxDb21wb25lbnQsXHJcbiAgICBTYWNJbnB1dEludGVnZXJDb21wb25lbnQsXHJcbiAgICBTYWNJbnB1dFBhc3N3b3JkQ29tcG9uZW50LFxyXG4gICAgU2FjSW5wdXRTZWFyY2hDb21wb25lbnQsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNBQ0Jvb3RzdHJhcDNJbnB1dE1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQubW9kdWxlLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvaW5wdXQvaW5wdXQubW9kdWxlLm5nZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBpMSBmcm9tICcuL2lucHV0Lm1vZHVsZSc7XG5pbXBvcnQgKiBhcyBpMiBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0ICogYXMgaTMgZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0ICogYXMgaTQgZnJvbSAnLi4vdG9vbHRpcC90b29sdGlwJztcbmltcG9ydCAqIGFzIGk1IGZyb20gJy4uL2xheW91dC9mb3JtbGF5b3V0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgKiBhcyBpNiBmcm9tICcuL2lucHV0JztcbmltcG9ydCAqIGFzIGk3IGZyb20gJy4vaW5wdXRhcmVhJztcbmltcG9ydCAqIGFzIGk4IGZyb20gJy4vaW5wdXRjdXJyZW5jeSc7XG5pbXBvcnQgKiBhcyBpOSBmcm9tICcuL2lucHV0ZGVjaW1hbCc7XG5pbXBvcnQgKiBhcyBpMTAgZnJvbSAnLi9pbnB1dGVtYWlsJztcbmltcG9ydCAqIGFzIGkxMSBmcm9tICcuL2lucHV0aW50ZWdlcic7XG5pbXBvcnQgKiBhcyBpMTIgZnJvbSAnLi9pbnB1dHBhc3N3b3JkJztcbmltcG9ydCAqIGFzIGkxMyBmcm9tICcuL2lucHV0c2VhcmNoJztcbmltcG9ydCAqIGFzIGkxNCBmcm9tICcuLi9sYXlvdXQvdG9jb250cm9saGVpZ2h0LnBpcGUnO1xuaW1wb3J0ICogYXMgaTE1IGZyb20gJy4uL2xheW91dC90b2NvbnRyb2x3aWR0aGNzcy5waXBlJztcbmltcG9ydCAqIGFzIGkxNiBmcm9tICcuLi9sYXlvdXQvdG9sYWJlbGhlaWdodC5waXBlJztcbmltcG9ydCAqIGFzIGkxNyBmcm9tICcuLi9sYXlvdXQvdG9sYWJlbHdpZHRoY3NzLnBpcGUnO1xuaW1wb3J0ICogYXMgaTE4IGZyb20gJy4uL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuaW1wb3J0ICogYXMgaTE5IGZyb20gJy4uL2xheW91dC9sYXlvdXQubW9kdWxlJztcbmV4cG9ydCBjb25zdCBTQUNCb290c3RyYXAzSW5wdXRNb2R1bGVOZ0ZhY3Rvcnk6aTAuTmdNb2R1bGVGYWN0b3J5PGkxLlNBQ0Jvb3RzdHJhcDNJbnB1dE1vZHVsZT4gPSAobnVsbCBhcyBhbnkpO1xudmFyIF9kZWNsMF8wOmkyLk5nQ2xhc3MgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTppMi5OZ0NvbXBvbmVudE91dGxldCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yOmkyLk5nRm9yT2Y8YW55LGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzppMi5OZ0lmPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDppMi5OZ1RlbXBsYXRlT3V0bGV0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzU6aTIuTmdTdHlsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF82OmkyLk5nU3dpdGNoID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzc6aTIuTmdTd2l0Y2hDYXNlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzg6aTIuTmdTd2l0Y2hEZWZhdWx0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzk6aTIuTmdQbHVyYWwgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTA6aTIuTmdQbHVyYWxDYXNlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzExOmkzLsm1YW5ndWxhcl9wYWNrYWdlc19mb3Jtc19mb3Jtc195ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEyOmkzLk5nU2VsZWN0T3B0aW9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEzOmkzLsm1YW5ndWxhcl9wYWNrYWdlc19mb3Jtc19mb3Jtc194ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0OmkzLkRlZmF1bHRWYWx1ZUFjY2Vzc29yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE1OmkzLk51bWJlclZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTY6aTMuUmFuZ2VWYWx1ZUFjY2Vzc29yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE3OmkzLkNoZWNrYm94Q29udHJvbFZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTg6aTMuU2VsZWN0Q29udHJvbFZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTk6aTMuU2VsZWN0TXVsdGlwbGVDb250cm9sVmFsdWVBY2Nlc3NvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMDppMy5SYWRpb0NvbnRyb2xWYWx1ZUFjY2Vzc29yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIxOmkzLk5nQ29udHJvbFN0YXR1cyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMjppMy5OZ0NvbnRyb2xTdGF0dXNHcm91cCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMzppMy5SZXF1aXJlZFZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yNDppMy5NaW5MZW5ndGhWYWxpZGF0b3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjU6aTMuTWF4TGVuZ3RoVmFsaWRhdG9yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzI2OmkzLlBhdHRlcm5WYWxpZGF0b3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjc6aTMuQ2hlY2tib3hSZXF1aXJlZFZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yODppMy5FbWFpbFZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yOTppMy5OZ01vZGVsID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzMwOmkzLk5nTW9kZWxHcm91cCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8zMTppMy5OZ0Zvcm0gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzI6aTQuU2FjVG9vbHRpcENvbXBvbmVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8zMzppNS5TYWNGb3JtTGF5b3V0RGlyZWN0aXZlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzM0Omk2LlNhY0lucHV0Q29tcG9uZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzM1Omk3LlNhY0lucHV0QXJlYUNvbXBvbmVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8zNjppOC5TYWNJbnB1dEN1cnJlbmN5Q29tcG9uZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzM3Omk5LlNhY0lucHV0RGVjaW1hbENvbXBvbmVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8zODppMTAuU2FjSW5wdXRFbWFpbENvbXBvbmVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8zOTppMTEuU2FjSW5wdXRJbnRlZ2VyQ29tcG9uZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzQwOmkxMi5TYWNJbnB1dFBhc3N3b3JkQ29tcG9uZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzQxOmkxMy5TYWNJbnB1dFNlYXJjaENvbXBvbmVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80MjppMi5Bc3luY1BpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDM6aTIuVXBwZXJDYXNlUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80NDppMi5Mb3dlckNhc2VQaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzQ1OmkyLkpzb25QaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzQ2OmkyLlNsaWNlUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80NzppMi5EZWNpbWFsUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80ODppMi5QZXJjZW50UGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80OTppMi5UaXRsZUNhc2VQaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzUwOmkyLkN1cnJlbmN5UGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF81MTppMi5EYXRlUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF81MjppMi5JMThuUGx1cmFsUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF81MzppMi5JMThuU2VsZWN0UGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF81NDppMi5LZXlWYWx1ZVBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTU6aTE0LlNhY1RvQ29udHJvbEhlaWdodFBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTY6aTE1LlNhY1RvQ29udHJvbFdpZHRoQ3NzUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF81NzppMTYuU2FjVG9MYWJlbEhlaWdodFBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTg6aTE3LlNhY1RvTGFiZWxXaWR0aENzc1BpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTk6aTIuQ29tbW9uTW9kdWxlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzYwOmkzLkZvcm1zTW9kdWxlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzYxOmkxOC5TQUNCb290c3RyYXAzVG9vbHRpcE1vZHVsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF82MjppMTkuU0FDQm9vdHN0cmFwM0xheW91dE1vZHVsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF82MzppMC5UZW1wbGF0ZVJlZjxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzY0OmkwLkVsZW1lbnRSZWY8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRDb21wb25lbnRfSG9zdF8xXzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0Q29tcG9uZW50XzFfMSgpOnZvaWQge1xuICBpZiAoKChfZGVjbDBfMzQuZGlzYWJsZWxhYmVsID09PSBmYWxzZSkgJiYgIV9kZWNsMF8zNC5pc0FkYXB0aXZlTGFiZWwpKSB7XG4gICAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbiAgICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ2NvbC14cy0xMiBjb250cm9sLWxhYmVsJztcbiAgICBjdXJyVmFsXzA7XG4gICAgY29uc3QgY3VyclZhbF8xOmFueSA9IFsoKF9kZWNsMF8zNC5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKT8gX2RlY2wwXzU4LnRyYW5zZm9ybShfZGVjbDBfMzQubGFiZWxTaXplcyk6ICdzci1vbmx5JyldO1xuICAgIGN1cnJWYWxfMTtcbiAgICBjb25zdCBjdXJyVmFsXzI6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zNC5uYW1lLCdsYWJlbCcpO1xuICAgIGN1cnJWYWxfMjtcbiAgICBjb25zdCBjdXJyVmFsXzM6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zNC5uYW1lLCcnKTtcbiAgICBjdXJyVmFsXzM7XG4gICAgY29uc3QgY3VyclZhbF80OmFueSA9IF9kZWNsMF8zNC5pc3JlcXVpcmVkO1xuICAgIGN1cnJWYWxfNDtcbiAgICBjb25zdCBjdXJyVmFsXzU6YW55ID0gX2RlY2wwXzM0LmxhYmVsO1xuICAgIGN1cnJWYWxfNTtcbiAgfVxufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRDb21wb25lbnRfMV8yKCk6dm9pZCB7XG4gIGlmICgoX2RlY2wwXzM0LmlzQWRhcHRpdmVMYWJlbCAmJiAhX2RlY2wwXzM0LmRpc2FibGVsYWJlbCkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAnZm9ybS1sYWJlbC1hZGFwdGl2ZSBmb3JtLWxhYmVsLWZpeGVkJztcbiAgICBjdXJyVmFsXzA7XG4gICAgY29uc3QgY3VyclZhbF8xOmFueSA9IHsncmVxdWlyZWQnOl9kZWNsMF8zNC5pc3JlcXVpcmVkfTtcbiAgICBjdXJyVmFsXzE7XG4gICAgY29uc3QgY3VyclZhbF8yOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzQubmFtZSwnJyk7XG4gICAgY3VyclZhbF8yO1xuICAgIGNvbnN0IGN1cnJWYWxfMzphbnkgPSBfZGVjbDBfMzQubGFiZWw7XG4gICAgY3VyclZhbF8zO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dENvbXBvbmVudF8xXzMoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM0LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zNC5pbnZhbGlkKSAmJiAoX2RlY2wwXzM0LmRpcnR5IHx8IF9kZWNsMF8zNC50b3VjaGVkKSkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSBfZGVjbDBfNDIudHJhbnNmb3JtKF9kZWNsMF8zNC5HZXRFcnJvck1lc3NhZ2UoKSk7XG4gICAgY3VyclZhbF8wO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dENvbXBvbmVudF8xXzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbiAgY29uc3QgY3VyclZhbF8wOmFueSA9ICdyb3cgZm9ybS1ncm91cCc7XG4gIGN1cnJWYWxfMDtcbiAgY29uc3QgY3VyclZhbF8xOmFueSA9IF9kZWNsMF81Ny50cmFuc2Zvcm0oX2RlY2wwXzM0LmNvbXBvbmVudEhlaWdodCk7XG4gIGN1cnJWYWxfMTtcbiAgY29uc3QgY3VyclZhbF8yOmFueSA9IChfZGVjbDBfMzQuaW52YWxpZCAmJiAoX2RlY2wwXzM0LmRpcnR5IHx8IF9kZWNsMF8zNC50b3VjaGVkKSk7XG4gIGN1cnJWYWxfMjtcbiAgY29uc3QgY3VyclZhbF8zOmFueSA9ICgoX2RlY2wwXzM0LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpICYmICFfZGVjbDBfMzQuaXNBZGFwdGl2ZUxhYmVsKTtcbiAgY3VyclZhbF8zO1xuICBjb25zdCBjdXJyVmFsXzQ6YW55ID0gJ2NvbC14cy0xMic7XG4gIGN1cnJWYWxfNDtcbiAgY29uc3QgY3VyclZhbF81OmFueSA9IFsoKF9kZWNsMF8zNC5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKT8gX2RlY2wwXzU2LnRyYW5zZm9ybShfZGVjbDBfMzQubGFiZWxTaXplcyk6ICcnKV07XG4gIGN1cnJWYWxfNTtcbiAgY29uc3QgY3VyclZhbF82OmFueSA9ICdmb3JtLWNvbnRyb2wnO1xuICBjdXJyVmFsXzY7XG4gIGNvbnN0IGN1cnJWYWxfNzphbnkgPSBbX2RlY2wwXzU1LnRyYW5zZm9ybShfZGVjbDBfMzQuY29tcG9uZW50SGVpZ2h0KV07XG4gIGN1cnJWYWxfNztcbiAgY29uc3QgY3VyclZhbF84OmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzQubmFtZSwnJyk7XG4gIGN1cnJWYWxfODtcbiAgY29uc3QgY3VyclZhbF85OmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzQubmFtZSwnJyk7XG4gIGN1cnJWYWxfOTtcbiAgY29uc3QgY3VyclZhbF8xMDphbnkgPSBfZGVjbDBfMzQudmFsdWU7XG4gIGN1cnJWYWxfMTA7XG4gIGNvbnN0IGN1cnJWYWxfMTE6YW55ID0gX2RlY2wwXzM0LnBsYWNlaG9sZGVyO1xuICBjdXJyVmFsXzExO1xuICBjb25zdCBjdXJyVmFsXzEyOmFueSA9IF9kZWNsMF8zNC5tYXhsZW5ndGg7XG4gIGN1cnJWYWxfMTI7XG4gIGNvbnN0IGN1cnJWYWxfMTM6YW55ID0gX2RlY2wwXzM0LmlzZGlzYWJsZWQ7XG4gIGN1cnJWYWxfMTM7XG4gIGNvbnN0IGN1cnJWYWxfMTQ6YW55ID0gX2RlY2wwXzM0LnJlYWRvbmx5O1xuICBjdXJyVmFsXzE0O1xuICBjb25zdCBjdXJyVmFsXzE1OmFueSA9IChfZGVjbDBfMzQuaXNBZGFwdGl2ZUxhYmVsICYmICFfZGVjbDBfMzQuZGlzYWJsZWxhYmVsKTtcbiAgY3VyclZhbF8xNTtcbiAgY29uc3QgY3VyclZhbF8xNjphbnkgPSAoKF9kZWNsMF8zNC5pc2lubGluZWVycm9yZW5hYmxlZCAmJiBfZGVjbDBfMzQuaW52YWxpZCkgJiYgKF9kZWNsMF8zNC5kaXJ0eSB8fCBfZGVjbDBfMzQudG91Y2hlZCkpO1xuICBjdXJyVmFsXzE2O1xuICBjb25zdCBwZF8xNzphbnkgPSAoKDxhbnk+X2RlY2wwXzM0Lm9uVG91Y2goKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMTg6YW55ID0gKCg8YW55Pl9kZWNsMF8zNC5zZXRWYWx1ZShfYW55LnRhcmdldC52YWx1ZSkpICE9PSBmYWxzZSk7XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEFyZWFDb21wb25lbnRfSG9zdF8yXzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0QXJlYUNvbXBvbmVudF8yXzEoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM1LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpICYmICFfZGVjbDBfMzUuaXNBZGFwdGl2ZUxhYmVsKSkge1xuICAgIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gICAgY29uc3QgY3VyclZhbF8wOmFueSA9ICdjb2wteHMtMTIgY29udHJvbC1sYWJlbCc7XG4gICAgY3VyclZhbF8wO1xuICAgIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBbKChfZGVjbDBfMzUuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81OC50cmFuc2Zvcm0oX2RlY2wwXzM1LmxhYmVsU2l6ZXMpOiAnc3Itb25seScpXTtcbiAgICBjdXJyVmFsXzE7XG4gICAgY29uc3QgY3VyclZhbF8yOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzUubmFtZSwnbGFiZWwnKTtcbiAgICBjdXJyVmFsXzI7XG4gICAgY29uc3QgY3VyclZhbF8zOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzUubmFtZSwnJyk7XG4gICAgY3VyclZhbF8zO1xuICAgIGNvbnN0IGN1cnJWYWxfNDphbnkgPSBfZGVjbDBfMzUuaXNyZXF1aXJlZDtcbiAgICBjdXJyVmFsXzQ7XG4gICAgY29uc3QgY3VyclZhbF81OmFueSA9IF9kZWNsMF8zNS5sYWJlbDtcbiAgICBjdXJyVmFsXzU7XG4gIH1cbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0QXJlYUNvbXBvbmVudF8yXzIoKTp2b2lkIHtcbiAgaWYgKChfZGVjbDBfMzUuaXNBZGFwdGl2ZUxhYmVsICYmICFfZGVjbDBfMzUuZGlzYWJsZWxhYmVsKSkge1xuICAgIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gICAgY29uc3QgY3VyclZhbF8wOmFueSA9ICdmb3JtLWxhYmVsLWFkYXB0aXZlIGZvcm0tbGFiZWwtZml4ZWQnO1xuICAgIGN1cnJWYWxfMDtcbiAgICBjb25zdCBjdXJyVmFsXzE6YW55ID0geydyZXF1aXJlZCc6X2RlY2wwXzM1LmlzcmVxdWlyZWR9O1xuICAgIGN1cnJWYWxfMTtcbiAgICBjb25zdCBjdXJyVmFsXzI6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zNS5uYW1lLCcnKTtcbiAgICBjdXJyVmFsXzI7XG4gICAgY29uc3QgY3VyclZhbF8zOmFueSA9IF9kZWNsMF8zNS5sYWJlbDtcbiAgICBjdXJyVmFsXzM7XG4gIH1cbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0QXJlYUNvbXBvbmVudF8yXzMoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM1LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zNS5pbnZhbGlkKSAmJiAoX2RlY2wwXzM1LmRpcnR5IHx8IF9kZWNsMF8zNS50b3VjaGVkKSkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSBfZGVjbDBfNDIudHJhbnNmb3JtKF9kZWNsMF8zNS5HZXRFcnJvck1lc3NhZ2UoKSk7XG4gICAgY3VyclZhbF8wO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEFyZWFDb21wb25lbnRfMl8wKCk6dm9pZCB7XG4gIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAncm93IGZvcm0tZ3JvdXAnO1xuICBjdXJyVmFsXzA7XG4gIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBfZGVjbDBfNTcudHJhbnNmb3JtKF9kZWNsMF8zNS5jb21wb25lbnRIZWlnaHQpO1xuICBjdXJyVmFsXzE7XG4gIGNvbnN0IGN1cnJWYWxfMjphbnkgPSAoX2RlY2wwXzM1LmludmFsaWQgJiYgKF9kZWNsMF8zNS5kaXJ0eSB8fCBfZGVjbDBfMzUudG91Y2hlZCkpO1xuICBjdXJyVmFsXzI7XG4gIGNvbnN0IGN1cnJWYWxfMzphbnkgPSAoKF9kZWNsMF8zNS5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzM1LmlzQWRhcHRpdmVMYWJlbCk7XG4gIGN1cnJWYWxfMztcbiAgY29uc3QgY3VyclZhbF80OmFueSA9ICdjb2wteHMtMTInO1xuICBjdXJyVmFsXzQ7XG4gIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBbKChfZGVjbDBfMzUuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81Ni50cmFuc2Zvcm0oX2RlY2wwXzM1LmxhYmVsU2l6ZXMpOiAnJyldO1xuICBjdXJyVmFsXzU7XG4gIGNvbnN0IGN1cnJWYWxfNjphbnkgPSAnZm9ybS1jb250cm9sJztcbiAgY3VyclZhbF82O1xuICBjb25zdCBjdXJyVmFsXzc6YW55ID0gW19kZWNsMF81NS50cmFuc2Zvcm0oX2RlY2wwXzM1LmNvbXBvbmVudEhlaWdodCldO1xuICBjdXJyVmFsXzc7XG4gIGNvbnN0IGN1cnJWYWxfODphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM1Lm5hbWUsJycpO1xuICBjdXJyVmFsXzg7XG4gIGNvbnN0IGN1cnJWYWxfOTphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM1Lm5hbWUsJycpO1xuICBjdXJyVmFsXzk7XG4gIGNvbnN0IGN1cnJWYWxfMTA6YW55ID0gKF9kZWNsMF8zNS5pbnZhbGlkICYmIChfZGVjbDBfMzUuZGlydHkgfHwgX2RlY2wwXzM1LnRvdWNoZWQpKTtcbiAgY3VyclZhbF8xMDtcbiAgY29uc3QgY3VyclZhbF8xMTphbnkgPSAoX2RlY2wwXzM1LmludmFsaWQgJiYgKF9kZWNsMF8zNS5kaXJ0eSB8fCBfZGVjbDBfMzUudG91Y2hlZCkpO1xuICBjdXJyVmFsXzExO1xuICBjb25zdCBjdXJyVmFsXzEyOmFueSA9IF9kZWNsMF8zNS5pc3JlcXVpcmVkO1xuICBjdXJyVmFsXzEyO1xuICBjb25zdCBjdXJyVmFsXzEzOmFueSA9IF9kZWNsMF8zNS52YWx1ZTtcbiAgY3VyclZhbF8xMztcbiAgY29uc3QgY3VyclZhbF8xNDphbnkgPSBfZGVjbDBfMzUucGxhY2Vob2xkZXI7XG4gIGN1cnJWYWxfMTQ7XG4gIGNvbnN0IGN1cnJWYWxfMTU6YW55ID0gX2RlY2wwXzM1LnJvd3M7XG4gIGN1cnJWYWxfMTU7XG4gIGNvbnN0IGN1cnJWYWxfMTY6YW55ID0gX2RlY2wwXzM1LmlzZGlzYWJsZWQ7XG4gIGN1cnJWYWxfMTY7XG4gIGNvbnN0IGN1cnJWYWxfMTc6YW55ID0gX2RlY2wwXzM1LnJlYWRvbmx5O1xuICBjdXJyVmFsXzE3O1xuICBjb25zdCBjdXJyVmFsXzE4OmFueSA9IChfZGVjbDBfMzUuaXNBZGFwdGl2ZUxhYmVsICYmICFfZGVjbDBfMzUuZGlzYWJsZWxhYmVsKTtcbiAgY3VyclZhbF8xODtcbiAgY29uc3QgY3VyclZhbF8xOTphbnkgPSAoKF9kZWNsMF8zNS5pc2lubGluZWVycm9yZW5hYmxlZCAmJiBfZGVjbDBfMzUuaW52YWxpZCkgJiYgKF9kZWNsMF8zNS5kaXJ0eSB8fCBfZGVjbDBfMzUudG91Y2hlZCkpO1xuICBjdXJyVmFsXzE5O1xuICBjb25zdCBwZF8yMDphbnkgPSAoKDxhbnk+X2RlY2wwXzM1Lm9uVG91Y2goKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMjE6YW55ID0gKCg8YW55Pl9kZWNsMF8zNS5zZXRWYWx1ZShfYW55LnRhcmdldC52YWx1ZSkpICE9PSBmYWxzZSk7XG4gIGNvbnN0IHBkXzIyOmFueSA9ICgoPGFueT5fZGVjbDBfMzUub25LZXlQcmVzcyhfYW55KSkgIT09IGZhbHNlKTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0Q3VycmVuY3lDb21wb25lbnRfSG9zdF8zXzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0Q3VycmVuY3lDb21wb25lbnRfM18xKCk6dm9pZCB7XG4gIGlmICgoKF9kZWNsMF8zNi5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzM2LmlzQWRhcHRpdmVMYWJlbCkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAnY29sLXhzLTEyIGNvbnRyb2wtbGFiZWwnO1xuICAgIGN1cnJWYWxfMDtcbiAgICBjb25zdCBjdXJyVmFsXzE6YW55ID0gWygoX2RlY2wwXzM2LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpPyBfZGVjbDBfNTgudHJhbnNmb3JtKF9kZWNsMF8zNi5sYWJlbFNpemVzKTogJ3NyLW9ubHknKV07XG4gICAgY3VyclZhbF8xO1xuICAgIGNvbnN0IGN1cnJWYWxfMjphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM2Lm5hbWUsJ2xhYmVsJyk7XG4gICAgY3VyclZhbF8yO1xuICAgIGNvbnN0IGN1cnJWYWxfMzphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM2Lm5hbWUsJycpO1xuICAgIGN1cnJWYWxfMztcbiAgICBjb25zdCBjdXJyVmFsXzQ6YW55ID0gX2RlY2wwXzM2LmlzcmVxdWlyZWQ7XG4gICAgY3VyclZhbF80O1xuICAgIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBfZGVjbDBfMzYubGFiZWw7XG4gICAgY3VyclZhbF81O1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEN1cnJlbmN5Q29tcG9uZW50XzNfMigpOnZvaWQge1xuICBpZiAoKF9kZWNsMF8zNi5pc0FkYXB0aXZlTGFiZWwgJiYgIV9kZWNsMF8zNi5kaXNhYmxlbGFiZWwpKSB7XG4gICAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbiAgICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ2Zvcm0tbGFiZWwtYWRhcHRpdmUgZm9ybS1sYWJlbC1maXhlZCc7XG4gICAgY3VyclZhbF8wO1xuICAgIGNvbnN0IGN1cnJWYWxfMTphbnkgPSB7J3JlcXVpcmVkJzpfZGVjbDBfMzYuaXNyZXF1aXJlZH07XG4gICAgY3VyclZhbF8xO1xuICAgIGNvbnN0IGN1cnJWYWxfMjphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM2Lm5hbWUsJycpO1xuICAgIGN1cnJWYWxfMjtcbiAgICBjb25zdCBjdXJyVmFsXzM6YW55ID0gX2RlY2wwXzM2LmxhYmVsO1xuICAgIGN1cnJWYWxfMztcbiAgfVxufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRDdXJyZW5jeUNvbXBvbmVudF8zXzMoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM2LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zNi5pbnZhbGlkKSAmJiAoX2RlY2wwXzM2LmRpcnR5IHx8IF9kZWNsMF8zNi50b3VjaGVkKSkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSBfZGVjbDBfNDIudHJhbnNmb3JtKF9kZWNsMF8zNi5HZXRFcnJvck1lc3NhZ2UoKSk7XG4gICAgY3VyclZhbF8wO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEN1cnJlbmN5Q29tcG9uZW50XzNfMCgpOnZvaWQge1xuICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ3JvdyBmb3JtLWdyb3VwJztcbiAgY3VyclZhbF8wO1xuICBjb25zdCBjdXJyVmFsXzE6YW55ID0gX2RlY2wwXzU3LnRyYW5zZm9ybShfZGVjbDBfMzYuY29tcG9uZW50SGVpZ2h0KTtcbiAgY3VyclZhbF8xO1xuICBjb25zdCBjdXJyVmFsXzI6YW55ID0gKF9kZWNsMF8zNi5pbnZhbGlkICYmIChfZGVjbDBfMzYuZGlydHkgfHwgX2RlY2wwXzM2LnRvdWNoZWQpKTtcbiAgY3VyclZhbF8yO1xuICBjb25zdCBjdXJyVmFsXzM6YW55ID0gKChfZGVjbDBfMzYuZGlzYWJsZWxhYmVsID09PSBmYWxzZSkgJiYgIV9kZWNsMF8zNi5pc0FkYXB0aXZlTGFiZWwpO1xuICBjdXJyVmFsXzM7XG4gIGNvbnN0IGN1cnJWYWxfNDphbnkgPSAnY29sLXhzLTEyJztcbiAgY3VyclZhbF80O1xuICBjb25zdCBjdXJyVmFsXzU6YW55ID0gWygoX2RlY2wwXzM2LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpPyBfZGVjbDBfNTYudHJhbnNmb3JtKF9kZWNsMF8zNi5sYWJlbFNpemVzKTogJycpXTtcbiAgY3VyclZhbF81O1xuICBjb25zdCBjdXJyVmFsXzY6YW55ID0gKF9kZWNsMF8zNi5jb21wb25lbnRIZWlnaHQgPT09IF9kZWNsMF8zNi5Db250cm9sSGVpZ2h0LlNtYWxsKTtcbiAgY3VyclZhbF82O1xuICBjb25zdCBjdXJyVmFsXzc6YW55ID0gKF9kZWNsMF8zNi5jb21wb25lbnRIZWlnaHQgPT09IF9kZWNsMF8zNi5Db250cm9sSGVpZ2h0LkxhcmdlKTtcbiAgY3VyclZhbF83O1xuICBjb25zdCBjdXJyVmFsXzg6YW55ID0gJ2Zvcm0tY29udHJvbCc7XG4gIGN1cnJWYWxfODtcbiAgY29uc3QgY3VyclZhbF85OmFueSA9IFtfZGVjbDBfNTUudHJhbnNmb3JtKF9kZWNsMF8zNi5jb21wb25lbnRIZWlnaHQpXTtcbiAgY3VyclZhbF85O1xuICBjb25zdCBjdXJyVmFsXzEwOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzYubmFtZSwnJyk7XG4gIGN1cnJWYWxfMTA7XG4gIGNvbnN0IGN1cnJWYWxfMTE6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zNi5uYW1lLCcnKTtcbiAgY3VyclZhbF8xMTtcbiAgY29uc3QgY3VyclZhbF8xMjphbnkgPSBfZGVjbDBfMzYudmFsdWU7XG4gIGN1cnJWYWxfMTI7XG4gIGNvbnN0IGN1cnJWYWxfMTM6YW55ID0gX2RlY2wwXzM2LnBsYWNlaG9sZGVyO1xuICBjdXJyVmFsXzEzO1xuICBjb25zdCBjdXJyVmFsXzE0OmFueSA9IF9kZWNsMF8zNi5pc2Rpc2FibGVkO1xuICBjdXJyVmFsXzE0O1xuICBjb25zdCBjdXJyVmFsXzE1OmFueSA9IF9kZWNsMF8zNi5yZWFkb25seTtcbiAgY3VyclZhbF8xNTtcbiAgY29uc3QgY3VyclZhbF8xNjphbnkgPSAoX2RlY2wwXzM2LmlzQWRhcHRpdmVMYWJlbCAmJiAhX2RlY2wwXzM2LmRpc2FibGVsYWJlbCk7XG4gIGN1cnJWYWxfMTY7XG4gIGNvbnN0IGN1cnJWYWxfMTc6YW55ID0gX2RlY2wwXzM2LmN1cnJlbmN5O1xuICBjdXJyVmFsXzE3O1xuICBjb25zdCBjdXJyVmFsXzE4OmFueSA9ICgoX2RlY2wwXzM2LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zNi5pbnZhbGlkKSAmJiAoX2RlY2wwXzM2LmRpcnR5IHx8IF9kZWNsMF8zNi50b3VjaGVkKSk7XG4gIGN1cnJWYWxfMTg7XG4gIGNvbnN0IHBkXzE5OmFueSA9ICgoPGFueT5fZGVjbDBfMzYub25Ub3VjaCgpKSAhPT0gZmFsc2UpO1xuICBjb25zdCBwZF8yMDphbnkgPSAoKDxhbnk+X2RlY2wwXzM2LnNldFZhbHVlKF9hbnkudGFyZ2V0LnZhbHVlKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMjE6YW55ID0gKCg8YW55Pl9kZWNsMF8zNi5vbktleVByZXNzKF9hbnkpKSAhPT0gZmFsc2UpO1xufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXREZWNpbWFsQ29tcG9uZW50X0hvc3RfNF8wKCk6dm9pZCB7XG4gIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dERlY2ltYWxDb21wb25lbnRfNF8xKCk6dm9pZCB7XG4gIGlmICgoKF9kZWNsMF8zNy5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzM3LmlzQWRhcHRpdmVMYWJlbCkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAnY29sLXhzLTEyIGNvbnRyb2wtbGFiZWwnO1xuICAgIGN1cnJWYWxfMDtcbiAgICBjb25zdCBjdXJyVmFsXzE6YW55ID0gWygoX2RlY2wwXzM3LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpPyBfZGVjbDBfNTgudHJhbnNmb3JtKF9kZWNsMF8zNy5sYWJlbFNpemVzKTogJ3NyLW9ubHknKV07XG4gICAgY3VyclZhbF8xO1xuICAgIGNvbnN0IGN1cnJWYWxfMjphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM3Lm5hbWUsJ2xhYmVsJyk7XG4gICAgY3VyclZhbF8yO1xuICAgIGNvbnN0IGN1cnJWYWxfMzphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM3Lm5hbWUsJycpO1xuICAgIGN1cnJWYWxfMztcbiAgICBjb25zdCBjdXJyVmFsXzQ6YW55ID0gX2RlY2wwXzM3LmlzcmVxdWlyZWQ7XG4gICAgY3VyclZhbF80O1xuICAgIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBfZGVjbDBfMzcubGFiZWw7XG4gICAgY3VyclZhbF81O1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dERlY2ltYWxDb21wb25lbnRfNF8yKCk6dm9pZCB7XG4gIGlmICgoX2RlY2wwXzM3LmlzQWRhcHRpdmVMYWJlbCAmJiAhX2RlY2wwXzM3LmRpc2FibGVsYWJlbCkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAnZm9ybS1sYWJlbC1hZGFwdGl2ZSBmb3JtLWxhYmVsLWZpeGVkJztcbiAgICBjdXJyVmFsXzA7XG4gICAgY29uc3QgY3VyclZhbF8xOmFueSA9IHsncmVxdWlyZWQnOl9kZWNsMF8zNy5pc3JlcXVpcmVkfTtcbiAgICBjdXJyVmFsXzE7XG4gICAgY29uc3QgY3VyclZhbF8yOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzcubmFtZSwnJyk7XG4gICAgY3VyclZhbF8yO1xuICAgIGNvbnN0IGN1cnJWYWxfMzphbnkgPSBfZGVjbDBfMzcubGFiZWw7XG4gICAgY3VyclZhbF8zO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dERlY2ltYWxDb21wb25lbnRfNF8zKCk6dm9pZCB7XG4gIGlmICgoKF9kZWNsMF8zNy5pc2lubGluZWVycm9yZW5hYmxlZCAmJiBfZGVjbDBfMzcuaW52YWxpZCkgJiYgKF9kZWNsMF8zNy5kaXJ0eSB8fCBfZGVjbDBfMzcudG91Y2hlZCkpKSB7XG4gICAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbiAgICBjb25zdCBjdXJyVmFsXzA6YW55ID0gX2RlY2wwXzQyLnRyYW5zZm9ybShfZGVjbDBfMzcuR2V0RXJyb3JNZXNzYWdlKCkpO1xuICAgIGN1cnJWYWxfMDtcbiAgfVxufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXREZWNpbWFsQ29tcG9uZW50XzRfMCgpOnZvaWQge1xuICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ3JvdyBmb3JtLWdyb3VwJztcbiAgY3VyclZhbF8wO1xuICBjb25zdCBjdXJyVmFsXzE6YW55ID0gX2RlY2wwXzU3LnRyYW5zZm9ybShfZGVjbDBfMzcuY29tcG9uZW50SGVpZ2h0KTtcbiAgY3VyclZhbF8xO1xuICBjb25zdCBjdXJyVmFsXzI6YW55ID0gKF9kZWNsMF8zNy5pbnZhbGlkICYmIChfZGVjbDBfMzcuZGlydHkgfHwgX2RlY2wwXzM3LnRvdWNoZWQpKTtcbiAgY3VyclZhbF8yO1xuICBjb25zdCBjdXJyVmFsXzM6YW55ID0gKChfZGVjbDBfMzcuZGlzYWJsZWxhYmVsID09PSBmYWxzZSkgJiYgIV9kZWNsMF8zNy5pc0FkYXB0aXZlTGFiZWwpO1xuICBjdXJyVmFsXzM7XG4gIGNvbnN0IGN1cnJWYWxfNDphbnkgPSAnY29sLXhzLTEyJztcbiAgY3VyclZhbF80O1xuICBjb25zdCBjdXJyVmFsXzU6YW55ID0gWygoX2RlY2wwXzM3LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpPyBfZGVjbDBfNTYudHJhbnNmb3JtKF9kZWNsMF8zNy5sYWJlbFNpemVzKTogJycpXTtcbiAgY3VyclZhbF81O1xuICBjb25zdCBjdXJyVmFsXzY6YW55ID0gJ2Zvcm0tY29udHJvbCc7XG4gIGN1cnJWYWxfNjtcbiAgY29uc3QgY3VyclZhbF83OmFueSA9IFtfZGVjbDBfNTUudHJhbnNmb3JtKF9kZWNsMF8zNy5jb21wb25lbnRIZWlnaHQpXTtcbiAgY3VyclZhbF83O1xuICBjb25zdCBjdXJyVmFsXzg6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zNy5uYW1lLCcnKTtcbiAgY3VyclZhbF84O1xuICBjb25zdCBjdXJyVmFsXzk6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zNy5uYW1lLCcnKTtcbiAgY3VyclZhbF85O1xuICBjb25zdCBjdXJyVmFsXzEwOmFueSA9IF9kZWNsMF8zNy52YWx1ZTtcbiAgY3VyclZhbF8xMDtcbiAgY29uc3QgY3VyclZhbF8xMTphbnkgPSBfZGVjbDBfMzcucGxhY2Vob2xkZXI7XG4gIGN1cnJWYWxfMTE7XG4gIGNvbnN0IGN1cnJWYWxfMTI6YW55ID0gX2RlY2wwXzM3LmlzZGlzYWJsZWQ7XG4gIGN1cnJWYWxfMTI7XG4gIGNvbnN0IGN1cnJWYWxfMTM6YW55ID0gX2RlY2wwXzM3LnJlYWRvbmx5O1xuICBjdXJyVmFsXzEzO1xuICBjb25zdCBjdXJyVmFsXzE0OmFueSA9IChfZGVjbDBfMzcuaXNBZGFwdGl2ZUxhYmVsICYmICFfZGVjbDBfMzcuZGlzYWJsZWxhYmVsKTtcbiAgY3VyclZhbF8xNDtcbiAgY29uc3QgY3VyclZhbF8xNTphbnkgPSAoKF9kZWNsMF8zNy5pc2lubGluZWVycm9yZW5hYmxlZCAmJiBfZGVjbDBfMzcuaW52YWxpZCkgJiYgKF9kZWNsMF8zNy5kaXJ0eSB8fCBfZGVjbDBfMzcudG91Y2hlZCkpO1xuICBjdXJyVmFsXzE1O1xuICBjb25zdCBwZF8xNjphbnkgPSAoKDxhbnk+X2RlY2wwXzM3Lm9uVG91Y2goKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMTc6YW55ID0gKCg8YW55Pl9kZWNsMF8zNy5zZXRWYWx1ZShfYW55LnRhcmdldC52YWx1ZSkpICE9PSBmYWxzZSk7XG4gIGNvbnN0IHBkXzE4OmFueSA9ICgoPGFueT5fZGVjbDBfMzcub25LZXlQcmVzcyhfYW55KSkgIT09IGZhbHNlKTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0RW1haWxDb21wb25lbnRfSG9zdF81XzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0RW1haWxDb21wb25lbnRfNV8xKCk6dm9pZCB7XG4gIGlmICgoKF9kZWNsMF8zOC5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzM4LmlzQWRhcHRpdmVMYWJlbCkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAnY29sLXhzLTEyIGNvbnRyb2wtbGFiZWwnO1xuICAgIGN1cnJWYWxfMDtcbiAgICBjb25zdCBjdXJyVmFsXzE6YW55ID0gWygoX2RlY2wwXzM4LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpPyBfZGVjbDBfNTgudHJhbnNmb3JtKF9kZWNsMF8zOC5sYWJlbFNpemVzKTogJ3NyLW9ubHknKV07XG4gICAgY3VyclZhbF8xO1xuICAgIGNvbnN0IGN1cnJWYWxfMjphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM4Lm5hbWUsJ2xhYmVsJyk7XG4gICAgY3VyclZhbF8yO1xuICAgIGNvbnN0IGN1cnJWYWxfMzphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM4Lm5hbWUsJycpO1xuICAgIGN1cnJWYWxfMztcbiAgICBjb25zdCBjdXJyVmFsXzQ6YW55ID0gX2RlY2wwXzM4LmlzcmVxdWlyZWQ7XG4gICAgY3VyclZhbF80O1xuICAgIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBfZGVjbDBfMzgubGFiZWw7XG4gICAgY3VyclZhbF81O1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEVtYWlsQ29tcG9uZW50XzVfMigpOnZvaWQge1xuICBpZiAoKF9kZWNsMF8zOC5pc0FkYXB0aXZlTGFiZWwgJiYgIV9kZWNsMF8zOC5kaXNhYmxlbGFiZWwpKSB7XG4gICAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbiAgICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ2Zvcm0tbGFiZWwtYWRhcHRpdmUgZm9ybS1sYWJlbC1maXhlZCc7XG4gICAgY3VyclZhbF8wO1xuICAgIGNvbnN0IGN1cnJWYWxfMTphbnkgPSB7J3JlcXVpcmVkJzpfZGVjbDBfMzguaXNyZXF1aXJlZH07XG4gICAgY3VyclZhbF8xO1xuICAgIGNvbnN0IGN1cnJWYWxfMjphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM4Lm5hbWUsJycpO1xuICAgIGN1cnJWYWxfMjtcbiAgICBjb25zdCBjdXJyVmFsXzM6YW55ID0gX2RlY2wwXzM4LmxhYmVsO1xuICAgIGN1cnJWYWxfMztcbiAgfVxufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRFbWFpbENvbXBvbmVudF81XzMoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM4LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zOC5pbnZhbGlkKSAmJiAoX2RlY2wwXzM4LmRpcnR5IHx8IF9kZWNsMF8zOC50b3VjaGVkKSkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSBfZGVjbDBfNDIudHJhbnNmb3JtKF9kZWNsMF8zOC5HZXRFcnJvck1lc3NhZ2UoKSk7XG4gICAgY3VyclZhbF8wO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEVtYWlsQ29tcG9uZW50XzVfMCgpOnZvaWQge1xuICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ3JvdyBmb3JtLWdyb3VwJztcbiAgY3VyclZhbF8wO1xuICBjb25zdCBjdXJyVmFsXzE6YW55ID0gX2RlY2wwXzU3LnRyYW5zZm9ybShfZGVjbDBfMzguY29tcG9uZW50SGVpZ2h0KTtcbiAgY3VyclZhbF8xO1xuICBjb25zdCBjdXJyVmFsXzI6YW55ID0gKF9kZWNsMF8zOC5pbnZhbGlkICYmIChfZGVjbDBfMzguZGlydHkgfHwgX2RlY2wwXzM4LnRvdWNoZWQpKTtcbiAgY3VyclZhbF8yO1xuICBjb25zdCBjdXJyVmFsXzM6YW55ID0gKChfZGVjbDBfMzguZGlzYWJsZWxhYmVsID09PSBmYWxzZSkgJiYgIV9kZWNsMF8zOC5pc0FkYXB0aXZlTGFiZWwpO1xuICBjdXJyVmFsXzM7XG4gIGNvbnN0IGN1cnJWYWxfNDphbnkgPSAnY29sLXhzLTEyJztcbiAgY3VyclZhbF80O1xuICBjb25zdCBjdXJyVmFsXzU6YW55ID0gWygoX2RlY2wwXzM4LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpPyBfZGVjbDBfNTYudHJhbnNmb3JtKF9kZWNsMF8zOC5sYWJlbFNpemVzKTogJycpXTtcbiAgY3VyclZhbF81O1xuICBjb25zdCBjdXJyVmFsXzY6YW55ID0gKF9kZWNsMF8zOC5jb21wb25lbnRIZWlnaHQgPT09IF9kZWNsMF8zOC5Db250cm9sSGVpZ2h0LlNtYWxsKTtcbiAgY3VyclZhbF82O1xuICBjb25zdCBjdXJyVmFsXzc6YW55ID0gKF9kZWNsMF8zOC5jb21wb25lbnRIZWlnaHQgPT09IF9kZWNsMF8zOC5Db250cm9sSGVpZ2h0LkxhcmdlKTtcbiAgY3VyclZhbF83O1xuICBjb25zdCBjdXJyVmFsXzg6YW55ID0gJ2Zvcm0tY29udHJvbCc7XG4gIGN1cnJWYWxfODtcbiAgY29uc3QgY3VyclZhbF85OmFueSA9IFtfZGVjbDBfNTUudHJhbnNmb3JtKF9kZWNsMF8zOC5jb21wb25lbnRIZWlnaHQpXTtcbiAgY3VyclZhbF85O1xuICBjb25zdCBjdXJyVmFsXzEwOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzgubmFtZSwnJyk7XG4gIGN1cnJWYWxfMTA7XG4gIGNvbnN0IGN1cnJWYWxfMTE6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zOC5uYW1lLCcnKTtcbiAgY3VyclZhbF8xMTtcbiAgY29uc3QgY3VyclZhbF8xMjphbnkgPSBfZGVjbDBfMzgudmFsdWU7XG4gIGN1cnJWYWxfMTI7XG4gIGNvbnN0IGN1cnJWYWxfMTM6YW55ID0gX2RlY2wwXzM4LnBsYWNlaG9sZGVyO1xuICBjdXJyVmFsXzEzO1xuICBjb25zdCBjdXJyVmFsXzE0OmFueSA9IF9kZWNsMF8zOC5tYXhsZW5ndGg7XG4gIGN1cnJWYWxfMTQ7XG4gIGNvbnN0IGN1cnJWYWxfMTU6YW55ID0gX2RlY2wwXzM4LmlzZGlzYWJsZWQ7XG4gIGN1cnJWYWxfMTU7XG4gIGNvbnN0IGN1cnJWYWxfMTY6YW55ID0gX2RlY2wwXzM4LnJlYWRvbmx5O1xuICBjdXJyVmFsXzE2O1xuICBjb25zdCBjdXJyVmFsXzE3OmFueSA9IChfZGVjbDBfMzguaXNBZGFwdGl2ZUxhYmVsICYmICFfZGVjbDBfMzguZGlzYWJsZWxhYmVsKTtcbiAgY3VyclZhbF8xNztcbiAgY29uc3QgY3VyclZhbF8xODphbnkgPSAoKF9kZWNsMF8zOC5pc2lubGluZWVycm9yZW5hYmxlZCAmJiBfZGVjbDBfMzguaW52YWxpZCkgJiYgKF9kZWNsMF8zOC5kaXJ0eSB8fCBfZGVjbDBfMzgudG91Y2hlZCkpO1xuICBjdXJyVmFsXzE4O1xuICBjb25zdCBwZF8xOTphbnkgPSAoKDxhbnk+X2RlY2wwXzM4Lm9uVG91Y2goKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMjA6YW55ID0gKCg8YW55Pl9kZWNsMF8zOC5zZXRWYWx1ZShfYW55LnRhcmdldC52YWx1ZSkpICE9PSBmYWxzZSk7XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEludGVnZXJDb21wb25lbnRfSG9zdF82XzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0SW50ZWdlckNvbXBvbmVudF82XzEoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM5LmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpICYmICFfZGVjbDBfMzkuaXNBZGFwdGl2ZUxhYmVsKSkge1xuICAgIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gICAgY29uc3QgY3VyclZhbF8wOmFueSA9ICdjb2wteHMtMTIgY29udHJvbC1sYWJlbCc7XG4gICAgY3VyclZhbF8wO1xuICAgIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBbKChfZGVjbDBfMzkuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81OC50cmFuc2Zvcm0oX2RlY2wwXzM5LmxhYmVsU2l6ZXMpOiAnc3Itb25seScpXTtcbiAgICBjdXJyVmFsXzE7XG4gICAgY29uc3QgY3VyclZhbF8yOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzkubmFtZSwnbGFiZWwnKTtcbiAgICBjdXJyVmFsXzI7XG4gICAgY29uc3QgY3VyclZhbF8zOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfMzkubmFtZSwnJyk7XG4gICAgY3VyclZhbF8zO1xuICAgIGNvbnN0IGN1cnJWYWxfNDphbnkgPSBfZGVjbDBfMzkuaXNyZXF1aXJlZDtcbiAgICBjdXJyVmFsXzQ7XG4gICAgY29uc3QgY3VyclZhbF81OmFueSA9IF9kZWNsMF8zOS5sYWJlbDtcbiAgICBjdXJyVmFsXzU7XG4gIH1cbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0SW50ZWdlckNvbXBvbmVudF82XzIoKTp2b2lkIHtcbiAgaWYgKChfZGVjbDBfMzkuaXNBZGFwdGl2ZUxhYmVsICYmICFfZGVjbDBfMzkuZGlzYWJsZWxhYmVsKSkge1xuICAgIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gICAgY29uc3QgY3VyclZhbF8wOmFueSA9ICdmb3JtLWxhYmVsLWFkYXB0aXZlIGZvcm0tbGFiZWwtZml4ZWQnO1xuICAgIGN1cnJWYWxfMDtcbiAgICBjb25zdCBjdXJyVmFsXzE6YW55ID0geydyZXF1aXJlZCc6X2RlY2wwXzM5LmlzcmVxdWlyZWR9O1xuICAgIGN1cnJWYWxfMTtcbiAgICBjb25zdCBjdXJyVmFsXzI6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF8zOS5uYW1lLCcnKTtcbiAgICBjdXJyVmFsXzI7XG4gICAgY29uc3QgY3VyclZhbF8zOmFueSA9IF9kZWNsMF8zOS5sYWJlbDtcbiAgICBjdXJyVmFsXzM7XG4gIH1cbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0SW50ZWdlckNvbXBvbmVudF82XzMoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzM5LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zOS5pbnZhbGlkKSAmJiAoX2RlY2wwXzM5LmRpcnR5IHx8IF9kZWNsMF8zOS50b3VjaGVkKSkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSBfZGVjbDBfNDIudHJhbnNmb3JtKF9kZWNsMF8zOS5HZXRFcnJvck1lc3NhZ2UoKSk7XG4gICAgY3VyclZhbF8wO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dEludGVnZXJDb21wb25lbnRfNl8wKCk6dm9pZCB7XG4gIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAncm93IGZvcm0tZ3JvdXAnO1xuICBjdXJyVmFsXzA7XG4gIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBfZGVjbDBfNTcudHJhbnNmb3JtKF9kZWNsMF8zOS5jb21wb25lbnRIZWlnaHQpO1xuICBjdXJyVmFsXzE7XG4gIGNvbnN0IGN1cnJWYWxfMjphbnkgPSAoX2RlY2wwXzM5LmludmFsaWQgJiYgKF9kZWNsMF8zOS5kaXJ0eSB8fCBfZGVjbDBfMzkudG91Y2hlZCkpO1xuICBjdXJyVmFsXzI7XG4gIGNvbnN0IGN1cnJWYWxfMzphbnkgPSAoKF9kZWNsMF8zOS5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzM5LmlzQWRhcHRpdmVMYWJlbCk7XG4gIGN1cnJWYWxfMztcbiAgY29uc3QgY3VyclZhbF80OmFueSA9ICdjb2wteHMtMTInO1xuICBjdXJyVmFsXzQ7XG4gIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBbKChfZGVjbDBfMzkuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81Ni50cmFuc2Zvcm0oX2RlY2wwXzM5LmxhYmVsU2l6ZXMpOiAnJyldO1xuICBjdXJyVmFsXzU7XG4gIGNvbnN0IGN1cnJWYWxfNjphbnkgPSAnZm9ybS1jb250cm9sJztcbiAgY3VyclZhbF82O1xuICBjb25zdCBjdXJyVmFsXzc6YW55ID0gW19kZWNsMF81NS50cmFuc2Zvcm0oX2RlY2wwXzM5LmNvbXBvbmVudEhlaWdodCldO1xuICBjdXJyVmFsXzc7XG4gIGNvbnN0IGN1cnJWYWxfODphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM5Lm5hbWUsJycpO1xuICBjdXJyVmFsXzg7XG4gIGNvbnN0IGN1cnJWYWxfOTphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzM5Lm5hbWUsJycpO1xuICBjdXJyVmFsXzk7XG4gIGNvbnN0IGN1cnJWYWxfMTA6YW55ID0gX2RlY2wwXzM5LnZhbHVlO1xuICBjdXJyVmFsXzEwO1xuICBjb25zdCBjdXJyVmFsXzExOmFueSA9IF9kZWNsMF8zOS5wbGFjZWhvbGRlcjtcbiAgY3VyclZhbF8xMTtcbiAgY29uc3QgY3VyclZhbF8xMjphbnkgPSBfZGVjbDBfMzkuaXNkaXNhYmxlZDtcbiAgY3VyclZhbF8xMjtcbiAgY29uc3QgY3VyclZhbF8xMzphbnkgPSBfZGVjbDBfMzkucmVhZG9ubHk7XG4gIGN1cnJWYWxfMTM7XG4gIGNvbnN0IGN1cnJWYWxfMTQ6YW55ID0gKF9kZWNsMF8zOS5pc0FkYXB0aXZlTGFiZWwgJiYgIV9kZWNsMF8zOS5kaXNhYmxlbGFiZWwpO1xuICBjdXJyVmFsXzE0O1xuICBjb25zdCBjdXJyVmFsXzE1OmFueSA9ICgoX2RlY2wwXzM5LmlzaW5saW5lZXJyb3JlbmFibGVkICYmIF9kZWNsMF8zOS5pbnZhbGlkKSAmJiAoX2RlY2wwXzM5LmRpcnR5IHx8IF9kZWNsMF8zOS50b3VjaGVkKSk7XG4gIGN1cnJWYWxfMTU7XG4gIGNvbnN0IHBkXzE2OmFueSA9ICgoPGFueT5fZGVjbDBfMzkub25Ub3VjaCgpKSAhPT0gZmFsc2UpO1xuICBjb25zdCBwZF8xNzphbnkgPSAoKDxhbnk+X2RlY2wwXzM5LnNldFZhbHVlKF9hbnkudGFyZ2V0LnZhbHVlKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMTg6YW55ID0gKCg8YW55Pl9kZWNsMF8zOS5vbktleVByZXNzKF9hbnkpKSAhPT0gZmFsc2UpO1xufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRQYXNzd29yZENvbXBvbmVudF9Ib3N0XzdfMCgpOnZvaWQge1xuICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRQYXNzd29yZENvbXBvbmVudF83XzEoKTp2b2lkIHtcbiAgaWYgKCgoX2RlY2wwXzQwLmRpc2FibGVsYWJlbCA9PT0gZmFsc2UpICYmICFfZGVjbDBfNDAuaXNBZGFwdGl2ZUxhYmVsKSkge1xuICAgIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gICAgY29uc3QgY3VyclZhbF8wOmFueSA9ICdjb2wteHMtMTIgY29udHJvbC1sYWJlbCc7XG4gICAgY3VyclZhbF8wO1xuICAgIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBbKChfZGVjbDBfNDAuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81OC50cmFuc2Zvcm0oX2RlY2wwXzQwLmxhYmVsU2l6ZXMpOiAnc3Itb25seScpXTtcbiAgICBjdXJyVmFsXzE7XG4gICAgY29uc3QgY3VyclZhbF8yOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfNDAubmFtZSwnbGFiZWwnKTtcbiAgICBjdXJyVmFsXzI7XG4gICAgY29uc3QgY3VyclZhbF8zOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfNDAubmFtZSwnJyk7XG4gICAgY3VyclZhbF8zO1xuICAgIGNvbnN0IGN1cnJWYWxfNDphbnkgPSBfZGVjbDBfNDAuaXNyZXF1aXJlZDtcbiAgICBjdXJyVmFsXzQ7XG4gICAgY29uc3QgY3VyclZhbF81OmFueSA9IF9kZWNsMF80MC5sYWJlbDtcbiAgICBjdXJyVmFsXzU7XG4gIH1cbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0UGFzc3dvcmRDb21wb25lbnRfN18yKCk6dm9pZCB7XG4gIGlmICgoX2RlY2wwXzQwLmlzQWRhcHRpdmVMYWJlbCAmJiAhX2RlY2wwXzQwLmRpc2FibGVsYWJlbCkpIHtcbiAgICB2YXIgX2FueTphbnkgPSAobnVsbCBhcyBhbnkpO1xuICAgIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAnZm9ybS1sYWJlbC1hZGFwdGl2ZSBmb3JtLWxhYmVsLWZpeGVkJztcbiAgICBjdXJyVmFsXzA7XG4gICAgY29uc3QgY3VyclZhbF8xOmFueSA9IHsncmVxdWlyZWQnOl9kZWNsMF80MC5pc3JlcXVpcmVkfTtcbiAgICBjdXJyVmFsXzE7XG4gICAgY29uc3QgY3VyclZhbF8yOmFueSA9IGkwLsm1aW5saW5lSW50ZXJwb2xhdGUoMSwnJyxfZGVjbDBfNDAubmFtZSwnJyk7XG4gICAgY3VyclZhbF8yO1xuICAgIGNvbnN0IGN1cnJWYWxfMzphbnkgPSBfZGVjbDBfNDAubGFiZWw7XG4gICAgY3VyclZhbF8zO1xuICB9XG59XG5mdW5jdGlvbiBfVmlld19TYWNJbnB1dFBhc3N3b3JkQ29tcG9uZW50XzdfMygpOnZvaWQge1xuICBpZiAoKChfZGVjbDBfNDAuaXNpbmxpbmVlcnJvcmVuYWJsZWQgJiYgX2RlY2wwXzQwLmludmFsaWQpICYmIChfZGVjbDBfNDAuZGlydHkgfHwgX2RlY2wwXzQwLnRvdWNoZWQpKSkge1xuICAgIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gICAgY29uc3QgY3VyclZhbF8wOmFueSA9IF9kZWNsMF80Mi50cmFuc2Zvcm0oX2RlY2wwXzQwLkdldEVycm9yTWVzc2FnZSgpKTtcbiAgICBjdXJyVmFsXzA7XG4gIH1cbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0UGFzc3dvcmRDb21wb25lbnRfN18wKCk6dm9pZCB7XG4gIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAncm93IGZvcm0tZ3JvdXAnO1xuICBjdXJyVmFsXzA7XG4gIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBfZGVjbDBfNTcudHJhbnNmb3JtKF9kZWNsMF80MC5jb21wb25lbnRIZWlnaHQpO1xuICBjdXJyVmFsXzE7XG4gIGNvbnN0IGN1cnJWYWxfMjphbnkgPSAoX2RlY2wwXzQwLmludmFsaWQgJiYgKF9kZWNsMF80MC5kaXJ0eSB8fCBfZGVjbDBfNDAudG91Y2hlZCkpO1xuICBjdXJyVmFsXzI7XG4gIGNvbnN0IGN1cnJWYWxfMzphbnkgPSAoKF9kZWNsMF80MC5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzQwLmlzQWRhcHRpdmVMYWJlbCk7XG4gIGN1cnJWYWxfMztcbiAgY29uc3QgY3VyclZhbF80OmFueSA9ICdjb2wteHMtMTInO1xuICBjdXJyVmFsXzQ7XG4gIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBbKChfZGVjbDBfNDAuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81Ni50cmFuc2Zvcm0oX2RlY2wwXzQwLmxhYmVsU2l6ZXMpOiAnJyldO1xuICBjdXJyVmFsXzU7XG4gIGNvbnN0IGN1cnJWYWxfNjphbnkgPSAnZm9ybS1jb250cm9sJztcbiAgY3VyclZhbF82O1xuICBjb25zdCBjdXJyVmFsXzc6YW55ID0gW19kZWNsMF81NS50cmFuc2Zvcm0oX2RlY2wwXzQwLmNvbXBvbmVudEhlaWdodCldO1xuICBjdXJyVmFsXzc7XG4gIGNvbnN0IGN1cnJWYWxfODphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzQwLm5hbWUsJycpO1xuICBjdXJyVmFsXzg7XG4gIGNvbnN0IGN1cnJWYWxfOTphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzQwLm5hbWUsJycpO1xuICBjdXJyVmFsXzk7XG4gIGNvbnN0IGN1cnJWYWxfMTA6YW55ID0gX2RlY2wwXzQwLnZhbHVlO1xuICBjdXJyVmFsXzEwO1xuICBjb25zdCBjdXJyVmFsXzExOmFueSA9IF9kZWNsMF80MC5wbGFjZWhvbGRlcjtcbiAgY3VyclZhbF8xMTtcbiAgY29uc3QgY3VyclZhbF8xMjphbnkgPSBfZGVjbDBfNDAubWF4bGVuZ3RoO1xuICBjdXJyVmFsXzEyO1xuICBjb25zdCBjdXJyVmFsXzEzOmFueSA9IF9kZWNsMF80MC5pc2Rpc2FibGVkO1xuICBjdXJyVmFsXzEzO1xuICBjb25zdCBjdXJyVmFsXzE0OmFueSA9IF9kZWNsMF80MC5yZWFkb25seTtcbiAgY3VyclZhbF8xNDtcbiAgY29uc3QgY3VyclZhbF8xNTphbnkgPSAoX2RlY2wwXzQwLmlzQWRhcHRpdmVMYWJlbCAmJiAhX2RlY2wwXzQwLmRpc2FibGVsYWJlbCk7XG4gIGN1cnJWYWxfMTU7XG4gIGNvbnN0IGN1cnJWYWxfMTY6YW55ID0gKChfZGVjbDBfNDAuaXNpbmxpbmVlcnJvcmVuYWJsZWQgJiYgX2RlY2wwXzQwLmludmFsaWQpICYmIChfZGVjbDBfNDAuZGlydHkgfHwgX2RlY2wwXzQwLnRvdWNoZWQpKTtcbiAgY3VyclZhbF8xNjtcbiAgY29uc3QgcGRfMTc6YW55ID0gKCg8YW55Pl9kZWNsMF80MC5vblRvdWNoKCkpICE9PSBmYWxzZSk7XG4gIGNvbnN0IHBkXzE4OmFueSA9ICgoPGFueT5fZGVjbDBfNDAuc2V0VmFsdWUoX2FueS50YXJnZXQudmFsdWUpKSAhPT0gZmFsc2UpO1xufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRTZWFyY2hDb21wb25lbnRfSG9zdF84XzAoKTp2b2lkIHtcbiAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbn1cbmZ1bmN0aW9uIF9WaWV3X1NhY0lucHV0U2VhcmNoQ29tcG9uZW50XzhfMSgpOnZvaWQge1xuICBpZiAoKChfZGVjbDBfNDEuZGlzYWJsZWxhYmVsID09PSBmYWxzZSkgJiYgIV9kZWNsMF80MS5pc0FkYXB0aXZlTGFiZWwpKSB7XG4gICAgdmFyIF9hbnk6YW55ID0gKG51bGwgYXMgYW55KTtcbiAgICBjb25zdCBjdXJyVmFsXzA6YW55ID0gJ2NvbC14cy0xMiBjb250cm9sLWxhYmVsJztcbiAgICBjdXJyVmFsXzA7XG4gICAgY29uc3QgY3VyclZhbF8xOmFueSA9IFsoKF9kZWNsMF80MS5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKT8gX2RlY2wwXzU4LnRyYW5zZm9ybShfZGVjbDBfNDEubGFiZWxTaXplcyk6ICdzci1vbmx5JyldO1xuICAgIGN1cnJWYWxfMTtcbiAgICBjb25zdCBjdXJyVmFsXzI6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF80MS5uYW1lLCdsYWJlbCcpO1xuICAgIGN1cnJWYWxfMjtcbiAgICBjb25zdCBjdXJyVmFsXzM6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF80MS5uYW1lLCcnKTtcbiAgICBjdXJyVmFsXzM7XG4gICAgY29uc3QgY3VyclZhbF80OmFueSA9IF9kZWNsMF80MS5pc3JlcXVpcmVkO1xuICAgIGN1cnJWYWxfNDtcbiAgICBjb25zdCBjdXJyVmFsXzU6YW55ID0gX2RlY2wwXzQxLmxhYmVsO1xuICAgIGN1cnJWYWxfNTtcbiAgfVxufVxuZnVuY3Rpb24gX1ZpZXdfU2FjSW5wdXRTZWFyY2hDb21wb25lbnRfOF8wKCk6dm9pZCB7XG4gIHZhciBfYW55OmFueSA9IChudWxsIGFzIGFueSk7XG4gIGNvbnN0IGN1cnJWYWxfMDphbnkgPSAncm93IGZvcm0tZ3JvdXAnO1xuICBjdXJyVmFsXzA7XG4gIGNvbnN0IGN1cnJWYWxfMTphbnkgPSBfZGVjbDBfNTcudHJhbnNmb3JtKF9kZWNsMF80MS5jb21wb25lbnRIZWlnaHQpO1xuICBjdXJyVmFsXzE7XG4gIGNvbnN0IGN1cnJWYWxfMjphbnkgPSAoX2RlY2wwXzQxLmludmFsaWQgJiYgKF9kZWNsMF80MS5kaXJ0eSB8fCBfZGVjbDBfNDEudG91Y2hlZCkpO1xuICBjdXJyVmFsXzI7XG4gIGNvbnN0IGN1cnJWYWxfMzphbnkgPSAoKF9kZWNsMF80MS5kaXNhYmxlbGFiZWwgPT09IGZhbHNlKSAmJiAhX2RlY2wwXzQxLmlzQWRhcHRpdmVMYWJlbCk7XG4gIGN1cnJWYWxfMztcbiAgY29uc3QgY3VyclZhbF80OmFueSA9ICdjb2wteHMtMTInO1xuICBjdXJyVmFsXzQ7XG4gIGNvbnN0IGN1cnJWYWxfNTphbnkgPSBbKChfZGVjbDBfNDEuZGlzYWJsZWxhYmVsID09PSBmYWxzZSk/IF9kZWNsMF81Ni50cmFuc2Zvcm0oX2RlY2wwXzQxLmxhYmVsU2l6ZXMpOiAnJyldO1xuICBjdXJyVmFsXzU7XG4gIGNvbnN0IGN1cnJWYWxfNjphbnkgPSAoX2RlY2wwXzQxLmNvbXBvbmVudEhlaWdodCA9PT0gX2RlY2wwXzQxLkNvbnRyb2xIZWlnaHQuU21hbGwpO1xuICBjdXJyVmFsXzY7XG4gIGNvbnN0IGN1cnJWYWxfNzphbnkgPSAoX2RlY2wwXzQxLmNvbXBvbmVudEhlaWdodCA9PT0gX2RlY2wwXzQxLkNvbnRyb2xIZWlnaHQuTGFyZ2UpO1xuICBjdXJyVmFsXzc7XG4gIGNvbnN0IGN1cnJWYWxfODphbnkgPSAnZm9ybS1jb250cm9sJztcbiAgY3VyclZhbF84O1xuICBjb25zdCBjdXJyVmFsXzk6YW55ID0gW19kZWNsMF81NS50cmFuc2Zvcm0oX2RlY2wwXzQxLmNvbXBvbmVudEhlaWdodCldO1xuICBjdXJyVmFsXzk7XG4gIGNvbnN0IGN1cnJWYWxfMTA6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF80MS5uYW1lLCcnKTtcbiAgY3VyclZhbF8xMDtcbiAgY29uc3QgY3VyclZhbF8xMTphbnkgPSBpMC7JtWlubGluZUludGVycG9sYXRlKDEsJycsX2RlY2wwXzQxLm5hbWUsJycpO1xuICBjdXJyVmFsXzExO1xuICBjb25zdCBjdXJyVmFsXzEyOmFueSA9IF9kZWNsMF80MS52YWx1ZTtcbiAgY3VyclZhbF8xMjtcbiAgY29uc3QgY3VyclZhbF8xMzphbnkgPSBfZGVjbDBfNDEucGxhY2Vob2xkZXI7XG4gIGN1cnJWYWxfMTM7XG4gIGNvbnN0IGN1cnJWYWxfMTQ6YW55ID0gX2RlY2wwXzQxLm1heGxlbmd0aDtcbiAgY3VyclZhbF8xNDtcbiAgY29uc3QgY3VyclZhbF8xNTphbnkgPSBfZGVjbDBfNDEuaXNkaXNhYmxlZDtcbiAgY3VyclZhbF8xNTtcbiAgY29uc3QgY3VyclZhbF8xNjphbnkgPSBfZGVjbDBfNDEucmVhZG9ubHk7XG4gIGN1cnJWYWxfMTY7XG4gIGNvbnN0IGN1cnJWYWxfMTc6YW55ID0gaTAuybVpbmxpbmVJbnRlcnBvbGF0ZSgxLCcnLF9kZWNsMF80MS5uYW1lLCdfc2VhcmNoJyk7XG4gIGN1cnJWYWxfMTc7XG4gIGNvbnN0IGN1cnJWYWxfMTg6YW55ID0gX2RlY2wwXzQxLmJ1dHRvbnRleHQ7XG4gIGN1cnJWYWxfMTg7XG4gIGNvbnN0IHBkXzE5OmFueSA9ICgoPGFueT5fZGVjbDBfNDEub25Ub3VjaCgpKSAhPT0gZmFsc2UpO1xuICBjb25zdCBwZF8yMDphbnkgPSAoKDxhbnk+X2RlY2wwXzQxLnNldFZhbHVlKF9hbnkudGFyZ2V0LnZhbHVlKSkgIT09IGZhbHNlKTtcbiAgY29uc3QgcGRfMjE6YW55ID0gKCg8YW55Pl9kZWNsMF80MS5zZWFyY2hDbGljaygpKSAhPT0gZmFsc2UpO1xufVxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9pbnB1dC9pbnB1dC5uZ2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGkwIGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaTAuQ29tcG9uZW50RmFjdG9yeTtcbiJdfQ==
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { Component, Host, Injector, Optional, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacInputAreaCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
import { SacFormLayoutDirective } from '../layout/formlayout.directive';
|
|
5
|
+
/**
|
|
6
|
+
* Komponente für TextArea
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* <ngInputArea name="ngInputArea" label="My Label" placeholder='i am input area' [isrequired]="true" customCssClass="myClass1 myClass3"></ngInputArea>
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
*
|
|
14
|
+
* <ngInputArea name="ngInputArea" label="My Label" height="150px" placeholder='i am input area' [islanguagespecific]="true">
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
export class SacInputAreaComponent extends SacInputAreaCommon {
|
|
18
|
+
// #region Constructors
|
|
19
|
+
/**
|
|
20
|
+
* Constructor
|
|
21
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
22
|
+
* @param injector Injector for injecting services
|
|
23
|
+
*/
|
|
24
|
+
constructor(formLayout, injector) {
|
|
25
|
+
super(formLayout, injector);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
SacInputAreaComponent.decorators = [
|
|
29
|
+
{ type: Component, args: [{
|
|
30
|
+
selector: 'sac-inputarea',
|
|
31
|
+
template: "<div\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <textarea\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"\"\r\n class=\"form-control\"\r\n [class.is-invalid]=\"invalid && (dirty || touched)\"\r\n [class.validation-error]=\"invalid && (dirty || touched)\"\r\n [class.required]=\"isrequired\"\r\n [ngClass]=\"[componentHeight | toControlHeight]\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [attr.rows]=\"rows\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n ></textarea>\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
32
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
33
|
+
providers: [
|
|
34
|
+
{
|
|
35
|
+
provide: NG_VALUE_ACCESSOR,
|
|
36
|
+
multi: true,
|
|
37
|
+
useExisting: SacInputAreaComponent,
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
provide: NG_VALIDATORS,
|
|
41
|
+
multi: true,
|
|
42
|
+
useExisting: forwardRef(() => SacInputAreaComponent),
|
|
43
|
+
},
|
|
44
|
+
]
|
|
45
|
+
},] }
|
|
46
|
+
];
|
|
47
|
+
SacInputAreaComponent.ctorParameters = () => [
|
|
48
|
+
{ type: SacFormLayoutDirective, decorators: [{ type: Host }, { type: Optional }] },
|
|
49
|
+
{ type: Injector }
|
|
50
|
+
];
|
|
51
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRhcmVhLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9pbnB1dC9pbnB1dGFyZWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXhFOzs7Ozs7Ozs7OztHQVdHO0FBa0JILE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxrQkFBa0I7SUFDM0QsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUNzQixVQUFrQyxFQUN0RCxRQUFrQjtRQUVsQixLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OztZQTlCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLG10REFBK0I7Z0JBQy9CLCtGQUErRjtnQkFDL0YsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLEtBQUssRUFBRSxJQUFJO3dCQUNYLFdBQVcsRUFBRSxxQkFBcUI7cUJBQ25DO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixLQUFLLEVBQUUsSUFBSTt3QkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO3FCQUNyRDtpQkFDRjthQUNGOzs7WUE5QlEsc0JBQXNCLHVCQXdDMUIsSUFBSSxZQUFJLFFBQVE7WUEzQ0ssUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dEFyZWFDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuXHJcbi8qKlxyXG4gKiBLb21wb25lbnRlIGbDvHIgVGV4dEFyZWFcclxuICpcclxuICogQGV4YW1wbGVcclxuICpcclxuICogPG5nSW5wdXRBcmVhIG5hbWU9XCJuZ0lucHV0QXJlYVwiIGxhYmVsPVwiTXkgTGFiZWxcIiBwbGFjZWhvbGRlcj0naSBhbSBpbnB1dCBhcmVhJyBbaXNyZXF1aXJlZF09XCJ0cnVlXCIgY3VzdG9tQ3NzQ2xhc3M9XCJteUNsYXNzMSBteUNsYXNzM1wiPjwvbmdJbnB1dEFyZWE+XHJcbiAqXHJcbiAqIEBleGFtcGxlXHJcbiAqXHJcbiAqIDxuZ0lucHV0QXJlYSBuYW1lPVwibmdJbnB1dEFyZWFcIiBsYWJlbD1cIk15IExhYmVsXCIgaGVpZ2h0PVwiMTUwcHhcIiBwbGFjZWhvbGRlcj0naSBhbSBpbnB1dCBhcmVhJyBbaXNsYW5ndWFnZXNwZWNpZmljXT1cInRydWVcIj5cclxuICpcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2FjLWlucHV0YXJlYScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0YXJlYS5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNJbnB1dEFyZWFDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRBcmVhQ29tcG9uZW50KSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0lucHV0QXJlYUNvbXBvbmVudCBleHRlbmRzIFNhY0lucHV0QXJlYUNvbW1vbiB7XHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAcGFyYW0gZm9ybUxheW91dCBTYWNGb3JtTGF5b3V0IHRvIGRlZmluZSBzY29wZWQgbGF5b3V0IHNldHRpbmdzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoZm9ybUxheW91dCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRhcmVhLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvaW5wdXQvaW5wdXRhcmVhLm5nZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pMC5Db21wb25lbnRGYWN0b3J5O1xuIl19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, Host, Injector, Optional, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacInputCurrencyCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
import { SacFormLayoutDirective } from '../layout/formlayout.directive';
|
|
5
|
+
export class SacInputCurrencyComponent extends SacInputCurrencyCommon {
|
|
6
|
+
// #region Constructors
|
|
7
|
+
/**
|
|
8
|
+
* Constructor
|
|
9
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
10
|
+
* @param injector Injector for injecting services
|
|
11
|
+
*/
|
|
12
|
+
constructor(formLayout, injector) {
|
|
13
|
+
super(formLayout, injector);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
SacInputCurrencyComponent.decorators = [
|
|
17
|
+
{ type: Component, args: [{
|
|
18
|
+
selector: 'sac-inputcurrency',
|
|
19
|
+
template: "<div\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div\r\n class=\"input-group\"\r\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [ngClass]=\"[componentHeight | toControlHeight]\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div class=\"input-group-addon\">{{currency}}</div>\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
21
|
+
providers: [
|
|
22
|
+
{
|
|
23
|
+
provide: NG_VALUE_ACCESSOR,
|
|
24
|
+
multi: true,
|
|
25
|
+
useExisting: SacInputCurrencyComponent,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
provide: NG_VALIDATORS,
|
|
29
|
+
multi: true,
|
|
30
|
+
useExisting: forwardRef(() => SacInputCurrencyComponent),
|
|
31
|
+
},
|
|
32
|
+
]
|
|
33
|
+
},] }
|
|
34
|
+
];
|
|
35
|
+
SacInputCurrencyComponent.ctorParameters = () => [
|
|
36
|
+
{ type: SacFormLayoutDirective, decorators: [{ type: Host }, { type: Optional }] },
|
|
37
|
+
{ type: Injector }
|
|
38
|
+
];
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRjdXJyZW5jeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvaW5wdXQvaW5wdXRjdXJyZW5jeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDM0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFtQnhFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxzQkFBc0I7SUFDbkUsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUNzQixVQUFrQyxFQUN0RCxRQUFrQjtRQUVsQixLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OztZQTlCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsazBEQUFtQztnQkFDbkMsK0ZBQStGO2dCQUMvRixTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsS0FBSyxFQUFFLElBQUk7d0JBQ1gsV0FBVyxFQUFFLHlCQUF5QjtxQkFDdkM7b0JBQ0Q7d0JBQ0UsT0FBTyxFQUFFLGFBQWE7d0JBQ3RCLEtBQUssRUFBRSxJQUFJO3dCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMseUJBQXlCLENBQUM7cUJBQ3pEO2lCQUNGO2FBQ0Y7OztZQWxCUSxzQkFBc0IsdUJBNEIxQixJQUFJLFlBQUksUUFBUTtZQS9CSyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0LCBJbmplY3RvciwgT3B0aW9uYWwsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY0lucHV0Q3VycmVuY3lDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2FjLWlucHV0Y3VycmVuY3knLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dGN1cnJlbmN5Lmh0bWwnLFxyXG4gIC8vIFZhbHVlIEFjY2VzcyBQcm92aWRlciByZWdpc3RyaWVyZW4sIGRhbWl0IFdlcnQgdmlhIE1vZGVsIGdlc2NocmllYmVuIHVuZCBnZWxlc2VuIHdlcmRlbiBrYW5uXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IFNhY0lucHV0Q3VycmVuY3lDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRDdXJyZW5jeUNvbXBvbmVudCksXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNJbnB1dEN1cnJlbmN5Q29tcG9uZW50IGV4dGVuZHMgU2FjSW5wdXRDdXJyZW5jeUNvbW1vbiB7XHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAcGFyYW0gZm9ybUxheW91dCBTYWNGb3JtTGF5b3V0IHRvIGRlZmluZSBzY29wZWQgbGF5b3V0IHNldHRpbmdzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoZm9ybUxheW91dCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRjdXJyZW5jeS5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiQzovUHJvamVrdGUvc2ltcGxlYW5ndWxhcmNvbnRyb2xzLW5nMTAvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2lucHV0L2lucHV0Y3VycmVuY3kubmdmYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iXX0=
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, Host, Injector, Optional, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacInputDecimalCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
import { SacFormLayoutDirective } from '../layout/formlayout.directive';
|
|
5
|
+
export class SacInputDecimalComponent extends SacInputDecimalCommon {
|
|
6
|
+
// #region Constructors
|
|
7
|
+
/**
|
|
8
|
+
* Constructor
|
|
9
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
10
|
+
* @param injector Injector for injecting services
|
|
11
|
+
*/
|
|
12
|
+
constructor(formLayout, injector) {
|
|
13
|
+
super(formLayout, injector);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
SacInputDecimalComponent.decorators = [
|
|
17
|
+
{ type: Component, args: [{
|
|
18
|
+
selector: 'sac-inputdecimal',
|
|
19
|
+
template: "<div\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [ngClass]=\"[componentHeight | toControlHeight]\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
21
|
+
providers: [
|
|
22
|
+
{
|
|
23
|
+
provide: NG_VALUE_ACCESSOR,
|
|
24
|
+
multi: true,
|
|
25
|
+
useExisting: SacInputDecimalComponent,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
provide: NG_VALIDATORS,
|
|
29
|
+
multi: true,
|
|
30
|
+
useExisting: forwardRef(() => SacInputDecimalComponent),
|
|
31
|
+
},
|
|
32
|
+
]
|
|
33
|
+
},] }
|
|
34
|
+
];
|
|
35
|
+
SacInputDecimalComponent.ctorParameters = () => [
|
|
36
|
+
{ type: SacFormLayoutDirective, decorators: [{ type: Host }, { type: Optional }] },
|
|
37
|
+
{ type: Injector }
|
|
38
|
+
];
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRkZWNpbWFsLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9pbnB1dC9pbnB1dGRlY2ltYWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBbUJ4RSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEscUJBQXFCO0lBQ2pFLHVCQUF1QjtJQUV2Qjs7OztPQUlHO0lBQ0gsWUFDc0IsVUFBa0MsRUFDdEQsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDOzs7WUE5QkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLGlnREFBa0M7Z0JBQ2xDLCtGQUErRjtnQkFDL0YsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLEtBQUssRUFBRSxJQUFJO3dCQUNYLFdBQVcsRUFBRSx3QkFBd0I7cUJBQ3RDO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixLQUFLLEVBQUUsSUFBSTt3QkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO3FCQUN4RDtpQkFDRjthQUNGOzs7WUFsQlEsc0JBQXNCLHVCQTRCMUIsSUFBSSxZQUFJLFFBQVE7WUEvQkssUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dERlY2ltYWxDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2FjLWlucHV0ZGVjaW1hbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0ZGVjaW1hbC5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNJbnB1dERlY2ltYWxDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXREZWNpbWFsQ29tcG9uZW50KSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0lucHV0RGVjaW1hbENvbXBvbmVudCBleHRlbmRzIFNhY0lucHV0RGVjaW1hbENvbW1vbiB7XHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAcGFyYW0gZm9ybUxheW91dCBTYWNGb3JtTGF5b3V0IHRvIGRlZmluZSBzY29wZWQgbGF5b3V0IHNldHRpbmdzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoZm9ybUxheW91dCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRkZWNpbWFsLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvaW5wdXQvaW5wdXRkZWNpbWFsLm5nZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pMC5Db21wb25lbnRGYWN0b3J5O1xuIl19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, Host, Injector, Optional, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacInputEmailCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
import { SacFormLayoutDirective } from '../layout/formlayout.directive';
|
|
5
|
+
export class SacInputEmailComponent extends SacInputEmailCommon {
|
|
6
|
+
// #region Constructors
|
|
7
|
+
/**
|
|
8
|
+
* Constructor
|
|
9
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
10
|
+
* @param injector Injector for injecting services
|
|
11
|
+
*/
|
|
12
|
+
constructor(formLayout, injector) {
|
|
13
|
+
super(formLayout, injector);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
SacInputEmailComponent.decorators = [
|
|
17
|
+
{ type: Component, args: [{
|
|
18
|
+
selector: 'sac-inputemail',
|
|
19
|
+
template: "<div\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <div\r\n class=\"input-group\"\r\n [class.input-group-sm]=\"componentHeight === ControlHeight.Small\"\r\n [class.input-group-lg]=\"componentHeight === ControlHeight.Large\"\r\n >\r\n <div class=\"input-group-addon\">@</div>\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [ngClass]=\"[componentHeight | toControlHeight]\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n autocomplete=\"email\"\r\n [attr.maxlength]=\"maxlength\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n </div>\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
21
|
+
providers: [
|
|
22
|
+
{
|
|
23
|
+
provide: NG_VALUE_ACCESSOR,
|
|
24
|
+
multi: true,
|
|
25
|
+
useExisting: SacInputEmailComponent,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
provide: NG_VALIDATORS,
|
|
29
|
+
multi: true,
|
|
30
|
+
useExisting: forwardRef(() => SacInputEmailComponent),
|
|
31
|
+
},
|
|
32
|
+
]
|
|
33
|
+
},] }
|
|
34
|
+
];
|
|
35
|
+
SacInputEmailComponent.ctorParameters = () => [
|
|
36
|
+
{ type: SacFormLayoutDirective, decorators: [{ type: Host }, { type: Optional }] },
|
|
37
|
+
{ type: Injector }
|
|
38
|
+
];
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRlbWFpbC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvaW5wdXQvaW5wdXRlbWFpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFtQnhFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxtQkFBbUI7SUFDN0QsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUNzQixVQUFrQyxFQUN0RCxRQUFrQjtRQUVsQixLQUFLLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQzlCLENBQUM7OztZQTlCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsczFEQUFnQztnQkFDaEMsK0ZBQStGO2dCQUMvRixTQUFTLEVBQUU7b0JBQ1Q7d0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsS0FBSyxFQUFFLElBQUk7d0JBQ1gsV0FBVyxFQUFFLHNCQUFzQjtxQkFDcEM7b0JBQ0Q7d0JBQ0UsT0FBTyxFQUFFLGFBQWE7d0JBQ3RCLEtBQUssRUFBRSxJQUFJO3dCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUM7cUJBQ3REO2lCQUNGO2FBQ0Y7OztZQWxCUSxzQkFBc0IsdUJBNEIxQixJQUFJLFlBQUksUUFBUTtZQS9CSyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0LCBJbmplY3RvciwgT3B0aW9uYWwsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkdfVkFMSURBVE9SUywgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhY0lucHV0RW1haWxDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2FjLWlucHV0ZW1haWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dGVtYWlsLmh0bWwnLFxyXG4gIC8vIFZhbHVlIEFjY2VzcyBQcm92aWRlciByZWdpc3RyaWVyZW4sIGRhbWl0IFdlcnQgdmlhIE1vZGVsIGdlc2NocmllYmVuIHVuZCBnZWxlc2VuIHdlcmRlbiBrYW5uXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IFNhY0lucHV0RW1haWxDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRFbWFpbENvbXBvbmVudCksXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTYWNJbnB1dEVtYWlsQ29tcG9uZW50IGV4dGVuZHMgU2FjSW5wdXRFbWFpbENvbW1vbiB7XHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAcGFyYW0gZm9ybUxheW91dCBTYWNGb3JtTGF5b3V0IHRvIGRlZmluZSBzY29wZWQgbGF5b3V0IHNldHRpbmdzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoZm9ybUxheW91dCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRlbWFpbC5uZ2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiQzovUHJvamVrdGUvc2ltcGxlYW5ndWxhcmNvbnRyb2xzLW5nMTAvY2guam5ldHdvcmsuc2FjLWNvbnRyb2xzL3Byb2plY3RzL3NhYy1ib290c3RyYXAzL3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2lucHV0L2lucHV0ZW1haWwubmdmYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpMCBmcm9tICdAYW5ndWxhci9jb3JlJztcbmkwLkNvbXBvbmVudEZhY3Rvcnk7XG4iXX0=
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, Host, Injector, Optional, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { SacInputIntegerCommon } from '@simpleangularcontrols/sac-common';
|
|
4
|
+
import { SacFormLayoutDirective } from '../layout/formlayout.directive';
|
|
5
|
+
export class SacInputIntegerComponent extends SacInputIntegerCommon {
|
|
6
|
+
// #region Constructors
|
|
7
|
+
/**
|
|
8
|
+
* Constructor
|
|
9
|
+
* @param formLayout SacFormLayout to define scoped layout settings
|
|
10
|
+
* @param injector Injector for injecting services
|
|
11
|
+
*/
|
|
12
|
+
constructor(formLayout, injector) {
|
|
13
|
+
super(formLayout, injector);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
SacInputIntegerComponent.decorators = [
|
|
17
|
+
{ type: Component, args: [{
|
|
18
|
+
selector: 'sac-inputinteger',
|
|
19
|
+
template: "<div\r\n class=\"row form-group\"\r\n [class.has-error]=\"invalid && (dirty || touched)\"\r\n [ngClass]=\"componentHeight | toLabelHeight\"\r\n>\r\n <label\r\n *ngIf=\"disablelabel === false && !isAdaptiveLabel\"\r\n id=\"{{name}}label\"\r\n for=\"{{name}}\"\r\n class=\"col-xs-12 control-label\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toLabelWidthCss) : 'sr-only' ]\"\r\n [class.required]=\"isrequired\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"col-xs-12\"\r\n [ngClass]=\"[disablelabel === false ? (this.labelSizes | toControlWidthCss) : '']\"\r\n >\r\n <input\r\n id=\"{{name}}\"\r\n name=\"{{name}}\"\r\n type=\"text\"\r\n class=\"form-control\"\r\n [ngClass]=\"[componentHeight | toControlHeight]\"\r\n [value]=\"value\"\r\n [attr.placeholder]=\"placeholder\"\r\n (blur)=\"onTouch()\"\r\n (input)=\"setValue($event.target.value)\"\r\n (keypress)=\"onKeyPress($event)\"\r\n [disabled]=\"isdisabled\"\r\n [readonly]=\"readonly\"\r\n />\r\n <label\r\n for=\"{{name}}\"\r\n class=\"form-label-adaptive form-label-fixed\"\r\n [ngClass]=\"{ 'required': isrequired }\"\r\n *ngIf=\"isAdaptiveLabel && !disablelabel\"\r\n >{{label}}</label\r\n >\r\n <div\r\n class=\"help-block help-block-error\"\r\n *ngIf=\"isinlineerrorenabled && invalid && (dirty || touched)\"\r\n >\r\n {{ GetErrorMessage() | async }}\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
20
|
+
// Value Access Provider registrieren, damit Wert via Model geschrieben und gelesen werden kann
|
|
21
|
+
providers: [
|
|
22
|
+
{
|
|
23
|
+
provide: NG_VALUE_ACCESSOR,
|
|
24
|
+
multi: true,
|
|
25
|
+
useExisting: SacInputIntegerComponent,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
provide: NG_VALIDATORS,
|
|
29
|
+
multi: true,
|
|
30
|
+
useExisting: forwardRef(() => SacInputIntegerComponent),
|
|
31
|
+
},
|
|
32
|
+
]
|
|
33
|
+
},] }
|
|
34
|
+
];
|
|
35
|
+
SacInputIntegerComponent.ctorParameters = () => [
|
|
36
|
+
{ type: SacFormLayoutDirective, decorators: [{ type: Host }, { type: Optional }] },
|
|
37
|
+
{ type: Injector }
|
|
38
|
+
];
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRpbnRlZ2VyLmpzIiwic291cmNlUm9vdCI6IkM6L1Byb2pla3RlL3NpbXBsZWFuZ3VsYXJjb250cm9scy1uZzEwL2NoLmpuZXR3b3JrLnNhYy1jb250cm9scy9wcm9qZWN0cy9zYWMtYm9vdHN0cmFwMy9zcmMvIiwic291cmNlcyI6WyJjb250cm9scy9pbnB1dC9pbnB1dGludGVnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBbUJ4RSxNQUFNLE9BQU8sd0JBQXlCLFNBQVEscUJBQXFCO0lBQ2pFLHVCQUF1QjtJQUV2Qjs7OztPQUlHO0lBQ0gsWUFDc0IsVUFBa0MsRUFDdEQsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDOzs7WUE5QkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLGlnREFBa0M7Z0JBQ2xDLCtGQUErRjtnQkFDL0YsU0FBUyxFQUFFO29CQUNUO3dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7d0JBQzFCLEtBQUssRUFBRSxJQUFJO3dCQUNYLFdBQVcsRUFBRSx3QkFBd0I7cUJBQ3RDO29CQUNEO3dCQUNFLE9BQU8sRUFBRSxhQUFhO3dCQUN0QixLQUFLLEVBQUUsSUFBSTt3QkFDWCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO3FCQUN4RDtpQkFDRjthQUNGOzs7WUFsQlEsc0JBQXNCLHVCQTRCMUIsSUFBSSxZQUFJLFFBQVE7WUEvQkssUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdCwgSW5qZWN0b3IsIE9wdGlvbmFsLCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTYWNJbnB1dEludGVnZXJDb21tb24gfSBmcm9tICdAc2ltcGxlYW5ndWxhcmNvbnRyb2xzL3NhYy1jb21tb24nO1xyXG5pbXBvcnQgeyBTYWNGb3JtTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vbGF5b3V0L2Zvcm1sYXlvdXQuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2FjLWlucHV0aW50ZWdlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2lucHV0aW50ZWdlci5odG1sJyxcclxuICAvLyBWYWx1ZSBBY2Nlc3MgUHJvdmlkZXIgcmVnaXN0cmllcmVuLCBkYW1pdCBXZXJ0IHZpYSBNb2RlbCBnZXNjaHJpZWJlbiB1bmQgZ2VsZXNlbiB3ZXJkZW4ga2FublxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgbXVsdGk6IHRydWUsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBTYWNJbnB1dEludGVnZXJDb21wb25lbnQsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2FjSW5wdXRJbnRlZ2VyQ29tcG9uZW50KSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNhY0lucHV0SW50ZWdlckNvbXBvbmVudCBleHRlbmRzIFNhY0lucHV0SW50ZWdlckNvbW1vbiB7XHJcbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcclxuXHJcbiAgLyoqXHJcbiAgICogQ29uc3RydWN0b3JcclxuICAgKiBAcGFyYW0gZm9ybUxheW91dCBTYWNGb3JtTGF5b3V0IHRvIGRlZmluZSBzY29wZWQgbGF5b3V0IHNldHRpbmdzXHJcbiAgICogQHBhcmFtIGluamVjdG9yIEluamVjdG9yIGZvciBpbmplY3Rpbmcgc2VydmljZXNcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBIb3N0KCkgQE9wdGlvbmFsKCkgZm9ybUxheW91dDogU2FjRm9ybUxheW91dERpcmVjdGl2ZSxcclxuICAgIGluamVjdG9yOiBJbmplY3RvclxyXG4gICkge1xyXG4gICAgc3VwZXIoZm9ybUxheW91dCwgaW5qZWN0b3IpO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBDb25zdHJ1Y3RvcnNcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview This file was generated by the Angular template compiler. Do not edit.
|
|
3
|
+
*
|
|
4
|
+
* @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
|
|
5
|
+
* tslint:disable
|
|
6
|
+
*/
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXRpbnRlZ2VyLm5nZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Qcm9qZWt0ZS9zaW1wbGVhbmd1bGFyY29udHJvbHMtbmcxMC9jaC5qbmV0d29yay5zYWMtY29udHJvbHMvcHJvamVjdHMvc2FjLWJvb3RzdHJhcDMvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvaW5wdXQvaW5wdXRpbnRlZ2VyLm5nZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pMC5Db21wb25lbnRGYWN0b3J5O1xuIl19
|