@saltcorn/server 1.1.1-beta.5 → 1.1.1-beta.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.
Files changed (153) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/auth/admin.js +8 -0
  3. package/locales/en.json +16 -1
  4. package/markup/admin.js +8 -3
  5. package/markup/blockly.js +4 -4
  6. package/package.json +9 -9
  7. package/public/blockly/blockly_compressed.js +2016 -0
  8. package/public/blockly/blockly_compressed.js.map +1 -0
  9. package/public/blockly/blocks_compressed.js +212 -0
  10. package/public/blockly/blocks_compressed.js.map +1 -0
  11. package/public/blockly/javascript_compressed.js +121 -0
  12. package/public/blockly/javascript_compressed.js.map +1 -0
  13. package/public/blockly/msg/ab.js +440 -0
  14. package/public/blockly/msg/ace.js +440 -0
  15. package/public/blockly/msg/af.js +440 -0
  16. package/public/blockly/msg/am.js +440 -0
  17. package/public/blockly/msg/ar.js +440 -0
  18. package/public/blockly/msg/ast.js +440 -0
  19. package/public/blockly/msg/az.js +440 -0
  20. package/public/blockly/msg/ba.js +440 -0
  21. package/public/blockly/msg/bcc.js +440 -0
  22. package/public/blockly/msg/be-tarask.js +440 -0
  23. package/public/blockly/msg/be.js +440 -0
  24. package/public/blockly/msg/bg.js +440 -0
  25. package/public/blockly/msg/bn.js +440 -0
  26. package/public/blockly/msg/br.js +440 -0
  27. package/public/blockly/msg/bs.js +440 -0
  28. package/public/blockly/msg/ca.js +440 -0
  29. package/public/blockly/msg/cdo.js +440 -0
  30. package/public/blockly/msg/cs.js +440 -0
  31. package/public/blockly/msg/da.js +440 -0
  32. package/public/blockly/msg/de.js +440 -0
  33. package/public/blockly/msg/diq.js +440 -0
  34. package/public/blockly/msg/dty.js +440 -0
  35. package/public/blockly/msg/ee.js +440 -0
  36. package/public/blockly/msg/el.js +440 -0
  37. package/public/blockly/msg/en-gb.js +440 -0
  38. package/public/blockly/msg/en.js +440 -0
  39. package/public/blockly/msg/eo.js +440 -0
  40. package/public/blockly/msg/es.js +440 -0
  41. package/public/blockly/msg/et.js +440 -0
  42. package/public/blockly/msg/eu.js +440 -0
  43. package/public/blockly/msg/fa.js +440 -0
  44. package/public/blockly/msg/fi.js +440 -0
  45. package/public/blockly/msg/fo.js +440 -0
  46. package/public/blockly/msg/fr.js +440 -0
  47. package/public/blockly/msg/frr.js +440 -0
  48. package/public/blockly/msg/gl.js +440 -0
  49. package/public/blockly/msg/gn.js +440 -0
  50. package/public/blockly/msg/gor.js +440 -0
  51. package/public/blockly/msg/ha.js +440 -0
  52. package/public/blockly/msg/hak.js +440 -0
  53. package/public/blockly/msg/he.js +440 -0
  54. package/public/blockly/msg/hi.js +440 -0
  55. package/public/blockly/msg/hr.js +440 -0
  56. package/public/blockly/msg/hrx.js +440 -0
  57. package/public/blockly/msg/hu.js +440 -0
  58. package/public/blockly/msg/hy.js +440 -0
  59. package/public/blockly/msg/ia.js +440 -0
  60. package/public/blockly/msg/id.js +440 -0
  61. package/public/blockly/msg/ig.js +440 -0
  62. package/public/blockly/msg/inh.js +440 -0
  63. package/public/blockly/msg/is.js +440 -0
  64. package/public/blockly/msg/it.js +440 -0
  65. package/public/blockly/msg/ja.js +440 -0
  66. package/public/blockly/msg/ka.js +440 -0
  67. package/public/blockly/msg/kab.js +440 -0
  68. package/public/blockly/msg/kbd-cyrl.js +440 -0
  69. package/public/blockly/msg/km.js +440 -0
  70. package/public/blockly/msg/kn.js +440 -0
  71. package/public/blockly/msg/ko.js +440 -0
  72. package/public/blockly/msg/ksh.js +440 -0
  73. package/public/blockly/msg/ku-latn.js +440 -0
  74. package/public/blockly/msg/ky.js +440 -0
  75. package/public/blockly/msg/la.js +440 -0
  76. package/public/blockly/msg/lb.js +440 -0
  77. package/public/blockly/msg/lki.js +440 -0
  78. package/public/blockly/msg/lo.js +440 -0
  79. package/public/blockly/msg/lrc.js +440 -0
  80. package/public/blockly/msg/lt.js +440 -0
  81. package/public/blockly/msg/lv.js +440 -0
  82. package/public/blockly/msg/mg.js +440 -0
  83. package/public/blockly/msg/mk.js +440 -0
  84. package/public/blockly/msg/ml.js +440 -0
  85. package/public/blockly/msg/mnw.js +440 -0
  86. package/public/blockly/msg/ms.js +440 -0
  87. package/public/blockly/msg/msg.d.ts +444 -0
  88. package/public/blockly/msg/my.js +440 -0
  89. package/public/blockly/msg/mzn.js +440 -0
  90. package/public/blockly/msg/nb.js +440 -0
  91. package/public/blockly/msg/ne.js +440 -0
  92. package/public/blockly/msg/nl.js +440 -0
  93. package/public/blockly/msg/oc.js +440 -0
  94. package/public/blockly/msg/olo.js +440 -0
  95. package/public/blockly/msg/pa.js +440 -0
  96. package/public/blockly/msg/pl.js +440 -0
  97. package/public/blockly/msg/pms.js +440 -0
  98. package/public/blockly/msg/ps.js +440 -0
  99. package/public/blockly/msg/pt-br.js +440 -0
  100. package/public/blockly/msg/pt.js +440 -0
  101. package/public/blockly/msg/ro.js +440 -0
  102. package/public/blockly/msg/ru.js +440 -0
  103. package/public/blockly/msg/sc.js +440 -0
  104. package/public/blockly/msg/sco.js +440 -0
  105. package/public/blockly/msg/sd.js +440 -0
  106. package/public/blockly/msg/shn.js +440 -0
  107. package/public/blockly/msg/si.js +440 -0
  108. package/public/blockly/msg/sk.js +440 -0
  109. package/public/blockly/msg/skr-arab.js +440 -0
  110. package/public/blockly/msg/sl.js +440 -0
  111. package/public/blockly/msg/smn.js +440 -0
  112. package/public/blockly/msg/sq.js +440 -0
  113. package/public/blockly/msg/sr-latn.js +440 -0
  114. package/public/blockly/msg/sr.js +440 -0
  115. package/public/blockly/msg/sv.js +440 -0
  116. package/public/blockly/msg/sw.js +440 -0
  117. package/public/blockly/msg/ta.js +440 -0
  118. package/public/blockly/msg/tcy.js +440 -0
  119. package/public/blockly/msg/te.js +440 -0
  120. package/public/blockly/msg/th.js +440 -0
  121. package/public/blockly/msg/ti.js +440 -0
  122. package/public/blockly/msg/tl.js +440 -0
  123. package/public/blockly/msg/tlh.js +440 -0
  124. package/public/blockly/msg/tr.js +440 -0
  125. package/public/blockly/msg/ug-arab.js +440 -0
  126. package/public/blockly/msg/uk.js +440 -0
  127. package/public/blockly/msg/ur.js +440 -0
  128. package/public/blockly/msg/uz.js +440 -0
  129. package/public/blockly/msg/vi.js +440 -0
  130. package/public/blockly/msg/xmf.js +440 -0
  131. package/public/blockly/msg/yo.js +440 -0
  132. package/public/blockly/msg/yue.js +440 -0
  133. package/public/blockly/msg/zgh.js +440 -0
  134. package/public/blockly/msg/zh-hans.js +440 -0
  135. package/public/blockly/msg/zh-hant.js +440 -0
  136. package/public/saltcorn-common.js +8 -1
  137. package/public/saltcorn.js +12 -0
  138. package/routes/actions.js +32 -25
  139. package/routes/admin.js +90 -63
  140. package/routes/common_lists.js +46 -24
  141. package/routes/fields.js +31 -9
  142. package/routes/list.js +17 -4
  143. package/routes/notifications.js +27 -20
  144. package/routes/pageedit.js +14 -13
  145. package/routes/plugins.js +0 -32
  146. package/routes/tables.js +173 -92
  147. package/routes/utils.js +27 -0
  148. package/routes/view.js +2 -1
  149. package/routes/viewedit.js +14 -13
  150. package/serve.js +52 -1
  151. package/tests/api.test.js +0 -18
  152. package/tests/plugins.test.js +2 -2
  153. package/wrapper.js +80 -42
