@saltcorn/data 0.7.4-beta.3 → 0.7.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 (64) hide show
  1. package/dist/base-plugin/fileviews.js +1 -1
  2. package/dist/base-plugin/fileviews.js.map +1 -1
  3. package/dist/base-plugin/index.d.ts +63 -60
  4. package/dist/base-plugin/index.d.ts.map +1 -1
  5. package/dist/base-plugin/types.d.ts.map +1 -1
  6. package/dist/base-plugin/types.js +11 -3
  7. package/dist/base-plugin/types.js.map +1 -1
  8. package/dist/base-plugin/viewtemplates/edit.d.ts +7 -3
  9. package/dist/base-plugin/viewtemplates/edit.d.ts.map +1 -1
  10. package/dist/base-plugin/viewtemplates/edit.js +43 -10
  11. package/dist/base-plugin/viewtemplates/edit.js.map +1 -1
  12. package/dist/base-plugin/viewtemplates/filter.js +1 -1
  13. package/dist/base-plugin/viewtemplates/filter.js.map +1 -1
  14. package/dist/base-plugin/viewtemplates/listshowlist.d.ts +0 -2
  15. package/dist/base-plugin/viewtemplates/listshowlist.d.ts.map +1 -1
  16. package/dist/base-plugin/viewtemplates/listshowlist.js +0 -8
  17. package/dist/base-plugin/viewtemplates/listshowlist.js.map +1 -1
  18. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
  19. package/dist/base-plugin/viewtemplates/viewable_fields.js +27 -3
  20. package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
  21. package/dist/diagram/cy_generate_utils.d.ts +9 -2
  22. package/dist/diagram/cy_generate_utils.d.ts.map +1 -1
  23. package/dist/diagram/cy_generate_utils.js +35 -3
  24. package/dist/diagram/cy_generate_utils.js.map +1 -1
  25. package/dist/diagram/cy_raster.d.ts.map +1 -1
  26. package/dist/diagram/cy_raster.js +86 -20
  27. package/dist/diagram/cy_raster.js.map +1 -1
  28. package/dist/diagram/node.d.ts +3 -2
  29. package/dist/diagram/node.d.ts.map +1 -1
  30. package/dist/diagram/node.js +2 -1
  31. package/dist/diagram/node.js.map +1 -1
  32. package/dist/diagram/node_extract_utils.d.ts +14 -2
  33. package/dist/diagram/node_extract_utils.d.ts.map +1 -1
  34. package/dist/diagram/node_extract_utils.js +91 -29
  35. package/dist/diagram/node_extract_utils.js.map +1 -1
  36. package/dist/models/expression.js +3 -3
  37. package/dist/models/expression.js.map +1 -1
  38. package/dist/models/form.d.ts +2 -0
  39. package/dist/models/form.d.ts.map +1 -1
  40. package/dist/models/form.js +1 -0
  41. package/dist/models/form.js.map +1 -1
  42. package/dist/models/index.d.ts +1 -1
  43. package/dist/models/table.d.ts +4 -4
  44. package/dist/models/table.d.ts.map +1 -1
  45. package/dist/models/table.js +20 -13
  46. package/dist/models/table.js.map +1 -1
  47. package/dist/models/tag.d.ts.map +1 -1
  48. package/dist/models/tag.js +2 -1
  49. package/dist/models/tag.js.map +1 -1
  50. package/dist/models/trigger.d.ts +9 -2
  51. package/dist/models/trigger.d.ts.map +1 -1
  52. package/dist/models/trigger.js +30 -10
  53. package/dist/models/trigger.js.map +1 -1
  54. package/dist/models/view.d.ts.map +1 -1
  55. package/dist/models/view.js +10 -4
  56. package/dist/models/view.js.map +1 -1
  57. package/dist/plugin-helper.d.ts.map +1 -1
  58. package/dist/plugin-helper.js +51 -2
  59. package/dist/plugin-helper.js.map +1 -1
  60. package/dist/tests/exact_views.test.js +1 -1
  61. package/dist/tests/exact_views.test.js.map +1 -1
  62. package/dist/tests/table.test.js +17 -0
  63. package/dist/tests/table.test.js.map +1 -1
  64. package/package.json +7 -7
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateCyCode = void 0;
6
+ exports.generateCyCode = exports.genereateCyCfg = void 0;
7
7
  const cy_raster_1 = __importDefault(require("./cy_raster"));
