raise-common-lib 0.0.192 → 0.0.193

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 (77) hide show
  1. package/README.md +57 -57
  2. package/bundles/raise-common-lib.umd.js +1240 -10
  3. package/bundles/raise-common-lib.umd.js.map +1 -1
  4. package/bundles/raise-common-lib.umd.min.js +1 -1
  5. package/bundles/raise-common-lib.umd.min.js.map +1 -1
  6. package/esm2015/lib/common-grid/index.component.js +2 -2
  7. package/esm2015/lib/dialog/new-action-notification/new-action-notification.component.js +1 -1
  8. package/esm2015/lib/form/drawer-form/drawer-form.component.js +1 -1
  9. package/esm2015/lib/form/richtexteditor/ai-config.js +70 -0
  10. package/esm2015/lib/form/richtexteditor/data-config.js +273 -0
  11. package/esm2015/lib/form/richtexteditor/index.component.js +604 -0
  12. package/esm2015/lib/form/richtexteditor/openapi.js +175 -0
  13. package/esm2015/lib/layout/drawer/index.component.js +1 -1
  14. package/esm2015/lib/layout/page-tab/index.component.js +7 -3
  15. package/esm2015/lib/raise-common-lib.module.js +7 -2
  16. package/esm2015/public-api.js +2 -1
  17. package/esm2015/raise-common-lib.js +2 -2
  18. package/esm5/lib/common-grid/index.component.js +2 -2
  19. package/esm5/lib/dialog/new-action-notification/new-action-notification.component.js +1 -1
  20. package/esm5/lib/form/drawer-form/drawer-form.component.js +1 -1
  21. package/esm5/lib/form/richtexteditor/ai-config.js +73 -0
  22. package/esm5/lib/form/richtexteditor/data-config.js +273 -0
  23. package/esm5/lib/form/richtexteditor/index.component.js +684 -0
  24. package/esm5/lib/form/richtexteditor/openapi.js +208 -0
  25. package/esm5/lib/layout/drawer/index.component.js +1 -1
  26. package/esm5/lib/layout/page-tab/index.component.js +7 -3
  27. package/esm5/lib/raise-common-lib.module.js +7 -2
  28. package/esm5/public-api.js +2 -1
  29. package/esm5/raise-common-lib.js +2 -2
  30. package/fesm2015/raise-common-lib.js +1126 -12
  31. package/fesm2015/raise-common-lib.js.map +1 -1
  32. package/fesm5/raise-common-lib.js +1241 -12
  33. package/fesm5/raise-common-lib.js.map +1 -1
  34. package/lib/form/richtexteditor/ai-config.d.ts +10 -0
  35. package/lib/form/richtexteditor/data-config.d.ts +14 -0
  36. package/lib/form/richtexteditor/index.component.d.ts +78 -0
  37. package/lib/form/richtexteditor/openapi.d.ts +3 -0
  38. package/lib/layout/page-tab/index.component.d.ts +1 -0
  39. package/package.json +1 -1
  40. package/public-api.d.ts +1 -0
  41. package/raise-common-lib.metadata.json +1 -1
  42. package/src/assets/img/arrow_right.svg +4 -4
  43. package/src/assets/img/calendar-disabled.svg +6 -6
  44. package/src/assets/img/calendar.svg +6 -6
  45. package/src/assets/img/calendar_arrow_left.svg +3 -3
  46. package/src/assets/img/calendar_arrow_right.svg +3 -3
  47. package/src/assets/img/checked-vector.svg +3 -3
  48. package/src/assets/img/dialog-close.svg +4 -4
  49. package/src/assets/img/dialog-grow.svg +6 -6
  50. package/src/assets/img/dialog-shrink.svg +6 -6
  51. package/src/assets/img/editor-copy.svg +5 -0
  52. package/src/assets/img/info.svg +5 -0
  53. package/src/assets/img/plus.svg +4 -4
  54. package/src/assets/img/search.svg +4 -4
  55. package/src/assets/img/shrink-icon.svg +6 -6
  56. package/src/assets/img/time-disabled.svg +4 -4
  57. package/src/assets/img/time.svg +4 -4
  58. package/src/assets/img/toolbar-action-addFolder.svg +17 -17
  59. package/src/assets/img/toolbar-action-calculator.svg +11 -11
  60. package/src/assets/img/toolbar-action-collapse.svg +7 -7
  61. package/src/assets/img/toolbar-action-combine.svg +4 -4
  62. package/src/assets/img/toolbar-action-edit.svg +4 -4
  63. package/src/assets/img/toolbar-action-expand.svg +7 -7
  64. package/src/assets/img/toolbar-action-folderMove.svg +8 -8
  65. package/src/assets/img/toolbar-action-lock.svg +6 -6
  66. package/src/assets/img/toolbar-action-preview.svg +7 -7
  67. package/src/assets/img/toolbar-action-publish.svg +5 -5
  68. package/src/assets/img/toolbar-action-reminders.svg +10 -10
  69. package/src/assets/img/toolbar-action-rename.svg +7 -7
  70. package/src/assets/img/toolbar-action-saveSequence.svg +5 -5
  71. package/src/assets/img/toolbar-action-send-file.svg +5 -5
  72. package/src/assets/img/toolbar-action-settle.svg +7 -7
  73. package/src/assets/img/toolbar-action-share.svg +5 -5
  74. package/src/assets/img/toolbar-action-submitForApproval.svg +4 -4
  75. package/src/assets/img/toolbar-action-sync.svg +4 -4
  76. package/src/assets/img/toolbar-action-template.svg +6 -6
  77. package/src/assets/img/toolbar-action-workflow.svg +9 -9