package/CHANGELOG.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  ## 1.1.1 - In beta
4
4
 
5
+ * You can now permit to non-admin (role ID > 1) users to edit or inspect tables, or
6
+ edit views, pages or triggers. In the permissions tab of the Users and security
7
+ settings, minimum roles can be set for these capabilities. The appropriate
8
+ menu items will be added to any users with the roles that match these permissions.
9
+
5
10
  * Stored calculated fields that contain joinfields in the expression are now automatically
6
11
  updated when the values they reference are changed, i.e. changes occur in the tables they
7
12
  reference. This is limited to single (expression contains x.y) and double joinfields
@@ -34,6 +39,7 @@
34
39
 
35
40
  ### Fixes
36
41
 
42
+ * fix workflows on SQLite
37
43
  * fix query string build on check_state_field (#2948). Author: St0rml
38
44
 
39
45
  ### Translations
package/auth/admin.js CHANGED
@@ -414,6 +414,14 @@ const permissions_settings_form = async (req) =>
414
414
  "min_role_upload",
415
415
  "min_role_apikeygen",
416
416
  "min_role_search",
417
+ {
418
+ section_header: req.__("Development permissions"),
419
+ },
420
+ "min_role_inspect_tables",
421
+ "min_role_edit_tables",
422
+ "min_role_edit_views",
423
+ "min_role_edit_pages",
424
+ "min_role_edit_triggers",
417
425
  //hidden "exttables_min_role_read",
418
426
  ],
