@saltcorn/data 0.6.3-beta.2 → 0.6.4-beta.2

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 (219) hide show
  1. package/dist/base-plugin/index.d.ts +145 -128
  2. package/dist/base-plugin/index.d.ts.map +1 -1
  3. package/dist/base-plugin/types.d.ts +105 -85
  4. package/dist/base-plugin/types.d.ts.map +1 -1
  5. package/dist/base-plugin/types.js +40 -11
  6. package/dist/base-plugin/types.js.map +1 -1
  7. package/dist/base-plugin/viewtemplates/edit.d.ts +3 -3
  8. package/dist/base-plugin/viewtemplates/edit.d.ts.map +1 -1
  9. package/dist/base-plugin/viewtemplates/edit.js +56 -6
  10. package/dist/base-plugin/viewtemplates/edit.js.map +1 -1
  11. package/dist/base-plugin/viewtemplates/filter.d.ts.map +1 -1
  12. package/dist/base-plugin/viewtemplates/filter.js +13 -0
  13. package/dist/base-plugin/viewtemplates/filter.js.map +1 -1
  14. package/dist/base-plugin/viewtemplates/list.d.ts +1 -1
  15. package/dist/base-plugin/viewtemplates/list.d.ts.map +1 -1
  16. package/dist/base-plugin/viewtemplates/list.js +64 -1
  17. package/dist/base-plugin/viewtemplates/list.js.map +1 -1
  18. package/dist/base-plugin/viewtemplates/show.d.ts.map +1 -1
  19. package/dist/base-plugin/viewtemplates/show.js +11 -8
  20. package/dist/base-plugin/viewtemplates/show.js.map +1 -1
  21. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts +1 -0
  22. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
  23. package/dist/base-plugin/viewtemplates/viewable_fields.js +27 -14
  24. package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
  25. package/dist/contracts.d.ts.map +1 -1
  26. package/dist/contracts.js +11 -3
  27. package/dist/contracts.js.map +1 -1
  28. package/dist/db/connect.d.ts.map +1 -1
  29. package/dist/db/connect.js +9 -2
  30. package/dist/db/connect.js.map +1 -1
  31. package/dist/db/reset_schema.d.ts.map +1 -1
  32. package/dist/db/reset_schema.js +21 -19
  33. package/dist/db/reset_schema.js.map +1 -1
  34. package/dist/db/state.d.ts +9 -10
  35. package/dist/db/state.d.ts.map +1 -1
  36. package/dist/db/state.js +14 -29
  37. package/dist/db/state.js.map +1 -1
  38. package/dist/models/backup.d.ts +1 -1
  39. package/dist/models/backup.d.ts.map +1 -1
  40. package/dist/models/backup.js +2 -0
  41. package/dist/models/backup.js.map +1 -1
  42. package/dist/models/config.d.ts +39 -179
  43. package/dist/models/config.d.ts.map +1 -1
  44. package/dist/models/config.js +79 -52
  45. package/dist/models/config.js.map +1 -1
  46. package/dist/models/crash.d.ts +40 -47
  47. package/dist/models/crash.d.ts.map +1 -1
  48. package/dist/models/crash.js +40 -39
  49. package/dist/models/crash.js.map +1 -1
  50. package/dist/models/discovery.d.ts +17 -25
  51. package/dist/models/discovery.d.ts.map +1 -1
  52. package/dist/models/discovery.js +38 -26
  53. package/dist/models/discovery.js.map +1 -1
  54. package/dist/models/email.d.ts +11 -13
  55. package/dist/models/email.d.ts.map +1 -1
  56. package/dist/models/email.js +19 -15
  57. package/dist/models/email.js.map +1 -1
  58. package/dist/models/eventlog.d.ts +1 -1
  59. package/dist/models/eventlog.d.ts.map +1 -1
  60. package/dist/models/eventlog.js.map +1 -1
  61. package/dist/models/expression.d.ts +39 -31
  62. package/dist/models/expression.d.ts.map +1 -1
  63. package/dist/models/expression.js +44 -29
  64. package/dist/models/expression.js.map +1 -1
  65. package/dist/models/field.d.ts +12 -47
  66. package/dist/models/field.d.ts.map +1 -1
  67. package/dist/models/field.js +3 -3
  68. package/dist/models/field.js.map +1 -1
  69. package/dist/models/fieldrepeat.d.ts +3 -0
  70. package/dist/models/fieldrepeat.d.ts.map +1 -1
  71. package/dist/models/fieldrepeat.js +2 -0
  72. package/dist/models/fieldrepeat.js.map +1 -1
  73. package/dist/models/file.d.ts +56 -58
  74. package/dist/models/file.d.ts.map +1 -1
  75. package/dist/models/file.js +25 -52
  76. package/dist/models/file.js.map +1 -1
  77. package/dist/models/index.d.ts +39 -0
  78. package/dist/models/index.d.ts.map +1 -1
  79. package/dist/models/index.js.map +1 -1
  80. package/dist/models/layout.d.ts +16 -31
  81. package/dist/models/layout.d.ts.map +1 -1
  82. package/dist/models/layout.js +2 -4
  83. package/dist/models/layout.js.map +1 -1
  84. package/dist/models/library.d.ts +2 -10
  85. package/dist/models/library.d.ts.map +1 -1
  86. package/dist/models/library.js.map +1 -1
  87. package/dist/models/pack.d.ts +40 -87
  88. package/dist/models/pack.d.ts.map +1 -1
  89. package/dist/models/pack.js +118 -89
  90. package/dist/models/pack.js.map +1 -1
  91. package/dist/models/page.d.ts +22 -47
  92. package/dist/models/page.d.ts.map +1 -1
  93. package/dist/models/page.js +19 -41
  94. package/dist/models/page.js.map +1 -1
  95. package/dist/models/plugin.d.ts +41 -65
  96. package/dist/models/plugin.d.ts.map +1 -1
  97. package/dist/models/plugin.js +19 -41
  98. package/dist/models/plugin.js.map +1 -1
  99. package/dist/models/random.d.ts +18 -21
  100. package/dist/models/random.d.ts.map +1 -1
  101. package/dist/models/random.js +31 -29
  102. package/dist/models/random.js.map +1 -1
  103. package/dist/models/role.d.ts +3 -9
  104. package/dist/models/role.d.ts.map +1 -1
  105. package/dist/models/role.js.map +1 -1
  106. package/dist/models/scheduler.d.ts +2 -8
  107. package/dist/models/scheduler.d.ts.map +1 -1
  108. package/dist/models/scheduler.js +18 -16
  109. package/dist/models/scheduler.js.map +1 -1
  110. package/dist/models/table.d.ts +12 -23
  111. package/dist/models/table.d.ts.map +1 -1
  112. package/dist/models/table.js +46 -23
  113. package/dist/models/table.js.map +1 -1
  114. package/dist/models/table_constraints.d.ts +44 -39
  115. package/dist/models/table_constraints.d.ts.map +1 -1
  116. package/dist/models/table_constraints.js +17 -33
  117. package/dist/models/table_constraints.js.map +1 -1
  118. package/dist/models/tenant.d.ts +16 -60
  119. package/dist/models/tenant.d.ts.map +1 -1
  120. package/dist/models/tenant.js +52 -30
  121. package/dist/models/tenant.js.map +1 -1
  122. package/dist/models/trigger.d.ts +2 -17
  123. package/dist/models/trigger.d.ts.map +1 -1
  124. package/dist/models/trigger.js +2 -2
  125. package/dist/models/trigger.js.map +1 -1
  126. package/dist/models/user.d.ts +110 -142
  127. package/dist/models/user.d.ts.map +1 -1
  128. package/dist/models/user.js +51 -71
  129. package/dist/models/user.js.map +1 -1
  130. package/dist/models/view.d.ts +7 -21
  131. package/dist/models/view.d.ts.map +1 -1
  132. package/dist/models/view.js +1 -1
  133. package/dist/models/view.js.map +1 -1
  134. package/dist/models/workflow.d.ts +4 -4
  135. package/dist/models/workflow.d.ts.map +1 -1
  136. package/dist/models/workflow.js.map +1 -1
  137. package/dist/plugin-helper.d.ts.map +1 -1
  138. package/dist/plugin-helper.js +58 -26
  139. package/dist/plugin-helper.js.map +1 -1
  140. package/dist/tests/actions.test.d.ts.map +1 -1
  141. package/dist/tests/actions.test.js +102 -82
  142. package/dist/tests/actions.test.js.map +1 -1
  143. package/dist/tests/assertions.d.ts +13 -0
  144. package/dist/tests/assertions.d.ts.map +1 -0
  145. package/dist/tests/assertions.js +35 -0
  146. package/dist/tests/assertions.js.map +1 -0
  147. package/dist/tests/auxtest.test.d.ts.map +1 -1
  148. package/dist/tests/auxtest.test.js +33 -29
  149. package/dist/tests/auxtest.test.js.map +1 -1
  150. package/dist/tests/backup.test.d.ts.map +1 -1
  151. package/dist/tests/backup.test.js +62 -49
  152. package/dist/tests/backup.test.js.map +1 -1
  153. package/dist/tests/calc.test.d.ts.map +1 -1
  154. package/dist/tests/calc.test.js +106 -88
  155. package/dist/tests/calc.test.js.map +1 -1
  156. package/dist/tests/config.test.d.ts.map +1 -1
  157. package/dist/tests/config.test.js +39 -36
  158. package/dist/tests/config.test.js.map +1 -1
  159. package/dist/tests/discover.test.d.ts.map +1 -1
  160. package/dist/tests/discover.test.js +23 -17
  161. package/dist/tests/discover.test.js.map +1 -1
  162. package/dist/tests/exact_views.test.d.ts.map +1 -1
  163. package/dist/tests/exact_views.test.js +66 -25
  164. package/dist/tests/exact_views.test.js.map +1 -1
  165. package/dist/tests/field.test.d.ts.map +1 -1
  166. package/dist/tests/field.test.js +104 -93
  167. package/dist/tests/field.test.js.map +1 -1
  168. package/dist/tests/form.test.d.ts.map +1 -1
  169. package/dist/tests/form.test.js +71 -63
  170. package/dist/tests/form.test.js.map +1 -1
  171. package/dist/tests/mocks.d.ts +101 -105
  172. package/dist/tests/mocks.d.ts.map +1 -1
  173. package/dist/tests/mocks.js +19 -14
  174. package/dist/tests/mocks.js.map +1 -1
  175. package/dist/tests/models.test.d.ts.map +1 -1
  176. package/dist/tests/models.test.js +95 -80
  177. package/dist/tests/models.test.js.map +1 -1
  178. package/dist/tests/pack.test.d.ts.map +1 -1
  179. package/dist/tests/pack.test.js +54 -47
  180. package/dist/tests/pack.test.js.map +1 -1
  181. package/dist/tests/plugin.test.d.ts.map +1 -1
  182. package/dist/tests/plugin.test.js +31 -24
  183. package/dist/tests/plugin.test.js.map +1 -1
  184. package/dist/tests/random.test.d.ts.map +1 -1
  185. package/dist/tests/random.test.js +61 -50
  186. package/dist/tests/random.test.js.map +1 -1
  187. package/dist/tests/table.test.d.ts.map +1 -1
  188. package/dist/tests/table.test.js +557 -436
  189. package/dist/tests/table.test.js.map +1 -1
  190. package/dist/tests/tenant.test.d.ts.map +1 -1
  191. package/dist/tests/tenant.test.js +30 -23
  192. package/dist/tests/tenant.test.js.map +1 -1
  193. package/dist/tests/user.test.d.ts.map +1 -1
  194. package/dist/tests/user.test.js +128 -100
  195. package/dist/tests/user.test.js.map +1 -1
  196. package/dist/tests/view.test.d.ts.map +1 -1
  197. package/dist/tests/view.test.js +109 -85
  198. package/dist/tests/view.test.js.map +1 -1
  199. package/dist/tests/workflow.test.d.ts.map +1 -1
  200. package/dist/tests/workflow.test.js +40 -29
  201. package/dist/tests/workflow.test.js.map +1 -1
  202. package/dist/tsconfig.ref.tsbuildinfo +1 -1
  203. package/dist/utils.d.ts +29 -20
  204. package/dist/utils.d.ts.map +1 -1
  205. package/dist/utils.js +20 -5
  206. package/dist/utils.js.map +1 -1
  207. package/package.json +21 -11
  208. package/dist/coverage/lcov-report/block-navigation.d.ts +0 -2
  209. package/dist/coverage/lcov-report/block-navigation.d.ts.map +0 -1
  210. package/dist/coverage/lcov-report/block-navigation.js +0 -66
  211. package/dist/coverage/lcov-report/block-navigation.js.map +0 -1
  212. package/dist/coverage/lcov-report/prettify.d.ts +0 -1
  213. package/dist/coverage/lcov-report/prettify.d.ts.map +0 -1
  214. package/dist/coverage/lcov-report/prettify.js +0 -478
  215. package/dist/coverage/lcov-report/prettify.js.map +0 -1
  216. package/dist/coverage/lcov-report/sorter.d.ts +0 -2
  217. package/dist/coverage/lcov-report/sorter.d.ts.map +0 -1
  218. package/dist/coverage/lcov-report/sorter.js +0 -141
  219. package/dist/coverage/lcov-report/sorter.js.map +0 -1
