@saltcorn/data 0.7.2-beta.0 → 0.7.2-beta.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 (216) hide show
  1. package/dist/app-locales/en.json +6 -0
  2. package/dist/app-locales/public/da.json +3 -0
  3. package/dist/app-locales/public/tlh.json +3 -0
  4. package/dist/base-plugin/actions.d.ts.map +1 -1
  5. package/dist/base-plugin/actions.js +4 -1
  6. package/dist/base-plugin/actions.js.map +1 -1
  7. package/dist/base-plugin/fieldviews.d.ts +24 -0
  8. package/dist/base-plugin/fieldviews.d.ts.map +1 -1
  9. package/dist/base-plugin/fieldviews.js +57 -5
  10. package/dist/base-plugin/fieldviews.js.map +1 -1
  11. package/dist/base-plugin/index.d.ts +292 -75
  12. package/dist/base-plugin/index.d.ts.map +1 -1
  13. package/dist/base-plugin/types.d.ts +114 -73
  14. package/dist/base-plugin/types.d.ts.map +1 -1
  15. package/dist/base-plugin/types.js +141 -37
  16. package/dist/base-plugin/types.js.map +1 -1
  17. package/dist/base-plugin/viewtemplates/edit.d.ts +47 -3
  18. package/dist/base-plugin/viewtemplates/edit.d.ts.map +1 -1
  19. package/dist/base-plugin/viewtemplates/edit.js +204 -85
  20. package/dist/base-plugin/viewtemplates/edit.js.map +1 -1
  21. package/dist/base-plugin/viewtemplates/feed.d.ts +14 -1
  22. package/dist/base-plugin/viewtemplates/feed.d.ts.map +1 -1
  23. package/dist/base-plugin/viewtemplates/feed.js +20 -8
  24. package/dist/base-plugin/viewtemplates/feed.js.map +1 -1
  25. package/dist/base-plugin/viewtemplates/filter.d.ts +17 -1
  26. package/dist/base-plugin/viewtemplates/filter.d.ts.map +1 -1
  27. package/dist/base-plugin/viewtemplates/filter.js +64 -45
  28. package/dist/base-plugin/viewtemplates/filter.js.map +1 -1
  29. package/dist/base-plugin/viewtemplates/list.d.ts +20 -1
  30. package/dist/base-plugin/viewtemplates/list.d.ts.map +1 -1
  31. package/dist/base-plugin/viewtemplates/list.js +59 -40
  32. package/dist/base-plugin/viewtemplates/list.js.map +1 -1
  33. package/dist/base-plugin/viewtemplates/listshowlist.d.ts +14 -1
  34. package/dist/base-plugin/viewtemplates/listshowlist.d.ts.map +1 -1
  35. package/dist/base-plugin/viewtemplates/listshowlist.js +15 -4
  36. package/dist/base-plugin/viewtemplates/listshowlist.js.map +1 -1
  37. package/dist/base-plugin/viewtemplates/room.d.ts +41 -1
  38. package/dist/base-plugin/viewtemplates/room.d.ts.map +1 -1
  39. package/dist/base-plugin/viewtemplates/room.js +107 -80
  40. package/dist/base-plugin/viewtemplates/room.js.map +1 -1
  41. package/dist/base-plugin/viewtemplates/show.d.ts +37 -4
  42. package/dist/base-plugin/viewtemplates/show.d.ts.map +1 -1
  43. package/dist/base-plugin/viewtemplates/show.js +111 -74
  44. package/dist/base-plugin/viewtemplates/show.js.map +1 -1
  45. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts +26 -7
  46. package/dist/base-plugin/viewtemplates/viewable_fields.d.ts.map +1 -1
  47. package/dist/base-plugin/viewtemplates/viewable_fields.js +59 -47
  48. package/dist/base-plugin/viewtemplates/viewable_fields.js.map +1 -1
  49. package/dist/coverage/coverage-final.json +46 -0
  50. package/dist/coverage/lcov-report/block-navigation.d.ts +2 -0
  51. package/dist/coverage/lcov-report/block-navigation.d.ts.map +1 -0
  52. package/dist/coverage/lcov-report/block-navigation.js +71 -0
  53. package/dist/coverage/lcov-report/block-navigation.js.map +1 -0
  54. package/dist/coverage/lcov-report/prettify.d.ts +1 -0
  55. package/dist/coverage/lcov-report/prettify.d.ts.map +1 -0
  56. package/dist/coverage/lcov-report/prettify.js +478 -0
  57. package/dist/coverage/lcov-report/prettify.js.map +1 -0
  58. package/dist/coverage/lcov-report/sorter.d.ts +2 -0
  59. package/dist/coverage/lcov-report/sorter.d.ts.map +1 -0
  60. package/dist/coverage/lcov-report/sorter.js +164 -0
  61. package/dist/coverage/lcov-report/sorter.js.map +1 -0
  62. package/dist/db/connect.d.ts.map +1 -1
  63. package/dist/db/connect.js +8 -1
  64. package/dist/db/connect.js.map +1 -1
  65. package/dist/db/connect_mobile.d.ts +9 -0
  66. package/dist/db/connect_mobile.d.ts.map +1 -0
  67. package/dist/db/connect_mobile.js +15 -0
  68. package/dist/db/connect_mobile.js.map +1 -0
  69. package/dist/db/fixtures.d.ts.map +1 -1
  70. package/dist/db/fixtures.js +2 -1
  71. package/dist/db/fixtures.js.map +1 -1
  72. package/dist/db/index.d.ts.map +1 -1
  73. package/dist/db/index.js +16 -2
  74. package/dist/db/index.js.map +1 -1
  75. package/dist/db/state.d.ts +207 -52
  76. package/dist/db/state.d.ts.map +1 -1
  77. package/dist/db/state.js +87 -84
  78. package/dist/db/state.js.map +1 -1
  79. package/dist/index.d.ts +8 -0
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +27 -2
  82. package/dist/index.js.map +1 -1
  83. package/dist/migrate.d.ts.map +1 -1
  84. package/dist/migrate.js +54 -40
  85. package/dist/migrate.js.map +1 -1
  86. package/dist/mobile-mocks/db/postgres.d.ts +1 -0
  87. package/dist/mobile-mocks/db/postgres.d.ts.map +1 -0
  88. package/dist/mobile-mocks/db/postgres.js +2 -0
  89. package/dist/mobile-mocks/db/postgres.js.map +1 -0
  90. package/dist/mobile-mocks/db/sqlite.d.ts +1 -0
  91. package/dist/mobile-mocks/db/sqlite.d.ts.map +1 -0
  92. package/dist/mobile-mocks/db/sqlite.js +2 -0
  93. package/dist/mobile-mocks/db/sqlite.js.map +1 -0
  94. package/dist/mobile-mocks/models/email.d.ts +1 -0
  95. package/dist/mobile-mocks/models/email.d.ts.map +1 -0
  96. package/dist/mobile-mocks/models/email.js +2 -0
  97. package/dist/mobile-mocks/models/email.js.map +1 -0
  98. package/dist/mobile-mocks/node/async_hooks.d.ts +4 -0
  99. package/dist/mobile-mocks/node/async_hooks.d.ts.map +1 -0
  100. package/dist/mobile-mocks/node/async_hooks.js +8 -0
  101. package/dist/mobile-mocks/node/async_hooks.js.map +1 -0
  102. package/dist/mobile-mocks/node/child_process.d.ts +3 -0
  103. package/dist/mobile-mocks/node/child_process.d.ts.map +1 -0
  104. package/dist/mobile-mocks/node/child_process.js +6 -0
  105. package/dist/mobile-mocks/node/child_process.js.map +1 -0
  106. package/dist/mobile-mocks/node/fs/promises.d.ts +6 -0
  107. package/dist/mobile-mocks/node/fs/promises.d.ts.map +1 -0
  108. package/dist/mobile-mocks/node/fs/promises.js +16 -0
  109. package/dist/mobile-mocks/node/fs/promises.js.map +1 -0
  110. package/dist/mobile-mocks/node/fs.d.ts +4 -0
  111. package/dist/mobile-mocks/node/fs.d.ts.map +1 -0
  112. package/dist/mobile-mocks/node/fs.js +15 -0
  113. package/dist/mobile-mocks/node/fs.js.map +1 -0
  114. package/dist/mobile-mocks/node/latest-version.d.ts +2 -0
  115. package/dist/mobile-mocks/node/latest-version.d.ts.map +1 -0
  116. package/dist/mobile-mocks/node/latest-version.js +7 -0
  117. package/dist/mobile-mocks/node/latest-version.js.map +1 -0
  118. package/dist/mobile-mocks/node/v8.d.ts +3 -0
  119. package/dist/mobile-mocks/node/v8.d.ts.map +1 -0
  120. package/dist/mobile-mocks/node/v8.js +8 -0
  121. package/dist/mobile-mocks/node/v8.js.map +1 -0
  122. package/dist/mobile-mocks/npm/env-paths.d.ts +6 -0
  123. package/dist/mobile-mocks/npm/env-paths.d.ts.map +1 -0
  124. package/dist/mobile-mocks/npm/env-paths.js +9 -0
  125. package/dist/mobile-mocks/npm/env-paths.js.map +1 -0
  126. package/dist/mobile-mocks/saltcorn/plugin-testing.d.ts +1 -0
  127. package/dist/mobile-mocks/saltcorn/plugin-testing.d.ts.map +1 -0
  128. package/dist/mobile-mocks/saltcorn/plugin-testing.js +2 -0
  129. package/dist/mobile-mocks/saltcorn/plugin-testing.js.map +1 -0
  130. package/dist/models/config.d.ts +9 -10
  131. package/dist/models/config.d.ts.map +1 -1
  132. package/dist/models/config.js +8 -7
  133. package/dist/models/config.js.map +1 -1
  134. package/dist/models/discovery.d.ts.map +1 -1
  135. package/dist/models/discovery.js +5 -1
  136. package/dist/models/discovery.js.map +1 -1
  137. package/dist/models/field.d.ts +5 -4
  138. package/dist/models/field.d.ts.map +1 -1
  139. package/dist/models/field.js +22 -19
  140. package/dist/models/field.js.map +1 -1
  141. package/dist/models/fieldrepeat.d.ts +5 -0
  142. package/dist/models/fieldrepeat.d.ts.map +1 -1
  143. package/dist/models/fieldrepeat.js +2 -0
  144. package/dist/models/fieldrepeat.js.map +1 -1
  145. package/dist/models/form.d.ts +2 -0
  146. package/dist/models/form.d.ts.map +1 -1
  147. package/dist/models/form.js +1 -0
  148. package/dist/models/form.js.map +1 -1
  149. package/dist/models/index.d.ts +2 -13
  150. package/dist/models/index.d.ts.map +1 -1
  151. package/dist/models/layout.d.ts.map +1 -1
  152. package/dist/models/layout.js +12 -2
  153. package/dist/models/layout.js.map +1 -1
  154. package/dist/models/page.d.ts +1 -1
  155. package/dist/models/page.d.ts.map +1 -1
  156. package/dist/models/page.js +10 -9
  157. package/dist/models/page.js.map +1 -1
  158. package/dist/models/scheduler.d.ts.map +1 -1
  159. package/dist/models/scheduler.js +3 -1
  160. package/dist/models/scheduler.js.map +1 -1
  161. package/dist/models/table.d.ts +2 -1
  162. package/dist/models/table.d.ts.map +1 -1
  163. package/dist/models/table.js +21 -10
  164. package/dist/models/table.js.map +1 -1
  165. package/dist/models/trigger.d.ts +3 -3
  166. package/dist/models/trigger.d.ts.map +1 -1
  167. package/dist/models/trigger.js +4 -5
  168. package/dist/models/trigger.js.map +1 -1
  169. package/dist/models/user.d.ts +1 -1
  170. package/dist/models/user.d.ts.map +1 -1
  171. package/dist/models/user.js +7 -15
  172. package/dist/models/user.js.map +1 -1
  173. package/dist/models/view.d.ts +16 -12
  174. package/dist/models/view.d.ts.map +1 -1
  175. package/dist/models/view.js +63 -15
  176. package/dist/models/view.js.map +1 -1
  177. package/dist/package.json +127 -0
  178. package/dist/plugin-helper.d.ts +17 -13
  179. package/dist/plugin-helper.d.ts.map +1 -1
  180. package/dist/plugin-helper.js +72 -60
  181. package/dist/plugin-helper.js.map +1 -1
  182. package/dist/tests/actions.test.d.ts +2 -0
  183. package/dist/tests/actions.test.d.ts.map +1 -0
  184. package/dist/tests/actions.test.js +250 -0
  185. package/dist/tests/actions.test.js.map +1 -0
  186. package/dist/tests/db.test.d.ts +2 -0
  187. package/dist/tests/db.test.d.ts.map +1 -0
  188. package/dist/tests/db.test.js +32 -0
  189. package/dist/tests/db.test.js.map +1 -0
  190. package/dist/tests/exact_views.test.js +274 -19
  191. package/dist/tests/exact_views.test.js.map +1 -1
  192. package/dist/tests/models.test.js +46 -1
  193. package/dist/tests/models.test.js.map +1 -1
  194. package/dist/tests/remote_query_helper.d.ts +341 -0
  195. package/dist/tests/remote_query_helper.d.ts.map +1 -0
  196. package/dist/tests/remote_query_helper.js +446 -0
  197. package/dist/tests/remote_query_helper.js.map +1 -0
  198. package/dist/tests/state.test.d.ts +2 -0
  199. package/dist/tests/state.test.d.ts.map +1 -0
  200. package/dist/tests/state.test.js +78 -0
  201. package/dist/tests/state.test.js.map +1 -0
  202. package/dist/tests/view.test.js +29 -0
  203. package/dist/tests/view.test.js.map +1 -1
  204. package/dist/tsconfig.json +24 -0
  205. package/dist/tsconfig.ref.json +9 -0
  206. package/dist/tsconfig.ref.tsbuildinfo +1 -1
  207. package/dist/utils.d.ts +2 -0
  208. package/dist/utils.d.ts.map +1 -1
  209. package/dist/utils.js +12 -2
  210. package/dist/utils.js.map +1 -1
  211. package/dist/webpack.config.d.ts +57 -0
  212. package/dist/webpack.config.d.ts.map +1 -0
  213. package/dist/webpack.config.js +75 -0
  214. package/dist/webpack.config.js.map +1 -0
  215. package/package.json +38 -13
  216. package/CHANGELOG.md +0 -8