8
8
  const cyStyle = [
9
9
  {
@@ -48,11 +48,43 @@ const cyStyle = [
48
48
  "background-color": "green",
49
49
  },
50
50
  },
51
+ {
52
+ selector: "node[type='table']",
53
+ style: {
54
+ "background-color": "gray",
55
+ },
56
+ },
57
+ {
58
+ selector: "node[type='trigger']",
59
+ style: {
60
+ "background-color": "yellow",
61
+ },
62
+ },
51
63
  ];
52
64
  /**
53
- * generates code to initalise cytoscape.js and draw the application object tree
65
+ * generates a cfg to re-init cytoscape.js on ajax requests
66
+ * @param entryNodes roots for the graphs,
67
+ if not set, roots will be used how the db delivers them
68
+ * @returns cytoscape.js cfg object
69
+ */
70
+ function genereateCyCfg(entryNodes) {
71
+ const raster = new cy_raster_1.default(entryNodes);
72
+ return {
73
+ elements: {
74
+ nodes: raster.buildCyNodes(),
75
+ edges: raster.buildCyEdges(),
76
+ },
77
+ style: cyStyle,
78
+ layout: {
79
+ name: "preset",
80
+ },
81
+ };
82
+ }
83
+ exports.genereateCyCfg = genereateCyCfg;
84
+ /**
85
+ * generates code to initalise cytoscape.js when the page loads the first time
54
86
  * @param entryNodes roots for the graphs,
55
- if not set roots, will be used how the db delivers them
87
+ if not set, roots will be used how the db delivers them
56
88
  * @returns cytoscape.js code as string
57
89
  */
