ngx-rs-ant 1.6.3 → 1.6.4

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 +3 -3
  16. package/fesm2015/ngx-rs-ant.mjs +72 -467
  17. package/fesm2015/ngx-rs-ant.mjs.map +1 -1
  18. package/fesm2020/ngx-rs-ant.mjs +72 -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';
@@ -153,10 +153,10 @@ class PluginActiveComponent {
153
153
  }
154
154
  }
155
155
  PluginActiveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginActiveComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
156
- 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
+ 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"] }] });
157
157
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginActiveComponent, decorators: [{
158
158
  type: Component,
159
- 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
+ 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"] }]
160
160
  }], propDecorators: { _style: [{
161
161
  type: HostBinding,
162
162
  args: ['style']
@@ -177,10 +177,10 @@ class PluginHoverComponent {
177
177
  }
178
178
  }
179
179
  PluginHoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginHoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
180
- 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
+ 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"] });
181
181
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PluginHoverComponent, decorators: [{
182
182
  type: Component,
183
- 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
+ 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"] }]
184
184
  }], propDecorators: { _style: [{
185
185
  type: HostBinding,
186
186
  args: ['style']
@@ -935,302 +935,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
935
935
 
936
936
  const translations = {
937
937
  // 调色板
938
- 'Activate the hand tool': '激活拖拽工具',
939
- 'Activate the lasso tool': '激活框选工具',
940
- 'Activate the create/remove space tool': '激活空间移动工具',
941
- 'Activate the global connect tool': '激活全局连接工具',
942
- 'Create StartEvent': '创建开始节点',
943
- 'Create EndEvent': '创建结束节点',
944
- 'Create UserTask': '创建用户任务',
945
- 'Create ServiceTask': '创建服务任务',
946
- 'Create Gateway': '创建网关节点',
938
+ 'Activate hand tool': '激活拖拽工具',
939
+ 'Activate lasso tool': '激活框选工具',
940
+ 'Activate create/remove space tool': '激活空间移动工具',
941
+ 'Activate global connect tool': '激活全局连接工具',
942
+ 'Create start event': '创建开始节点',
943
+ 'Create end event': '创建结束节点',
944
+ 'Create user task': '创建用户任务',
945
+ 'Create service task': '创建服务任务',
946
+ 'Create gateway': '创建网关节点',
947
947
  // 面板
948
- 'Append EndEvent': '追加结束节点',
949
- 'Append UserTask': '追加用户任务',
950
- 'Append ServiceTask': '追加服务任务',
951
- 'Append Gateway': '追加网关节点',
952
- 'Connect using Sequence/MessageFlow or Association': '使用序列/消息流或关联连接',
953
- 'Remove': '删除',
954
- 'Set Color': '设置颜色',
948
+ 'Append user task': '追加用户任务',
949
+ 'Append service task': '追加服务任务',
950
+ 'Append gateway': '追加网关节点',
951
+ 'Append end event': '追加结束节点',
952
+ 'Connect to other element': '连接其它节点',
953
+ 'Delete': '删除',
955
954
  'Change type': '改变节点类型',
956
- 'Exclusive Gateway': '互斥网关',
957
- 'Parallel Gateway': '并行网关',
958
- 'Default Flow': '默认流向',
959
- 'Sequence Flow': '顺序流向',
955
+ 'Exclusive gateway': '互斥网关',
956
+ 'Parallel gateway': '并行网关',
957
+ 'Default flow': '默认流向',
958
+ 'Sequence flow': '顺序流向',
959
+ 'Conditional flow': '条件流向',
960
960
  'Open minimap': '打开缩略图',
961
961
  'Close minimap': '关闭缩略图',
962
- // 配置
963
- 'General': '参数配置',
964
- 'Name': '名称',
965
- 'Task description': '任务描述',
966
- 'Set assignment rule': '设置用户规则',
967
- 'dynamic user': '动态用户',
968
- 'static user': '静态用户',
969
- 'dynamic role': '动态角色',
970
- 'static role': '静态角色',
971
- /*
972
- 'Create {type}': '创建{type}',
973
- 'Create Intermediate/Boundary Event': '创建中间/边界事件',
974
- 'Append {type}': '追加{type}', //'追加{type}',
975
- 'Add Lane above': '添加上面泳道',
976
- 'Divide into two Lanes': '拆分两个泳道',
977
- 'Divide into three Lanes': '拆分三个泳道',
978
- 'Add Lane below': '添下面泳道',
979
- 'Append compensation activity': '追加补偿活动',
980
- 'Change type': '改变节点类型', // 改变事情类型
981
- 'Connect using Association': '使用关联连接',
982
- 'Connect using Sequence/MessageFlow or Association': '使用序列/消息流或关联连接',
983
- 'Connect using DataInputAssociation': '使用数据输入关联连接',
984
- 'Remove': '删除',
985
- 'Create expanded SubProcess': '创建扩展子流程',
986
- // 'Create Pool/Participant': '创建者或参与者',
987
- 'Create IntermediateThrowEvent/BoundaryEvent': '创建中间事件或边界事件',
988
- 'Parallel Multi Instance': '并行多实例',
989
- 'Sequential Multi Instance': '顺序多重实例',
990
- 'Loop': '循环',
991
- 'Ad-hoc': '特别指定',
992
- 'Task': '任务',
993
- 'Send Task': '发送任务', // 发送任务
994
- 'Receive Task': '接收任务',
995
- 'User Task': '用户任务',
996
- 'Manual Task': '手工任务',
997
- 'Business Rule Task': '作业规则任务',
998
- 'Service Task': '服务任务',
999
- 'Script Task': '脚本任务',
1000
- 'Call Activity': '调用活动',
1001
- 'Sub Process (collapsed)': '子过程(折叠)',
1002
- 'Sub Process (expanded)': '子过程(展开)',
1003
- 'Start Event': '开始事件',
1004
- 'Intermediate Throw Event': '抛出事件',
1005
- 'End Event': '结束事件',
1006
- 'Message Start Event': '消息开始事件',
1007
- 'Timer Start Event': '时间开始事件',
1008
- 'Conditional Start Event': '条件开始事件',
1009
- 'Signal Start Event': '信号开始事件',
1010
- 'Error Start Event': '错误开始事件',
1011
- 'Escalation Start Event': '升级开始事件',
1012
- 'Compensation Start Event': '补偿开始事件',
1013
- 'Message Start Event (non-interrupting)': '消息开始事件(不中断)',
1014
- 'Timer Start Event (non-interrupting)': '定时开始事件(不中断)',
1015
- 'Conditional Start Event (non-interrupting)': '条件开始事件(不中断)',
1016
- 'Signal Start Event (non-interrupting)': '信号开始事件(不中断)',
1017
- 'Escalation Start Event (non-interrupting)': '升级开始事件(不中断)',
1018
- 'Message Intermediate Catch Event': '信息捕获事件',
1019
- 'Message Intermediate Throw Event': '信息抛出事件',
1020
- 'Timer Intermediate Catch Event': '定时器捕获事件',
1021
- 'Escalation Intermediate Throw Event': '升级抛出事件',
1022
- 'Conditional Intermediate Catch Event': '条件捕获事件',
1023
- 'Link Intermediate Catch Event': '链接捕获事件',
1024
- 'Link Intermediate Throw Event': '链接抛出事件',
1025
- 'Compensation Intermediate Throw Event': '补偿抛出事件',
1026
- 'Signal Intermediate Catch Event': '信号捕获事件',
1027
- 'Signal Intermediate Throw Event': '信号抛出事件',
1028
- 'Message End Event': '消息结束事件',
1029
- 'Escalation End Event': '升级结束事件',
1030
- 'Error End Event': '错误结束事件',
1031
- 'Cancel End Event': '取消结束事件',
1032
- 'Compensation End Event': '补偿结束事件',
1033
- 'Signal End Event': '信号结束事件',
1034
- 'Terminate End Event': '终止结束事件',
1035
- 'Message Boundary Event': '消息边界事件',
1036
- 'Message Boundary Event (non-interrupting)': '消息边界事件(非中断)',
1037
- 'Timer Boundary Event': '定时边界事件',
1038
- 'Timer Boundary Event (non-interrupting)': '定时边界事件(非中断)',
1039
- 'Escalation Boundary Event': '升级边界事件',
1040
- 'Escalation Boundary Event (non-interrupting)': '升级边界事件(非中断)',
1041
- 'Conditional Boundary Event': '有条件的边界事件',
1042
- 'Conditional Boundary Event (non-interrupting)': '条件边界事件(非中断)',
1043
- 'Error Boundary Event': '错误边界事件',
1044
- 'Cancel Boundary Event': '取消边界事件',
1045
- 'Signal Boundary Event': '信号边界事件',
1046
- 'Signal Boundary Event (non-interrupting)': '信号边界事件(非中断)',
1047
- 'Compensation Boundary Event': '补偿边界事件',
1048
- 'Exclusive': '排他',
1049
- 'Exclusive Gateway': '互斥网关',
1050
- 'Parallel Gateway': '并行网关',
1051
- 'Inclusive Gateway': '相容网关',
1052
- 'Complex Gateway': '复杂网关',
1053
- 'Event based Gateway': '事件网关',
1054
- 'Transaction': '交换',
1055
- 'Sub Process': '子流程',
1056
- 'Event Sub Process': '事件子流程',
1057
- 'Empty Pool (removes content)': '清空泳池(删除内容)',
1058
- 'Collapsed Pool': '合并泳池',
1059
- 'Expanded Pool': '扩展泳池',
1060
-
1061
- // flow
1062
- 'Default Flow': '默认流向',
1063
- 'Sequence Flow': '顺序流向',
1064
- 'Conditional Flow': '条件流向',
1065
-
1066
- // Errors
1067
- 'no parent for {element} in {parent}': '在{parent}中的{element}没有父元素',
1068
- 'no shape type specified': '没有指定的形状类型',
1069
- 'flow elements must be children of pools/participants': '流动元素必须是游泳池/参与者',
1070
- 'out of bounds release': '跨界界释放',
1071
- 'more than {count} child lanes': '超出{count}分支',
1072
- 'element required': '被请求元素',
1073
- 'diagram not part of bpmn': '图在bpmn中',
1074
- 'no diagram to display': '没有图表来显示',
1075
- 'no process or collaboration to display': '没有流程或协作显示',
1076
- 'element {element} referenced by {referenced}#{property} not yet drawn':
1077
- '元素{element}在{referenced}#{property}的引用还没有绘制',
1078
- 'already rendered {element}': '已经提供{element}',
1079
- 'failed to import {element}': '元素导入失败{element}',
1080
- 'ID must not be empty.': 'ID不能为空!',
1081
- 'ID must be a valid QName.': '无效的ID输入!',
1082
-
1083
- // message
1084
- 'This maps to the process definition key.': '映射流程定义的Key。',
1085
- 'This maps to the task definition key.': '映射任务定义的Key。',
1086
- 'Specify more than one group as a comma separated list.': '多于一个组时为逗号分隔的列表。',
1087
- 'Specify more than one user as a comma separated list.': '多于一个用户时为逗号分隔的列表。',
1088
- 'Must provide either loop cardinality or collection': '必须提供循环基数或集合',
1089
- 'Available process variables, identified in the diagram.': '可用的过程变量,如图中所示。',
1090
- 'No variables found.': '未找到变量。',
1091
-
1092
- 'General': '基本属性',
1093
- 'Documentation': '备注',
1094
- 'Element documentation': '元素备注',
1095
- 'Executable': '可执行',
1096
- 'Process Documentation': '过程说明',
1097
- '': '无',
1098
- 'Listeners': '监听器',
1099
- 'Execution Listener': '扩展监听器',
1100
- 'Extensions': '扩展',
1101
- 'Properties': '属性',
1102
- 'Add Property': '添加属性',
1103
- 'Process Id': '流程标识',
1104
- 'Process Name': '流程名称',
1105
- 'Participant Id': '参与者标识',
1106
- 'Participant Name': '参与者名称',
1107
- 'Name': '名称',
1108
- 'Id': '标识',
1109
- 'ID': '标识',
1110
- 'Value': '值',
1111
- 'Version Tag': '版本标记',
1112
- 'External Task Configuration': '外部任务配置',
1113
- 'Task Priority': '任务优先级',
1114
- 'Job Configuration': '作业配置',
1115
- 'Job Priority': '作业优先级',
1116
- 'History Configuration': '历史配置',
1117
- 'History Time To Live': '历史生存时间',
1118
- 'Details': '详情',
1119
- 'Initiator': '初始化',
1120
- 'Asynchronous Continuations': '异步连续',
1121
- 'Asynchronous Before': '异步之前',
1122
- 'Asynchronous After': '异步之后',
1123
- 'Forms': '表单',
1124
- 'Form Key': '表单名',
1125
- 'Form Fields': '表单字段',
1126
- 'Form Buttons': '表单按钮',
1127
- 'Form Field': '表单字段',
1128
- 'Form Button': '表单按钮',
1129
- 'Button Name': '按钮名称',
1130
- 'Business Key': '业务键',
1131
- 'Type': '类型',
1132
- 'Label': '标签',
1133
- 'Default Value': '默认值',
1134
- 'Validation': '校验',
1135
- 'Add Constraint': '添加约束',
1136
- 'Config': '配置',
1137
- 'Must provide a value': '必须提供一个值',
1138
- 'Event Type': '事件类型',
1139
- 'Listener Type': '监听器类型',
1140
- 'Java Class': 'Java 类',
1141
- 'Field Injection': '字段注入',
1142
- 'Fields': '字段',
1143
- 'Condition Type': '条件类型',
1144
- 'Script Format': '脚本格式',
1145
- 'Script Type': '脚本类型',
1146
- 'Inline Script': '内联脚本',
1147
- 'External Resource': '外部资源',
1148
- 'Expression': '表达式',
1149
- 'Delegate Expression': '委托表达式',
1150
- 'Script': '脚本',
1151
- 'Parameter must have a name': '参数必须有一个名称',
1152
- 'String': '字符串',
1153
- 'Implementation': '实现',
1154
- 'External': '外部',
1155
- 'Connector': '连接器',
1156
- 'Must configure Connector': '必须配置连接器',
1157
- 'Connector Id': '连接器ID',
1158
- 'Input/Output': '输入/输出',
1159
- 'Input Parameters': '输入参数',
1160
- 'Input Parameter': '输入参数',
1161
- 'Output Parameters': '输出参数',
1162
- 'Output Parameter': '输出参数',
1163
- 'Text': '文本',
1164
- 'List': '列表',
1165
- 'Add Entry': '增加条目',
1166
- 'Field Injections': '字段注入',
1167
- 'TextAnnotation': '文本注释',
1168
- 'Variables': '变量',
1169
- 'In Mapping': '输入映射',
1170
- 'Out Mapping': '输出映射',
1171
- 'Target': '目标',
1172
- 'Source': '来源',
1173
- 'Local': '本地',
1174
- 'Candidate Starter Configuration': '候选人起动器配置',
1175
- 'Candidate Starter Groups': '候选人起动器组',
1176
- 'Candidate Starter Users': '候选人起动器用户',
1177
- 'Configure Connector': '配置连接器',
1178
- 'Assignee Type': '受理人类型',
1179
- 'Assignee': '受理人',
1180
- 'Dynamic': '动态',
1181
- 'Static': '静态',
1182
- 'User': '用户',
1183
- 'Role': '角色',
1184
- 'Candidate Users': '候选用户',
1185
- 'Candidate Groups': '候选组',
1186
- 'Due Date': '到期',
1187
- 'Follow Up Date': '跟踪日期',
1188
- 'Priority': '优先级',
1189
- 'The due date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)':
1190
- '可以使用EL表达式,(例如:${someDate} 或者ISO日期(例如:2015-06-26T09:54:00))',
1191
- 'The follow up date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)':
1192
- '可以使用EL表达式,(例如:${someDate} 或者ISO日期(例如:2015-06-26T09:54:00))',
1193
-
1194
- 'Create Task': '创建任务',
1195
- 'Create DataObjectReference': '创建数据对象引用',
1196
- 'Create DataStoreReference': '创建数据存储引用',
1197
- 'Create Group': '创建分组',
1198
- 'Category Value': '类别值',
1199
-
1200
- //custom
1201
- 'Create CallActivity': '创建调用任务',
1202
- 'Append Gateway': '追加网关节点',
1203
- 'Append Intermediate/Boundary Event': '追加中间/边界事件',
1204
- 'StartEvent': '开始节点',
1205
- 'EndEvent': '结束节点',
1206
- 'DataObjectReference': '数据对象引用',
1207
- 'DataStoreReference': '数据存储引用',
1208
- 'Element must have an unique id.': '节点元素必须用于唯一编号',
1209
- 'Create ExclusiveGateway': '创建排他网关',
1210
- 'Create Pool/Participant': '创建泳道或参与者',
1211
- 'Append ExclusiveGateway': '追加排他网关',
1212
- 'Append Task': '追加任务',
1213
- 'Append UserTask': '追加用户任务',
1214
- 'Append Sequence': '追加连线',
1215
- 'Append EndEvent': '追加结束节点',
1216
- 'UserTask': '用户任务',
1217
- 'ExclusiveGateway': '条件', //排他网关
1218
- 'Element is not set findUserType': '员工节点未设置节点人员',
1219
- 'Token Simulation ': '流程模拟',
1220
- 'Tasklist Configuration': '任务列表配置',
1221
- 'Startable': '可启动',
1222
- 'Element Documentation': '元素描述',
1223
-
1224
- 'Multi Instance': '多实例',
1225
- 'Loop Cardinality': '循环基数',
1226
- 'Collection': '集合',
1227
- 'Element Variable': '元素变量',
1228
- 'Completion Condition': '完成条件',
1229
- 'Multi Instance Asynchronous Before': '多实例异步之前',
1230
- 'Multi Instance Asynchronous After': '多实例异步之后',
1231
- 'Multi Instance Exclusive': '多实例排他',
1232
- 'Multi Instance Retry Time Cycle': '多实例重试时间',
1233
- */
1234
962
  };
1235
963
 
1236
964
  function customTranslate(template, replacements) {
@@ -1261,7 +989,7 @@ class UserTaskPaletteProvider {
1261
989
  'create.user-task': {
1262
990
  group: 'activity',
1263
991
  className: 'bpmn-icon-user-task',
1264
- title: this.translate('Create UserTask'),
992
+ title: this.translate('Create user task'),
1265
993
  action: {
1266
994
  dragstart: this.createUserTask,
1267
995
  click: this.createUserTask
@@ -1297,7 +1025,7 @@ class UserTaskContextPadProvider {
1297
1025
  'append.user-task': {
1298
1026
  group: 'model',
1299
1027
  className: 'bpmn-icon-user-task',
1300
- title: this.translate('Append UserTask'),
1028
+ title: this.translate('Append user task'),
1301
1029
  action: {
1302
1030
  hover: this.appendUserTaskPreview,
1303
1031
  click: this.appendUserTask,
@@ -1351,7 +1079,7 @@ class ServiceTaskPaletteProvider {
1351
1079
  'create.service-task': {
1352
1080
  group: 'activity',
1353
1081
  className: 'bpmn-icon-service-task',
1354
- title: this.translate('Create ServiceTask'),
1082
+ title: this.translate('Create service task'),
1355
1083
  action: {
1356
1084
  dragstart: this.createServiceTask,
1357
1085
  click: this.createServiceTask
@@ -1382,7 +1110,7 @@ class ServiceTaskContextPadProvider {
1382
1110
  'append.service-task': {
1383
1111
  group: 'model',
1384
1112
  className: 'bpmn-icon-service-task',
1385
- title: this.translate('Append ServiceTask'),
1113
+ title: this.translate('Append service task'),
1386
1114
  action: {
1387
1115
  hover: this.appendServiceTaskPreview,
1388
1116
  click: this.appendServiceTask,
@@ -1429,8 +1157,7 @@ class HideOtherPaletteProvider {
1429
1157
  'create.end-event',
1430
1158
  'create.user-task',
1431
1159
  'create.service-task',
1432
- 'create.exclusive-gateway',
1433
- 'xml'
1160
+ // 'create.exclusive-gateway'
1434
1161
  ];
1435
1162
  palette.registerProvider(0, this);
1436
1163
  }
@@ -1456,23 +1183,23 @@ class HideOtherContextPadProvider {
1456
1183
  }
1457
1184
  getContextPadEntries(element) {
1458
1185
  return (entries) => {
1186
+ if (isLabel(element)) {
1187
+ return {};
1188
+ }
1459
1189
  if (is(element, 'bpmn:EndEvent')) {
1460
1190
  return {
1461
- 'delete': entries['delete'],
1462
- 'set-color': entries['set-color']
1191
+ 'delete': entries['delete']
1463
1192
  };
1464
1193
  }
1465
1194
  else if (is(element, 'bpmn:SequenceFlow')) {
1466
1195
  if (entries['replace']) {
1467
1196
  return {
1468
1197
  'replace': this.createReplaceAction(element),
1469
- 'delete': entries['delete'],
1470
- 'set-color': entries['set-color']
1198
+ 'delete': entries['delete']
1471
1199
  };
1472
1200
  }
1473
1201
  return {
1474
- 'delete': entries['delete'],
1475
- 'set-color': entries['set-color']
1202
+ 'delete': entries['delete']
1476
1203
  };
1477
1204
  }
1478
1205
  else if (is(element, 'bpmn:Gateway')) {
@@ -1483,18 +1210,16 @@ class HideOtherContextPadProvider {
1483
1210
  'append.end-event': entries['append.end-event'],
1484
1211
  'connect': entries['connect'],
1485
1212
  'replace': this.createReplaceAction(element),
1486
- 'delete': entries['delete'],
1487
- 'set-color': entries['set-color']
1213
+ 'delete': entries['delete']
1488
1214
  };
1489
1215
  }
1490
1216
  return {
1491
1217
  'append.user-task': entries['append.user-task'],
1492
1218
  'append.service-task': entries['append.service-task'],
1493
- 'append.gateway': entries['append.gateway'],
1219
+ // 'append.gateway': entries['append.gateway'],
1494
1220
  'append.end-event': entries['append.end-event'],
1495
1221
  'connect': entries['connect'],
1496
- 'delete': entries['delete'],
1497
- 'set-color': entries['set-color']
1222
+ 'delete': entries['delete']
1498
1223
  };
1499
1224
  };
1500
1225
  }
@@ -1557,149 +1282,6 @@ var customHideOtherModule = {
1557
1282
  gatewayReplaceMenuProvider: ['type', GatewayReplaceMenuProvider]
1558
1283
  };
1559
1284
 
1560
- const util = {};
1561
- function addExtensionProperty(element, key, value) {
1562
- let extensionElements = element.businessObject.get('extensionElements');
1563
- if (!extensionElements) {
1564
- extensionElements = util.bpmnFactory.create('bpmn:ExtensionElements', { values: [] });
1565
- extensionElements.$parent = element.businessObject;
1566
- util.modeling.updateModdleProperties(element, element.businessObject, { extensionElements });
1567
- }
1568
- let properties = null;
1569
- const extensionElementValues = extensionElements.get('values');
1570
- const existPropertiesElements = extensionElementValues.filter((value) => is(value, 'camunda:Properties'));
1571
- if (existPropertiesElements.length > 0) {
1572
- properties = existPropertiesElements[0];
1573
- }
1574
- if (!properties) {
1575
- properties = util.bpmnFactory.create('camunda:Properties', { values: [] });
1576
- properties.$parent = extensionElements;
1577
- util.modeling.updateModdleProperties(element, extensionElements, { values: [...extensionElements.get('values'), properties] });
1578
- }
1579
- const propertyValues = properties.get('values');
1580
- const existPropertyIndex = propertyValues.findIndex((value) => value.name === key);
1581
- if (existPropertyIndex > -1) {
1582
- util.modeling.updateModdleProperties(element, propertyValues[existPropertyIndex], { name: key, value });
1583
- }
1584
- else {
1585
- const property = util.bpmnFactory.create('camunda:Property', { name: key, value });
1586
- property.$parent = properties;
1587
- util.modeling.updateModdleProperties(element, properties, { values: [...properties.get('values'), property] });
1588
- }
1589
- }
1590
- function getExtensionPropertyValue(element, key) {
1591
- let extensionElements = element.businessObject.get('extensionElements');
1592
- if (!extensionElements) {
1593
- return '';
1594
- }
1595
- let properties = null;
1596
- const extensionElementValues = extensionElements.get('values');
1597
- const existPropertiesElements = extensionElementValues.filter((value) => is(value, 'camunda:Properties'));
1598
- if (existPropertiesElements.length > 0) {
1599
- properties = existPropertiesElements[0];
1600
- }
1601
- if (!properties) {
1602
- return '';
1603
- }
1604
- const propertyValues = properties.get('values');
1605
- const existPropertyIndex = propertyValues.findIndex((value) => value.name === key);
1606
- if (existPropertyIndex > -1) {
1607
- return propertyValues[existPropertyIndex].value;
1608
- }
1609
- }
1610
-
1611
- // @ts-ignore
1612
- class TaskDescriptionProps {
1613
- constructor(props) {
1614
- this.id = 'Coast_taskDescription';
1615
- const { element } = props;
1616
- this.component = () => {
1617
- return TextAreaEntry({
1618
- element: element,
1619
- id: this.id,
1620
- label: util.translate('Task description'),
1621
- getValue: () => {
1622
- return getExtensionPropertyValue(element, this.id);
1623
- },
1624
- setValue: (value) => {
1625
- addExtensionProperty(element, this.id, value);
1626
- },
1627
- debounce: util.debounce,
1628
- autoResize: true
1629
- });
1630
- };
1631
- this.isEdited = isTextAreaEntryEdited;
1632
- }
1633
- }
1634
-
1635
- // @ts-ignore
1636
- class UserAssignmentStaticOrDynamicProps {
1637
- constructor(props) {
1638
- this.id = 'Coast_userAssignment_staticOrDynamic';
1639
- const { element } = props;
1640
- this.component = () => {
1641
- return SelectEntry({
1642
- element: element,
1643
- id: this.id,
1644
- label: util.translate('Set assignment rule'),
1645
- getValue: () => {
1646
- return getExtensionPropertyValue(element, this.id);
1647
- },
1648
- setValue: (value) => {
1649
- addExtensionProperty(element, this.id, value);
1650
- },
1651
- getOptions: () => {
1652
- return [
1653
- { value: '', label: util.translate('dynamic user') },
1654
- { value: 'static_user', label: util.translate('static user') },
1655
- { value: 'dynamic_role', label: util.translate('dynamic role') },
1656
- { value: 'static_role', label: util.translate('static role') }
1657
- ];
1658
- }
1659
- });
1660
- };
1661
- this.isEdited = isSelectEntryEdited;
1662
- }
1663
- }
1664
-
1665
- function getUserAssignmentProps(element) {
1666
- return [new UserAssignmentStaticOrDynamicProps(element)];
1667
- }
1668
-
1669
- class CustomPropertiesProvider {
1670
- constructor(propertiesPanel, translate, bpmnFactory, modeling, debounceInput) {
1671
- this.translate = translate;
1672
- util.translate = translate;
1673
- util.bpmnFactory = bpmnFactory;
1674
- util.modeling = modeling;
1675
- util.debounce = debounceInput;
1676
- propertiesPanel.registerProvider(0, this);
1677
- }
1678
- getGroups(element) {
1679
- return ((groups) => {
1680
- const generalGroup = groups.find((group) => group.id === 'general');
1681
- generalGroup.shouldOpen = true;
1682
- console.log(generalGroup);
1683
- if (is(element, 'bpmn:Process')) {
1684
- generalGroup.entries.splice(1, 3);
1685
- }
1686
- else if (is(element, 'bpmn:UserTask')) {
1687
- generalGroup.entries.splice(1, 1);
1688
- generalGroup.entries.push(...[
1689
- new TaskDescriptionProps({ element }),
1690
- ...getUserAssignmentProps({ element })
1691
- ]);
1692
- }
1693
- return [generalGroup];
1694
- });
1695
- }
1696
- }
1697
-
1698
- var customPropertiesPanelModule = {
1699
- __init__: ['customPropertiesProvider'],
1700
- customPropertiesProvider: ['type', CustomPropertiesProvider]
1701
- };
1702
-
1703
1285
  class CodeEditorComponent {
1704
1286
  set code(code) {
1705
1287
  var _a;
@@ -1750,10 +1332,10 @@ class CodeEditorComponent {
1750
1332
  }
1751
1333
  }
1752
1334
  CodeEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CodeEditorComponent, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
1753
- 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"] }] });
1335
+ 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"] }] });
1754
1336
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CodeEditorComponent, decorators: [{
1755
1337
  type: Component,
1756
- 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"] }]
1338
+ 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"] }]
1757
1339
  }], ctorParameters: function () { return [{ type: i0.ViewContainerRef }]; }, propDecorators: { code: [{
1758
1340
  type: Input
1759
1341
  }], codeChange: [{
@@ -1775,7 +1357,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
1775
1357
 
1776
1358
  class CamundaBpmnEditorComponent {
1777
1359
  constructor() {
1360
+ this.selectedNodeChanged = new EventEmitter();
1778
1361
  this.isShowXml = false;
1362
+ this.isShowConfig = false;
1779
1363
  this.initialDiagram = '<?xml version="1.0" encoding="UTF-8"?>' +
1780
1364
  '<bpmn:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ' +
1781
1365
  'xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" ' +
@@ -1797,7 +1381,9 @@ class CamundaBpmnEditorComponent {
1797
1381
  }
1798
1382
  set xml(xml) {
1799
1383
  this._xml = xml;
1800
- this.loadXml();
1384
+ setTimeout(() => {
1385
+ this.loadXml();
1386
+ });
1801
1387
  }
1802
1388
  get xml() {
1803
1389
  return this._xml;
@@ -1822,14 +1408,31 @@ class CamundaBpmnEditorComponent {
1822
1408
  customUserTaskModule,
1823
1409
  customServiceTaskModule,
1824
1410
  customHideOtherModule,
1825
- customPropertiesPanelModule
1411
+ // customPropertiesPanelModule
1826
1412
  ]
1827
1413
  });
1828
1414
  const logo = this.modeler._container.querySelector('.bjs-powered-by');
1829
1415
  if (logo) {
1830
1416
  this.modeler._container.removeChild(logo);
1831
1417
  }
1418
+ this.modeler.get('palette')._toggleState({ twoColumn: false });
1832
1419
  this.canvas = this.modeler.get('canvas');
1420
+ const eventBus = this.modeler.get('eventBus');
1421
+ eventBus.on(['propertiesPanel.updated'], ($event) => {
1422
+ if (Array.isArray($event.element)) {
1423
+ this.selectedNodeChanged.emit();
1424
+ }
1425
+ else {
1426
+ this.selectedNodeChanged.emit({
1427
+ element: $event.element,
1428
+ util: {
1429
+ bpmnFactory: this.modeler.get('bpmnFactory'),
1430
+ modeling: this.modeler.get('modeling'),
1431
+ elementRegistry: this.modeler.get('elementRegistry')
1432
+ }
1433
+ });
1434
+ }
1435
+ });
1833
1436
  this.loadXml();
1834
1437
  }
1835
1438
  loadXml() {
@@ -1854,12 +1457,14 @@ class CamundaBpmnEditorComponent {
1854
1457
  }
1855
1458
  }
1856
1459
  CamundaBpmnEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CamundaBpmnEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
1857
- 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"] }] });
1460
+ 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"] }] });
1858
1461
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: CamundaBpmnEditorComponent, decorators: [{
1859
1462
  type: Component,
1860
- 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"] }]
1463
+ 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"] }]
1861
1464
  }], propDecorators: { xml: [{
1862
1465
  type: Input
1466
+ }], selectedNodeChanged: [{
1467
+ type: Output
1863
1468
  }], bpmnContainer: [{
1864
1469
  type: ViewChild,
1865
1470
  args: ['bpmnContainer']
@@ -3888,10 +3493,10 @@ class IconSelectorComponent {
3888
3493
  }
3889
3494
  }
3890
3495
  IconSelectorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: IconSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3891
- 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"] }] });
3496
+ 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"] }] });
3892
3497
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: IconSelectorComponent, decorators: [{
3893
3498
  type: Component,
3894
- 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" }]
3499
+ 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" }]
3895
3500
  }], ctorParameters: function () { return []; }, propDecorators: { target: [{
3896
3501
  type: Input
3897
3502
  }], select: [{
@@ -4051,10 +3656,10 @@ class ModalComponent {
4051
3656
  }
4052
3657
  }
4053
3658
  ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ModalComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
4054
- 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"] }] });
3659
+ 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"] }] });
4055
3660
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ModalComponent, decorators: [{
4056
3661
  type: Component,
4057
- 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"] }]
3662
+ 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"] }]
4058
3663
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { modalElementRef: [{
4059
3664
  type: ViewChild,
4060
3665
  args: ['modal', { static: true }]