@saltcorn/markup 1.0.0-rc.6 → 1.0.0-rc.7

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.
package/dist/table.d.ts CHANGED
@@ -20,6 +20,7 @@ declare namespace TableExports {
20
20
  transpose?: boolean;
21
21
  tableClass?: string;
22
22
  tableId?: string;
23
+ grouped?: string;
23
24
  };
24
25
  }
25
26
  declare type HeadersParams = TableExports.HeadersParams;
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../table.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAyBH,kBAAU,YAAY,CAAC;IACrB,KAAY,aAAa,GAAG;QAC1B,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,KAAY,UAAU,GAAG;QACvB,UAAU,CAAC,EAAE;YACX,YAAY,EAAE,MAAM,CAAC;YACrB,KAAK,EAAE,MAAM,CAAC;YACd,aAAa,EAAE,QAAQ,CAAC;SACzB,CAAC;QACF,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AACD,aAAK,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;AAChD,aAAK,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;AA4G1C,QAAA,MAAM,YAAY,SApEV,aAAa,EAAE,MACjB,GAAG,EAAE,SACH,UAAU,GAAG,GAAG,KACrB,MAiEyB,CAAC;AAC7B,SAAS,YAAY,CAAC"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../table.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA0BH,kBAAU,YAAY,CAAC;IACrB,KAAY,aAAa,GAAG;QAC1B,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IAEF,KAAY,UAAU,GAAG;QACvB,UAAU,CAAC,EAAE;YACX,YAAY,EAAE,MAAM,CAAC;YACrB,KAAK,EAAE,MAAM,CAAC;YACd,aAAa,EAAE,QAAQ,CAAC;SACzB,CAAC;QACF,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AACD,aAAK,aAAa,GAAG,YAAY,CAAC,aAAa,CAAC;AAChD,aAAK,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;AAkH1C,QAAA,MAAM,YAAY,SA1EV,aAAa,EAAE,MACjB,GAAG,EAAE,SACH,UAAU,GAAG,GAAG,KACrB,MAuEyB,CAAC;AAC7B,SAAS,YAAY,CAAC"}
package/dist/table.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * @module table
5
5
  */
6
6
  const tags = require("./tags");
7
- const { a, td, tr, th, text, div, table, thead, tbody, ul, li, span } = tags;
7
+ const { a, td, tr, th, text, div, table, thead, tbody, ul, li, span, h4 } = tags;
8
8
  const helpers = require("./helpers");
9
9
  const { pagination } = helpers;
10
10
  /**
@@ -39,6 +39,14 @@ const transposedBody = (hdrs, vs, opts = {}) => hdrs.map((hdr, ix) => tr(!opts.n
39
39
  * @returns {string}
40
40
  */
41
41
  const mkTable = (hdrs, vs, opts = {}) => {
42
+ const val_row = (v) => tr(mkClickHandler(opts, v), hdrs.map((hdr) => td({
43
+ style: {
44
+ ...(hdr.align ? { "text-align": hdr.align } : {}),
45
+ ...(hdr.width && opts.noHeader ? { width: hdr.width } : {}),
46
+ },
47
+ }, typeof hdr.key === "string" ? text(v[hdr.key]) : hdr.key(v))));
48
+ const groupedBody = (groups) => Object.entries(groups).map(([group, rows]) => tr(td({ colspan: "1000" }, h4({ class: "list-group-header" }, group))) +
49
+ rows.map(val_row).join(""));
42
50
  return div({
43
51
  class: ["table-responsive", opts.tableClass],
44
52
  id: opts.tableId,
@@ -55,14 +63,9 @@ const mkTable = (hdrs, vs, opts = {}) => {
55
63
  !opts.transpose &&
56
64
  thead(tr(hdrs.map((hdr) => headerCell(hdr)))), tbody(opts.transpose
57
65
  ? transposedBody(hdrs, vs, opts)
58
- : (vs || []).map((v) => tr(mkClickHandler(opts, v), hdrs.map((hdr) => td({
59
- style: {
60
- ...(hdr.align ? { "text-align": hdr.align } : {}),
61
- ...(hdr.width && opts.noHeader
62
- ? { width: hdr.width }
63
- : {}),
64
- },
65
- }, typeof hdr.key === "string" ? text(v[hdr.key]) : hdr.key(v))))))), opts.pagination && pagination(opts.pagination));
66
+ : opts.grouped
67
+ ? groupedBody(vs)
68
+ : (vs || []).map(val_row))), opts.pagination && pagination(opts.pagination));
66
69
  };
67
70
  /**
68
71
  * @param {object} opts
package/dist/table.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../table.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saltcorn/markup",
3
- "version": "1.0.0-rc.6",
3
+ "version": "1.0.0-rc.7",
4
4
  "description": "Markup for Saltcorn, open-source no-code platform",
5
5
  "homepage": "https://saltcorn.com",
6
6
  "main": "./dist/index.js",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "repository": "github:saltcorn/saltcorn",
37
37
  "devDependencies": {
38
- "@saltcorn/types": "1.0.0-rc.6",
38
+ "@saltcorn/types": "1.0.0-rc.7",
39
39
  "@types/escape-html": "^1.0.1",
40
40
  "@types/jest": "^29.5.11",
41
41
  "@types/node": "^16.11.7",