@@ -4,20 +4,19 @@
4
4
  * @module base-plugin/viewtemplates/viewable_fields
5
5
  * @subcategory base-plugin
6
6
  */
7
- const { post_btn, link } = require("@saltcorn/markup");
7
+ const { post_btn } = require("@saltcorn/markup");
8
8
  const { text, a, i, div, button } = require("@saltcorn/markup/tags");
9
9
  const { getState } = require("../../db/state");
10
- const { contract, is } = require("contractis");
11
- const { is_column, is_tablely } = require("../../contracts");
12
- const { link_view, strictParseInt } = require("../../plugin-helper");
10
+ const { link_view } = require("../../plugin-helper");
13
11
  const { eval_expression } = require("../../models/expression");
14
12
  const Field = require("../../models/field");
15
13
  const Form = require("../../models/form");
16
14
  const { traverseSync } = require("../../models/layout");
17
- const { structuredClone } = require("../../utils");
15
+ const { structuredClone, isWeb } = require("../../utils");
18
16
  const db = require("../../db");
19
17
  const View = require("../../models/view");
20
18
  const Table = require("../../models/table");
19
+ const { isNode } = require("../../utils");
21
20
  /**
22
21
  * @function
23
22
  * @param {string} viewname
@@ -28,11 +27,11 @@ const Table = require("../../models/table");
28
27
  * @param {colIdNm} colIdNm missing in contract
29
28
  * @returns {any}
30
29
  */