58
90
  function generateCyCode(entryNodes) {
@@ -1 +1 @@
1
- {"version":3,"file":"cy_generate_utils.js","sourceRoot":"","sources":["../../diagram/cy_generate_utils.ts"],"names":[],"mappings":";;;;;;AACA,4DAA0C;AAE1C,MAAM,OAAO,GAAG;IACd;QACE,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE;YACL,KAAK,EAAE,CAAC;YACR,YAAY,EAAE,MAAM;YACpB,oBAAoB,EAAE,MAAM;YAC5B,oBAAoB,EAAE,UAAU;YAChC,aAAa,EAAE,CAAC;SACjB;KACF;IACD;QACE,QAAQ,EAAE,yBAAyB;QACnC,KAAK,EAAE;YACL,aAAa,EAAE,QAAQ;SACxB;KACF;IACD;QACE,QAAQ,EAAE,8BAA8B;QACxC,KAAK,EAAE;YACL,aAAa,EAAE,kBAAkB;YACjC,wBAAwB,EAAE,CAAC,EAAE;SAC9B;KACF;IACD;QACE,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE;YACL,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,SAAS;SACjB;KACF;IACD;QACE,QAAQ,EAAE,mBAAmB;QAC7B,KAAK,EAAE;YACL,kBAAkB,EAAE,MAAM;SAC3B;KACF;IACD;QACE,QAAQ,EAAE,mBAAmB;QAC7B,KAAK,EAAE;YACL,kBAAkB,EAAE,OAAO;SAC5B;KACF;CACF,CAAC;AAEF;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,UAAuB;IACpD,MAAM,MAAM,GAAG,IAAI,mBAAe,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;IACtC,OAAO;;;;eAIM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;eACvB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;;aAEzB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;;;;MAI9B,CAAC;AACP,CAAC;AAhBD,wCAgBC"}
1
+ {"version":3,"file":"cy_generate_utils.js","sourceRoot":"","sources":["../../diagram/cy_generate_utils.ts"],"names":[],"mappings":";;;;;;AACA,4DAA0C;AAE1C,MAAM,OAAO,GAAG;IACd;QACE,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE;YACL,KAAK,EAAE,CAAC;YACR,YAAY,EAAE,MAAM;YACpB,oBAAoB,EAAE,MAAM;YAC5B,oBAAoB,EAAE,UAAU;YAChC,aAAa,EAAE,CAAC;SACjB;KACF;IACD;QACE,QAAQ,EAAE,yBAAyB;QACnC,KAAK,EAAE;YACL,aAAa,EAAE,QAAQ;SACxB;KACF;IACD;QACE,QAAQ,EAAE,8BAA8B;QACxC,KAAK,EAAE;YACL,aAAa,EAAE,kBAAkB;YACjC,wBAAwB,EAAE,CAAC,EAAE;SAC9B;KACF;IACD;QACE,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE;YACL,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,SAAS;SACjB;KACF;IACD;QACE,QAAQ,EAAE,mBAAmB;QAC7B,KAAK,EAAE;YACL,kBAAkB,EAAE,MAAM;SAC3B;KACF;IACD;QACE,QAAQ,EAAE,mBAAmB;QAC7B,KAAK,EAAE;YACL,kBAAkB,EAAE,OAAO;SAC5B;KACF;IACD;QACE,QAAQ,EAAE,oBAAoB;QAC9B,KAAK,EAAE;YACL,kBAAkB,EAAE,MAAM;SAC3B;KACF;IACD;QACE,QAAQ,EAAE,sBAAsB;QAChC,KAAK,EAAE;YACL,kBAAkB,EAAE,QAAQ;SAC7B;KACF;CACF,CAAC;AAEF;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,UAAuB;IACpD,MAAM,MAAM,GAAG,IAAI,mBAAe,CAAC,UAAU,CAAC,CAAC;IAC/C,OAAO;QACL,QAAQ,EAAE;YACR,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE;YAC5B,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE;SAC7B;QACD,KAAK,EAAE,OAAO;QACd,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;SACf;KACF,CAAC;AACJ,CAAC;AAZD,wCAYC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,UAAuB;IACpD,MAAM,MAAM,GAAG,IAAI,mBAAe,CAAC,UAAU,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;IACtC,OAAO;;;;eAIM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;eACvB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;;aAEzB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;;;;MAI9B,CAAC;AACP,CAAC;AAhBD,wCAgBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cy_raster.d.ts","sourceRoot":"","sources":["../../diagram/cy_raster.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,KAAK,CAAqB;gBAEtB,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC;IAKnC,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,UAAU;IAiBX,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAM5C,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;IAQzD;;;OAGG;IACI,YAAY,IAAI,GAAG,EAAE;IA2B5B;;;OAGG;IACI,YAAY,IAAI,GAAG,EAAE;IAa5B,SAAS,IAAI,MAAM;IAInB,SAAS,IAAI,MAAM;IAInB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI5B,OAAO,CAAC,kBAAkB;CAiB3B;AAwID,aAAK,QAAQ,GAAG,YAAY,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"cy_raster.d.ts","sourceRoot":"","sources":["../../diagram/cy_raster.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAClC,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,KAAK,CAAqB;gBAEtB,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC;IAKnC,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,UAAU;IAqBX,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAM5C,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;IAQzD;;;OAGG;IACI,YAAY,IAAI,GAAG,EAAE;IA2B5B;;;OAGG;IACI,YAAY,IAAI,GAAG,EAAE;IAa5B,SAAS,IAAI,MAAM;IAInB,SAAS,IAAI,MAAM;IAInB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI5B,OAAO,CAAC,kBAAkB;CAiB3B;AAyND,aAAK,QAAQ,GAAG,YAAY,GAAG,iBAAiB,CAAC"}
@@ -30,16 +30,20 @@ class CytoscapeRaster {
30
30
  let startRow = 10;
31
31
  let startCol = 2;
32
32
  const visitor = buildVisitor(this);
33
+ let maxRowInLine = 0;
33
34
  for (const node of entryNodes) {
34
35
  const dummyRoot = new node_1.default("dummy", "");
35
36
  dummyRoot.linked.push(node);
36
37
  const usedSpace = traverse(dummyRoot, visitor, startRow, startCol);
37
- if (usedSpace.maxCol < 5) {
38
+ if (usedSpace.maxRow > maxRowInLine)
39
+ maxRowInLine = usedSpace.maxRow;
40
+ if (usedSpace.maxCol < 10) {
38
41
  startCol = usedSpace.maxCol;
39
42
  }
40
43
  else {
41
- startRow = usedSpace.maxRow;
44
+ startRow = maxRowInLine;
42
45
  startCol = 2;
46
+ maxRowInLine = 0;
43
47
  }
44
48
  }
45
49
  }
@@ -132,17 +136,44 @@ class CytoscapeRaster {
132
136
  }
133
137
  exports.default = CytoscapeRaster;
134
138
  const buildVisitor = (raster) => {
139
+ const allignTablesAndTrigger = (source, tables, row, col) => {
140
+ const triggerRow = row;
141
+ let tableRow = row;
142
+ let triggerCol = col;
143
+ let tableCol = col;
144
+ let anyNewTables = false;
145
+ for (const table of tables) {
146
+ if (!raster.hasId(table.cyId)) {
147
+ anyNewTables = true;
148
+ for (const trigger of table.trigger) {
149
+ raster.addNode(trigger, triggerRow, triggerCol--);
150
+ raster.addLink(table, trigger, "new_target");
151
+ }
152
+ if (table.trigger.length > 0)
153
+ tableRow = row + 1;
154
+ raster.addNode(table, tableRow, tableCol);
155
+ raster.addLink(source, table, "new_target");
156
+ tableCol = triggerCol;
157
+ }
158
+ else {
159
+ raster.addLink(source, table, "existing_target");
160
+ }
161
+ }
162
+ return { row: anyNewTables ? ++tableRow : tableRow, col: tableCol };
163
+ };
135
164
  return {
136
165
  linked(source, target, row, col, noLink) {
166
+ let insertRow = row;
167
+ let insertCol = col;
137
168
  if (!raster.hasId(target.cyId)) {
138
- const pos = { row: row, col: col };
139
- const embedDepth = maxEmbedDepth(target.embedded, raster);
140
- if (embedDepth > 0)
141
- pos.col += embedDepth + 1;
142
- raster.addNode(target, pos.row, pos.col);
169
+ insertCol += leftDepth(target, raster);
170
+ const newInsertPos = allignTablesAndTrigger(target, target.tables, insertRow, insertCol);
171
+ if (newInsertPos)
172
+ insertRow = newInsertPos.row;
173
+ raster.addNode(target, insertRow, insertCol);
143
174
  if (!noLink)
144
175
  raster.addLink(source, target, "new_target");
145
- return pos;
176
+ return { row: insertRow, col: insertCol };
146
177
  }
147
178
  else {
148
179
  raster.addLink(source, target, "existing_target");
@@ -150,28 +181,31 @@ const buildVisitor = (raster) => {
150
181
  }
151
182
  },
152
183
  embedded(source, target, row, col) {
184
+ let insertRow = row;
185
+ let insertCol = col;
153
186
  if (!raster.hasId(target.cyId)) {
154
- raster.addNode(target, row, col);
187
+ const newInsertPos = allignTablesAndTrigger(target, target.tables, insertRow, insertCol);
188
+ if (newInsertPos)
189
+ insertRow = newInsertPos.row;
190
+ raster.addNode(target, insertRow, insertCol);
155
191
  raster.addLink(source, target, "new_target");
156
- return { row, col };
192
+ return { row: insertRow, col: insertCol };
157
193
  }
158
194
  else {
159
195
  raster.addLink(source, target, "existing_target");
160
196
  return null;
161
197
  }
162
198
  },
163
- table(node, row, col) {
164
- return true;
165
- },
166
199
  };
167
200
  };
168
201
  const traverse = (node, visitor, startRow, startCol) => {
169
- let maxRow = 0;
170
- let maxCol = 0;
202
+ let maxRow = startRow;
203
+ let rootEmbedMax = maxRow;
204
+ let maxCol = startCol;
171
205
  const go = (current, row, col, ignoreLinks, parentIsDummy, shiftEmbedsY) => {
172
206
  let insertEmbedCol = col - 1;
173
207
  let insertLinkedCol = col + 1;
174
- let insertEmbedRow = row > maxRow ? row : maxRow;
208
+ let insertEmbedRow = row > maxRow ? row : maxRow + 1;
175
209
  let insertLinkedRow = insertEmbedRow;
176
210
  // put links from embeds to the parent
177
211
  const embeddedLinks = new Array();
@@ -180,7 +214,12 @@ const traverse = (node, visitor, startRow, startCol) => {
180
214
  insertEmbedRow++;
181
215
  // align embeds
182
216
  for (const embedded of current.embedded) {
183
- if (visitor.embedded(current, embedded, insertEmbedRow, insertEmbedCol)) {
217
+ if (maxRow > insertEmbedRow)
218
+ insertEmbedRow = maxRow;
219
+ const rasterPos = visitor.embedded(current, embedded, insertEmbedRow, insertEmbedCol);
220
+ if (rasterPos) {
221
+ insertEmbedRow = rasterPos.row;
222
+ insertEmbedCol = rasterPos.col;
184
223
  go(embedded, insertEmbedRow, insertEmbedCol, true);
185
224
  if (++insertEmbedRow > maxRow)
186
225
  maxRow = insertEmbedRow;
@@ -188,6 +227,7 @@ const traverse = (node, visitor, startRow, startCol) => {
188
227
  }
189
228
  if (parentIsDummy) {
190
229
  // branches left from the root shouldn't affect right branches
230
+ rootEmbedMax = maxRow;
191
231
  maxRow = 0;
192
232
  insertEmbedRow = row;
193
233
  insertLinkedRow = row;
@@ -200,6 +240,9 @@ const traverse = (node, visitor, startRow, startCol) => {
200
240
  const rasterPos = visitor.linked(current, linked, insertLinkedRow, insertLinkedCol, currentIsDummy);
201
241
  if (rasterPos) {
202
242
  insertLinkedCol = rasterPos.col;
243
+ insertLinkedRow = rasterPos.row;
244
+ if (insertLinkedRow > maxRow)
245
+ maxRow = insertLinkedRow;
203
246
  go(linked, insertLinkedRow, insertLinkedCol, false, currentIsDummy, shiftEmbedsY);
204
247
  if (maxRow > insertLinkedRow)
205
248
  insertLinkedRow = maxRow;
@@ -214,7 +257,29 @@ const traverse = (node, visitor, startRow, startCol) => {
214
257
  maxCol = insertEmbedCol;
215
258
  };
216
259
  go(node, startRow, startCol, false);
217
- return { maxRow: maxRow + 1, maxCol };
260
+ return {
261
+ maxRow: (rootEmbedMax > maxRow ? rootEmbedMax : maxRow) + 1,
262
+ maxCol,
263
+ };
264
+ };
265
+ const leftDepth = (node, raster) => {
266
+ const tblDepth = tableDepth(node, raster);
267
+ const embedDepth = maxEmbedDepth(node.embedded, raster);
268
+ return tblDepth > embedDepth ? tblDepth : embedDepth;
269
+ };
270
+ const tableDepth = (parent, raster) => {
271
+ const usedIds = new Set();
272
+ let depth = 0;
273
+ for (const tbl of parent.tables || []) {
274
+ const triggerCount = tbl.trigger.length;
275
+ if (!raster.hasId(tbl.cyId)) {
276
+ usedIds.add(tbl.cyId);
277
+ if (tbl.trigger.length > 1) {
278
+ depth += triggerCount > 1 ? triggerCount : 1;
279
+ }
280
+ }
281
+ }
282
+ return depth;
218
283
  };
219
284
  const maxEmbedDepth = (nodes, raster) => {
220
285
  let max = 0;
@@ -226,14 +291,15 @@ const maxEmbedDepth = (nodes, raster) => {
226
291
  return max;
227
292
  };
228
293
  const embedDepth = (parent, raster) => {
229
- if (parent.embedded.length === 0)
294
+ if (raster.hasId(parent.cyId))
230
295
  return 0;
231
296
  let maxDepth = 0;
232
297
  for (const node of parent.embedded) {
233
298
  const branchDepth = embedDepth(node, raster);
234
299
  maxDepth = branchDepth > maxDepth ? branchDepth : maxDepth;
235
300
  }
236
- return maxDepth + (!raster.hasId(parent.cyId) ? 1 : 0);
301
+ let tblSpace = tableDepth(parent, raster);
302
+ return maxDepth + (tblSpace > 1 ? tblSpace : 1);
237
303
  };
238
304
  const collectEmbeddedLinks = (parent, result) => {
239
305
  for (const embedded of parent.embedded) {
@@ -1 +1 @@
1
- {"version":3,"file":"cy_raster.js","sourceRoot":"","sources":["../../diagram/cy_raster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cy_raster.js","sourceRoot":"","sources":["../../diagram/cy_raster.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare type NodeType = "view" | "page" | "table" | "dummy";
1
+ export declare type NodeType = "view" | "page" | "table" | "trigger" | "dummy";
2
2
  /**
3
3
  * resembles a page or a view in the application object tree
4
4
  */
@@ -9,8 +9,9 @@ export default class Node {
9
9
  linked: Node[];
10
10
  embedded: Node[];
11
11
  tables: Node[];
12
+ trigger: Node[];
12
13
  /**
13
- * @param type page or view
14
+ * @param type saltcorn-entity type
14
15
  * @param label
15
16
  */
16
17
  constructor(type: NodeType, label: string);
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../diagram/node.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAE3D;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,SAAqB;IAC3B,QAAQ,SAAqB;IAC7B,MAAM,SAAqB;IAE3B;;;OAGG;gBACS,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM;CAK1C"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../diagram/node.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAEvE;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,SAAqB;IAC3B,QAAQ,SAAqB;IAC7B,MAAM,SAAqB;IAC3B,OAAO,SAAqB;IAE5B;;;OAGG;gBACS,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM;CAK1C"}
@@ -5,13 +5,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  */
6
6
  class Node {
7
7
  /**
8
- * @param type page or view
8
+ * @param type saltcorn-entity type
9
9
  * @param label
10
10
  */
11
11
  constructor(type, label) {
12
12
  this.linked = new Array();
13
13
  this.embedded = new Array();
14
14
  this.tables = new Array();
15
+ this.trigger = new Array();
15
16
  this.type = type;
16
17
  this.label = label;
17
18
  this.cyId = `${type}_${label}`;
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../diagram/node.ts"],"names":[],"mappings":";;AAEA;;GAEG;AACH,MAAqB,IAAI;IAQvB;;;OAGG;IACH,YAAY,IAAc,EAAE,KAAa;QARzC,WAAM,GAAG,IAAI,KAAK,EAAQ,CAAC;QAC3B,aAAQ,GAAG,IAAI,KAAK,EAAQ,CAAC;QAC7B,WAAM,GAAG,IAAI,KAAK,EAAQ,CAAC;QAOzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;IACjC,CAAC;CACF;AAjBD,uBAiBC"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../diagram/node.ts"],"names":[],"mappings":";;AAEA;;GAEG;AACH,MAAqB,IAAI;IASvB;;;OAGG;IACH,YAAY,IAAc,EAAE,KAAa;QATzC,WAAM,GAAG,IAAI,KAAK,EAAQ,CAAC;QAC3B,aAAQ,GAAG,IAAI,KAAK,EAAQ,CAAC;QAC7B,WAAM,GAAG,IAAI,KAAK,EAAQ,CAAC;QAC3B,YAAO,GAAG,IAAI,KAAK,EAAQ,CAAC;QAO1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC;IACjC,CAAC;CACF;AAlBD,uBAkBC"}
@@ -1,12 +1,24 @@
1
1
  import Node from "./node";
2
2
  import { AbstractPage as Page } from "@saltcorn/types/model-abstracts/abstract_page";
3
3
  import type { ConnectedObjects } from "@saltcorn/types/base_types";
4
+ export declare type ExtractOpts = {
5
+ entryPages?: Array<Page>;
6
+ showViews: boolean;
7
+ viewFilterIds?: Set<number>;
8
+ showPages: boolean;
9
+ pageFilterIds?: Set<number>;
10
+ showTables: boolean;
11
+ tableFilterIds?: Set<number>;
12
+ showTrigger: boolean;
13
+ triggerFilterIds?: Set<number>;
14
+ };
4
15
  /**
5
16
  * builds object trees for 'views/pages' with branches for all possible paths
6
- * @param entryPages if given, those will be the start nodes of the first graphs
17
+ * @param opts filter and entry pages options.
18
+ * If 'entryPages' is an array, those will be the start nodes of the first graphs
7
19
  * @returns root nodes
8
20
  */
9
- export declare function buildObjectTrees(entryPages?: Array<Page>): Promise<Array<Node>>;
21
+ export declare function buildObjectTrees(opts: ExtractOpts): Promise<Array<Node>>;
10
22
  /**
11
23
  * extracts all 'views/pages' aligned in the layout
12
24
  * @param layout view or page layout
@@ -1 +1 @@
1
- {"version":3,"file":"node_extract_utils.d.ts","sourceRoot":"","sources":["../../diagram/node_extract_utils.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,MAAM,+CAA+C,CAAC;AAMrF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGnE;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,GAAE,KAAK,CAAC,IAAI,CAAqB,GAC1C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAQtB;AAoBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,gBAAgB,CAqC/D;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,gBAAgB,CAanE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,GAAG,GACjB,gBAAgB,GAAG,IAAI,CAkBzB"}
1
+ {"version":3,"file":"node_extract_utils.d.ts","sourceRoot":"","sources":["../../diagram/node_extract_utils.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAG1B,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE,MAAM,+CAA+C,CAAC;AAOrF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,oBAAY,WAAW,GAAG;IACxB,UAAU,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAgBtB;AAwBD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,gBAAgB,CAqC/D;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,gBAAgB,CAanE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,GAAG,GACjB,gBAAgB,GAAG,IAAI,CAkBzB"}
@@ -8,26 +8,39 @@ const node_1 = __importDefault(require("./node"));
8
8
  const layout_1 = __importDefault(require("../models/layout"));
9
9
  const { traverseSync } = layout_1.default;
10
10
  const { parse_view_select, } = require("../base-plugin/viewtemplates/viewable_fields");
11
+ const trigger_1 = __importDefault(require("../models/trigger"));
11
12
  /**
12
13
  * builds object trees for 'views/pages' with branches for all possible paths
13
- * @param entryPages if given, those will be the start nodes of the first graphs
14
+ * @param opts filter and entry pages options.
15
+ * If 'entryPages' is an array, those will be the start nodes of the first graphs
14
16
  * @returns root nodes
15
17
  */
16
- async function buildObjectTrees(entryPages = new Array()) {
17
- const helper = new ExtractHelper();
18
- const entryPageTrees = await buildTree("page", entryPages, helper);
19
- const allPages = await require("../models/page").find();
20
- const pageTrees = await buildTree("page", allPages, helper);
21
- const allViews = await require("../models/view").find();
22
- const viewTrees = await buildTree("view", allViews, helper);
23
- return [...entryPageTrees, ...pageTrees, ...viewTrees];
18
+ async function buildObjectTrees(opts) {
19
+ const result = new Array();
20
+ const helper = new ExtractHelper(opts);
21
+ if (opts.showPages) {
22
+ const entryPages = opts.entryPages ? opts.entryPages : new Array();
23
+ const entryPageTrees = await buildTree("page", entryPages, helper);
24
+ const allPages = await require("../models/page").find();
25
+ const pageTrees = await buildTree("page", allPages, helper);
26
+ result.push(...entryPageTrees, ...pageTrees);
27
+ }
28
+ if (opts.showViews) {
29
+ const allViews = await require("../models/view").find();
30
+ const viewTrees = await buildTree("view", allViews, helper);
31
+ result.push(...viewTrees);
32
+ }
33
+ return result;
24
34
  }
25
35
  exports.buildObjectTrees = buildObjectTrees;
26
36
  async function buildTree(type, objects, helper) {
27
37
  const result = new Array();
28
38
  for (const object of objects) {
29
39
  const node = new node_1.default(type, object.name);
30
- if (!helper.cyIds.has(node.cyId)) {
40
+ const includeObject = type === "page"
41
+ ? includePage(object, helper.opts)
42
+ : includeView(object, helper.opts);
43
+ if (includeObject && !helper.cyIds.has(node.cyId)) {
31
44
  helper.cyIds.add(node.cyId);
32
45
  const connected = await object.connected_objects();
33
46
  await helper.handleNodeConnections(node, connected);
@@ -136,29 +149,46 @@ exports.extractViewToCreate = extractViewToCreate;
136
149
  * helper to keep track of added nodes ('cyIds')
137
150
  */
138
151
  class ExtractHelper {
139
- constructor() {
152
+ constructor(opts) {
140
153
  this.cyIds = new Set();
154
+ this.opts = opts;
141
155
  }
142
156
  async handleNodeConnections(oldNode, connected) {
143
- for (const embeddedView of connected.embeddedViews || []) {
144
- if (embeddedView)
145
- await this.addEmbeddedView(oldNode, embeddedView);
146
- }
147
- for (const linkedPage of connected.linkedPages || []) {
148
- if (linkedPage)
149
- await this.addLinkedPageNode(oldNode, linkedPage);
150
- }
151
- for (const linkedView of connected.linkedViews || []) {
152
- if (linkedView)
153
- await this.addLinkedViewNode(oldNode, linkedView);
154
- }
155
- for (const table of connected.tables || []) {
156
- if (table) {
157
- const tableNode = new node_1.default("table", table.name);
158
- this.cyIds.add(tableNode.cyId);
159
- oldNode.tables.push(tableNode);
157
+ if (this.opts.showViews)
158
+ for (const embeddedView of connected.embeddedViews || []) {
159
+ if (embeddedView && includeView(embeddedView, this.opts))
160
+ await this.addEmbeddedView(oldNode, embeddedView);
161
+ }
162
+ if (this.opts.showPages)
163
+ for (const linkedPage of connected.linkedPages || []) {
164
+ if (linkedPage && includePage(linkedPage, this.opts))
165
+ await this.addLinkedPageNode(oldNode, linkedPage);
166
+ }
167
+ if (this.opts.showViews)
168
+ for (const linkedView of connected.linkedViews || []) {
169
+ if (linkedView && includeView(linkedView, this.opts))
170
+ await this.addLinkedViewNode(oldNode, linkedView);
171
+ }
172
+ if (this.opts.showTables)
173
+ for (const table of connected.tables || []) {
174
+ if (table && includeTable(table, this.opts)) {
175
+ const tableNode = new node_1.default("table", table.name);
176
+ this.cyIds.add(tableNode.cyId);
177
+ if (this.opts.showTrigger) {
178
+ const triggerNodes = new Array();
179
+ for (const trigger of await trigger_1.default.getAllTableTriggers(table)) {
180
+ if (trigger && includeTrigger(trigger, this.opts)) {
181
+ const newNode = new node_1.default("trigger", trigger.name);
182
+ this.cyIds.add(newNode.cyId);
183
+ triggerNodes.push(newNode);
184
+ }
185
+ }
186
+ if (triggerNodes.length > 0)
187
+ tableNode.trigger = triggerNodes;
188
+ }
189
+ oldNode.tables.push(tableNode);
190
+ }
160
191
  }
161
- }
162
192
  }
163
193
  async addLinkedViewNode(oldNode, newView) {
164
194
  const newNode = new node_1.default("view", newView.name);
@@ -188,4 +218,36 @@ class ExtractHelper {
188
218
  }
189
219
  }
190
220
  }
221
+ const includePage = (page, opts) => {
222
+ if (opts.showPages)
223
+ return checkFilterIds(page.id, opts.pageFilterIds);
224
+ else
225
+ return false;
226
+ };
227
+ const includeView = (view, opts) => {
228
+ if (opts.showViews)
229
+ return checkFilterIds(view.id, opts.viewFilterIds);
230
+ else
231
+ return false;
232
+ };
233
+ const includeTable = (table, opts) => {
234
+ if (opts.showTables)
235
+ return checkFilterIds(table.id, opts.tableFilterIds);
236
+ else
237
+ return false;
238
+ };
239
+ const includeTrigger = (trigger, opts) => {
240
+ if (opts.showTrigger)
241
+ return checkFilterIds(trigger.id, opts.triggerFilterIds);
242
+ else
243
+ return false;
244
+ };
245
+ const checkFilterIds = (id, filterIds) => {
246
+ if (!filterIds)
247
+ return true;
248
+ else if (!id)
249
+ return false;
250
+ else
251
+ return filterIds.has(id);
252
+ };
191
253
  //# sourceMappingURL=node_extract_utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"node_extract_utils.js","sourceRoot":"","sources":["../../diagram/node_extract_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node_extract_utils.js","sourceRoot":"","sources":["../../diagram/node_extract_utils.ts"],"names":[],"mappings":"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"}
@@ -264,10 +264,10 @@ function get_expression_function(expression, fields) {
264
264
  function eval_expression(expression, row, user) {
265
265
  const field_names = Object.keys(row);
266
266
  const args = field_names.includes("user")
267
- ? `{${field_names.join()}}`
268
- : `{${field_names.join()}}, user`;
267
+ ? `row, {${field_names.join()}}`
268
+ : `row, {${field_names.join()}}, user`;
269
269
  const { getState } = require("../db/state");
270
- return (0, vm_1.runInNewContext)(`(${args})=>(${expression})`, getState().function_context)(row, user);
270
+ return (0, vm_1.runInNewContext)(`(${args})=>(${expression})`, getState().function_context)(row, row, user);
271
271
  }
272
272
  /**
273
273
  * @param {string} expression