419
427
  action: "/useradmin/permissions",
package/locales/en.json CHANGED
@@ -1528,5 +1528,20 @@
1528
1528
  "Finished": "Finished",
1529
1529
  "Error": "Error",
1530
1530
  "Waiting": "Waiting",
1531
- "Running": "Running"
1531
+ "Running": "Running",
1532
+ "Minimum role to access search page": "Minimum role to access search page",
1533
+ "Edit tables": "Edit tables",
1534
+ "Minimum role to edit tables": "Minimum role to edit tables",
1535
+ "Edit views": "Edit views",
1536
+ "Minimum role to edit views": "Minimum role to edit views",
1537
+ "Edit pages": "Edit pages",
1538
+ "Minimum role to edit pages": "Minimum role to edit pages",
1539
+ "Edit triggers": "Edit triggers",
1540
+ "Minimum role to edit triggers": "Minimum role to edit triggers",
1541
+ "Development permissions": "Development permissions",
1542
+ "Inspect tables": "Inspect tables",
1543
+ "Minimum role to inspect (see, without editing) tables": "Minimum role to inspect (see, without editing) tables",
1544
+ "Home pages": "Home pages",
1545
+ "The home page is the page that is served when the user visits the home location (/). This can be set for each user role.": "The home page is the page that is served when the user visits the home location (/). This can be set for each user role.",
1546
+ "Trigger %s deleted": "Trigger %s deleted"
1532
1547
  }
