ngx-rs-ant 1.6.3 → 1.6.5

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.
Files changed (32) hide show
  1. package/camunda-bpmn-editor/camunda-bpmn-editor.component.d.ts +7 -2
  2. package/camunda-bpmn-editor/custom/hide-other/HideOtherContextPadProvider.d.ts +9 -5
  3. package/esm2020/box-container/plugin-active/plugin-active.component.mjs +3 -3
  4. package/esm2020/box-container/plugin-hover/plugin-hover.component.mjs +3 -3
  5. package/esm2020/camunda-bpmn-editor/camunda-bpmn-editor.component.mjs +29 -7
  6. package/esm2020/camunda-bpmn-editor/custom/hide-other/HideOtherContextPadProvider.mjs +11 -12
  7. package/esm2020/camunda-bpmn-editor/custom/hide-other/HideOtherPaletteProvider.mjs +2 -3
  8. package/esm2020/camunda-bpmn-editor/custom/service-task/ServiceTaskContextPadProvider.mjs +2 -2
  9. package/esm2020/camunda-bpmn-editor/custom/service-task/ServiceTaskPaletteProvider.mjs +2 -2
  10. package/esm2020/camunda-bpmn-editor/custom/translate/translations.mjs +21 -293
  11. package/esm2020/camunda-bpmn-editor/custom/user-task/UserTaskContextPadProvider.mjs +2 -2
  12. package/esm2020/camunda-bpmn-editor/custom/user-task/UserTaskPaletteProvider.mjs +2 -2
  13. package/esm2020/code-editor/code-editor.component.mjs +3 -3
  14. package/esm2020/icon-selector/icon-selector.component.mjs +3 -3
  15. package/esm2020/modal/modal.component.mjs +6 -3
  16. package/fesm2015/ngx-rs-ant.mjs +75 -467
  17. package/fesm2015/ngx-rs-ant.mjs.map +1 -1
  18. package/fesm2020/ngx-rs-ant.mjs +75 -467
  19. package/fesm2020/ngx-rs-ant.mjs.map +1 -1
  20. package/package.json +2 -2
  21. package/camunda-bpmn-editor/custom/config/CustomPropertiesProvider.d.ts +0 -5
  22. package/camunda-bpmn-editor/custom/config/index.d.ts +0 -6
  23. package/camunda-bpmn-editor/custom/config/properties/user-task/TaskDescriptionProps.d.ts +0 -6
  24. package/camunda-bpmn-editor/custom/config/properties/user-task/user-assignment/UserAssignmentProps.d.ts +0 -2
  25. package/camunda-bpmn-editor/custom/config/properties/user-task/user-assignment/UserAssignmentStaticOrDynamicProps.d.ts +0 -6
  26. package/camunda-bpmn-editor/custom/config/util/ElementUtils.d.ts +0 -3
  27. package/esm2020/camunda-bpmn-editor/custom/config/CustomPropertiesProvider.mjs +0 -33
  28. package/esm2020/camunda-bpmn-editor/custom/config/index.mjs +0 -6
  29. package/esm2020/camunda-bpmn-editor/custom/config/properties/user-task/TaskDescriptionProps.mjs +0 -26
  30. package/esm2020/camunda-bpmn-editor/custom/config/properties/user-task/user-assignment/UserAssignmentProps.mjs +0 -5
  31. package/esm2020/camunda-bpmn-editor/custom/config/properties/user-task/user-assignment/UserAssignmentStaticOrDynamicProps.mjs +0 -32
  32. package/esm2020/camunda-bpmn-editor/custom/config/util/ElementUtils.mjs +0 -52
@@ -9,7 +9,7 @@ import * as i2$1 from 'devextreme-angular/ui/draggable';
9
9
  import { DevExtremeModule, DxLoadPanelModule, DxValidationGroupComponent, DxDataGridComponent } from 'devextreme-angular';
10
10
  import BpmnModeler from 'camunda-bpmn-js/lib/camunda-platform/Modeler';
11
11
  import { is } from 'bpmn-js/lib/util/ModelUtil';
12
- import { TextAreaEntry, isTextAreaEntryEdited, SelectEntry, isSelectEntryEdited } from '@bpmn-io/properties-panel';
12
+ import { isLabel } from 'diagram-js/lib/util/ModelUtil';
13
13
  import * as i6 from 'devextreme-angular/ui/load-panel';
14
14
  import * as i6$1 from 'devextreme-angular/ui/nested';
15
15
  import { DxoPositionModule } from 'devextreme-angular/ui/nested';
@@ -152,10 +152,10 @@ class PluginActiveComponent {
152
152
  }
153
153
  }
154
154
  PluginActiveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginActiveComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