@@ -1,50 +1,49 @@
1
- export = Page;
1
+ import type { Layout, RunExtra } from "@saltcorn/types/base_types";
2
+ import { Row, SelectOptions, Where } from "@saltcorn/db-common/internal";
3
+ import type { PageCfg, PagePack } from "@saltcorn/types/model-abstracts/abstract_page";
2
4
  /**
3
5
  * Page Class
4
6
  * @category saltcorn-data
5
7
  */
6
8
  declare class Page {
9
+ name: string;
10
+ title: string;
11
+ description: string;
12
+ id?: number;
13
+ min_role: number;
14
+ layout: Layout;
15
+ fixed_states: any;
16
+ /**
17
+ * @param {object} o
18
+ */
19
+ constructor(o: PageCfg | PagePack | Page);
7
20
  /**
8
21
  * Find pages in DB
9
22
  * @param where
10
23
  * @param selectopts
11
24
  * @returns {Promise<*>}
12
25
  */
13
- static find(where: any, selectopts?: {
14
- orderBy: string;
15
- nocase: boolean;
16
- }): Promise<any>;
26
+ static find(where?: Where, selectopts?: SelectOptions): Promise<Array<Page>>;
17
27
  /**
18
28
  * Find one page
19
29
  * @param where
20
30
  * @returns {Promise<Page|*>}
21
31
  */
22
- static findOne(where: any): Promise<Page | any>;
32
+ static findOne(where: Where): Promise<Page>;
23
33
  /**
24
34
  * Update page
25
35
  * @param id
26
36
  * @param row
27
37
  * @returns {Promise<void>}
28
38
  */
29
- static update(id: any, row: any): Promise<void>;
39
+ static update(id: number, row: Row): Promise<void>;
40
+ getStringsForI18n(): any;
30
41
  /**
31
42
  * Create page
32
43
  * @param f
33
44
  * @returns {Promise<Page>}
34
45
  */
35
- static create(f: any): Promise<Page>;
36
- /**
37
- * @param {object} o
38
- */
39
- constructor(o: object);
40
- name: any;
41
- title: any;
42
- description: any;
43
- min_role: number;
44
- id: any;
45
- layout: any;
46
- fixed_states: any;
47
- getStringsForI18n(): string[];
46
+ static create(f: PageCfg | PagePack): Promise<Page>;
48
47
  /**
49
48
  * Delete current page
50
49
  * @returns {Promise<void>}
@@ -54,7 +53,7 @@ declare class Page {
54
53
  * Is root page for role
55
54
  * @returns {Promise<*>}
56
55
  */
57
- is_root_page_for_roles(): Promise<any>;
56
+ is_root_page_for_roles(): Promise<Array<string>>;
58
57
  /**
59
58
  * get menu label for page
60
59
  * @type {string|undefined}
@@ -71,31 +70,7 @@ declare class Page {
71
70
  * @param extraArgs
72
71
  * @returns {Promise<any>}
73
72
  */
74
- run(querystate: any, extraArgs: any): Promise<any>;
75
- }
76
- declare namespace Page {
77
- const contract: {
78
- variables: {
79
- min_role: ((() => any) | any);
80
- layout: ((() => any) | any);
81
- name: ((() => any) | any);
82
- fixed_states: ((() => any) | any);
83
- description: ((() => any) | any);
84
- id: ((() => any) | any);
85
- title: ((() => any) | any);
86
- };
87
- methods: {
88
- run: ((() => any) | any);
89
- delete: ((() => any) | any);
90
- is_root_page_for_roles: ((() => any) | any);
91
- menu_label: ((() => any) | any);
92
- };
93
- static_methods: {
94
- find: ((() => any) | any);
95
- findOne: ((() => any) | any);
96
- create: ((() => any) | any);
97
- update: ((() => any) | any);
98
- };
99
- };
73
+ run(querystate: any, extraArgs: RunExtra): Promise<Layout>;
100
74
  }