31
- const action_url = contract(is.fun([is.str, is_tablely, is.str, is.obj()], is.any), (viewname, table, action_name, r, colId, colIdNm, confirm) => {
30
+ const action_url = (viewname, table, action_name, r, colId, colIdNm, confirm) => {
32
31
  if (action_name === "Delete")
33
32
  return `/delete/${table.name}/${r.id}?redirect=/view/${viewname}`;
34
33
  else if (action_name === "GoBack")
35
- return { javascript: "history.back()" };
34
+ return { javascript: isNode() ? "history.back()" : "parent.goBack()" };
36
35
  else if (action_name.startsWith("Toggle")) {
37
36
  const field_name = action_name.replace("Toggle ", "");
38
37
  return `/edit/toggle/${table.name}/${r.id}/${field_name}?redirect=/view/${viewname}`;
@@ -41,7 +40,7 @@ const action_url = contract(is.fun([is.str, is_tablely, is.str, is.obj()], is.an
41
40
  return {
42
41
  javascript: `${confirmStr}view_post('${viewname}', 'run_action', {${colIdNm}:'${colId}', id:${r.id}});`,
43
42
  };
44
- });
43
+ };
45
44
  /**
46
45
  * @param {string} url
47
46
  * @param {object} req
@@ -90,10 +89,7 @@ const slug_transform = (row) => (step) => step.transform === "slugify"
90
89
  * @param {Field[]} fields
91
90
  * @returns {function}
92
91
  */
93
- const get_view_link_query =
94
- /*contract(
95
- is.fun(is.array(is.class("Field")), is.fun(is.obj(), is.str)),*/
96
- (fields, view) => {
92
+ const get_view_link_query = (fields, view) => {
97
93
  if (view && view.slug && view.slug.steps && view.slug.steps.length > 0) {
98
94
  return (r) => view.slug.steps.map(slug_transform(r)).join("");
99
95
  }
@@ -121,7 +117,7 @@ is.fun(is.array(is.class("Field")), is.fun(is.obj(), is.str)),*/
121
117
  * @param {Field[]} fields
122
118
  * @returns {object}
123
119
  */
124
- const make_link = contract(is.fun([is.obj({ link_text: is.str }), is.array(is.class("Field"))], is.obj({ key: is.fun(is.obj(), is.str), label: is.str })), ({ link_text, link_text_formula, link_url, link_url_formula, link_target_blank, in_dropdown, in_modal, }, fields, __ = (s) => s) => {
120
+ const make_link = ({ link_text, link_text_formula, link_url, link_url_formula, link_target_blank, in_dropdown, in_modal, }, fields, __ = (s) => s) => {
125
121
  return {
126
122
  label: "",
127
123
  key: (r) => {
@@ -146,11 +142,16 @@ const make_link = contract(is.fun([is.obj({ link_text: is.str }), is.array(is.cl
146
142
  if (in_dropdown)
147
143
  attrs.class = "dropdown-item";
148
144
  if (in_modal)
149
- return a({ ...attrs, href: `javascript:ajax_modal('${href}');` }, txt);
145
+ return a({
146
+ ...attrs,
147
+ href: isNode()
148
+ ? `javascript:ajax_modal('${href}');`
149
+ : `javascript:mobile_modal('${href}');`,
150
+ }, txt);
150
151
  return a(attrs, txt);
151
152
  },
152
153
  };
153
- });
154
+ };
154
155
  /**
155
156
  * @param {string} s
156
157
  * @returns {object}
@@ -199,7 +200,7 @@ const parse_view_select = (s) => {
199
200
  * @param {Field[]} fields
200
201
  * @returns {object}
201
202
  */
202
- const view_linker = contract(is.fun([is.obj({ view: is.str }), is.array(is.class("Field"))], is.obj({ key: is.fun(is.obj(), is.str), label: is.str })), ({ view, view_label, in_modal, view_label_formula, link_style = "", link_size = "", link_icon = "", textStyle = "", link_bgcol, link_bordercol, link_textcol, in_dropdown, extra_state_fml, }, fields, __ = (s) => s) => {
203
+ const view_linker = ({ view, view_label, in_modal, view_label_formula, link_style = "", link_size = "", link_icon = "", textStyle = "", link_bgcol, link_bordercol, link_textcol, in_dropdown, extra_state_fml, }, fields, __ = (s) => s, isWeb = true) => {
203
204
  const get_label = (def, row) => {
204
205
  if (!view_label || view_label.length === 0)
205
206
  return def;
@@ -223,13 +224,19 @@ const view_linker = contract(is.fun([is.obj({ view: is.str }), is.array(is.class
223
224
  const get_query = get_view_link_query(fields, viewrow || {});
224
225
  return {
225
226
  label: vnm,
226
- key: (r) => link_view(`/view/${encodeURIComponent(vnm)}${get_query(r)}`, get_label(vnm, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r)),
227
+ key: (r) => {
228
+ const target = `/view/${encodeURIComponent(vnm)}${get_query(r)}`;
229
+ return link_view(isWeb || in_modal ? target : `javascript:execLink('${target}')`, get_label(vnm, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r));
230
+ },
227
231
  };
228
232
  case "Independent":
229
233
  const ivnm = vrest;
230
234
  return {
231
235
  label: ivnm,
232
- key: (r) => link_view(`/view/${encodeURIComponent(ivnm)}`, get_label(ivnm, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r)),
236
+ key: (r) => {
237
+ const target = `/view/${encodeURIComponent(ivnm)}`;
238
+ return link_view(isWeb || in_modal ? target : `javascript:execLink('${target}')`, get_label(ivnm, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r));
239
+ },
233
240
  };
234
241
  case "ChildList":
235
242
  case "OneToOneShow":
@@ -237,7 +244,10 @@ const view_linker = contract(is.fun([is.obj({ view: is.str }), is.array(is.class
237
244
  const varPath = through ? `${throughTable}.${through}.${fld}` : fld;
238
245
  return {
239
246
  label: viewnm,
240
- key: (r) => link_view(`/view/${encodeURIComponent(viewnm)}?${varPath}=${r.id}`, get_label(viewnm, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r)),
247
+ key: (r) => {
248
+ const target = `/view/${encodeURIComponent(viewnm)}?${varPath}=${r.id}`;
249
+ return link_view(isWeb || in_modal ? target : `javascript:execLink('${target}')`, get_label(viewnm, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r));
250
+ },
241
251
  };
242
252
  case "ParentShow":
243
253
  const [pviewnm, ptbl, pfld] = vrest.split(".");
@@ -247,17 +257,18 @@ const view_linker = contract(is.fun([is.obj({ view: is.str }), is.array(is.class
247
257
  key: (r) => {
248
258
  const reffield = fields.find((f) => f.name === pfld);
249
259
  const summary_field = r[`summary_field_${ptbl.toLowerCase()}`];
250
- return r[pfld]
251
- ? link_view(`/view/${encodeURIComponent(pviewnm)}?${reffield.refname}=${typeof r[pfld] === "object" ? r[pfld].id : r[pfld]}`, get_label(typeof summary_field === "undefined"
252
- ? pviewnm
253
- : summary_field, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r))
254
- : "";
260
+ if (r[pfld]) {
261
+ const target = `/view/${encodeURIComponent(pviewnm)}?${reffield.refname}=${typeof r[pfld] === "object" ? r[pfld].id : r[pfld]}`;
262
+ return link_view(isWeb || in_modal ? target : `javascript:execLink('${target}')`, get_label(typeof summary_field === "undefined" ? pviewnm : summary_field, r), in_modal, link_style, link_size, link_icon, textStyle, link_bgcol, link_bordercol, link_textcol, in_dropdown && "dropdown-item", get_extra_state(r));
263
+ }
264
+ else
265
+ return "";
255
266
  },
256
267
  };
257
268
  default:
258
269
  throw new Error(view);
259
270
  }
260
- });
271
+ };
261
272
  /**
262
273
  * @param {string} nm
263
274
  * @returns {boolean}
@@ -293,17 +304,7 @@ const flapMaipish = (xs, f) => {
293
304
  * @param {*} __
294
305
  * @returns {object[]}
295
306
  */
296
- const get_viewable_fields = contract(is.fun([
297
- is.str,
298
- is_tablely,
299
- is.array(is.class("Field")),
300
- is.array(is_column),
301
- is.bool,
302
- is.obj({ csrfToken: is.fun([], is.str) }),
303
- ], is.array(is.obj({
304
- key: is.or(is.fun(is.obj(), is.str), is.str, is.undefined),
305
- label: is.str,
306
- }))), (viewname, table, fields, columns, isShow, req, __) => {
307
+ const get_viewable_fields = (viewname, table, fields, columns, isShow, req, __) => {
307
308
  const dropdown_actions = [];
308
309
  const tfields = flapMaipish(columns, (column) => {
309
310
  const role = req.user ? req.user.role_id : 10;
@@ -356,7 +357,7 @@ const get_viewable_fields = contract(is.fun([
356
357
  else if (column.type === "ViewLink") {
357
358
  if (!column.view)
358
359
  return;
359
- const r = view_linker(column, fields, __);
360
+ const r = view_linker(column, fields, __, isWeb(req));
360
361
  if (column.header_label)
361
362
  r.label = text(__(column.header_label));
362
363
  Object.assign(r, setWidth);
@@ -432,12 +433,17 @@ const get_viewable_fields = contract(is.fun([
432
433
  "_" +
433
434
  fld +
434
435
  db.sqlsanitize(column.aggwhere || "")).toLowerCase();
436
+ let key = targetNm;
437
+ if (column.stat.toLowerCase() === "array_agg")
438
+ key = (r) => Array.isArray(r[targetNm])
439
+ ? r[targetNm].map((v) => v.toString()).join(", ")
440
+ : "";
435
441
  return {
436
442
  ...setWidth,
437
443
  label: column.header_label
438
444
  ? text(column.header_label)
439
445
  : text(column.stat + " " + table),
440
- key: targetNm,
446
+ key,
441
447
  // sortlink: `javascript:sortby('${text(targetNm)}')`
442
448
  };
443
449
  }
@@ -476,7 +482,7 @@ const get_viewable_fields = contract(is.fun([
476
482
  : (row) => text(row[f_with_val.name])
477
483
  : f.listKey,
478
484
  sortlink: !f.calculated || f.stored
479
- ? sortlinkForName(f.name, req)
485
+ ? sortlinkForName(f.name, req, viewname)
480
486
  : undefined,
481
487
  });
482
488
  }
@@ -499,20 +505,22 @@ const get_viewable_fields = contract(is.fun([
499
505
  });
500
506
  }
501
507
  return tfields;
502
- });
508
+ };
503
509
  /**
504
510
  * @param {string} fname
505
511
  * @param {object} req
506
512
  * @returns {string}
507
513
  */
508
- const sortlinkForName = (fname, req) => {
514
+ const sortlinkForName = (fname, req, viewname) => {
509
515
  const { _sortby, _sortdesc } = req.query || {};
510
516
  const desc = typeof _sortdesc == "undefined"
511
517
  ? _sortby === fname
512
518
  : _sortdesc
513
519
  ? "false"
514
520
  : "true";
515
- return `javascript:sortby('${text(fname)}', ${desc})`;
521
+ return isWeb(req)
522
+ ? `javascript:sortby('${text(fname)}', ${desc})`
523
+ : `javascript:sortby('${text(fname)}', ${desc}, '${viewname}')`;
516
524
  };
517
525
  /**
518
526
  * @param {object} column
@@ -540,7 +548,7 @@ const headerLabelForName = (column, f, req, __) => {
540
548
  * @param {boolean} [fuzzyStrings]
541
549
  * @returns {object}
542
550
  */
543
- const splitUniques = contract(is.fun([is.array(is.class("Field")), is.obj(), is.maybe(is.bool)], is.obj({ uniques: is.obj(), nonUniques: is.obj() })), (fields, state, fuzzyStrings) => {
551
+ const splitUniques = (fields, state, fuzzyStrings) => {
544
552
  let uniques = {};
545
553
  let nonUniques = {};
546
554
  Object.entries(state).forEach(([k, v]) => {
@@ -557,7 +565,7 @@ const splitUniques = contract(is.fun([is.array(is.class("Field")), is.obj(), is.
557
565
  nonUniques[k] = v;
558
566
  });
559
567
  return { uniques, nonUniques };
560
- });
568
+ };
561
569
  /**
562
570
  * @param {object} table
563
571
  * @param {string} viewname
@@ -567,7 +575,7 @@ const splitUniques = contract(is.fun([is.array(is.class("Field")), is.obj(), is.
567
575
  * @param {object} req
568
576
  * @returns {Promise<Form>}
569
577
  */
570
- const getForm = async (table, viewname, columns, layout0, id, req) => {
578
+ const getForm = async (table, viewname, columns, layout0, id, req, isRemote) => {
571
579
  const fields = await table.getFields();
572
580
  const tfields = (columns || [])
573
581
  .map((column) => {
@@ -618,7 +626,7 @@ const getForm = async (table, viewname, columns, layout0, id, req) => {
618
626
  }
619
627
  })
620
628
  .filter((tf) => !!tf);
621
- const path = req.baseUrl + req.path;
629
+ const path = isWeb(req) ? req.baseUrl + req.path : "";
622
630
  let action = `/view/${viewname}`;
623
631
  if (path && path.startsWith("/auth/"))
624
632
  action = path;
@@ -631,9 +639,13 @@ const getForm = async (table, viewname, columns, layout0, id, req) => {
631
639
  },
632
640
  });
633
641
  const form = new Form({
634
- action,
642
+ action: action,
643
+ onSubmit: isRemote
644
+ ? `javascript:formSubmit(this, '/view/', '${viewname}')`
645
+ : undefined,
635
646
  fields: tfields,
636
647
  layout,
648
+ req,
637
649
  });
638
650
  if (id)
639
651
  form.hidden("id");
@@ -1 +1 @@
1
- {"version":3,"file":"viewable_fields.js","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/viewable_fields.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viewable_fields.js","sourceRoot":"","sources":["../../../base-plugin/viewtemplates/viewable_fields.js"],"names":[],"mappings":";AAAA;;;;GAIG;AACH,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;AACjD,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACrE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC/C,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AACrD,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAC/D,MAAM,KAAK,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC5C,MAAM,IAAI,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC1C,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;AACxD,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAC1D,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC1C,MAAM,KAAK,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC5C,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAE1C;;;;;;;;;GASG;AACH,MAAM,UAAU,GAAG,CACjB,QAAQ,EACR,KAAK,EACL,WAAW,EACX,CAAC,EACD,KAAK,EACL,OAAO,EACP,OAAO,EACP,EAAE;IACF,IAAI,WAAW,KAAK,QAAQ;QAC1B,OAAO,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,mBAAmB,QAAQ,EAAE,CAAC;SAC/D,IAAI,WAAW,KAAK,QAAQ;QAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;SACpE,IAAI,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACzC,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACtD,OAAO,gBAAgB,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,UAAU,mBAAmB,QAAQ,EAAE,CAAC;KACtF;IACD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,eAAe,eAAe,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,OAAO;QACL,UAAU,EAAE,GAAG,UAAU,cAAc,QAAQ,qBAAqB,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,EAAE,KAAK;KACxG,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,GAAG,CAClB,GAAG,EACH,GAAG,EACH,EACE,WAAW,EACX,YAAY,EACZ,OAAO,EACP,KAAK,EACL,YAAY,EACZ,WAAW,EACX,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,KAAK,GACN,EACD,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EACb,EAAE;IACF,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC;IAC9C,IAAI,KAAK,GACP,YAAY,KAAK,kBAAkB;QACjC,CAAC,CAAC,qBAAqB,YAAY,IAAI,SAAS,kBAC5C,gBAAgB,IAAI,SACtB,YAAY,cAAc,IAAI,SAAS,EAAE;QAC3C,CAAC,CAAC,IAAI,CAAC;IACX,IAAI,GAAG,CAAC,UAAU;QAChB,OAAO,CAAC,CACN;YACE,IAAI,EAAE,aAAa,GAAG,GAAG,CAAC,UAAU;YACpC,KAAK,EACH,YAAY,KAAK,UAAU;gBACzB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,OAAO,YAAY,IAAI,aAAa,IAAI,WAAW,IAAI,EAAE,EAAE;YACjE,KAAK;SACN,EACD,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,EAC1D,KAAK,CACN,CAAC;;QAEF,OAAO,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE;YAC3C,OAAO;YACP,GAAG;YACH,IAAI,EAAE,WAAW;YACjB,KAAK;YACL,QAAQ,EAAE,GAAG,YAAY,IAAI,aAAa,IAAI,WAAW,IAAI,EAAE,EAAE;YACjE,SAAS,EAAE,CAAC,KAAK,IAAI,UAAU;SAChC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CACvC,IAAI,CAAC,SAAS,KAAK,SAAS;IAC1B,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;IACnC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AAC5B;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;IAC3C,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACtE,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC/D;IACD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAC/C,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;IACvD,IAAI,aAAa;QACf,OAAO,CAAC,CAAC,EAAE,EAAE,CACX,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;YACxB,CAAC,CAAC,IAAI,aAAa,CAAC,IAAI,IAAI,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE;YACvE,CAAC,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,OAAO;QACT,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,IAAI,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;SACrE;QACH,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;KAC3C;AACH,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,SAAS,GAAG,CAChB,EACE,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,QAAQ,GACT,EACD,MAAM,EACN,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EACb,EAAE;IACF,OAAO;QACL,KAAK,EAAE,EAAE;QACT,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;YACT,IAAI,GAAG,EAAE,IAAI,CAAC;YACd,IAAI;gBACF,GAAG,GAAG,iBAAiB,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;aACrE;YAAC,OAAO,KAAK,EAAE;gBACd,KAAK,CAAC,OAAO,GAAG,oBAAoB,SAAS,oBAAoB,KAAK,CAAC,OAAO,EAAE,CAAC;gBACjF,MAAM,KAAK,CAAC;aACb;YACD,IAAI;gBACF,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;aACnE;YAAC,OAAO,KAAK,EAAE;gBACd,KAAK,CAAC,OAAO,GAAG,oBAAoB,QAAQ,mBAAmB,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC/E,MAAM,KAAK,CAAC;aACb;YACD,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,CAAC;YACvB,IAAI,iBAAiB;gBAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;YAC/C,IAAI,WAAW;gBAAE,KAAK,CAAC,KAAK,GAAG,eAAe,CAAC;YAC/C,IAAI,QAAQ;gBACV,OAAO,CAAC,CACN;oBACE,GAAG,KAAK;oBACR,IAAI,EAAE,MAAM,EAAE;wBACZ,CAAC,CAAC,0BAA0B,IAAI,KAAK;wBACrC,CAAC,CAAC,4BAA4B,IAAI,KAAK;iBAC1C,EACD,GAAG,CACJ,CAAC;YACJ,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvB,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,iBAAiB,GAAG,CAAC,CAAC,EAAE,EAAE;IAC9B,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACjE,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,UAAU,CAAC;IACjC,QAAQ,IAAI,EAAE;QACZ,KAAK,KAAK;YACR,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACnC,KAAK,WAAW,CAAC;QACjB,KAAK,cAAc;YACjB,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnE,OAAO;gBACL,IAAI;gBACJ,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,GAAG;gBACf,UAAU,EAAE,GAAG;gBACf,YAAY;gBACZ,OAAO;aACR,CAAC;QACJ,KAAK,YAAY;YACf,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACzE,KAAK,aAAa;YAChB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;KACpC;AACH,CAAC,CAAC;AAEF,kCAAkC;AAClC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,GAAG,CAClB,EACE,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,UAAU,GAAG,EAAE,EACf,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,EAAE,EACd,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,EACX,eAAe,GAChB,EACD,MAAM,EACN,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EACb,KAAK,GAAG,IAAI,EACZ,EAAE;IACF,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC7B,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC;QACvD,IAAI,CAAC,kBAAkB;YAAE,OAAO,UAAU,CAAC;QAC3C,OAAO,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC,CAAC;IACF,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,EAAE;QAC9B,IAAI,CAAC,eAAe;YAAE,OAAO,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,eAAe,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;QAChD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;aACrB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;aACpE,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC,CAAC;IACF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvC,QAAQ,KAAK,EAAE;QACb,KAAK,KAAK;YACR,MAAM,GAAG,GAAG,KAAK,CAAC;YAClB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;YAC7D,OAAO;gBACL,KAAK,EAAE,GAAG;gBACV,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;oBACT,MAAM,MAAM,GAAG,SAAS,kBAAkB,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjE,OAAO,SAAS,CACd,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,MAAM,IAAI,EAC/D,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,EACjB,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,IAAI,eAAe,EAC9B,eAAe,CAAC,CAAC,CAAC,CACnB,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,KAAK,aAAa;YAChB,MAAM,IAAI,GAAG,KAAK,CAAC;YACnB,OAAO;gBACL,KAAK,EAAE,IAAI;gBACX,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;oBACT,MAAM,MAAM,GAAG,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,OAAO,SAAS,CACd,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,MAAM,IAAI,EAC/D,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,EAClB,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,IAAI,eAAe,EAC9B,eAAe,CAAC,CAAC,CAAC,CACnB,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,KAAK,WAAW,CAAC;QACjB,KAAK,cAAc;YACjB,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnE,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YACpE,OAAO;gBACL,KAAK,EAAE,MAAM;gBACb,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;oBACT,MAAM,MAAM,GAAG,SAAS,kBAAkB,CAAC,MAAM,CAAC,IAAI,OAAO,IAC3D,CAAC,CAAC,EACJ,EAAE,CAAC;oBACH,OAAO,SAAS,CACd,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,MAAM,IAAI,EAC/D,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EACpB,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,IAAI,eAAe,EAC9B,eAAe,CAAC,CAAC,CAAC,CACnB,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,KAAK,YAAY;YACf,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,oCAAoC;YACpC,OAAO;gBACL,KAAK,EAAE,OAAO;gBACd,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;oBACT,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;oBACrD,MAAM,aAAa,GAAG,CAAC,CAAC,iBAAiB,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAC/D,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE;wBACX,MAAM,MAAM,GAAG,SAAS,kBAAkB,CAAC,OAAO,CAAC,IACjD,QAAQ,CAAC,OACX,IAAI,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzD,OAAO,SAAS,CACd,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,MAAM,IAAI,EAC/D,SAAS,CACP,OAAO,aAAa,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,EAC9D,CAAC,CACF,EACD,QAAQ,EACR,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,IAAI,eAAe,EAC9B,eAAe,CAAC,CAAC,CAAC,CACnB,CAAC;qBACH;;wBAAM,OAAO,EAAE,CAAC;gBACnB,CAAC;aACF,CAAC;QACJ;YACE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;KACzB;AACH,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,qBAAqB,GAAG,CAAC,EAAE,EAAE,EAAE;IACnC,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,IAAI,EAAE,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAC;AAC3C,CAAC,CAAC;AAEF,6BAA6B;AAC7B,MAAM,WAAW,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE;IAC5B,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE;QAClB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACf,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;;YAChC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAClB;IACD,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,mBAAmB,GAAG,CAC1B,QAAQ,EACR,KAAK,EACL,MAAM,EACN,OAAO,EACP,MAAM,EACN,GAAG,EACH,EAAE,EACF,EAAE;IACF,MAAM,gBAAgB,GAAG,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAC9C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS;YAC/B,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE;YAC3D,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC5B,MAAM,UAAU,GAAG;gBACjB,GAAG,QAAQ;gBACX,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC/D,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE;oBACT,IAAI,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;wBAC7C,IAAI,KAAK,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;4BAC7D,OAAO,EAAE,CAAC;qBACb;oBACD,MAAM,GAAG,GAAG,UAAU,CACpB,QAAQ,EACR,KAAK,EACL,MAAM,CAAC,WAAW,EAClB,CAAC,EACD,MAAM,CAAC,WAAW,EAClB,aAAa,EACb,MAAM,CAAC,OAAO,CACf,CAAC;oBACF,MAAM,KAAK,GAAG,MAAM,CAAC,oBAAoB;wBACvC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;wBACzC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC;oBAClD,IAAI,GAAG,CAAC,UAAU;wBAChB,OAAO,CAAC,CACN;4BACE,IAAI,EAAE,aAAa,GAAG,GAAG,CAAC,UAAU;4BACpC,KAAK,EAAE,MAAM,CAAC,WAAW;gCACvB,CAAC,CAAC,eAAe;gCACjB,CAAC,CAAC,MAAM,CAAC,YAAY,KAAK,UAAU;oCACpC,CAAC,CAAC,EAAE;oCACJ,CAAC,CAAC,OAAO,MAAM,CAAC,YAAY,IAAI,aAAa,IACzC,MAAM,CAAC,WAAW,IAAI,EACxB,EAAE;yBACP,EACD,KAAK,CACN,CAAC;;wBAEF,OAAO,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,SAAS,EAAE,EAAE;4BAC3C,KAAK,EAAE,IAAI;4BACX,IAAI,EAAE,IAAI;4BACV,cAAc,EAAE,IAAI;4BACpB,OAAO,EAAE,MAAM,CAAC,OAAO;4BACvB,QAAQ,EAAE,MAAM,CAAC,WAAW;gCAC1B,CAAC,CAAC,eAAe;gCACjB,CAAC,CAAC,MAAM,CAAC,YAAY,IAAI,aAAa;4BACxC,GAAG;yBACJ,CAAC,CAAC;gBACP,CAAC;aACF,CAAC;YACF,IAAI,MAAM,CAAC,WAAW,EAAE;gBACtB,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAClC,OAAO,KAAK,CAAC;aACd;;gBAAM,OAAO,UAAU,CAAC;SAC1B;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,IAAI;gBAAE,OAAO;YACzB,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACtD,IAAI,MAAM,CAAC,YAAY;gBAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;YACjE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC3B,IAAI,MAAM,CAAC,WAAW,EAAE;gBACtB,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzB,OAAO,KAAK,CAAC;aACd;;gBAAM,OAAO,CAAC,CAAC;SACjB;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE;YACjC,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YACxC,IAAI,MAAM,CAAC,YAAY;gBAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;YACjE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC3B,IAAI,MAAM,CAAC,WAAW,EAAE;gBACtB,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzB,OAAO,KAAK,CAAC;aACd;;gBAAM,OAAO,CAAC,CAAC;SACjB;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE;YACtC,sBAAsB;YACtB,IAAI,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC;YACxC,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACpC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzD,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC3C,QAAQ,GAAG,MAAM,CAAC;gBAClB,KAAK,GAAG,GAAG,CAAC;gBACZ,GAAG,GAAG,GAAG,GAAG,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;aACrC;iBAAM;gBACL,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC7C,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBACnB,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvC,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACzB;YACD,IAAI,MAAM,CAAC,UAAU;gBAAE,IAAI,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAClE,IACE,MAAM,CAAC,cAAc;gBACrB,IAAI,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,aAAa,EACxD;gBACA,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;gBACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;oBAC7B,IAAI,EAAE,QAAQ,CAAC,aAAa;iBAC7B,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;gBAC/D,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,aAAa,CACzD,KAAK,EACL;oBACE,GAAG,KAAK,CAAC,UAAU;oBACnB,GAAG,MAAM;iBACV,EACD,MAAM,CACP,CAAC;aACH;YAED,OAAO;gBACL,GAAG,QAAQ;gBACX,KAAK,EAAE,MAAM,CAAC,YAAY;oBACxB,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;oBAC/B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAClB,OAAO,EAAE,GAAG;gBACZ,GAAG,EACD,MAAM,CAAC,cAAc;oBACrB,IAAI;oBACJ,IAAI,CAAC,UAAU;oBACf,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC;oBACpC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CACN,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CACxC,GAAG,CAAC,GAAG,CAAC,EACR,GAAG,EACH,MAAM,CACP;oBACL,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC7B,qDAAqD;aACtD,CAAC;SACH;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa,EAAE;YACxC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,CACf,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC5B,GAAG;gBACH,KAAK;gBACL,GAAG;gBACH,GAAG;gBACH,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CACtC,CAAC,WAAW,EAAE,CAAC;YAChB,IAAI,GAAG,GAAG,QAAQ,CAAC;YACnB,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW;gBAC3C,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CACV,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBACxB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACjD,CAAC,CAAC,EAAE,CAAC;YACX,OAAO;gBACL,GAAG,QAAQ;gBACX,KAAK,EAAE,MAAM,CAAC,YAAY;oBACxB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;oBAC3B,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC;gBACnC,GAAG;gBACH,qDAAqD;aACtD,CAAC;SACH;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;YAClC,sBAAsB;YACtB,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC;YAC7D,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,CAAC,YAAY,EAAE;gBAClD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;gBAC/B,MAAM,gBAAgB,GAAG,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBAC3D,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI,CAAC,CAAC;aACvE;YACD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;YACvD,IACE,MAAM,CAAC,SAAS;gBAChB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,aAAa,EACtD;gBACA,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,aAAa,CACtD,CAAC,EACD;oBACE,GAAG,CAAC,CAAC,UAAU;oBACf,GAAG,MAAM,CAAC,aAAa;iBACxB,EACD,MAAM,CACP,CAAC;aACH;YAED,OAAO,CACL,CAAC,IAAI;gBACH,GAAG,QAAQ;gBACX,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;gBAClC,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;gBAC7C,OAAO,EAAE,UAAU,CAAC,IAAI;gBACxB,GAAG,EACD,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;oBACnC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;wBACX,QAAQ,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CACxC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EACX,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,YAAY,CAAC,CAC3B;oBACL,CAAC,CAAC,MAAM,CAAC,SAAS;wBAChB,CAAC,CAAC,IAAI,CAAC,UAAU;wBACjB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC;wBACrC,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CACN,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CACrC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EACpB,GAAG,EACH,EAAE,GAAG,CAAC,CAAC,UAAU,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,CAC7C;wBACL,CAAC,CAAC,MAAM;4BACR,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM;gCACb,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gCAC9C,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;4BACvC,CAAC,CAAC,CAAC,CAAC,OAAO;gBACf,QAAQ,EACN,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,MAAM;oBACvB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC;oBACxC,CAAC,CAAC,SAAS;aAChB,CACF,CAAC;SACH;IACH,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QAC/B,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,QAAQ;YACf,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CACT,GAAG,CACD,EAAE,KAAK,EAAE,UAAU,EAAE,EACrB,MAAM,CACJ;gBACE,KAAK,EAAE,kDAAkD;gBACzD,eAAe,EAAE,UAAU;gBAC3B,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE;gBACrB,gBAAgB,EAAE,UAAU;gBAC5B,eAAe,EAAE,MAAM;gBACvB,eAAe,EAAE,OAAO;aACzB,EACD,QAAQ,CACT,EACD,GAAG,CACD;gBACE,KAAK,EAAE,iCAAiC;gBACxC,iBAAiB,EAAE,WAAW,CAAC,CAAC,EAAE,EAAE;aACrC,EACD,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAC5C,CACF;SACJ,CAAC,CAAC;KACJ;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AACF;;;;GAIG;AACH,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;IAC/C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;IAC/C,MAAM,IAAI,GACR,OAAO,SAAS,IAAI,WAAW;QAC7B,CAAC,CAAC,OAAO,KAAK,KAAK;QACnB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,MAAM,CAAC;IACb,OAAO,KAAK,CAAC,GAAG,CAAC;QACf,CAAC,CAAC,sBAAsB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG;QAChD,CAAC,CAAC,sBAAsB,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,MAAM,QAAQ,IAAI,CAAC;AACpE,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY;QAC/B,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAClB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;IAC/C,IAAI,KAAK,GACP,OAAO,KAAK,CAAC,CAAC,IAAI;QAChB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;YACnC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACtC,OAAO,KAAK,GAAG,KAAK,CAAC;AACvB,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE;IACnD,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAC/C,IACE,KAAK;YACL,KAAK,CAAC,SAAS;YACf,YAAY;YACZ,KAAK,CAAC,IAAI;YACV,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;YAE5B,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;aACvB,IAAI,KAAK,IAAI,KAAK,CAAC,SAAS;YAC/B,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;;YACnD,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACjC,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,OAAO,GAAG,KAAK,EACnB,KAAK,EACL,QAAQ,EACR,OAAO,EACP,OAAO,EACP,EAAE,EACF,GAAG,EACH,QAAQ,EACR,EAAE;IACF,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC;IAEvC,MAAM,OAAO,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;SAC5B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;YAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,CAAC,EAAE;gBACL,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE;oBACpB,IAAI,QAAQ,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC5C,CAAC,CAAC,YAAY,GAAG,QAAQ,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBAC9D,CAAC,CAAC,UAAU;wBACV,CAAC,CAAC,CAAC,SAAS;4BACZ,CAAC,CAAC,CAAC,YAAY;4BACf,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC;4BAC3C,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAC,UAAU,CAAC;iBAClB;gBACD,IAAI,CAAC,CAAC,UAAU;oBACd,CAAC,CAAC,SAAS,GAAG,0BAA0B,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;gBAChF,CAAC,CAAC,UAAU,GAAG,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC;gBAC5D,IACE,OAAO,MAAM,CAAC,KAAK,KAAK,WAAW;oBACnC,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,KAAK,WAAW;oBAEzC,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;gBACpC,OAAO,CAAC,CAAC;aACV;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;gBACrE,OAAO,IAAI,KAAK,CAAC;oBACf,IAAI,EAAE,UAAU;oBAChB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;aACJ;iBAAM,IACL,KAAK,CAAC,IAAI,KAAK,OAAO;gBACtB,MAAM,CAAC,UAAU,KAAK,gBAAgB,EACtC;gBACA,OAAO,IAAI,KAAK,CAAC;oBACf,IAAI,EAAE,gBAAgB;oBACtB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;aACJ;iBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE;gBACrE,OAAO,IAAI,KAAK,CAAC;oBACf,IAAI,EAAE,UAAU;oBAChB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,IAAI,EAAE,MAAM;iBACb,CAAC,CAAC;aACJ;SACF;IACH,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACxB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,IAAI,MAAM,GAAG,SAAS,QAAQ,EAAE,CAAC;IACjC,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,MAAM,GAAG,IAAI,CAAC;IACrD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACxC,YAAY,CAAC,MAAM,EAAE;QACnB,SAAS,CAAC,OAAO;YACf,IAAI,OAAO,CAAC,aAAa,EAAE;gBACzB,OAAO,CAAC,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;aACrD;QACH,CAAC;KACF,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC;QACpB,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,QAAQ;YAChB,CAAC,CAAC,0CAA0C,QAAQ,IAAI;YACxD,CAAC,CAAC,SAAS;QACb,MAAM,EAAE,OAAO;QACf,MAAM;QACN,GAAG;KACJ,CAAC,CAAC;IACH,IAAI,EAAE;QAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,YAAY,GAAG,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;IAC/C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC;IACvC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACrC,IAAI,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAC3B,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;gBACZ,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;gBACvC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;gBACjD,IAAI,GAAG,EAAE;oBACP,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,CAAC,WAAW;wBAC3C,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;;wBAC1C,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;iBACpE;aACF;YACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;SACjB;aAAM;YACL,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAC7C,IAAI,CAAC,GAAG;gBAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3B;IACH,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,MAAM,gBAAgB,GAAG,CAAC,CAAC,EAAE,EAAE,CAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;KACpB,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;KACpE,IAAI,CAAC,GAAG,CAAC,CAAC;AAEf,MAAM,CAAC,OAAO,GAAG;IACf,mBAAmB;IACnB,UAAU;IACV,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,iBAAiB;IACjB,YAAY;IACZ,OAAO;IACP,YAAY;IACZ,mBAAmB;IACnB,SAAS;CACV,CAAC"}