@colijnit/sharedcomponents 1.0.61 → 1.0.63
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/3rdpartylicenses.txt +1200 -0
- package/README.md +24 -24
- package/bundles/colijnit-sharedcomponents.umd.js +9887 -9851
- package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
- package/colijnit-sharedcomponents.d.ts +91 -91
- package/colijnit-sharedcomponents.metadata.json +1 -1
- package/esm2015/colijnit-sharedcomponents.js +91 -91
- package/esm2015/lib/assets/dictionary/text.properties.js +11 -11
- package/esm2015/lib/businessobject/build-images-and-documentation-result.js +2 -2
- package/esm2015/lib/businessobject/co-document-right.bo.js +3 -3
- package/esm2015/lib/businessobject/drag-drop-container-element.js +2 -2
- package/esm2015/lib/businessobject/drag-drop-container.js +7 -7
- package/esm2015/lib/components/activity-list/activity-list.component.js +130 -130
- package/esm2015/lib/components/activity-list/activity-list.module.js +24 -24
- package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.component.js +47 -47
- package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.module.js +20 -20
- package/esm2015/lib/components/date-planning/component/agenda/agenda-base-view.component.js +61 -61
- package/esm2015/lib/components/date-planning/component/agenda/agenda-day-view.component.js +36 -36
- package/esm2015/lib/components/date-planning/component/agenda/agenda-event.component.js +56 -56
- package/esm2015/lib/components/date-planning/component/agenda/agenda-events.component.js +47 -47
- package/esm2015/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.js +68 -68
- package/esm2015/lib/components/date-planning/component/agenda/agenda-header.component.js +243 -243
- package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-cell.component.js +36 -36
- package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.js +50 -50
- package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view.component.js +46 -46
- package/esm2015/lib/components/date-planning/component/agenda/agenda-month-view.component.js +61 -61
- package/esm2015/lib/components/date-planning/component/agenda/agenda-select-event.component.js +39 -39
- package/esm2015/lib/components/date-planning/component/agenda/agenda-view.component.js +35 -35
- package/esm2015/lib/components/date-planning/component/agenda/agenda-week-select-view.component.js +64 -64
- package/esm2015/lib/components/date-planning/component/agenda/agenda-week-view.component.js +48 -48
- package/esm2015/lib/components/date-planning/component/agenda/view-select.component.js +42 -42
- package/esm2015/lib/components/date-planning/component/calendar/calendar-all-months.component.js +34 -34
- package/esm2015/lib/components/date-planning/component/calendar/calendar-all-years.component.js +48 -48
- package/esm2015/lib/components/date-planning/component/calendar/calendar-header.component.js +107 -107
- package/esm2015/lib/components/date-planning/component/calendar/calendar-view.component.js +178 -178
- package/esm2015/lib/components/date-planning/component/calendar/calendar.component.js +34 -34
- package/esm2015/lib/components/date-planning/date-planning.component.js +113 -113
- package/esm2015/lib/components/date-planning/date-planning.module.js +63 -63
- package/esm2015/lib/components/docsign/component/signature/signature.component.js +75 -75
- package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +44 -44
- package/esm2015/lib/components/docsign/docsign.component.js +242 -242
- package/esm2015/lib/components/docsign/docsign.module.js +23 -23
- package/esm2015/lib/components/file-upload/file-upload.component.js +189 -189
- package/esm2015/lib/components/file-upload/file-upload.module.js +25 -25
- package/esm2015/lib/components/file-upload-popup/file-upload-popup.component.js +397 -397
- package/esm2015/lib/components/file-upload-popup/file-upload-popup.module.js +30 -30
- package/esm2015/lib/components/files-upload/components/base-file-upload.component.js +469 -469
- package/esm2015/lib/components/files-upload/components/drag-drop-container.component.js +115 -115
- package/esm2015/lib/components/files-upload/files-upload.component.js +131 -131
- package/esm2015/lib/components/files-upload/files-upload.module.js +47 -47
- package/esm2015/lib/components/image-display/image-display.component.js +36 -36
- package/esm2015/lib/components/image-display/image-display.module.js +23 -23
- package/esm2015/lib/components/key-pad/key-pad.component.js +200 -200
- package/esm2015/lib/components/key-pad/key-pad.module.js +22 -22
- package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +74 -74
- package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +21 -21
- package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +59 -59
- package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +19 -19
- package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.component.js +89 -89
- package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.module.js +21 -21
- package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.js +79 -79
- package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.js +21 -21
- package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.js +85 -85
- package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.js +21 -21
- package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +64 -64
- package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +26 -26
- package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.js +40 -40
- package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.js +23 -23
- package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +61 -61
- package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.js +28 -28
- package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.component.js +38 -38
- package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.module.js +21 -21
- package/esm2015/lib/components/send-method-dialog/model/email-address-viewmodel.js +7 -7
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +258 -258
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +35 -35
- package/esm2015/lib/components/send-method-dialog/send-method-params.interface.js +2 -2
- package/esm2015/lib/components/send-method-dialog/service/send-method.service.js +59 -59
- package/esm2015/lib/components/simple-tags/simple-tags.component.js +229 -229
- package/esm2015/lib/components/simple-tags/simple-tags.module.js +26 -26
- package/esm2015/lib/components/statusbar/statusbar-popup.component.js +97 -97
- package/esm2015/lib/components/statusbar/statusbar.component.js +81 -81
- package/esm2015/lib/components/statusbar/statusbar.module.js +27 -27
- package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +47 -47
- package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +47 -47
- package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +47 -47
- package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +47 -47
- package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +47 -47
- package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +67 -67
- package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +53 -53
- package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +251 -240
- package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +52 -52
- package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +39 -41
- package/esm2015/lib/components/stock/localization/translation.js +70 -63
- package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +33 -33
- package/esm2015/lib/components/stock/stock-information/stock-information.component.js +49 -48
- package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +457 -457
- package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +243 -241
- package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +2 -2
- package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +72 -72
- package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +160 -149
- package/esm2015/lib/components/stock/stock.component.js +238 -193
- package/esm2015/lib/components/stock/stock.module.js +80 -80
- package/esm2015/lib/components/stock-statusbar/stock-statusbar.component.js +23 -23
- package/esm2015/lib/components/stock-statusbar/stock-statusbar.module.js +19 -19
- package/esm2015/lib/components/tab-bar/tab-bar.component.js +90 -88
- package/esm2015/lib/components/tab-bar/tab-bar.module.js +21 -21
- package/esm2015/lib/components/tab-bar/tab.interface.js +2 -2
- package/esm2015/lib/components/tile-renderer/tile-render.component.js +80 -80
- package/esm2015/lib/components/tile-renderer/tile-render.module.js +26 -26
- package/esm2015/lib/decorator/input-boolean.decorator.js +34 -34
- package/esm2015/lib/enum/calendar-view.enum.js +9 -9
- package/esm2015/lib/enum/document-email-report.enum.js +18 -18
- package/esm2015/lib/enum/domain-multiple-name.enum.js +13 -13
- package/esm2015/lib/enum/file-type.js +14 -14
- package/esm2015/lib/enum/files-upload-config-objects.js +3 -3
- package/esm2015/lib/enum/gauge-color.enum.js +10 -10
- package/esm2015/lib/enum/icon.enum.js +48 -44
- package/esm2015/lib/enum/internal-param.enum.js +38 -38
- package/esm2015/lib/enum/keyboard-code.enum.js +32 -32
- package/esm2015/lib/enum/language-code.enum.js +8 -8
- package/esm2015/lib/enum/month.enum.js +17 -17
- package/esm2015/lib/enum/read-write-access-config-names.enum.js +2 -2
- package/esm2015/lib/enum/table-name.enum.js +86 -86
- package/esm2015/lib/enum/tag-category.enum.js +22 -22
- package/esm2015/lib/enum/tags-component-config-names.js +2 -2
- package/esm2015/lib/enum/thumb-three-way-state.js +19 -19
- package/esm2015/lib/enum/tile-size-type.js +7 -7
- package/esm2015/lib/enum/time-period.enum.js +11 -11
- package/esm2015/lib/event/co-drag-event.js +2 -2
- package/esm2015/lib/event/co-drop-event.js +2 -2
- package/esm2015/lib/interface/key-value-pair.js +2 -2
- package/esm2015/lib/interface/operation-callback-simple-function.js +4 -4
- package/esm2015/lib/localization/localization.module.js +19 -19
- package/esm2015/lib/localization/localize.pipe.js +26 -26
- package/esm2015/lib/localization/localize.service.js +30 -30
- package/esm2015/lib/localization/translation.js +3 -3
- package/esm2015/lib/model/agenda-event-per-day.model.js +6 -6
- package/esm2015/lib/model/agenda-event.model.js +8 -8
- package/esm2015/lib/model/agenda-null-objects.js +11 -11
- package/esm2015/lib/model/constant/all-months.js +17 -17
- package/esm2015/lib/model/date-range.js +5 -5
- package/esm2015/lib/model/day.model.js +7 -7
- package/esm2015/lib/model/icon-svg.js +47 -43
- package/esm2015/lib/model/month.model.js +11 -11
- package/esm2015/lib/model/send-method.js +8 -8
- package/esm2015/lib/model/settings.js +4 -4
- package/esm2015/lib/model/tag-tree-item.bo.js +16 -16
- package/esm2015/lib/model/time-window.bo.js +26 -26
- package/esm2015/lib/model/tree-object.js +15 -15
- package/esm2015/lib/model/week.model.js +6 -6
- package/esm2015/lib/model/weekday.model.js +10 -10
- package/esm2015/lib/pipe/array-number.pipe.js +15 -15
- package/esm2015/lib/pipe/file-type-image.pipe.js +51 -51
- package/esm2015/lib/pipe/master-pipes.js +9 -9
- package/esm2015/lib/pipe/ucfirst.pipe.js +16 -16
- package/esm2015/lib/service/dictionary.service.js +76 -76
- package/esm2015/lib/service/drag-drop.service.js +365 -365
- package/esm2015/lib/service/icon-cache.service.js +51 -51
- package/esm2015/lib/service/options.service.js +48 -48
- package/esm2015/lib/service/shared-connector.service.js +433 -433
- package/esm2015/lib/service/shared.service.js +60 -60
- package/esm2015/lib/service/stock.service.js +110 -110
- package/esm2015/lib/utils/array-utils.js +202 -202
- package/esm2015/lib/utils/calendar.utils.js +68 -68
- package/esm2015/lib/utils/check-precision-and-scale-result.js +2 -2
- package/esm2015/lib/utils/check-within-stepped-bounds-result.js +2 -2
- package/esm2015/lib/utils/co-document-shared-field-logic.js +50 -50
- package/esm2015/lib/utils/date-utils.js +264 -264
- package/esm2015/lib/utils/enum-utils.js +128 -128
- package/esm2015/lib/utils/function/not-nill.function.js +5 -5
- package/esm2015/lib/utils/is-nill.function.js +5 -5
- package/esm2015/lib/utils/map-utils.js +41 -41
- package/esm2015/lib/utils/number-utils.js +390 -390
- package/esm2015/lib/utils/object-utils.js +278 -278
- package/esm2015/lib/utils/ref-code-utils.js +49 -49
- package/esm2015/lib/utils/string-utils.js +93 -93
- package/esm2015/public-api.js +31 -31
- package/favicon.ico +0 -0
- package/fesm2015/colijnit-sharedcomponents.js +10410 -10328
- package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
- package/index.html +12 -0
- package/lib/assets/dictionary/text.properties.d.ts +3 -3
- package/lib/businessobject/build-images-and-documentation-result.d.ts +5 -5
- package/lib/businessobject/co-document-right.bo.d.ts +6 -6
- package/lib/businessobject/drag-drop-container-element.d.ts +6 -6
- package/lib/businessobject/drag-drop-container.d.ts +6 -6
- package/lib/components/access/read-write-access.scss +25 -25
- package/lib/components/access/style/_layout.scss +23 -23
- package/lib/components/access/style/_material-definition.scss +12 -12
- package/lib/components/access/style/_theme.scss +4 -4
- package/lib/components/access/style/material.scss +4 -4
- package/lib/components/activity-list/activity-list.component.d.ts +33 -33
- package/lib/components/activity-list/activity-list.module.d.ts +2 -2
- package/lib/components/activity-list/style/_layout.scss +68 -68
- package/lib/components/activity-list/style/_theme.scss +4 -4
- package/lib/components/activity-list/style/material.scss +4 -4
- package/lib/components/app-file-dropzone/app-file-dropzone.component.d.ts +14 -14
- package/lib/components/app-file-dropzone/app-file-dropzone.module.d.ts +2 -2
- package/lib/components/app-file-dropzone/style/_layout.scss +61 -61
- package/lib/components/app-file-dropzone/style/_theme.scss +4 -4
- package/lib/components/app-file-dropzone/style/material.scss +4 -4
- package/lib/components/date-planning/component/agenda/agenda-base-view.component.d.ts +21 -21
- package/lib/components/date-planning/component/agenda/agenda-day-view.component.d.ts +7 -7
- package/lib/components/date-planning/component/agenda/agenda-event.component.d.ts +18 -18
- package/lib/components/date-planning/component/agenda/agenda-events.component.d.ts +13 -13
- package/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.d.ts +18 -18
- package/lib/components/date-planning/component/agenda/agenda-header.component.d.ts +48 -48
- package/lib/components/date-planning/component/agenda/agenda-hour-cell.component.d.ts +9 -9
- package/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.d.ts +8 -8
- package/lib/components/date-planning/component/agenda/agenda-hour-view.component.d.ts +7 -7
- package/lib/components/date-planning/component/agenda/agenda-month-view.component.d.ts +10 -10
- package/lib/components/date-planning/component/agenda/agenda-select-event.component.d.ts +12 -12
- package/lib/components/date-planning/component/agenda/agenda-view.component.d.ts +12 -12
- package/lib/components/date-planning/component/agenda/agenda-week-select-view.component.d.ts +10 -10
- package/lib/components/date-planning/component/agenda/agenda-week-view.component.d.ts +9 -9
- package/lib/components/date-planning/component/agenda/style/_layout.scss +443 -443
- package/lib/components/date-planning/component/agenda/style/_material-definition.scss +12 -12
- package/lib/components/date-planning/component/agenda/style/_theme.scss +7 -7
- package/lib/components/date-planning/component/agenda/style/material.scss +5 -5
- package/lib/components/date-planning/component/agenda/view-select.component.d.ts +11 -11
- package/lib/components/date-planning/component/calendar/calendar-all-months.component.d.ts +9 -9
- package/lib/components/date-planning/component/calendar/calendar-all-years.component.d.ts +9 -9
- package/lib/components/date-planning/component/calendar/calendar-header.component.d.ts +23 -23
- package/lib/components/date-planning/component/calendar/calendar-view.component.d.ts +31 -31
- package/lib/components/date-planning/component/calendar/calendar.component.d.ts +10 -10
- package/lib/components/date-planning/component/calendar/style/_layout.scss +167 -167
- package/lib/components/date-planning/component/calendar/style/_material-definition.scss +7 -7
- package/lib/components/date-planning/component/calendar/style/_theme.scss +7 -7
- package/lib/components/date-planning/component/calendar/style/material.scss +5 -5
- package/lib/components/date-planning/date-planning.component.d.ts +28 -28
- package/lib/components/date-planning/date-planning.module.d.ts +2 -2
- package/lib/components/date-planning/style/_layout.scss +45 -45
- package/lib/components/date-planning/style/_theme.scss +5 -5
- package/lib/components/date-planning/style/material.scss +7 -7
- package/lib/components/docsign/component/signature/signature.component.d.ts +16 -16
- package/lib/components/docsign/component/signature/style/_layout.scss +40 -40
- package/lib/components/docsign/component/signature/style/_material-definition.scss +11 -11
- package/lib/components/docsign/component/signature/style/_theme.scss +13 -13
- package/lib/components/docsign/component/signature/style/material.scss +4 -4
- package/lib/components/docsign/component/signatures/signatures.component.d.ts +12 -12
- package/lib/components/docsign/component/signatures/style/_layout.scss +13 -13
- package/lib/components/docsign/component/signatures/style/_material-definition.scss +1 -1
- package/lib/components/docsign/component/signatures/style/_theme.scss +4 -4
- package/lib/components/docsign/component/signatures/style/material.scss +5 -5
- package/lib/components/docsign/docsign.component.d.ts +94 -94
- package/lib/components/docsign/docsign.module.d.ts +2 -2
- package/lib/components/docsign/style/_layout.scss +40 -40
- package/lib/components/docsign/style/_material-definition.scss +12 -12
- package/lib/components/docsign/style/_theme.scss +12 -12
- package/lib/components/docsign/style/material.scss +15 -15
- package/lib/components/file-upload/file-upload.component.d.ts +42 -42
- package/lib/components/file-upload/file-upload.module.d.ts +2 -2
- package/lib/components/file-upload/style/_layout.scss +59 -59
- package/lib/components/file-upload/style/_material-definition.scss +2 -2
- package/lib/components/file-upload/style/_theme.scss +4 -4
- package/lib/components/file-upload/style/material.scss +4 -4
- package/lib/components/file-upload-popup/file-upload-popup.component.d.ts +75 -75
- package/lib/components/file-upload-popup/file-upload-popup.module.d.ts +2 -2
- package/lib/components/file-upload-popup/style/_layout.scss +48 -48
- package/lib/components/file-upload-popup/style/_material-definition.scss +2 -2
- package/lib/components/file-upload-popup/style/_theme.scss +5 -5
- package/lib/components/file-upload-popup/style/material.scss +4 -4
- package/lib/components/files-upload/components/base-file-upload.component.d.ts +98 -98
- package/lib/components/files-upload/components/drag-drop-container.component.d.ts +34 -34
- package/lib/components/files-upload/files-upload.component.d.ts +32 -32
- package/lib/components/files-upload/files-upload.module.d.ts +2 -2
- package/lib/components/files-upload/style/_layout.scss +49 -49
- package/lib/components/files-upload/style/_theme.scss +5 -5
- package/lib/components/files-upload/style/material.scss +4 -4
- package/lib/components/image-display/image-display.component.d.ts +14 -14
- package/lib/components/image-display/image-display.module.d.ts +2 -2
- package/lib/components/image-display/style/_layout.scss +56 -56
- package/lib/components/image-display/style/_material-definition.scss +4 -4
- package/lib/components/image-display/style/_theme.scss +6 -6
- package/lib/components/image-display/style/material.scss +3 -3
- package/lib/components/key-pad/key-pad.component.d.ts +38 -38
- package/lib/components/key-pad/key-pad.module.d.ts +2 -2
- package/lib/components/key-pad/style/_layout.scss +160 -160
- package/lib/components/key-pad/style/_material-definition.scss +19 -19
- package/lib/components/key-pad/style/_theme.scss +35 -35
- package/lib/components/key-pad/style/material.scss +4 -4
- package/lib/components/layout-switcher/layout-switcher.component.d.ts +16 -16
- package/lib/components/layout-switcher/layout-switcher.module.d.ts +2 -2
- package/lib/components/layout-switcher/style/_layout.scss +94 -94
- package/lib/components/layout-switcher/style/_material-definition.scss +16 -16
- package/lib/components/layout-switcher/style/_theme.scss +4 -4
- package/lib/components/layout-switcher/style/material.scss +6 -6
- package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +11 -11
- package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +2 -2
- package/lib/components/linear-gauge/style/_layout.scss +20 -20
- package/lib/components/linear-gauge/style/_material-definition.scss +8 -8
- package/lib/components/linear-gauge/style/_theme.scss +4 -4
- package/lib/components/linear-gauge/style/material.scss +6 -6
- package/lib/components/login/style/_layout.scss +57 -57
- package/lib/components/login/style/_material-definition.scss +23 -23
- package/lib/components/login/style/_theme.scss +7 -7
- package/lib/components/login/style/material.scss +4 -4
- package/lib/components/multi-property-toggler/multiple-property-toggler.component.d.ts +27 -27
- package/lib/components/multi-property-toggler/multiple-property-toggler.module.d.ts +2 -2
- package/lib/components/multi-property-toggler/style/_layout.scss +24 -24
- package/lib/components/multi-property-toggler/style/_theme.scss +4 -4
- package/lib/components/multi-property-toggler/style/material.scss +4 -4
- package/lib/components/screen-config-generator/style/_layout.scss +95 -95
- package/lib/components/screen-config-generator/style/_theme.scss +4 -4
- package/lib/components/screen-config-generator/style/material.scss +4 -4
- package/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.d.ts +19 -19
- package/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.d.ts +2 -2
- package/lib/components/send-method-dialog/components/layout-selection/style/_layout.scss +44 -44
- package/lib/components/send-method-dialog/components/layout-selection/style/_material-definition.scss +19 -19
- package/lib/components/send-method-dialog/components/layout-selection/style/_theme.scss +17 -17
- package/lib/components/send-method-dialog/components/layout-selection/style/material.scss +4 -4
- package/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.d.ts +19 -19
- package/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.d.ts +2 -2
- package/lib/components/send-method-dialog/components/printer-selection/style/_layout.scss +69 -69
- package/lib/components/send-method-dialog/components/printer-selection/style/_material-definition.scss +37 -37
- package/lib/components/send-method-dialog/components/printer-selection/style/_theme.scss +23 -23
- package/lib/components/send-method-dialog/components/printer-selection/style/material.scss +4 -4
- package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +14 -14
- package/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.d.ts +2 -2
- package/lib/components/send-method-dialog/components/send-method-email/style/_layout.scss +29 -29
- package/lib/components/send-method-dialog/components/send-method-email/style/_material-definition.scss +8 -8
- package/lib/components/send-method-dialog/components/send-method-email/style/_theme.scss +5 -5
- package/lib/components/send-method-dialog/components/send-method-email/style/material.scss +4 -4
- package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.d.ts +8 -8
- package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.d.ts +2 -2
- package/lib/components/send-method-dialog/components/send-method-pdf/style/_layout.scss +25 -25
- package/lib/components/send-method-dialog/components/send-method-pdf/style/_material-definition.scss +5 -5
- package/lib/components/send-method-dialog/components/send-method-pdf/style/_theme.scss +5 -5
- package/lib/components/send-method-dialog/components/send-method-pdf/style/material.scss +4 -4
- package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +13 -13
- package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.d.ts +2 -2
- package/lib/components/send-method-dialog/components/send-method-printer/style/_layout.scss +30 -30
- package/lib/components/send-method-dialog/components/send-method-printer/style/_material-definition.scss +5 -5
- package/lib/components/send-method-dialog/components/send-method-printer/style/_theme.scss +5 -5
- package/lib/components/send-method-dialog/components/send-method-printer/style/material.scss +4 -4
- package/lib/components/send-method-dialog/components/signature-button/signature-button.component.d.ts +12 -12
- package/lib/components/send-method-dialog/components/signature-button/signature-button.module.d.ts +2 -2
- package/lib/components/send-method-dialog/components/signature-button/style/_layout.scss +28 -28
- package/lib/components/send-method-dialog/components/signature-button/style/_material-definition.scss +8 -8
- package/lib/components/send-method-dialog/components/signature-button/style/_theme.scss +4 -4
- package/lib/components/send-method-dialog/components/signature-button/style/material.scss +4 -4
- package/lib/components/send-method-dialog/model/email-address-viewmodel.d.ts +5 -5
- package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +71 -71
- package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +2 -2
- package/lib/components/send-method-dialog/send-method-params.interface.d.ts +13 -13
- package/lib/components/send-method-dialog/service/send-method.service.d.ts +23 -23
- package/lib/components/send-method-dialog/style/_layout.scss +165 -165
- package/lib/components/send-method-dialog/style/_material-definition.scss +48 -48
- package/lib/components/send-method-dialog/style/_theme.scss +33 -33
- package/lib/components/send-method-dialog/style/material.scss +10 -10
- package/lib/components/simple-tags/simple-tags.component.d.ts +31 -31
- package/lib/components/simple-tags/simple-tags.module.d.ts +2 -2
- package/lib/components/simple-tags/style/_layout.scss +272 -272
- package/lib/components/simple-tags/style/_material-definition.scss +39 -39
- package/lib/components/simple-tags/style/_theme.scss +4 -4
- package/lib/components/simple-tags/style/material.scss +4 -4
- package/lib/components/statusbar/statusbar-popup.component.d.ts +21 -21
- package/lib/components/statusbar/statusbar.component.d.ts +26 -26
- package/lib/components/statusbar/statusbar.module.d.ts +2 -2
- package/lib/components/statusbar/style/_layout.scss +70 -70
- package/lib/components/statusbar/style/_material-definition.scss +23 -23
- package/lib/components/statusbar/style/_theme.scss +13 -13
- package/lib/components/statusbar/style/material.scss +5 -5
- package/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.d.ts +9 -9
- package/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.d.ts +9 -9
- package/lib/components/stock/components/order-stock-history/order-stock-history.component.d.ts +9 -9
- package/lib/components/stock/components/order-stock-tab/order-stock-tab.component.d.ts +11 -11
- package/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.d.ts +9 -9
- package/lib/components/stock/components/order-tab/order-tab.component.d.ts +20 -20
- package/lib/components/stock/components/stock-history/stock-history.component.d.ts +13 -13
- package/lib/components/stock/components/stock-location/stock-location.component.d.ts +52 -50
- package/lib/components/stock/components/stock-prognose/stock-prognose.component.d.ts +11 -11
- package/lib/components/stock/components/stock-tab/stock-tab.component.d.ts +7 -9
- package/lib/components/stock/localization/translation.d.ts +67 -60
- package/lib/components/stock/stock-history-tabs/stock-history-tabs.component.d.ts +7 -7
- package/lib/components/stock/stock-information/stock-information.component.d.ts +9 -8
- package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +75 -75
- package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +56 -56
- package/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts +4 -4
- package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +18 -18
- package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +38 -42
- package/lib/components/stock/stock.component.d.ts +64 -57
- package/lib/components/stock/stock.module.d.ts +2 -2
- package/lib/components/stock/style/_layout.scss +421 -286
- package/lib/components/stock/style/_material-definition.scss +25 -25
- package/lib/components/stock/style/_theme.scss +5 -5
- package/lib/components/stock/style/material.scss +4 -4
- package/lib/components/stock-statusbar/stock-statusbar.component.d.ts +4 -4
- package/lib/components/stock-statusbar/stock-statusbar.module.d.ts +2 -2
- package/lib/components/stock-statusbar/style/_layout.scss +24 -24
- package/lib/components/stock-statusbar/style/material.scss +4 -4
- package/lib/components/tab-bar/style/_layout.scss +78 -78
- package/lib/components/tab-bar/style/_material-definition.scss +6 -6
- package/lib/components/tab-bar/style/material.scss +4 -4
- package/lib/components/tab-bar/tab-bar.component.d.ts +21 -21
- package/lib/components/tab-bar/tab-bar.module.d.ts +2 -2
- package/lib/components/tab-bar/tab.interface.d.ts +5 -5
- package/lib/components/tags/component/style/_layout.scss +67 -67
- package/lib/components/tags/component/style/_material-definition.scss +1 -1
- package/lib/components/tags/component/style/_theme.scss +8 -8
- package/lib/components/tags/component/style/material.scss +3 -3
- package/lib/components/tags/component/tag-join-label/style/_layout.scss +97 -97
- package/lib/components/tags/component/tag-join-label/style/_material-definition.scss +4 -4
- package/lib/components/tags/component/tag-join-label/style/_theme.scss +8 -8
- package/lib/components/tags/component/tag-join-label/style/material.scss +3 -3
- package/lib/components/tile-renderer/style/_layout.scss +90 -90
- package/lib/components/tile-renderer/style/_theme.scss +4 -4
- package/lib/components/tile-renderer/style/material.scss +4 -4
- package/lib/components/tile-renderer/tile-render.component.d.ts +31 -31
- package/lib/components/tile-renderer/tile-render.module.d.ts +2 -2
- package/lib/decorator/input-boolean.decorator.d.ts +8 -8
- package/lib/enum/calendar-view.enum.d.ts +7 -7
- package/lib/enum/document-email-report.enum.d.ts +15 -15
- package/lib/enum/domain-multiple-name.enum.d.ts +10 -10
- package/lib/enum/file-type.d.ts +7 -7
- package/lib/enum/files-upload-config-objects.d.ts +22 -22
- package/lib/enum/gauge-color.enum.d.ts +8 -8
- package/lib/enum/icon.enum.d.ts +46 -42
- package/lib/enum/internal-param.enum.d.ts +34 -34
- package/lib/enum/keyboard-code.enum.d.ts +30 -30
- package/lib/enum/language-code.enum.d.ts +6 -6
- package/lib/enum/month.enum.d.ts +14 -14
- package/lib/enum/read-write-access-config-names.enum.d.ts +4 -4
- package/lib/enum/table-name.enum.d.ts +84 -84
- package/lib/enum/tag-category.enum.d.ts +19 -19
- package/lib/enum/tags-component-config-names.d.ts +4 -4
- package/lib/enum/thumb-three-way-state.d.ts +6 -6
- package/lib/enum/tile-size-type.d.ts +4 -4
- package/lib/enum/time-period.enum.d.ts +8 -8
- package/lib/event/co-drag-event.d.ts +5 -5
- package/lib/event/co-drop-event.d.ts +8 -8
- package/lib/interface/key-value-pair.d.ts +4 -4
- package/lib/interface/operation-callback-simple-function.d.ts +4 -4
- package/lib/localization/localization.module.d.ts +2 -2
- package/lib/localization/localize.pipe.d.ts +7 -7
- package/lib/localization/localize.service.d.ts +7 -7
- package/lib/localization/translation.d.ts +2 -2
- package/lib/model/agenda-event-per-day.model.d.ts +5 -5
- package/lib/model/agenda-event.model.d.ts +17 -17
- package/lib/model/agenda-null-objects.d.ts +10 -10
- package/lib/model/constant/all-months.d.ts +2 -2
- package/lib/model/date-range.d.ts +7 -7
- package/lib/model/day.model.d.ts +8 -8
- package/lib/model/icon-svg.d.ts +4 -4
- package/lib/model/month.model.d.ts +5 -5
- package/lib/model/send-method.d.ts +7 -7
- package/lib/model/settings.d.ts +3 -3
- package/lib/model/tag-tree-item.bo.d.ts +18 -18
- package/lib/model/time-window.bo.d.ts +13 -13
- package/lib/model/tree-object.d.ts +8 -8
- package/lib/model/week.model.d.ts +4 -4
- package/lib/model/weekday.model.d.ts +16 -16
- package/lib/pipe/array-number.pipe.d.ts +4 -4
- package/lib/pipe/file-type-image.pipe.d.ts +12 -12
- package/lib/pipe/master-pipes.d.ts +1 -1
- package/lib/pipe/ucfirst.pipe.d.ts +4 -4
- package/lib/service/dictionary.service.d.ts +21 -21
- package/lib/service/drag-drop.service.d.ts +86 -86
- package/lib/service/icon-cache.service.d.ts +18 -18
- package/lib/service/options.service.d.ts +13 -13
- package/lib/service/shared-connector.service.d.ts +55 -55
- package/lib/service/shared.service.d.ts +18 -18
- package/lib/service/stock.service.d.ts +41 -41
- package/lib/style/_mixin.scss +14 -14
- package/lib/style/_variables.scss +21 -21
- package/lib/style/sharedcomponents-globals.scss +10 -10
- package/lib/utils/array-utils.d.ts +63 -63
- package/lib/utils/calendar.utils.d.ts +10 -10
- package/lib/utils/check-precision-and-scale-result.d.ts +4 -4
- package/lib/utils/check-within-stepped-bounds-result.d.ts +8 -8
- package/lib/utils/co-document-shared-field-logic.d.ts +7 -7
- package/lib/utils/date-utils.d.ts +44 -44
- package/lib/utils/enum-utils.d.ts +31 -31
- package/lib/utils/function/not-nill.function.d.ts +1 -1
- package/lib/utils/is-nill.function.d.ts +1 -1
- package/lib/utils/map-utils.d.ts +16 -16
- package/lib/utils/number-utils.d.ts +125 -125
- package/lib/utils/object-utils.d.ts +40 -40
- package/lib/utils/ref-code-utils.d.ts +10 -10
- package/lib/utils/string-utils.d.ts +38 -38
- package/main.b63cf8c6791cb3e37f3c.js +1 -0
- package/package.json +1 -1
- package/polyfills.907fe9d1887c5de17993.js +1 -0
- package/public-api.d.ts +27 -27
- package/runtime.8aac21847ed3d3829cca.js +1 -0
- package/styles.6807e7b997183dacbe3b.css +1 -0
|
@@ -1,258 +1,258 @@
|
|
|
1
|
-
import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
-
import { Icon } from '../../enum/icon.enum';
|
|
3
|
-
import { IconCacheService } from '../../service/icon-cache.service';
|
|
4
|
-
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
5
|
-
import { SharedService } from '../../service/shared.service';
|
|
6
|
-
import { SendMethodService } from './service/send-method.service';
|
|
7
|
-
import { SendMethod } from '../../model/send-method';
|
|
8
|
-
import { SendMethodType } from '@colijnit/mainapi/build/enum/send-method-type.enum';
|
|
9
|
-
export const sendMethodsWithIcon = [
|
|
10
|
-
new SendMethod(SendMethodType.Fax, "Fax", Icon.PrintRegular),
|
|
11
|
-
new SendMethod(SendMethodType.Print, "Print", Icon.PrintSolid),
|
|
12
|
-
new SendMethod(SendMethodType.Email, "Email", Icon.AtSolid),
|
|
13
|
-
new SendMethod(SendMethodType.Edi, "Edi", Icon.FileExportSolid),
|
|
14
|
-
new SendMethod(SendMethodType.EmailTemplate, "Email template", Icon.EnvelopeRegular),
|
|
15
|
-
new SendMethod(SendMethodType.Sms, "Sms", Icon.MessageSmsSolid),
|
|
16
|
-
new SendMethod(SendMethodType.WebService, "Webservice", Icon.PrintRegular),
|
|
17
|
-
new SendMethod(SendMethodType.Pdf, "Pdf", Icon.Pdf)
|
|
18
|
-
];
|
|
19
|
-
export class SendMethodDialogComponent {
|
|
20
|
-
constructor(iconCacheService, _changeDetector, _sharedService, _sendMethodService) {
|
|
21
|
-
this.iconCacheService = iconCacheService;
|
|
22
|
-
this._changeDetector = _changeDetector;
|
|
23
|
-
this._sharedService = _sharedService;
|
|
24
|
-
this._sendMethodService = _sendMethodService;
|
|
25
|
-
this.icons = Icon;
|
|
26
|
-
this.printerList = [];
|
|
27
|
-
this.emailLayouts = [];
|
|
28
|
-
this.printLayouts = [];
|
|
29
|
-
this.emailAddresses = [];
|
|
30
|
-
this.visibleMethods = [];
|
|
31
|
-
this.isDocSignEnabled = false;
|
|
32
|
-
this.docSign = false;
|
|
33
|
-
this.isPrinterLayoutsEnabled = true;
|
|
34
|
-
this.reportingDocumentPrintRequestChange = new EventEmitter();
|
|
35
|
-
this.reportingDocumentEmailRequestChange = new EventEmitter();
|
|
36
|
-
this.reportingDocumentPdfRequestChange = new EventEmitter();
|
|
37
|
-
this.startSignatureClicked = new EventEmitter();
|
|
38
|
-
this.closeClick = new EventEmitter();
|
|
39
|
-
this.okClick = new EventEmitter();
|
|
40
|
-
this.sendMethods = sendMethodsWithIcon;
|
|
41
|
-
this.upAndLoaded = false;
|
|
42
|
-
this.startUp = true;
|
|
43
|
-
this.showFax = true;
|
|
44
|
-
this.showPrint = true;
|
|
45
|
-
this.showEmail = true;
|
|
46
|
-
this.showEdi = true;
|
|
47
|
-
this.showSms = true;
|
|
48
|
-
this.showEmailTemplate = true;
|
|
49
|
-
this.showWebservice = true;
|
|
50
|
-
this.showPdf = true;
|
|
51
|
-
this._subscriptions = [];
|
|
52
|
-
this._subscriptions.push(this._sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.subscribe((value) => this.reportingDocumentPrintRequestChange.next(value)), this._sendMethodService.reportingDocumentEmailSignDocBaseRequestChanged.subscribe((value) => this.reportingDocumentEmailRequestChange.next(value)), this._sendMethodService.reportingDocumentPdfBaseRequestChanged.subscribe((value) => this.reportingDocumentPdfRequestChange.next(value)));
|
|
53
|
-
}
|
|
54
|
-
showClass() {
|
|
55
|
-
return true;
|
|
56
|
-
}
|
|
57
|
-
ngOnInit() {
|
|
58
|
-
if (this.reportingDocumentEmailRequest) {
|
|
59
|
-
this._sendMethodService.reportingDocumentEmailSignDocBaseRequest = this.reportingDocumentEmailRequest;
|
|
60
|
-
}
|
|
61
|
-
if (this.reportingDocumentPrintRequest) {
|
|
62
|
-
this._sendMethodService.reportingDocumentPrintSignDocBaseRequest = this.reportingDocumentPrintRequest;
|
|
63
|
-
}
|
|
64
|
-
if (this.reportingDocumentPdfRequest) {
|
|
65
|
-
this._sendMethodService.reportingDocumentPdfBaseRequest = this.reportingDocumentPdfRequest;
|
|
66
|
-
}
|
|
67
|
-
this._initDefaultSendMethod();
|
|
68
|
-
this._prepareVisibleMethods();
|
|
69
|
-
}
|
|
70
|
-
ngOnDestroy() {
|
|
71
|
-
this._subscriptions.forEach(subscription => subscription.unsubscribe());
|
|
72
|
-
}
|
|
73
|
-
handleSignatureStart() {
|
|
74
|
-
this.docSign = !this.docSign;
|
|
75
|
-
this.startSignatureClicked.emit();
|
|
76
|
-
}
|
|
77
|
-
handleSendMethodClick(sendMethod) {
|
|
78
|
-
this.activeSendMethod = sendMethod;
|
|
79
|
-
if (sendMethod.code === SendMethodType.Fax && this.showFax) {
|
|
80
|
-
this.navigationItems.nativeElement.scrollLeft = this.faxItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
81
|
-
}
|
|
82
|
-
else if (sendMethod.code === SendMethodType.Print && this.showPrint) {
|
|
83
|
-
this.navigationItems.nativeElement.scrollLeft = this.printItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
84
|
-
}
|
|
85
|
-
else if (sendMethod.code === SendMethodType.Email && this.showEmail) {
|
|
86
|
-
this.navigationItems.nativeElement.scrollLeft = this.emailItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
87
|
-
}
|
|
88
|
-
else if (sendMethod.code === SendMethodType.Edi && this.showEdi) {
|
|
89
|
-
this.navigationItems.nativeElement.scrollLeft = this.ediItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
90
|
-
}
|
|
91
|
-
else if (sendMethod.code === SendMethodType.EmailTemplate && this.showEmailTemplate) {
|
|
92
|
-
this.navigationItems.nativeElement.scrollLeft = this.emailTemplateItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
93
|
-
}
|
|
94
|
-
else if (sendMethod.code === SendMethodType.Sms && this.showSms) {
|
|
95
|
-
this.navigationItems.nativeElement.scrollLeft = this.smsItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
96
|
-
}
|
|
97
|
-
else if (sendMethod.code === SendMethodType.WebService && this.showWebservice) {
|
|
98
|
-
this.navigationItems.nativeElement.scrollLeft = this.webServiceItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
99
|
-
}
|
|
100
|
-
else if (sendMethod.code === SendMethodType.Pdf && this.showPdf) {
|
|
101
|
-
this.navigationItems.nativeElement.scrollLeft = this.pdfItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
_initDefaultSendMethod() {
|
|
105
|
-
if (this.defaultSendMethod) {
|
|
106
|
-
this._selectDefaultSendMethod();
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
if (this.visibleMethods && this.visibleMethods.length === 1) {
|
|
110
|
-
this.defaultSendMethod = this.visibleMethods[0];
|
|
111
|
-
this._selectDefaultSendMethod();
|
|
112
|
-
}
|
|
113
|
-
this.startUp = false;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
_selectDefaultSendMethod() {
|
|
117
|
-
const sendMethod = this.sendMethods.find(sm => sm.code === this.defaultSendMethod);
|
|
118
|
-
if (sendMethod) {
|
|
119
|
-
setTimeout(() => {
|
|
120
|
-
this.handleSendMethodClick(sendMethod);
|
|
121
|
-
this.startUp = false;
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
_prepareVisibleMethods() {
|
|
126
|
-
if (this.visibleMethods && this.visibleMethods.length > 0) {
|
|
127
|
-
this.sendMethods = this.sendMethods.filter(sm => this.visibleMethods.find(vm => vm === sm.code));
|
|
128
|
-
}
|
|
129
|
-
this.showFax = this.sendMethods.find(sm => sm.code === SendMethodType.Fax) !== undefined;
|
|
130
|
-
this.showPrint = this.sendMethods.find(sm => sm.code === SendMethodType.Print) !== undefined;
|
|
131
|
-
this.showEmail = this.sendMethods.find(sm => sm.code === SendMethodType.Email) !== undefined;
|
|
132
|
-
this.showEdi = this.sendMethods.find(sm => sm.code === SendMethodType.Edi) !== undefined;
|
|
133
|
-
this.showEmailTemplate = this.sendMethods.find(sm => sm.code === SendMethodType.EmailTemplate) !== undefined;
|
|
134
|
-
this.showSms = this.sendMethods.find(sm => sm.code === SendMethodType.Sms) !== undefined;
|
|
135
|
-
this.showWebservice = this.sendMethods.find(sm => sm.code === SendMethodType.WebService) !== undefined;
|
|
136
|
-
this.showPdf = this.sendMethods.find(sm => sm.code === SendMethodType.Pdf) !== undefined;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
SendMethodDialogComponent.decorators = [
|
|
140
|
-
{ type: Component, args: [{
|
|
141
|
-
selector: 'co-send-method-dialog',
|
|
142
|
-
template: `
|
|
143
|
-
<co-dialog id="sendOptionsDialog" [headerTemplate]="headerTemplate" [footerTemplate]="footerTemplate"
|
|
144
|
-
(closeClick)="closeClick.emit($event)">
|
|
145
|
-
<ng-template #headerTemplate>
|
|
146
|
-
<div class="co-dialog-header-title-wrapper">
|
|
147
|
-
<co-icon [iconData]="iconCacheService.getIcon(icons.EnvelopeRegular)"></co-icon>
|
|
148
|
-
<div class="co-dialog-header-title" [textContent]="headerTitle"></div>
|
|
149
|
-
</div>
|
|
150
|
-
<div class="dialog-navigation-wrapper">
|
|
151
|
-
<div class="send-button-wrapper" *ngFor="let sendMethod of sendMethods; let index = index"
|
|
152
|
-
[class.selected]="activeSendMethod ? sendMethod.code === activeSendMethod.code : index === 0"
|
|
153
|
-
(click)="handleSendMethodClick(sendMethod)">
|
|
154
|
-
<div class="custom-button-title" [textContent]="sendMethod.description"></div>
|
|
155
|
-
</div>
|
|
156
|
-
</div>
|
|
157
|
-
</ng-template>
|
|
158
|
-
|
|
159
|
-
<div class="dialog-content-wrapper">
|
|
160
|
-
<div class="send-methods-wrapper">
|
|
161
|
-
|
|
162
|
-
</div>
|
|
163
|
-
<div #navigationItems class="send-method-navigation-wrapper" [class.smooth-scrolling]="!startUp">
|
|
164
|
-
<div #faxItems class="send-method-navigation-content co-small-scrollbar">
|
|
165
|
-
|
|
166
|
-
</div>
|
|
167
|
-
<div #printItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showPrint">
|
|
168
|
-
<co-send-method-printer
|
|
169
|
-
[isPrinterLayoutsEnabled]="isPrinterLayoutsEnabled"
|
|
170
|
-
[printerList]="printerList"
|
|
171
|
-
[layouts]="printLayouts"
|
|
172
|
-
></co-send-method-printer>
|
|
173
|
-
</div>
|
|
174
|
-
<div #emailItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showEmail">
|
|
175
|
-
<co-send-method-email
|
|
176
|
-
[emailAddresses]="emailAddresses"
|
|
177
|
-
[layouts]="emailLayouts"
|
|
178
|
-
></co-send-method-email>
|
|
179
|
-
</div>
|
|
180
|
-
<div #ediItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showEdi">
|
|
181
|
-
|
|
182
|
-
</div>
|
|
183
|
-
<div #emailTemplateItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showEmailTemplate">
|
|
184
|
-
|
|
185
|
-
</div>
|
|
186
|
-
<div #smsItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showSms">
|
|
187
|
-
|
|
188
|
-
</div>
|
|
189
|
-
<div #webServiceItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showWebservice">
|
|
190
|
-
|
|
191
|
-
</div>
|
|
192
|
-
<div #pdfItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showPdf">
|
|
193
|
-
<co-send-method-pdf
|
|
194
|
-
[layouts]="printLayouts"
|
|
195
|
-
></co-send-method-pdf>
|
|
196
|
-
</div>
|
|
197
|
-
</div>
|
|
198
|
-
</div>
|
|
199
|
-
<ng-template #footerTemplate>
|
|
200
|
-
<div class="co-dialog-footer-button-wrapper">
|
|
201
|
-
<co-button class="save-button"
|
|
202
|
-
[iconData]="iconCacheService.getIcon(icons.CheckDuotone)"
|
|
203
|
-
(click)="okClick.emit(activeSendMethod ? activeSendMethod.code : '0')"></co-button>
|
|
204
|
-
<co-button class="close-button"
|
|
205
|
-
[iconData]="iconCacheService.getIcon(icons.CrossSkinny)"
|
|
206
|
-
(click)="closeClick.emit($event)"></co-button>
|
|
207
|
-
</div>
|
|
208
|
-
</ng-template>
|
|
209
|
-
</co-dialog>
|
|
210
|
-
`,
|
|
211
|
-
encapsulation: ViewEncapsulation.None,
|
|
212
|
-
animations: [
|
|
213
|
-
trigger('slideInOut', [
|
|
214
|
-
state('*', style({ transform: 'translateX(0%)', width: '100%', opacity: '1' })),
|
|
215
|
-
state('void', style({ transform: 'translateX(150%)', opacity: '0' })),
|
|
216
|
-
transition('void => *', animate(250))
|
|
217
|
-
])
|
|
218
|
-
]
|
|
219
|
-
},] }
|
|
220
|
-
];
|
|
221
|
-
SendMethodDialogComponent.ctorParameters = () => [
|
|
222
|
-
{ type: IconCacheService },
|
|
223
|
-
{ type: ChangeDetectorRef },
|
|
224
|
-
{ type: SharedService },
|
|
225
|
-
{ type: SendMethodService }
|
|
226
|
-
];
|
|
227
|
-
SendMethodDialogComponent.propDecorators = {
|
|
228
|
-
navigationItems: [{ type: ViewChild, args: ['navigationItems', { read: ElementRef },] }],
|
|
229
|
-
faxItems: [{ type: ViewChild, args: ['faxItems', { read: ElementRef },] }],
|
|
230
|
-
printItems: [{ type: ViewChild, args: ['printItems', { read: ElementRef },] }],
|
|
231
|
-
emailItems: [{ type: ViewChild, args: ['emailItems', { read: ElementRef },] }],
|
|
232
|
-
ediItems: [{ type: ViewChild, args: ['ediItems', { read: ElementRef },] }],
|
|
233
|
-
emailTemplateItems: [{ type: ViewChild, args: ['emailTemplateItems', { read: ElementRef },] }],
|
|
234
|
-
smsItems: [{ type: ViewChild, args: ['smsItems', { read: ElementRef },] }],
|
|
235
|
-
webServiceItems: [{ type: ViewChild, args: ['webServiceItems', { read: ElementRef },] }],
|
|
236
|
-
pdfItems: [{ type: ViewChild, args: ['pdfItems', { read: ElementRef },] }],
|
|
237
|
-
printerList: [{ type: Input }],
|
|
238
|
-
reportingDocumentPrintRequest: [{ type: Input }],
|
|
239
|
-
reportingDocumentEmailRequest: [{ type: Input }],
|
|
240
|
-
reportingDocumentPdfRequest: [{ type: Input }],
|
|
241
|
-
emailLayouts: [{ type: Input }],
|
|
242
|
-
printLayouts: [{ type: Input }],
|
|
243
|
-
headerTitle: [{ type: Input }],
|
|
244
|
-
emailAddresses: [{ type: Input }],
|
|
245
|
-
defaultSendMethod: [{ type: Input }],
|
|
246
|
-
visibleMethods: [{ type: Input }],
|
|
247
|
-
isDocSignEnabled: [{ type: Input }],
|
|
248
|
-
docSign: [{ type: Input }],
|
|
249
|
-
isPrinterLayoutsEnabled: [{ type: Input }],
|
|
250
|
-
reportingDocumentPrintRequestChange: [{ type: Output }],
|
|
251
|
-
reportingDocumentEmailRequestChange: [{ type: Output }],
|
|
252
|
-
reportingDocumentPdfRequestChange: [{ type: Output }],
|
|
253
|
-
startSignatureClicked: [{ type: Output }],
|
|
254
|
-
closeClick: [{ type: Output }],
|
|
255
|
-
okClick: [{ type: Output }],
|
|
256
|
-
showClass: [{ type: HostBinding, args: ['class.co-send-method-dialog',] }]
|
|
257
|
-
};
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZGNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NlbmQtbWV0aG9kLWRpYWxvZy9zZW5kLW1ldGhvZC1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUvRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFJM0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQVNsRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBaUI7SUFDL0MsSUFBSSxVQUFVLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM1RCxJQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzlELElBQUksVUFBVSxDQUFDLGNBQWMsQ0FBQyxL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Z0NBR0wsS0FBSzs2QkFHTCxLQUFLOytCQUdMLEtBQUs7c0JBR0wsS0FBSztzQ0FHTCxLQUFLO2tEQUdMLE1BQU07a0RBR04sTUFBTTtnREFHTixNQUFNO29DQUdOLE1BQU07eUJBR04sTUFBTTtzQkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vZW51bS9pY29uLmVudW0nO1xuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2ljb24tY2FjaGUuc2VydmljZSc7XG5pbXBvcnQge2FuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1NoYXJlZFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2Uvc2hhcmVkLnNlcnZpY2UnO1xuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tcHJpbnQuYm8nO1xuaW1wb3J0IHtSZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnRpbmctZG9jdW1lbnQtcGRmLWJhc2UtcmVxdWVzdCc7XG5pbXBvcnQge1NlbmRNZXRob2RTZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2Uvc2VuZC1tZXRob2Quc2VydmljZSc7XG5pbXBvcnQge1NlbmRNZXRob2R9IGZyb20gJy4uLy4uL21vZGVsL3NlbmQtbWV0aG9kJztcbmltcG9ydCB7U2VuZE1ldGhvZFR5cGV9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL2VudW0vc2VuZC1tZXRob2QtdHlwZS5lbnVtJztcbmltcG9ydCB7UHJpbnRlcn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcHJpbnRlci5ibyc7XG5pbXBvcnQge1xuICBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0XG59IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydGluZy1kb2N1bWVudC1lbWFpbC1zaWduLWRvYy1iYXNlLXJlcXVlc3QnO1xuaW1wb3J0IHtcbiAgUmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdFxufSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LXByaW50LXNpZ24tZG9jLWJhc2UtcmVxdWVzdFwiO1xuXG5leHBvcnQgY29uc3Qgc2VuZE1ldGhvZHNXaXRoSWNvbjogU2VuZE1ldGhvZFtdID0gW1xuICBuZXcgU2VuZE1ldGhvZChTZW5kTWV0aG9kVHlwZS5GYXgsIFwiRmF4XCIsIEljb24uUHJpbnRSZWd1bGFyKSxcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuUHJpbnQsIFwiUHJpbnRcIiwgSWNvbi5QcmludFNvbGlkKSxcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuRW1haWwsIFwiRW1haWxcIiwgSWNvbi5BdFNvbGlkKSxcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuRWRpLCBcIkVkaVwiLCBJY29uLkZpbGVFeHBvcnRTb2xpZCksXG4gIG5ldyBTZW5kTWV0aG9kKFNlbmRNZXRob2RUeXBlLkVtYWlsVGVtcGxhdGUsIFwiRW1haWwgdGVtcGxhdGVcIiwgSWNvbi5FbnZlbG9wZVJlZ3VsYXIpLFxuICBuZXcgU2VuZE1ldGhvZChTZW5kTWV0aG9kVHlwZS5TbXMsIFwiU21zXCIsIEljb24uTWVzc2FnZVNtc1NvbGlkKSxcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuV2ViU2VydmljZSwgXCJXZWJzZXJ2aWNlXCIsIEljb24uUHJpbnRSZWd1bGFyKSxcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuUGRmLCBcIlBkZlwiLCBJY29uLlBkZilcbl1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY28tc2VuZC1tZXRob2QtZGlhbG9nJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8Y28tZGlhbG9nIGlkPVwic2VuZE9wdGlvbnNEaWFsb2dcIiBbaGVhZGVyVGVtcGxhdGVdPVwiaGVhZGVyVGVtcGxhdGVcIiBbZm9vdGVyVGVtcGxhdGVdPVwiZm9vdGVyVGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgKGNsb3NlQ2xpY2spPVwiY2xvc2VDbGljay5lbWl0KCRldmVudClcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctaGVhZGVyLXRpdGxlLXdyYXBwZXJcIj5cbiAgICAgICAgICA8Y28taWNvbiBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkVudmVsb3BlUmVndWxhcilcIj48L2NvLWljb24+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiaGVhZGVyVGl0bGVcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctbmF2aWdhdGlvbi13cmFwcGVyXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNlbmQtYnV0dG9uLXdyYXBwZXJcIiAqbmdGb3I9XCJsZXQgc2VuZE1ldGhvZCBvZiBzZW5kTWV0aG9kczsgbGV0IGluZGV4ID0gaW5kZXhcIlxuICAgICAgICAgICAgICAgW2NsYXNzLnNlbGVjdGVkXT1cImFjdGl2ZVNlbmRNZXRob2QgPyBzZW5kTWV0aG9kLmNvZGUgPT09IGFjdGl2ZVNlbmRNZXRob2QuY29kZSA6IGluZGV4ID09PSAwXCJcbiAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTZW5kTWV0aG9kQ2xpY2soc2VuZE1ldGhvZClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b20tYnV0dG9uLXRpdGxlXCIgW3RleHRDb250ZW50XT1cInNlbmRNZXRob2QuZGVzY3JpcHRpb25cIj48L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nLWNvbnRlbnQtd3JhcHBlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VuZC1tZXRob2RzLXdyYXBwZXJcIj5cblxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiAjbmF2aWdhdGlvbkl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi13cmFwcGVyXCIgW2NsYXNzLnNtb290aC1zY3JvbGxpbmddPVwiIXN0YXJ0VXBcIj5cbiAgICAgICAgICA8ZGl2ICNmYXhJdGVtcyBjbGFzcz1cInNlbmQtbWV0aG9kLW5hdmlnYXRpb24tY29udGVudCBjby1zbWFsbC1zY3JvbGxiYXJcIj5cblxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgI3ByaW50SXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93UHJpbnRcIj5cbiAgICAgICAgICAgIDxjby1zZW5kLW1ldGhvZC1wcmludGVyXG4gICAgICAgICAgICAgIFtpc1ByaW50ZXJMYXlvdXRzRW5hYmxlZF09XCJpc1ByaW50ZXJMYXlvdXRzRW5hYmxlZFwiXG4gICAgICAgICAgICAgIFtwcmludGVyTGlzdF09XCJwcmludGVyTGlzdFwiXG4gICAgICAgICAgICAgIFtsYXlvdXRzXT1cInByaW50TGF5b3V0c1wiXG4gICAgICAgICAgICA+PC9jby1zZW5kLW1ldGhvZC1wcmludGVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgI2VtYWlsSXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93RW1haWxcIj5cbiAgICAgICAgICAgIDxjby1zZW5kLW1ldGhvZC1lbWFpbFxuICAgICAgICAgICAgICBbZW1haWxBZGRyZXNzZXNdPVwiZW1haWxBZGRyZXNzZXNcIlxuICAgICAgICAgICAgICBbbGF5b3V0c109XCJlbWFpbExheW91dHNcIlxuICAgICAgICAgICAgPjwvY28tc2VuZC1tZXRob2QtZW1haWw+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAjZWRpSXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93RWRpXCI+XG5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2ICNlbWFpbFRlbXBsYXRlSXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93RW1haWxUZW1wbGF0ZVwiPlxuXG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAjc21zSXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93U21zXCI+XG5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2ICN3ZWJTZXJ2aWNlSXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93V2Vic2VydmljZVwiPlxuXG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiAjcGRmSXRlbXMgY2xhc3M9XCJzZW5kLW1ldGhvZC1uYXZpZ2F0aW9uLWNvbnRlbnQgY28tc21hbGwtc2Nyb2xsYmFyXCIgKm5nSWY9XCJzaG93UGRmXCI+XG4gICAgICAgICAgICAgIDxjby1zZW5kLW1ldGhvZC1wZGZcbiAgICAgICAgICAgICAgICAgICAgICBbbGF5b3V0c109XCJwcmludExheW91dHNcIlxuICAgICAgICAgICAgICA+PC9jby1zZW5kLW1ldGhvZC1wZGY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlclRlbXBsYXRlPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY28tZGlhbG9nLWZvb3Rlci1idXR0b24td3JhcHBlclwiPlxuICAgICAgICAgIDxjby1idXR0b24gY2xhc3M9XCJzYXZlLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9rQ2xpY2suZW1pdChhY3RpdmVTZW5kTWV0aG9kID8gYWN0aXZlU2VuZE1ldGhvZC5jb2RlIDogJzAnKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICAgIDxjby1idXR0b24gY2xhc3M9XCJjbG9zZS1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc1NraW5ueSlcIlxuICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlQ2xpY2suZW1pdCgkZXZlbnQpXCI+PC9jby1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2NvLWRpYWxvZz5cbiAgYCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgYW5pbWF0aW9uczogW1xuICAgIHRyaWdnZXIoJ3NsaWRlSW5PdXQnLCBbXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDAlKScsIHdpZHRoOiAnMTAwJScsIG9wYWNpdHk6ICcxJ30pKSxcbiAgICAgIHN0YXRlKCd2b2lkJywgc3R5bGUoe3RyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMTUwJSknLCBvcGFjaXR5OiAnMCd9KSksXG4gICAgICB0cmFuc2l0aW9uKCd2b2lkID0+IConLCBhbmltYXRlKDI1MCkpXG4gICAgXSlcbiAgXVxufSlcblxuZXhwb3J0IGNsYXNzIFNlbmRNZXRob2REaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyByZWFkb25seSBpY29uczogdHlwZW9mIEljb24gPSBJY29uO1xuXG4gIEBWaWV3Q2hpbGQoJ25hdmlnYXRpb25JdGVtcycsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgcHVibGljIG5hdmlnYXRpb25JdGVtczogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCdmYXhJdGVtcycsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgcHVibGljIGZheEl0ZW1zOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ3ByaW50SXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gIHB1YmxpYyBwcmludEl0ZW1zOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ2VtYWlsSXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gIHB1YmxpYyBlbWFpbEl0ZW1zOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ2VkaUl0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICBwdWJsaWMgZWRpSXRlbXM6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZCgnZW1haWxUZW1wbGF0ZUl0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICBwdWJsaWMgZW1haWxUZW1wbGF0ZUl0ZW1zOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ3Ntc0l0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICBwdWJsaWMgc21zSXRlbXM6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZCgnd2ViU2VydmljZUl0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICBwdWJsaWMgd2ViU2VydmljZUl0ZW1zOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ3BkZkl0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICBwdWJsaWMgcGRmSXRlbXM6IEVsZW1lbnRSZWY7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHByaW50ZXJMaXN0OiBQcmludGVyW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVwb3J0aW5nRG9jdW1lbnRQcmludFJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlcG9ydGluZ0RvY3VtZW50RW1haWxSZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0O1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyByZXBvcnRpbmdEb2N1bWVudFBkZlJlcXVlc3Q6IFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3Q7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGVtYWlsTGF5b3V0czogUmVwb3J0TGF5b3V0U2VsZWN0aW9uRW1haWxbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwcmludExheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50W10gPSBbXTtcblxuICAvLyBASW5wdXQoKVxuICAvLyBwdWJsaWMgcHJpY2VMaXN0Q29kZURhdGE6IGFueTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaGVhZGVyVGl0bGU6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgZW1haWxBZGRyZXNzZXM6IHN0cmluZ1tdID0gW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIGRlZmF1bHRTZW5kTWV0aG9kOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHZpc2libGVNZXRob2RzOiBTZW5kTWV0aG9kVHlwZVtdIHwgc3RyaW5nW10gPSBbXTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaXNEb2NTaWduRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkb2NTaWduOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlzUHJpbnRlckxheW91dHNFbmFibGVkOiBib29sZWFuID0gdHJ1ZTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlcG9ydGluZ0RvY3VtZW50UHJpbnRSZXF1ZXN0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8UmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdENoYW5nZTogRXZlbnRFbWl0dGVyPFJlcG9ydGluZ0RvY3VtZW50RW1haWxTaWduRG9jQmFzZVJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgcmVwb3J0aW5nRG9jdW1lbnRQZGZSZXF1ZXN0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8UmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdD4gPSBuZXcgRXZlbnRFbWl0dGVyPFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3Q+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzdGFydFNpZ25hdHVyZUNsaWNrZWQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBjbG9zZUNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBva0NsaWNrOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuY28tc2VuZC1tZXRob2QtZGlhbG9nJylcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZW5kTWV0aG9kcyA9IHNlbmRNZXRob2RzV2l0aEljb247XG4gIHB1YmxpYyBhY3RpdmVTZW5kTWV0aG9kOiBTZW5kTWV0aG9kO1xuICBwdWJsaWMgdXBBbmRMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHN0YXJ0VXA6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHB1YmxpYyBzaG93RmF4OiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIHNob3dQcmludDogYm9vbGVhbiA9IHRydWU7XG4gIHB1YmxpYyBzaG93RW1haWw6IGJvb2xlYW4gPSB0cnVlO1xuICBwdWJsaWMgc2hvd0VkaTogYm9vbGVhbiA9IHRydWU7XG4gIHB1YmxpYyBzaG93U21zOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIHNob3dFbWFpbFRlbXBsYXRlOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIHNob3dXZWJzZXJ2aWNlOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIHNob3dQZGY6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIHByaXZhdGUgX3N1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX3NoYXJlZFNlcnZpY2U6IFNoYXJlZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfc2VuZE1ldGhvZFNlcnZpY2U6IFNlbmRNZXRob2RTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMuX3NlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RDaGFuZ2VkLnN1YnNjcmliZSgodmFsdWU6IFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QpID0+IHRoaXMucmVwb3J0aW5nRG9jdW1lbnRQcmludFJlcXVlc3RDaGFuZ2UubmV4dCh2YWx1ZSkpLFxuICAgICAgdGhpcy5fc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdENoYW5nZWQuc3Vic2NyaWJlKCh2YWx1ZTogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdCkgPT4gdGhpcy5yZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdENoYW5nZS5uZXh0KHZhbHVlKSksXG4gICAgICB0aGlzLl9zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0Q2hhbmdlZC5zdWJzY3JpYmUoKHZhbHVlOiBSZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0KSA9PiB0aGlzLnJlcG9ydGluZ0RvY3VtZW50UGRmUmVxdWVzdENoYW5nZS5uZXh0KHZhbHVlKSlcbiAgICApXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy5yZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdCkge1xuICAgICAgdGhpcy5fc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdCA9IHRoaXMucmVwb3J0aW5nRG9jdW1lbnRFbWFpbFJlcXVlc3Q7XG4gICAgfVxuICAgIGlmICh0aGlzLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRSZXF1ZXN0KSB7XG4gICAgICB0aGlzLl9zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0ID0gdGhpcy5yZXBvcnRpbmdEb2N1bWVudFByaW50UmVxdWVzdDtcbiAgICB9XG4gICAgaWYgKHRoaXMucmVwb3J0aW5nRG9jdW1lbnRQZGZSZXF1ZXN0KSB7XG4gICAgICB0aGlzLl9zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0ID0gdGhpcy5yZXBvcnRpbmdEb2N1bWVudFBkZlJlcXVlc3Q7XG4gICAgfVxuICAgIHRoaXMuX2luaXREZWZhdWx0U2VuZE1ldGhvZCgpO1xuICAgIHRoaXMuX3ByZXBhcmVWaXNpYmxlTWV0aG9kcygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YnNjcmlwdGlvbiA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlU2lnbmF0dXJlU3RhcnQoKTogdm9pZCB7XG4gICAgdGhpcy5kb2NTaWduID0gIXRoaXMuZG9jU2lnbjtcbiAgICB0aGlzLnN0YXJ0U2lnbmF0dXJlQ2xpY2tlZC5lbWl0KCk7XG4gIH1cblxuICBwdWJsaWMgaGFuZGxlU2VuZE1ldGhvZENsaWNrKHNlbmRNZXRob2Q6IFNlbmRNZXRob2QpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZVNlbmRNZXRob2QgPSBzZW5kTWV0aG9kO1xuICAgIGlmIChzZW5kTWV0aG9kLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLkZheCAmJiB0aGlzLnNob3dGYXgpIHtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuZmF4SXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xuICAgIH0gZWxzZSBpZiAoc2VuZE1ldGhvZC5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5QcmludCAmJiB0aGlzLnNob3dQcmludCkge1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5wcmludEl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcbiAgICB9IGVsc2UgaWYgKHNlbmRNZXRob2QuY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuRW1haWwgJiYgdGhpcy5zaG93RW1haWwpIHtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuZW1haWxJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XG4gICAgfSBlbHNlIGlmIChzZW5kTWV0aG9kLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLkVkaSAmJiB0aGlzLnNob3dFZGkpIHtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuZWRpSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xuICAgIH0gZWxzZSBpZiAoc2VuZE1ldGhvZC5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5FbWFpbFRlbXBsYXRlICYmIHRoaXMuc2hvd0VtYWlsVGVtcGxhdGUpIHtcbiAgICAgIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuZW1haWxUZW1wbGF0ZUl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcbiAgICB9IGVsc2UgaWYgKHNlbmRNZXRob2QuY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuU21zICYmIHRoaXMuc2hvd1Ntcykge1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5zbXNJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XG4gICAgfSBlbHNlIGlmIChzZW5kTWV0aG9kLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLldlYlNlcnZpY2UgJiYgdGhpcy5zaG93V2Vic2VydmljZSkge1xuICAgICAgdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy53ZWJTZXJ2aWNlSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xuICAgIH0gZWxzZSBpZiAoc2VuZE1ldGhvZC5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5QZGYgJiYgdGhpcy5zaG93UGRmKSB7XG4gICAgICB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLnBkZkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9pbml0RGVmYXVsdFNlbmRNZXRob2QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGVmYXVsdFNlbmRNZXRob2QpIHtcbiAgICAgIHRoaXMuX3NlbGVjdERlZmF1bHRTZW5kTWV0aG9kKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLnZpc2libGVNZXRob2RzICYmIHRoaXMudmlzaWJsZU1ldGhvZHMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHRoaXMuZGVmYXVsdFNlbmRNZXRob2QgPSB0aGlzLnZpc2libGVNZXRob2RzWzBdO1xuICAgICAgICB0aGlzLl9zZWxlY3REZWZhdWx0U2VuZE1ldGhvZCgpO1xuICAgICAgfVxuICAgICAgdGhpcy5zdGFydFVwID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfc2VsZWN0RGVmYXVsdFNlbmRNZXRob2QoKTogdm9pZCB7XG4gICAgY29uc3Qgc2VuZE1ldGhvZDogU2VuZE1ldGhvZCA9IHRoaXMuc2VuZE1ldGhvZHMuZmluZChzbSA9PiBzbS5jb2RlID09PSB0aGlzLmRlZmF1bHRTZW5kTWV0aG9kKTtcbiAgICBpZiAoc2VuZE1ldGhvZCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuaGFuZGxlU2VuZE1ldGhvZENsaWNrKHNlbmRNZXRob2QpO1xuICAgICAgICB0aGlzLnN0YXJ0VXAgPSBmYWxzZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3ByZXBhcmVWaXNpYmxlTWV0aG9kcygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy52aXNpYmxlTWV0aG9kcyAmJiB0aGlzLnZpc2libGVNZXRob2RzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuc2VuZE1ldGhvZHMgPSB0aGlzLnNlbmRNZXRob2RzLmZpbHRlcihzbSA9PiB0aGlzLnZpc2libGVNZXRob2RzLmZpbmQodm0gPT4gdm0gPT09IHNtLmNvZGUpKTtcbiAgICB9XG4gICAgdGhpcy5zaG93RmF4ID0gdGhpcy5zZW5kTWV0aG9kcy5maW5kKHNtID0+IHNtLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLkZheCkgIT09IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNob3dQcmludCA9IHRoaXMuc2VuZE1ldGhvZHMuZmluZChzbSA9PiBzbS5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5QcmludCkgIT09IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNob3dFbWFpbCA9IHRoaXMuc2VuZE1ldGhvZHMuZmluZChzbSA9PiBzbS5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5FbWFpbCkgIT09IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNob3dFZGkgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuRWRpKSAhPT0gdW5kZWZpbmVkO1xuICAgIHRoaXMuc2hvd0VtYWlsVGVtcGxhdGUgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuRW1haWxUZW1wbGF0ZSkgIT09IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNob3dTbXMgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuU21zKSAhPT0gdW5kZWZpbmVkO1xuICAgIHRoaXMuc2hvd1dlYnNlcnZpY2UgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuV2ViU2VydmljZSkgIT09IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNob3dQZGYgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuUGRmKSAhPT0gdW5kZWZpbmVkO1xuXG4gIH1cbn1cbiJdfQ==
|
|
1
|
+
import { ChangeDetectorRef, Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { Icon } from '../../enum/icon.enum';
|
|
3
|
+
import { IconCacheService } from '../../service/icon-cache.service';
|
|
4
|
+
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
5
|
+
import { SharedService } from '../../service/shared.service';
|
|
6
|
+
import { SendMethodService } from './service/send-method.service';
|
|
7
|
+
import { SendMethod } from '../../model/send-method';
|
|
8
|
+
import { SendMethodType } from '@colijnit/mainapi/build/enum/send-method-type.enum';
|
|
9
|
+
export const sendMethodsWithIcon = [
|
|
10
|
+
new SendMethod(SendMethodType.Fax, "Fax", Icon.PrintRegular),
|
|
11
|
+
new SendMethod(SendMethodType.Print, "Print", Icon.PrintSolid),
|
|
12
|
+
new SendMethod(SendMethodType.Email, "Email", Icon.AtSolid),
|
|
13
|
+
new SendMethod(SendMethodType.Edi, "Edi", Icon.FileExportSolid),
|
|
14
|
+
new SendMethod(SendMethodType.EmailTemplate, "Email template", Icon.EnvelopeRegular),
|
|
15
|
+
new SendMethod(SendMethodType.Sms, "Sms", Icon.MessageSmsSolid),
|
|
16
|
+
new SendMethod(SendMethodType.WebService, "Webservice", Icon.PrintRegular),
|
|
17
|
+
new SendMethod(SendMethodType.Pdf, "Pdf", Icon.Pdf)
|
|
18
|
+
];
|
|
19
|
+
export class SendMethodDialogComponent {
|
|
20
|
+
constructor(iconCacheService, _changeDetector, _sharedService, _sendMethodService) {
|
|
21
|
+
this.iconCacheService = iconCacheService;
|
|
22
|
+
this._changeDetector = _changeDetector;
|
|
23
|
+
this._sharedService = _sharedService;
|
|
24
|
+
this._sendMethodService = _sendMethodService;
|
|
25
|
+
this.icons = Icon;
|
|
26
|
+
this.printerList = [];
|
|
27
|
+
this.emailLayouts = [];
|
|
28
|
+
this.printLayouts = [];
|
|
29
|
+
this.emailAddresses = [];
|
|
30
|
+
this.visibleMethods = [];
|
|
31
|
+
this.isDocSignEnabled = false;
|
|
32
|
+
this.docSign = false;
|
|
33
|
+
this.isPrinterLayoutsEnabled = true;
|
|
34
|
+
this.reportingDocumentPrintRequestChange = new EventEmitter();
|
|
35
|
+
this.reportingDocumentEmailRequestChange = new EventEmitter();
|
|
36
|
+
this.reportingDocumentPdfRequestChange = new EventEmitter();
|
|
37
|
+
this.startSignatureClicked = new EventEmitter();
|
|
38
|
+
this.closeClick = new EventEmitter();
|
|
39
|
+
this.okClick = new EventEmitter();
|
|
40
|
+
this.sendMethods = sendMethodsWithIcon;
|
|
41
|
+
this.upAndLoaded = false;
|
|
42
|
+
this.startUp = true;
|
|
43
|
+
this.showFax = true;
|
|
44
|
+
this.showPrint = true;
|
|
45
|
+
this.showEmail = true;
|
|
46
|
+
this.showEdi = true;
|
|
47
|
+
this.showSms = true;
|
|
48
|
+
this.showEmailTemplate = true;
|
|
49
|
+
this.showWebservice = true;
|
|
50
|
+
this.showPdf = true;
|
|
51
|
+
this._subscriptions = [];
|
|
52
|
+
this._subscriptions.push(this._sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.subscribe((value) => this.reportingDocumentPrintRequestChange.next(value)), this._sendMethodService.reportingDocumentEmailSignDocBaseRequestChanged.subscribe((value) => this.reportingDocumentEmailRequestChange.next(value)), this._sendMethodService.reportingDocumentPdfBaseRequestChanged.subscribe((value) => this.reportingDocumentPdfRequestChange.next(value)));
|
|
53
|
+
}
|
|
54
|
+
showClass() {
|
|
55
|
+
return true;
|
|
56
|
+
}
|
|
57
|
+
ngOnInit() {
|
|
58
|
+
if (this.reportingDocumentEmailRequest) {
|
|
59
|
+
this._sendMethodService.reportingDocumentEmailSignDocBaseRequest = this.reportingDocumentEmailRequest;
|
|
60
|
+
}
|
|
61
|
+
if (this.reportingDocumentPrintRequest) {
|
|
62
|
+
this._sendMethodService.reportingDocumentPrintSignDocBaseRequest = this.reportingDocumentPrintRequest;
|
|
63
|
+
}
|
|
64
|
+
if (this.reportingDocumentPdfRequest) {
|
|
65
|
+
this._sendMethodService.reportingDocumentPdfBaseRequest = this.reportingDocumentPdfRequest;
|
|
66
|
+
}
|
|
67
|
+
this._initDefaultSendMethod();
|
|
68
|
+
this._prepareVisibleMethods();
|
|
69
|
+
}
|
|
70
|
+
ngOnDestroy() {
|
|
71
|
+
this._subscriptions.forEach(subscription => subscription.unsubscribe());
|
|
72
|
+
}
|
|
73
|
+
handleSignatureStart() {
|
|
74
|
+
this.docSign = !this.docSign;
|
|
75
|
+
this.startSignatureClicked.emit();
|
|
76
|
+
}
|
|
77
|
+
handleSendMethodClick(sendMethod) {
|
|
78
|
+
this.activeSendMethod = sendMethod;
|
|
79
|
+
if (sendMethod.code === SendMethodType.Fax && this.showFax) {
|
|
80
|
+
this.navigationItems.nativeElement.scrollLeft = this.faxItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
81
|
+
}
|
|
82
|
+
else if (sendMethod.code === SendMethodType.Print && this.showPrint) {
|
|
83
|
+
this.navigationItems.nativeElement.scrollLeft = this.printItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
84
|
+
}
|
|
85
|
+
else if (sendMethod.code === SendMethodType.Email && this.showEmail) {
|
|
86
|
+
this.navigationItems.nativeElement.scrollLeft = this.emailItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
87
|
+
}
|
|
88
|
+
else if (sendMethod.code === SendMethodType.Edi && this.showEdi) {
|
|
89
|
+
this.navigationItems.nativeElement.scrollLeft = this.ediItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
90
|
+
}
|
|
91
|
+
else if (sendMethod.code === SendMethodType.EmailTemplate && this.showEmailTemplate) {
|
|
92
|
+
this.navigationItems.nativeElement.scrollLeft = this.emailTemplateItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
93
|
+
}
|
|
94
|
+
else if (sendMethod.code === SendMethodType.Sms && this.showSms) {
|
|
95
|
+
this.navigationItems.nativeElement.scrollLeft = this.smsItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
96
|
+
}
|
|
97
|
+
else if (sendMethod.code === SendMethodType.WebService && this.showWebservice) {
|
|
98
|
+
this.navigationItems.nativeElement.scrollLeft = this.webServiceItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
99
|
+
}
|
|
100
|
+
else if (sendMethod.code === SendMethodType.Pdf && this.showPdf) {
|
|
101
|
+
this.navigationItems.nativeElement.scrollLeft = this.pdfItems.nativeElement.offsetLeft - this.navigationItems.nativeElement.offsetLeft;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
_initDefaultSendMethod() {
|
|
105
|
+
if (this.defaultSendMethod) {
|
|
106
|
+
this._selectDefaultSendMethod();
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
if (this.visibleMethods && this.visibleMethods.length === 1) {
|
|
110
|
+
this.defaultSendMethod = this.visibleMethods[0];
|
|
111
|
+
this._selectDefaultSendMethod();
|
|
112
|
+
}
|
|
113
|
+
this.startUp = false;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
_selectDefaultSendMethod() {
|
|
117
|
+
const sendMethod = this.sendMethods.find(sm => sm.code === this.defaultSendMethod);
|
|
118
|
+
if (sendMethod) {
|
|
119
|
+
setTimeout(() => {
|
|
120
|
+
this.handleSendMethodClick(sendMethod);
|
|
121
|
+
this.startUp = false;
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
_prepareVisibleMethods() {
|
|
126
|
+
if (this.visibleMethods && this.visibleMethods.length > 0) {
|
|
127
|
+
this.sendMethods = this.sendMethods.filter(sm => this.visibleMethods.find(vm => vm === sm.code));
|
|
128
|
+
}
|
|
129
|
+
this.showFax = this.sendMethods.find(sm => sm.code === SendMethodType.Fax) !== undefined;
|
|
130
|
+
this.showPrint = this.sendMethods.find(sm => sm.code === SendMethodType.Print) !== undefined;
|
|
131
|
+
this.showEmail = this.sendMethods.find(sm => sm.code === SendMethodType.Email) !== undefined;
|
|
132
|
+
this.showEdi = this.sendMethods.find(sm => sm.code === SendMethodType.Edi) !== undefined;
|
|
133
|
+
this.showEmailTemplate = this.sendMethods.find(sm => sm.code === SendMethodType.EmailTemplate) !== undefined;
|
|
134
|
+
this.showSms = this.sendMethods.find(sm => sm.code === SendMethodType.Sms) !== undefined;
|
|
135
|
+
this.showWebservice = this.sendMethods.find(sm => sm.code === SendMethodType.WebService) !== undefined;
|
|
136
|
+
this.showPdf = this.sendMethods.find(sm => sm.code === SendMethodType.Pdf) !== undefined;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
SendMethodDialogComponent.decorators = [
|
|
140
|
+
{ type: Component, args: [{
|
|
141
|
+
selector: 'co-send-method-dialog',
|
|
142
|
+
template: `
|
|
143
|
+
<co-dialog id="sendOptionsDialog" [headerTemplate]="headerTemplate" [footerTemplate]="footerTemplate"
|
|
144
|
+
(closeClick)="closeClick.emit($event)">
|
|
145
|
+
<ng-template #headerTemplate>
|
|
146
|
+
<div class="co-dialog-header-title-wrapper">
|
|
147
|
+
<co-icon [iconData]="iconCacheService.getIcon(icons.EnvelopeRegular)"></co-icon>
|
|
148
|
+
<div class="co-dialog-header-title" [textContent]="headerTitle"></div>
|
|
149
|
+
</div>
|
|
150
|
+
<div class="dialog-navigation-wrapper">
|
|
151
|
+
<div class="send-button-wrapper" *ngFor="let sendMethod of sendMethods; let index = index"
|
|
152
|
+
[class.selected]="activeSendMethod ? sendMethod.code === activeSendMethod.code : index === 0"
|
|
153
|
+
(click)="handleSendMethodClick(sendMethod)">
|
|
154
|
+
<div class="custom-button-title" [textContent]="sendMethod.description"></div>
|
|
155
|
+
</div>
|
|
156
|
+
</div>
|
|
157
|
+
</ng-template>
|
|
158
|
+
|
|
159
|
+
<div class="dialog-content-wrapper">
|
|
160
|
+
<div class="send-methods-wrapper">
|
|
161
|
+
|
|
162
|
+
</div>
|
|
163
|
+
<div #navigationItems class="send-method-navigation-wrapper" [class.smooth-scrolling]="!startUp">
|
|
164
|
+
<div #faxItems class="send-method-navigation-content co-small-scrollbar">
|
|
165
|
+
|
|
166
|
+
</div>
|
|
167
|
+
<div #printItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showPrint">
|
|
168
|
+
<co-send-method-printer
|
|
169
|
+
[isPrinterLayoutsEnabled]="isPrinterLayoutsEnabled"
|
|
170
|
+
[printerList]="printerList"
|
|
171
|
+
[layouts]="printLayouts"
|
|
172
|
+
></co-send-method-printer>
|
|
173
|
+
</div>
|
|
174
|
+
<div #emailItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showEmail">
|
|
175
|
+
<co-send-method-email
|
|
176
|
+
[emailAddresses]="emailAddresses"
|
|
177
|
+
[layouts]="emailLayouts"
|
|
178
|
+
></co-send-method-email>
|
|
179
|
+
</div>
|
|
180
|
+
<div #ediItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showEdi">
|
|
181
|
+
|
|
182
|
+
</div>
|
|
183
|
+
<div #emailTemplateItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showEmailTemplate">
|
|
184
|
+
|
|
185
|
+
</div>
|
|
186
|
+
<div #smsItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showSms">
|
|
187
|
+
|
|
188
|
+
</div>
|
|
189
|
+
<div #webServiceItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showWebservice">
|
|
190
|
+
|
|
191
|
+
</div>
|
|
192
|
+
<div #pdfItems class="send-method-navigation-content co-small-scrollbar" *ngIf="showPdf">
|
|
193
|
+
<co-send-method-pdf
|
|
194
|
+
[layouts]="printLayouts"
|
|
195
|
+
></co-send-method-pdf>
|
|
196
|
+
</div>
|
|
197
|
+
</div>
|
|
198
|
+
</div>
|
|
199
|
+
<ng-template #footerTemplate>
|
|
200
|
+
<div class="co-dialog-footer-button-wrapper">
|
|
201
|
+
<co-button class="save-button"
|
|
202
|
+
[iconData]="iconCacheService.getIcon(icons.CheckDuotone)"
|
|
203
|
+
(click)="okClick.emit(activeSendMethod ? activeSendMethod.code : '0')"></co-button>
|
|
204
|
+
<co-button class="close-button"
|
|
205
|
+
[iconData]="iconCacheService.getIcon(icons.CrossSkinny)"
|
|
206
|
+
(click)="closeClick.emit($event)"></co-button>
|
|
207
|
+
</div>
|
|
208
|
+
</ng-template>
|
|
209
|
+
</co-dialog>
|
|
210
|
+
`,
|
|
211
|
+
encapsulation: ViewEncapsulation.None,
|
|
212
|
+
animations: [
|
|
213
|
+
trigger('slideInOut', [
|
|
214
|
+
state('*', style({ transform: 'translateX(0%)', width: '100%', opacity: '1' })),
|
|
215
|
+
state('void', style({ transform: 'translateX(150%)', opacity: '0' })),
|
|
216
|
+
transition('void => *', animate(250))
|
|
217
|
+
])
|
|
218
|
+
]
|
|
219
|
+
},] }
|
|
220
|
+
];
|
|
221
|
+
SendMethodDialogComponent.ctorParameters = () => [
|
|
222
|
+
{ type: IconCacheService },
|
|
223
|
+
{ type: ChangeDetectorRef },
|
|
224
|
+
{ type: SharedService },
|
|
225
|
+
{ type: SendMethodService }
|
|
226
|
+
];
|
|
227
|
+
SendMethodDialogComponent.propDecorators = {
|
|
228
|
+
navigationItems: [{ type: ViewChild, args: ['navigationItems', { read: ElementRef },] }],
|
|
229
|
+
faxItems: [{ type: ViewChild, args: ['faxItems', { read: ElementRef },] }],
|
|
230
|
+
printItems: [{ type: ViewChild, args: ['printItems', { read: ElementRef },] }],
|
|
231
|
+
emailItems: [{ type: ViewChild, args: ['emailItems', { read: ElementRef },] }],
|
|
232
|
+
ediItems: [{ type: ViewChild, args: ['ediItems', { read: ElementRef },] }],
|
|
233
|
+
emailTemplateItems: [{ type: ViewChild, args: ['emailTemplateItems', { read: ElementRef },] }],
|
|
234
|
+
smsItems: [{ type: ViewChild, args: ['smsItems', { read: ElementRef },] }],
|
|
235
|
+
webServiceItems: [{ type: ViewChild, args: ['webServiceItems', { read: ElementRef },] }],
|
|
236
|
+
pdfItems: [{ type: ViewChild, args: ['pdfItems', { read: ElementRef },] }],
|
|
237
|
+
printerList: [{ type: Input }],
|
|
238
|
+
reportingDocumentPrintRequest: [{ type: Input }],
|
|
239
|
+
reportingDocumentEmailRequest: [{ type: Input }],
|
|
240
|
+
reportingDocumentPdfRequest: [{ type: Input }],
|
|
241
|
+
emailLayouts: [{ type: Input }],
|
|
242
|
+
printLayouts: [{ type: Input }],
|
|
243
|
+
headerTitle: [{ type: Input }],
|
|
244
|
+
emailAddresses: [{ type: Input }],
|
|
245
|
+
defaultSendMethod: [{ type: Input }],
|
|
246
|
+
visibleMethods: [{ type: Input }],
|
|
247
|
+
isDocSignEnabled: [{ type: Input }],
|
|
248
|
+
docSign: [{ type: Input }],
|
|
249
|
+
isPrinterLayoutsEnabled: [{ type: Input }],
|
|
250
|
+
reportingDocumentPrintRequestChange: [{ type: Output }],
|
|
251
|
+
reportingDocumentEmailRequestChange: [{ type: Output }],
|
|
252
|
+
reportingDocumentPdfRequestChange: [{ type: Output }],
|
|
253
|
+
startSignatureClicked: [{ type: Output }],
|
|
254
|
+
closeClick: [{ type: Output }],
|
|
255
|
+
okClick: [{ type: Output }],
|
|
256
|
+
showClass: [{ type: HostBinding, args: ['class.co-send-method-dialog',] }]
|
|
257
|
+
};
|
|
258
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZGNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL3NlbmQtbWV0aG9kLWRpYWxvZy9zZW5kLW1ldGhvZC1kaWFsb2cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbEUsT0FBTyxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUUvRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFJM0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQVNsRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBaUI7SUFDL0MsSUFBSSxVQUFVLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM1RCxJQUFJLFVBQVUsQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzlELElBQUksVUFBVSxDQUFDLGNBQWMsQ0FBQyxL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Z0NBR0wsS0FBSzs2QkFHTCxLQUFLOytCQUdMLEtBQUs7c0JBR0wsS0FBSztzQ0FHTCxLQUFLO2tEQUdMLE1BQU07a0RBR04sTUFBTTtnREFHTixNQUFNO29DQUdOLE1BQU07eUJBR04sTUFBTTtzQkFHTixNQUFNO3dCQUdOLFdBQVcsU0FBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0QmluZGluZyxcclxuICBJbnB1dCxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge2FuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtTaGFyZWRTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3NoYXJlZC5zZXJ2aWNlJztcclxuaW1wb3J0IHtSZXBvcnRMYXlvdXRTZWxlY3Rpb25FbWFpbH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0LWxheW91dC1zZWxlY3Rpb24tZW1haWwuYm8nO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7UmVwb3J0aW5nRG9jdW1lbnRQZGZCYXNlUmVxdWVzdH0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LXBkZi1iYXNlLXJlcXVlc3QnO1xyXG5pbXBvcnQge1NlbmRNZXRob2RTZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2Uvc2VuZC1tZXRob2Quc2VydmljZSc7XHJcbmltcG9ydCB7U2VuZE1ldGhvZH0gZnJvbSAnLi4vLi4vbW9kZWwvc2VuZC1tZXRob2QnO1xyXG5pbXBvcnQge1NlbmRNZXRob2RUeXBlfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9lbnVtL3NlbmQtbWV0aG9kLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7UHJpbnRlcn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcHJpbnRlci5ibyc7XHJcbmltcG9ydCB7XHJcbiAgUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdFxyXG59IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydGluZy1kb2N1bWVudC1lbWFpbC1zaWduLWRvYy1iYXNlLXJlcXVlc3QnO1xyXG5pbXBvcnQge1xyXG4gIFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RcclxufSBmcm9tIFwiQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcmVwb3J0aW5nLWRvY3VtZW50LXByaW50LXNpZ24tZG9jLWJhc2UtcmVxdWVzdFwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IHNlbmRNZXRob2RzV2l0aEljb246IFNlbmRNZXRob2RbXSA9IFtcclxuICBuZXcgU2VuZE1ldGhvZChTZW5kTWV0aG9kVHlwZS5GYXgsIFwiRmF4XCIsIEljb24uUHJpbnRSZWd1bGFyKSxcclxuICBuZXcgU2VuZE1ldGhvZChTZW5kTWV0aG9kVHlwZS5QcmludCwgXCJQcmludFwiLCBJY29uLlByaW50U29saWQpLFxyXG4gIG5ldyBTZW5kTWV0aG9kKFNlbmRNZXRob2RUeXBlLkVtYWlsLCBcIkVtYWlsXCIsIEljb24uQXRTb2xpZCksXHJcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuRWRpLCBcIkVkaVwiLCBJY29uLkZpbGVFeHBvcnRTb2xpZCksXHJcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuRW1haWxUZW1wbGF0ZSwgXCJFbWFpbCB0ZW1wbGF0ZVwiLCBJY29uLkVudmVsb3BlUmVndWxhciksXHJcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuU21zLCBcIlNtc1wiLCBJY29uLk1lc3NhZ2VTbXNTb2xpZCksXHJcbiAgbmV3IFNlbmRNZXRob2QoU2VuZE1ldGhvZFR5cGUuV2ViU2VydmljZSwgXCJXZWJzZXJ2aWNlXCIsIEljb24uUHJpbnRSZWd1bGFyKSxcclxuICBuZXcgU2VuZE1ldGhvZChTZW5kTWV0aG9kVHlwZS5QZGYsIFwiUGRmXCIsIEljb24uUGRmKVxyXG5dXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLXNlbmQtbWV0aG9kLWRpYWxvZycsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1kaWFsb2cgaWQ9XCJzZW5kT3B0aW9uc0RpYWxvZ1wiIFtoZWFkZXJUZW1wbGF0ZV09XCJoZWFkZXJUZW1wbGF0ZVwiIFtmb290ZXJUZW1wbGF0ZV09XCJmb290ZXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICAgIChjbG9zZUNsaWNrKT1cImNsb3NlQ2xpY2suZW1pdCgkZXZlbnQpXCI+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGNvLWljb24gW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5FbnZlbG9wZVJlZ3VsYXIpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNvLWRpYWxvZy1oZWFkZXItdGl0bGVcIiBbdGV4dENvbnRlbnRdPVwiaGVhZGVyVGl0bGVcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nLW5hdmlnYXRpb24td3JhcHBlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNlbmQtYnV0dG9uLXdyYXBwZXJcIiAqbmdGb3I9XCJsZXQgc2VuZE1ldGhvZCBvZiBzZW5kTWV0aG9kczsgbGV0IGluZGV4ID0gaW5kZXhcIlxyXG4gICAgICAgICAgICAgICBbY2xhc3Muc2VsZWN0ZWRdPVwiYWN0aXZlU2VuZE1ldGhvZCA/IHNlbmRNZXRob2QuY29kZSA9PT0gYWN0aXZlU2VuZE1ldGhvZC5jb2RlIDogaW5kZXggPT09IDBcIlxyXG4gICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlU2VuZE1ldGhvZENsaWNrKHNlbmRNZXRob2QpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b20tYnV0dG9uLXRpdGxlXCIgW3RleHRDb250ZW50XT1cInNlbmRNZXRob2QuZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImRpYWxvZy1jb250ZW50LXdyYXBwZXJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VuZC1tZXRob2RzLXdyYXBwZXJcIj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAjbmF2aWdhdGlvbkl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi13cmFwcGVyXCIgW2NsYXNzLnNtb290aC1zY3JvbGxpbmddPVwiIXN0YXJ0VXBcIj5cclxuICAgICAgICAgIDxkaXYgI2ZheEl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAjcHJpbnRJdGVtcyBjbGFzcz1cInNlbmQtbWV0aG9kLW5hdmlnYXRpb24tY29udGVudCBjby1zbWFsbC1zY3JvbGxiYXJcIiAqbmdJZj1cInNob3dQcmludFwiPlxyXG4gICAgICAgICAgICA8Y28tc2VuZC1tZXRob2QtcHJpbnRlclxyXG4gICAgICAgICAgICAgIFtpc1ByaW50ZXJMYXlvdXRzRW5hYmxlZF09XCJpc1ByaW50ZXJMYXlvdXRzRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgW3ByaW50ZXJMaXN0XT1cInByaW50ZXJMaXN0XCJcclxuICAgICAgICAgICAgICBbbGF5b3V0c109XCJwcmludExheW91dHNcIlxyXG4gICAgICAgICAgICA+PC9jby1zZW5kLW1ldGhvZC1wcmludGVyPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2ICNlbWFpbEl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd0VtYWlsXCI+XHJcbiAgICAgICAgICAgIDxjby1zZW5kLW1ldGhvZC1lbWFpbFxyXG4gICAgICAgICAgICAgIFtlbWFpbEFkZHJlc3Nlc109XCJlbWFpbEFkZHJlc3Nlc1wiXHJcbiAgICAgICAgICAgICAgW2xheW91dHNdPVwiZW1haWxMYXlvdXRzXCJcclxuICAgICAgICAgICAgPjwvY28tc2VuZC1tZXRob2QtZW1haWw+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgI2VkaUl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd0VkaVwiPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAjZW1haWxUZW1wbGF0ZUl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd0VtYWlsVGVtcGxhdGVcIj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgI3Ntc0l0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd1Ntc1wiPlxyXG5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAjd2ViU2VydmljZUl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd1dlYnNlcnZpY2VcIj5cclxuXHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgI3BkZkl0ZW1zIGNsYXNzPVwic2VuZC1tZXRob2QtbmF2aWdhdGlvbi1jb250ZW50IGNvLXNtYWxsLXNjcm9sbGJhclwiICpuZ0lmPVwic2hvd1BkZlwiPlxyXG4gICAgICAgICAgICAgIDxjby1zZW5kLW1ldGhvZC1wZGZcclxuICAgICAgICAgICAgICAgICAgICAgIFtsYXlvdXRzXT1cInByaW50TGF5b3V0c1wiXHJcbiAgICAgICAgICAgICAgPjwvY28tc2VuZC1tZXRob2QtcGRmPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2Zvb3RlclRlbXBsYXRlPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjby1kaWFsb2ctZm9vdGVyLWJ1dHRvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwic2F2ZS1idXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICBbaWNvbkRhdGFdPVwiaWNvbkNhY2hlU2VydmljZS5nZXRJY29uKGljb25zLkNoZWNrRHVvdG9uZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib2tDbGljay5lbWl0KGFjdGl2ZVNlbmRNZXRob2QgPyBhY3RpdmVTZW5kTWV0aG9kLmNvZGUgOiAnMCcpXCI+PC9jby1idXR0b24+XHJcbiAgICAgICAgICA8Y28tYnV0dG9uIGNsYXNzPVwiY2xvc2UtYnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5Dcm9zc1NraW5ueSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2VDbGljay5lbWl0KCRldmVudClcIj48L2NvLWJ1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvY28tZGlhbG9nPlxyXG4gIGAsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdzbGlkZUluT3V0JywgW1xyXG4gICAgICBzdGF0ZSgnKicsIHN0eWxlKHt0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDAlKScsIHdpZHRoOiAnMTAwJScsIG9wYWNpdHk6ICcxJ30pKSxcclxuICAgICAgc3RhdGUoJ3ZvaWQnLCBzdHlsZSh7dHJhbnNmb3JtOiAndHJhbnNsYXRlWCgxNTAlKScsIG9wYWNpdHk6ICcwJ30pKSxcclxuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgYW5pbWF0ZSgyNTApKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgU2VuZE1ldGhvZERpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgcmVhZG9ubHkgaWNvbnM6IHR5cGVvZiBJY29uID0gSWNvbjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnbmF2aWdhdGlvbkl0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxyXG4gIHB1YmxpYyBuYXZpZ2F0aW9uSXRlbXM6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2ZheEl0ZW1zJywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxyXG4gIHB1YmxpYyBmYXhJdGVtczogRWxlbWVudFJlZjtcclxuXHJcbiAgQFZpZXdDaGlsZCgncHJpbnRJdGVtcycsIHtyZWFkOiBFbGVtZW50UmVmfSlcclxuICBwdWJsaWMgcHJpbnRJdGVtczogRWxlbWVudFJlZjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZW1haWxJdGVtcycsIHtyZWFkOiBFbGVtZW50UmVmfSlcclxuICBwdWJsaWMgZW1haWxJdGVtczogRWxlbWVudFJlZjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnZWRpSXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIGVkaUl0ZW1zOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdlbWFpbFRlbXBsYXRlSXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIGVtYWlsVGVtcGxhdGVJdGVtczogRWxlbWVudFJlZjtcclxuXHJcbiAgQFZpZXdDaGlsZCgnc21zSXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIHNtc0l0ZW1zOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCd3ZWJTZXJ2aWNlSXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIHdlYlNlcnZpY2VJdGVtczogRWxlbWVudFJlZjtcclxuXHJcbiAgQFZpZXdDaGlsZCgncGRmSXRlbXMnLCB7cmVhZDogRWxlbWVudFJlZn0pXHJcbiAgcHVibGljIHBkZkl0ZW1zOiBFbGVtZW50UmVmO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwcmludGVyTGlzdDogUHJpbnRlcltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJlcG9ydGluZ0RvY3VtZW50UHJpbnRSZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdDogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdDtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVwb3J0aW5nRG9jdW1lbnRQZGZSZXF1ZXN0OiBSZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBlbWFpbExheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvbkVtYWlsW10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcHJpbnRMYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdID0gW107XHJcblxyXG4gIC8vIEBJbnB1dCgpXHJcbiAgLy8gcHVibGljIHByaWNlTGlzdENvZGVEYXRhOiBhbnk7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlclRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVtYWlsQWRkcmVzc2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBkZWZhdWx0U2VuZE1ldGhvZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB2aXNpYmxlTWV0aG9kczogU2VuZE1ldGhvZFR5cGVbXSB8IHN0cmluZ1tdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlzRG9jU2lnbkVuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZG9jU2lnbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpc1ByaW50ZXJMYXlvdXRzRW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyByZXBvcnRpbmdEb2N1bWVudFByaW50UmVxdWVzdENoYW5nZTogRXZlbnRFbWl0dGVyPFJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgcmVwb3J0aW5nRG9jdW1lbnRFbWFpbFJlcXVlc3RDaGFuZ2U6IEV2ZW50RW1pdHRlcjxSZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0PiA9IG5ldyBFdmVudEVtaXR0ZXI8UmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHJlcG9ydGluZ0RvY3VtZW50UGRmUmVxdWVzdENoYW5nZTogRXZlbnRFbWl0dGVyPFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3Q+ID0gbmV3IEV2ZW50RW1pdHRlcjxSZXBvcnRpbmdEb2N1bWVudFBkZkJhc2VSZXF1ZXN0PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgc3RhcnRTaWduYXR1cmVDbGlja2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgY2xvc2VDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBwdWJsaWMgb2tDbGljazogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5jby1zZW5kLW1ldGhvZC1kaWFsb2cnKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZW5kTWV0aG9kcyA9IHNlbmRNZXRob2RzV2l0aEljb247XHJcbiAgcHVibGljIGFjdGl2ZVNlbmRNZXRob2Q6IFNlbmRNZXRob2Q7XHJcbiAgcHVibGljIHVwQW5kTG9hZGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHVibGljIHN0YXJ0VXA6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBwdWJsaWMgc2hvd0ZheDogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIHNob3dQcmludDogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIHNob3dFbWFpbDogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIHNob3dFZGk6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyBzaG93U21zOiBib29sZWFuID0gdHJ1ZTtcclxuICBwdWJsaWMgc2hvd0VtYWlsVGVtcGxhdGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIHB1YmxpYyBzaG93V2Vic2VydmljZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHVibGljIHNob3dQZGY6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBwcml2YXRlIF9zdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfc2hhcmVkU2VydmljZTogU2hhcmVkU2VydmljZSxcclxuICAgIHByaXZhdGUgX3NlbmRNZXRob2RTZXJ2aWNlOiBTZW5kTWV0aG9kU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLl9zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0Q2hhbmdlZC5zdWJzY3JpYmUoKHZhbHVlOiBSZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0KSA9PiB0aGlzLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRSZXF1ZXN0Q2hhbmdlLm5leHQodmFsdWUpKSxcclxuICAgICAgdGhpcy5fc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdENoYW5nZWQuc3Vic2NyaWJlKCh2YWx1ZTogUmVwb3J0aW5nRG9jdW1lbnRFbWFpbFNpZ25Eb2NCYXNlUmVxdWVzdCkgPT4gdGhpcy5yZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdENoYW5nZS5uZXh0KHZhbHVlKSksXHJcbiAgICAgIHRoaXMuX3NlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3RDaGFuZ2VkLnN1YnNjcmliZSgodmFsdWU6IFJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3QpID0+IHRoaXMucmVwb3J0aW5nRG9jdW1lbnRQZGZSZXF1ZXN0Q2hhbmdlLm5leHQodmFsdWUpKVxyXG4gICAgKVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5yZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdCkge1xyXG4gICAgICB0aGlzLl9zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudEVtYWlsU2lnbkRvY0Jhc2VSZXF1ZXN0ID0gdGhpcy5yZXBvcnRpbmdEb2N1bWVudEVtYWlsUmVxdWVzdDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRSZXF1ZXN0KSB7XHJcbiAgICAgIHRoaXMuX3NlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QgPSB0aGlzLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRSZXF1ZXN0O1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMucmVwb3J0aW5nRG9jdW1lbnRQZGZSZXF1ZXN0KSB7XHJcbiAgICAgIHRoaXMuX3NlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UGRmQmFzZVJlcXVlc3QgPSB0aGlzLnJlcG9ydGluZ0RvY3VtZW50UGRmUmVxdWVzdDtcclxuICAgIH1cclxuICAgIHRoaXMuX2luaXREZWZhdWx0U2VuZE1ldGhvZCgpO1xyXG4gICAgdGhpcy5fcHJlcGFyZVZpc2libGVNZXRob2RzKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVNpZ25hdHVyZVN0YXJ0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5kb2NTaWduID0gIXRoaXMuZG9jU2lnbjtcclxuICAgIHRoaXMuc3RhcnRTaWduYXR1cmVDbGlja2VkLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZW5kTWV0aG9kQ2xpY2soc2VuZE1ldGhvZDogU2VuZE1ldGhvZCk6IHZvaWQge1xyXG4gICAgdGhpcy5hY3RpdmVTZW5kTWV0aG9kID0gc2VuZE1ldGhvZDtcclxuICAgIGlmIChzZW5kTWV0aG9kLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLkZheCAmJiB0aGlzLnNob3dGYXgpIHtcclxuICAgICAgdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5mYXhJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XHJcbiAgICB9IGVsc2UgaWYgKHNlbmRNZXRob2QuY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuUHJpbnQgJiYgdGhpcy5zaG93UHJpbnQpIHtcclxuICAgICAgdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5wcmludEl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcclxuICAgIH0gZWxzZSBpZiAoc2VuZE1ldGhvZC5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5FbWFpbCAmJiB0aGlzLnNob3dFbWFpbCkge1xyXG4gICAgICB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLmVtYWlsSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xyXG4gICAgfSBlbHNlIGlmIChzZW5kTWV0aG9kLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLkVkaSAmJiB0aGlzLnNob3dFZGkpIHtcclxuICAgICAgdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5zY3JvbGxMZWZ0ID0gdGhpcy5lZGlJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XHJcbiAgICB9IGVsc2UgaWYgKHNlbmRNZXRob2QuY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuRW1haWxUZW1wbGF0ZSAmJiB0aGlzLnNob3dFbWFpbFRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuZW1haWxUZW1wbGF0ZUl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcclxuICAgIH0gZWxzZSBpZiAoc2VuZE1ldGhvZC5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5TbXMgJiYgdGhpcy5zaG93U21zKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsTGVmdCA9IHRoaXMuc21zSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0IC0gdGhpcy5uYXZpZ2F0aW9uSXRlbXMubmF0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xyXG4gICAgfSBlbHNlIGlmIChzZW5kTWV0aG9kLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLldlYlNlcnZpY2UgJiYgdGhpcy5zaG93V2Vic2VydmljZSkge1xyXG4gICAgICB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLndlYlNlcnZpY2VJdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQgLSB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50Lm9mZnNldExlZnQ7XHJcbiAgICB9IGVsc2UgaWYgKHNlbmRNZXRob2QuY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuUGRmICYmIHRoaXMuc2hvd1BkZikge1xyXG4gICAgICB0aGlzLm5hdmlnYXRpb25JdGVtcy5uYXRpdmVFbGVtZW50LnNjcm9sbExlZnQgPSB0aGlzLnBkZkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdCAtIHRoaXMubmF2aWdhdGlvbkl0ZW1zLm5hdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2luaXREZWZhdWx0U2VuZE1ldGhvZCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmRlZmF1bHRTZW5kTWV0aG9kKSB7XHJcbiAgICAgIHRoaXMuX3NlbGVjdERlZmF1bHRTZW5kTWV0aG9kKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy52aXNpYmxlTWV0aG9kcyAmJiB0aGlzLnZpc2libGVNZXRob2RzLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgIHRoaXMuZGVmYXVsdFNlbmRNZXRob2QgPSB0aGlzLnZpc2libGVNZXRob2RzWzBdO1xyXG4gICAgICAgIHRoaXMuX3NlbGVjdERlZmF1bHRTZW5kTWV0aG9kKCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zdGFydFVwID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zZWxlY3REZWZhdWx0U2VuZE1ldGhvZCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IHNlbmRNZXRob2Q6IFNlbmRNZXRob2QgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gdGhpcy5kZWZhdWx0U2VuZE1ldGhvZCk7XHJcbiAgICBpZiAoc2VuZE1ldGhvZCkge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmhhbmRsZVNlbmRNZXRob2RDbGljayhzZW5kTWV0aG9kKTtcclxuICAgICAgICB0aGlzLnN0YXJ0VXAgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9wcmVwYXJlVmlzaWJsZU1ldGhvZHMoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy52aXNpYmxlTWV0aG9kcyAmJiB0aGlzLnZpc2libGVNZXRob2RzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5zZW5kTWV0aG9kcyA9IHRoaXMuc2VuZE1ldGhvZHMuZmlsdGVyKHNtID0+IHRoaXMudmlzaWJsZU1ldGhvZHMuZmluZCh2bSA9PiB2bSA9PT0gc20uY29kZSkpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zaG93RmF4ID0gdGhpcy5zZW5kTWV0aG9kcy5maW5kKHNtID0+IHNtLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLkZheCkgIT09IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuc2hvd1ByaW50ID0gdGhpcy5zZW5kTWV0aG9kcy5maW5kKHNtID0+IHNtLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLlByaW50KSAhPT0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5zaG93RW1haWwgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuRW1haWwpICE9PSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLnNob3dFZGkgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuRWRpKSAhPT0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5zaG93RW1haWxUZW1wbGF0ZSA9IHRoaXMuc2VuZE1ldGhvZHMuZmluZChzbSA9PiBzbS5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5FbWFpbFRlbXBsYXRlKSAhPT0gdW5kZWZpbmVkO1xyXG4gICAgdGhpcy5zaG93U21zID0gdGhpcy5zZW5kTWV0aG9kcy5maW5kKHNtID0+IHNtLmNvZGUgPT09IFNlbmRNZXRob2RUeXBlLlNtcykgIT09IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuc2hvd1dlYnNlcnZpY2UgPSB0aGlzLnNlbmRNZXRob2RzLmZpbmQoc20gPT4gc20uY29kZSA9PT0gU2VuZE1ldGhvZFR5cGUuV2ViU2VydmljZSkgIT09IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuc2hvd1BkZiA9IHRoaXMuc2VuZE1ldGhvZHMuZmluZChzbSA9PiBzbS5jb2RlID09PSBTZW5kTWV0aG9kVHlwZS5QZGYpICE9PSB1bmRlZmluZWQ7XHJcblxyXG4gIH1cclxufVxyXG4iXX0=
|