155
- PluginActiveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PluginActiveComponent, selector: "rs-plugin-active", host: { properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"active-item\">\r\n <div class=\"active-bar\">\r\n <i *ngIf=\"showClose && !showDivider\" class=\"icon-drag\"></i>\r\n <span>{{name}}</span>\r\n <i class=\"coast-icon-add-row\" title=\"\u6DFB\u52A0\u884C\" (click)=\"splitItem('column')\"></i>\r\n <i class=\"coast-icon-add-column\" title=\"\u6DFB\u52A0\u5217\" (click)=\"splitItem('row')\"></i>\r\n <i *ngIf=\"showClose\" class=\"icon-close\" (click)=\"onItemCloseIconClick($event)\"></i>\r\n </div>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"row\"\r\n (dividerClick)=\"splitItem('column')\"></rs-divider>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"column\"\r\n (dividerClick)=\"splitItem('row')\"></rs-divider>\r\n</div>\r\n", styles: [":host{display:none;position:absolute;border:1px solid var(--coast-default-color, #337ab7);pointer-events:none}:host .active-item{width:100%;height:100%}:host .active-item .active-bar{padding:2px 4px;color:#fff;background-color:var(--coast-default-color, #337ab7);position:absolute;top:-23px;right:-1px;display:flex;flex-flow:row nowrap;align-items:center;pointer-events:all;white-space:nowrap}:host .active-item .active-bar i{flex:none;cursor:pointer}:host .active-item .active-bar i:not(:last-child){margin-right:8px}:host .active-item .active-bar i.icon-drag{cursor:move}:host .active-item .active-bar i.icon-close:hover{color:var(--coast-danger-color, #d9534f)}:host .active-item .active-bar span{flex:1;margin-right:8px}.plugin-active>:host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DividerComponent, selector: "rs-divider", inputs: ["direction", "targetElement"], outputs: ["dividerClick"] }] });
155
+ PluginActiveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PluginActiveComponent, selector: "rs-plugin-active", host: { properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"active-item\">\r\n <div class=\"active-bar\">\r\n <i *ngIf=\"showClose && !showDivider\" class=\"icon-drag\"></i>\r\n <span>{{ name }}</span>\r\n <i class=\"coast-icon-add-row\" title=\"\u6DFB\u52A0\u884C\" (click)=\"splitItem('column')\"></i>\r\n <i class=\"coast-icon-add-column\" title=\"\u6DFB\u52A0\u5217\" (click)=\"splitItem('row')\"></i>\r\n <i *ngIf=\"showClose\" class=\"icon-close\" (click)=\"onItemCloseIconClick($event)\"></i>\r\n </div>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"row\"\r\n (dividerClick)=\"splitItem('column')\"></rs-divider>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"column\"\r\n (dividerClick)=\"splitItem('row')\"></rs-divider>\r\n</div>\r\n", styles: [":host{display:none;position:absolute;border:1px solid var(--coast-default-color, #337ab7);pointer-events:none}:host .active-item{width:100%;height:100%}:host .active-item .active-bar{padding:2px 4px;color:#fff;background-color:var(--coast-default-color, #337ab7);position:absolute;top:-23px;right:-1px;display:flex;flex-flow:row nowrap;align-items:center;pointer-events:all;white-space:nowrap}:host .active-item .active-bar i{flex:none;cursor:pointer}:host .active-item .active-bar i:not(:last-child){margin-right:8px}:host .active-item .active-bar i.icon-drag{cursor:move}:host .active-item .active-bar i.icon-close:hover{color:var(--coast-danger-color, #d9534f)}:host .active-item .active-bar span{flex:1;margin-right:8px}.plugin-active>:host{display:block}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: DividerComponent, selector: "rs-divider", inputs: ["direction", "targetElement"], outputs: ["dividerClick"] }] });
156
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginActiveComponent, decorators: [{
157
157
  type: Component,
158
- args: [{ selector: 'rs-plugin-active', template: "<div class=\"active-item\">\r\n <div class=\"active-bar\">\r\n <i *ngIf=\"showClose && !showDivider\" class=\"icon-drag\"></i>\r\n <span>{{name}}</span>\r\n <i class=\"coast-icon-add-row\" title=\"\u6DFB\u52A0\u884C\" (click)=\"splitItem('column')\"></i>\r\n <i class=\"coast-icon-add-column\" title=\"\u6DFB\u52A0\u5217\" (click)=\"splitItem('row')\"></i>\r\n <i *ngIf=\"showClose\" class=\"icon-close\" (click)=\"onItemCloseIconClick($event)\"></i>\r\n </div>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"row\"\r\n (dividerClick)=\"splitItem('column')\"></rs-divider>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"column\"\r\n (dividerClick)=\"splitItem('row')\"></rs-divider>\r\n</div>\r\n", styles: [":host{display:none;position:absolute;border:1px solid var(--coast-default-color, #337ab7);pointer-events:none}:host .active-item{width:100%;height:100%}:host .active-item .active-bar{padding:2px 4px;color:#fff;background-color:var(--coast-default-color, #337ab7);position:absolute;top:-23px;right:-1px;display:flex;flex-flow:row nowrap;align-items:center;pointer-events:all;white-space:nowrap}:host .active-item .active-bar i{flex:none;cursor:pointer}:host .active-item .active-bar i:not(:last-child){margin-right:8px}:host .active-item .active-bar i.icon-drag{cursor:move}:host .active-item .active-bar i.icon-close:hover{color:var(--coast-danger-color, #d9534f)}:host .active-item .active-bar span{flex:1;margin-right:8px}.plugin-active>:host{display:block}\n"] }]
158
+ args: [{ selector: 'rs-plugin-active', template: "<div class=\"active-item\">\r\n <div class=\"active-bar\">\r\n <i *ngIf=\"showClose && !showDivider\" class=\"icon-drag\"></i>\r\n <span>{{ name }}</span>\r\n <i class=\"coast-icon-add-row\" title=\"\u6DFB\u52A0\u884C\" (click)=\"splitItem('column')\"></i>\r\n <i class=\"coast-icon-add-column\" title=\"\u6DFB\u52A0\u5217\" (click)=\"splitItem('row')\"></i>\r\n <i *ngIf=\"showClose\" class=\"icon-close\" (click)=\"onItemCloseIconClick($event)\"></i>\r\n </div>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"row\"\r\n (dividerClick)=\"splitItem('column')\"></rs-divider>\r\n <rs-divider *ngIf=\"showDivider\" [targetElement]=\"targetElement\" direction=\"column\"\r\n (dividerClick)=\"splitItem('row')\"></rs-divider>\r\n</div>\r\n", styles: [":host{display:none;position:absolute;border:1px solid var(--coast-default-color, #337ab7);pointer-events:none}:host .active-item{width:100%;height:100%}:host .active-item .active-bar{padding:2px 4px;color:#fff;background-color:var(--coast-default-color, #337ab7);position:absolute;top:-23px;right:-1px;display:flex;flex-flow:row nowrap;align-items:center;pointer-events:all;white-space:nowrap}:host .active-item .active-bar i{flex:none;cursor:pointer}:host .active-item .active-bar i:not(:last-child){margin-right:8px}:host .active-item .active-bar i.icon-drag{cursor:move}:host .active-item .active-bar i.icon-close:hover{color:var(--coast-danger-color, #d9534f)}:host .active-item .active-bar span{flex:1;margin-right:8px}.plugin-active>:host{display:block}\n"] }]
159
159
  }], propDecorators: { _style: [{
160
160
  type: HostBinding,
161
161
  args: ['style']
@@ -176,10 +176,10 @@ class PluginHoverComponent {
176
176
  }
177
177
  }
178
178
  PluginHoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginHoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
179
- PluginHoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PluginHoverComponent, selector: "rs-plugin-hover", host: { properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"hover-title\">{{name}}</div>\n", styles: [":host{display:none;position:absolute;border:1px dashed var(--coast-default-color, #337ab7);pointer-events:none}:host .hover-title{color:var(--coast-default-color, #337ab7);position:absolute;top:-18px;left:0}.plugin-active>:host{display:none!important}.plugin-hover>:host{display:block}\n"] });
179
+ PluginHoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: PluginHoverComponent, selector: "rs-plugin-hover", host: { properties: { "style": "this._style" } }, ngImport: i0, template: "<div class=\"hover-title\">{{ name }}</div>\n", styles: [":host{display:none;position:absolute;border:1px dashed var(--coast-default-color, #337ab7);pointer-events:none}:host .hover-title{color:var(--coast-default-color, #337ab7);position:absolute;top:-18px;left:0}.plugin-active>:host{display:none!important}.plugin-hover>:host{display:block}\n"] });
180
180
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginHoverComponent, decorators: [{
181
181
  type: Component,
182
- args: [{ selector: 'rs-plugin-hover', template: "<div class=\"hover-title\">{{name}}</div>\n", styles: [":host{display:none;position:absolute;border:1px dashed var(--coast-default-color, #337ab7);pointer-events:none}:host .hover-title{color:var(--coast-default-color, #337ab7);position:absolute;top:-18px;left:0}.plugin-active>:host{display:none!important}.plugin-hover>:host{display:block}\n"] }]
182
+ args: [{ selector: 'rs-plugin-hover', template: "<div class=\"hover-title\">{{ name }}</div>\n", styles: [":host{display:none;position:absolute;border:1px dashed var(--coast-default-color, #337ab7);pointer-events:none}:host .hover-title{color:var(--coast-default-color, #337ab7);position:absolute;top:-18px;left:0}.plugin-active>:host{display:none!important}.plugin-hover>:host{display:block}\n"] }]
183
183
  }], propDecorators: { _style: [{
184
184
  type: HostBinding,
185
185
  args: ['style']
@@ -928,302 +928,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
928
928
 
929
929
  const translations = {
930
930
  // 调色板
931
- 'Activate the hand tool': '激活拖拽工具',
932
- 'Activate the lasso tool': '激活框选工具',
933
- 'Activate the create/remove space tool': '激活空间移动工具',
934
- 'Activate the global connect tool': '激活全局连接工具',
935
- 'Create StartEvent': '创建开始节点',
936
- 'Create EndEvent': '创建结束节点',
937
- 'Create UserTask': '创建用户任务',
938
- 'Create ServiceTask': '创建服务任务',
939
- 'Create Gateway': '创建网关节点',
931
+ 'Activate hand tool': '激活拖拽工具',
932
+ 'Activate lasso tool': '激活框选工具',
933
+ 'Activate create/remove space tool': '激活空间移动工具',
934
+ 'Activate global connect tool': '激活全局连接工具',
935
+ 'Create start event': '创建开始节点',
936
+ 'Create end event': '创建结束节点',
937
+ 'Create user task': '创建用户任务',
938
+ 'Create service task': '创建服务任务',
939
+ 'Create gateway': '创建网关节点',
940
940
  // 面板
941
- 'Append EndEvent': '追加结束节点',
942
- 'Append UserTask': '追加用户任务',
943
- 'Append ServiceTask': '追加服务任务',
944
- 'Append Gateway': '追加网关节点',
945
- 'Connect using Sequence/MessageFlow or Association': '使用序列/消息流或关联连接',
946
- 'Remove': '删除',
947
- 'Set Color': '设置颜色',
941
+ 'Append user task': '追加用户任务',
942
+ 'Append service task': '追加服务任务',
943
+ 'Append gateway': '追加网关节点',
944
+ 'Append end event': '追加结束节点',
945
+ 'Connect to other element': '连接其它节点',
946
+ 'Delete': '删除',
948
947
  'Change type': '改变节点类型',
949
- 'Exclusive Gateway': '互斥网关',
950
- 'Parallel Gateway': '并行网关',
951
- 'Default Flow': '默认流向',
952
- 'Sequence Flow': '顺序流向',
948
+ 'Exclusive gateway': '互斥网关',
949
+ 'Parallel gateway': '并行网关',
950
+ 'Default flow': '默认流向',
951
+ 'Sequence flow': '顺序流向',
952
+ 'Conditional flow': '条件流向',
953
953
  'Open minimap': '打开缩略图',
954
954
  'Close minimap': '关闭缩略图',
955
- // 配置
956
- 'General': '参数配置',
957
- 'Name': '名称',
958
- 'Task description': '任务描述',
959
- 'Set assignment rule': '设置用户规则',
960
- 'dynamic user': '动态用户',
961
- 'static user': '静态用户',
962
- 'dynamic role': '动态角色',
963
- 'static role': '静态角色',
964
- /*
965
- 'Create {type}': '创建{type}',
966
- 'Create Intermediate/Boundary Event': '创建中间/边界事件',
967
- 'Append {type}': '追加{type}', //'追加{type}',
968
- 'Add Lane above': '添加上面泳道',
969
- 'Divide into two Lanes': '拆分两个泳道',
970
- 'Divide into three Lanes': '拆分三个泳道',
971
- 'Add Lane below': '添下面泳道',
972
- 'Append compensation activity': '追加补偿活动',
973
- 'Change type': '改变节点类型', // 改变事情类型
974
- 'Connect using Association': '使用关联连接',
975
- 'Connect using Sequence/MessageFlow or Association': '使用序列/消息流或关联连接',
976
- 'Connect using DataInputAssociation': '使用数据输入关联连接',
977
- 'Remove': '删除',
978
- 'Create expanded SubProcess': '创建扩展子流程',
979
- // 'Create Pool/Participant': '创建者或参与者',
980
- 'Create IntermediateThrowEvent/BoundaryEvent': '创建中间事件或边界事件',
981
- 'Parallel Multi Instance': '并行多实例',
982
- 'Sequential Multi Instance': '顺序多重实例',
983
- 'Loop': '循环',
984
- 'Ad-hoc': '特别指定',
985
- 'Task': '任务',
986
- 'Send Task': '发送任务', // 发送任务
987
- 'Receive Task': '接收任务',
988
- 'User Task': '用户任务',
989
- 'Manual Task': '手工任务',
990
- 'Business Rule Task': '作业规则任务',
991
- 'Service Task': '服务任务',
992
- 'Script Task': '脚本任务',
993
- 'Call Activity': '调用活动',
994
- 'Sub Process (collapsed)': '子过程(折叠)',
995
- 'Sub Process (expanded)': '子过程(展开)',
996
- 'Start Event': '开始事件',
997
- 'Intermediate Throw Event': '抛出事件',
998
- 'End Event': '结束事件',
999
- 'Message Start Event': '消息开始事件',
1000
- 'Timer Start Event': '时间开始事件',
1001
- 'Conditional Start Event': '条件开始事件',
1002
- 'Signal Start Event': '信号开始事件',
1003
- 'Error Start Event': '错误开始事件',
1004
- 'Escalation Start Event': '升级开始事件',
1005
- 'Compensation Start Event': '补偿开始事件',
1006
- 'Message Start Event (non-interrupting)': '消息开始事件(不中断)',
1007
- 'Timer Start Event (non-interrupting)': '定时开始事件(不中断)',
1008
- 'Conditional Start Event (non-interrupting)': '条件开始事件(不中断)',
1009
- 'Signal Start Event (non-interrupting)': '信号开始事件(不中断)',
1010
- 'Escalation Start Event (non-interrupting)': '升级开始事件(不中断)',
1011
- 'Message Intermediate Catch Event': '信息捕获事件',
1012
- 'Message Intermediate Throw Event': '信息抛出事件',
1013
- 'Timer Intermediate Catch Event': '定时器捕获事件',
1014
- 'Escalation Intermediate Throw Event': '升级抛出事件',
1015
- 'Conditional Intermediate Catch Event': '条件捕获事件',
1016
- 'Link Intermediate Catch Event': '链接捕获事件',
1017
- 'Link Intermediate Throw Event': '链接抛出事件',
1018
- 'Compensation Intermediate Throw Event': '补偿抛出事件',
1019
- 'Signal Intermediate Catch Event': '信号捕获事件',
1020
- 'Signal Intermediate Throw Event': '信号抛出事件',
1021
- 'Message End Event': '消息结束事件',
1022
- 'Escalation End Event': '升级结束事件',
1023
- 'Error End Event': '错误结束事件',
1024
- 'Cancel End Event': '取消结束事件',
1025
- 'Compensation End Event': '补偿结束事件',
1026
- 'Signal End Event': '信号结束事件',
1027
- 'Terminate End Event': '终止结束事件',
1028
- 'Message Boundary Event': '消息边界事件',
1029
- 'Message Boundary Event (non-interrupting)': '消息边界事件(非中断)',
1030
- 'Timer Boundary Event': '定时边界事件',
1031
- 'Timer Boundary Event (non-interrupting)': '定时边界事件(非中断)',
1032
- 'Escalation Boundary Event': '升级边界事件',
1033
- 'Escalation Boundary Event (non-interrupting)': '升级边界事件(非中断)',
1034
- 'Conditional Boundary Event': '有条件的边界事件',
1035
- 'Conditional Boundary Event (non-interrupting)': '条件边界事件(非中断)',
1036
- 'Error Boundary Event': '错误边界事件',
1037
- 'Cancel Boundary Event': '取消边界事件',
1038
- 'Signal Boundary Event': '信号边界事件',
1039
- 'Signal Boundary Event (non-interrupting)': '信号边界事件(非中断)',
1040
- 'Compensation Boundary Event': '补偿边界事件',
1041
- 'Exclusive': '排他',
1042
- 'Exclusive Gateway': '互斥网关',
1043
- 'Parallel Gateway': '并行网关',
1044
- 'Inclusive Gateway': '相容网关',
1045
- 'Complex Gateway': '复杂网关',
1046
- 'Event based Gateway': '事件网关',
1047
- 'Transaction': '交换',
1048
- 'Sub Process': '子流程',
1049
- 'Event Sub Process': '事件子流程',
1050
- 'Empty Pool (removes content)': '清空泳池(删除内容)',
1051
- 'Collapsed Pool': '合并泳池',
1052
- 'Expanded Pool': '扩展泳池',
1053
-
1054
- // flow
1055
- 'Default Flow': '默认流向',
1056
- 'Sequence Flow': '顺序流向',
1057
- 'Conditional Flow': '条件流向',
1058
-
1059
- // Errors
1060
- 'no parent for {element} in {parent}': '在{parent}中的{element}没有父元素',
1061
- 'no shape type specified': '没有指定的形状类型',
1062
- 'flow elements must be children of pools/participants': '流动元素必须是游泳池/参与者',
1063
- 'out of bounds release': '跨界界释放',
1064
- 'more than {count} child lanes': '超出{count}分支',
1065
- 'element required': '被请求元素',
1066
- 'diagram not part of bpmn': '图在bpmn中',
1067
- 'no diagram to display': '没有图表来显示',
1068
- 'no process or collaboration to display': '没有流程或协作显示',
1069
- 'element {element} referenced by {referenced}#{property} not yet drawn':
1070
- '元素{element}在{referenced}#{property}的引用还没有绘制',
1071
- 'already rendered {element}': '已经提供{element}',
1072
- 'failed to import {element}': '元素导入失败{element}',
1073
- 'ID must not be empty.': 'ID不能为空!',
1074
- 'ID must be a valid QName.': '无效的ID输入!',
1075
-
1076
- // message
1077
- 'This maps to the process definition key.': '映射流程定义的Key。',
1078
- 'This maps to the task definition key.': '映射任务定义的Key。',
1079
- 'Specify more than one group as a comma separated list.': '多于一个组时为逗号分隔的列表。',
1080
- 'Specify more than one user as a comma separated list.': '多于一个用户时为逗号分隔的列表。',
1081
- 'Must provide either loop cardinality or collection': '必须提供循环基数或集合',
1082
- 'Available process variables, identified in the diagram.': '可用的过程变量,如图中所示。',
1083
- 'No variables found.': '未找到变量。',
1084
-
1085
- 'General': '基本属性',
1086
- 'Documentation': '备注',
1087
- 'Element documentation': '元素备注',
1088
- 'Executable': '可执行',
1089
- 'Process Documentation': '过程说明',
1090
- '': '无',
1091
- 'Listeners': '监听器',
1092
- 'Execution Listener': '扩展监听器',
1093
- 'Extensions': '扩展',
1094
- 'Properties': '属性',
1095
- 'Add Property': '添加属性',
1096
- 'Process Id': '流程标识',
1097
- 'Process Name': '流程名称',
1098
- 'Participant Id': '参与者标识',
1099
- 'Participant Name': '参与者名称',
1100
- 'Name': '名称',
1101
- 'Id': '标识',
1102
- 'ID': '标识',
1103
- 'Value': '值',
1104
- 'Version Tag': '版本标记',
1105
- 'External Task Configuration': '外部任务配置',
1106
- 'Task Priority': '任务优先级',
1107
- 'Job Configuration': '作业配置',
1108
- 'Job Priority': '作业优先级',
1109
- 'History Configuration': '历史配置',
1110
- 'History Time To Live': '历史生存时间',
1111
- 'Details': '详情',
1112
- 'Initiator': '初始化',
1113
- 'Asynchronous Continuations': '异步连续',
1114
- 'Asynchronous Before': '异步之前',
1115
- 'Asynchronous After': '异步之后',
1116
- 'Forms': '表单',
1117
- 'Form Key': '表单名',
1118
- 'Form Fields': '表单字段',
1119
- 'Form Buttons': '表单按钮',
1120
- 'Form Field': '表单字段',
1121
- 'Form Button': '表单按钮',
1122
- 'Button Name': '按钮名称',
1123
- 'Business Key': '业务键',
1124
- 'Type': '类型',
1125
- 'Label': '标签',
1126
- 'Default Value': '默认值',
1127
- 'Validation': '校验',
1128
- 'Add Constraint': '添加约束',
1129
- 'Config': '配置',
1130
- 'Must provide a value': '必须提供一个值',
1131
- 'Event Type': '事件类型',
1132
- 'Listener Type': '监听器类型',
1133
- 'Java Class': 'Java 类',
1134
- 'Field Injection': '字段注入',
1135
- 'Fields': '字段',
1136
- 'Condition Type': '条件类型',
1137
- 'Script Format': '脚本格式',
1138
- 'Script Type': '脚本类型',
1139
- 'Inline Script': '内联脚本',
1140
- 'External Resource': '外部资源',
1141
- 'Expression': '表达式',
1142
- 'Delegate Expression': '委托表达式',
1143
- 'Script': '脚本',
1144
- 'Parameter must have a name': '参数必须有一个名称',
1145
- 'String': '字符串',
1146
- 'Implementation': '实现',
1147
- 'External': '外部',
1148
- 'Connector': '连接器',
1149
- 'Must configure Connector': '必须配置连接器',
1150
- 'Connector Id': '连接器ID',
1151
- 'Input/Output': '输入/输出',
1152
- 'Input Parameters': '输入参数',
1153
- 'Input Parameter': '输入参数',
1154
- 'Output Parameters': '输出参数',
1155
- 'Output Parameter': '输出参数',
1156
- 'Text': '文本',
1157
- 'List': '列表',
1158
- 'Add Entry': '增加条目',
1159
- 'Field Injections': '字段注入',
1160
- 'TextAnnotation': '文本注释',
1161
- 'Variables': '变量',
1162
- 'In Mapping': '输入映射',
1163
- 'Out Mapping': '输出映射',
1164
- 'Target': '目标',
1165
- 'Source': '来源',
1166
- 'Local': '本地',
1167
- 'Candidate Starter Configuration': '候选人起动器配置',
1168
- 'Candidate Starter Groups': '候选人起动器组',
1169
- 'Candidate Starter Users': '候选人起动器用户',
1170
- 'Configure Connector': '配置连接器',
1171
- 'Assignee Type': '受理人类型',
1172
- 'Assignee': '受理人',
1173
- 'Dynamic': '动态',
1174
- 'Static': '静态',
1175
- 'User': '用户',
1176
- 'Role': '角色',
1177
- 'Candidate Users': '候选用户',
1178
- 'Candidate Groups': '候选组',
1179
- 'Due Date': '到期',
1180
- 'Follow Up Date': '跟踪日期',
1181
- 'Priority': '优先级',
1182
- 'The due date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)':
1183
- '可以使用EL表达式,(例如:${someDate} 或者ISO日期(例如:2015-06-26T09:54:00))',
1184
- 'The follow up date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)':
1185
- '可以使用EL表达式,(例如:${someDate} 或者ISO日期(例如:2015-06-26T09:54:00))',
1186
-
1187
- 'Create Task': '创建任务',
1188
- 'Create DataObjectReference': '创建数据对象引用',
1189
- 'Create DataStoreReference': '创建数据存储引用',
1190
- 'Create Group': '创建分组',
1191
- 'Category Value': '类别值',
1192
-
1193
- //custom
1194
- 'Create CallActivity': '创建调用任务',
1195
- 'Append Gateway': '追加网关节点',
1196
- 'Append Intermediate/Boundary Event': '追加中间/边界事件',
1197
- 'StartEvent': '开始节点',
1198
- 'EndEvent': '结束节点',
1199
- 'DataObjectReference': '数据对象引用',
1200
- 'DataStoreReference': '数据存储引用',
1201
- 'Element must have an unique id.': '节点元素必须用于唯一编号',
1202
- 'Create ExclusiveGateway': '创建排他网关',
1203
- 'Create Pool/Participant': '创建泳道或参与者',
1204
- 'Append ExclusiveGateway': '追加排他网关',
1205
- 'Append Task': '追加任务',
1206
- 'Append UserTask': '追加用户任务',
1207
- 'Append Sequence': '追加连线',
1208
- 'Append EndEvent': '追加结束节点',
1209
- 'UserTask': '用户任务',
1210
- 'ExclusiveGateway': '条件', //排他网关
1211
- 'Element is not set findUserType': '员工节点未设置节点人员',
1212
- 'Token Simulation ': '流程模拟',
1213
- 'Tasklist Configuration': '任务列表配置',
1214
- 'Startable': '可启动',
1215
- 'Element Documentation': '元素描述',
1216
-
1217
- 'Multi Instance': '多实例',
1218
- 'Loop Cardinality': '循环基数',
1219
- 'Collection': '集合',
1220
- 'Element Variable': '元素变量',
1221
- 'Completion Condition': '完成条件',
1222
- 'Multi Instance Asynchronous Before': '多实例异步之前',
1223
- 'Multi Instance Asynchronous After': '多实例异步之后',
1224
- 'Multi Instance Exclusive': '多实例排他',
1225
- 'Multi Instance Retry Time Cycle': '多实例重试时间',
1226
- */
1227
955
  };
1228
956
 
1229
957
  function customTranslate(template, replacements) {
@@ -1254,7 +982,7 @@ class UserTaskPaletteProvider {
1254
982
  'create.user-task': {
1255
983
  group: 'activity',
1256
984
  className: 'bpmn-icon-user-task',
1257
- title: this.translate('Create UserTask'),
985
+ title: this.translate('Create user task'),
1258
986
  action: {
1259
987
  dragstart: this.createUserTask,
1260
988
  click: this.createUserTask
@@ -1290,7 +1018,7 @@ class UserTaskContextPadProvider {
1290
1018
  'append.user-task': {
1291
1019
  group: 'model',
1292
1020
  className: 'bpmn-icon-user-task',
1293
- title: this.translate('Append UserTask'),
1021
+ title: this.translate('Append user task'),
1294
1022
  action: {
1295
1023
  hover: this.appendUserTaskPreview,
1296
1024
  click: this.appendUserTask,
@@ -1344,7 +1072,7 @@ class ServiceTaskPaletteProvider {
1344
1072
  'create.service-task': {
1345
1073
  group: 'activity',
1346
1074
  className: 'bpmn-icon-service-task',
1347
- title: this.translate('Create ServiceTask'),
1075
+ title: this.translate('Create service task'),
1348
1076
  action: {
1349
1077
  dragstart: this.createServiceTask,
1350
1078
  click: this.createServiceTask
@@ -1375,7 +1103,7 @@ class ServiceTaskContextPadProvider {
1375
1103
  'append.service-task': {
1376
1104
  group: 'model',
1377
1105
  className: 'bpmn-icon-service-task',
1378
- title: this.translate('Append ServiceTask'),
1106
+ title: this.translate('Append service task'),
1379
1107
  action: {
1380
1108
  hover: this.appendServiceTaskPreview,
1381
1109
  click: this.appendServiceTask,
@@ -1422,8 +1150,7 @@ class HideOtherPaletteProvider {
1422
1150
  'create.end-event',
1423
1151
  'create.user-task',
1424
1152
  'create.service-task',
1425
- 'create.exclusive-gateway',
1426
- 'xml'
1153
+ // 'create.exclusive-gateway'
1427
1154
  ];
1428
1155
  palette.registerProvider(0, this);
1429
1156
  }
@@ -1449,23 +1176,23 @@ class HideOtherContextPadProvider {
1449
1176
  }
1450
1177
  getContextPadEntries(element) {
1451
1178
  return (entries) => {
1179
+ if (isLabel(element)) {
1180
+ return {};
1181
+ }
1452
1182
  if (is(element, 'bpmn:EndEvent')) {
1453
1183
  return {
1454
- 'delete': entries['delete'],
1455
- 'set-color': entries['set-color']
1184
+ 'delete': entries['delete']
1456
1185
  };
1457
1186
  }
1458
1187
  else if (is(element, 'bpmn:SequenceFlow')) {
1459
1188
  if (entries['replace']) {
1460
1189
  return {
1461
1190
  'replace': this.createReplaceAction(element),
1462
- 'delete': entries['delete'],
1463
- 'set-color': entries['set-color']
1191
+ 'delete': entries['delete']
1464
1192
  };
1465
1193
  }
1466
1194
  return {
1467
- 'delete': entries['delete'],
1468
- 'set-color': entries['set-color']
1195
+ 'delete': entries['delete']
1469
1196
  };
1470
1197
  }
1471
1198
  else if (is(element, 'bpmn:Gateway')) {
@@ -1476,18 +1203,16 @@ class HideOtherContextPadProvider {
1476
1203
  'append.end-event': entries['append.end-event'],
1477
1204
  'connect': entries['connect'],
1478
1205
  'replace': this.createReplaceAction(element),
1479
- 'delete': entries['delete'],
1480
- 'set-color': entries['set-color']
1206
+ 'delete': entries['delete']
1481
1207
  };
1482
1208
  }
1483
1209
  return {
1484
1210
  'append.user-task': entries['append.user-task'],
1485
1211
  'append.service-task': entries['append.service-task'],
1486
- 'append.gateway': entries['append.gateway'],
1212
+ // 'append.gateway': entries['append.gateway'],
1487
1213
  'append.end-event': entries['append.end-event'],
1488
1214
  'connect': entries['connect'],
1489
- 'delete': entries['delete'],
1490
- 'set-color': entries['set-color']
1215
+ 'delete': entries['delete']
1491
1216
  };
1492
1217
  };
1493
1218
  }
@@ -1550,149 +1275,6 @@ var customHideOtherModule = {
1550
1275
  gatewayReplaceMenuProvider: ['type', GatewayReplaceMenuProvider]
1551
1276
  };
1552
1277
 
1553
- const util = {};
1554
- function addExtensionProperty(element, key, value) {
1555
- let extensionElements = element.businessObject.get('extensionElements');
1556
- if (!extensionElements) {
1557
- extensionElements = util.bpmnFactory.create('bpmn:ExtensionElements', { values: [] });
1558
- extensionElements.$parent = element.businessObject;
1559
- util.modeling.updateModdleProperties(element, element.businessObject, { extensionElements });
1560
- }
1561
- let properties = null;
1562
- const extensionElementValues = extensionElements.get('values');
1563
- const existPropertiesElements = extensionElementValues.filter((value) => is(value, 'camunda:Properties'));
1564
- if (existPropertiesElements.length > 0) {
1565
- properties = existPropertiesElements[0];
1566
- }
1567
- if (!properties) {
1568
- properties = util.bpmnFactory.create('camunda:Properties', { values: [] });
1569
- properties.$parent = extensionElements;
1570
- util.modeling.updateModdleProperties(element, extensionElements, { values: [...extensionElements.get('values'), properties] });
1571
- }
1572
- const propertyValues = properties.get('values');
1573
- const existPropertyIndex = propertyValues.findIndex((value) => value.name === key);
1574
- if (existPropertyIndex > -1) {
1575
- util.modeling.updateModdleProperties(element, propertyValues[existPropertyIndex], { name: key, value });
1576
- }
1577
- else {
1578
- const property = util.bpmnFactory.create('camunda:Property', { name: key, value });
1579
- property.$parent = properties;
1580
- util.modeling.updateModdleProperties(element, properties, { values: [...properties.get('values'), property] });
1581
- }
1582
- }
1583
- function getExtensionPropertyValue(element, key) {
1584
- let extensionElements = element.businessObject.get('extensionElements');
1585
- if (!extensionElements) {
1586
- return '';
1587
- }
1588
- let properties = null;
1589
- const extensionElementValues = extensionElements.get('values');
1590
- const existPropertiesElements = extensionElementValues.filter((value) => is(value, 'camunda:Properties'));
1591
- if (existPropertiesElements.length > 0) {
1592
- properties = existPropertiesElements[0];
1593
- }
1594
- if (!properties) {
1595
- return '';
1596
- }
1597
- const propertyValues = properties.get('values');
1598
- const existPropertyIndex = propertyValues.findIndex((value) => value.name === key);
1599
- if (existPropertyIndex > -1) {
1600
- return propertyValues[existPropertyIndex].value;
1601
- }
1602
- }
1603
-
1604
- // @ts-ignore
1605
- class TaskDescriptionProps {
1606
- constructor(props) {
1607
- this.id = 'Coast_taskDescription';
1608
- const { element } = props;
1609
- this.component = () => {
1610
- return TextAreaEntry({
1611
- element: element,
1612
- id: this.id,
1613
- label: util.translate('Task description'),
1614
- getValue: () => {
1615
- return getExtensionPropertyValue(element, this.id);
1616
- },
1617
- setValue: (value) => {
1618
- addExtensionProperty(element, this.id, value);
1619
- },
1620
- debounce: util.debounce,
1621
- autoResize: true
1622
- });
1623
- };
1624
- this.isEdited = isTextAreaEntryEdited;
1625
- }
1626
- }
1627
-
1628
- // @ts-ignore
1629
- class UserAssignmentStaticOrDynamicProps {
1630
- constructor(props) {
1631
- this.id = 'Coast_userAssignment_staticOrDynamic';
1632
- const { element } = props;
1633
- this.component = () => {
1634
- return SelectEntry({
1635
- element: element,
1636
- id: this.id,
1637
- label: util.translate('Set assignment rule'),
1638
- getValue: () => {
1639
- return getExtensionPropertyValue(element, this.id);
1640
- },
1641
- setValue: (value) => {
1642
- addExtensionProperty(element, this.id, value);
1643
- },
1644
- getOptions: () => {
1645
- return [
1646
- { value: '', label: util.translate('dynamic user') },
1647
- { value: 'static_user', label: util.translate('static user') },
1648
- { value: 'dynamic_role', label: util.translate('dynamic role') },
1649
- { value: 'static_role', label: util.translate('static role') }
1650
- ];
1651
- }
1652
- });
1653
- };
1654
- this.isEdited = isSelectEntryEdited;
1655
- }
1656
- }
1657
-
1658
- function getUserAssignmentProps(element) {
1659
- return [new UserAssignmentStaticOrDynamicProps(element)];
1660
- }
1661
-
1662
- class CustomPropertiesProvider {
1663
- constructor(propertiesPanel, translate, bpmnFactory, modeling, debounceInput) {
1664
- this.translate = translate;
1665
- util.translate = translate;
1666
- util.bpmnFactory = bpmnFactory;
1667
- util.modeling = modeling;
1668
- util.debounce = debounceInput;
1669
- propertiesPanel.registerProvider(0, this);
1670
- }
1671
- getGroups(element) {
1672
- return ((groups) => {
1673
- const generalGroup = groups.find((group) => group.id === 'general');
1674
- generalGroup.shouldOpen = true;
1675
- console.log(generalGroup);
1676
- if (is(element, 'bpmn:Process')) {
1677
- generalGroup.entries.splice(1, 3);
1678
- }
1679
- else if (is(element, 'bpmn:UserTask')) {
1680
- generalGroup.entries.splice(1, 1);
1681
- generalGroup.entries.push(...[
1682
- new TaskDescriptionProps({ element }),
1683
- ...getUserAssignmentProps({ element })
1684
- ]);
1685
- }
1686
- return [generalGroup];
1687
- });
1688
- }
1689
- }
1690
-
1691
- var customPropertiesPanelModule = {
1692
- __init__: ['customPropertiesProvider'],
1693
- customPropertiesProvider: ['type', CustomPropertiesProvider]
1694
- };
1695
-
1696
1278
  class CodeEditorComponent {
1697
1279
  set code(code) {
1698
1280
  this._code = code || '';
@@ -1742,10 +1324,10 @@ class CodeEditorComponent {
1742
1324
  }
1743
1325
  }
1744
1326
  CodeEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CodeEditorComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
1745
- CodeEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: CodeEditorComponent, selector: "rs-code-editor", inputs: { code: "code", language: "language", readonly: "readonly", enableMinimap: "enableMinimap", consoleMessage: "consoleMessage" }, outputs: { codeChange: "codeChange", onContentReady: "onContentReady" }, viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, static: true }], ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div class=\"editor-container\" #editorContainer></div>\n<div *ngIf=\"consoleMessage\" class=\"editor-console\">{{consoleMessage}}</div>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host .editor-container{flex:1}:host .editor-console{flex:0 0 30px;padding:4px;border:1px solid var(--coast-border-color, #dddddd);background-color:var(--coast-empty-color, #d4d4d4)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.DxLoadPanelComponent, selector: "dx-load-panel", inputs: ["animation", "closeOnOutsideClick", "container", "copyRootClassesToWrapper", "deferRendering", "delay", "elementAttr", "focusStateEnabled", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "indicatorSrc", "maxHeight", "maxWidth", "message", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showIndicator", "showPane", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "delayChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "indicatorSrcChange", "maxHeightChange", "maxWidthChange", "messageChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showIndicatorChange", "showPaneChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: i6$1.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }] });
1327
+ CodeEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: CodeEditorComponent, selector: "rs-code-editor", inputs: { code: "code", language: "language", readonly: "readonly", enableMinimap: "enableMinimap", consoleMessage: "consoleMessage" }, outputs: { codeChange: "codeChange", onContentReady: "onContentReady" }, viewQueries: [{ propertyName: "editorContainer", first: true, predicate: ["editorContainer"], descendants: true, static: true }], ngImport: i0, template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div class=\"editor-container\" #editorContainer></div>\n<div *ngIf=\"consoleMessage\" class=\"editor-console\">{{ consoleMessage }}</div>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host .editor-container{flex:1}:host .editor-console{flex:0 0 30px;padding:4px;border:1px solid var(--coast-border-color, #dddddd);background-color:var(--coast-empty-color, #d4d4d4)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.DxLoadPanelComponent, selector: "dx-load-panel", inputs: ["animation", "closeOnOutsideClick", "container", "copyRootClassesToWrapper", "deferRendering", "delay", "elementAttr", "focusStateEnabled", "height", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "indicatorSrc", "maxHeight", "maxWidth", "message", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showIndicator", "showPane", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "animationChange", "closeOnOutsideClickChange", "containerChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "delayChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "indicatorSrcChange", "maxHeightChange", "maxWidthChange", "messageChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showIndicatorChange", "showPaneChange", "visibleChange", "widthChange", "wrapperAttrChange"] }, { kind: "component", type: i6$1.DxoPositionComponent, selector: "dxo-position", inputs: ["at", "boundary", "boundaryOffset", "collision", "my", "of", "offset"] }] });
1746
1328
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CodeEditorComponent, decorators: [{
1747
1329
  type: Component,
1748
- args: [{ selector: 'rs-code-editor', template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div class=\"editor-container\" #editorContainer></div>\n<div *ngIf=\"consoleMessage\" class=\"editor-console\">{{consoleMessage}}</div>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host .editor-container{flex:1}:host .editor-console{flex:0 0 30px;padding:4px;border:1px solid var(--coast-border-color, #dddddd);background-color:var(--coast-empty-color, #d4d4d4)}\n"] }]
1330
+ args: [{ selector: 'rs-code-editor', template: "<dx-load-panel [container]=\"viewContainerRef.element.nativeElement\" [showPane]=\"false\"\n [visible]=\"loading\">\n <dxo-position [of]=\"viewContainerRef.element.nativeElement\"></dxo-position>\n</dx-load-panel>\n<div class=\"editor-container\" #editorContainer></div>\n<div *ngIf=\"consoleMessage\" class=\"editor-console\">{{ consoleMessage }}</div>\n", styles: [":host{display:flex;flex-flow:column nowrap}:host .editor-container{flex:1}:host .editor-console{flex:0 0 30px;padding:4px;border:1px solid var(--coast-border-color, #dddddd);background-color:var(--coast-empty-color, #d4d4d4)}\n"] }]
1749
1331
  }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { code: [{
1750
1332
  type: Input
1751
1333
  }], codeChange: [{
@@ -1767,7 +1349,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
1767
1349
 
1768
1350
  class CamundaBpmnEditorComponent {
1769
1351
  constructor() {
1352
+ this.selectedNodeChanged = new EventEmitter();
1770
1353
  this.isShowXml = false;
1354
+ this.isShowConfig = false;
1771
1355
  this.initialDiagram = '<?xml version="1.0" encoding="UTF-8"?>' +
1772
1356
  '<bpmn:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' +
1773
1357
  'xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" ' +
@@ -1789,7 +1373,9 @@ class CamundaBpmnEditorComponent {
1789
1373
  }
1790
1374
  set xml(xml) {
1791
1375
  this._xml = xml;
1792
- this.loadXml();
1376
+ setTimeout(() => {
1377
+ this.loadXml();
1378
+ });
1793
1379
  }
1794
1380
  get xml() {
1795
1381
  return this._xml;
@@ -1813,14 +1399,31 @@ class CamundaBpmnEditorComponent {
1813
1399
  customUserTaskModule,
1814
1400
  customServiceTaskModule,
1815
1401
  customHideOtherModule,
1816
- customPropertiesPanelModule
1402
+ // customPropertiesPanelModule
1817
1403
  ]
1818
1404
  });
1819
1405
  const logo = this.modeler._container.querySelector('.bjs-powered-by');
1820
1406
  if (logo) {
1821
1407
  this.modeler._container.removeChild(logo);
1822
1408
  }
1409
+ this.modeler.get('palette')._toggleState({ twoColumn: false });
1823
1410
  this.canvas = this.modeler.get('canvas');
1411
+ const eventBus = this.modeler.get('eventBus');
1412
+ eventBus.on(['propertiesPanel.updated'], ($event) => {
1413
+ if (Array.isArray($event.element)) {
1414
+ this.selectedNodeChanged.emit();
1415
+ }
1416
+ else {
1417
+ this.selectedNodeChanged.emit({
1418
+ element: $event.element,
1419
+ util: {
1420
+ bpmnFactory: this.modeler.get('bpmnFactory'),
1421
+ modeling: this.modeler.get('modeling'),
1422
+ elementRegistry: this.modeler.get('elementRegistry')
1423
+ }
1424
+ });
1425
+ }
1426
+ });
1824
1427
  this.loadXml();
1825
1428
  }
1826
1429
  loadXml() {
@@ -1845,12 +1448,14 @@ class CamundaBpmnEditorComponent {
1845
1448
  }
1846
1449
  }
1847
1450
  CamundaBpmnEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CamundaBpmnEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1848
- CamundaBpmnEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: CamundaBpmnEditorComponent, selector: "rs-camunda-bpmn-editor", inputs: { xml: "xml" }, viewQueries: [{ propertyName: "bpmnContainer", first: true, predicate: ["bpmnContainer"], descendants: true }, { propertyName: "bpmnConfig", first: true, predicate: ["bpmnConfig"], descendants: true }], ngImport: i0, template: "<div class=\"main\">\n <div class=\"container\" #bpmnContainer></div>\n <div class=\"config\" #bpmnConfig></div>\n <div class=\"xml-viewer\" [ngStyle]=\"{display: isShowXml ? 'flex' : 'none'}\">\n <rs-code-editor language=\"xml\" [code]=\"xml\" [readonly]=\"true\" [enableMinimap]=\"true\"></rs-code-editor>\n </div>\n</div>\n<div class=\"footer\">\n <dx-button [type]=\"isShowXml ? 'default' : 'normal'\" text=\"XML\" [hoverStateEnabled]=\"false\"\n (onClick)=\"showXml()\"></dx-button>\n</div>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .main{flex:1;display:flex;flex-flow:row nowrap;position:relative}:host .main .container{flex:1}:host .main .config{flex:0 0 360px;border:1px solid var(--coast-border-color, #dddddd)}:host .main .xml-viewer{position:absolute;width:100%;height:100%;display:flex;flex-flow:column nowrap;z-index:var(--coast-z-index-drawer, 2000)}:host .main .xml-viewer rs-code-editor{flex:1}:host .footer{flex:0 0 24px;border:1px solid var(--coast-border-color, #dddddd)}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CodeEditorComponent, selector: "rs-code-editor", inputs: ["code", "language", "readonly", "enableMinimap", "consoleMessage"], outputs: ["codeChange", "onContentReady"] }, { kind: "component", type: i3.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }] });
1451
+ CamundaBpmnEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: CamundaBpmnEditorComponent, selector: "rs-camunda-bpmn-editor", inputs: { xml: "xml" }, outputs: { selectedNodeChanged: "selectedNodeChanged" }, viewQueries: [{ propertyName: "bpmnContainer", first: true, predicate: ["bpmnContainer"], descendants: true }, { propertyName: "bpmnConfig", first: true, predicate: ["bpmnConfig"], descendants: true }], ngImport: i0, template: "<div class=\"main\">\n <div class=\"container\" #bpmnContainer></div>\n <div [hidden]=\"!isShowConfig\" class=\"config\" #bpmnConfig></div>\n <div class=\"xml-viewer\" [ngStyle]=\"{display: isShowXml ? 'flex' : 'none'}\">\n <rs-code-editor language=\"xml\" [code]=\"xml\" [readonly]=\"true\" [enableMinimap]=\"true\"></rs-code-editor>\n </div>\n</div>\n<div class=\"footer\">\n <dx-button [type]=\"isShowXml ? 'default' : 'normal'\" text=\"XML\" [hoverStateEnabled]=\"false\"\n (onClick)=\"showXml()\"></dx-button>\n <dx-button [type]=\"isShowConfig ? 'default' : 'normal'\" icon=\"coast-icon coast-icon-setting\"\n style=\"float: right;\"\n (onClick)=\"isShowConfig = !isShowConfig;\"></dx-button>\n</div>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .main{flex:1;display:flex;flex-flow:row nowrap;position:relative}:host .main .container{flex:1}:host .main .config{flex:0 0 360px;border:1px solid var(--coast-border-color, #dddddd)}:host .main .xml-viewer{position:absolute;width:100%;height:100%;display:flex;flex-flow:column nowrap;z-index:var(--coast-z-index-drawer, 2000)}:host .main .xml-viewer rs-code-editor{flex:1}:host .footer{flex:0 0 24px;border:1px solid var(--coast-border-color, #dddddd)}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CodeEditorComponent, selector: "rs-code-editor", inputs: ["code", "language", "readonly", "enableMinimap", "consoleMessage"], outputs: ["codeChange", "onContentReady"] }, { kind: "component", type: i3.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }] });
1849
1452
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CamundaBpmnEditorComponent, decorators: [{
1850
1453
  type: Component,
1851
- args: [{ selector: 'rs-camunda-bpmn-editor', template: "<div class=\"main\">\n <div class=\"container\" #bpmnContainer></div>\n <div class=\"config\" #bpmnConfig></div>\n <div class=\"xml-viewer\" [ngStyle]=\"{display: isShowXml ? 'flex' : 'none'}\">\n <rs-code-editor language=\"xml\" [code]=\"xml\" [readonly]=\"true\" [enableMinimap]=\"true\"></rs-code-editor>\n </div>\n</div>\n<div class=\"footer\">\n <dx-button [type]=\"isShowXml ? 'default' : 'normal'\" text=\"XML\" [hoverStateEnabled]=\"false\"\n (onClick)=\"showXml()\"></dx-button>\n</div>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .main{flex:1;display:flex;flex-flow:row nowrap;position:relative}:host .main .container{flex:1}:host .main .config{flex:0 0 360px;border:1px solid var(--coast-border-color, #dddddd)}:host .main .xml-viewer{position:absolute;width:100%;height:100%;display:flex;flex-flow:column nowrap;z-index:var(--coast-z-index-drawer, 2000)}:host .main .xml-viewer rs-code-editor{flex:1}:host .footer{flex:0 0 24px;border:1px solid var(--coast-border-color, #dddddd)}\n"] }]
1454
+ args: [{ selector: 'rs-camunda-bpmn-editor', template: "<div class=\"main\">\n <div class=\"container\" #bpmnContainer></div>\n <div [hidden]=\"!isShowConfig\" class=\"config\" #bpmnConfig></div>\n <div class=\"xml-viewer\" [ngStyle]=\"{display: isShowXml ? 'flex' : 'none'}\">\n <rs-code-editor language=\"xml\" [code]=\"xml\" [readonly]=\"true\" [enableMinimap]=\"true\"></rs-code-editor>\n </div>\n</div>\n<div class=\"footer\">\n <dx-button [type]=\"isShowXml ? 'default' : 'normal'\" text=\"XML\" [hoverStateEnabled]=\"false\"\n (onClick)=\"showXml()\"></dx-button>\n <dx-button [type]=\"isShowConfig ? 'default' : 'normal'\" icon=\"coast-icon coast-icon-setting\"\n style=\"float: right;\"\n (onClick)=\"isShowConfig = !isShowConfig;\"></dx-button>\n</div>\n", styles: [":host{flex:1;display:flex;flex-flow:column nowrap}:host .main{flex:1;display:flex;flex-flow:row nowrap;position:relative}:host .main .container{flex:1}:host .main .config{flex:0 0 360px;border:1px solid var(--coast-border-color, #dddddd)}:host .main .xml-viewer{position:absolute;width:100%;height:100%;display:flex;flex-flow:column nowrap;z-index:var(--coast-z-index-drawer, 2000)}:host .main .xml-viewer rs-code-editor{flex:1}:host .footer{flex:0 0 24px;border:1px solid var(--coast-border-color, #dddddd)}\n"] }]
1852
1455
  }], propDecorators: { xml: [{
1853
1456
  type: Input
1457
+ }], selectedNodeChanged: [{
1458
+ type: Output
1854
1459
  }], bpmnContainer: [{
1855
1460
  type: ViewChild,
1856
1461
  args: ['bpmnContainer']
@@ -3871,10 +3476,10 @@ class IconSelectorComponent {
3871
3476
  }
3872
3477
  }
3873
3478
  IconSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: IconSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3874
- IconSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: IconSelectorComponent, selector: "rs-icon-selector", inputs: { target: "target" }, outputs: { select: "select" }, viewQueries: [{ propertyName: "popover", first: true, predicate: ["iconSelector"], descendants: true, static: true }, { propertyName: "iconZoomOut", first: true, predicate: ["iconZoomOut"], descendants: true, static: true }], ngImport: i0, template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{hoverIcon?.substring(11)}}</span>\n </div>\n</dx-popover>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i4.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "enableBodyScroll", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "enableBodyScrollChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }] });
3479
+ IconSelectorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: IconSelectorComponent, selector: "rs-icon-selector", inputs: { target: "target" }, outputs: { select: "select" }, viewQueries: [{ propertyName: "popover", first: true, predicate: ["iconSelector"], descendants: true, static: true }, { propertyName: "iconZoomOut", first: true, predicate: ["iconZoomOut"], descendants: true, static: true }], ngImport: i0, template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{ hoverIcon?.substring(11) }}</span>\n </div>\n</dx-popover>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3$1.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i3.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i4.DxPopoverComponent, selector: "dx-popover", inputs: ["animation", "closeOnOutsideClick", "container", "contentTemplate", "copyRootClassesToWrapper", "deferRendering", "disabled", "elementAttr", "enableBodyScroll", "height", "hideEvent", "hideOnOutsideClick", "hideOnParentScroll", "hint", "hoverStateEnabled", "maxHeight", "maxWidth", "minHeight", "minWidth", "position", "rtlEnabled", "shading", "shadingColor", "showCloseButton", "showEvent", "showTitle", "target", "title", "titleTemplate", "toolbarItems", "visible", "width", "wrapperAttr"], outputs: ["onContentReady", "onDisposing", "onHidden", "onHiding", "onInitialized", "onOptionChanged", "onShowing", "onShown", "onTitleRendered", "animationChange", "closeOnOutsideClickChange", "containerChange", "contentTemplateChange", "copyRootClassesToWrapperChange", "deferRenderingChange", "disabledChange", "elementAttrChange", "enableBodyScrollChange", "heightChange", "hideEventChange", "hideOnOutsideClickChange", "hideOnParentScrollChange", "hintChange", "hoverStateEnabledChange", "maxHeightChange", "maxWidthChange", "minHeightChange", "minWidthChange", "positionChange", "rtlEnabledChange", "shadingChange", "shadingColorChange", "showCloseButtonChange", "showEventChange", "showTitleChange", "targetChange", "titleChange", "titleTemplateChange", "toolbarItemsChange", "visibleChange", "widthChange", "wrapperAttrChange"] }] });
3875
3480
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: IconSelectorComponent, decorators: [{
3876
3481
  type: Component,
3877
- args: [{ selector: 'rs-icon-selector', template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{hoverIcon?.substring(11)}}</span>\n </div>\n</dx-popover>\n" }]
3482
+ args: [{ selector: 'rs-icon-selector', template: "<dx-popover #iconSelector\n maxWidth=\"280\"\n maxHeight=\"280\"\n [target]=\"target\"\n [showEvent]=\"{name: 'click'}\">\n <div *dxTemplate=\"let data of 'content'\">\n <ng-container *ngFor=\"let icon of iconList; let index=index\">\n <dx-button [icon]=\"'coast-icon ' + icon\" (onClick)=\"selectIcon(icon)\"\n (mouseenter)=\"zoomOut($event, icon)\" (mouseleave)=\"iconZoomOut.instance.hide()\"></dx-button>\n </ng-container>\n </div>\n</dx-popover>\n<dx-popover #iconZoomOut height=\"72px\" [enableBodyScroll]=\"false\">\n <div *dxTemplate=\"let data of 'content'\"\n style=\"display: flex; flex-flow: column nowrap; align-items: center; justify-content: center;\">\n <i [class]=\"hoverIcon\" style=\"font-size: 36px;\"></i>\n <span>{{ hoverIcon?.substring(11) }}</span>\n </div>\n</dx-popover>\n" }]
3878
3483
  }], ctorParameters: function () { return []; }, propDecorators: { target: [{
3879
3484
  type: Input
3880
3485
  }], select: [{
@@ -4028,16 +3633,19 @@ class ModalComponent {
4028
3633
  element.style.left = currentLeft + 'px';
4029
3634
  }
4030
3635
  onWindowResize() {
3636
+ if (this.size === 'full') {
3637
+ return;
3638
+ }
4031
3639
  this.modalElementRef.nativeElement.style.top = '24px';
4032
3640
  this.modalElementRef.nativeElement.style.left =
4033
3641
  (this.elementRef.nativeElement.parentElement.offsetWidth - this.modalElementRef.nativeElement.offsetWidth) / 2 + 'px';
4034
3642
  }
4035
3643
  }
4036
3644
  ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
4037
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ModalComponent, selector: "rs-modal", host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)", "window:resize": "onWindowResize($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\">\r\n <div #modal class=\"modal\" [ngStyle]=\"resolveModalPosition()\">\r\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\r\n <div class=\"modal-title\">{{title}}</div>\r\n <i class=\"icon-close\" (click)=\"hide()\"></i>\r\n </div>\r\n <div class=\"modal-content\">\r\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\r\n </div>\r\n <div *ngIf=\"footerTemplate\" class=\"modal-footer\">\r\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: footerTemplateContext}\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--coast-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;z-index:var(--coast-z-index-modal, 1050);background-color:var(--coast-base-bg-color, #fff);border-radius:4px;box-shadow:0 10px 24px #252b3a3d;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--coast-border-color, #dddddd)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:14px;font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:14px}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--coast-danger-color, #d9534f);background-color:var(--coast-global-bg-color, #f6f6f8)}:host .modal-backdrop .modal .modal-content{flex:1;overflow:auto;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-footer{flex:none;padding-top:12px;border-top:1px solid var(--coast-border-color, #dddddd)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
3645
+ ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ModalComponent, selector: "rs-modal", host: { listeners: { "document:mouseup": "onMouseup($event)", "document:mousemove": "onMousemove($event)", "window:resize": "onWindowResize($event)" } }, viewQueries: [{ propertyName: "modalElementRef", first: true, predicate: ["modal"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"modal-backdrop\">\r\n <div #modal class=\"modal\" [ngStyle]=\"resolveModalPosition()\">\r\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\r\n <div class=\"modal-title\">{{ title }}</div>\r\n <i class=\"icon-close\" (click)=\"hide()\"></i>\r\n </div>\r\n <div class=\"modal-content\">\r\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\r\n </div>\r\n <div *ngIf=\"footerTemplate\" class=\"modal-footer\">\r\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: footerTemplateContext}\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--coast-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;z-index:var(--coast-z-index-modal, 1050);background-color:var(--coast-base-bg-color, #fff);border-radius:4px;box-shadow:0 10px 24px #252b3a3d;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--coast-border-color, #dddddd)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:14px;font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:14px}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--coast-danger-color, #d9534f);background-color:var(--coast-global-bg-color, #f6f6f8)}:host .modal-backdrop .modal .modal-content{flex:1;overflow:auto;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-footer{flex:none;padding-top:12px;border-top:1px solid var(--coast-border-color, #dddddd)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
4038
3646
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ModalComponent, decorators: [{
4039
3647
  type: Component,
4040
- args: [{ selector: 'rs-modal', template: "<div class=\"modal-backdrop\">\r\n <div #modal class=\"modal\" [ngStyle]=\"resolveModalPosition()\">\r\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\r\n <div class=\"modal-title\">{{title}}</div>\r\n <i class=\"icon-close\" (click)=\"hide()\"></i>\r\n </div>\r\n <div class=\"modal-content\">\r\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\r\n </div>\r\n <div *ngIf=\"footerTemplate\" class=\"modal-footer\">\r\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: footerTemplateContext}\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--coast-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;z-index:var(--coast-z-index-modal, 1050);background-color:var(--coast-base-bg-color, #fff);border-radius:4px;box-shadow:0 10px 24px #252b3a3d;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--coast-border-color, #dddddd)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:14px;font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:14px}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--coast-danger-color, #d9534f);background-color:var(--coast-global-bg-color, #f6f6f8)}:host .modal-backdrop .modal .modal-content{flex:1;overflow:auto;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-footer{flex:none;padding-top:12px;border-top:1px solid var(--coast-border-color, #dddddd)}\n"] }]
3648
+ args: [{ selector: 'rs-modal', template: "<div class=\"modal-backdrop\">\r\n <div #modal class=\"modal\" [ngStyle]=\"resolveModalPosition()\">\r\n <div class=\"modal-header\" (mousedown)=\"onMousedown($event)\">\r\n <div class=\"modal-title\">{{ title }}</div>\r\n <i class=\"icon-close\" (click)=\"hide()\"></i>\r\n </div>\r\n <div class=\"modal-content\">\r\n <ng-template [ngTemplateOutlet]=\"contentTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: contentTemplateContext}\"></ng-template>\r\n </div>\r\n <div *ngIf=\"footerTemplate\" class=\"modal-footer\">\r\n <ng-template [ngTemplateOutlet]=\"footerTemplate\"\r\n [ngTemplateOutletContext]=\"{$implicit: footerTemplateContext}\"></ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [":host .modal-backdrop{position:absolute;inset:0;z-index:calc(var(--coast-z-index-modal, 1050) - 1)}:host .modal-backdrop .modal{position:absolute;z-index:var(--coast-z-index-modal, 1050);background-color:var(--coast-base-bg-color, #fff);border-radius:4px;box-shadow:0 10px 24px #252b3a3d;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-header{flex:0 0 36px;border-bottom:1px solid var(--coast-border-color, #dddddd)}:host .modal-backdrop .modal .modal-header .modal-title{padding:12px 24px;font-size:14px;font-weight:700}:host .modal-backdrop .modal .modal-header i{position:absolute;top:12px;right:12px;padding:4px;font-size:14px}:host .modal-backdrop .modal .modal-header i:hover{cursor:pointer;color:var(--coast-danger-color, #d9534f);background-color:var(--coast-global-bg-color, #f6f6f8)}:host .modal-backdrop .modal .modal-content{flex:1;overflow:auto;display:flex;flex-flow:column nowrap}:host .modal-backdrop .modal .modal-footer{flex:none;padding-top:12px;border-top:1px solid var(--coast-border-color, #dddddd)}\n"] }]
4041
3649
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { modalElementRef: [{
4042
3650
  type: ViewChild,
4043
3651
  args: ['modal', { static: true }]