@fundamental-ngx/platform 0.43.15 → 0.43.17
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/esm2020/approval-flow/approval-flow-node/approval-flow-node.component.mjs +3 -3
- package/esm2020/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +1 -1
- package/esm2020/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +1 -1
- package/esm2020/form/combobox/combobox/combobox.component.mjs +7 -7
- package/esm2020/form/combobox/commons/base-combobox.mjs +12 -1
- package/esm2020/form/multi-combobox/commons/base-multi-combobox.mjs +5 -2
- package/esm2020/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +28 -30
- package/esm2020/form/multi-input/base-multi-input.mjs +5 -1
- package/esm2020/form/multi-input/multi-input.component.mjs +3 -3
- package/esm2020/form/select/select/select.component.mjs +3 -3
- package/esm2020/list/list.component.mjs +11 -3
- package/esm2020/search-field/search-field.component.mjs +3 -3
- package/esm2020/shared/domain/data-source.mjs +3 -2
- package/esm2020/shared/form/base.input.mjs +13 -9
- package/esm2020/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +1 -1
- package/esm2020/table/components/table-header-cell-content/table-header-cell-content.component.mjs +3 -3
- package/esm2020/table/components/table-header-row/table-header-row.component.mjs +7 -4
- package/esm2020/table/components/table-row/table-row.component.mjs +3 -3
- package/esm2020/table/table.component.mjs +13 -12
- package/esm2020/table-helpers/pipes/column-sorting-direction.pipe.mjs +27 -0
- package/esm2020/table-helpers/pipes/index.mjs +2 -1
- package/esm2020/table-helpers/table-helpers.module.mjs +9 -6
- package/esm2020/upload-collection/upload-collection/upload-collection.component.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-approval-flow.mjs +4 -4
- package/fesm2015/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-form.mjs +140 -125
- package/fesm2015/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-list.mjs +9 -2
- package/fesm2015/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-search-field.mjs +2 -2
- package/fesm2015/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-shared.mjs +12 -7
- package/fesm2015/fundamental-ngx-platform-shared.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-table-helpers.mjs +32 -4
- package/fesm2015/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-table.mjs +21 -17
- package/fesm2015/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-platform-upload-collection.mjs +1 -1
- package/fesm2015/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-approval-flow.mjs +4 -4
- package/fesm2020/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-form.mjs +144 -128
- package/fesm2020/fundamental-ngx-platform-form.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-list.mjs +10 -2
- package/fesm2020/fundamental-ngx-platform-list.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-search-field.mjs +2 -2
- package/fesm2020/fundamental-ngx-platform-search-field.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-shared.mjs +12 -7
- package/fesm2020/fundamental-ngx-platform-shared.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-table-helpers.mjs +32 -4
- package/fesm2020/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-table.mjs +21 -17
- package/fesm2020/fundamental-ngx-platform-table.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-platform-upload-collection.mjs +1 -1
- package/fesm2020/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
- package/form/combobox/combobox/combobox.component.d.ts +2 -2
- package/form/combobox/commons/base-combobox.d.ts +2 -0
- package/form/multi-combobox/multi-combobox/multi-combobox.component.d.ts +7 -7
- package/fundamental-ngx-platform-v0.43.17.tgz +0 -0
- package/list/list.component.d.ts +3 -1
- package/package.json +4 -4
- package/schematics/ng-add/index.js +1 -1
- package/shared/form/base.input.d.ts +5 -4
- package/table/components/table-header-row/table-header-row.component.d.ts +3 -1
- package/table/table.component.d.ts +4 -3
- package/table-helpers/pipes/column-sorting-direction.pipe.d.ts +12 -0
- package/table-helpers/pipes/index.d.ts +1 -0
- package/table-helpers/table-helpers.module.d.ts +2 -1
- package/fundamental-ngx-platform-v0.43.15.tgz +0 -0
|
@@ -230,14 +230,14 @@ export class ApprovalFlowNodeComponent {
|
|
|
230
230
|
}
|
|
231
231
|
}
|
|
232
232
|
ApprovalFlowNodeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ApprovalFlowNodeComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.RtlService, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
233
|
-
ApprovalFlowNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ApprovalFlowNodeComponent, selector: "fdp-approval-flow-node", inputs: { node: "node", meta: "meta", renderArrow: "renderArrow", checkDueDate: "checkDueDate", dueDateThreshold: "dueDateThreshold", allNodesInColumnApproved: "allNodesInColumnApproved", approvalStatusTemplate: "approvalStatusTemplate", statusColorMapping: "statusColorMapping", isEdit: "isEdit", isNextNodeBlank: "isNextNodeBlank" }, outputs: { onAdd: "onAdd", onEdit: "onEdit", onDelete: "onDelete" }, host: { properties: { "class.fdp-approval-flow-node--first-root": "meta?.firstOfMultipleRootNodes", "class.fdp-approval-flow-node--first-final": "meta?.firstOfMultipleFinalNodes", "class.fdp-approval-flow-node--edit-mode": "this.isEdit", "class.fdp-approval-flow-node--next-blank": "this.isNextNodeBlank", "class.fdp-approval-flow-node--blank": "this._blank", "class.fdp-approval-flow-node--space": "this._space", "class.fdp-approval-flow-node--root": "this._isRoot", "class.fdp-approval-flow-node--final": "this._isFinal", "class.fdp-approval-flow-node--line-before": "this._renderLineBefore", "class.fdp-approval-flow-node--line-after": "this._renderLineAfter", "class.fdp-approval-flow-node--approved": "this._isApproved", "class.fdp-approval-flow-node--parent-approved": "this._isParentApproved", "class.fdp-approval-flow-node--selected": "this._isNodeSelected", "class.fdp-approval-flow-node--parallel-start": "this._isParallelStart", "class.fdp-approval-flow-node--parallel-end": "this._isParallelEnd", "class.fdp-approval-flow-node--first-in-parallel": "this._isFirstInParallel", "class.fdp-approval-flow-node--last-in-parallel": "this._isLastInParallel", "class.fdp-approval-flow-node--last-blank": "this._lastBlank" }, classAttribute: "fdp-approval-flow-node" }, queries: [{ propertyName: "_gridListItem", first: true, predicate: GridListItemComponent, descendants: true }], viewQueries: [{ propertyName: "_menu", first: true, predicate: MenuComponent, descendants: true }, { propertyName: "_overflowMenuButton", first: true, predicate: ["overflowMenuButton"], descendants: true }, { propertyName: "_nodeContent", first: true, predicate: ["nodeContent"], descendants: true }, { propertyName: "_dropZones", predicate: ApprovalFlowDropZoneDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n *ngIf=\"meta?.renderVerticalLineBefore\"\n class=\"fdp-approval-flow-node__vertical-line-before\"\n [class.fdp-approval-flow-node__vertical-line-before-solid]=\"_isVerticalLineBeforeSolid\"\n></div>\n\n<div\n *ngIf=\"meta?.renderVerticalLineAfter\"\n class=\"fdp-approval-flow-node__vertical-line-after\"\n [class.fdp-approval-flow-node__vertical-line-after-solid]=\"_isVerticalLineAfterSolid\"\n></div>\n\n<ng-container *ngIf=\"!_blank && !_space\">\n <div *ngIf=\"renderArrow\" class=\"fdp-approval-flow-node__arrow\"></div>\n\n <div *ngIf=\"_isRoot && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-start-marker\"></div>\n\n <div *ngIf=\"_isFinal && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-end-marker\"></div>\n\n <ng-content></ng-content>\n</ng-container>\n\n<ng-template #overflowMenuButton>\n <!-- Actually just the fd-grid-item action button but with some hardcode to be used as menu trigger -->\n <button\n *ngIf=\"!node?.disableActions\"\n class=\"fdp-approval-flow-node__menu-button\"\n fd-button\n fdType=\"transparent\"\n tabindex=\"0\"\n glyph=\"overflow\"\n title=\"Menu\"\n fdCompact\n [fdMenuTrigger]=\"menu\"\n [disabled]=\"_isEditActionsAvailable\"\n (click)=\"$event.stopPropagation()\"\n ></button>\n</ng-template>\n\n<ng-template #nodeContent>\n <div class=\"fdp-approval-flow-node__info\">\n <div\n class=\"fdp-approval-flow-node__name\"\n [class.fdp-approval-flow-node__name--members-count]=\"node.approvers.length > 1\"\n [id]=\"approvalFlowNodeId\"\n >\n <ng-container *ngIf=\"node.approvers.length === 1; else multipleApprovers\">\n {{ node.approvers[0].name }}\n </ng-container>\n\n <ng-template #multipleApprovers>\n {{ 'platformApprovalFlow.nodeMembersCount' | fdTranslate : { count: node.approvers.length } }}\n </ng-template>\n </div>\n\n <div class=\"fdp-approval-flow-node__description\">\n <ng-container *ngIf=\"!node.variousTeams; else variousTeams\">\n {{\n node.approvers.length > 1\n ? node.description\n : node.approvers.length\n ? node.approvers[0].description\n : ''\n }}\n </ng-container>\n\n <ng-template #variousTeams> {{ 'platformApprovalFlow.nodeVariousTeams' | fdTranslate }} </ng-template>\n </div>\n\n <fdp-object-status [status]=\"_objectStatus\" [inverted]=\"true\">\n <ng-container *ngIf=\"approvalStatusTemplate; then userStatusTemplate; else defaultStatusTemplate\">\n </ng-container>\n\n <ng-container *ngIf=\"checkDueDate && _showDueDateWarning\">\n <ng-container *ngIf=\"_dueIn === dueDateThreshold\">\n {{ 'platformApprovalFlow.nodeStatusDueToday' | fdTranslate }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn < dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusDueInXDays' | fdTranslate : { count: dueDateThreshold - _dueIn }\n }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn > dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusXDaysOverdue'\n | fdTranslate : { count: _dueIn - dueDateThreshold }\n }}\n </ng-container>\n </ng-container>\n </fdp-object-status>\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBeforeAll && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before-all' }\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBefore && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAddButton &&\n meta?.canAddNodeAfter &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAfterAllAddButton &&\n meta?.canAddNodeAfterAll &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after-all' }\"></ng-container>\n</ng-container>\n\n<ng-template #addNodeButton let-placement=\"placement\">\n <button\n *ngIf=\"node.status !== 'approved'\"\n fd-button\n glyph=\"add\"\n title=\"Add node\"\n fdCompact\n class=\"fdp-approval-flow-node__add\"\n [class.fdp-approval-flow-node__add--blank]=\"this._blank\"\n [class.fdp-approval-flow-node__add--before]=\"\n !this._blank && (placement === 'before' || placement === 'before-all')\n \"\n [class.fdp-approval-flow-node__add--before-all]=\"!this._blank && placement === 'before-all'\"\n [class.fdp-approval-flow-node__add--after]=\"\n !this._blank && (placement === 'after' || placement === 'after-all')\n \"\n [class.fdp-approval-flow-node__add--after-all]=\"placement === 'after-all'\"\n [style.visibility]=\"dropZone.active ? 'hidden' : ''\"\n (click)=\"onAdd.emit(placement)\"\n ></button>\n\n <div\n #dropZone=\"fdp-approval-flow-drop-zone\"\n fdp-approval-flow-drop-zone\n [placement]=\"placement\"\n class=\"fdp-approval-flow-node__drop-zone\"\n [class.fdp-approval-flow-node__drop-zone--active]=\"dropZone.active\"\n [class.fdp-approval-flow-node__drop-zone--blank]=\"isNextNodeBlank\"\n [class.fdp-approval-flow-node__drop-zone--partial]=\"_dropZonePartial(placement)\"\n ></div>\n</ng-template>\n\n<ng-template #defaultStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container [ngSwitch]=\"node.status\">\n <ng-container *ngSwitchCase=\"'approved'\">{{\n 'platformApprovalFlow.statusApproved' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'rejected'\">{{\n 'platformApprovalFlow.statusRejected' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'in progress'\">{{\n 'platformApprovalFlow.statusInProgress' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'not started'\">{{\n 'platformApprovalFlow.statusNotStarted' | fdTranslate\n }}</ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #userStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container\n *ngIf=\"approvalStatusTemplate\"\n [ngTemplateOutlet]=\"approvalStatusTemplate\"\n [ngTemplateOutletContext]=\"{ node: node }\"\n >\n </ng-container>\n </ng-container>\n</ng-template>\n\n<fd-menu #menu fdContentDensity placement=\"bottom-end\" (isOpenChange)=\"_onMenuOpen()\">\n <li\n *ngIf=\"meta?.canAddNodeBefore && !this.node?.actionsConfig?.disableAddBefore\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('before')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversBefore' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddNodeAfter && !this.node?.actionsConfig?.disableAddAfter\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('after')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversAfter' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddParallel && !this.node?.actionsConfig?.disableAddParallel\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('parallel')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversParallel' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"_isNotStarted && !this.node?.actionsConfig?.disableEdit\"\n fd-menu-item\n (click)=\"menu.close(); onEdit.emit()\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionEditApprover' | fdTranslate }}</span>\n </div>\n </li>\n\n <li *ngIf=\"!this.node?.actionsConfig?.disableRemove\" fd-menu-item (click)=\"menu.close(); onDelete.emit()\">\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionRemove' | fdTranslate }}</span>\n </div>\n </li>\n</fd-menu>\n", styles: [".fdp-approval-flow-node{display:block;box-sizing:border-box;position:relative;width:17.375rem;height:5.875rem;margin-bottom:1rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode{height:7.875rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-after:after{top:-4.9375rem;height:8.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{content:\"\";display:block;position:absolute;top:-3.9375rem;height:6.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before{left:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before-solid:before{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{right:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after-solid:after{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-before:before{left:auto;right:-2.0625rem}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-after:after{right:auto;left:-2.0625rem}.fdp-approval-flow-node .fdp-approval-flow-node__add{position:absolute;z-index:10;margin:calc(3.4375rem - 1px) auto auto;inset:0;border-radius:100%;min-width:1rem;max-width:1rem;min-height:1rem;max-height:1rem}.fdp-approval-flow-node .fdp-approval-flow-node__add fd-icon{line-height:1rem;font-size:.7rem;font-weight:900}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before{left:-2.5rem;right:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-2.8rem}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after{right:-2.5rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-2.8rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone{border-radius:.25rem;position:absolute;height:100%;z-index:1}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--active{background:#e5f0fa;background:var(--sapList_SelectionBackgroundColor, #e5f0fa);border:.125rem solid #0854a0;border:.125rem solid var(--sapButton_IconColor, #0854a0)}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--blank{width:100%;top:0}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--partial{width:10%;left:0;top:0}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank{background:transparent;box-shadow:none;pointer-events:none;cursor:default}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:before{content:\"\";display:block;position:absolute;width:calc(100% + 4rem);height:0;left:-2rem;top:calc(50% - .0625rem);border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{width:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:not(.fdp-approval-flow-node--last-blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{width:100%}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{content:\"\";width:2rem;height:0;display:block;position:absolute;top:calc(50% - .0625rem);bottom:0;pointer-events:none;border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{right:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--blank:before{border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parent-approved.fdp-approval-flow-node--line-before:before{left:-2rem;border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode.fdp-approval-flow-node--blank{pointer-events:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-end-marker{top:3.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__arrow{display:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{right:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{right:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{left:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{left:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{left:19.875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{right:-12.6875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:calc(100% + 4rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{width:4rem;left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{width:4rem;right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__add,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-after{visibility:hidden}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name{font-size:1rem;line-height:1.25rem;margin-bottom:.1rem;color:#32363a;color:var(--sapTextColor, #32363a)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__description{font-size:.875rem;line-height:1rem;color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-bottom:.4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow{width:0;height:0;border-style:solid;border-width:.375rem 0 .375rem .5rem;border-color:transparent transparent transparent #d9d9d9;border-color:transparent transparent transparent var(--sapGroup_TitleBorderColor, #d9d9d9);position:absolute;left:-.5rem;top:0;bottom:0;margin:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{z-index:1;background:#d9d9d9;background:var(--sapGroup_TitleBorderColor, #d9d9d9);display:block;position:absolute;width:.25rem;height:1rem;top:2.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__arrow{left:auto;right:-.5rem;border-width:.375rem .5rem .375rem 0;border-color:transparent #d9d9d9 transparent transparent;border-color:transparent var(--sapGroup_TitleBorderColor, #d9d9d9) transparent transparent}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-before:before{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-after:after{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count{direction:ltr;text-align:right}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before{right:-2.5rem;left:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-2.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after{left:-2.5rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-2.8rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{left:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{left:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{right:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{right:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{right:19.875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:calc(100% + 2rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{left:-12.6875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:calc(100% + 4rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{left:0}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.ObjectStatusComponent, selector: "fdp-object-status", inputs: ["status", "glyph", "indicationColor", "clickable", "inverted", "large", "label", "ariaLabel", "title"], outputs: ["objectStatusClick"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i6.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "directive", type: i7.ApprovalFlowDropZoneDirective, selector: "[fdp-approval-flow-drop-zone]", inputs: ["placement"], exportAs: ["fdp-approval-flow-drop-zone"] }, { kind: "pipe", type: i8.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
233
|
+
ApprovalFlowNodeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ApprovalFlowNodeComponent, selector: "fdp-approval-flow-node", inputs: { node: "node", meta: "meta", renderArrow: "renderArrow", checkDueDate: "checkDueDate", dueDateThreshold: "dueDateThreshold", allNodesInColumnApproved: "allNodesInColumnApproved", approvalStatusTemplate: "approvalStatusTemplate", statusColorMapping: "statusColorMapping", isEdit: "isEdit", isNextNodeBlank: "isNextNodeBlank" }, outputs: { onAdd: "onAdd", onEdit: "onEdit", onDelete: "onDelete" }, host: { properties: { "class.fdp-approval-flow-node--first-root": "meta?.firstOfMultipleRootNodes", "class.fdp-approval-flow-node--first-final": "meta?.firstOfMultipleFinalNodes", "class.fdp-approval-flow-node--edit-mode": "this.isEdit", "class.fdp-approval-flow-node--next-blank": "this.isNextNodeBlank", "class.fdp-approval-flow-node--blank": "this._blank", "class.fdp-approval-flow-node--space": "this._space", "class.fdp-approval-flow-node--root": "this._isRoot", "class.fdp-approval-flow-node--final": "this._isFinal", "class.fdp-approval-flow-node--line-before": "this._renderLineBefore", "class.fdp-approval-flow-node--line-after": "this._renderLineAfter", "class.fdp-approval-flow-node--approved": "this._isApproved", "class.fdp-approval-flow-node--parent-approved": "this._isParentApproved", "class.fdp-approval-flow-node--selected": "this._isNodeSelected", "class.fdp-approval-flow-node--parallel-start": "this._isParallelStart", "class.fdp-approval-flow-node--parallel-end": "this._isParallelEnd", "class.fdp-approval-flow-node--first-in-parallel": "this._isFirstInParallel", "class.fdp-approval-flow-node--last-in-parallel": "this._isLastInParallel", "class.fdp-approval-flow-node--last-blank": "this._lastBlank" }, classAttribute: "fdp-approval-flow-node" }, queries: [{ propertyName: "_gridListItem", first: true, predicate: GridListItemComponent, descendants: true }], viewQueries: [{ propertyName: "_menu", first: true, predicate: MenuComponent, descendants: true }, { propertyName: "_overflowMenuButton", first: true, predicate: ["overflowMenuButton"], descendants: true }, { propertyName: "_nodeContent", first: true, predicate: ["nodeContent"], descendants: true }, { propertyName: "_dropZones", predicate: ApprovalFlowDropZoneDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n *ngIf=\"meta?.renderVerticalLineBefore\"\n class=\"fdp-approval-flow-node__vertical-line-before\"\n [class.fdp-approval-flow-node__vertical-line-before-solid]=\"_isVerticalLineBeforeSolid\"\n></div>\n\n<div\n *ngIf=\"meta?.renderVerticalLineAfter\"\n class=\"fdp-approval-flow-node__vertical-line-after\"\n [class.fdp-approval-flow-node__vertical-line-after-solid]=\"_isVerticalLineAfterSolid\"\n></div>\n\n<ng-container *ngIf=\"!_blank && !_space\">\n <div *ngIf=\"renderArrow\" class=\"fdp-approval-flow-node__arrow\"></div>\n\n <div *ngIf=\"_isRoot && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-start-marker\"></div>\n\n <div *ngIf=\"_isFinal && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-end-marker\"></div>\n\n <ng-content></ng-content>\n</ng-container>\n\n<ng-template #overflowMenuButton>\n <!-- Actually just the fd-grid-item action button but with some hardcode to be used as menu trigger -->\n <button\n *ngIf=\"!node?.disableActions\"\n class=\"fdp-approval-flow-node__menu-button\"\n fd-button\n fdType=\"transparent\"\n tabindex=\"0\"\n glyph=\"overflow\"\n [title]=\"'platformApprovalFlow.nodeMenuButtonTitle' | fdTranslate\"\n fdCompact\n [fdMenuTrigger]=\"menu\"\n [disabled]=\"_isEditActionsAvailable\"\n (click)=\"$event.stopPropagation()\"\n ></button>\n</ng-template>\n\n<ng-template #nodeContent>\n <div class=\"fdp-approval-flow-node__info\">\n <div\n class=\"fdp-approval-flow-node__name\"\n [class.fdp-approval-flow-node__name--members-count]=\"node.approvers.length > 1\"\n [id]=\"approvalFlowNodeId\"\n >\n <ng-container *ngIf=\"node.approvers.length === 1; else multipleApprovers\">\n {{ node.approvers[0].name }}\n </ng-container>\n\n <ng-template #multipleApprovers>\n {{ 'platformApprovalFlow.nodeMembersCount' | fdTranslate : { count: node.approvers.length } }}\n </ng-template>\n </div>\n\n <div class=\"fdp-approval-flow-node__description\">\n <ng-container *ngIf=\"!node.variousTeams; else variousTeams\">\n {{\n node.approvers.length > 1\n ? node.description\n : node.approvers.length\n ? node.approvers[0].description\n : ''\n }}\n </ng-container>\n\n <ng-template #variousTeams> {{ 'platformApprovalFlow.nodeVariousTeams' | fdTranslate }} </ng-template>\n </div>\n\n <fdp-object-status [status]=\"_objectStatus\" [inverted]=\"true\">\n <ng-container *ngIf=\"approvalStatusTemplate; then userStatusTemplate; else defaultStatusTemplate\">\n </ng-container>\n\n <ng-container *ngIf=\"checkDueDate && _showDueDateWarning\">\n <ng-container *ngIf=\"_dueIn === dueDateThreshold\">\n {{ 'platformApprovalFlow.nodeStatusDueToday' | fdTranslate }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn < dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusDueInXDays' | fdTranslate : { count: dueDateThreshold - _dueIn }\n }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn > dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusXDaysOverdue'\n | fdTranslate : { count: _dueIn - dueDateThreshold }\n }}\n </ng-container>\n </ng-container>\n </fdp-object-status>\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBeforeAll && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before-all' }\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBefore && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAddButton &&\n meta?.canAddNodeAfter &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAfterAllAddButton &&\n meta?.canAddNodeAfterAll &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after-all' }\"></ng-container>\n</ng-container>\n\n<ng-template #addNodeButton let-placement=\"placement\">\n <button\n *ngIf=\"node.status !== 'approved'\"\n fd-button\n glyph=\"add\"\n [title]=\"'platformApprovalFlow.addNodeButtonTitle' | fdTranslate\"\n fdCompact\n class=\"fdp-approval-flow-node__add\"\n [class.fdp-approval-flow-node__add--blank]=\"this._blank\"\n [class.fdp-approval-flow-node__add--before]=\"\n !this._blank && (placement === 'before' || placement === 'before-all')\n \"\n [class.fdp-approval-flow-node__add--before-all]=\"!this._blank && placement === 'before-all'\"\n [class.fdp-approval-flow-node__add--after]=\"\n !this._blank && (placement === 'after' || placement === 'after-all')\n \"\n [class.fdp-approval-flow-node__add--after-all]=\"placement === 'after-all'\"\n [style.visibility]=\"dropZone.active ? 'hidden' : ''\"\n (click)=\"onAdd.emit(placement)\"\n ></button>\n\n <div\n #dropZone=\"fdp-approval-flow-drop-zone\"\n fdp-approval-flow-drop-zone\n [placement]=\"placement\"\n class=\"fdp-approval-flow-node__drop-zone\"\n [class.fdp-approval-flow-node__drop-zone--active]=\"dropZone.active\"\n [class.fdp-approval-flow-node__drop-zone--blank]=\"isNextNodeBlank\"\n [class.fdp-approval-flow-node__drop-zone--partial]=\"_dropZonePartial(placement)\"\n ></div>\n</ng-template>\n\n<ng-template #defaultStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container [ngSwitch]=\"node.status\">\n <ng-container *ngSwitchCase=\"'approved'\">{{\n 'platformApprovalFlow.statusApproved' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'rejected'\">{{\n 'platformApprovalFlow.statusRejected' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'in progress'\">{{\n 'platformApprovalFlow.statusInProgress' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'not started'\">{{\n 'platformApprovalFlow.statusNotStarted' | fdTranslate\n }}</ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #userStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container\n *ngIf=\"approvalStatusTemplate\"\n [ngTemplateOutlet]=\"approvalStatusTemplate\"\n [ngTemplateOutletContext]=\"{ node: node }\"\n >\n </ng-container>\n </ng-container>\n</ng-template>\n\n<fd-menu #menu fdContentDensity placement=\"bottom-end\" (isOpenChange)=\"_onMenuOpen()\">\n <li\n *ngIf=\"meta?.canAddNodeBefore && !this.node?.actionsConfig?.disableAddBefore\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('before')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversBefore' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddNodeAfter && !this.node?.actionsConfig?.disableAddAfter\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('after')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversAfter' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddParallel && !this.node?.actionsConfig?.disableAddParallel\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('parallel')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversParallel' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"_isNotStarted && !this.node?.actionsConfig?.disableEdit\"\n fd-menu-item\n (click)=\"menu.close(); onEdit.emit()\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionEditApprover' | fdTranslate }}</span>\n </div>\n </li>\n\n <li *ngIf=\"!this.node?.actionsConfig?.disableRemove\" fd-menu-item (click)=\"menu.close(); onDelete.emit()\">\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionRemove' | fdTranslate }}</span>\n </div>\n </li>\n</fd-menu>\n", styles: [".fdp-approval-flow-node{display:block;box-sizing:border-box;position:relative;width:17.375rem;height:5.875rem;margin-bottom:1rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode{height:7.875rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-after:after{top:-4.9375rem;height:8.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{content:\"\";display:block;position:absolute;top:-3.9375rem;height:6.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before{left:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before-solid:before{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{right:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after-solid:after{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-before:before{left:auto;right:-2.0625rem}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-after:after{right:auto;left:-2.0625rem}.fdp-approval-flow-node .fdp-approval-flow-node__add{position:absolute;z-index:10;margin:calc(3.4375rem - 1px) auto auto;inset:0;border-radius:100%;min-width:1rem;max-width:1rem;min-height:1rem;max-height:1rem}.fdp-approval-flow-node .fdp-approval-flow-node__add fd-icon{line-height:1rem;font-size:.7rem;font-weight:900}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before{left:-2.5rem;right:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-2.8rem}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after{right:-2.5rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-2.8rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone{border-radius:.25rem;position:absolute;height:100%;z-index:1}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--active{background:#e5f0fa;background:var(--sapList_SelectionBackgroundColor, #e5f0fa);border:.125rem solid #0854a0;border:.125rem solid var(--sapButton_IconColor, #0854a0)}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--blank{width:100%;top:0}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--partial{width:10%;left:0;top:0}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank{background:transparent;box-shadow:none;pointer-events:none;cursor:default}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:before{content:\"\";display:block;position:absolute;width:calc(100% + 4rem);height:0;left:-2rem;top:calc(50% - .0625rem);border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{width:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:not(.fdp-approval-flow-node--last-blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{width:100%}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{content:\"\";width:2rem;height:0;display:block;position:absolute;top:calc(50% - .0625rem);bottom:0;pointer-events:none;border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{right:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--blank:before{border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parent-approved.fdp-approval-flow-node--line-before:before{left:-2rem;border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode.fdp-approval-flow-node--blank{pointer-events:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-end-marker{top:3.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__arrow{display:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{right:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{right:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{left:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{left:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{left:19.875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{right:-12.6875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:calc(100% + 4rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{width:4rem;left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{width:4rem;right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__add,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-after{visibility:hidden}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name{font-size:1rem;line-height:1.25rem;margin-bottom:.1rem;color:#32363a;color:var(--sapTextColor, #32363a)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__description{font-size:.875rem;line-height:1rem;color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-bottom:.4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow{width:0;height:0;border-style:solid;border-width:.375rem 0 .375rem .5rem;border-color:transparent transparent transparent #d9d9d9;border-color:transparent transparent transparent var(--sapGroup_TitleBorderColor, #d9d9d9);position:absolute;left:-.5rem;top:0;bottom:0;margin:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{z-index:1;background:#d9d9d9;background:var(--sapGroup_TitleBorderColor, #d9d9d9);display:block;position:absolute;width:.25rem;height:1rem;top:2.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__arrow{left:auto;right:-.5rem;border-width:.375rem .5rem .375rem 0;border-color:transparent #d9d9d9 transparent transparent;border-color:transparent var(--sapGroup_TitleBorderColor, #d9d9d9) transparent transparent}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-before:before{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-after:after{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count{direction:ltr;text-align:right}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before{right:-2.5rem;left:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-2.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after{left:-2.5rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-2.8rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{left:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{left:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{right:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{right:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{right:19.875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:calc(100% + 2rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{left:-12.6875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:calc(100% + 4rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{left:0}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.ContentDensityDirective, selector: "[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])", inputs: ["fdContentDensity", "fdCompact", "fdCondensed", "fdCozy"], exportAs: ["fdContentDensity"] }, { kind: "component", type: i4.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i5.ObjectStatusComponent, selector: "fdp-object-status", inputs: ["status", "glyph", "indicationColor", "clickable", "inverted", "large", "label", "ariaLabel", "title"], outputs: ["objectStatusClick"] }, { kind: "component", type: i6.MenuComponent, selector: "fd-menu", inputs: ["mobile", "disabled", "focusTrapped", "focusAutoCapture", "tabbableScrollbar", "openOnHoverTime", "mobileConfig", "ariaLabel", "ariaLabelledby", "id"], outputs: ["activePath"] }, { kind: "component", type: i6.MenuItemComponent, selector: "li[fd-menu-item]", inputs: ["disabled", "itemId", "submenu", "parentSubmenu"], outputs: ["onSelect"], exportAs: ["fd-menu-item"] }, { kind: "directive", type: i6.MenuInteractiveDirective, selector: "[fd-menu-interactive]" }, { kind: "directive", type: i6.MenuTitleDirective, selector: "[fd-menu-title]" }, { kind: "directive", type: i6.MenuTriggerDirective, selector: "[fdMenuTrigger]", inputs: ["fdMenuTrigger"] }, { kind: "directive", type: i7.ApprovalFlowDropZoneDirective, selector: "[fdp-approval-flow-drop-zone]", inputs: ["placement"], exportAs: ["fdp-approval-flow-drop-zone"] }, { kind: "pipe", type: i8.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
234
234
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ApprovalFlowNodeComponent, decorators: [{
|
|
235
235
|
type: Component,
|
|
236
236
|
args: [{ selector: 'fdp-approval-flow-node', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
237
237
|
class: 'fdp-approval-flow-node',
|
|
238
238
|
'[class.fdp-approval-flow-node--first-root]': 'meta?.firstOfMultipleRootNodes',
|
|
239
239
|
'[class.fdp-approval-flow-node--first-final]': 'meta?.firstOfMultipleFinalNodes'
|
|
240
|
-
}, template: "<div\n *ngIf=\"meta?.renderVerticalLineBefore\"\n class=\"fdp-approval-flow-node__vertical-line-before\"\n [class.fdp-approval-flow-node__vertical-line-before-solid]=\"_isVerticalLineBeforeSolid\"\n></div>\n\n<div\n *ngIf=\"meta?.renderVerticalLineAfter\"\n class=\"fdp-approval-flow-node__vertical-line-after\"\n [class.fdp-approval-flow-node__vertical-line-after-solid]=\"_isVerticalLineAfterSolid\"\n></div>\n\n<ng-container *ngIf=\"!_blank && !_space\">\n <div *ngIf=\"renderArrow\" class=\"fdp-approval-flow-node__arrow\"></div>\n\n <div *ngIf=\"_isRoot && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-start-marker\"></div>\n\n <div *ngIf=\"_isFinal && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-end-marker\"></div>\n\n <ng-content></ng-content>\n</ng-container>\n\n<ng-template #overflowMenuButton>\n <!-- Actually just the fd-grid-item action button but with some hardcode to be used as menu trigger -->\n <button\n *ngIf=\"!node?.disableActions\"\n class=\"fdp-approval-flow-node__menu-button\"\n fd-button\n fdType=\"transparent\"\n tabindex=\"0\"\n glyph=\"overflow\"\n title=\"Menu\"\n fdCompact\n [fdMenuTrigger]=\"menu\"\n [disabled]=\"_isEditActionsAvailable\"\n (click)=\"$event.stopPropagation()\"\n ></button>\n</ng-template>\n\n<ng-template #nodeContent>\n <div class=\"fdp-approval-flow-node__info\">\n <div\n class=\"fdp-approval-flow-node__name\"\n [class.fdp-approval-flow-node__name--members-count]=\"node.approvers.length > 1\"\n [id]=\"approvalFlowNodeId\"\n >\n <ng-container *ngIf=\"node.approvers.length === 1; else multipleApprovers\">\n {{ node.approvers[0].name }}\n </ng-container>\n\n <ng-template #multipleApprovers>\n {{ 'platformApprovalFlow.nodeMembersCount' | fdTranslate : { count: node.approvers.length } }}\n </ng-template>\n </div>\n\n <div class=\"fdp-approval-flow-node__description\">\n <ng-container *ngIf=\"!node.variousTeams; else variousTeams\">\n {{\n node.approvers.length > 1\n ? node.description\n : node.approvers.length\n ? node.approvers[0].description\n : ''\n }}\n </ng-container>\n\n <ng-template #variousTeams> {{ 'platformApprovalFlow.nodeVariousTeams' | fdTranslate }} </ng-template>\n </div>\n\n <fdp-object-status [status]=\"_objectStatus\" [inverted]=\"true\">\n <ng-container *ngIf=\"approvalStatusTemplate; then userStatusTemplate; else defaultStatusTemplate\">\n </ng-container>\n\n <ng-container *ngIf=\"checkDueDate && _showDueDateWarning\">\n <ng-container *ngIf=\"_dueIn === dueDateThreshold\">\n {{ 'platformApprovalFlow.nodeStatusDueToday' | fdTranslate }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn < dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusDueInXDays' | fdTranslate : { count: dueDateThreshold - _dueIn }\n }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn > dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusXDaysOverdue'\n | fdTranslate : { count: _dueIn - dueDateThreshold }\n }}\n </ng-container>\n </ng-container>\n </fdp-object-status>\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBeforeAll && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before-all' }\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBefore && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAddButton &&\n meta?.canAddNodeAfter &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAfterAllAddButton &&\n meta?.canAddNodeAfterAll &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after-all' }\"></ng-container>\n</ng-container>\n\n<ng-template #addNodeButton let-placement=\"placement\">\n <button\n *ngIf=\"node.status !== 'approved'\"\n fd-button\n glyph=\"add\"\n title=\"Add node\"\n fdCompact\n class=\"fdp-approval-flow-node__add\"\n [class.fdp-approval-flow-node__add--blank]=\"this._blank\"\n [class.fdp-approval-flow-node__add--before]=\"\n !this._blank && (placement === 'before' || placement === 'before-all')\n \"\n [class.fdp-approval-flow-node__add--before-all]=\"!this._blank && placement === 'before-all'\"\n [class.fdp-approval-flow-node__add--after]=\"\n !this._blank && (placement === 'after' || placement === 'after-all')\n \"\n [class.fdp-approval-flow-node__add--after-all]=\"placement === 'after-all'\"\n [style.visibility]=\"dropZone.active ? 'hidden' : ''\"\n (click)=\"onAdd.emit(placement)\"\n ></button>\n\n <div\n #dropZone=\"fdp-approval-flow-drop-zone\"\n fdp-approval-flow-drop-zone\n [placement]=\"placement\"\n class=\"fdp-approval-flow-node__drop-zone\"\n [class.fdp-approval-flow-node__drop-zone--active]=\"dropZone.active\"\n [class.fdp-approval-flow-node__drop-zone--blank]=\"isNextNodeBlank\"\n [class.fdp-approval-flow-node__drop-zone--partial]=\"_dropZonePartial(placement)\"\n ></div>\n</ng-template>\n\n<ng-template #defaultStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container [ngSwitch]=\"node.status\">\n <ng-container *ngSwitchCase=\"'approved'\">{{\n 'platformApprovalFlow.statusApproved' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'rejected'\">{{\n 'platformApprovalFlow.statusRejected' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'in progress'\">{{\n 'platformApprovalFlow.statusInProgress' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'not started'\">{{\n 'platformApprovalFlow.statusNotStarted' | fdTranslate\n }}</ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #userStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container\n *ngIf=\"approvalStatusTemplate\"\n [ngTemplateOutlet]=\"approvalStatusTemplate\"\n [ngTemplateOutletContext]=\"{ node: node }\"\n >\n </ng-container>\n </ng-container>\n</ng-template>\n\n<fd-menu #menu fdContentDensity placement=\"bottom-end\" (isOpenChange)=\"_onMenuOpen()\">\n <li\n *ngIf=\"meta?.canAddNodeBefore && !this.node?.actionsConfig?.disableAddBefore\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('before')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversBefore' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddNodeAfter && !this.node?.actionsConfig?.disableAddAfter\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('after')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversAfter' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddParallel && !this.node?.actionsConfig?.disableAddParallel\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('parallel')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversParallel' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"_isNotStarted && !this.node?.actionsConfig?.disableEdit\"\n fd-menu-item\n (click)=\"menu.close(); onEdit.emit()\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionEditApprover' | fdTranslate }}</span>\n </div>\n </li>\n\n <li *ngIf=\"!this.node?.actionsConfig?.disableRemove\" fd-menu-item (click)=\"menu.close(); onDelete.emit()\">\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionRemove' | fdTranslate }}</span>\n </div>\n </li>\n</fd-menu>\n", styles: [".fdp-approval-flow-node{display:block;box-sizing:border-box;position:relative;width:17.375rem;height:5.875rem;margin-bottom:1rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode{height:7.875rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-after:after{top:-4.9375rem;height:8.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{content:\"\";display:block;position:absolute;top:-3.9375rem;height:6.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before{left:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before-solid:before{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{right:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after-solid:after{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-before:before{left:auto;right:-2.0625rem}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-after:after{right:auto;left:-2.0625rem}.fdp-approval-flow-node .fdp-approval-flow-node__add{position:absolute;z-index:10;margin:calc(3.4375rem - 1px) auto auto;inset:0;border-radius:100%;min-width:1rem;max-width:1rem;min-height:1rem;max-height:1rem}.fdp-approval-flow-node .fdp-approval-flow-node__add fd-icon{line-height:1rem;font-size:.7rem;font-weight:900}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before{left:-2.5rem;right:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-2.8rem}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after{right:-2.5rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-2.8rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone{border-radius:.25rem;position:absolute;height:100%;z-index:1}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--active{background:#e5f0fa;background:var(--sapList_SelectionBackgroundColor, #e5f0fa);border:.125rem solid #0854a0;border:.125rem solid var(--sapButton_IconColor, #0854a0)}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--blank{width:100%;top:0}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--partial{width:10%;left:0;top:0}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank{background:transparent;box-shadow:none;pointer-events:none;cursor:default}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:before{content:\"\";display:block;position:absolute;width:calc(100% + 4rem);height:0;left:-2rem;top:calc(50% - .0625rem);border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{width:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:not(.fdp-approval-flow-node--last-blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{width:100%}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{content:\"\";width:2rem;height:0;display:block;position:absolute;top:calc(50% - .0625rem);bottom:0;pointer-events:none;border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{right:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--blank:before{border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parent-approved.fdp-approval-flow-node--line-before:before{left:-2rem;border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode.fdp-approval-flow-node--blank{pointer-events:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-end-marker{top:3.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__arrow{display:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{right:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{right:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{left:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{left:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{left:19.875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{right:-12.6875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:calc(100% + 4rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{width:4rem;left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{width:4rem;right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__add,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-after{visibility:hidden}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name{font-size:1rem;line-height:1.25rem;margin-bottom:.1rem;color:#32363a;color:var(--sapTextColor, #32363a)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__description{font-size:.875rem;line-height:1rem;color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-bottom:.4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow{width:0;height:0;border-style:solid;border-width:.375rem 0 .375rem .5rem;border-color:transparent transparent transparent #d9d9d9;border-color:transparent transparent transparent var(--sapGroup_TitleBorderColor, #d9d9d9);position:absolute;left:-.5rem;top:0;bottom:0;margin:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{z-index:1;background:#d9d9d9;background:var(--sapGroup_TitleBorderColor, #d9d9d9);display:block;position:absolute;width:.25rem;height:1rem;top:2.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__arrow{left:auto;right:-.5rem;border-width:.375rem .5rem .375rem 0;border-color:transparent #d9d9d9 transparent transparent;border-color:transparent var(--sapGroup_TitleBorderColor, #d9d9d9) transparent transparent}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-before:before{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-after:after{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count{direction:ltr;text-align:right}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before{right:-2.5rem;left:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-2.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after{left:-2.5rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-2.8rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{left:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{left:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{right:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{right:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{right:19.875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:calc(100% + 2rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{left:-12.6875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:calc(100% + 4rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{left:0}\n"] }]
|
|
240
|
+
}, template: "<div\n *ngIf=\"meta?.renderVerticalLineBefore\"\n class=\"fdp-approval-flow-node__vertical-line-before\"\n [class.fdp-approval-flow-node__vertical-line-before-solid]=\"_isVerticalLineBeforeSolid\"\n></div>\n\n<div\n *ngIf=\"meta?.renderVerticalLineAfter\"\n class=\"fdp-approval-flow-node__vertical-line-after\"\n [class.fdp-approval-flow-node__vertical-line-after-solid]=\"_isVerticalLineAfterSolid\"\n></div>\n\n<ng-container *ngIf=\"!_blank && !_space\">\n <div *ngIf=\"renderArrow\" class=\"fdp-approval-flow-node__arrow\"></div>\n\n <div *ngIf=\"_isRoot && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-start-marker\"></div>\n\n <div *ngIf=\"_isFinal && meta?.nodeIndex === 0\" class=\"fdp-approval-flow-node__carousel-end-marker\"></div>\n\n <ng-content></ng-content>\n</ng-container>\n\n<ng-template #overflowMenuButton>\n <!-- Actually just the fd-grid-item action button but with some hardcode to be used as menu trigger -->\n <button\n *ngIf=\"!node?.disableActions\"\n class=\"fdp-approval-flow-node__menu-button\"\n fd-button\n fdType=\"transparent\"\n tabindex=\"0\"\n glyph=\"overflow\"\n [title]=\"'platformApprovalFlow.nodeMenuButtonTitle' | fdTranslate\"\n fdCompact\n [fdMenuTrigger]=\"menu\"\n [disabled]=\"_isEditActionsAvailable\"\n (click)=\"$event.stopPropagation()\"\n ></button>\n</ng-template>\n\n<ng-template #nodeContent>\n <div class=\"fdp-approval-flow-node__info\">\n <div\n class=\"fdp-approval-flow-node__name\"\n [class.fdp-approval-flow-node__name--members-count]=\"node.approvers.length > 1\"\n [id]=\"approvalFlowNodeId\"\n >\n <ng-container *ngIf=\"node.approvers.length === 1; else multipleApprovers\">\n {{ node.approvers[0].name }}\n </ng-container>\n\n <ng-template #multipleApprovers>\n {{ 'platformApprovalFlow.nodeMembersCount' | fdTranslate : { count: node.approvers.length } }}\n </ng-template>\n </div>\n\n <div class=\"fdp-approval-flow-node__description\">\n <ng-container *ngIf=\"!node.variousTeams; else variousTeams\">\n {{\n node.approvers.length > 1\n ? node.description\n : node.approvers.length\n ? node.approvers[0].description\n : ''\n }}\n </ng-container>\n\n <ng-template #variousTeams> {{ 'platformApprovalFlow.nodeVariousTeams' | fdTranslate }} </ng-template>\n </div>\n\n <fdp-object-status [status]=\"_objectStatus\" [inverted]=\"true\">\n <ng-container *ngIf=\"approvalStatusTemplate; then userStatusTemplate; else defaultStatusTemplate\">\n </ng-container>\n\n <ng-container *ngIf=\"checkDueDate && _showDueDateWarning\">\n <ng-container *ngIf=\"_dueIn === dueDateThreshold\">\n {{ 'platformApprovalFlow.nodeStatusDueToday' | fdTranslate }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn < dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusDueInXDays' | fdTranslate : { count: dueDateThreshold - _dueIn }\n }}\n </ng-container>\n\n <ng-container *ngIf=\"_dueIn > dueDateThreshold\">\n {{\n 'platformApprovalFlow.nodeStatusXDaysOverdue'\n | fdTranslate : { count: _dueIn - dueDateThreshold }\n }}\n </ng-container>\n </ng-container>\n </fdp-object-status>\n </div>\n</ng-template>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBeforeAll && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before-all' }\"></ng-container>\n</ng-container>\n\n<ng-container *ngIf=\"_showAddButton && meta?.canAddNodeBefore && !node?.actionsConfig?.disableAddBefore\">\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'before' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAddButton &&\n meta?.canAddNodeAfter &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after' }\"></ng-container>\n</ng-container>\n\n<ng-container\n *ngIf=\"\n _showAfterAllAddButton &&\n meta?.canAddNodeAfterAll &&\n meta?.renderAddNodeAfterButton &&\n !node?.actionsConfig?.disableAddAfter\n \"\n>\n <ng-container *ngTemplateOutlet=\"addNodeButton; context: { placement: 'after-all' }\"></ng-container>\n</ng-container>\n\n<ng-template #addNodeButton let-placement=\"placement\">\n <button\n *ngIf=\"node.status !== 'approved'\"\n fd-button\n glyph=\"add\"\n [title]=\"'platformApprovalFlow.addNodeButtonTitle' | fdTranslate\"\n fdCompact\n class=\"fdp-approval-flow-node__add\"\n [class.fdp-approval-flow-node__add--blank]=\"this._blank\"\n [class.fdp-approval-flow-node__add--before]=\"\n !this._blank && (placement === 'before' || placement === 'before-all')\n \"\n [class.fdp-approval-flow-node__add--before-all]=\"!this._blank && placement === 'before-all'\"\n [class.fdp-approval-flow-node__add--after]=\"\n !this._blank && (placement === 'after' || placement === 'after-all')\n \"\n [class.fdp-approval-flow-node__add--after-all]=\"placement === 'after-all'\"\n [style.visibility]=\"dropZone.active ? 'hidden' : ''\"\n (click)=\"onAdd.emit(placement)\"\n ></button>\n\n <div\n #dropZone=\"fdp-approval-flow-drop-zone\"\n fdp-approval-flow-drop-zone\n [placement]=\"placement\"\n class=\"fdp-approval-flow-node__drop-zone\"\n [class.fdp-approval-flow-node__drop-zone--active]=\"dropZone.active\"\n [class.fdp-approval-flow-node__drop-zone--blank]=\"isNextNodeBlank\"\n [class.fdp-approval-flow-node__drop-zone--partial]=\"_dropZonePartial(placement)\"\n ></div>\n</ng-template>\n\n<ng-template #defaultStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container [ngSwitch]=\"node.status\">\n <ng-container *ngSwitchCase=\"'approved'\">{{\n 'platformApprovalFlow.statusApproved' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'rejected'\">{{\n 'platformApprovalFlow.statusRejected' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'in progress'\">{{\n 'platformApprovalFlow.statusInProgress' | fdTranslate\n }}</ng-container>\n <ng-container *ngSwitchCase=\"'not started'\">{{\n 'platformApprovalFlow.statusNotStarted' | fdTranslate\n }}</ng-container>\n </ng-container>\n </ng-container>\n</ng-template>\n\n<ng-template #userStatusTemplate>\n <ng-container *ngIf=\"!checkDueDate || !_showDueDateWarning\">\n <ng-container\n *ngIf=\"approvalStatusTemplate\"\n [ngTemplateOutlet]=\"approvalStatusTemplate\"\n [ngTemplateOutletContext]=\"{ node: node }\"\n >\n </ng-container>\n </ng-container>\n</ng-template>\n\n<fd-menu #menu fdContentDensity placement=\"bottom-end\" (isOpenChange)=\"_onMenuOpen()\">\n <li\n *ngIf=\"meta?.canAddNodeBefore && !this.node?.actionsConfig?.disableAddBefore\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('before')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversBefore' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddNodeAfter && !this.node?.actionsConfig?.disableAddAfter\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('after')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversAfter' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"meta?.canAddParallel && !this.node?.actionsConfig?.disableAddParallel\"\n fd-menu-item\n (click)=\"menu.close(); onAdd.emit('parallel')\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title>{{ 'platformApprovalFlow.nodeActionAddApproversParallel' | fdTranslate }}</span>\n </div>\n </li>\n\n <li\n *ngIf=\"_isNotStarted && !this.node?.actionsConfig?.disableEdit\"\n fd-menu-item\n (click)=\"menu.close(); onEdit.emit()\"\n >\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionEditApprover' | fdTranslate }}</span>\n </div>\n </li>\n\n <li *ngIf=\"!this.node?.actionsConfig?.disableRemove\" fd-menu-item (click)=\"menu.close(); onDelete.emit()\">\n <div fd-menu-interactive>\n <span fd-menu-title> {{ 'platformApprovalFlow.nodeActionRemove' | fdTranslate }}</span>\n </div>\n </li>\n</fd-menu>\n", styles: [".fdp-approval-flow-node{display:block;box-sizing:border-box;position:relative;width:17.375rem;height:5.875rem;margin-bottom:1rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode{height:7.875rem}.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node.fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__vertical-line-after:after{top:-4.9375rem;height:8.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{content:\"\";display:block;position:absolute;top:-3.9375rem;height:6.875rem}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before{left:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before-solid:before{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after{right:-2.0625rem;border-right:.125rem dashed #d9d9d9;border-right:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after-solid:after{border-right:.125rem solid #d9d9d9;border-right:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-before:before,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-before:before{left:auto;right:-2.0625rem}[dir=rtl] .fdp-approval-flow-node .fdp-approval-flow-node__vertical-line-after:after,.fdp-approval-flow-node[dir=rtl] .fdp-approval-flow-node__vertical-line-after:after{right:auto;left:-2.0625rem}.fdp-approval-flow-node .fdp-approval-flow-node__add{position:absolute;z-index:10;margin:calc(3.4375rem - 1px) auto auto;inset:0;border-radius:100%;min-width:1rem;max-width:1rem;min-height:1rem;max-height:1rem}.fdp-approval-flow-node .fdp-approval-flow-node__add fd-icon{line-height:1rem;font-size:.7rem;font-weight:900}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before{left:-2.5rem;right:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-2.8rem}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after{right:-2.5rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__add.fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-2.8rem;left:auto}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone{border-radius:.25rem;position:absolute;height:100%;z-index:1}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--active{background:#e5f0fa;background:var(--sapList_SelectionBackgroundColor, #e5f0fa);border:.125rem solid #0854a0;border:.125rem solid var(--sapButton_IconColor, #0854a0)}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--blank{width:100%;top:0}.fdp-approval-flow-node .fdp-approval-flow-node__drop-zone.fdp-approval-flow-node__drop-zone--partial{width:10%;left:0;top:0}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank{background:transparent;box-shadow:none;pointer-events:none;cursor:default}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:before{content:\"\";display:block;position:absolute;width:calc(100% + 4rem);height:0;left:-2rem;top:calc(50% - .0625rem);border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{width:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank:not(.fdp-approval-flow-node--last-blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{width:100%}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{content:\"\";width:2rem;height:0;display:block;position:absolute;top:calc(50% - .0625rem);bottom:0;pointer-events:none;border-top:.125rem dashed #d9d9d9;border-top:.125rem dashed var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:url(\"data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' y='3' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='6' width='2' height='2' fill='%23C4C4C4'/%3E%3Crect x='3' width='2' height='2' fill='%23C4C4C4'/%3E%3C/svg%3E%0A\") 2 round}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after{right:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--approved.fdp-approval-flow-node--blank:before{border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parent-approved.fdp-approval-flow-node--line-before:before{left:-2rem;border-top:.125rem solid #d9d9d9;border-top:.125rem solid var(--sapGroup_TitleBorderColor, #d9d9d9);border-image:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode.fdp-approval-flow-node--blank{pointer-events:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__carousel-end-marker{top:3.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--edit-mode .fdp-approval-flow-node__arrow{display:none}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{right:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{right:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{left:-1.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{left:-1.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{left:-3.5rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{left:19.875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:calc(100% + 2rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{right:-12.6875rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:calc(100% + 4rem)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{width:4rem;left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{width:4rem;right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:-4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__add,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space).cdk-drag-dragging .fdp-approval-flow-node__vertical-line-after{visibility:hidden}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name{font-size:1rem;line-height:1.25rem;margin-bottom:.1rem;color:#32363a;color:var(--sapTextColor, #32363a)}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__description{font-size:.875rem;line-height:1rem;color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70);margin-bottom:.4rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow{width:0;height:0;border-style:solid;border-width:.375rem 0 .375rem .5rem;border-color:transparent transparent transparent #d9d9d9;border-color:transparent transparent transparent var(--sapGroup_TitleBorderColor, #d9d9d9);position:absolute;left:-.5rem;top:0;bottom:0;margin:auto}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{z-index:1;background:#d9d9d9;background:var(--sapGroup_TitleBorderColor, #d9d9d9);display:block;position:absolute;width:.25rem;height:1rem;top:2.4375rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker{left:-2rem}.fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker{right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__arrow,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__arrow{left:auto;right:-.5rem;border-width:.375rem .5rem .375rem 0;border-color:transparent #d9d9d9 transparent transparent;border-color:transparent var(--sapGroup_TitleBorderColor, #d9d9d9) transparent transparent}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-before:before{left:auto;right:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--line-after:after{right:auto;left:-2rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__name.fdp-approval-flow-node__name--members-count{direction:ltr;text-align:right}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before{right:-2.5rem;left:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-2.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after{left:-2.5rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space) .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl] .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-2.8rem;right:auto}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after{left:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{left:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all{left:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-in-parallel:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-start:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--final:not(.fdp-approval-flow-node--blank) .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{left:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before{right:-1.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before+.fdp-approval-flow-node__drop-zone{right:-1.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all{right:-3.5rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-in-parallel .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--parallel-end .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--root .fdp-approval-flow-node__add--before-all+.fdp-approval-flow-node__drop-zone{right:-3.8rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all{right:19.875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--last-blank .fdp-approval-flow-node__add--after-all+.fdp-approval-flow-node__drop-zone{right:calc(100% + 2rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after{left:-12.6875rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--next-blank .fdp-approval-flow-node__add--after+.fdp-approval-flow-node__drop-zone{right:calc(100% + 4rem)}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root.fdp-approval-flow-node--line-before:before{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-root .fdp-approval-flow-node__carousel-start-marker{left:auto;right:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final.fdp-approval-flow-node--line-after:after{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--first-final .fdp-approval-flow-node__carousel-end-marker{right:auto;left:-4rem}[dir=rtl] .fdp-approval-flow-node:not(.fdp-approval-flow-node--space).fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before,.fdp-approval-flow-node:not(.fdp-approval-flow-node--space)[dir=rtl].fdp-approval-flow-node--blank.fdp-approval-flow-node--first-final:before{left:0}\n"] }]
|
|
241
241
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.RtlService, decorators: [{
|
|
242
242
|
type: Optional
|
|
243
243
|
}] }]; }, propDecorators: { node: [{
|
|
@@ -336,4 +336,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
336
336
|
type: ContentChild,
|
|
337
337
|
args: [GridListItemComponent]
|
|
338
338
|
}] } });
|
|
339
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwcm92YWwtZmxvdy1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9hcHByb3ZhbC1mbG93L2FwcHJvdmFsLWZsb3ctbm9kZS9hcHByb3ZhbC1mbG93LW5vZGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2FwcHJvdmFsLWZsb3cvYXBwcm92YWwtZmxvdy1ub2RlL2FwcHJvdmFsLWZsb3ctbm9kZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFJTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7O0FBRTVELE1BQU0scUJBQXFCLEdBQUc7SUFDMUIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsUUFBUSxFQUFFLFVBQVU7SUFD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dUJBQUMscUNBQXFDO2dCQU85QyxNQUFNO3NCQURULFdBQVc7dUJBQUMscUNBQXFDO2dCQU85QyxPQUFPO3NCQURWLFdBQVc7dUJBQUMsb0NBQW9DO2dCQU83QyxRQUFRO3NCQURYLFdBQVc7dUJBQUMscUNBQXFDO2dCQU85QyxpQkFBaUI7c0JBRHBCLFdBQVc7dUJBQUMsMkNBQTJDO2dCQU9wRCxnQkFBZ0I7c0JBRG5CLFdBQVc7dUJBQUMsMENBQTBDO2dCQU9uRCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsd0NBQXdDO2dCQU9qRCxpQkFBaUI7c0JBRHBCLFdBQVc7dUJBQUMsK0NBQStDO2dCQVd4RCxlQUFlO3NCQURsQixXQUFXO3VCQUFDLHdDQUF3QztnQkFPakQsZ0JBQWdCO3NCQURuQixXQUFXO3VCQUFDLDhDQUE4QztnQkFPdkQsY0FBYztzQkFEakIsV0FBVzt1QkFBQyw0Q0FBNEM7Z0JBT3JELGtCQUFrQjtzQkFEckIsV0FBVzt1QkFBQyxpREFBaUQ7Z0JBTzFELGlCQUFpQjtzQkFEcEIsV0FBVzt1QkFBQyxnREFBZ0Q7Z0JBT3pELFVBQVU7c0JBRGIsV0FBVzt1QkFBQywwQ0FBMEM7O1FBcUJ2RCwrREFBK0Q7UUFDL0QsS0FBSztzQkFGSixNQUFNOztRQU1QLCtEQUErRDtRQUMvRCxNQUFNO3NCQUZMLE1BQU07O1FBTVAsK0RBQStEO1FBQy9ELFFBQVE7c0JBRlAsTUFBTTtnQkFNUCxLQUFLO3NCQURKLFNBQVM7dUJBQUMsYUFBYTtnQkFLeEIsbUJBQW1CO3NCQURsQixTQUFTO3VCQUFDLG9CQUFvQjtnQkFLL0IsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGFBQWE7Z0JBS3hCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyw2QkFBNkI7Z0JBSzNDLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21lbnUnO1xuaW1wb3J0IHsgT2JqZWN0U3RhdHVzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL29iamVjdC1zdGF0dXMnO1xuaW1wb3J0IHsgR3JpZExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2dyaWQtbGlzdCc7XG5cbmltcG9ydCB7IEFwcHJvdmFsRmxvd0Ryb3Bab25lRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHByb3ZhbC1mbG93LWRyb3Atem9uZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXBwcm92YWxHcmFwaE5vZGUsIEFwcHJvdmFsR3JhcGhOb2RlTWV0YWRhdGEsIEFwcHJvdmFsU3RhdHVzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBpc05vZGVBcHByb3ZlZCwgaXNOb2RlU3RhcnRlZCB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgQXBwcm92YWxGbG93Tm9kZVRhcmdldCB9IGZyb20gJy4uL2FwcHJvdmFsLWZsb3ctYWRkLW5vZGUvYXBwcm92YWwtZmxvdy1hZGQtbm9kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHJhbnNsYXRpb25SZXNvbHZlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5cbmNvbnN0IE5PREVfU1RBVFVTX0NMQVNTX01BUCA9IHtcbiAgICBhcHByb3ZlZDogJ3Bvc2l0aXZlJyxcbiAgICByZWplY3RlZDogJ25lZ2F0aXZlJyxcbiAgICAnaW4gcHJvZ3Jlc3MnOiAnaW5mb3JtYXRpdmUnLFxuICAgICdub3Qgc3RhcnRlZCc6ICcnXG59O1xuXG5jb25zdCBEQVlfSU5fTUlMTElTRUNPTkRTID0gMTAwMCAqIDYwICogNjAgKiAyNDtcblxubGV0IGRlZmF1bHRJZCA9IDA7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIEFwcHJvdmFsRmxvd05vZGUgY29tcG9uZW50IGlzIGRlcHJpY2F0ZWQgc2luY2UgdmVyc2lvbiAwLjQwLjBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZHAtYXBwcm92YWwtZmxvdy1ub2RlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXBwcm92YWwtZmxvdy1ub2RlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hcHByb3ZhbC1mbG93LW5vZGUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZHAtYXBwcm92YWwtZmxvdy1ub2RlJyxcbiAgICAgICAgJ1tjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1maXJzdC1yb290XSc6ICdtZXRhPy5maXJzdE9mTXVsdGlwbGVSb290Tm9kZXMnLFxuICAgICAgICAnW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWZpcnN0LWZpbmFsXSc6ICdtZXRhPy5maXJzdE9mTXVsdGlwbGVGaW5hbE5vZGVzJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgQXBwcm92YWxGbG93Tm9kZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIC8qKiBBcHByb3ZhbCBmbG93IGdyYXBoIG5vZGUgKi9cbiAgICBASW5wdXQoKSBub2RlOiBBcHByb3ZhbEdyYXBoTm9kZTtcblxuICAgIC8qKiBOb2RlIG1ldGFkYXRhICovXG4gICAgQElucHV0KCkgbWV0YTogQXBwcm92YWxHcmFwaE5vZGVNZXRhZGF0YTtcblxuICAgIC8qKiBXaGV0aGVyIG5vZGUgZWxlbWVudCBoYXMgYXJyb3cgb24gdGhlIGxlZnQgc2lkZSBwb2ludGluZyB0byB0aGUgbm9kZSAqL1xuICAgIEBJbnB1dCgpIHJlbmRlckFycm93ID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciB0byBkaXNwbGF5IGR1ZSBkYXRlIHdhcm5pbmcgaW4gc3RhdHVzICovXG4gICAgQElucHV0KCkgY2hlY2tEdWVEYXRlID0gZmFsc2U7XG5cbiAgICAvKiogTnVtYmVyIG9mIGRheXMgYmVmb3JlIGR1ZSBkYXRlIHdoZW4gc3RhdHVzIGNoYW5nZXMgdG8gYHdhcm5pbmdgIHdpdGggdGV4dCAnRHVlIGluIFggZGF5cycuXG4gICAgICogIE5vdCB1c2VkIGlmICdjaGVja0R1ZURhdGUnIGVxdWFscyBmYWxzZSAqL1xuICAgIEBJbnB1dCgpIGR1ZURhdGVUaHJlc2hvbGQgPSA3O1xuXG4gICAgLyoqIFdoZXRoZXIgbm9kZXMgaW4gY29sdW1uIGluIHdoaWNoIGN1cnJlbnQgbm9kZSBwbGFjZWQgYXJlIGFwcHJvdmVkXG4gICAgICogIFVzZWQgdG8gcmVuZGVyIGFwcHJvcHJpYXRlIHZlcnRpY2FsIGxpbmUgYWZ0ZXIgKGRhc2hlZC9zb2xpZClcbiAgICAgKi9cbiAgICBASW5wdXQoKSBhbGxOb2Rlc0luQ29sdW1uQXBwcm92ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBBIHJlZmVyZW5jZSB0byB0aGUgYXBwIGN1c3RvbSBzdGF0dXNlcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwcm92YWxTdGF0dXNUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKiBDdXN0b20gc3RhdHVzIHRvIGNvbG9yIG1hcHBpbmcgICovXG4gICAgQElucHV0KClcbiAgICBzdGF0dXNDb2xvck1hcHBpbmc6IFJlY29yZDxBcHByb3ZhbFN0YXR1cywgT2JqZWN0U3RhdHVzPjtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBub2RlIGlzIGluIGVkaXQgbW9kZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1lZGl0LW1vZGUnKVxuICAgIGlzRWRpdDogYm9vbGVhbjtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBub2RlIGFmdGVyIGlzIGJsYW5rICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLW5leHQtYmxhbmsnKVxuICAgIGlzTmV4dE5vZGVCbGFuazogYm9vbGVhbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1ibGFuaycpXG4gICAgZ2V0IF9ibGFuaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5ub2RlPy5ibGFuaztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tc3BhY2UnKVxuICAgIGdldCBfc3BhY2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMubm9kZT8uc3BhY2U7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLXJvb3QnKVxuICAgIGdldCBfaXNSb290KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tZXRhPy5pc1Jvb3Q7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWZpbmFsJylcbiAgICBnZXQgX2lzRmluYWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGE/LmlzRmluYWw7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWxpbmUtYmVmb3JlJylcbiAgICBnZXQgX3JlbmRlckxpbmVCZWZvcmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5ub2RlPy5ibGFuaztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tbGluZS1hZnRlcicpXG4gICAgZ2V0IF9yZW5kZXJMaW5lQWZ0ZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5ub2RlPy5ibGFuayB8fCB0aGlzLl9pc0ZpbmFsO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1hcHByb3ZlZCcpXG4gICAgZ2V0IF9pc0FwcHJvdmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlICYmIGlzTm9kZUFwcHJvdmVkKHRoaXMubm9kZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLXBhcmVudC1hcHByb3ZlZCcpXG4gICAgZ2V0IF9pc1BhcmVudEFwcHJvdmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMubWV0YT8ucGFyZW50cz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gISF0aGlzLm1ldGE/LnJvb3ROb2Rlc0FwcHJvdmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubWV0YS5wYXJlbnRzLmV2ZXJ5KChub2RlKSA9PiBpc05vZGVBcHByb3ZlZChub2RlKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLXNlbGVjdGVkJylcbiAgICBnZXQgX2lzTm9kZVNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0VkaXQgJiYgdGhpcy5faXNTZWxlY3RlZDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tcGFyYWxsZWwtc3RhcnQnKVxuICAgIGdldCBfaXNQYXJhbGxlbFN0YXJ0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLm1ldGE/LnBhcmFsbGVsU3RhcnQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1wYXJhbGxlbC1lbmQnKVxuICAgIGdldCBfaXNQYXJhbGxlbEVuZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5tZXRhPy5wYXJhbGxlbEVuZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWZpcnN0LWluLXBhcmFsbGVsJylcbiAgICBnZXQgX2lzRmlyc3RJblBhcmFsbGVsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLm1ldGE/LmlzRmlyc3RJblBhcmFsbGVsKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tbGFzdC1pbi1wYXJhbGxlbCcpXG4gICAgZ2V0IF9pc0xhc3RJblBhcmFsbGVsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLm1ldGE/LmlzTGFzdEluUGFyYWxsZWwpO1xuICAgIH1cblxuICAgIC8qKiBXaGV0aGVyIHRoZSBub2RlIGlzIGJsYW5rIGFuZCB0aGUgZmluYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWxhc3QtYmxhbmsnKVxuICAgIGdldCBfbGFzdEJsYW5rKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYmxhbmsgJiYgdGhpcy5ub2RlLnRhcmdldHMubGVuZ3RoID09PSAwO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9pc1NlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLm5vZGUuc2VsZWN0ZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb2JqZWN0U3RhdHVzOiBPYmplY3RTdGF0dXM7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zaG93RHVlRGF0ZVdhcm5pbmcgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2R1ZUluID0gMDtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIG9uIGFkZCBub2RlIGJ1dHRvbiBjbGlja2VkLCB2YWx1ZSBpcyB0aGUgcGxhY2VtZW50IGZvciB0aGUgbmV3IG5vZGUgKi9cbiAgICBAT3V0cHV0KClcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgICBvbkFkZCA9IG5ldyBFdmVudEVtaXR0ZXI8QXBwcm92YWxGbG93Tm9kZVRhcmdldD4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIG9uIGVkaXQgbm9kZSBidXR0b24gY2xpY2tlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIG9uRWRpdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIG9uIGRlbGV0ZSBub2RlIGJ1dHRvbiBjbGlja2VkICovXG4gICAgQE91dHB1dCgpXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtb24tcHJlZml4XG4gICAgb25EZWxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoTWVudUNvbXBvbmVudClcbiAgICBfbWVudTogTWVudUNvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnb3ZlcmZsb3dNZW51QnV0dG9uJylcbiAgICBfb3ZlcmZsb3dNZW51QnV0dG9uOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdub2RlQ29udGVudCcpXG4gICAgX25vZGVDb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKEFwcHJvdmFsRmxvd0Ryb3Bab25lRGlyZWN0aXZlKVxuICAgIF9kcm9wWm9uZXM6IFF1ZXJ5TGlzdDxBcHByb3ZhbEZsb3dEcm9wWm9uZURpcmVjdGl2ZT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoR3JpZExpc3RJdGVtQ29tcG9uZW50KVxuICAgIF9ncmlkTGlzdEl0ZW06IEdyaWRMaXN0SXRlbUNvbXBvbmVudDxBcHByb3ZhbEdyYXBoTm9kZT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IGFwcHJvdmFsRmxvd05vZGVJZCA9ICdmZHAtYXBwcm92YWwtZmxvdy1ub2RlLScgKyBkZWZhdWx0SWQrKztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRpb25SZXNvbHZlciA9IG5ldyBUcmFuc2xhdGlvblJlc29sdmVyKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9lbFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBfcnRsU2VydmljZTogUnRsU2VydmljZVxuICAgICkge31cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9uYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX2lzTm90U3RhcnRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICFpc05vZGVTdGFydGVkKHRoaXMubm9kZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX2lzRWRpdEFjdGlvbnNBdmFpbGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5vZGUuc3RhdHVzID09PSAnYXBwcm92ZWQnIHx8IHRoaXMubm9kZS5zdGF0dXMgPT09ICdyZWplY3RlZCc7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX2FjdGl2ZURyb3Bab25lcygpOiBBcHByb3ZhbEZsb3dEcm9wWm9uZURpcmVjdGl2ZVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Ryb3Bab25lcy5maWx0ZXIoKHopID0+IHouYWN0aXZlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBfaXNBbnlEcm9wWm9uZUFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZURyb3Bab25lcy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9pc1ZlcnRpY2FsTGluZUJlZm9yZVNvbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMubWV0YT8ucGFyZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiAhIXRoaXMubWV0YT8uaXNWZXJ0aWNhbExpbmVCZWZvcmVTb2xpZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLm1ldGEucGFyZW50cy5ldmVyeSgocGFyZW50Tm9kZSkgPT4gaXNOb2RlQXBwcm92ZWQocGFyZW50Tm9kZSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9pc1ZlcnRpY2FsTGluZUFmdGVyU29saWQoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5ub2RlPy50YXJnZXRzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuICEhdGhpcy5tZXRhPy5pc1ZlcnRpY2FsTGluZUFmdGVyU29saWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5faXNWZXJ0aWNhbExpbmVCZWZvcmVTb2xpZCAmJiB0aGlzLmFsbE5vZGVzSW5Db2x1bW5BcHByb3ZlZDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBfc2hvd0FkZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNFZGl0ICYmICF0aGlzLl9ibGFuayAmJiAhdGhpcy5fc3BhY2UgJiYgIXRoaXMubm9kZT8uZGlzYWJsZUFjdGlvbnM7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX3Nob3dBZnRlckFsbEFkZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNFZGl0ICYmICF0aGlzLl9zcGFjZSAmJiAhdGhpcy5ub2RlPy5kaXNhYmxlQWN0aW9ucztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9kcm9wWm9uZVBhcnRpYWwocGxhY2VtZW50OiBBcHByb3ZhbEZsb3dOb2RlVGFyZ2V0KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoIXRoaXMuX2JsYW5rICYmICghdGhpcy5pc05leHROb2RlQmxhbmsgfHwgcGxhY2VtZW50ID09PSAnYmVmb3JlJykpIHx8XG4gICAgICAgICAgICAodGhpcy5fbGFzdEJsYW5rICYmIHBsYWNlbWVudCA9PT0gJ2FmdGVyLWFsbCcpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hlY2tOb2RlU3RhdHVzKCk7XG5cbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQodGhpcy5fcnRsU2VydmljZT8ucnRsLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCkpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGVja05vZGVTdGF0dXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb25NZW51T3BlbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbWVudS5yZWZyZXNoUG9zaXRpb24oKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9mb2N1cyhvcHRpb25zPzogRm9jdXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2dyaWRMaXN0SXRlbT8uZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfZGVhY3RpdmF0ZURyb3Bab25lcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZHJvcFpvbmVzLmZvckVhY2goKGRyb3Bab25lKSA9PiAoZHJvcFpvbmUuYWN0aXZlID0gZmFsc2UpKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jaGVja0lmTm9kZURyYWdnZWRJbkRyb3Bab25lKG5vZGVSZWN0OiBET01SZWN0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Ryb3Bab25lcy5mb3JFYWNoKChkcm9wWm9uZSkgPT4gZHJvcFpvbmUuX2NoZWNrSWZOb2RlRHJhZ2dlZEluRHJvcFpvbmUobm9kZVJlY3QpKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NoZWNrTm9kZVN0YXR1cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm5vZGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNoZWNrRHVlRGF0ZSAmJiB0aGlzLm5vZGUuZHVlRGF0ZSkge1xuICAgICAgICAgICAgY29uc3QgZHVlVGhyZXNob2xkID0gTnVtYmVyKG5ldyBEYXRlKHRoaXMubm9kZS5kdWVEYXRlKSkgLSB0aGlzLmR1ZURhdGVUaHJlc2hvbGQgKiBEQVlfSU5fTUlMTElTRUNPTkRTO1xuICAgICAgICAgICAgY29uc3Qgbm93QW5kRHVlRGlmZiA9IERhdGUubm93KCkgLSBkdWVUaHJlc2hvbGQ7XG5cbiAgICAgICAgICAgIHRoaXMuX2R1ZUluID0gTWF0aC5yb3VuZChub3dBbmREdWVEaWZmIC8gREFZX0lOX01JTExJU0VDT05EUyk7XG4gICAgICAgICAgICB0aGlzLl9zaG93RHVlRGF0ZVdhcm5pbmcgPSAhaXNOb2RlQXBwcm92ZWQodGhpcy5ub2RlKSAmJiBkdWVUaHJlc2hvbGQgPCBEYXRlLm5vdygpO1xuICAgICAgICAgICAgdGhpcy5fb2JqZWN0U3RhdHVzID0gdGhpcy5fc2hvd0R1ZURhdGVXYXJuaW5nID8gJ2NyaXRpY2FsJyA6IHRoaXMuX2dldE5vZGVTdGF0dXNDbGFzcygpO1xuXG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9vYmplY3RTdGF0dXMgPSB0aGlzLl9nZXROb2RlU3RhdHVzQ2xhc3MoKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldE5vZGVTdGF0dXNDbGFzcygpOiBPYmplY3RTdGF0dXMge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5zdGF0dXNDb2xvck1hcHBpbmdcbiAgICAgICAgICAgICAgICA/IHRoaXMuc3RhdHVzQ29sb3JNYXBwaW5nW3RoaXMubm9kZS5zdGF0dXNdXG4gICAgICAgICAgICAgICAgOiBOT0RFX1NUQVRVU19DTEFTU19NQVBbdGhpcy5ub2RlLnN0YXR1c11cbiAgICAgICAgKSBhcyBPYmplY3RTdGF0dXM7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICpuZ0lmPVwibWV0YT8ucmVuZGVyVmVydGljYWxMaW5lQmVmb3JlXCJcbiAgICBjbGFzcz1cImZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX3ZlcnRpY2FsLWxpbmUtYmVmb3JlXCJcbiAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fdmVydGljYWwtbGluZS1iZWZvcmUtc29saWRdPVwiX2lzVmVydGljYWxMaW5lQmVmb3JlU29saWRcIlxuPjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nSWY9XCJtZXRhPy5yZW5kZXJWZXJ0aWNhbExpbmVBZnRlclwiXG4gICAgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX192ZXJ0aWNhbC1saW5lLWFmdGVyXCJcbiAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fdmVydGljYWwtbGluZS1hZnRlci1zb2xpZF09XCJfaXNWZXJ0aWNhbExpbmVBZnRlclNvbGlkXCJcbj48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFfYmxhbmsgJiYgIV9zcGFjZVwiPlxuICAgIDxkaXYgKm5nSWY9XCJyZW5kZXJBcnJvd1wiIGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYXJyb3dcIj48L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCJfaXNSb290ICYmIG1ldGE/Lm5vZGVJbmRleCA9PT0gMFwiIGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fY2Fyb3VzZWwtc3RhcnQtbWFya2VyXCI+PC9kaXY+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiX2lzRmluYWwgJiYgbWV0YT8ubm9kZUluZGV4ID09PSAwXCIgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX19jYXJvdXNlbC1lbmQtbWFya2VyXCI+PC9kaXY+XG5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNvdmVyZmxvd01lbnVCdXR0b24+XG4gICAgPCEtLSBBY3R1YWxseSBqdXN0IHRoZSBmZC1ncmlkLWl0ZW0gYWN0aW9uIGJ1dHRvbiBidXQgd2l0aCBzb21lIGhhcmRjb2RlIHRvIGJlIHVzZWQgYXMgbWVudSB0cmlnZ2VyIC0tPlxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhbm9kZT8uZGlzYWJsZUFjdGlvbnNcIlxuICAgICAgICBjbGFzcz1cImZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX21lbnUtYnV0dG9uXCJcbiAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgZ2x5cGg9XCJvdmVyZmxvd1wiXG4gICAgICAgIHRpdGxlPVwiTWVudVwiXG4gICAgICAgIGZkQ29tcGFjdFxuICAgICAgICBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIl9pc0VkaXRBY3Rpb25zQXZhaWxhYmxlXCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgPjwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNub2RlQ29udGVudD5cbiAgICA8ZGl2IGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9faW5mb1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX25hbWVcIlxuICAgICAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX25hbWUtLW1lbWJlcnMtY291bnRdPVwibm9kZS5hcHByb3ZlcnMubGVuZ3RoID4gMVwiXG4gICAgICAgICAgICBbaWRdPVwiYXBwcm92YWxGbG93Tm9kZUlkXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGUuYXBwcm92ZXJzLmxlbmd0aCA9PT0gMTsgZWxzZSBtdWx0aXBsZUFwcHJvdmVyc1wiPlxuICAgICAgICAgICAgICAgIHt7IG5vZGUuYXBwcm92ZXJzWzBdLm5hbWUgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI211bHRpcGxlQXBwcm92ZXJzPlxuICAgICAgICAgICAgICAgIHt7ICdwbGF0Zm9ybUFwcHJvdmFsRmxvdy5ub2RlTWVtYmVyc0NvdW50JyB8IGZkVHJhbnNsYXRlIDogeyBjb3VudDogbm9kZS5hcHByb3ZlcnMubGVuZ3RoIH0gfX1cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX19kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFub2RlLnZhcmlvdXNUZWFtczsgZWxzZSB2YXJpb3VzVGVhbXNcIj5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBub2RlLmFwcHJvdmVycy5sZW5ndGggPiAxXG4gICAgICAgICAgICAgICAgICAgICAgICA/IG5vZGUuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5hcHByb3ZlcnMubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICA/IG5vZGUuYXBwcm92ZXJzWzBdLmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICcnXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3ZhcmlvdXNUZWFtcz4ge3sgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVWYXJpb3VzVGVhbXMnIHwgZmRUcmFuc2xhdGUgfX0gPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGZkcC1vYmplY3Qtc3RhdHVzIFtzdGF0dXNdPVwiX29iamVjdFN0YXR1c1wiIFtpbnZlcnRlZF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXBwcm92YWxTdGF0dXNUZW1wbGF0ZTsgdGhlbiB1c2VyU3RhdHVzVGVtcGxhdGU7IGVsc2UgZGVmYXVsdFN0YXR1c1RlbXBsYXRlXCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNoZWNrRHVlRGF0ZSAmJiBfc2hvd0R1ZURhdGVXYXJuaW5nXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9kdWVJbiA9PT0gZHVlRGF0ZVRocmVzaG9sZFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZVN0YXR1c0R1ZVRvZGF5JyB8IGZkVHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2R1ZUluIDwgZHVlRGF0ZVRocmVzaG9sZFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVTdGF0dXNEdWVJblhEYXlzJyB8IGZkVHJhbnNsYXRlIDogeyBjb3VudDogZHVlRGF0ZVRocmVzaG9sZCAtIF9kdWVJbiB9XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2R1ZUluID4gZHVlRGF0ZVRocmVzaG9sZFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVTdGF0dXNYRGF5c092ZXJkdWUnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmZFRyYW5zbGF0ZSA6IHsgY291bnQ6IF9kdWVJbiAtIGR1ZURhdGVUaHJlc2hvbGQgfVxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZmRwLW9iamVjdC1zdGF0dXM+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiX3Nob3dBZGRCdXR0b24gJiYgbWV0YT8uY2FuQWRkTm9kZUJlZm9yZUFsbCAmJiAhbm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEJlZm9yZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGROb2RlQnV0dG9uOyBjb250ZXh0OiB7IHBsYWNlbWVudDogJ2JlZm9yZS1hbGwnIH1cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiX3Nob3dBZGRCdXR0b24gJiYgbWV0YT8uY2FuQWRkTm9kZUJlZm9yZSAmJiAhbm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEJlZm9yZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGROb2RlQnV0dG9uOyBjb250ZXh0OiB7IHBsYWNlbWVudDogJ2JlZm9yZScgfVwiPjwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy1jb250YWluZXJcbiAgICAqbmdJZj1cIlxuICAgICAgICBfc2hvd0FkZEJ1dHRvbiAmJlxuICAgICAgICBtZXRhPy5jYW5BZGROb2RlQWZ0ZXIgJiZcbiAgICAgICAgbWV0YT8ucmVuZGVyQWRkTm9kZUFmdGVyQnV0dG9uICYmXG4gICAgICAgICFub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlQWRkQWZ0ZXJcbiAgICBcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGROb2RlQnV0dG9uOyBjb250ZXh0OiB7IHBsYWNlbWVudDogJ2FmdGVyJyB9XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwiXG4gICAgICAgIF9zaG93QWZ0ZXJBbGxBZGRCdXR0b24gJiZcbiAgICAgICAgbWV0YT8uY2FuQWRkTm9kZUFmdGVyQWxsICYmXG4gICAgICAgIG1ldGE/LnJlbmRlckFkZE5vZGVBZnRlckJ1dHRvbiAmJlxuICAgICAgICAhbm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEFmdGVyXG4gICAgXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWRkTm9kZUJ1dHRvbjsgY29udGV4dDogeyBwbGFjZW1lbnQ6ICdhZnRlci1hbGwnIH1cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2FkZE5vZGVCdXR0b24gbGV0LXBsYWNlbWVudD1cInBsYWNlbWVudFwiPlxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJub2RlLnN0YXR1cyAhPT0gJ2FwcHJvdmVkJ1wiXG4gICAgICAgIGZkLWJ1dHRvblxuICAgICAgICBnbHlwaD1cImFkZFwiXG4gICAgICAgIHRpdGxlPVwiQWRkIG5vZGVcIlxuICAgICAgICBmZENvbXBhY3RcbiAgICAgICAgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX19hZGRcIlxuICAgICAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYWRkLS1ibGFua109XCJ0aGlzLl9ibGFua1wiXG4gICAgICAgIFtjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlX19hZGQtLWJlZm9yZV09XCJcbiAgICAgICAgICAgICF0aGlzLl9ibGFuayAmJiAocGxhY2VtZW50ID09PSAnYmVmb3JlJyB8fCBwbGFjZW1lbnQgPT09ICdiZWZvcmUtYWxsJylcbiAgICAgICAgXCJcbiAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX2FkZC0tYmVmb3JlLWFsbF09XCIhdGhpcy5fYmxhbmsgJiYgcGxhY2VtZW50ID09PSAnYmVmb3JlLWFsbCdcIlxuICAgICAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYWRkLS1hZnRlcl09XCJcbiAgICAgICAgICAgICF0aGlzLl9ibGFuayAmJiAocGxhY2VtZW50ID09PSAnYWZ0ZXInIHx8IHBsYWNlbWVudCA9PT0gJ2FmdGVyLWFsbCcpXG4gICAgICAgIFwiXG4gICAgICAgIFtjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlX19hZGQtLWFmdGVyLWFsbF09XCJwbGFjZW1lbnQgPT09ICdhZnRlci1hbGwnXCJcbiAgICAgICAgW3N0eWxlLnZpc2liaWxpdHldPVwiZHJvcFpvbmUuYWN0aXZlID8gJ2hpZGRlbicgOiAnJ1wiXG4gICAgICAgIChjbGljayk9XCJvbkFkZC5lbWl0KHBsYWNlbWVudClcIlxuICAgID48L2J1dHRvbj5cblxuICAgIDxkaXZcbiAgICAgICAgI2Ryb3Bab25lPVwiZmRwLWFwcHJvdmFsLWZsb3ctZHJvcC16b25lXCJcbiAgICAgICAgZmRwLWFwcHJvdmFsLWZsb3ctZHJvcC16b25lXG4gICAgICAgIFtwbGFjZW1lbnRdPVwicGxhY2VtZW50XCJcbiAgICAgICAgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX19kcm9wLXpvbmVcIlxuICAgICAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fZHJvcC16b25lLS1hY3RpdmVdPVwiZHJvcFpvbmUuYWN0aXZlXCJcbiAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX2Ryb3Atem9uZS0tYmxhbmtdPVwiaXNOZXh0Tm9kZUJsYW5rXCJcbiAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX2Ryb3Atem9uZS0tcGFydGlhbF09XCJfZHJvcFpvbmVQYXJ0aWFsKHBsYWNlbWVudClcIlxuICAgID48L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdFN0YXR1c1RlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY2hlY2tEdWVEYXRlIHx8ICFfc2hvd0R1ZURhdGVXYXJuaW5nXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cIm5vZGUuc3RhdHVzXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInYXBwcm92ZWQnXCI+e3tcbiAgICAgICAgICAgICAgICAncGxhdGZvcm1BcHByb3ZhbEZsb3cuc3RhdHVzQXBwcm92ZWQnIHwgZmRUcmFuc2xhdGVcbiAgICAgICAgICAgIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCIncmVqZWN0ZWQnXCI+e3tcbiAgICAgICAgICAgICAgICAncGxhdGZvcm1BcHByb3ZhbEZsb3cuc3RhdHVzUmVqZWN0ZWQnIHwgZmRUcmFuc2xhdGVcbiAgICAgICAgICAgIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW4gcHJvZ3Jlc3MnXCI+e3tcbiAgICAgICAgICAgICAgICAncGxhdGZvcm1BcHByb3ZhbEZsb3cuc3RhdHVzSW5Qcm9ncmVzcycgfCBmZFRyYW5zbGF0ZVxuICAgICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidub3Qgc3RhcnRlZCdcIj57e1xuICAgICAgICAgICAgICAgICdwbGF0Zm9ybUFwcHJvdmFsRmxvdy5zdGF0dXNOb3RTdGFydGVkJyB8IGZkVHJhbnNsYXRlXG4gICAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjdXNlclN0YXR1c1RlbXBsYXRlPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhY2hlY2tEdWVEYXRlIHx8ICFfc2hvd0R1ZURhdGVXYXJuaW5nXCI+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ0lmPVwiYXBwcm92YWxTdGF0dXNUZW1wbGF0ZVwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJhcHByb3ZhbFN0YXR1c1RlbXBsYXRlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IG5vZGU6IG5vZGUgfVwiXG4gICAgICAgID5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48ZmQtbWVudSAjbWVudSBmZENvbnRlbnREZW5zaXR5IHBsYWNlbWVudD1cImJvdHRvbS1lbmRcIiAoaXNPcGVuQ2hhbmdlKT1cIl9vbk1lbnVPcGVuKClcIj5cbiAgICA8bGlcbiAgICAgICAgKm5nSWY9XCJtZXRhPy5jYW5BZGROb2RlQmVmb3JlICYmICF0aGlzLm5vZGU/LmFjdGlvbnNDb25maWc/LmRpc2FibGVBZGRCZWZvcmVcIlxuICAgICAgICBmZC1tZW51LWl0ZW1cbiAgICAgICAgKGNsaWNrKT1cIm1lbnUuY2xvc2UoKTsgb25BZGQuZW1pdCgnYmVmb3JlJylcIlxuICAgID5cbiAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT57eyAncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZUFjdGlvbkFkZEFwcHJvdmVyc0JlZm9yZScgfCBmZFRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9saT5cblxuICAgIDxsaVxuICAgICAgICAqbmdJZj1cIm1ldGE/LmNhbkFkZE5vZGVBZnRlciAmJiAhdGhpcy5ub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlQWRkQWZ0ZXJcIlxuICAgICAgICBmZC1tZW51LWl0ZW1cbiAgICAgICAgKGNsaWNrKT1cIm1lbnUuY2xvc2UoKTsgb25BZGQuZW1pdCgnYWZ0ZXInKVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGZkLW1lbnUtaW50ZXJhY3RpdmU+XG4gICAgICAgICAgICA8c3BhbiBmZC1tZW51LXRpdGxlPnt7ICdwbGF0Zm9ybUFwcHJvdmFsRmxvdy5ub2RlQWN0aW9uQWRkQXBwcm92ZXJzQWZ0ZXInIHwgZmRUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG5cbiAgICA8bGlcbiAgICAgICAgKm5nSWY9XCJtZXRhPy5jYW5BZGRQYXJhbGxlbCAmJiAhdGhpcy5ub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlQWRkUGFyYWxsZWxcIlxuICAgICAgICBmZC1tZW51LWl0ZW1cbiAgICAgICAgKGNsaWNrKT1cIm1lbnUuY2xvc2UoKTsgb25BZGQuZW1pdCgncGFyYWxsZWwnKVwiXG4gICAgPlxuICAgICAgICA8ZGl2IGZkLW1lbnUtaW50ZXJhY3RpdmU+XG4gICAgICAgICAgICA8c3BhbiBmZC1tZW51LXRpdGxlPnt7ICdwbGF0Zm9ybUFwcHJvdmFsRmxvdy5ub2RlQWN0aW9uQWRkQXBwcm92ZXJzUGFyYWxsZWwnIHwgZmRUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG5cbiAgICA8bGlcbiAgICAgICAgKm5nSWY9XCJfaXNOb3RTdGFydGVkICYmICF0aGlzLm5vZGU/LmFjdGlvbnNDb25maWc/LmRpc2FibGVFZGl0XCJcbiAgICAgICAgZmQtbWVudS1pdGVtXG4gICAgICAgIChjbGljayk9XCJtZW51LmNsb3NlKCk7IG9uRWRpdC5lbWl0KClcIlxuICAgID5cbiAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT4ge3sgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVBY3Rpb25FZGl0QXBwcm92ZXInIHwgZmRUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG5cbiAgICA8bGkgKm5nSWY9XCIhdGhpcy5ub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlUmVtb3ZlXCIgZmQtbWVudS1pdGVtIChjbGljayk9XCJtZW51LmNsb3NlKCk7IG9uRGVsZXRlLmVtaXQoKVwiPlxuICAgICAgICA8ZGl2IGZkLW1lbnUtaW50ZXJhY3RpdmU+XG4gICAgICAgICAgICA8c3BhbiBmZC1tZW51LXRpdGxlPiB7eyAncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZUFjdGlvblJlbW92ZScgfCBmZFRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9saT5cbjwvZmQtbWVudT5cbiJdfQ==
|
|
339
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwcm92YWwtZmxvdy1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9hcHByb3ZhbC1mbG93L2FwcHJvdmFsLWZsb3ctbm9kZS9hcHByb3ZhbC1mbG93LW5vZGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9zcmMvbGliL2FwcHJvdmFsLWZsb3cvYXBwcm92YWwtZmxvdy1ub2RlL2FwcHJvdmFsLWZsb3ctbm9kZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFJTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTNELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXBGLE9BQU8sRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBRTNELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7Ozs7O0FBRTVELE1BQU0scUJBQXFCLEdBQUc7SUFDMUIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsUUFBUSxFQUFFLFVBQVU7SUFD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dUJBQUMscUNBQXFDO2dCQU85QyxNQUFNO3NCQURULFdBQVc7dUJBQUMscUNBQXFDO2dCQU85QyxPQUFPO3NCQURWLFdBQVc7dUJBQUMsb0NBQW9DO2dCQU83QyxRQUFRO3NCQURYLFdBQVc7dUJBQUMscUNBQXFDO2dCQU85QyxpQkFBaUI7c0JBRHBCLFdBQVc7dUJBQUMsMkNBQTJDO2dCQU9wRCxnQkFBZ0I7c0JBRG5CLFdBQVc7dUJBQUMsMENBQTBDO2dCQU9uRCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsd0NBQXdDO2dCQU9qRCxpQkFBaUI7c0JBRHBCLFdBQVc7dUJBQUMsK0NBQStDO2dCQVd4RCxlQUFlO3NCQURsQixXQUFXO3VCQUFDLHdDQUF3QztnQkFPakQsZ0JBQWdCO3NCQURuQixXQUFXO3VCQUFDLDhDQUE4QztnQkFPdkQsY0FBYztzQkFEakIsV0FBVzt1QkFBQyw0Q0FBNEM7Z0JBT3JELGtCQUFrQjtzQkFEckIsV0FBVzt1QkFBQyxpREFBaUQ7Z0JBTzFELGlCQUFpQjtzQkFEcEIsV0FBVzt1QkFBQyxnREFBZ0Q7Z0JBT3pELFVBQVU7c0JBRGIsV0FBVzt1QkFBQywwQ0FBMEM7O1FBcUJ2RCwrREFBK0Q7UUFDL0QsS0FBSztzQkFGSixNQUFNOztRQU1QLCtEQUErRDtRQUMvRCxNQUFNO3NCQUZMLE1BQU07O1FBTVAsK0RBQStEO1FBQy9ELFFBQVE7c0JBRlAsTUFBTTtnQkFNUCxLQUFLO3NCQURKLFNBQVM7dUJBQUMsYUFBYTtnQkFLeEIsbUJBQW1CO3NCQURsQixTQUFTO3VCQUFDLG9CQUFvQjtnQkFLL0IsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGFBQWE7Z0JBS3hCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyw2QkFBNkI7Z0JBSzNDLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBNZW51Q29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL21lbnUnO1xuaW1wb3J0IHsgT2JqZWN0U3RhdHVzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL29iamVjdC1zdGF0dXMnO1xuaW1wb3J0IHsgR3JpZExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2dyaWQtbGlzdCc7XG5cbmltcG9ydCB7IEFwcHJvdmFsRmxvd0Ryb3Bab25lRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHByb3ZhbC1mbG93LWRyb3Atem9uZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQXBwcm92YWxHcmFwaE5vZGUsIEFwcHJvdmFsR3JhcGhOb2RlTWV0YWRhdGEsIEFwcHJvdmFsU3RhdHVzIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBpc05vZGVBcHByb3ZlZCwgaXNOb2RlU3RhcnRlZCB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IHsgQXBwcm92YWxGbG93Tm9kZVRhcmdldCB9IGZyb20gJy4uL2FwcHJvdmFsLWZsb3ctYWRkLW5vZGUvYXBwcm92YWwtZmxvdy1hZGQtbm9kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHJhbnNsYXRpb25SZXNvbHZlciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5cbmNvbnN0IE5PREVfU1RBVFVTX0NMQVNTX01BUCA9IHtcbiAgICBhcHByb3ZlZDogJ3Bvc2l0aXZlJyxcbiAgICByZWplY3RlZDogJ25lZ2F0aXZlJyxcbiAgICAnaW4gcHJvZ3Jlc3MnOiAnaW5mb3JtYXRpdmUnLFxuICAgICdub3Qgc3RhcnRlZCc6ICcnXG59O1xuXG5jb25zdCBEQVlfSU5fTUlMTElTRUNPTkRTID0gMTAwMCAqIDYwICogNjAgKiAyNDtcblxubGV0IGRlZmF1bHRJZCA9IDA7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqIEFwcHJvdmFsRmxvd05vZGUgY29tcG9uZW50IGlzIGRlcHJpY2F0ZWQgc2luY2UgdmVyc2lvbiAwLjQwLjBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZHAtYXBwcm92YWwtZmxvdy1ub2RlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYXBwcm92YWwtZmxvdy1ub2RlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hcHByb3ZhbC1mbG93LW5vZGUuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZHAtYXBwcm92YWwtZmxvdy1ub2RlJyxcbiAgICAgICAgJ1tjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1maXJzdC1yb290XSc6ICdtZXRhPy5maXJzdE9mTXVsdGlwbGVSb290Tm9kZXMnLFxuICAgICAgICAnW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWZpcnN0LWZpbmFsXSc6ICdtZXRhPy5maXJzdE9mTXVsdGlwbGVGaW5hbE5vZGVzJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgQXBwcm92YWxGbG93Tm9kZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xuICAgIC8qKiBBcHByb3ZhbCBmbG93IGdyYXBoIG5vZGUgKi9cbiAgICBASW5wdXQoKSBub2RlOiBBcHByb3ZhbEdyYXBoTm9kZTtcblxuICAgIC8qKiBOb2RlIG1ldGFkYXRhICovXG4gICAgQElucHV0KCkgbWV0YTogQXBwcm92YWxHcmFwaE5vZGVNZXRhZGF0YTtcblxuICAgIC8qKiBXaGV0aGVyIG5vZGUgZWxlbWVudCBoYXMgYXJyb3cgb24gdGhlIGxlZnQgc2lkZSBwb2ludGluZyB0byB0aGUgbm9kZSAqL1xuICAgIEBJbnB1dCgpIHJlbmRlckFycm93ID0gZmFsc2U7XG5cbiAgICAvKiogV2hldGhlciB0byBkaXNwbGF5IGR1ZSBkYXRlIHdhcm5pbmcgaW4gc3RhdHVzICovXG4gICAgQElucHV0KCkgY2hlY2tEdWVEYXRlID0gZmFsc2U7XG5cbiAgICAvKiogTnVtYmVyIG9mIGRheXMgYmVmb3JlIGR1ZSBkYXRlIHdoZW4gc3RhdHVzIGNoYW5nZXMgdG8gYHdhcm5pbmdgIHdpdGggdGV4dCAnRHVlIGluIFggZGF5cycuXG4gICAgICogIE5vdCB1c2VkIGlmICdjaGVja0R1ZURhdGUnIGVxdWFscyBmYWxzZSAqL1xuICAgIEBJbnB1dCgpIGR1ZURhdGVUaHJlc2hvbGQgPSA3O1xuXG4gICAgLyoqIFdoZXRoZXIgbm9kZXMgaW4gY29sdW1uIGluIHdoaWNoIGN1cnJlbnQgbm9kZSBwbGFjZWQgYXJlIGFwcHJvdmVkXG4gICAgICogIFVzZWQgdG8gcmVuZGVyIGFwcHJvcHJpYXRlIHZlcnRpY2FsIGxpbmUgYWZ0ZXIgKGRhc2hlZC9zb2xpZClcbiAgICAgKi9cbiAgICBASW5wdXQoKSBhbGxOb2Rlc0luQ29sdW1uQXBwcm92ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBBIHJlZmVyZW5jZSB0byB0aGUgYXBwIGN1c3RvbSBzdGF0dXNlcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXBwcm92YWxTdGF0dXNUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIC8qKiBDdXN0b20gc3RhdHVzIHRvIGNvbG9yIG1hcHBpbmcgICovXG4gICAgQElucHV0KClcbiAgICBzdGF0dXNDb2xvck1hcHBpbmc6IFJlY29yZDxBcHByb3ZhbFN0YXR1cywgT2JqZWN0U3RhdHVzPjtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBub2RlIGlzIGluIGVkaXQgbW9kZSAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1lZGl0LW1vZGUnKVxuICAgIGlzRWRpdDogYm9vbGVhbjtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBub2RlIGFmdGVyIGlzIGJsYW5rICovXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLW5leHQtYmxhbmsnKVxuICAgIGlzTmV4dE5vZGVCbGFuazogYm9vbGVhbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1ibGFuaycpXG4gICAgZ2V0IF9ibGFuaygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5ub2RlPy5ibGFuaztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tc3BhY2UnKVxuICAgIGdldCBfc3BhY2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMubm9kZT8uc3BhY2U7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLXJvb3QnKVxuICAgIGdldCBfaXNSb290KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5tZXRhPy5pc1Jvb3Q7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWZpbmFsJylcbiAgICBnZXQgX2lzRmluYWwoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGE/LmlzRmluYWw7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWxpbmUtYmVmb3JlJylcbiAgICBnZXQgX3JlbmRlckxpbmVCZWZvcmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5ub2RlPy5ibGFuaztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tbGluZS1hZnRlcicpXG4gICAgZ2V0IF9yZW5kZXJMaW5lQWZ0ZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5ub2RlPy5ibGFuayB8fCB0aGlzLl9pc0ZpbmFsO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1hcHByb3ZlZCcpXG4gICAgZ2V0IF9pc0FwcHJvdmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlICYmIGlzTm9kZUFwcHJvdmVkKHRoaXMubm9kZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLXBhcmVudC1hcHByb3ZlZCcpXG4gICAgZ2V0IF9pc1BhcmVudEFwcHJvdmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMubWV0YT8ucGFyZW50cz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gISF0aGlzLm1ldGE/LnJvb3ROb2Rlc0FwcHJvdmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMubWV0YS5wYXJlbnRzLmV2ZXJ5KChub2RlKSA9PiBpc05vZGVBcHByb3ZlZChub2RlKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLXNlbGVjdGVkJylcbiAgICBnZXQgX2lzTm9kZVNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0VkaXQgJiYgdGhpcy5faXNTZWxlY3RlZDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tcGFyYWxsZWwtc3RhcnQnKVxuICAgIGdldCBfaXNQYXJhbGxlbFN0YXJ0KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLm1ldGE/LnBhcmFsbGVsU3RhcnQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlLS1wYXJhbGxlbC1lbmQnKVxuICAgIGdldCBfaXNQYXJhbGxlbEVuZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4odGhpcy5tZXRhPy5wYXJhbGxlbEVuZCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWZpcnN0LWluLXBhcmFsbGVsJylcbiAgICBnZXQgX2lzRmlyc3RJblBhcmFsbGVsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLm1ldGE/LmlzRmlyc3RJblBhcmFsbGVsKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZS0tbGFzdC1pbi1wYXJhbGxlbCcpXG4gICAgZ2V0IF9pc0xhc3RJblBhcmFsbGVsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gQm9vbGVhbih0aGlzLm1ldGE/LmlzTGFzdEluUGFyYWxsZWwpO1xuICAgIH1cblxuICAgIC8qKiBXaGV0aGVyIHRoZSBub2RlIGlzIGJsYW5rIGFuZCB0aGUgZmluYWwgKi9cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGUtLWxhc3QtYmxhbmsnKVxuICAgIGdldCBfbGFzdEJsYW5rKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYmxhbmsgJiYgdGhpcy5ub2RlLnRhcmdldHMubGVuZ3RoID09PSAwO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9pc1NlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLm5vZGUuc2VsZWN0ZWQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb2JqZWN0U3RhdHVzOiBPYmplY3RTdGF0dXM7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zaG93RHVlRGF0ZVdhcm5pbmcgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2R1ZUluID0gMDtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIG9uIGFkZCBub2RlIGJ1dHRvbiBjbGlja2VkLCB2YWx1ZSBpcyB0aGUgcGxhY2VtZW50IGZvciB0aGUgbmV3IG5vZGUgKi9cbiAgICBAT3V0cHV0KClcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1vbi1wcmVmaXhcbiAgICBvbkFkZCA9IG5ldyBFdmVudEVtaXR0ZXI8QXBwcm92YWxGbG93Tm9kZVRhcmdldD4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIG9uIGVkaXQgbm9kZSBidXR0b24gY2xpY2tlZCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW9uLXByZWZpeFxuICAgIG9uRWRpdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIG9uIGRlbGV0ZSBub2RlIGJ1dHRvbiBjbGlja2VkICovXG4gICAgQE91dHB1dCgpXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtb24tcHJlZml4XG4gICAgb25EZWxldGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoTWVudUNvbXBvbmVudClcbiAgICBfbWVudTogTWVudUNvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnb3ZlcmZsb3dNZW51QnV0dG9uJylcbiAgICBfb3ZlcmZsb3dNZW51QnV0dG9uOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdub2RlQ29udGVudCcpXG4gICAgX25vZGVDb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkcmVuKEFwcHJvdmFsRmxvd0Ryb3Bab25lRGlyZWN0aXZlKVxuICAgIF9kcm9wWm9uZXM6IFF1ZXJ5TGlzdDxBcHByb3ZhbEZsb3dEcm9wWm9uZURpcmVjdGl2ZT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoR3JpZExpc3RJdGVtQ29tcG9uZW50KVxuICAgIF9ncmlkTGlzdEl0ZW06IEdyaWRMaXN0SXRlbUNvbXBvbmVudDxBcHByb3ZhbEdyYXBoTm9kZT47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IGFwcHJvdmFsRmxvd05vZGVJZCA9ICdmZHAtYXBwcm92YWwtZmxvdy1ub2RlLScgKyBkZWZhdWx0SWQrKztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJhbnNsYXRpb25SZXNvbHZlciA9IG5ldyBUcmFuc2xhdGlvblJlc29sdmVyKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9lbFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBfcnRsU2VydmljZTogUnRsU2VydmljZVxuICAgICkge31cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9uYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX2lzTm90U3RhcnRlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICFpc05vZGVTdGFydGVkKHRoaXMubm9kZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX2lzRWRpdEFjdGlvbnNBdmFpbGFibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLm5vZGUuc3RhdHVzID09PSAnYXBwcm92ZWQnIHx8IHRoaXMubm9kZS5zdGF0dXMgPT09ICdyZWplY3RlZCc7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX2FjdGl2ZURyb3Bab25lcygpOiBBcHByb3ZhbEZsb3dEcm9wWm9uZURpcmVjdGl2ZVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Ryb3Bab25lcy5maWx0ZXIoKHopID0+IHouYWN0aXZlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBfaXNBbnlEcm9wWm9uZUFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl2ZURyb3Bab25lcy5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9pc1ZlcnRpY2FsTGluZUJlZm9yZVNvbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMubWV0YT8ucGFyZW50cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiAhIXRoaXMubWV0YT8uaXNWZXJ0aWNhbExpbmVCZWZvcmVTb2xpZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLm1ldGEucGFyZW50cy5ldmVyeSgocGFyZW50Tm9kZSkgPT4gaXNOb2RlQXBwcm92ZWQocGFyZW50Tm9kZSkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0IF9pc1ZlcnRpY2FsTGluZUFmdGVyU29saWQoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5ub2RlPy50YXJnZXRzLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuICEhdGhpcy5tZXRhPy5pc1ZlcnRpY2FsTGluZUFmdGVyU29saWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5faXNWZXJ0aWNhbExpbmVCZWZvcmVTb2xpZCAmJiB0aGlzLmFsbE5vZGVzSW5Db2x1bW5BcHByb3ZlZDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGdldCBfc2hvd0FkZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNFZGl0ICYmICF0aGlzLl9ibGFuayAmJiAhdGhpcy5fc3BhY2UgJiYgIXRoaXMubm9kZT8uZGlzYWJsZUFjdGlvbnM7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXQgX3Nob3dBZnRlckFsbEFkZEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNFZGl0ICYmICF0aGlzLl9zcGFjZSAmJiAhdGhpcy5ub2RlPy5kaXNhYmxlQWN0aW9ucztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9kcm9wWm9uZVBhcnRpYWwocGxhY2VtZW50OiBBcHByb3ZhbEZsb3dOb2RlVGFyZ2V0KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAoIXRoaXMuX2JsYW5rICYmICghdGhpcy5pc05leHROb2RlQmxhbmsgfHwgcGxhY2VtZW50ID09PSAnYmVmb3JlJykpIHx8XG4gICAgICAgICAgICAodGhpcy5fbGFzdEJsYW5rICYmIHBsYWNlbWVudCA9PT0gJ2FmdGVyLWFsbCcpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fY2hlY2tOb2RlU3RhdHVzKCk7XG5cbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQodGhpcy5fcnRsU2VydmljZT8ucnRsLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCkpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9jaGVja05vZGVTdGF0dXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb25NZW51T3BlbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbWVudS5yZWZyZXNoUG9zaXRpb24oKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9mb2N1cyhvcHRpb25zPzogRm9jdXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2dyaWRMaXN0SXRlbT8uZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfZGVhY3RpdmF0ZURyb3Bab25lcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZHJvcFpvbmVzLmZvckVhY2goKGRyb3Bab25lKSA9PiAoZHJvcFpvbmUuYWN0aXZlID0gZmFsc2UpKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jaGVja0lmTm9kZURyYWdnZWRJbkRyb3Bab25lKG5vZGVSZWN0OiBET01SZWN0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Ryb3Bab25lcy5mb3JFYWNoKChkcm9wWm9uZSkgPT4gZHJvcFpvbmUuX2NoZWNrSWZOb2RlRHJhZ2dlZEluRHJvcFpvbmUobm9kZVJlY3QpKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NoZWNrTm9kZVN0YXR1cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLm5vZGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNoZWNrRHVlRGF0ZSAmJiB0aGlzLm5vZGUuZHVlRGF0ZSkge1xuICAgICAgICAgICAgY29uc3QgZHVlVGhyZXNob2xkID0gTnVtYmVyKG5ldyBEYXRlKHRoaXMubm9kZS5kdWVEYXRlKSkgLSB0aGlzLmR1ZURhdGVUaHJlc2hvbGQgKiBEQVlfSU5fTUlMTElTRUNPTkRTO1xuICAgICAgICAgICAgY29uc3Qgbm93QW5kRHVlRGlmZiA9IERhdGUubm93KCkgLSBkdWVUaHJlc2hvbGQ7XG5cbiAgICAgICAgICAgIHRoaXMuX2R1ZUluID0gTWF0aC5yb3VuZChub3dBbmREdWVEaWZmIC8gREFZX0lOX01JTExJU0VDT05EUyk7XG4gICAgICAgICAgICB0aGlzLl9zaG93RHVlRGF0ZVdhcm5pbmcgPSAhaXNOb2RlQXBwcm92ZWQodGhpcy5ub2RlKSAmJiBkdWVUaHJlc2hvbGQgPCBEYXRlLm5vdygpO1xuICAgICAgICAgICAgdGhpcy5fb2JqZWN0U3RhdHVzID0gdGhpcy5fc2hvd0R1ZURhdGVXYXJuaW5nID8gJ2NyaXRpY2FsJyA6IHRoaXMuX2dldE5vZGVTdGF0dXNDbGFzcygpO1xuXG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9vYmplY3RTdGF0dXMgPSB0aGlzLl9nZXROb2RlU3RhdHVzQ2xhc3MoKTtcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldE5vZGVTdGF0dXNDbGFzcygpOiBPYmplY3RTdGF0dXMge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgdGhpcy5zdGF0dXNDb2xvck1hcHBpbmdcbiAgICAgICAgICAgICAgICA/IHRoaXMuc3RhdHVzQ29sb3JNYXBwaW5nW3RoaXMubm9kZS5zdGF0dXNdXG4gICAgICAgICAgICAgICAgOiBOT0RFX1NUQVRVU19DTEFTU19NQVBbdGhpcy5ub2RlLnN0YXR1c11cbiAgICAgICAgKSBhcyBPYmplY3RTdGF0dXM7XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICpuZ0lmPVwibWV0YT8ucmVuZGVyVmVydGljYWxMaW5lQmVmb3JlXCJcbiAgICBjbGFzcz1cImZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX3ZlcnRpY2FsLWxpbmUtYmVmb3JlXCJcbiAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fdmVydGljYWwtbGluZS1iZWZvcmUtc29saWRdPVwiX2lzVmVydGljYWxMaW5lQmVmb3JlU29saWRcIlxuPjwvZGl2PlxuXG48ZGl2XG4gICAgKm5nSWY9XCJtZXRhPy5yZW5kZXJWZXJ0aWNhbExpbmVBZnRlclwiXG4gICAgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX192ZXJ0aWNhbC1saW5lLWFmdGVyXCJcbiAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fdmVydGljYWwtbGluZS1hZnRlci1zb2xpZF09XCJfaXNWZXJ0aWNhbExpbmVBZnRlclNvbGlkXCJcbj48L2Rpdj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFfYmxhbmsgJiYgIV9zcGFjZVwiPlxuICAgIDxkaXYgKm5nSWY9XCJyZW5kZXJBcnJvd1wiIGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYXJyb3dcIj48L2Rpdj5cblxuICAgIDxkaXYgKm5nSWY9XCJfaXNSb290ICYmIG1ldGE/Lm5vZGVJbmRleCA9PT0gMFwiIGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fY2Fyb3VzZWwtc3RhcnQtbWFya2VyXCI+PC9kaXY+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiX2lzRmluYWwgJiYgbWV0YT8ubm9kZUluZGV4ID09PSAwXCIgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX19jYXJvdXNlbC1lbmQtbWFya2VyXCI+PC9kaXY+XG5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlICNvdmVyZmxvd01lbnVCdXR0b24+XG4gICAgPCEtLSBBY3R1YWxseSBqdXN0IHRoZSBmZC1ncmlkLWl0ZW0gYWN0aW9uIGJ1dHRvbiBidXQgd2l0aCBzb21lIGhhcmRjb2RlIHRvIGJlIHVzZWQgYXMgbWVudSB0cmlnZ2VyIC0tPlxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCIhbm9kZT8uZGlzYWJsZUFjdGlvbnNcIlxuICAgICAgICBjbGFzcz1cImZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX21lbnUtYnV0dG9uXCJcbiAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgZ2x5cGg9XCJvdmVyZmxvd1wiXG4gICAgICAgIFt0aXRsZV09XCIncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZU1lbnVCdXR0b25UaXRsZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgIGZkQ29tcGFjdFxuICAgICAgICBbZmRNZW51VHJpZ2dlcl09XCJtZW51XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cIl9pc0VkaXRBY3Rpb25zQXZhaWxhYmxlXCJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXG4gICAgPjwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNub2RlQ29udGVudD5cbiAgICA8ZGl2IGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9faW5mb1wiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX25hbWVcIlxuICAgICAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX25hbWUtLW1lbWJlcnMtY291bnRdPVwibm9kZS5hcHByb3ZlcnMubGVuZ3RoID4gMVwiXG4gICAgICAgICAgICBbaWRdPVwiYXBwcm92YWxGbG93Tm9kZUlkXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vZGUuYXBwcm92ZXJzLmxlbmd0aCA9PT0gMTsgZWxzZSBtdWx0aXBsZUFwcHJvdmVyc1wiPlxuICAgICAgICAgICAgICAgIHt7IG5vZGUuYXBwcm92ZXJzWzBdLm5hbWUgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI211bHRpcGxlQXBwcm92ZXJzPlxuICAgICAgICAgICAgICAgIHt7ICdwbGF0Zm9ybUFwcHJvdmFsRmxvdy5ub2RlTWVtYmVyc0NvdW50JyB8IGZkVHJhbnNsYXRlIDogeyBjb3VudDogbm9kZS5hcHByb3ZlcnMubGVuZ3RoIH0gfX1cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmZHAtYXBwcm92YWwtZmxvdy1ub2RlX19kZXNjcmlwdGlvblwiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFub2RlLnZhcmlvdXNUZWFtczsgZWxzZSB2YXJpb3VzVGVhbXNcIj5cbiAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBub2RlLmFwcHJvdmVycy5sZW5ndGggPiAxXG4gICAgICAgICAgICAgICAgICAgICAgICA/IG5vZGUuZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIDogbm9kZS5hcHByb3ZlcnMubGVuZ3RoXG4gICAgICAgICAgICAgICAgICAgICAgICA/IG5vZGUuYXBwcm92ZXJzWzBdLmRlc2NyaXB0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICcnXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI3ZhcmlvdXNUZWFtcz4ge3sgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVWYXJpb3VzVGVhbXMnIHwgZmRUcmFuc2xhdGUgfX0gPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGZkcC1vYmplY3Qtc3RhdHVzIFtzdGF0dXNdPVwiX29iamVjdFN0YXR1c1wiIFtpbnZlcnRlZF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXBwcm92YWxTdGF0dXNUZW1wbGF0ZTsgdGhlbiB1c2VyU3RhdHVzVGVtcGxhdGU7IGVsc2UgZGVmYXVsdFN0YXR1c1RlbXBsYXRlXCI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNoZWNrRHVlRGF0ZSAmJiBfc2hvd0R1ZURhdGVXYXJuaW5nXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIl9kdWVJbiA9PT0gZHVlRGF0ZVRocmVzaG9sZFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZVN0YXR1c0R1ZVRvZGF5JyB8IGZkVHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2R1ZUluIDwgZHVlRGF0ZVRocmVzaG9sZFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVTdGF0dXNEdWVJblhEYXlzJyB8IGZkVHJhbnNsYXRlIDogeyBjb3VudDogZHVlRGF0ZVRocmVzaG9sZCAtIF9kdWVJbiB9XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX2R1ZUluID4gZHVlRGF0ZVRocmVzaG9sZFwiPlxuICAgICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVTdGF0dXNYRGF5c092ZXJkdWUnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBmZFRyYW5zbGF0ZSA6IHsgY291bnQ6IF9kdWVJbiAtIGR1ZURhdGVUaHJlc2hvbGQgfVxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZmRwLW9iamVjdC1zdGF0dXM+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiX3Nob3dBZGRCdXR0b24gJiYgbWV0YT8uY2FuQWRkTm9kZUJlZm9yZUFsbCAmJiAhbm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEJlZm9yZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGROb2RlQnV0dG9uOyBjb250ZXh0OiB7IHBsYWNlbWVudDogJ2JlZm9yZS1hbGwnIH1cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiX3Nob3dBZGRCdXR0b24gJiYgbWV0YT8uY2FuQWRkTm9kZUJlZm9yZSAmJiAhbm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEJlZm9yZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGROb2RlQnV0dG9uOyBjb250ZXh0OiB7IHBsYWNlbWVudDogJ2JlZm9yZScgfVwiPjwvbmctY29udGFpbmVyPlxuPC9uZy1jb250YWluZXI+XG5cbjxuZy1jb250YWluZXJcbiAgICAqbmdJZj1cIlxuICAgICAgICBfc2hvd0FkZEJ1dHRvbiAmJlxuICAgICAgICBtZXRhPy5jYW5BZGROb2RlQWZ0ZXIgJiZcbiAgICAgICAgbWV0YT8ucmVuZGVyQWRkTm9kZUFmdGVyQnV0dG9uICYmXG4gICAgICAgICFub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlQWRkQWZ0ZXJcbiAgICBcIlxuPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJhZGROb2RlQnV0dG9uOyBjb250ZXh0OiB7IHBsYWNlbWVudDogJ2FmdGVyJyB9XCI+PC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwiXG4gICAgICAgIF9zaG93QWZ0ZXJBbGxBZGRCdXR0b24gJiZcbiAgICAgICAgbWV0YT8uY2FuQWRkTm9kZUFmdGVyQWxsICYmXG4gICAgICAgIG1ldGE/LnJlbmRlckFkZE5vZGVBZnRlckJ1dHRvbiAmJlxuICAgICAgICAhbm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEFmdGVyXG4gICAgXCJcbj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYWRkTm9kZUJ1dHRvbjsgY29udGV4dDogeyBwbGFjZW1lbnQ6ICdhZnRlci1hbGwnIH1cIj48L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGUgI2FkZE5vZGVCdXR0b24gbGV0LXBsYWNlbWVudD1cInBsYWNlbWVudFwiPlxuICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJub2RlLnN0YXR1cyAhPT0gJ2FwcHJvdmVkJ1wiXG4gICAgICAgIGZkLWJ1dHRvblxuICAgICAgICBnbHlwaD1cImFkZFwiXG4gICAgICAgIFt0aXRsZV09XCIncGxhdGZvcm1BcHByb3ZhbEZsb3cuYWRkTm9kZUJ1dHRvblRpdGxlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgZmRDb21wYWN0XG4gICAgICAgIGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYWRkXCJcbiAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX2FkZC0tYmxhbmtdPVwidGhpcy5fYmxhbmtcIlxuICAgICAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYWRkLS1iZWZvcmVdPVwiXG4gICAgICAgICAgICAhdGhpcy5fYmxhbmsgJiYgKHBsYWNlbWVudCA9PT0gJ2JlZm9yZScgfHwgcGxhY2VtZW50ID09PSAnYmVmb3JlLWFsbCcpXG4gICAgICAgIFwiXG4gICAgICAgIFtjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlX19hZGQtLWJlZm9yZS1hbGxdPVwiIXRoaXMuX2JsYW5rICYmIHBsYWNlbWVudCA9PT0gJ2JlZm9yZS1hbGwnXCJcbiAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX2FkZC0tYWZ0ZXJdPVwiXG4gICAgICAgICAgICAhdGhpcy5fYmxhbmsgJiYgKHBsYWNlbWVudCA9PT0gJ2FmdGVyJyB8fCBwbGFjZW1lbnQgPT09ICdhZnRlci1hbGwnKVxuICAgICAgICBcIlxuICAgICAgICBbY2xhc3MuZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fYWRkLS1hZnRlci1hbGxdPVwicGxhY2VtZW50ID09PSAnYWZ0ZXItYWxsJ1wiXG4gICAgICAgIFtzdHlsZS52aXNpYmlsaXR5XT1cImRyb3Bab25lLmFjdGl2ZSA/ICdoaWRkZW4nIDogJydcIlxuICAgICAgICAoY2xpY2spPVwib25BZGQuZW1pdChwbGFjZW1lbnQpXCJcbiAgICA+PC9idXR0b24+XG5cbiAgICA8ZGl2XG4gICAgICAgICNkcm9wWm9uZT1cImZkcC1hcHByb3ZhbC1mbG93LWRyb3Atem9uZVwiXG4gICAgICAgIGZkcC1hcHByb3ZhbC1mbG93LWRyb3Atem9uZVxuICAgICAgICBbcGxhY2VtZW50XT1cInBsYWNlbWVudFwiXG4gICAgICAgIGNsYXNzPVwiZmRwLWFwcHJvdmFsLWZsb3ctbm9kZV9fZHJvcC16b25lXCJcbiAgICAgICAgW2NsYXNzLmZkcC1hcHByb3ZhbC1mbG93LW5vZGVfX2Ryb3Atem9uZS0tYWN0aXZlXT1cImRyb3Bab25lLmFjdGl2ZVwiXG4gICAgICAgIFtjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlX19kcm9wLXpvbmUtLWJsYW5rXT1cImlzTmV4dE5vZGVCbGFua1wiXG4gICAgICAgIFtjbGFzcy5mZHAtYXBwcm92YWwtZmxvdy1ub2RlX19kcm9wLXpvbmUtLXBhcnRpYWxdPVwiX2Ryb3Bab25lUGFydGlhbChwbGFjZW1lbnQpXCJcbiAgICA+PC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRTdGF0dXNUZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNoZWNrRHVlRGF0ZSB8fCAhX3Nob3dEdWVEYXRlV2FybmluZ1wiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJub2RlLnN0YXR1c1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2FwcHJvdmVkJ1wiPnt7XG4gICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93LnN0YXR1c0FwcHJvdmVkJyB8IGZkVHJhbnNsYXRlXG4gICAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ3JlamVjdGVkJ1wiPnt7XG4gICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93LnN0YXR1c1JlamVjdGVkJyB8IGZkVHJhbnNsYXRlXG4gICAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2luIHByb2dyZXNzJ1wiPnt7XG4gICAgICAgICAgICAgICAgJ3BsYXRmb3JtQXBwcm92YWxGbG93LnN0YXR1c0luUHJvZ3Jlc3MnIHwgZmRUcmFuc2xhdGVcbiAgICAgICAgICAgIH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInbm90IHN0YXJ0ZWQnXCI+e3tcbiAgICAgICAgICAgICAgICAncGxhdGZvcm1BcHByb3ZhbEZsb3cuc3RhdHVzTm90U3RhcnRlZCcgfCBmZFRyYW5zbGF0ZVxuICAgICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3VzZXJTdGF0dXNUZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWNoZWNrRHVlRGF0ZSB8fCAhX3Nob3dEdWVEYXRlV2FybmluZ1wiPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdJZj1cImFwcHJvdmFsU3RhdHVzVGVtcGxhdGVcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiYXBwcm92YWxTdGF0dXNUZW1wbGF0ZVwiXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBub2RlOiBub2RlIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPGZkLW1lbnUgI21lbnUgZmRDb250ZW50RGVuc2l0eSBwbGFjZW1lbnQ9XCJib3R0b20tZW5kXCIgKGlzT3BlbkNoYW5nZSk9XCJfb25NZW51T3BlbigpXCI+XG4gICAgPGxpXG4gICAgICAgICpuZ0lmPVwibWV0YT8uY2FuQWRkTm9kZUJlZm9yZSAmJiAhdGhpcy5ub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlQWRkQmVmb3JlXCJcbiAgICAgICAgZmQtbWVudS1pdGVtXG4gICAgICAgIChjbGljayk9XCJtZW51LmNsb3NlKCk7IG9uQWRkLmVtaXQoJ2JlZm9yZScpXCJcbiAgICA+XG4gICAgICAgIDxkaXYgZmQtbWVudS1pbnRlcmFjdGl2ZT5cbiAgICAgICAgICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+e3sgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVBY3Rpb25BZGRBcHByb3ZlcnNCZWZvcmUnIHwgZmRUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG5cbiAgICA8bGlcbiAgICAgICAgKm5nSWY9XCJtZXRhPy5jYW5BZGROb2RlQWZ0ZXIgJiYgIXRoaXMubm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZEFmdGVyXCJcbiAgICAgICAgZmQtbWVudS1pdGVtXG4gICAgICAgIChjbGljayk9XCJtZW51LmNsb3NlKCk7IG9uQWRkLmVtaXQoJ2FmdGVyJylcIlxuICAgID5cbiAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT57eyAncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZUFjdGlvbkFkZEFwcHJvdmVyc0FmdGVyJyB8IGZkVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2xpPlxuXG4gICAgPGxpXG4gICAgICAgICpuZ0lmPVwibWV0YT8uY2FuQWRkUGFyYWxsZWwgJiYgIXRoaXMubm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZUFkZFBhcmFsbGVsXCJcbiAgICAgICAgZmQtbWVudS1pdGVtXG4gICAgICAgIChjbGljayk9XCJtZW51LmNsb3NlKCk7IG9uQWRkLmVtaXQoJ3BhcmFsbGVsJylcIlxuICAgID5cbiAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT57eyAncGxhdGZvcm1BcHByb3ZhbEZsb3cubm9kZUFjdGlvbkFkZEFwcHJvdmVyc1BhcmFsbGVsJyB8IGZkVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2xpPlxuXG4gICAgPGxpXG4gICAgICAgICpuZ0lmPVwiX2lzTm90U3RhcnRlZCAmJiAhdGhpcy5ub2RlPy5hY3Rpb25zQ29uZmlnPy5kaXNhYmxlRWRpdFwiXG4gICAgICAgIGZkLW1lbnUtaXRlbVxuICAgICAgICAoY2xpY2spPVwibWVudS5jbG9zZSgpOyBvbkVkaXQuZW1pdCgpXCJcbiAgICA+XG4gICAgICAgIDxkaXYgZmQtbWVudS1pbnRlcmFjdGl2ZT5cbiAgICAgICAgICAgIDxzcGFuIGZkLW1lbnUtdGl0bGU+IHt7ICdwbGF0Zm9ybUFwcHJvdmFsRmxvdy5ub2RlQWN0aW9uRWRpdEFwcHJvdmVyJyB8IGZkVHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2xpPlxuXG4gICAgPGxpICpuZ0lmPVwiIXRoaXMubm9kZT8uYWN0aW9uc0NvbmZpZz8uZGlzYWJsZVJlbW92ZVwiIGZkLW1lbnUtaXRlbSAoY2xpY2spPVwibWVudS5jbG9zZSgpOyBvbkRlbGV0ZS5lbWl0KClcIj5cbiAgICAgICAgPGRpdiBmZC1tZW51LWludGVyYWN0aXZlPlxuICAgICAgICAgICAgPHNwYW4gZmQtbWVudS10aXRsZT4ge3sgJ3BsYXRmb3JtQXBwcm92YWxGbG93Lm5vZGVBY3Rpb25SZW1vdmUnIHwgZmRUcmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbGk+XG48L2ZkLW1lbnU+XG4iXX0=
|