75
+ export = Page;
101
76
  //# sourceMappingURL=page.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../models/page.js"],"names":[],"mappings":";AA4BA;;;GAGG;AACH;IAmBE;;;;;OAKG;IACH;;;QAFa,YAAU,CAStB;IAED;;;;OAIG;IACH,4BAFa,QAAQ,IAAI,MAAE,CAAC,CAkB3B;IAED;;;;;OAKG;IACH,kCAFa,QAAQ,IAAI,CAAC,CAKzB;IAID;;;;OAIG;IACH,uBAFa,QAAQ,IAAI,CAAC,CAUzB;IAlFD;;OAEG;IACH,eAFW,MAAM,EAehB;IAZC,UAAkB;IAClB,WAAoB;IACpB,iBAAgC;IAChC,iBAA2B;IAC3B,QAAc;IACd,YACgE;IAChE,kBAG0B;IAoD5B,8BAEC;IAgBD;;;OAGG;IACH,UAFa,QAAQ,IAAI,CAAC,CAWzB;IAED;;;OAGG;IACH,0BAFa,YAAU,CAUtB;IAED;;;OAGG;IACH,qCAKC;IAED;;;OAGG;IACH,SAFa,QAAQ,IAAI,CAAC,CAgBzB;IAED;;;;;OAKG;IACH,sCAFa,QAAQ,GAAG,CAAC,CAmCxB;CACF;;oBAIS;QAAC,SAAS,EAAE;YAAC,QAAQ,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,MAAM,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,IAAI,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,YAAY,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,WAAW,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,EAAE,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,KAAK,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAA;SAAC,CAAC;QAAC,OAAO,EAAE;YAAC,GAAG,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,MAAM,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,sBAAsB,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,UAAU,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAA;SAAC,CAAC;QAAC,cAAc,EAAE;YAAC,IAAI,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,OAAO,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,MAAM,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAC;YAAC,MAAM,EAAE,CAAC,WAAiB,MAAE,CAAC,CAAA;SAAC,CAAA;KAAC"}