@@ -0,0 +1,273 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * Generated from: lib/form/richtexteditor/data-config.ts
4
+ * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
+ */
6
+ // font family
7
+ /** @type {?} */
8
+ export const fontFamily = {
9
+ default: "Arial",
10
+ items: [
11
+ {
12
+ text: "Arial",
13
+ value: "Arial, Helvetica, sans-serif",
14
+ cssClass: "e-arial",
15
+ command: "Font",
16
+ subCommand: "FontName",
17
+ },
18
+ {
19
+ text: "Times New Roman",
20
+ value: "Times New Roman,Times,serif",
21
+ cssClass: "e-times-new-roman",
22
+ command: "Font",
23
+ subCommand: "FontName",
24
+ },
25
+ {
26
+ text: "Helvetica",
27
+ value: "Helvetica",
28
+ cssClass: "e-helvetica",
29
+ command: "Font",
30
+ subCommand: "FontName",
31
+ },
32
+ {
33
+ text: "Calibri",
34
+ value: "Calibri, Helvetica, sans-serif",
35
+ cssClass: "e-calibri",
36
+ command: "Font",
37
+ subCommand: "FontName",
38
+ },
39
+ {
40
+ text: "Verdana",
41
+ value: "Verdana,Geneva,sans-serif",
42
+ cssClass: "e-verdana",
43
+ command: "Font",
44
+ subCommand: "FontName",
45
+ },
46
+ {
47
+ text: "Georgia",
48
+ value: "Georgia,serif",
49
+ cssClass: "e-georgia",
50
+ command: "Font",
51
+ subCommand: "FontName",
52
+ },
53
+ {
54
+ text: "Open Sans",
55
+ value: "Open Sans, sans-serif",
56
+ cssClass: "e-open-sans",
57
+ command: "Font",
58
+ subCommand: "FontName",
59
+ },
60
+ {
61
+ text: "Roboto",
62
+ value: "Roboto",
63
+ cssClass: "e-roboto",
64
+ command: "Font",
65
+ subCommand: "FontName",
66
+ },
67
+ {
68
+ text: "Lato",
69
+ value: "Lato, sans-serif",
70
+ cssClass: "e-lato",
71
+ command: "Font",
72
+ subCommand: "FontName",
73
+ },
74
+ {
75
+ text: "Montserrat",
76
+ value: "Montserrat, sans-serif",
77
+ cssClass: "e-montserrat",
78
+ command: "Font",
79
+ subCommand: "FontName",
80
+ },
81
+ {
82
+ text: "Segoe UI",
83
+ value: "Segoe UI",
84
+ cssClass: "e-segoe-ui",
85
+ command: "Font",
86
+ subCommand: "FontName",
87
+ },
88
+ {
89
+ text: "Impact",
90
+ value: "Impact,Charcoal,sans-serif",
91
+ cssClass: "e-impact",
92
+ command: "Font",
93
+ subCommand: "FontName",
94
+ },
95
+ ],
96
+ };
97
+ // line height配置
98
+ /** @type {?} */
99
+ export const lineHeight_items = [
100
+ {
101
+ text: "1.0",
102
+ },
103
+ {
104
+ text: "1.15",
105
+ },
106
+ {
107
+ text: "1.5",
108
+ },
109
+ {
110
+ text: "2.0",
111
+ },
112
+ {
113
+ text: "2.5",
114
+ },
115
+ {
116
+ text: "3.0",
117
+ },
118
+ ];
119
+ /**
120
+ * @record
121
+ */
122
+ export function BulletStyle() { }
123
+ if (false) {
124
+ /** @type {?} */
125
+ BulletStyle.prototype.id;
126
+ /** @type {?} */
127
+ BulletStyle.prototype.text;
128
+ /** @type {?} */
129
+ BulletStyle.prototype.symbol;
130
+ /** @type {?} */
131
+ BulletStyle.prototype.iconCss;
132
+ /** @type {?} */
133
+ BulletStyle.prototype.description;
134
+ }
135
+ /** @type {?} */
136
+ export const BULLET_STYLES = [
137
+ {
138
+ id: "disc",
139
+ text: "● 实心圆点",
140
+ symbol: "●",
141
+ iconCss: "e-icons e-bullet-disc",
142
+ description: "标准实心圆点",
143
+ },
144
+ {
145
+ id: "circle",
146
+ text: "○ 空心圆点",
147
+ symbol: "○",
148
+ iconCss: "e-icons e-bullet-circle",
149
+ description: "空心圆点",
150
+ },
151
+ {
152
+ id: "square",
153
+ text: "■ 实心方块",
154
+ symbol: "■",
155
+ iconCss: "e-icons e-bullet-square",
156
+ description: "实心方块",
157
+ },
158
+ {
159
+ id: "diamond",
160
+ text: "◆ 实心菱形",
161
+ symbol: "◆",
162
+ iconCss: "e-icons e-bullet-diamond",
163
+ description: "实心菱形",
164
+ },
165
+ {
166
+ id: "triangle",
167
+ text: "► 实心三角",
168
+ symbol: "►",
169
+ iconCss: "e-icons e-bullet-triangle",
170
+ description: "实心三角形",
171
+ },
172
+ {
173
+ id: "arrow",
174
+ text: "➤ 箭头",
175
+ symbol: "➤",
176
+ iconCss: "e-icons e-bullet-arrow",
177
+ description: "箭头符号",
178
+ },
179
+ {
180
+ id: "star",
181
+ text: "★ 星形",
182
+ symbol: "★",
183
+ iconCss: "e-icons e-bullet-star",
184
+ description: "星形符号",
185
+ },
186
+ {
187
+ id: "check",
188
+ text: "✓ 对勾",
189
+ symbol: "✓",
190
+ iconCss: "e-icons e-bullet-check",
191
+ description: "对勾符号",
192
+ },
193
+ {
194
+ id: "heart",
195
+ text: "♥ 心形",
196
+ symbol: "♥",
197
+ iconCss: "e-icons e-bullet-heart",
198
+ description: "心形符号",
199
+ },
200
+ {
201
+ id: "bullet",
202
+ text: "• 小圆点",
203
+ symbol: "•",
204
+ iconCss: "e-icons e-bullet-bullet",
205
+ description: "小圆点",
206
+ },
207
+ ];
208
+ // 获取符号样式
209
+ /**
210
+ * @param {?} id
211
+ * @return {?}
212
+ */
213
+ export function getBulletStyle(id) {
214
+ return BULLET_STYLES.find((/**
215
+ * @param {?} style
216
+ * @return {?}
217
+ */
218
+ (style) => style.id === id));
219
+ }
220
+ // 获取所有符号样式
221
+ /**
222
+ * @return {?}
223
+ */
224
+ export function getAllBulletStyles() {
225
+ return BULLET_STYLES;
226
+ }
227
+ // 应用符号样式到列表
228
+ /**
229
+ * @param {?} ul
230
+ * @param {?} style
231
+ * @return {?}
232
+ */
233
+ export function applyBulletStyle(ul, style) {
234
+ if (style.id === "disc" || style.id === "circle" || style.id === "square") {
235
+ // 使用CSS list-style-type
236
+ ul.style.listStyleType = style.id;
237
+ // 移除自定义符号
238
+ ul.querySelectorAll(".custom-bullet").forEach((/**
239
+ * @param {?} bullet
240
+ * @return {?}
241
+ */
242
+ (bullet) => bullet.remove()));
243
+ }
244
+ else {
245
+ // 使用自定义符号
246
+ ul.style.listStyleType = "none";
247
+ ul.setAttribute("data-bullet-style", style.id);
248
+ /** @type {?} */
249
+ const listItems = ul.querySelectorAll("li");
250
+ listItems.forEach((/**
251
+ * @param {?} li
252
+ * @return {?}
253
+ */
254
+ (li) => {
255
+ // 移除现有的自定义符号
256
+ /** @type {?} */
257
+ const existingBullet = li.querySelector(".custom-bullet");
258
+ if (existingBullet) {
259
+ existingBullet.remove();
260
+ }
261
+ // 添加新的自定义符号
262
+ /** @type {?} */
263
+ const bullet = document.createElement("span");
264
+ bullet.className = "custom-bullet";
265
+ bullet.textContent = style.symbol;
266
+ bullet.style.marginRight = "8px";
267
+ bullet.style.color = "#666";
268
+ // 将符号插入到列表项的开头
269
+ li.insertBefore(bullet, li.firstChild);
270
+ }));
271
+ }
272
+ }
273
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9yYWlzZS1jb21tb24tbGliLyIsInNvdXJjZXMiOlsibGliL2Zvcm0vcmljaHRleHRlZGl0b3IvZGF0YS1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLE1BQU0sT0FBTyxVQUFVLEdBQVc7SUFDaEMsT0FBTyxFQUFFLE9BQU87SUFDaEIsS0FBSyxFQUFFO1FBQ0w7WUFDRSxJQUFJLEVBQUUsT0FBTztZQUNiLEtBQUssRUFBRSw4QkFBOEI7WUFDckMsUUFBUSxFQUFFLFNBQVM7WUFDbkIsT0FBTyxFQUFFLE1BQU07WUFDZixVQUFVLEVBQUUsVUFBVTtTQUN2QjtRQUNEO1lBQ0UsSUFBSSxFQUFFLGlCQUFpQjtZQUN2QixLQUFLLEVBQUUsNkJBQTZCO1lBQ3BDLFFBQVEsRUFBRSxtQkFBbUI7WUFDN0IsT0FBTyxFQUFFLE1BQU07WUFDZixVQUFVLEVBQUUsVUFBVTtTQUN2QjtRQUNEO1lBQ0UsSUFBSSxFQUFFLFdBQVc7WUFDakIsS0FBSyxFQUFFLFdBQVc7WUFDbEIsUUFBUSxFQUFFLGFBQWE7WUFDdkIsT0FBTyxFQUFFLE1BQU07WUFDZixVQUFVLEVBQUUsVUFBVTtTQUN2QjtRQUNEO1lBQ0UsSUFBSSxFQUFFLFNBQVM7WUFDZixLQUFLLEVBQUUsZ0NBQWdDO1lBQ3ZDLFFBQVEsRUFBRSxXQUFXO1lBQ3JCLE9BQU8sRUFBRSxNQUFNO1lBQ2YsVUFBVSxFQUFFLFVBQVU7U0FDdkI7UUFDRDtZQUNFLElBQUksRUFBRSxTQUFTO1lBQ2YsS0FBSyxFQUFFLDJCQUEyQjtZQUNsQyxRQUFRLEVBQUUsV0FBVztZQUNyQixPQUFPLEVBQUUsTUFBTTtZQUNmLFVBQVUsRUFBRSxVQUFVO1NBQ3ZCO1FBQ0Q7WUFDRSxJQUFJLEVBQUUsU0FBUztZQUNmLEtBQUssRUFBRSxlQUFlO1lBQ3RCLFFBQVEsRUFBRSxXQUFXO1lBQ3JCLE9BQU8sRUFBRSxNQUFNO1lBQ2YsVUFBVSxFQUFF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QUFNLEVBQUUsRUFBQyxDQUFDO0tBQzVFO1NBQU07UUFDTCxVQUFVO1FBQ1YsRUFBRSxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDO1FBQ2hDLEVBQUUsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDOztjQUV6QyxTQUFTLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUMzQyxTQUFTLENBQUMsT0FBTzs7OztRQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7OztrQkFFakIsY0FBYyxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUMsZ0JBQWdCLENBQUM7WUFDekQsSUFBSSxjQUFjLEVBQUU7Z0JBQ2xCLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQzthQUN6Qjs7O2tCQUdLLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUM3QyxNQUFNLENBQUMsU0FBUyxHQUFHLGVBQWUsQ0FBQztZQUNuQyxNQUFNLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDbEMsTUFBTSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1lBQ2pDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztZQUU1QixlQUFlO1lBQ2YsRUFBRSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pDLENBQUMsRUFBQyxDQUFDO0tBQ0o7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSXRlbU1vZGVsIH0gZnJvbSBcIkBzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLXNwbGl0YnV0dG9uc1wiO1xyXG5cclxuLy8gZm9udCBmYW1pbHlcclxuXHJcbmV4cG9ydCBjb25zdCBmb250RmFtaWx5OiBPYmplY3QgPSB7XHJcbiAgZGVmYXVsdDogXCJBcmlhbFwiLFxyXG4gIGl0ZW1zOiBbXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6IFwiQXJpYWxcIixcclxuICAgICAgdmFsdWU6IFwiQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZlwiLFxyXG4gICAgICBjc3NDbGFzczogXCJlLWFyaWFsXCIsXHJcbiAgICAgIGNvbW1hbmQ6IFwiRm9udFwiLFxyXG4gICAgICBzdWJDb21tYW5kOiBcIkZvbnROYW1lXCIsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiBcIlRpbWVzIE5ldyBSb21hblwiLFxyXG4gICAgICB2YWx1ZTogXCJUaW1lcyBOZXcgUm9tYW4sVGltZXMsc2VyaWZcIixcclxuICAgICAgY3NzQ2xhc3M6IFwiZS10aW1lcy1uZXctcm9tYW5cIixcclxuICAgICAgY29tbWFuZDogXCJGb250XCIsXHJcbiAgICAgIHN1YkNvbW1hbmQ6IFwiRm9udE5hbWVcIixcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6IFwiSGVsdmV0aWNhXCIsXHJcbiAgICAgIHZhbHVlOiBcIkhlbHZldGljYVwiLFxyXG4gICAgICBjc3NDbGFzczogXCJlLWhlbHZldGljYVwiLFxyXG4gICAgICBjb21tYW5kOiBcIkZvbnRcIixcclxuICAgICAgc3ViQ29tbWFuZDogXCJGb250TmFtZVwiLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogXCJDYWxpYnJpXCIsXHJcbiAgICAgIHZhbHVlOiBcIkNhbGlicmksIEhlbHZldGljYSwgc2Fucy1zZXJpZlwiLFxyXG4gICAgICBjc3NDbGFzczogXCJlLWNhbGlicmlcIixcclxuICAgICAgY29tbWFuZDogXCJGb250XCIsXHJcbiAgICAgIHN1YkNvbW1hbmQ6IFwiRm9udE5hbWVcIixcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6IFwiVmVyZGFuYVwiLFxyXG4gICAgICB2YWx1ZTogXCJWZXJkYW5hLEdlbmV2YSxzYW5zLXNlcmlmXCIsXHJcbiAgICAgIGNzc0NsYXNzOiBcImUtdmVyZGFuYVwiLFxyXG4gICAgICBjb21tYW5kOiBcIkZvbnRcIixcclxuICAgICAgc3ViQ29tbWFuZDogXCJGb250TmFtZVwiLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogXCJHZW9yZ2lhXCIsXHJcbiAgICAgIHZhbHVlOiBcIkdlb3JnaWEsc2VyaWZcIixcclxuICAgICAgY3NzQ2xhc3M6IFwiZS1nZW9yZ2lhXCIsXHJcbiAgICAgIGNvbW1hbmQ6IFwiRm9udFwiLFxyXG4gICAgICBzdWJDb21tYW5kOiBcIkZvbnROYW1lXCIsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiBcIk9wZW4gU2Fuc1wiLFxyXG4gICAgICB2YWx1ZTogXCJPcGVuIFNhbnMsIHNhbnMtc2VyaWZcIixcclxuICAgICAgY3NzQ2xhc3M6IFwiZS1vcGVuLXNhbnNcIixcclxuICAgICAgY29tbWFuZDogXCJGb250XCIsXHJcbiAgICAgIHN1YkNvbW1hbmQ6IFwiRm9udE5hbWVcIixcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6IFwiUm9ib3RvXCIsXHJcbiAgICAgIHZhbHVlOiBcIlJvYm90b1wiLFxyXG4gICAgICBjc3NDbGFzczogXCJlLXJvYm90b1wiLFxyXG4gICAgICBjb21tYW5kOiBcIkZvbnRcIixcclxuICAgICAgc3ViQ29tbWFuZDogXCJGb250TmFtZVwiLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogXCJMYXRvXCIsXHJcbiAgICAgIHZhbHVlOiBcIkxhdG8sIHNhbnMtc2VyaWZcIixcclxuICAgICAgY3NzQ2xhc3M6IFwiZS1sYXRvXCIsXHJcbiAgICAgIGNvbW1hbmQ6IFwiRm9udFwiLFxyXG4gICAgICBzdWJDb21tYW5kOiBcIkZvbnROYW1lXCIsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICB0ZXh0OiBcIk1vbnRzZXJyYXRcIixcclxuICAgICAgdmFsdWU6IFwiTW9udHNlcnJhdCwgc2Fucy1zZXJpZlwiLFxyXG4gICAgICBjc3NDbGFzczogXCJlLW1vbnRzZXJyYXRcIixcclxuICAgICAgY29tbWFuZDogXCJGb250XCIsXHJcbiAgICAgIHN1YkNvbW1hbmQ6IFwiRm9udE5hbWVcIixcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgIHRleHQ6IFwiU2Vnb2UgVUlcIixcclxuICAgICAgdmFsdWU6IFwiU2Vnb2UgVUlcIixcclxuICAgICAgY3NzQ2xhc3M6IFwiZS1zZWdvZS11aVwiLFxyXG4gICAgICBjb21tYW5kOiBcIkZvbnRcIixcclxuICAgICAgc3ViQ29tbWFuZDogXCJGb250TmFtZVwiLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgdGV4dDogXCJJbXBhY3RcIixcclxuICAgICAgdmFsdWU6IFwiSW1wYWN0LENoYXJjb2FsLHNhbnMtc2VyaWZcIixcclxuICAgICAgY3NzQ2xhc3M6IFwiZS1pbXBhY3RcIixcclxuICAgICAgY29tbWFuZDogXCJGb250XCIsXHJcbiAgICAgIHN1YkNvbW1hbmQ6IFwiRm9udE5hbWVcIixcclxuICAgIH0sXHJcbiAgXSxcclxufTtcclxuXHJcbi8vIGxpbmUgaGVpZ2h06YWN572uXHJcbmV4cG9ydCBjb25zdCBsaW5lSGVpZ2h0X2l0ZW1zOiBJdGVtTW9kZWxbXSA9IFtcclxuICB7XHJcbiAgICB0ZXh0OiBcIjEuMFwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGV4dDogXCIxLjE1XCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiBcIjEuNVwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdGV4dDogXCIyLjBcIixcclxuICB9LFxyXG4gIHtcclxuICAgIHRleHQ6IFwiMi41XCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiBcIjMuMFwiLFxyXG4gIH0sXHJcbl07XHJcblxyXG4vLyDml6Dluo/liJfooajnrKblj7fphY3nva5cclxuZXhwb3J0IGludGVyZmFjZSBCdWxsZXRTdHlsZSB7XHJcbiAgaWQ6IHN0cmluZztcclxuICB0ZXh0OiBzdHJpbmc7XHJcbiAgc3ltYm9sOiBzdHJpbmc7XHJcbiAgaWNvbkNzczogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBCVUxMRVRfU1RZTEVTOiBCdWxsZXRTdHlsZVtdID0gW1xyXG4gIHtcclxuICAgIGlkOiBcImRpc2NcIixcclxuICAgIHRleHQ6IFwi4pePIOWunuW/g+WchueCuVwiLFxyXG4gICAgc3ltYm9sOiBcIuKXj1wiLFxyXG4gICAgaWNvbkNzczogXCJlLWljb25zIGUtYnVsbGV0LWRpc2NcIixcclxuICAgIGRlc2NyaXB0aW9uOiBcIuagh+WHhuWunuW/g+WchueCuVwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgaWQ6IFwiY2lyY2xlXCIsXHJcbiAgICB0ZXh0OiBcIuKXiyDnqbrlv4PlnIbngrlcIixcclxuICAgIHN5bWJvbDogXCLil4tcIixcclxuICAgIGljb25Dc3M6IFwiZS1pY29ucyBlLWJ1bGxldC1jaXJjbGVcIixcclxuICAgIGRlc2NyaXB0aW9uOiBcIuepuuW/g+WchueCuVwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgaWQ6IFwic3F1YXJlXCIsXHJcbiAgICB0ZXh0OiBcIuKWoCDlrp7lv4PmlrnlnZdcIixcclxuICAgIHN5bWJvbDogXCLilqBcIixcclxuICAgIGljb25Dc3M6IFwiZS1pY29ucyBlLWJ1bGxldC1zcXVhcmVcIixcclxuICAgIGRlc2NyaXB0aW9uOiBcIuWunuW/g+aWueWdl1wiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgaWQ6IFwiZGlhbW9uZFwiLFxyXG4gICAgdGV4dDogXCLil4Yg5a6e5b+D6I+x5b2iXCIsXHJcbiAgICBzeW1ib2w6IFwi4peGXCIsXHJcbiAgICBpY29uQ3NzOiBcImUtaWNvbnMgZS1idWxsZXQtZGlhbW9uZFwiLFxyXG4gICAgZGVzY3JpcHRpb246IFwi5a6e5b+D6I+x5b2iXCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICBpZDogXCJ0cmlhbmdsZVwiLFxyXG4gICAgdGV4dDogXCLilrog5a6e5b+D5LiJ6KeSXCIsXHJcbiAgICBzeW1ib2w6IFwi4pa6XCIsXHJcbiAgICBpY29uQ3NzOiBcImUtaWNvbnMgZS1idWxsZXQtdHJpYW5nbGVcIixcclxuICAgIGRlc2NyaXB0aW9uOiBcIuWunuW/g+S4ieinkuW9olwiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgaWQ6IFwiYXJyb3dcIixcclxuICAgIHRleHQ6IFwi4p6kIOeureWktFwiLFxyXG4gICAgc3ltYm9sOiBcIuKepFwiLFxyXG4gICAgaWNvbkNzczogXCJlLWljb25zIGUtYnVsbGV0LWFycm93XCIsXHJcbiAgICBkZXNjcmlwdGlvbjogXCLnrq3lpLTnrKblj7dcIixcclxuICB9LFxyXG4gIHtcclxuICAgIGlkOiBcInN0YXJcIixcclxuICAgIHRleHQ6IFwi4piFIOaYn+W9olwiLFxyXG4gICAgc3ltYm9sOiBcIuKYhVwiLFxyXG4gICAgaWNvbkNzczogXCJlLWljb25zIGUtYnVsbGV0LXN0YXJcIixcclxuICAgIGRlc2NyaXB0aW9uOiBcIuaYn+W9ouespuWPt1wiLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgaWQ6IFwiY2hlY2tcIixcclxuICAgIHRleHQ6IFwi4pyTIOWvueWLvlwiLFxyXG4gICAgc3ltYm9sOiBcIuKck1wiLFxyXG4gICAgaWNvbkNzczogXCJlLWljb25zIGUtYnVsbGV0LWNoZWNrXCIsXHJcbiAgICBkZXNjcmlwdGlvbjogXCLlr7nli77nrKblj7dcIixcclxuICB9LFxyXG4gIHtcclxuICAgIGlkOiBcImhlYXJ0XCIsXHJcbiAgICB0ZXh0OiBcIuKZpSDlv4PlvaJcIixcclxuICAgIHN5bWJvbDogXCLimaVcIixcclxuICAgIGljb25Dc3M6IFwiZS1pY29ucyBlLWJ1bGxldC1oZWFydFwiLFxyXG4gICAgZGVzY3JpcHRpb246IFwi5b+D5b2i56ym5Y+3XCIsXHJcbiAgfSxcclxuICB7XHJcbiAgICBpZDogXCJidWxsZXRcIixcclxuICAgIHRleHQ6IFwi4oCiIOWwj+WchueCuVwiLFxyXG4gICAgc3ltYm9sOiBcIuKAolwiLFxyXG4gICAgaWNvbkNzczogXCJlLWljb25zIGUtYnVsbGV0LWJ1bGxldFwiLFxyXG4gICAgZGVzY3JpcHRpb246IFwi5bCP5ZyG54K5XCIsXHJcbiAgfSxcclxuXTtcclxuXHJcbi8vIOiOt+WPluespuWPt+agt+W8j1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0QnVsbGV0U3R5bGUoaWQ6IHN0cmluZyk6IEJ1bGxldFN0eWxlIHwgdW5kZWZpbmVkIHtcclxuICByZXR1cm4gQlVMTEVUX1NUWUxFUy5maW5kKChzdHlsZSkgPT4gc3R5bGUuaWQgPT09IGlkKTtcclxufVxyXG5cclxuLy8g6I635Y+W5omA5pyJ56ym5Y+35qC35byPXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRBbGxCdWxsZXRTdHlsZXMoKTogQnVsbGV0U3R5bGVbXSB7XHJcbiAgcmV0dXJuIEJVTExFVF9TVFlMRVM7XHJcbn1cclxuXHJcbi8vIOW6lOeUqOespuWPt+agt+W8j+WIsOWIl+ihqFxyXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlCdWxsZXRTdHlsZSh1bDogSFRNTEVsZW1lbnQsIHN0eWxlOiBCdWxsZXRTdHlsZSk6IHZvaWQge1xyXG4gIGlmIChzdHlsZS5pZCA9PT0gXCJkaXNjXCIgfHwgc3R5bGUuaWQgPT09IFwiY2lyY2xlXCIgfHwgc3R5bGUuaWQgPT09IFwic3F1YXJlXCIpIHtcclxuICAgIC8vIOS9v+eUqENTUyBsaXN0LXN0eWxlLXR5cGVcclxuICAgIHVsLnN0eWxlLmxpc3RTdHlsZVR5cGUgPSBzdHlsZS5pZDtcclxuICAgIC8vIOenu+mZpOiHquWumuS5ieespuWPt1xyXG4gICAgdWwucXVlcnlTZWxlY3RvckFsbChcIi5jdXN0b20tYnVsbGV0XCIpLmZvckVhY2goKGJ1bGxldCkgPT4gYnVsbGV0LnJlbW92ZSgpKTtcclxuICB9IGVsc2Uge1xyXG4gICAgLy8g5L2/55So6Ieq5a6a5LmJ56ym5Y+3XHJcbiAgICB1bC5zdHlsZS5saXN0U3R5bGVUeXBlID0gXCJub25lXCI7XHJcbiAgICB1bC5zZXRBdHRyaWJ1dGUoXCJkYXRhLWJ1bGxldC1zdHlsZVwiLCBzdHlsZS5pZCk7XHJcblxyXG4gICAgY29uc3QgbGlzdEl0ZW1zID0gdWwucXVlcnlTZWxlY3RvckFsbChcImxpXCIpO1xyXG4gICAgbGlzdEl0ZW1zLmZvckVhY2goKGxpKSA9PiB7XHJcbiAgICAgIC8vIOenu+mZpOeOsOacieeahOiHquWumuS5ieespuWPt1xyXG4gICAgICBjb25zdCBleGlzdGluZ0J1bGxldCA9IGxpLnF1ZXJ5U2VsZWN0b3IoXCIuY3VzdG9tLWJ1bGxldFwiKTtcclxuICAgICAgaWYgKGV4aXN0aW5nQnVsbGV0KSB7XHJcbiAgICAgICAgZXhpc3RpbmdCdWxsZXQucmVtb3ZlKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIOa3u+WKoOaWsOeahOiHquWumuS5ieespuWPt1xyXG4gICAgICBjb25zdCBidWxsZXQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic3BhblwiKTtcclxuICAgICAgYnVsbGV0LmNsYXNzTmFtZSA9IFwiY3VzdG9tLWJ1bGxldFwiO1xyXG4gICAgICBidWxsZXQudGV4dENvbnRlbnQgPSBzdHlsZS5zeW1ib2w7XHJcbiAgICAgIGJ1bGxldC5zdHlsZS5tYXJnaW5SaWdodCA9IFwiOHB4XCI7XHJcbiAgICAgIGJ1bGxldC5zdHlsZS5jb2xvciA9IFwiIzY2NlwiO1xyXG5cclxuICAgICAgLy8g5bCG56ym5Y+35o+S5YWl5Yiw5YiX6KGo6aG555qE5byA5aS0XHJcbiAgICAgIGxpLmluc2VydEJlZm9yZShidWxsZXQsIGxpLmZpcnN0Q2hpbGQpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==