@saltcorn/data 0.9.0-beta.0 → 0.9.0-beta.10

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 (87) hide show
  1. package/dist/base-plugin/actions.d.ts +294 -14
  2. package/dist/base-plugin/actions.d.ts.map +1 -1
  3. package/dist/base-plugin/actions.js +20 -3
  4. package/dist/base-plugin/actions.js.map +1 -1
  5. package/dist/base-plugin/fieldviews.d.ts +9 -0
  6. package/dist/base-plugin/fieldviews.d.ts.map +1 -1
  7. package/dist/base-plugin/fieldviews.js +33 -1
  8. package/dist/base-plugin/fieldviews.js.map +1 -1
  9. package/dist/base-plugin/fileviews.d.ts +8 -0
  10. package/dist/base-plugin/fileviews.js +8 -0
  11. package/dist/base-plugin/fileviews.js.map +1 -1
  12. package/dist/base-plugin/index.d.ts +380 -326
  13. package/dist/base-plugin/index.d.ts.map +1 -1
  14. package/dist/base-plugin/types.d.ts +252 -162
  15. package/dist/base-plugin/types.d.ts.map +1 -1
  16. package/dist/base-plugin/types.js +78 -6
  17. package/dist/base-plugin/types.js.map +1 -1
  18. package/dist/base-plugin/viewtemplates/edit.d.ts.map +1 -1
  19. package/dist/base-plugin/viewtemplates/edit.js +72 -37
  20. package/dist/base-plugin/viewtemplates/edit.js.map +1 -1
  21. package/dist/base-plugin/viewtemplates/feed.d.ts +1 -1
  22. package/dist/base-plugin/viewtemplates/feed.d.ts.map +1 -1
  23. package/dist/base-plugin/viewtemplates/feed.js +27 -6
  24. package/dist/base-plugin/viewtemplates/feed.js.map +1 -1
  25. package/dist/base-plugin/viewtemplates/list.d.ts.map +1 -1
  26. package/dist/base-plugin/viewtemplates/list.js +1 -0
  27. package/dist/base-plugin/viewtemplates/list.js.map +1 -1
  28. package/dist/base-plugin/viewtemplates/show.d.ts +2 -1
  29. package/dist/base-plugin/viewtemplates/show.d.ts.map +1 -1
  30. package/dist/base-plugin/viewtemplates/show.js +17 -3
  31. package/dist/base-plugin/viewtemplates/show.js.map +1 -1
  32. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts +2 -2
  33. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
  34. package/dist/base-plugin/viewtemplates/viewable_fields.js +45 -15
  35. package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
  36. package/dist/db/fixtures.d.ts.map +1 -1
  37. package/dist/db/fixtures.js +33 -3
  38. package/dist/db/fixtures.js.map +1 -1
  39. package/dist/db/state.d.ts +5 -2
  40. package/dist/db/state.d.ts.map +1 -1
  41. package/dist/db/state.js +14 -2
  42. package/dist/db/state.js.map +1 -1
  43. package/dist/diagram/node_extract_utils.d.ts.map +1 -1
  44. package/dist/diagram/node_extract_utils.js +3 -1
  45. package/dist/diagram/node_extract_utils.js.map +1 -1
  46. package/dist/models/config.d.ts.map +1 -1
  47. package/dist/models/config.js +21 -0
  48. package/dist/models/config.js.map +1 -1
  49. package/dist/models/eventlog.d.ts +1 -0
  50. package/dist/models/eventlog.d.ts.map +1 -1
  51. package/dist/models/eventlog.js +4 -0
  52. package/dist/models/eventlog.js.map +1 -1
  53. package/dist/models/field.d.ts.map +1 -1
  54. package/dist/models/field.js +6 -2
  55. package/dist/models/field.js.map +1 -1
  56. package/dist/models/file.js +1 -1
  57. package/dist/models/file.js.map +1 -1
  58. package/dist/models/model.d.ts.map +1 -1
  59. package/dist/models/model.js +12 -2
  60. package/dist/models/model.js.map +1 -1
  61. package/dist/models/model_instance.d.ts +1 -1
  62. package/dist/models/model_instance.d.ts.map +1 -1
  63. package/dist/models/model_instance.js +24 -1
  64. package/dist/models/model_instance.js.map +1 -1
  65. package/dist/models/table.d.ts +2 -2
  66. package/dist/models/table.d.ts.map +1 -1
  67. package/dist/models/table.js +40 -23
  68. package/dist/models/table.js.map +1 -1
  69. package/dist/models/tag_entry.d.ts +2 -1
  70. package/dist/models/tag_entry.d.ts.map +1 -1
  71. package/dist/models/tag_entry.js.map +1 -1
  72. package/dist/models/workflow.d.ts +2 -0
  73. package/dist/models/workflow.d.ts.map +1 -1
  74. package/dist/models/workflow.js +6 -2
  75. package/dist/models/workflow.js.map +1 -1
  76. package/dist/plugin-helper.d.ts +1 -1
  77. package/dist/plugin-helper.d.ts.map +1 -1
  78. package/dist/plugin-helper.js +67 -3
  79. package/dist/plugin-helper.js.map +1 -1
  80. package/dist/tests/exact_views.test.js +15 -15
  81. package/dist/tests/exact_views.test.js.map +1 -1
  82. package/dist/web-mobile-commons.d.ts +6 -1
  83. package/dist/web-mobile-commons.d.ts.map +1 -1
  84. package/dist/web-mobile-commons.js +205 -1
  85. package/dist/web-mobile-commons.js.map +1 -1
  86. package/package.json +7 -7
  87. package/webpack.config.js +2 -0
