lowcoder-comps 0.0.29 → 0.0.31

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 (86) hide show
  1. package/README.md +120 -0
  2. package/index.html +26 -0
  3. package/index.tsx +21 -0
  4. package/jest.config.js +6 -0
  5. package/package.json +3 -4
  6. package/src/__test__/allComp.test.tsx +61 -0
  7. package/src/app-env.d.ts +3 -0
  8. package/src/comps/calendarComp/calendarComp.tsx +633 -0
  9. package/src/comps/calendarComp/calendarConstants.tsx +1048 -0
  10. package/src/comps/calendarComp/errorBoundary.tsx +30 -0
  11. package/src/comps/chartComp/chartComp.tsx +442 -0
  12. package/src/comps/chartComp/chartConfigs/barChartConfig.tsx +51 -0
  13. package/src/comps/chartComp/chartConfigs/cartesianAxisConfig.tsx +307 -0
  14. package/src/comps/chartComp/chartConfigs/chartUrls.tsx +9 -0
  15. package/src/comps/chartComp/chartConfigs/legendConfig.tsx +55 -0
  16. package/src/comps/chartComp/chartConfigs/lineChartConfig.tsx +96 -0
  17. package/src/comps/chartComp/chartConfigs/pieChartConfig.tsx +83 -0
  18. package/src/comps/chartComp/chartConfigs/scatterChartConfig.tsx +62 -0
  19. package/src/comps/chartComp/chartConstants.tsx +299 -0
  20. package/src/comps/chartComp/chartPropertyView.tsx +235 -0
  21. package/src/comps/chartComp/chartUtils.ts +291 -0
  22. package/src/comps/chartComp/reactEcharts/core.tsx +194 -0
  23. package/src/comps/chartComp/reactEcharts/index.ts +21 -0
  24. package/src/comps/chartComp/reactEcharts/types.ts +76 -0
  25. package/src/comps/chartComp/seriesComp.tsx +119 -0
  26. package/src/comps/imageEditorComp/imageEditorClass.tsx +52 -0
  27. package/src/comps/imageEditorComp/imageEditorConstants.tsx +109 -0
  28. package/src/comps/imageEditorComp/index.tsx +184 -0
  29. package/src/comps/mermaidComp/index.tsx +44 -0
  30. package/src/comps/mermaidComp/mermaid.tsx +29 -0
  31. package/src/global.ts +1 -0
  32. package/src/i18n/comps/index.tsx +29 -0
  33. package/src/i18n/comps/locales/en.ts +163 -0
  34. package/src/i18n/comps/locales/enObj.tsx +198 -0
  35. package/src/i18n/comps/locales/index.ts +7 -0
  36. package/src/i18n/comps/locales/types.tsx +10 -0
  37. package/src/i18n/comps/locales/zh.ts +156 -0
  38. package/src/i18n/comps/locales/zhObj.tsx +4 -0
  39. package/src/index.ts +11 -0
  40. package/tsconfig.json +22 -0
  41. package/vite.config.js +10 -0
  42. package/2085da13.js +0 -960
  43. package/250691b5.js +0 -5
  44. package/256b619e.js +0 -92
  45. package/274f545c.js +0 -881
  46. package/289305a1.js +0 -208
  47. package/2eae45c2.js +0 -34
  48. package/2ff2c7a6.js +0 -6
  49. package/2ff7471d.js +0 -9
  50. package/335b22a2.js +0 -220
  51. package/38c826fe.js +0 -1127
  52. package/44011c1d.js +0 -818
  53. package/4fc06812.js +0 -64
  54. package/56a787cf.js +0 -915
  55. package/590941ff.js +0 -86
  56. package/6341867f.js +0 -804
  57. package/657fd065.js +0 -8
  58. package/78a5e50d.js +0 -1579
  59. package/820c3641.js +0 -25
  60. package/88b4e75a.js +0 -2967
  61. package/8d999722.js +0 -1102
  62. package/92e85b65.js +0 -65
  63. package/989caea2.js +0 -505
  64. package/99b984d1.js +0 -237
  65. package/9e5f02d6.js +0 -19104
  66. package/a40faea7.js +0 -11624
  67. package/abac9104.js +0 -1536
  68. package/af2f19b3.js +0 -819
  69. package/af5ee3de.js +0 -268
  70. package/b24707c2.js +0 -48428
  71. package/b68f8b69.js +0 -1276
  72. package/ba68ba65.js +0 -391
  73. package/bafb8599.js +0 -319
  74. package/bba60c35.js +0 -2501
  75. package/bd7c2a8e.js +0 -1089
  76. package/c71dadea.js +0 -455
  77. package/d05c1762.js +0 -933
  78. package/d073ab24.js +0 -134353
  79. package/d838cd10.js +0 -769
  80. package/dc36a6eb.js +0 -796
  81. package/ed143450.js +0 -1284
  82. package/ee8ec8f2.js +0 -2284
  83. package/f6755210.js +0 -1269
  84. package/f9637058.js +0 -16
  85. package/fba4c8e4.js +0 -447
  86. package/index.js +0 -5