1
+ {"version":3,"file":"page.d.ts","sourceRoot":"","sources":["../../models/page.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,KAAK,EACV,OAAO,EACP,QAAQ,EACT,MAAM,+CAA+C,CAAC;AAavD;;;GAGG;AACH,cAAM,IAAI;IACR,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,GAAG,CAAC;IAElB;;OAEG;gBACS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI;IAcxC;;;;;OAKG;WACU,IAAI,CACf,KAAK,CAAC,EAAE,KAAK,EACb,UAAU,GAAE,aAAiD,GAC5D,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IASvB;;;;OAIG;WACU,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBjD;;;;;OAKG;WACU,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,iBAAiB;IAGjB;;;;OAIG;WACU,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzD;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAW7B;;;OAGG;IACG,sBAAsB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAYtD;;;OAGG;IACH,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAKnC;IAED;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B;;;;;OAKG;IACG,GAAG,CAAC,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;CAqCjE;AAED,SAAS,IAAI,CAAC"}
@@ -1,17 +1,21 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  /**
3
6
  * Page Database Access Layer
4
7
  * @category saltcorn-data
5
8
  * @module models/page
6
9
  * @subcategory models
7
10
  */
8
- const db = require("../db");
9
- const { contract, is } = require("contractis");
10
- const View = require("./view");
11
- const Table = require("./table");
11
+ const db_1 = __importDefault(require("../db"));
12
+ const view_1 = __importDefault(require("./view"));
13
+ const table_1 = __importDefault(require("./table"));
12
14
  const { eachView, traverseSync, getStringsForI18n, translateLayout, } = require("./layout");
13
- const { div } = require("@saltcorn/markup/tags");
14
- const { remove_from_menu } = require("./config");
15
+ const tags_1 = __importDefault(require("@saltcorn/markup/tags"));
16
+ const { div } = tags_1.default;
17
+ const config_1 = __importDefault(require("./config"));
18
+ const { remove_from_menu } = config_1.default;
15
19
  const { action_link, fill_presets, } = require("../base-plugin/viewtemplates/viewable_fields");
16
20
  const { InvalidConfiguration, satisfies, structuredClone, } = require("../utils");
17
21
  /**
@@ -34,7 +38,6 @@ class Page {
34
38
  typeof o.fixed_states === "string"
35
39
  ? JSON.parse(o.fixed_states)
36
40
  : o.fixed_states || {};
37
- contract.class(this);
38
41
  }
39
42
  /**
40
43
  * Find pages in DB
@@ -47,7 +50,7 @@ class Page {
47
50
  const { getState } = require("../db/state");
48
51
  return getState().pages.map((t) => new Page(t));
49
52
  }
50
- const db_flds = await db.select("_sc_pages", where, selectopts);
53
+ const db_flds = await db_1.default.select("_sc_pages", where, selectopts);
51
54
  return db_flds.map((dbf) => new Page(dbf));
52
55
  }
53
56
  /**
@@ -77,7 +80,7 @@ class Page {
77
80
  * @returns {Promise<void>}
78
81
  */
79
82
  static async update(id, row) {
80
- await db.update("_sc_pages", row, id);
83
+ await db_1.default.update("_sc_pages", row, id);
81
84
  await require("../db/state").getState().refresh_pages();
82
85
  }
83
86
  getStringsForI18n() {
@@ -91,7 +94,7 @@ class Page {
91
94
  static async create(f) {
92
95
  const page = new Page(f);
93
96
  const { id, ...rest } = page;
94
- const fid = await db.insert("_sc_pages", rest);
97
+ const fid = await db_1.default.insert("_sc_pages", rest);
95
98
  page.id = fid;
96
99
  await require("../db/state").getState().refresh_pages();
97
100
  return page;
@@ -101,7 +104,7 @@ class Page {
101
104
  * @returns {Promise<void>}
102
105
  */
103
106
  async delete() {
104
- await db.deleteWhere("_sc_pages", { id: this.id });
107
+ await db_1.default.deleteWhere("_sc_pages", { id: this.id });
105
108
  const root_page_for_roles = await this.is_root_page_for_roles();
106
109
  for (const role of root_page_for_roles) {
107
110
  const { getState } = require("../db/state");
@@ -160,7 +163,7 @@ class Page {
160
163
  */
161
164
  async run(querystate, extraArgs) {
162
165
  await eachView(this.layout, async (segment) => {
163
- const view = await View.findOne({ name: segment.view });
166
+ const view = await view_1.default.findOne({ name: segment.view });
164
167
  if (!view) {
165
168
  throw new InvalidConfiguration(`Page ${this.name} configuration error in embedded view: ` +
166
169
  (segment.view
@@ -172,7 +175,7 @@ class Page {
172
175
  segment.contents = await view.run(mystate, extraArgs);
173
176
  }
174
177
  else {
175
- const table = Table.findOne({ id: view.table_id });
178
+ const table = table_1.default.findOne({ id: view.table_id });
176
179
  const state = segment.configuration || this.fixed_states[segment.name];
177
180
  const filled = await fill_presets(table, extraArgs.req, state);
178
181
  const mystate = view.combine_state_and_default_state(filled || {});
@@ -182,7 +185,9 @@ class Page {
182
185
  const pagename = this.name;
183
186
  traverseSync(this.layout, {
184
187
  action(segment) {
185
- const url = `javascript:ajax_post_json('/page/${pagename}/action/${segment.rndid}')`;
188
+ const url = segment.action_name === "GoBack"
189
+ ? `javascript:history.back()`
190
+ : `javascript:ajax_post_json('/page/${pagename}/action/${segment.rndid}')`;
186
191
  const html = action_link(url, extraArgs.req, segment);
187
192
  segment.type = "blank";
188
193
  segment.contents = html;
@@ -192,32 +197,5 @@ class Page {
192
197
  return this.layout;
193
198
  }
194
199
  }
195
- /**
196
- * Page contract
197
- * @type {{variables: {min_role: ((function(*=): *)|*), layout: ((function(*=): *)|*), name: ((function(*=): *)|*), fixed_states: ((function(*=): *)|*), description: ((function(*=): *)|*), id: ((function(*=): *)|*), title: ((function(*=): *)|*)}, methods: {run: ((function(*=): *)|*), delete: ((function(*=): *)|*), is_root_page_for_roles: ((function(*=): *)|*), menu_label: ((function(*=): *)|*)}, static_methods: {find: ((function(*=): *)|*), findOne: ((function(*=): *)|*), create: ((function(*=): *)|*), update: ((function(*=): *)|*)}}}
198
- */
199
- Page.contract = {
200
- variables: {
201
- name: is.str,
202
- title: is.str,
203
- description: is.str,
204
- id: is.maybe(is.posint),
205
- min_role: is.posint,
206
- layout: is.obj(),
207
- fixed_states: is.obj(),
208
- },
209
- methods: {
210
- delete: is.fun([], is.promise(is.undefined)),
211
- menu_label: is.getter(is.maybe(is.str)),
212
- run: is.fun([is.obj(), is.obj({ req: is.obj(), res: is.obj() })], is.promise(is.any)),
213
- is_root_page_for_roles: is.fun([], is.promise(is.array(is.str))),
214
- },
215
- static_methods: {
216
- find: is.fun([is.maybe(is.obj()), is.maybe(is.obj())], is.promise(is.array(is.class("Page")))),
217
- create: is.fun(is.obj(), is.promise(is.class("Page"))),
218
- findOne: is.fun(is.obj(), is.promise(is.maybe(is.class("Page")))),
219
- update: is.fun([is.posint, is.obj()], is.promise(is.undefined)),
220
- },
221
- };
222
200
  module.exports = Page;
223
201
  //# sourceMappingURL=page.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../models/page.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../models/page.ts"],"names":[],"mappings":"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"}
@@ -1,53 +1,39 @@
1
- export = Plugin;
1
+ import { Where } from "@saltcorn/db-common/internal";
2
+ import { PluginSourceType } from "@saltcorn/types/base_types";
3
+ import type { PluginCfg, PluginPack } from "@saltcorn/types/model-abstracts/abstract_plugin";
2
4
  /**
3
5
  * Plugin Class
4
6
  * @category saltcorn-data
5
7
  */
6
8
  declare class Plugin {
9
+ id?: number;
10
+ location: string;
11
+ name: string;
12
+ version?: string | number;
13
+ documentation_link?: string;
14
+ configuration?: any;
15
+ source: PluginSourceType;
16
+ description?: string;
17
+ has_theme?: boolean;
18
+ has_auth?: boolean;
19
+ deploy_private_key?: string;
20
+ /**
21
+ * Plugin constructor
22
+ * @param {object} o
23
+ */
24
+ constructor(o: PluginCfg | PluginPack | Plugin);
7
25
  /**
8
26
  * Find one plugin
9
27
  * @param where - where object
10
28
  * @returns {Promise<Plugin|null|*>} return existing plugin or new plugin
11
29
  */
12
- static findOne(where: any): Promise<Plugin | null | any>;
30
+ static findOne(where: Where): Promise<Plugin | null>;
13
31
  /**
14
32
  * Find plugins
15
33
  * @param where - where object
16
34
  * @returns {Promise<*>} returns plugins list
17
35
  */
18
- static find(where: any): Promise<any>;
19
- /**
20
- * List plugins availabe in store
21
- * @returns {Promise<*>}
22
- */
23
- static store_plugins_available(): Promise<any>;
24
- /**
25
- *
26
- * @returns {Promise<*>}
27
- */
28
- static store_plugins_available_from_store(): Promise<any>;
29
- /**
30
- *
31
- * @param name
32
- * @returns {Promise<null|Plugin>}
33
- */
34
- static store_by_name(name: any): Promise<null | Plugin>;
35
- /**
36
- * Plugin constructor
37
- * @param {object} o
38
- */
39
- constructor(o: object);
40
- id: any;
41
- name: any;
42
- source: any;
43
- location: any;
44
- version: any;
45
- description: any;
46
- documentation_link: any;
47
- has_theme: any;
48
- has_auth: any;
49
- deploy_private_key: any;
50
- configuration: any;
36
+ static find(where?: Where): Promise<Array<Plugin>>;
51
37
  /**
52
38
  * Update or Insert plugin
53
39
  * @returns {Promise<void>}
@@ -63,38 +49,28 @@ declare class Plugin {
63
49
  * @param requirePlugin
64
50
  * @returns {Promise<void>}
65
51
  */
66
- upgrade_version(requirePlugin: any): Promise<void>;
52
+ upgrade_version(requirePlugin: (arg0: Plugin, arg1: boolean) => Plugin): Promise<void>;
67
53
  /**
68
54
  * List of views relay on this plugin
69
- * @returns {Promise<View[]>}
55
+ * @returns {Promise<string[]>}
70
56
  */
71
- dependant_views(): Promise<View[]>;
72
- }
73
- declare namespace Plugin {
74
- namespace contract {
75
- namespace variables {
76
- const id: any;
77
- const location: any;
78
- const name: any;
79
- const version: any;
80
- const documentation_link: any;
81
- const configuration: any;
82
- const source: any;
83
- }
84
- namespace methods {
85
- export const upsert: any;
86
- const _delete: any;
87
- export { _delete as delete };
88
- export const dependant_views: any;
89
- }
90
- namespace static_methods {
91
- const find: any;
92
- const findOne: any;
93
- const store_by_name: any;
94
- const store_plugins_available_from_store: any;
95
- const store_plugins_available: any;
96
- }
97
- }
57
+ dependant_views(): Promise<string[]>;
58
+ /**
59
+ * List plugins availabe in store
60
+ * @returns {Promise<*>}
61
+ */
62
+ static store_plugins_available(): Promise<Array<Plugin>>;
63
+ /**
64
+ *
65
+ * @returns {Promise<*>}
66
+ */
67
+ static store_plugins_available_from_store(): Promise<Array<Plugin>>;
68
+ /**
69
+ *
70
+ * @param name
71
+ * @returns {Promise<null|Plugin>}
72
+ */
73
+ static store_by_name(name: string): Promise<Plugin | null>;
98
74
  }
99
- import View = require("./view");
75
+ export = Plugin;
100
76
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../models/plugin.js"],"names":[],"mappings":";AAaA;;;GAGG;AACH;IAoBE;;;;OAIG;IACH,4BAFa,QAAQ,MAAM,GAAC,IAAI,MAAE,CAAC,CAKlC;IAED;;;;OAIG;IACH,yBAFa,YAAU,CAItB;IAuED;;;OAGG;IACH,kCAFa,YAAU,CA6BtB;IAED;;;OAGG;IACH,6CAFa,YAAU,CAQtB;IAED;;;;OAIG;IACH,iCAFa,QAAQ,IAAI,GAAC,MAAM,CAAC,CAYhC;IAvKD;;;OAGG;IACH,eAFW,MAAM,EAehB;IAZC,QAA6B;IAC7B,UAAkB;IAClB,YAAsB;IACtB,cAA0B;IAC1B,aAAwB;IACxB,iBAAgC;IAChC,wBAA8C;IAC9C,eAA4B;IAC5B,cAA0B;IAC1B,wBAA8C;IAC9C,mBAAkD;IAuBpD;;;OAGG;IACH,UAFa,QAAQ,IAAI,CAAC,CAiBzB;IAED;;;OAGG;IACH,UAFa,QAAQ,IAAI,CAAC,CAMzB;IAED;;;;OAIG;IACH,qCAFa,QAAQ,IAAI,CAAC,CAczB;IAED;;;OAGG;IACH,mBAFa,QAAQ,IAAI,EAAE,CAAC,CAe3B;CA+DF"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../models/plugin.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrD,OAAO,EAAgB,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACX,MAAM,iDAAiD,CAAC;AAIzD;;;GAGG;AACH,cAAM,MAAM;IACV,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,MAAM,EAAE,gBAAgB,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;gBACS,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM;IAc9C;;;;OAIG;WACU,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK1D;;;;OAIG;WACU,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAMxD;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB7B;;;OAGG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAM7B;;;;OAIG;IACG,eAAe,CACnB,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,MAAM,GACrD,OAAO,CAAC,IAAI,CAAC;IAchB;;;OAGG;IACG,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAiB1C;;;OAGG;WACU,uBAAuB,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IA6B9D;;;OAGG;WACU,kCAAkC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAQzE;;;;OAIG;WACU,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAWjE;AAED,SAAS,MAAM,CAAC"}
@@ -1,15 +1,17 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  /**
3
6
  * Plugin Database Access Layer
4
7
  * @category saltcorn-data
5
8
  * @module models/plugin
6
9
  * @subcategory models
7
10
  */
8
- const db = require("../db");
9
- const { contract, is } = require("contractis");
10
- const View = require("./view");
11
- const { is_stale } = require("./pack");
12
- const fetch = require("node-fetch");
11
+ const db_1 = __importDefault(require("../db"));
12
+ const view_1 = __importDefault(require("./view"));
13
+ const { isStale } = require("../utils");
14
+ const node_fetch_1 = __importDefault(require("node-fetch"));
13
15
  const { stringToJSON } = require("../utils");
14
16
  /**
15
17
  * Plugin Class
@@ -21,7 +23,7 @@ class Plugin {
21
23
  * @param {object} o
22
24
  */
23
25
  constructor(o) {
24
- this.id = o.id ? +o.id : o.id;
26
+ this.id = o.id ? +o.id : undefined;
25
27
  this.name = o.name;
26
28
  this.source = o.source;
27
29
  this.location = o.location;
@@ -32,7 +34,6 @@ class Plugin {
32
34
  this.has_auth = o.has_auth;
33
35
  this.deploy_private_key = o.deploy_private_key;
34
36
  this.configuration = stringToJSON(o.configuration);
35
- contract.class(this);
36
37
  }
37
38
  /**
38
39
  * Find one plugin
@@ -40,7 +41,7 @@ class Plugin {
40
41
  * @returns {Promise<Plugin|null|*>} return existing plugin or new plugin
41
42
  */
42
43
  static async findOne(where) {
43
- const p = await db.selectMaybeOne("_sc_plugins", where);
44
+ const p = await db_1.default.selectMaybeOne("_sc_plugins", where);
44
45
  return p ? new Plugin(p) : p;
45
46
  }
46
47
  /**
@@ -49,7 +50,7 @@ class Plugin {
49
50
  * @returns {Promise<*>} returns plugins list
50
51
  */
51
52
  static async find(where) {
52
- return (await db.select("_sc_plugins", where)).map((p) => new Plugin(p));
53
+ return (await db_1.default.select("_sc_plugins", where)).map((p) => new Plugin(p));
53
54
  }
54
55
  /**
55
56
  * Update or Insert plugin
@@ -66,10 +67,10 @@ class Plugin {
66
67
  };
67
68
  if (typeof this.id === "undefined") {
68
69
  // insert
69
- await db.insert("_sc_plugins", row);
70
+ await db_1.default.insert("_sc_plugins", row);
70
71
  }
71
72
  else {
72
- await db.update("_sc_plugins", row, this.id);
73
+ await db_1.default.update("_sc_plugins", row, this.id);
73
74
  }
74
75
  }
75
76
  /**
@@ -77,7 +78,7 @@ class Plugin {
77
78
  * @returns {Promise<void>}
78
79
  */
79
80
  async delete() {
80
- await db.deleteWhere("_sc_plugins", { id: this.id });
81
+ await db_1.default.deleteWhere("_sc_plugins", { id: this.id });
81
82
  const { getState } = require("../db/state");
82
83
  await getState().remove_plugin(this.name);
83
84
  }
@@ -102,10 +103,10 @@ class Plugin {
102
103
  }
103
104
  /**
104
105
  * List of views relay on this plugin
105
- * @returns {Promise<View[]>}
106
+ * @returns {Promise<string[]>}
106
107
  */
107
108
  async dependant_views() {
108
- const views = await View.find({});
109
+ const views = await view_1.default.find({});
109
110
  const { getState } = require("../db/state");
110
111
  if (!getState().plugins[this.name])
111
112
  return [];
@@ -127,8 +128,8 @@ class Plugin {
127
128
  const { getState } = require("../db/state");
128
129
  const stored = getState().getConfig("available_plugins", false);
129
130
  const stored_at = getState().getConfig("available_plugins_fetched_at", false);
130
- const isRoot = db.getTenantSchema() === db.connectObj.default_schema;
131
- if (!stored || !stored_at || is_stale(stored_at)) {
131
+ const isRoot = db_1.default.getTenantSchema() === db_1.default.connectObj.default_schema;
132
+ if (!stored || !stored_at || isStale(stored_at)) {
132
133
  try {
133
134
  const from_api = await Plugin.store_plugins_available_from_store();
134
135
  await getState().setConfig("available_plugins", from_api);
@@ -157,7 +158,7 @@ class Plugin {
157
158
  static async store_plugins_available_from_store() {
158
159
  //console.log("fetch plugins");
159
160
  // TODO support of other store URLs
160
- const response = await fetch("http://store.saltcorn.com/api/extensions");
161
+ const response = await (0, node_fetch_1.default)("http://store.saltcorn.com/api/extensions");
161
162
  const json = await response.json();
162
163
  return json.success.map((p) => new Plugin(p));
163
164
  }
@@ -168,7 +169,7 @@ class Plugin {
168
169
  */
169
170
  static async store_by_name(name) {
170
171
  // TODO support of other store URLs
171
- const response = await fetch("http://store.saltcorn.com/api/extensions?name=" +
172
+ const response = await (0, node_fetch_1.default)("http://store.saltcorn.com/api/extensions?name=" +
172
173
  encodeURIComponent(name));
173
174
  const json = await response.json();
174
175
  if (json.success.length == 1)
@@ -177,28 +178,5 @@ class Plugin {
177
178
  return null;
178
179
  }
179
180
  }
180
- Plugin.contract = {
181
- variables: {
182
- id: is.maybe(is.posint),
183
- location: is.str,
184
- name: is.str,
185
- version: is.maybe(is.str),
186
- documentation_link: is.maybe(is.str),
187
- configuration: is.maybe(is.obj()),
188
- source: is.one_of(["npm", "github", "local", "git"]),
189
- },
190
- methods: {
191
- upsert: is.fun([], is.promise(is.eq(undefined))),
192
- delete: is.fun([], is.promise(is.eq(undefined))),
193
- dependant_views: is.fun([], is.promise(is.array(is.str))),
194
- },
195
- static_methods: {
196
- find: is.fun(is.maybe(is.obj()), is.promise(is.array(is.class("Plugin")))),
197
- findOne: is.fun(is.obj(), is.promise(is.maybe(is.class("Plugin")))),
198
- store_by_name: is.fun(is.str, is.promise(is.maybe(is.class("Plugin")))),
199
- store_plugins_available_from_store: is.fun([], is.promise(is.array(is.class("Plugin")))),
200
- store_plugins_available: is.fun([], is.promise(is.array(is.class("Plugin")))),
201
- },
202
- };
203
181
  module.exports = Plugin;
204
182
  //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../models/plugin.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../models/plugin.ts"],"names":[],"mappings":"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"}