@@ -33,6 +33,7 @@ const builtInActions = [
33
33
  "Save",
34
34
  "SaveAndContinue",
35
35
  "UpdateMatchingRows",
36
+ "SubmitWithAjax",
36
37
  "Reset",
37
38
  "GoBack",
38
39
  "Delete",
@@ -417,6 +418,7 @@ const transformForm = async ({ form, table, req, row, res, getRowQuery, viewname
417
418
  await traverse(form.layout, {
418
419
  async action(segment) {
419
420
  if (segment.action_style === "on_page_load") {
421
+ //TODO check segment.min_role
420
422
  //run action
421
423
  const actionResult = await run_action_column({
422
424
  col: { ...segment },
@@ -428,7 +430,7 @@ const transformForm = async ({ form, table, req, row, res, getRowQuery, viewname
428
430
  segment.type = "blank";
429
431
  segment.style = {};
430
432
  if (actionResult)
431
- segment.contents = script(domReady(`common_done(${JSON.stringify(actionResult)})`));
433
+ segment.contents = script(domReady(`common_done(${JSON.stringify(actionResult)}, "${viewname}")`));
432
434
  else
433
435
  segment.contents = "";
434
436
  return;
@@ -444,7 +446,14 @@ const transformForm = async ({ form, table, req, row, res, getRowQuery, viewname
444
446
  }
445
447
  else if (!["Sign up", ...builtInActions].includes(segment.action_name) &&
446
448
  !segment.action_name.startsWith("Login")) {
447
- const url = action_url(viewname, table, segment.action_name, row, segment.rndid, "rndid", segment.confirm);
449
+ let url = action_url(viewname, table, segment.action_name, row, segment.rndid, "rndid", segment.confirm);
450
+ if (url.javascript) {
451
+ //redo to include dynamic row
452
+ const confirmStr = segment.confirm
453
+ ? `if(confirm('Are you sure?'))`
454
+ : "";
455
+ url.javascript = `${confirmStr}view_post('${viewname}', 'run_action', {rndid:'${segment.rndid}', ...get_form_record({viewname: '${viewname}'})});`;
456
+ }
448
457
  segment.action_link = action_link(url, req, segment);
449
458
  }
450
459
  },
@@ -550,7 +559,7 @@ const transformForm = async ({ form, table, req, row, res, getRowQuery, viewname
550
559
  state = { id: row[view_select.field_name] };
551
560
  break;
552
561
  }
553
- segment.contents = await view.run(state, { req, res });
562
+ segment.contents = await view.run(state, { req, res }, view.isRemoteTable());
554
563
  },
555
564
  });
556
565
  translateLayout(form.layout, req.getLocale());
@@ -578,11 +587,13 @@ const render = async ({ table, fields, viewname, columns, layout, row, req, stat
578
587
  if (row) {
579
588
  form.values = row;
580
589
  const file_fields = form.fields.filter((f) => f.type === "File");
581
- for (const field of file_fields) {
582
- if (field.fieldviewObj?.valueIsFilename && row[field.name]) {
583
- const file = await File.findOne({ id: row[field.name] });
584
- if (file.id)
585
- form.values[field.name] = file.filename;
590
+ if (isNode()) {
591
+ for (const field of file_fields) {
592
+ if (field.fieldviewObj?.valueIsFilename && row[field.name]) {
593
+ const file = await File.findOne({ id: row[field.name] });
594
+ if (file.id)
595
+ form.values[field.name] = file.filename;
596
+ }
586
597
  }
587
598
  }
588
599
  form.hidden(table.pk_name);
@@ -635,7 +646,7 @@ const render = async ({ table, fields, viewname, columns, layout, row, req, stat
635
646
  let hasSave = false;
636
647
  traverseSync(layout, {
637
648
  action({ action_name }) {
638
- if (action_name === "Save") {
649
+ if (action_name === "Save" || action_name === "SubmitWithAjax") {
639
650
  hasSave = true;
640
651
  }
641
652
  },
@@ -716,8 +727,13 @@ const runPost = async (table_id, viewname, { columns, layout, fixed, view_when_d
716
727
  }
717
728
  if (ins_upd_error) {
718
729
  res.status(422);
719
- req.flash("error", text_attr(ins_upd_error));
720
- res.sendWrap(viewname, renderForm(form, req.csrfToken()));
730
+ if (req.xhr) {
731
+ res.json({ error: ins_upd_error });
732
+ }
733
+ else {
734
+ req.flash("error", text_attr(ins_upd_error));
735
+ res.sendWrap(viewname, renderForm(form, req.csrfToken()));
736
+ }
721
737
  return;
722
738
  }
723
739
  //Edit-in-edit
@@ -782,14 +798,13 @@ const runPost = async (table_id, viewname, { columns, layout, fixed, view_when_d
782
798
  res.redirect(trigger_return.goto);
783
799
  return;
784
800
  }
785
- if (req.xhr && !originalID && !req.smr) {
786
- res.json({ id, view_when_done, ...trigger_return });
787
- return;
788
- }
789
- else if (req.xhr && !req.smr) {
790
- res.json({ view_when_done, ...trigger_return });
791
- return;
792
- }
801
+ /*if (req.xhr && !originalID && !req.smr) {
802
+ res.json({ id, view_when_done, ...trigger_return });
803
+ return;
804
+ } else if (req.xhr && !req.smr) {
805
+ res.json({ view_when_done, ...trigger_return });
806
+ return;
807
+ }*/
793
808
  await whenDone(viewname, table_id, fields, pk, {
794
809
  view_when_done,
795
810
  formula_destinations,
@@ -797,7 +812,7 @@ const runPost = async (table_id, viewname, { columns, layout, fixed, view_when_d
797
812
  dest_url_formula,
798
813
  page_when_done,
799
814
  redirect,
800
- }, req, res, body, row);
815
+ }, req, res, body, row, !originalID ? { id, ...trigger_return } : trigger_return, true);
801
816
  }
802
817
  };
803
818
  const doAuthPost = async ({ body, table_id, req }) => {
@@ -1020,18 +1035,20 @@ const prepare = async (viewname, table, fields, { columns, layout, fixed, auto_s
1020
1035
  }
1021
1036
  }
1022
1037
  else if (req.files && req.files[field.name]) {
1023
- if (!isNode() && !remote) {
1024
- req.flash("error", "The mobile-app supports no local files, please use a remote table.");
1025
- res.sendWrap(viewname, renderForm(form, req.csrfToken ? req.csrfToken() : false));
1026
- return null;
1038
+ if (!isNode() && !remote && req.files[field.name].name) {
1039
+ throw new Error("The mobile-app supports no local files, please use a remote table.");
1027
1040
  }
1028
1041
  if (isNode()) {
1029
1042
  const file = await File.from_req_files(req.files[field.name], req.user ? req.user.id : null, (field.attributes && +field.attributes.min_role_read) || 1, field?.attributes?.folder);
1030
1043
  row[field.name] = file.path_to_serve;
1031
1044
  }
1032
1045
  else {
1033
- const serverResp = await File.upload(req.files[field.name]);
1034
- row[field.name] = serverResp.location;
1046
+ const file = req.files[field.name];
1047
+ if (file?.name) {
1048
+ const serverResp = await File.upload(req.files[field.name]);
1049
+ if (serverResp?.location)
1050
+ row[field.name] = serverResp.location;
1051
+ }
1035
1052
  }
1036
1053
  }
1037
1054
  else {
@@ -1053,23 +1070,40 @@ const prepare = async (viewname, table, fields, { columns, layout, fixed, auto_s
1053
1070
  * @param {*} row row of the form
1054
1071
  * @returns
1055
1072
  */
1056
- const whenDone = async (viewname, table_id, fields, pk, { view_when_done, formula_destinations, destination_type, dest_url_formula, page_when_done, redirect, }, req, res, body, row) => {
1073
+ const whenDone = async (viewname, table_id, fields, pk, { view_when_done, formula_destinations, destination_type, dest_url_formula, page_when_done, redirect, }, req, res, body, row, trigger_return, check_ajax) => {
1074
+ const res_redirect = (url) => {
1075
+ if (check_ajax && req.xhr && !req.smr)
1076
+ res.json({
1077
+ view_when_done,
1078
+ url_when_done: url,
1079
+ ...(trigger_return || {}),
1080
+ });
1081
+ else
1082
+ res.redirect(url);
1083
+ };
1057
1084
  if (redirect) {
1058
- res.redirect(redirect);
1085
+ res_redirect(redirect);
1086
+ return;
1087
+ }
1088
+ if (check_ajax && req.xhr && !req.smr && trigger_return?.error) {
1089
+ res.json({
1090
+ view_when_done,
1091
+ ...(trigger_return || {}),
1092
+ });
1059
1093
  return;
1060
1094
  }
1061
1095
  let use_view_when_done = view_when_done;
1062
1096
  if (destination_type === "Back to referer" && body._referer) {
1063
- res.redirect(body._referer);
1097
+ res_redirect(body._referer);
1064
1098
  return;
1065
1099
  }
1066
1100
  else if (destination_type === "Page" && page_when_done) {
1067
- res.redirect(`/page/${page_when_done}`);
1101
+ res_redirect(`/page/${page_when_done}`);
1068
1102
  return;
1069
1103
  }
1070
1104
  else if (destination_type === "URL formula" && dest_url_formula) {
1071
1105
  const url = eval_expression(dest_url_formula, row);
1072
- res.redirect(url);
1106
+ res_redirect(url);
1073
1107
  return;
1074
1108
  }
1075
1109
  else if (destination_type !== "View")
@@ -1083,14 +1117,14 @@ const whenDone = async (viewname, table_id, fields, pk, { view_when_done, formul
1083
1117
  }
1084
1118
  }
1085
1119
  if (!use_view_when_done) {
1086
- res.redirect(`/`);
1120
+ res_redirect(`/`);
1087
1121
  return;
1088
1122
  }
1089
1123
  const [viewname_when_done, relation] = use_view_when_done.split(".");
1090
1124
  const nxview = View.findOne({ name: viewname_when_done });
1091
1125
  if (!nxview) {
1092
1126
  req.flash("warning", `View "${use_view_when_done}" not found - change "View when done" in "${viewname}" view`);
1093
- res.redirect(`/`);
1127
+ res_redirect(`/`);
1094
1128
  }
1095
1129
  else {
1096
1130
  const state_fields = await nxview.get_state_fields();
@@ -1107,7 +1141,7 @@ const whenDone = async (viewname, table_id, fields, pk, { view_when_done, formul
1107
1141
  res.json({ redirect: `get${redirectPath}` });
1108
1142
  }
1109
1143
  else {
1110
- res.redirect(redirectPath);
1144
+ res_redirect(redirectPath);
1111
1145
  }
1112
1146
  }
1113
1147
  };
@@ -1308,15 +1342,16 @@ module.exports = {
1308
1342
  return await table.getRow({ id });
1309
1343
  },
1310
1344
  async actionQuery() {
1311
- const body = req.body;
1312
- const col = columns.find((c) => c.type === "Action" && c.rndid === body.rndid && body.rndid);
1345
+ const { rndid, _csrf, ...body } = req.body;
1346
+ const col = columns.find((c) => c.type === "Action" && c.rndid === rndid && rndid);
1313
1347
  const table = Table.findOne({ id: table_id });
1314
- const row = body.id
1348
+ const dbrow = body.id
1315
1349
  ? await table.getRow({ id: body.id }, {
1316
1350
  forPublic: !req.user,
1317
1351
  forUser: req.user,
1318
1352
  })
1319
1353
  : undefined;
1354
+ const row = { ...dbrow, ...body };
1320
1355
  try {
1321
1356
  const result = await run_action_column({
1322
1357
  col,
@@ -1 +1 @@
1
- {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/edit.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/edit.js"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export function configuration_workflow(req: object): Workflow;
24
24
  * @param {*} extraArgs
25
25
  * @returns {Promise<div>}
26
26
  */
27
- export function run(table_id: number, viewname: string, { show_view, order_field, descending, view_to_create, create_view_display, in_card, view_decoration, title_formula, masonry_columns, rows_per_page, hide_pagination, create_view_label, create_view_location, create_link_style, create_link_size, always_create_view, include_fml, empty_view, ...cols }: {
27
+ export function run(table_id: number, viewname: string, { show_view, order_field, descending, view_to_create, create_view_display, in_card, view_decoration, initial_open_accordions, title_formula, masonry_columns, rows_per_page, hide_pagination, create_view_label, create_view_location, create_link_style, create_link_size, always_create_view, include_fml, empty_view, ...cols }: {
28
28
  show_view: string;
29
29
  order_field: name;
30
30
  descending: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"feed.d.ts","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/feed.js"],"names":[],"mappings":"AA4CA;;;GAGG;AACH,4CAHW,MAAM,GACJ,QAAQ,CA0TjB;AAqBJ;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BApBW,MAAM,YACN,MAAM;IAEO,SAAS,EAAtB,MAAM;IACK,WAAW;IACR,UAAU,EAAxB,OAAO;IACO,cAAc;IACf,mBAAmB,EAAhC,MAAM;IACQ,OAAO,EAArB,OAAO;IACM,eAAe,EAA5B,MAAM;IACQ,aAAa;IACb,eAAe,EAA7B,OAAO;IACO,iBAAiB;IACjB,oBAAoB;IACpB,kBAAkB,EAAhC,OAAO;IACC,IAAI;UACZ,MAAM;;IAEJ,YAAY,CAgNxB;AAtPD;;;;;;GAMG;AACH,2CANW,MAAM;IAGE,SAAS;IACf,QAAQ,KAAK,CAAC,CAY1B;;;2BAwOY,MAAM;kCAEN,MAAM;yCAMN,OAAO;AAElB;;;;GAIG;AACH;;wBAGC;AARD;;;;GAIG;AACH;;wBAGC;AACQ;;;;;;;;;;EAYP;AACgB,6HAIjB"}
1
+ {"version":3,"file":"feed.d.ts","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/feed.js"],"names":[],"mappings":"AAiDA;;;GAGG;AACH,4CAHW,MAAM,GACJ,QAAQ,CAkUjB;AAqBJ;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BApBW,MAAM,YACN,MAAM;IAEO,SAAS,EAAtB,MAAM;IACK,WAAW;IACR,UAAU,EAAxB,OAAO;IACO,cAAc;IACf,mBAAmB,EAAhC,MAAM;IACQ,OAAO,EAArB,OAAO;IACM,eAAe,EAA5B,MAAM;IACQ,aAAa;IACb,eAAe,EAA7B,OAAO;IACO,iBAAiB;IACjB,oBAAoB;IACpB,kBAAkB,EAAhC,OAAO;IACC,IAAI;UACZ,MAAM;;IAEJ,YAAY,CAmOxB;AAzQD;;;;;;GAMG;AACH,2CANW,MAAM;IAGE,SAAS;IACf,QAAQ,KAAK,CAAC,CAY1B;;;2BA2PY,MAAM;kCAEN,MAAM;yCAMN,OAAO;AAElB;;;;GAIG;AACH;;wBAGC;AARD;;;;GAIG;AACH;;wBAGC;AACQ;;;;;;;;;;EAYP;AACgB,6HAIjB"}
@@ -17,7 +17,7 @@ const pluralize = require("pluralize");
17
17
  const { link_view, stateToQueryString, stateFieldsToWhere, stateFieldsToQuery, readState, } = require("../../plugin-helper");
18
18
  const { InvalidConfiguration, isNode, isWeb, mergeConnectedObjects, hashState, } = require("../../utils");
19
19
  const { getState } = require("../../db/state");
20
- const { jsexprToWhere, eval_expression } = require("../../models/expression");
20
+ const { jsexprToWhere, eval_expression, add_free_variables_to_joinfields, freeVariables, } = require("../../models/expression");
21
21
  const { extractFromLayout, extractViewToCreate, } = require("../../diagram/node_extract_utils");
22
22
  /**
23
23
  * @param {object} req
@@ -251,6 +251,14 @@ const configuration_workflow = (req) => new Workflow({
251
251
  type: "String",
252
252
  showIf: { view_decoration: ["Card", "Accordion"] },
253
253
  },
254
+ {
255
+ name: "initial_open_accordions",
256
+ label: req.__("Initially open"),
257
+ type: "String",
258
+ fieldview: "radio_group",
259
+ attributes: { options: ["None", "All", "First"], inline: true },
260
+ required: true,
261
+ },
254
262
  {
255
263
  name: "hide_pagination",
256
264
  label: req.__("Hide pagination"),
@@ -353,7 +361,7 @@ const get_state_fields = async (table_id, viewname, { show_view }) => {
353
361
  * @returns {Promise<div>}
354
362
  */
355
363
  const run = async (table_id, viewname, { show_view, order_field, descending, view_to_create, create_view_display, in_card, //legacy
356
- view_decoration, title_formula, masonry_columns, rows_per_page = 20, hide_pagination, create_view_label, create_view_location, create_link_style, create_link_size, always_create_view, include_fml, empty_view, ...cols }, state, extraArgs, { countRowsQuery }) => {
364
+ view_decoration, initial_open_accordions = "None", title_formula, masonry_columns, rows_per_page = 20, hide_pagination, create_view_label, create_view_location, create_link_style, create_link_size, always_create_view, include_fml, empty_view, ...cols }, state, extraArgs, { countRowsQuery }) => {
357
365
  const table = Table.findOne({ id: table_id });
358
366
  const fields = table.getFields();
359
367
  readState(state, fields);
@@ -384,6 +392,8 @@ view_decoration, title_formula, masonry_columns, rows_per_page = 20, hide_pagina
384
392
  user_id,
385
393
  user: extraArgs?.req?.user,
386
394
  });
395
+ qextra.joinFields = {};
396
+ add_free_variables_to_joinfields(freeVariables(title_formula), qextra.joinFields, fields);
387
397
  const sresp = await sview.runMany(state, {
388
398
  ...extraArgs,
389
399
  ...qextra,
@@ -434,13 +444,18 @@ view_decoration, title_formula, masonry_columns, rows_per_page = 20, hide_pagina
434
444
  ? div({ class: "float-end" }, create_link)
435
445
  : create_link;
436
446
  const setCols = (sz) => `col-${sz}-${Math.round(12 / cols[`cols_${sz}`])}`;
437
- const showRowInner = (r, ix) => in_card || view_decoration === "Card"
447
+ const showRowInner = (r, ix) => (!view_decoration && in_card) || view_decoration === "Card"
438
448
  ? div({ class: `card shadow ${masonry_columns ? "mt-2" : "mt-4"}` }, title_formula
439
449
  ? div({ class: "card-header" }, eval_expression(title_formula, r.row, extraArgs.req.user))
440
450
  : undefined, div({ class: "card-body" }, r.html))
441
451
  : view_decoration === "Accordion"
442
452
  ? div({ class: "accordion-item" }, h2({ class: "accordion-header", id: `a${stateHash}head${ix}` }, button({
443
- class: ["accordion-button", "collapsed"],
453
+ class: [
454
+ "accordion-button",
455
+ (initial_open_accordions === "None" ||
456
+ (initial_open_accordions === "First" && ix > 0)) &&
457
+ "collapsed",
458
+ ],
444
459
  type: "button",
445
460
  "data-bs-toggle": "collapse",
446
461
  "data-bs-target": `#a${stateHash}tab${ix}`,
@@ -448,7 +463,12 @@ view_decoration, title_formula, masonry_columns, rows_per_page = 20, hide_pagina
448
463
  "aria-controls": `a${stateHash}tab${ix}`,
449
464
  }, eval_expression(title_formula, r.row, extraArgs.req.user) ||
450
465
  "Missing title")), div({
451
- class: ["accordion-collapse", "collapse"],
466
+ class: [
467
+ "accordion-collapse",
468
+ "collapse",
469
+ !(initial_open_accordions === "None" ||
470
+ (initial_open_accordions === "First" && ix > 0)) && "show",
471
+ ],
452
472
  id: `a${stateHash}tab${ix}`,
453
473
  "aria-labelledby": `a${stateHash}head${ix}`,
454
474
  "data-bs-parent": `#top${stateHash}`,
@@ -459,7 +479,8 @@ view_decoration, title_formula, masonry_columns, rows_per_page = 20, hide_pagina
459
479
  }, showRowInner(r));
460
480
  const correct_order = ([main, pagin, create]) => istop ? [create, main, pagin] : [main, pagin, create];
461
481
  const inner = div(correct_order([
462
- (in_card || view_decoration === "Card") && masonry_columns
482
+ ((!view_decoration && in_card) || view_decoration === "Card") &&
483
+ masonry_columns
463
484
  ? div({ class: "card-columns" }, sresp.map(showRowInner))
464
485
  : view_decoration === "Accordion"
465
486
  ? div({ class: "accordion", id: `top${stateHash}` }, sresp.map(showRowInner))