package/6341867f.js DELETED
@@ -1,804 +0,0 @@
1
- import { c as C, C as yt, D as ft, s as dt, g as pt, b as gt, a as mt, E as xt, h as W, i as kt } from "./d073ab24.js";
2
- import { d as _t, f as bt, a as vt, g as it } from "./4fc06812.js";
3
- import { a as Q } from "./590941ff.js";
4
- import "./256b619e.js";
5
- var G = function() {
6
- var t = function(p, s, r, a) {
7
- for (r = r || {}, a = p.length; a--; r[p[a]] = s)
8
- ;
9
- return r;
10
- }, e = [6, 8, 10, 11, 12, 14, 16, 17, 18], i = [1, 9], l = [1, 10], n = [1, 11], h = [1, 12], c = [1, 13], f = [1, 14], y = {
11
- trace: function() {
12
- },
13
- yy: {},
14
- symbols_: { error: 2, start: 3, journey: 4, document: 5, EOF: 6, line: 7, SPACE: 8, statement: 9, NEWLINE: 10, title: 11, acc_title: 12, acc_title_value: 13, acc_descr: 14, acc_descr_value: 15, acc_descr_multiline_value: 16, section: 17, taskName: 18, taskData: 19, $accept: 0, $end: 1 },
15
- terminals_: { 2: "error", 4: "journey", 6: "EOF", 8: "SPACE", 10: "NEWLINE", 11: "title", 12: "acc_title", 13: "acc_title_value", 14: "acc_descr", 15: "acc_descr_value", 16: "acc_descr_multiline_value", 17: "section", 18: "taskName", 19: "taskData" },
16
- productions_: [0, [3, 3], [5, 0], [5, 2], [7, 2], [7, 1], [7, 1], [7, 1], [9, 1], [9, 2], [9, 2], [9, 1], [9, 1], [9, 2]],
17
- performAction: function(s, r, a, u, d, o, w) {
18
- var k = o.length - 1;
19
- switch (d) {
20
- case 1:
21
- return o[k - 1];
22
- case 2:
23
- this.$ = [];
24
- break;
25
- case 3:
26
- o[k - 1].push(o[k]), this.$ = o[k - 1];
27
- break;
28
- case 4:
29
- case 5:
30
- this.$ = o[k];
31
- break;
32
- case 6:
33
- case 7:
34
- this.$ = [];
35
- break;
36
- case 8:
37
- u.setDiagramTitle(o[k].substr(6)), this.$ = o[k].substr(6);
38
- break;
39
- case 9:
40
- this.$ = o[k].trim(), u.setAccTitle(this.$);
41
- break;
42
- case 10:
43
- case 11:
44
- this.$ = o[k].trim(), u.setAccDescription(this.$);
45
- break;
46
- case 12:
47
- u.addSection(o[k].substr(8)), this.$ = o[k].substr(8);
48
- break;
49
- case 13:
50
- u.addTask(o[k - 1], o[k]), this.$ = "task";
51
- break;
52
- }
53
- },
54
- table: [{ 3: 1, 4: [1, 2] }, { 1: [3] }, t(e, [2, 2], { 5: 3 }), { 6: [1, 4], 7: 5, 8: [1, 6], 9: 7, 10: [1, 8], 11: i, 12: l, 14: n, 16: h, 17: c, 18: f }, t(e, [2, 7], { 1: [2, 1] }), t(e, [2, 3]), { 9: 15, 11: i, 12: l, 14: n, 16: h, 17: c, 18: f }, t(e, [2, 5]), t(e, [2, 6]), t(e, [2, 8]), { 13: [1, 16] }, { 15: [1, 17] }, t(e, [2, 11]), t(e, [2, 12]), { 19: [1, 18] }, t(e, [2, 4]), t(e, [2, 9]), t(e, [2, 10]), t(e, [2, 13])],
55
- defaultActions: {},
56
- parseError: function(s, r) {
57
- if (r.recoverable)
58
- this.trace(s);
59
- else {
60
- var a = new Error(s);
61
- throw a.hash = r, a;
62
- }
63
- },
64
- parse: function(s) {
65
- var r = this, a = [0], u = [], d = [null], o = [], w = this.table, k = "", R = 0, Z = 0, lt = 2, J = 1, ct = o.slice.call(arguments, 1), x = Object.create(this.lexer), S = { yy: {} };
66
- for (var z in this.yy)
67
- Object.prototype.hasOwnProperty.call(this.yy, z) && (S.yy[z] = this.yy[z]);
68
- x.setInput(s, S.yy), S.yy.lexer = x, S.yy.parser = this, typeof x.yylloc == "undefined" && (x.yylloc = {});
69
- var Y = x.yylloc;
70
- o.push(Y);
71
- var ht = x.options && x.options.ranges;
72
- typeof S.yy.parseError == "function" ? this.parseError = S.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
73
- function ut() {
74
- var T;
75
- return T = u.pop() || x.lex() || J, typeof T != "number" && (T instanceof Array && (u = T, T = u.pop()), T = r.symbols_[T] || T), T;
76
- }
77
- for (var _, E, b, O, I = {}, N, $, K, B; ; ) {
78
- if (E = a[a.length - 1], this.defaultActions[E] ? b = this.defaultActions[E] : ((_ === null || typeof _ == "undefined") && (_ = ut()), b = w[E] && w[E][_]), typeof b == "undefined" || !b.length || !b[0]) {
79
- var q = "";
80
- B = [];
81
- for (N in w[E])
82
- this.terminals_[N] && N > lt && B.push("'" + this.terminals_[N] + "'");
83
- x.showPosition ? q = "Parse error on line " + (R + 1) + `:
84
- ` + x.showPosition() + `
85
- Expecting ` + B.join(", ") + ", got '" + (this.terminals_[_] || _) + "'" : q = "Parse error on line " + (R + 1) + ": Unexpected " + (_ == J ? "end of input" : "'" + (this.terminals_[_] || _) + "'"), this.parseError(q, {
86
- text: x.match,
87
- token: this.terminals_[_] || _,
88
- line: x.yylineno,
89
- loc: Y,
90
- expected: B
91
- });
92
- }
93
- if (b[0] instanceof Array && b.length > 1)
94
- throw new Error("Parse Error: multiple actions possible at state: " + E + ", token: " + _);
95
- switch (b[0]) {
96
- case 1:
97
- a.push(_), d.push(x.yytext), o.push(x.yylloc), a.push(b[1]), _ = null, Z = x.yyleng, k = x.yytext, R = x.yylineno, Y = x.yylloc;
98
- break;
99
- case 2:
100
- if ($ = this.productions_[b[1]][1], I.$ = d[d.length - $], I._$ = {
101
- first_line: o[o.length - ($ || 1)].first_line,
102
- last_line: o[o.length - 1].last_line,
103
- first_column: o[o.length - ($ || 1)].first_column,
104
- last_column: o[o.length - 1].last_column
105
- }, ht && (I._$.range = [
106
- o[o.length - ($ || 1)].range[0],
107
- o[o.length - 1].range[1]
108
- ]), O = this.performAction.apply(I, [
109
- k,
110
- Z,
111
- R,
112
- S.yy,
113
- b[1],
114
- d,
115
- o
116
- ].concat(ct)), typeof O != "undefined")
117
- return O;
118
- $ && (a = a.slice(0, -1 * $ * 2), d = d.slice(0, -1 * $), o = o.slice(0, -1 * $)), a.push(this.productions_[b[1]][0]), d.push(I.$), o.push(I._$), K = w[a[a.length - 2]][a[a.length - 1]], a.push(K);
119
- break;
120
- case 3:
121
- return !0;
122
- }
123
- }
124
- return !0;
125
- }
126
- }, m = function() {
127
- var p = {
128
- EOF: 1,
129
- parseError: function(r, a) {
130
- if (this.yy.parser)
131
- this.yy.parser.parseError(r, a);
132
- else
133
- throw new Error(r);
134
- },
135
- // resets the lexer, sets new input
136
- setInput: function(s, r) {
137
- return this.yy = r || this.yy || {}, this._input = s, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
138
- first_line: 1,
139
- first_column: 0,
140
- last_line: 1,
141
- last_column: 0
142
- }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
143
- },
144
- // consumes and returns one char from the input
145
- input: function() {
146
- var s = this._input[0];
147
- this.yytext += s, this.yyleng++, this.offset++, this.match += s, this.matched += s;
148
- var r = s.match(/(?:\r\n?|\n).*/g);
149
- return r ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), s;
150
- },
151
- // unshifts one char (or a string) into the input
152
- unput: function(s) {
153
- var r = s.length, a = s.split(/(?:\r\n?|\n)/g);
154
- this._input = s + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - r), this.offset -= r;
155
- var u = this.match.split(/(?:\r\n?|\n)/g);
156
- this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), a.length - 1 && (this.yylineno -= a.length - 1);
157
- var d = this.yylloc.range;
158
- return this.yylloc = {
159
- first_line: this.yylloc.first_line,
160
- last_line: this.yylineno + 1,
161
- first_column: this.yylloc.first_column,
162
- last_column: a ? (a.length === u.length ? this.yylloc.first_column : 0) + u[u.length - a.length].length - a[0].length : this.yylloc.first_column - r
163
- }, this.options.ranges && (this.yylloc.range = [d[0], d[0] + this.yyleng - r]), this.yyleng = this.yytext.length, this;
164
- },
165
- // When called from action, caches matched text and appends it on next action
166
- more: function() {
167
- return this._more = !0, this;
168
- },
169
- // When called from action, signals the lexer that this rule fails to match the input, so the next matching rule (regex) should be tested instead.
170
- reject: function() {
171
- if (this.options.backtrack_lexer)
172
- this._backtrack = !0;
173
- else
174
- return this.parseError("Lexical error on line " + (this.yylineno + 1) + `. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
175
- ` + this.showPosition(), {
176
- text: "",
177
- token: null,
178
- line: this.yylineno
179
- });
180
- return this;
181
- },
182
- // retain first n characters of the match
183
- less: function(s) {
184
- this.unput(this.match.slice(s));
185
- },
186
- // displays already matched input, i.e. for error messages
187
- pastInput: function() {
188
- var s = this.matched.substr(0, this.matched.length - this.match.length);
189
- return (s.length > 20 ? "..." : "") + s.substr(-20).replace(/\n/g, "");
190
- },
191
- // displays upcoming input, i.e. for error messages
192
- upcomingInput: function() {
193
- var s = this.match;
194
- return s.length < 20 && (s += this._input.substr(0, 20 - s.length)), (s.substr(0, 20) + (s.length > 20 ? "..." : "")).replace(/\n/g, "");
195
- },
196
- // displays the character position where the lexing error occurred, i.e. for error messages
197
- showPosition: function() {
198
- var s = this.pastInput(), r = new Array(s.length + 1).join("-");
199
- return s + this.upcomingInput() + `
200
- ` + r + "^";
201
- },
202
- // test the lexed token: return FALSE when not a match, otherwise return token
203
- test_match: function(s, r) {
204
- var a, u, d;
205
- if (this.options.backtrack_lexer && (d = {
206
- yylineno: this.yylineno,
207
- yylloc: {
208
- first_line: this.yylloc.first_line,
209
- last_line: this.last_line,
210
- first_column: this.yylloc.first_column,
211
- last_column: this.yylloc.last_column
212
- },
213
- yytext: this.yytext,
214
- match: this.match,
215
- matches: this.matches,
216
- matched: this.matched,
217
- yyleng: this.yyleng,
218
- offset: this.offset,
219
- _more: this._more,
220
- _input: this._input,
221
- yy: this.yy,
222
- conditionStack: this.conditionStack.slice(0),
223
- done: this.done
224
- }, this.options.ranges && (d.yylloc.range = this.yylloc.range.slice(0))), u = s[0].match(/(?:\r\n?|\n).*/g), u && (this.yylineno += u.length), this.yylloc = {
225
- first_line: this.yylloc.last_line,
226
- last_line: this.yylineno + 1,
227
- first_column: this.yylloc.last_column,
228
- last_column: u ? u[u.length - 1].length - u[u.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + s[0].length
229
- }, this.yytext += s[0], this.match += s[0], this.matches = s, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [this.offset, this.offset += this.yyleng]), this._more = !1, this._backtrack = !1, this._input = this._input.slice(s[0].length), this.matched += s[0], a = this.performAction.call(this, this.yy, this, r, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), a)
230
- return a;
231
- if (this._backtrack) {
232
- for (var o in d)
233
- this[o] = d[o];
234
- return !1;
235
- }
236
- return !1;
237
- },
238
- // return next match in input
239
- next: function() {
240
- if (this.done)
241
- return this.EOF;
242
- this._input || (this.done = !0);
243
- var s, r, a, u;
244
- this._more || (this.yytext = "", this.match = "");
245
- for (var d = this._currentRules(), o = 0; o < d.length; o++)
246
- if (a = this._input.match(this.rules[d[o]]), a && (!r || a[0].length > r[0].length)) {
247
- if (r = a, u = o, this.options.backtrack_lexer) {
248
- if (s = this.test_match(a, d[o]), s !== !1)
249
- return s;
250
- if (this._backtrack) {
251
- r = !1;
252
- continue;
253
- } else
254
- return !1;
255
- } else if (!this.options.flex)
256
- break;
257
- }
258
- return r ? (s = this.test_match(r, d[u]), s !== !1 ? s : !1) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
259
- ` + this.showPosition(), {
260
- text: "",
261
- token: null,
262
- line: this.yylineno
263
- });
264
- },
265
- // return next match that has a token
266
- lex: function() {
267
- var r = this.next();
268
- return r || this.lex();
269
- },
270
- // activates a new lexer condition state (pushes the new lexer condition state onto the condition stack)
271
- begin: function(r) {
272
- this.conditionStack.push(r);
273
- },
274
- // pop the previously active lexer condition state off the condition stack
275
- popState: function() {
276
- var r = this.conditionStack.length - 1;
277
- return r > 0 ? this.conditionStack.pop() : this.conditionStack[0];
278
- },
279
- // produce the lexer rule set which is active for the currently active lexer condition state
280
- _currentRules: function() {
281
- return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
282
- },
283
- // return the currently active lexer condition state; when an index argument is provided it produces the N-th previous condition state, if available
284
- topState: function(r) {
285
- return r = this.conditionStack.length - 1 - Math.abs(r || 0), r >= 0 ? this.conditionStack[r] : "INITIAL";
286
- },
287
- // alias for begin(condition)
288
- pushState: function(r) {
289
- this.begin(r);
290
- },
291
- // return the number of states currently on the stack
292
- stateStackSize: function() {
293
- return this.conditionStack.length;
294
- },
295
- options: { "case-insensitive": !0 },
296
- performAction: function(r, a, u, d) {
297
- switch (u) {
298
- case 0:
299
- break;
300
- case 1:
301
- break;
302
- case 2:
303
- return 10;
304
- case 3:
305
- break;
306
- case 4:
307
- break;
308
- case 5:
309
- return 4;
310
- case 6:
311
- return 11;
312
- case 7:
313
- return this.begin("acc_title"), 12;
314
- case 8:
315
- return this.popState(), "acc_title_value";
316
- case 9:
317
- return this.begin("acc_descr"), 14;
318
- case 10:
319
- return this.popState(), "acc_descr_value";
320
- case 11:
321
- this.begin("acc_descr_multiline");
322
- break;
323
- case 12:
324
- this.popState();
325
- break;
326
- case 13:
327
- return "acc_descr_multiline_value";
328
- case 14:
329
- return 17;
330
- case 15:
331
- return 18;
332
- case 16:
333
- return 19;
334
- case 17:
335
- return ":";
336
- case 18:
337
- return 6;
338
- case 19:
339
- return "INVALID";
340
- }
341
- },
342
- rules: [/^(?:%(?!\{)[^\n]*)/i, /^(?:[^\}]%%[^\n]*)/i, /^(?:[\n]+)/i, /^(?:\s+)/i, /^(?:#[^\n]*)/i, /^(?:journey\b)/i, /^(?:title\s[^#\n;]+)/i, /^(?:accTitle\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*:\s*)/i, /^(?:(?!\n||)*[^\n]*)/i, /^(?:accDescr\s*\{\s*)/i, /^(?:[\}])/i, /^(?:[^\}]*)/i, /^(?:section\s[^#:\n;]+)/i, /^(?:[^#:\n;]+)/i, /^(?::[^#\n;]+)/i, /^(?::)/i, /^(?:$)/i, /^(?:.)/i],
343
- conditions: { acc_descr_multiline: { rules: [12, 13], inclusive: !1 }, acc_descr: { rules: [10], inclusive: !1 }, acc_title: { rules: [8], inclusive: !1 }, INITIAL: { rules: [0, 1, 2, 3, 4, 5, 6, 7, 9, 11, 14, 15, 16, 17, 18, 19], inclusive: !0 } }
344
- };
345
- return p;
346
- }();
347
- y.lexer = m;
348
- function g() {
349
- this.yy = {};
350
- }
351
- return g.prototype = y, y.Parser = g, new g();
352
- }();
353
- G.parser = G;
354
- const wt = G;
355
- let A = "";
356
- const H = [], V = [], F = [], $t = function() {
357
- H.length = 0, V.length = 0, A = "", F.length = 0, xt();
358
- }, Tt = function(t) {
359
- A = t, H.push(t);
360
- }, Mt = function() {
361
- return H;
362
- }, St = function() {
363
- let t = D();
364
- const e = 100;
365
- let i = 0;
366
- for (; !t && i < e; )
367
- t = D(), i++;
368
- return V.push(...F), V;
369
- }, Et = function() {
370
- const t = [];
371
- return V.forEach((i) => {
372
- i.people && t.push(...i.people);
373
- }), [...new Set(t)].sort();
374
- }, Pt = function(t, e) {
375
- const i = e.substr(1).split(":");
376
- let l = 0, n = [];
377
- i.length === 1 ? (l = Number(i[0]), n = []) : (l = Number(i[0]), n = i[1].split(","));
378
- const h = n.map((f) => f.trim()), c = {
379
- section: A,
380
- type: A,
381
- people: h,
382
- task: t,
383
- score: l
384
- };
385
- F.push(c);
386
- }, Ct = function(t) {
387
- const e = {
388
- section: A,
389
- type: A,
390
- description: t,
391
- task: t,
392
- classes: []
393
- };
394
- V.push(e);
395
- }, D = function() {
396
- const t = function(i) {
397
- return F[i].processed;
398
- };
399
- let e = !0;
400
- for (const [i, l] of F.entries())
401
- t(i), e = e && l.processed;
402
- return e;
403
- }, It = function() {
404
- return Et();
405
- }, tt = {
406
- getConfig: () => C().journey,
407
- clear: $t,
408
- setDiagramTitle: yt,
409
- getDiagramTitle: ft,
410
- setAccTitle: dt,
411
- getAccTitle: pt,
412
- setAccDescription: gt,
413
- getAccDescription: mt,
414
- addSection: Tt,
415
- getSections: Mt,
416
- getTasks: St,
417
- addTask: Pt,
418
- addTaskOrg: Ct,
419
- getActors: It
420
- }, At = (t) => `.label {
421
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
422
- font-family: var(--mermaid-font-family);
423
- color: ${t.textColor};
424
- }
425
- .mouth {
426
- stroke: #666;
427
- }
428
-
429
- line {
430
- stroke: ${t.textColor}
431
- }
432
-
433
- .legend {
434
- fill: ${t.textColor};
435
- }
436
-
437
- .label text {
438
- fill: #333;
439
- }
440
- .label {
441
- color: ${t.textColor}
442
- }
443
-
444
- .face {
445
- ${t.faceColor ? `fill: ${t.faceColor}` : "fill: #FFF8DC"};
446
- stroke: #999;
447
- }
448
-
449
- .node rect,
450
- .node circle,
451
- .node ellipse,
452
- .node polygon,
453
- .node path {
454
- fill: ${t.mainBkg};
455
- stroke: ${t.nodeBorder};
456
- stroke-width: 1px;
457
- }
458
-
459
- .node .label {
460
- text-align: center;
461
- }
462
- .node.clickable {
463
- cursor: pointer;
464
- }
465
-
466
- .arrowheadPath {
467
- fill: ${t.arrowheadColor};
468
- }
469
-
470
- .edgePath .path {
471
- stroke: ${t.lineColor};
472
- stroke-width: 1.5px;
473
- }
474
-
475
- .flowchart-link {
476
- stroke: ${t.lineColor};
477
- fill: none;
478
- }
479
-
480
- .edgeLabel {
481
- background-color: ${t.edgeLabelBackground};
482
- rect {
483
- opacity: 0.5;
484
- }
485
- text-align: center;
486
- }
487
-
488
- .cluster rect {
489
- }
490
-
491
- .cluster text {
492
- fill: ${t.titleColor};
493
- }
494
-
495
- div.mermaidTooltip {
496
- position: absolute;
497
- text-align: center;
498
- max-width: 200px;
499
- padding: 2px;
500
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
501
- font-family: var(--mermaid-font-family);
502
- font-size: 12px;
503
- background: ${t.tertiaryColor};
504
- border: 1px solid ${t.border2};
505
- border-radius: 2px;
506
- pointer-events: none;
507
- z-index: 100;
508
- }
509
-
510
- .task-type-0, .section-type-0 {
511
- ${t.fillType0 ? `fill: ${t.fillType0}` : ""};
512
- }
513
- .task-type-1, .section-type-1 {
514
- ${t.fillType0 ? `fill: ${t.fillType1}` : ""};
515
- }
516
- .task-type-2, .section-type-2 {
517
- ${t.fillType0 ? `fill: ${t.fillType2}` : ""};
518
- }
519
- .task-type-3, .section-type-3 {
520
- ${t.fillType0 ? `fill: ${t.fillType3}` : ""};
521
- }
522
- .task-type-4, .section-type-4 {
523
- ${t.fillType0 ? `fill: ${t.fillType4}` : ""};
524
- }
525
- .task-type-5, .section-type-5 {
526
- ${t.fillType0 ? `fill: ${t.fillType5}` : ""};
527
- }
528
- .task-type-6, .section-type-6 {
529
- ${t.fillType0 ? `fill: ${t.fillType6}` : ""};
530
- }
531
- .task-type-7, .section-type-7 {
532
- ${t.fillType0 ? `fill: ${t.fillType7}` : ""};
533
- }
534
-
535
- .actor-0 {
536
- ${t.actor0 ? `fill: ${t.actor0}` : ""};
537
- }
538
- .actor-1 {
539
- ${t.actor1 ? `fill: ${t.actor1}` : ""};
540
- }
541
- .actor-2 {
542
- ${t.actor2 ? `fill: ${t.actor2}` : ""};
543
- }
544
- .actor-3 {
545
- ${t.actor3 ? `fill: ${t.actor3}` : ""};
546
- }
547
- .actor-4 {
548
- ${t.actor4 ? `fill: ${t.actor4}` : ""};
549
- }
550
- .actor-5 {
551
- ${t.actor5 ? `fill: ${t.actor5}` : ""};
552
- }
553
- `, Vt = At, U = function(t, e) {
554
- return _t(t, e);
555
- }, Ft = function(t, e) {
556
- const l = t.append("circle").attr("cx", e.cx).attr("cy", e.cy).attr("class", "face").attr("r", 15).attr("stroke-width", 2).attr("overflow", "visible"), n = t.append("g");
557
- n.append("circle").attr("cx", e.cx - 15 / 3).attr("cy", e.cy - 15 / 3).attr("r", 1.5).attr("stroke-width", 2).attr("fill", "#666").attr("stroke", "#666"), n.append("circle").attr("cx", e.cx + 15 / 3).attr("cy", e.cy - 15 / 3).attr("r", 1.5).attr("stroke-width", 2).attr("fill", "#666").attr("stroke", "#666");
558
- function h(y) {
559
- const m = Q().startAngle(Math.PI / 2).endAngle(3 * (Math.PI / 2)).innerRadius(7.5).outerRadius(6.8181818181818175);
560
- y.append("path").attr("class", "mouth").attr("d", m).attr("transform", "translate(" + e.cx + "," + (e.cy + 2) + ")");
561
- }
562
- function c(y) {
563
- const m = Q().startAngle(3 * Math.PI / 2).endAngle(5 * (Math.PI / 2)).innerRadius(7.5).outerRadius(6.8181818181818175);
564
- y.append("path").attr("class", "mouth").attr("d", m).attr("transform", "translate(" + e.cx + "," + (e.cy + 7) + ")");
565
- }
566
- function f(y) {
567
- y.append("line").attr("class", "mouth").attr("stroke", 2).attr("x1", e.cx - 5).attr("y1", e.cy + 7).attr("x2", e.cx + 5).attr("y2", e.cy + 7).attr("class", "mouth").attr("stroke-width", "1px").attr("stroke", "#666");
568
- }
569
- return e.score > 3 ? h(n) : e.score < 3 ? c(n) : f(n), l;
570
- }, rt = function(t, e) {
571
- const i = t.append("circle");
572
- return i.attr("cx", e.cx), i.attr("cy", e.cy), i.attr("class", "actor-" + e.pos), i.attr("fill", e.fill), i.attr("stroke", e.stroke), i.attr("r", e.r), i.class !== void 0 && i.attr("class", i.class), e.title !== void 0 && i.append("title").text(e.title), i;
573
- }, at = function(t, e) {
574
- return bt(t, e);
575
- }, Lt = function(t, e) {
576
- function i(n, h, c, f, y) {
577
- return n + "," + h + " " + (n + c) + "," + h + " " + (n + c) + "," + (h + f - y) + " " + (n + c - y * 1.2) + "," + (h + f) + " " + n + "," + (h + f);
578
- }
579
- const l = t.append("polygon");
580
- l.attr("points", i(e.x, e.y, 50, 20, 7)), l.attr("class", "labelBox"), e.y = e.y + e.labelMargin, e.x = e.x + 0.5 * e.labelMargin, at(t, e);
581
- }, Rt = function(t, e, i) {
582
- const l = t.append("g"), n = it();
583
- n.x = e.x, n.y = e.y, n.fill = e.fill, n.width = i.width * e.taskCount + // width of the tasks
584
- i.diagramMarginX * (e.taskCount - 1), n.height = i.height, n.class = "journey-section section-type-" + e.num, n.rx = 3, n.ry = 3, U(l, n), ot(i)(
585
- e.text,
586
- l,
587
- n.x,
588
- n.y,
589
- n.width,
590
- n.height,
591
- { class: "journey-section section-type-" + e.num },
592
- i,
593
- e.colour
594
- );
595
- };
596
- let et = -1;
597
- const Nt = function(t, e, i) {
598
- const l = e.x + i.width / 2, n = t.append("g");
599
- et++;
600
- const h = 300 + 5 * 30;
601
- n.append("line").attr("id", "task" + et).attr("x1", l).attr("y1", e.y).attr("x2", l).attr("y2", h).attr("class", "task-line").attr("stroke-width", "1px").attr("stroke-dasharray", "4 2").attr("stroke", "#666"), Ft(n, {
602
- cx: l,
603
- cy: 300 + (5 - e.score) * 30,
604
- score: e.score
605
- });
606
- const c = it();
607
- c.x = e.x, c.y = e.y, c.fill = e.fill, c.width = i.width, c.height = i.height, c.class = "task task-type-" + e.num, c.rx = 3, c.ry = 3, U(n, c);
608
- let f = e.x + 14;
609
- e.people.forEach((y) => {
610
- const m = e.actors[y].color, g = {
611
- cx: f,
612
- cy: e.y,
613
- r: 7,
614
- fill: m,
615
- stroke: "#000",
616
- title: y,
617
- pos: e.actors[y].position
618
- };
619
- rt(n, g), f += 10;
620
- }), ot(i)(
621
- e.task,
622
- n,
623
- c.x,
624
- c.y,
625
- c.width,
626
- c.height,
627
- { class: "task" },
628
- i,
629
- e.colour
630
- );
631
- }, Bt = function(t, e) {
632
- vt(t, e);
633
- }, ot = function() {
634
- function t(n, h, c, f, y, m, g, p) {
635
- const s = h.append("text").attr("x", c + y / 2).attr("y", f + m / 2 + 5).style("font-color", p).style("text-anchor", "middle").text(n);
636
- l(s, g);
637
- }
638
- function e(n, h, c, f, y, m, g, p, s) {
639
- const { taskFontSize: r, taskFontFamily: a } = p, u = n.split(/<br\s*\/?>/gi);
640
- for (let d = 0; d < u.length; d++) {
641
- const o = d * r - r * (u.length - 1) / 2, w = h.append("text").attr("x", c + y / 2).attr("y", f).attr("fill", s).style("text-anchor", "middle").style("font-size", r).style("font-family", a);
642
- w.append("tspan").attr("x", c + y / 2).attr("dy", o).text(u[d]), w.attr("y", f + m / 2).attr("dominant-baseline", "central").attr("alignment-baseline", "central"), l(w, g);
643
- }
644
- }
645
- function i(n, h, c, f, y, m, g, p) {
646
- const s = h.append("switch"), a = s.append("foreignObject").attr("x", c).attr("y", f).attr("width", y).attr("height", m).attr("position", "fixed").append("xhtml:div").style("display", "table").style("height", "100%").style("width", "100%");
647
- a.append("div").attr("class", "label").style("display", "table-cell").style("text-align", "center").style("vertical-align", "middle").text(n), e(n, s, c, f, y, m, g, p), l(a, g);
648
- }
649
- function l(n, h) {
650
- for (const c in h)
651
- c in h && n.attr(c, h[c]);
652
- }
653
- return function(n) {
654
- return n.textPlacement === "fo" ? i : n.textPlacement === "old" ? t : e;
655
- };
656
- }(), jt = function(t) {
657
- t.append("defs").append("marker").attr("id", "arrowhead").attr("refX", 5).attr("refY", 2).attr("markerWidth", 6).attr("markerHeight", 4).attr("orient", "auto").append("path").attr("d", "M 0,0 V 4 L6,2 Z");
658
- }, L = {
659
- drawRect: U,
660
- drawCircle: rt,
661
- drawSection: Rt,
662
- drawText: at,
663
- drawLabel: Lt,
664
- drawTask: Nt,
665
- drawBackgroundRect: Bt,
666
- initGraphics: jt
667
- }, zt = function(t) {
668
- Object.keys(t).forEach(function(i) {
669
- j[i] = t[i];
670
- });
671
- }, M = {};
672
- function Yt(t) {
673
- const e = C().journey;
674
- let i = 60;
675
- Object.keys(M).forEach((l) => {
676
- const n = M[l].color, h = {
677
- cx: 20,
678
- cy: i,
679
- r: 7,
680
- fill: n,
681
- stroke: "#000",
682
- pos: M[l].position
683
- };
684
- L.drawCircle(t, h);
685
- const c = {
686
- x: 40,
687
- y: i + 7,
688
- fill: "#666",
689
- text: l,
690
- textMargin: e.boxTextMargin | 5
691
- };
692
- L.drawText(t, c), i += 20;
693
- });
694
- }
695
- const j = C().journey, P = j.leftMargin, Ot = function(t, e, i, l) {
696
- const n = C().journey, h = C().securityLevel;
697
- let c;
698
- h === "sandbox" && (c = W("#i" + e));
699
- const f = h === "sandbox" ? W(c.nodes()[0].contentDocument.body) : W("body");
700
- v.init();
701
- const y = f.select("#" + e);
702
- L.initGraphics(y);
703
- const m = l.db.getTasks(), g = l.db.getDiagramTitle(), p = l.db.getActors();
704
- for (const o in M)
705
- delete M[o];
706
- let s = 0;
707
- p.forEach((o) => {
708
- M[o] = {
709
- color: n.actorColours[s % n.actorColours.length],
710
- position: s
711
- }, s++;
712
- }), Yt(y), v.insert(0, 0, P, Object.keys(M).length * 50), qt(y, m, 0);
713
- const r = v.getBounds();
714
- g && y.append("text").text(g).attr("x", P).attr("font-size", "4ex").attr("font-weight", "bold").attr("y", 25);
715
- const a = r.stopy - r.starty + 2 * n.diagramMarginY, u = P + r.stopx + 2 * n.diagramMarginX;
716
- kt(y, a, u, n.useMaxWidth), y.append("line").attr("x1", P).attr("y1", n.height * 4).attr("x2", u - P - 4).attr("y2", n.height * 4).attr("stroke-width", 4).attr("stroke", "black").attr("marker-end", "url(#arrowhead)");
717
- const d = g ? 70 : 0;
718
- y.attr("viewBox", `${r.startx} -25 ${u} ${a + d}`), y.attr("preserveAspectRatio", "xMinYMin meet"), y.attr("height", a + d + 25);
719
- }, v = {
720
- data: {
721
- startx: void 0,
722
- stopx: void 0,
723
- starty: void 0,
724
- stopy: void 0
725
- },
726
- verticalPos: 0,
727
- sequenceItems: [],
728
- init: function() {
729
- this.sequenceItems = [], this.data = {
730
- startx: void 0,
731
- stopx: void 0,
732
- starty: void 0,
733
- stopy: void 0
734
- }, this.verticalPos = 0;
735
- },
736
- updateVal: function(t, e, i, l) {
737
- t[e] === void 0 ? t[e] = i : t[e] = l(i, t[e]);
738
- },
739
- updateBounds: function(t, e, i, l) {
740
- const n = C().journey, h = this;
741
- let c = 0;
742
- function f(y) {
743
- return function(g) {
744
- c++;
745
- const p = h.sequenceItems.length - c + 1;
746
- h.updateVal(g, "starty", e - p * n.boxMargin, Math.min), h.updateVal(g, "stopy", l + p * n.boxMargin, Math.max), h.updateVal(v.data, "startx", t - p * n.boxMargin, Math.min), h.updateVal(v.data, "stopx", i + p * n.boxMargin, Math.max), y !== "activation" && (h.updateVal(g, "startx", t - p * n.boxMargin, Math.min), h.updateVal(g, "stopx", i + p * n.boxMargin, Math.max), h.updateVal(v.data, "starty", e - p * n.boxMargin, Math.min), h.updateVal(v.data, "stopy", l + p * n.boxMargin, Math.max));
747
- };
748
- }
749
- this.sequenceItems.forEach(f());
750
- },
751
- insert: function(t, e, i, l) {
752
- const n = Math.min(t, i), h = Math.max(t, i), c = Math.min(e, l), f = Math.max(e, l);
753
- this.updateVal(v.data, "startx", n, Math.min), this.updateVal(v.data, "starty", c, Math.min), this.updateVal(v.data, "stopx", h, Math.max), this.updateVal(v.data, "stopy", f, Math.max), this.updateBounds(n, c, h, f);
754
- },
755
- bumpVerticalPos: function(t) {
756
- this.verticalPos = this.verticalPos + t, this.data.stopy = this.verticalPos;
757
- },
758
- getVerticalPos: function() {
759
- return this.verticalPos;
760
- },
761
- getBounds: function() {
762
- return this.data;
763
- }
764
- }, X = j.sectionFills, st = j.sectionColours, qt = function(t, e, i) {
765
- const l = C().journey;
766
- let n = "";
767
- const h = l.height * 2 + l.diagramMarginY, c = i + h;
768
- let f = 0, y = "#CCC", m = "black", g = 0;
769
- for (const [p, s] of e.entries()) {
770
- if (n !== s.section) {
771
- y = X[f % X.length], g = f % X.length, m = st[f % st.length];
772
- let a = 0;
773
- const u = s.section;
774
- for (let o = p; o < e.length && e[o].section == u; o++)
775
- a = a + 1;
776
- const d = {
777
- x: p * l.taskMargin + p * l.width + P,
778
- y: 50,
779
- text: s.section,
780
- fill: y,
781
- num: g,
782
- colour: m,
783
- taskCount: a
784
- };
785
- L.drawSection(t, d, l), n = s.section, f++;
786
- }
787
- const r = s.people.reduce((a, u) => (M[u] && (a[u] = M[u]), a), {});
788
- s.x = p * l.taskMargin + p * l.width + P, s.y = c, s.width = l.diagramMarginX, s.height = l.diagramMarginY, s.colour = m, s.fill = y, s.num = g, s.actors = r, L.drawTask(t, s, l), v.insert(s.x, s.y, s.x + s.width + l.taskMargin, 300 + 5 * 30);
789
- }
790
- }, nt = {
791
- setConf: zt,
792
- draw: Ot
793
- }, Ut = {
794
- parser: wt,
795
- db: tt,
796
- renderer: nt,
797
- styles: Vt,
798
- init: (t) => {
799
- nt.setConf(t.journey), tt.clear();
800
- }
801
- };
802
- export {
803
- Ut as diagram
804
- };