package/markup/admin.js CHANGED
@@ -302,14 +302,19 @@ const send_tags_page = (args) => {
302
302
  */
303
303
  const send_events_page = (args) => {
304
304
  const isRoot = db.getTenantSchema() === db.connectObj.default_schema;
305
+ const isUserAdmin = args.req?.user.role_id === 1;
305
306
  return send_settings_page({
306
307
  main_section: "Events",
307
308
  main_section_href: "/events",
308
309
  sub_sections: [
309
310
  { text: "Triggers", href: "/actions" },
310
- { text: "Custom", href: "/eventlog/custom" },
311
- { text: "Settings", href: "/eventlog/settings" },
312
- { text: "Event log", href: "/eventlog" },
311
+ ...(isUserAdmin
312
+ ? [
313
+ { text: "Custom", href: "/eventlog/custom" },
314
+ { text: "Settings", href: "/eventlog/settings" },
315
+ { text: "Event log", href: "/eventlog" },
316
+ ]
317
+ : []),
313
318
  { text: "Workflow runs", href: "/actions/runs" },
314
319
  ...(isRoot ? [{ text: "Crash log", href: "/crashlog" }] : []),
315
320
  ],
package/markup/blockly.js CHANGED
@@ -22,16 +22,16 @@ const db = require("@saltcorn/data/db");
22
22
  */
23
23
  const blocklyImportScripts = ({ locale }) =>
24
24
  script({
25
- src: "/plugins/pubdeps/base/blockly/8.0.5/blockly_compressed.js",
25
+ src: `/static_assets/${db.connectObj.version_tag}/blockly/blockly_compressed.js`,
26
26
  }) +
27
27
  script({
28
- src: "/plugins/pubdeps/base/blockly/8.0.5/blocks_compressed.js",
28
+ src: `/static_assets/${db.connectObj.version_tag}/blockly/blocks_compressed.js`,
29
29
  }) +
30
30
  script({
31
- src: `/plugins/pubdeps/base/blockly/8.0.5/msg/${locale}.js`,
31
+ src: `/static_assets/${db.connectObj.version_tag}/blockly/msg/${locale}.js`,
32
32
  }) +
33
33
  script({
34
- src: "/plugins/pubdeps/base/blockly/8.0.5/javascript_compressed.js",
34
+ src: `/static_assets/${db.connectObj.version_tag}/blockly/javascript_compressed.js`,
35
35
  }) +
36
36
  script({
37
37
  src: `/static_assets/${db.connectObj.version_tag}/blockly.js`,
package/package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "@saltcorn/server",
3
- "version": "1.1.1-beta.5",
3
+ "version": "1.1.1-beta.7",
4
4
  "description": "Server app for Saltcorn, open-source no-code platform",
5
5
  "homepage": "https://saltcorn.com",
6
6
  "main": "index.js",
7
7
  "license": "MIT",
8
8
  "dependencies": {
9
9
  "@aws-sdk/client-s3": "^3.451.0",
10
- "@saltcorn/base-plugin": "1.1.1-beta.5",
11
- "@saltcorn/builder": "1.1.1-beta.5",
12
- "@saltcorn/data": "1.1.1-beta.5",
13
- "@saltcorn/admin-models": "1.1.1-beta.5",
14
- "@saltcorn/filemanager": "1.1.1-beta.5",
15
- "@saltcorn/markup": "1.1.1-beta.5",
16
- "@saltcorn/plugins-loader": "1.1.1-beta.5",
17
- "@saltcorn/sbadmin2": "1.1.1-beta.5",
10
+ "@saltcorn/base-plugin": "1.1.1-beta.7",
11
+ "@saltcorn/builder": "1.1.1-beta.7",
12
+ "@saltcorn/data": "1.1.1-beta.7",
13
+ "@saltcorn/admin-models": "1.1.1-beta.7",
14
+ "@saltcorn/filemanager": "1.1.1-beta.7",
15
+ "@saltcorn/markup": "1.1.1-beta.7",
16
+ "@saltcorn/plugins-loader": "1.1.1-beta.7",
17
+ "@saltcorn/sbadmin2": "1.1.1-beta.7",
18
18
  "@socket.io/cluster-adapter": "^0.2.1",
19
19
  "@socket.io/sticky": "^1.0.1",
20
20
  "adm-zip": "0.5.10",