@things-factory/dataset 9.0.0-beta.27 → 9.0.0-beta.29

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 (345) hide show
  1. package/dist-client/activities/activity-data-collect-edit.d.ts +19 -0
  2. package/dist-client/activities/activity-data-collect-edit.js +105 -0
  3. package/dist-client/activities/activity-data-collect-edit.js.map +1 -0
  4. package/dist-client/activities/activity-data-collect-view.d.ts +16 -0
  5. package/dist-client/activities/activity-data-collect-view.js +94 -0
  6. package/dist-client/activities/activity-data-collect-view.js.map +1 -0
  7. package/dist-client/activities/activity-data-review-edit.d.ts +18 -0
  8. package/dist-client/activities/activity-data-review-edit.js +279 -0
  9. package/dist-client/activities/activity-data-review-edit.js.map +1 -0
  10. package/dist-client/activities/activity-data-review-view.d.ts +14 -0
  11. package/dist-client/activities/activity-data-review-view.js +224 -0
  12. package/dist-client/activities/activity-data-review-view.js.map +1 -0
  13. package/dist-client/activities/activity-ooc-resolve-edit.d.ts +2 -0
  14. package/dist-client/activities/activity-ooc-resolve-edit.js +196 -0
  15. package/dist-client/activities/activity-ooc-resolve-edit.js.map +1 -0
  16. package/dist-client/activities/activity-ooc-resolve-view.d.ts +14 -0
  17. package/dist-client/activities/activity-ooc-resolve-view.js +146 -0
  18. package/dist-client/activities/activity-ooc-resolve-view.js.map +1 -0
  19. package/dist-client/activities/activity-ooc-review-edit.d.ts +2 -0
  20. package/dist-client/activities/activity-ooc-review-edit.js +176 -0
  21. package/dist-client/activities/activity-ooc-review-edit.js.map +1 -0
  22. package/dist-client/activities/activity-ooc-review-view.d.ts +1 -0
  23. package/dist-client/activities/activity-ooc-review-view.js +133 -0
  24. package/dist-client/activities/activity-ooc-review-view.js.map +1 -0
  25. package/dist-client/bootstrap.d.ts +10 -0
  26. package/dist-client/bootstrap.js +26 -0
  27. package/dist-client/bootstrap.js.map +1 -0
  28. package/dist-client/components/data-entry-form.d.ts +20 -0
  29. package/dist-client/components/data-entry-form.js +108 -0
  30. package/dist-client/components/data-entry-form.js.map +1 -0
  31. package/dist-client/index.d.ts +1 -0
  32. package/dist-client/index.js +2 -0
  33. package/dist-client/index.js.map +1 -0
  34. package/dist-client/pages/data-archive/data-archive-list-page.d.ts +67 -0
  35. package/dist-client/pages/data-archive/data-archive-list-page.js +272 -0
  36. package/dist-client/pages/data-archive/data-archive-list-page.js.map +1 -0
  37. package/dist-client/pages/data-archive/data-archive-request-popup.d.ts +1 -0
  38. package/dist-client/pages/data-archive/data-archive-request-popup.js +160 -0
  39. package/dist-client/pages/data-archive/data-archive-request-popup.js.map +1 -0
  40. package/dist-client/pages/data-entry/checklist-entry-page.d.ts +21 -0
  41. package/dist-client/pages/data-entry/checklist-entry-page.js +209 -0
  42. package/dist-client/pages/data-entry/checklist-entry-page.js.map +1 -0
  43. package/dist-client/pages/data-entry/data-entry-list-page.d.ts +38 -0
  44. package/dist-client/pages/data-entry/data-entry-list-page.js +448 -0
  45. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -0
  46. package/dist-client/pages/data-key-set/data-key-item-list.d.ts +19 -0
  47. package/dist-client/pages/data-key-set/data-key-item-list.js +182 -0
  48. package/dist-client/pages/data-key-set/data-key-item-list.js.map +1 -0
  49. package/dist-client/pages/data-key-set/data-key-set-importer.d.ts +10 -0
  50. package/dist-client/pages/data-key-set/data-key-set-importer.js +94 -0
  51. package/dist-client/pages/data-key-set/data-key-set-importer.js.map +1 -0
  52. package/dist-client/pages/data-key-set/data-key-set-list-page.d.ts +64 -0
  53. package/dist-client/pages/data-key-set/data-key-set-list-page.js +405 -0
  54. package/dist-client/pages/data-key-set/data-key-set-list-page.js.map +1 -0
  55. package/dist-client/pages/data-ooc/data-ooc-list-page.d.ts +72 -0
  56. package/dist-client/pages/data-ooc/data-ooc-list-page.js +545 -0
  57. package/dist-client/pages/data-ooc/data-ooc-list-page.js.map +1 -0
  58. package/dist-client/pages/data-ooc/data-ooc-page.d.ts +18 -0
  59. package/dist-client/pages/data-ooc/data-ooc-page.js +163 -0
  60. package/dist-client/pages/data-ooc/data-ooc-page.js.map +1 -0
  61. package/dist-client/pages/data-ooc/data-ooc-view.d.ts +19 -0
  62. package/dist-client/pages/data-ooc/data-ooc-view.js +232 -0
  63. package/dist-client/pages/data-ooc/data-ooc-view.js.map +1 -0
  64. package/dist-client/pages/data-ooc/data-oocs-page.d.ts +18 -0
  65. package/dist-client/pages/data-ooc/data-oocs-page.js +200 -0
  66. package/dist-client/pages/data-ooc/data-oocs-page.js.map +1 -0
  67. package/dist-client/pages/data-report/data-report-embed-page.d.ts +36 -0
  68. package/dist-client/pages/data-report/data-report-embed-page.js +101 -0
  69. package/dist-client/pages/data-report/data-report-embed-page.js.map +1 -0
  70. package/dist-client/pages/data-report/data-report-list-page.d.ts +38 -0
  71. package/dist-client/pages/data-report/data-report-list-page.js +441 -0
  72. package/dist-client/pages/data-report/data-report-list-page.js.map +1 -0
  73. package/dist-client/pages/data-report/data-report-samples-page.d.ts +32 -0
  74. package/dist-client/pages/data-report/data-report-samples-page.js +166 -0
  75. package/dist-client/pages/data-report/data-report-samples-page.js.map +1 -0
  76. package/dist-client/pages/data-report/jasper-report-oocs-page.d.ts +2 -0
  77. package/dist-client/pages/data-report/jasper-report-oocs-page.js +101 -0
  78. package/dist-client/pages/data-report/jasper-report-oocs-page.js.map +1 -0
  79. package/dist-client/pages/data-report/jasper-report-samples-crosstab-page.d.ts +2 -0
  80. package/dist-client/pages/data-report/jasper-report-samples-crosstab-page.js +101 -0
  81. package/dist-client/pages/data-report/jasper-report-samples-crosstab-page.js.map +1 -0
  82. package/dist-client/pages/data-report/jasper-report-samples-page.d.ts +2 -0
  83. package/dist-client/pages/data-report/jasper-report-samples-page.js +101 -0
  84. package/dist-client/pages/data-report/jasper-report-samples-page.js.map +1 -0
  85. package/dist-client/pages/data-sample/data-sample-list-page.d.ts +70 -0
  86. package/dist-client/pages/data-sample/data-sample-list-page.js +437 -0
  87. package/dist-client/pages/data-sample/data-sample-list-page.js.map +1 -0
  88. package/dist-client/pages/data-sample/data-sample-page.d.ts +17 -0
  89. package/dist-client/pages/data-sample/data-sample-page.js +57 -0
  90. package/dist-client/pages/data-sample/data-sample-page.js.map +1 -0
  91. package/dist-client/pages/data-sample/data-sample-search-page.d.ts +59 -0
  92. package/dist-client/pages/data-sample/data-sample-search-page.js +421 -0
  93. package/dist-client/pages/data-sample/data-sample-search-page.js.map +1 -0
  94. package/dist-client/pages/data-sample/data-sample-view.d.ts +21 -0
  95. package/dist-client/pages/data-sample/data-sample-view.js +285 -0
  96. package/dist-client/pages/data-sample/data-sample-view.js.map +1 -0
  97. package/dist-client/pages/data-sample/data-samples-page.d.ts +21 -0
  98. package/dist-client/pages/data-sample/data-samples-page.js +249 -0
  99. package/dist-client/pages/data-sample/data-samples-page.js.map +1 -0
  100. package/dist-client/pages/data-sensor/data-sensor-list-page.d.ts +58 -0
  101. package/dist-client/pages/data-sensor/data-sensor-list-page.js +455 -0
  102. package/dist-client/pages/data-sensor/data-sensor-list-page.js.map +1 -0
  103. package/dist-client/pages/data-set/data-item-list.d.ts +1 -0
  104. package/dist-client/pages/data-set/data-item-list.js +306 -0
  105. package/dist-client/pages/data-set/data-item-list.js.map +1 -0
  106. package/dist-client/pages/data-set/data-set-importer.d.ts +11 -0
  107. package/dist-client/pages/data-set/data-set-importer.js +97 -0
  108. package/dist-client/pages/data-set/data-set-importer.js.map +1 -0
  109. package/dist-client/pages/data-set/data-set-list-page.d.ts +83 -0
  110. package/dist-client/pages/data-set/data-set-list-page.js +1048 -0
  111. package/dist-client/pages/data-set/data-set-list-page.js.map +1 -0
  112. package/dist-client/pages/data-summary/data-summary-list-page.d.ts +59 -0
  113. package/dist-client/pages/data-summary/data-summary-list-page.js +361 -0
  114. package/dist-client/pages/data-summary/data-summary-list-page.js.map +1 -0
  115. package/dist-client/pages/data-summary/data-summary-period-page.d.ts +81 -0
  116. package/dist-client/pages/data-summary/data-summary-period-page.js +459 -0
  117. package/dist-client/pages/data-summary/data-summary-period-page.js.map +1 -0
  118. package/dist-client/pages/data-summary/data-summary-search-page.d.ts +78 -0
  119. package/dist-client/pages/data-summary/data-summary-search-page.js +413 -0
  120. package/dist-client/pages/data-summary/data-summary-search-page.js.map +1 -0
  121. package/dist-client/pages/data-summary/data-summary-view.d.ts +1 -0
  122. package/dist-client/pages/data-summary/data-summary-view.js +114 -0
  123. package/dist-client/pages/data-summary/data-summary-view.js.map +1 -0
  124. package/dist-client/route.d.ts +1 -0
  125. package/dist-client/route.js +74 -0
  126. package/dist-client/route.js.map +1 -0
  127. package/dist-client/tsconfig.tsbuildinfo +1 -0
  128. package/dist-server/activities/activity-data-collect.d.ts +42 -0
  129. package/dist-server/activities/activity-data-collect.js +87 -0
  130. package/dist-server/activities/activity-data-collect.js.map +1 -0
  131. package/dist-server/activities/activity-data-review.d.ts +42 -0
  132. package/dist-server/activities/activity-data-review.js +87 -0
  133. package/dist-server/activities/activity-data-review.js.map +1 -0
  134. package/dist-server/activities/activity-ooc-resolve.d.ts +42 -0
  135. package/dist-server/activities/activity-ooc-resolve.js +104 -0
  136. package/dist-server/activities/activity-ooc-resolve.js.map +1 -0
  137. package/dist-server/activities/activity-ooc-review.d.ts +42 -0
  138. package/dist-server/activities/activity-ooc-review.js +82 -0
  139. package/dist-server/activities/activity-ooc-review.js.map +1 -0
  140. package/dist-server/activities/index.d.ts +1 -0
  141. package/dist-server/activities/index.js +11 -0
  142. package/dist-server/activities/index.js.map +1 -0
  143. package/dist-server/controllers/create-data-ooc.d.ts +4 -0
  144. package/dist-server/controllers/create-data-ooc.js +65 -0
  145. package/dist-server/controllers/create-data-ooc.js.map +1 -0
  146. package/dist-server/controllers/create-data-sample.d.ts +3 -0
  147. package/dist-server/controllers/create-data-sample.js +268 -0
  148. package/dist-server/controllers/create-data-sample.js.map +1 -0
  149. package/dist-server/controllers/data-use-case.d.ts +36 -0
  150. package/dist-server/controllers/data-use-case.js +63 -0
  151. package/dist-server/controllers/data-use-case.js.map +1 -0
  152. package/dist-server/controllers/finalize-data-collection.d.ts +4 -0
  153. package/dist-server/controllers/finalize-data-collection.js +328 -0
  154. package/dist-server/controllers/finalize-data-collection.js.map +1 -0
  155. package/dist-server/controllers/index.d.ts +6 -0
  156. package/dist-server/controllers/index.js +10 -0
  157. package/dist-server/controllers/index.js.map +1 -0
  158. package/dist-server/controllers/issue-data-collection-task.d.ts +2 -0
  159. package/dist-server/controllers/issue-data-collection-task.js +57 -0
  160. package/dist-server/controllers/issue-data-collection-task.js.map +1 -0
  161. package/dist-server/controllers/issue-ooc-resolve.d.ts +3 -0
  162. package/dist-server/controllers/issue-ooc-resolve.js +49 -0
  163. package/dist-server/controllers/issue-ooc-resolve.js.map +1 -0
  164. package/dist-server/controllers/issue-ooc-review.d.ts +3 -0
  165. package/dist-server/controllers/issue-ooc-review.js +47 -0
  166. package/dist-server/controllers/issue-ooc-review.js.map +1 -0
  167. package/dist-server/controllers/jasper-report.d.ts +1 -0
  168. package/dist-server/controllers/jasper-report.js +163 -0
  169. package/dist-server/controllers/jasper-report.js.map +1 -0
  170. package/dist-server/controllers/query-data-summary-by-period.d.ts +3 -0
  171. package/dist-server/controllers/query-data-summary-by-period.js +157 -0
  172. package/dist-server/controllers/query-data-summary-by-period.js.map +1 -0
  173. package/dist-server/controllers/shiny-report.d.ts +1 -0
  174. package/dist-server/controllers/shiny-report.js +35 -0
  175. package/dist-server/controllers/shiny-report.js.map +1 -0
  176. package/dist-server/engine/index.d.ts +1 -0
  177. package/dist-server/engine/index.js +4 -0
  178. package/dist-server/engine/index.js.map +1 -0
  179. package/dist-server/engine/task/create-data-sample.d.ts +1 -0
  180. package/dist-server/engine/task/create-data-sample.js +81 -0
  181. package/dist-server/engine/task/create-data-sample.js.map +1 -0
  182. package/dist-server/engine/task/index.d.ts +2 -0
  183. package/dist-server/engine/task/index.js +5 -0
  184. package/dist-server/engine/task/index.js.map +1 -0
  185. package/dist-server/engine/task/issue-collect-data.d.ts +1 -0
  186. package/dist-server/engine/task/issue-collect-data.js +40 -0
  187. package/dist-server/engine/task/issue-collect-data.js.map +1 -0
  188. package/dist-server/index.d.ts +6 -0
  189. package/dist-server/index.js +10 -0
  190. package/dist-server/index.js.map +1 -0
  191. package/dist-server/routes.d.ts +1 -0
  192. package/dist-server/routes.js +140 -0
  193. package/dist-server/routes.js.map +1 -0
  194. package/dist-server/service/data-archive/data-archive-mutation.d.ts +16 -0
  195. package/dist-server/service/data-archive/data-archive-mutation.js +227 -0
  196. package/dist-server/service/data-archive/data-archive-mutation.js.map +1 -0
  197. package/dist-server/service/data-archive/data-archive-query.d.ts +11 -0
  198. package/dist-server/service/data-archive/data-archive-query.js +83 -0
  199. package/dist-server/service/data-archive/data-archive-query.js.map +1 -0
  200. package/dist-server/service/data-archive/data-archive-type.d.ts +23 -0
  201. package/dist-server/service/data-archive/data-archive-type.js +74 -0
  202. package/dist-server/service/data-archive/data-archive-type.js.map +1 -0
  203. package/dist-server/service/data-archive/data-archive.d.ts +19 -0
  204. package/dist-server/service/data-archive/data-archive.js +79 -0
  205. package/dist-server/service/data-archive/data-archive.js.map +1 -0
  206. package/dist-server/service/data-archive/index.d.ts +5 -0
  207. package/dist-server/service/data-archive/index.js +9 -0
  208. package/dist-server/service/data-archive/index.js.map +1 -0
  209. package/dist-server/service/data-key-set/data-key-item-type.d.ts +12 -0
  210. package/dist-server/service/data-key-set/data-key-item-type.js +50 -0
  211. package/dist-server/service/data-key-set/data-key-item-type.js.map +1 -0
  212. package/dist-server/service/data-key-set/data-key-set-mutation.d.ts +10 -0
  213. package/dist-server/service/data-key-set/data-key-set-mutation.js +168 -0
  214. package/dist-server/service/data-key-set/data-key-set-mutation.js.map +1 -0
  215. package/dist-server/service/data-key-set/data-key-set-query.d.ts +12 -0
  216. package/dist-server/service/data-key-set/data-key-set-query.js +98 -0
  217. package/dist-server/service/data-key-set/data-key-set-query.js.map +1 -0
  218. package/dist-server/service/data-key-set/data-key-set-type.d.ts +28 -0
  219. package/dist-server/service/data-key-set/data-key-set-type.js +100 -0
  220. package/dist-server/service/data-key-set/data-key-set-type.js.map +1 -0
  221. package/dist-server/service/data-key-set/data-key-set.d.ts +22 -0
  222. package/dist-server/service/data-key-set/data-key-set.js +99 -0
  223. package/dist-server/service/data-key-set/data-key-set.js.map +1 -0
  224. package/dist-server/service/data-key-set/index.d.ts +5 -0
  225. package/dist-server/service/data-key-set/index.js +9 -0
  226. package/dist-server/service/data-key-set/index.js.map +1 -0
  227. package/dist-server/service/data-ooc/data-ooc-mutation.d.ts +6 -0
  228. package/dist-server/service/data-ooc/data-ooc-mutation.js +81 -0
  229. package/dist-server/service/data-ooc/data-ooc-mutation.js.map +1 -0
  230. package/dist-server/service/data-ooc/data-ooc-query.d.ts +22 -0
  231. package/dist-server/service/data-ooc/data-ooc-query.js +165 -0
  232. package/dist-server/service/data-ooc/data-ooc-query.js.map +1 -0
  233. package/dist-server/service/data-ooc/data-ooc-subscription.d.ts +7 -0
  234. package/dist-server/service/data-ooc/data-ooc-subscription.js +51 -0
  235. package/dist-server/service/data-ooc/data-ooc-subscription.js.map +1 -0
  236. package/dist-server/service/data-ooc/data-ooc-type.d.ts +27 -0
  237. package/dist-server/service/data-ooc/data-ooc-type.js +102 -0
  238. package/dist-server/service/data-ooc/data-ooc-type.js.map +1 -0
  239. package/dist-server/service/data-ooc/data-ooc.d.ts +63 -0
  240. package/dist-server/service/data-ooc/data-ooc.js +304 -0
  241. package/dist-server/service/data-ooc/data-ooc.js.map +1 -0
  242. package/dist-server/service/data-ooc/index.d.ts +6 -0
  243. package/dist-server/service/data-ooc/index.js +10 -0
  244. package/dist-server/service/data-ooc/index.js.map +1 -0
  245. package/dist-server/service/data-sample/data-sample-mutation.d.ts +5 -0
  246. package/dist-server/service/data-sample/data-sample-mutation.js +28 -0
  247. package/dist-server/service/data-sample/data-sample-mutation.js.map +1 -0
  248. package/dist-server/service/data-sample/data-sample-query.d.ts +22 -0
  249. package/dist-server/service/data-sample/data-sample-query.js +249 -0
  250. package/dist-server/service/data-sample/data-sample-query.js.map +1 -0
  251. package/dist-server/service/data-sample/data-sample-type.d.ts +18 -0
  252. package/dist-server/service/data-sample/data-sample-type.js +68 -0
  253. package/dist-server/service/data-sample/data-sample-type.js.map +1 -0
  254. package/dist-server/service/data-sample/data-sample.d.ts +45 -0
  255. package/dist-server/service/data-sample/data-sample.js +221 -0
  256. package/dist-server/service/data-sample/data-sample.js.map +1 -0
  257. package/dist-server/service/data-sample/index.d.ts +5 -0
  258. package/dist-server/service/data-sample/index.js +9 -0
  259. package/dist-server/service/data-sample/index.js.map +1 -0
  260. package/dist-server/service/data-sensor/data-sensor-mutation.d.ts +9 -0
  261. package/dist-server/service/data-sensor/data-sensor-mutation.js +109 -0
  262. package/dist-server/service/data-sensor/data-sensor-mutation.js.map +1 -0
  263. package/dist-server/service/data-sensor/data-sensor-query.d.ts +16 -0
  264. package/dist-server/service/data-sensor/data-sensor-query.js +115 -0
  265. package/dist-server/service/data-sensor/data-sensor-query.js.map +1 -0
  266. package/dist-server/service/data-sensor/data-sensor-type.d.ts +38 -0
  267. package/dist-server/service/data-sensor/data-sensor-type.js +146 -0
  268. package/dist-server/service/data-sensor/data-sensor-type.js.map +1 -0
  269. package/dist-server/service/data-sensor/data-sensor.d.ts +31 -0
  270. package/dist-server/service/data-sensor/data-sensor.js +148 -0
  271. package/dist-server/service/data-sensor/data-sensor.js.map +1 -0
  272. package/dist-server/service/data-sensor/index.d.ts +5 -0
  273. package/dist-server/service/data-sensor/index.js +9 -0
  274. package/dist-server/service/data-sensor/index.js.map +1 -0
  275. package/dist-server/service/data-set/data-item-type.d.ts +62 -0
  276. package/dist-server/service/data-set/data-item-type.js +199 -0
  277. package/dist-server/service/data-set/data-item-type.js.map +1 -0
  278. package/dist-server/service/data-set/data-set-mutation.d.ts +20 -0
  279. package/dist-server/service/data-set/data-set-mutation.js +474 -0
  280. package/dist-server/service/data-set/data-set-mutation.js.map +1 -0
  281. package/dist-server/service/data-set/data-set-query.d.ts +39 -0
  282. package/dist-server/service/data-set/data-set-query.js +545 -0
  283. package/dist-server/service/data-set/data-set-query.js.map +1 -0
  284. package/dist-server/service/data-set/data-set-type.d.ts +75 -0
  285. package/dist-server/service/data-set/data-set-type.js +274 -0
  286. package/dist-server/service/data-set/data-set-type.js.map +1 -0
  287. package/dist-server/service/data-set/data-set.d.ts +95 -0
  288. package/dist-server/service/data-set/data-set.js +375 -0
  289. package/dist-server/service/data-set/data-set.js.map +1 -0
  290. package/dist-server/service/data-set/index.d.ts +5 -0
  291. package/dist-server/service/data-set/index.js +9 -0
  292. package/dist-server/service/data-set/index.js.map +1 -0
  293. package/dist-server/service/data-set-history/data-set-history-query.d.ts +21 -0
  294. package/dist-server/service/data-set-history/data-set-history-query.js +177 -0
  295. package/dist-server/service/data-set-history/data-set-history-query.js.map +1 -0
  296. package/dist-server/service/data-set-history/data-set-history-type.d.ts +5 -0
  297. package/dist-server/service/data-set-history/data-set-history-type.js +21 -0
  298. package/dist-server/service/data-set-history/data-set-history-type.js.map +1 -0
  299. package/dist-server/service/data-set-history/data-set-history.d.ts +53 -0
  300. package/dist-server/service/data-set-history/data-set-history.js +246 -0
  301. package/dist-server/service/data-set-history/data-set-history.js.map +1 -0
  302. package/dist-server/service/data-set-history/event-subscriber.d.ts +7 -0
  303. package/dist-server/service/data-set-history/event-subscriber.js +21 -0
  304. package/dist-server/service/data-set-history/event-subscriber.js.map +1 -0
  305. package/dist-server/service/data-set-history/index.d.ts +6 -0
  306. package/dist-server/service/data-set-history/index.js +10 -0
  307. package/dist-server/service/data-set-history/index.js.map +1 -0
  308. package/dist-server/service/data-spec/data-spec-manager.d.ts +10 -0
  309. package/dist-server/service/data-spec/data-spec-manager.js +20 -0
  310. package/dist-server/service/data-spec/data-spec-manager.js.map +1 -0
  311. package/dist-server/service/data-spec/data-spec-query.d.ts +5 -0
  312. package/dist-server/service/data-spec/data-spec-query.js +37 -0
  313. package/dist-server/service/data-spec/data-spec-query.js.map +1 -0
  314. package/dist-server/service/data-spec/data-spec.d.ts +19 -0
  315. package/dist-server/service/data-spec/data-spec.js +69 -0
  316. package/dist-server/service/data-spec/data-spec.js.map +1 -0
  317. package/dist-server/service/data-spec/index.d.ts +4 -0
  318. package/dist-server/service/data-spec/index.js +8 -0
  319. package/dist-server/service/data-spec/index.js.map +1 -0
  320. package/dist-server/service/data-summary/data-summary-mutation.d.ts +6 -0
  321. package/dist-server/service/data-summary/data-summary-mutation.js +72 -0
  322. package/dist-server/service/data-summary/data-summary-mutation.js.map +1 -0
  323. package/dist-server/service/data-summary/data-summary-query.d.ts +19 -0
  324. package/dist-server/service/data-summary/data-summary-query.js +214 -0
  325. package/dist-server/service/data-summary/data-summary-query.js.map +1 -0
  326. package/dist-server/service/data-summary/data-summary-type.d.ts +33 -0
  327. package/dist-server/service/data-summary/data-summary-type.js +137 -0
  328. package/dist-server/service/data-summary/data-summary-type.js.map +1 -0
  329. package/dist-server/service/data-summary/data-summary.d.ts +38 -0
  330. package/dist-server/service/data-summary/data-summary.js +200 -0
  331. package/dist-server/service/data-summary/data-summary.js.map +1 -0
  332. package/dist-server/service/data-summary/index.d.ts +6 -0
  333. package/dist-server/service/data-summary/index.js +10 -0
  334. package/dist-server/service/data-summary/index.js.map +1 -0
  335. package/dist-server/service/index.d.ts +14 -0
  336. package/dist-server/service/index.js +54 -0
  337. package/dist-server/service/index.js.map +1 -0
  338. package/dist-server/tsconfig.tsbuildinfo +1 -0
  339. package/dist-server/utils/config-resolver.d.ts +1 -0
  340. package/dist-server/utils/config-resolver.js +32 -0
  341. package/dist-server/utils/config-resolver.js.map +1 -0
  342. package/dist-server/utils/index.d.ts +1 -0
  343. package/dist-server/utils/index.js +5 -0
  344. package/dist-server/utils/index.js.map +1 -0
  345. package/package.json +13 -13
@@ -0,0 +1,1048 @@
1
+ import { __asyncGenerator, __await, __decorate, __metadata } from "tslib";
2
+ import '@material/web/icon/icon.js';
3
+ import '@operato/data-grist';
4
+ import '@operato/context/ox-context-page-toolbar.js';
5
+ import './data-item-list.js';
6
+ import './data-set-importer.js';
7
+ import '../../components/data-entry-form.js';
8
+ import gql from 'graphql-tag';
9
+ import { css, html } from 'lit';
10
+ import { customElement, query, state } from 'lit/decorators.js';
11
+ import { asyncReplace } from 'lit/directives/async-replace.js';
12
+ import moment from '@operato/moment-timezone-es';
13
+ import { connect } from 'pwa-helpers/connect-mixin';
14
+ import { DataGrist, getEditor, getRenderer } from '@operato/data-grist';
15
+ import { OxDataUseCase } from '@operato/dataset';
16
+ import { client } from '@operato/graphql';
17
+ import { i18next, localize } from '@operato/i18n';
18
+ import { notify, openPopup } from '@operato/layout';
19
+ import { PageView, store } from '@operato/shell';
20
+ import { CommonGristStyles, CommonHeaderStyles, ScrollbarStyles } from '@operato/styles';
21
+ import { isMobileDevice, sleep } from '@operato/utils';
22
+ import { p13n } from '@operato/p13n';
23
+ const MIN = 60;
24
+ const HOUR = 60 * MIN;
25
+ const DAY = 24 * HOUR;
26
+ function getSystemTimeZone() {
27
+ try {
28
+ const timeZone = Intl.DateTimeFormat().resolvedOptions().timeZone;
29
+ if (!timeZone) {
30
+ throw new Error('Unable to resolve timeZone');
31
+ }
32
+ return timeZone;
33
+ }
34
+ catch (e) {
35
+ console.warn('Failed to get system timeZone, falling back to UTC.', e);
36
+ return 'UTC';
37
+ }
38
+ }
39
+ const DEFAULT_TZ = getSystemTimeZone();
40
+ const TIMEZONE_OPTIONS = ['', DEFAULT_TZ, ...moment.tz.names().filter(tz => tz !== DEFAULT_TZ)];
41
+ const ENTRY_TYPES = [
42
+ { display: '', value: '' },
43
+ { display: 'Generated', value: 'generated' },
44
+ { display: 'Board', value: 'board' },
45
+ { display: 'CustomElement', value: 'custom-element' },
46
+ { display: 'Page', value: 'page' },
47
+ { display: 'External URL', value: 'external' }
48
+ ];
49
+ const MONITOR_TYPES = [
50
+ { display: '', value: '' },
51
+ { display: 'Generated', value: 'generated' },
52
+ { display: 'Board', value: 'board' },
53
+ { display: 'CustomElement', value: 'custom-element' },
54
+ { display: 'Page', value: 'page' },
55
+ { display: 'External URL', value: 'external' }
56
+ ];
57
+ const REPORT_TYPES = [
58
+ { display: '', value: '' },
59
+ { display: 'Generated', value: 'generated' },
60
+ { display: 'Embed', value: 'embed' },
61
+ { display: 'CustomElement', value: 'custom-element' },
62
+ { display: 'Page', value: 'page' },
63
+ { display: 'External URL', value: 'external' },
64
+ { display: 'Jasper', value: 'jasper' },
65
+ { display: 'Shiny', value: 'shiny' }
66
+ ];
67
+ const SUMMARY_PERIOD_TYPES = [
68
+ { display: '', value: '' },
69
+ { display: 'Hour', value: 'hour' },
70
+ { display: 'WorkShift', value: 'work-shift' },
71
+ { display: 'WorkDate', value: 'work-date' },
72
+ { display: 'Day', value: 'day' }
73
+ ];
74
+ const USECASE_OPTIONS = () => {
75
+ return ['', ...OxDataUseCase.getUseCaseNames()].map(name => {
76
+ return {
77
+ display: name,
78
+ value: name
79
+ };
80
+ });
81
+ };
82
+ let DataSetListPage = class DataSetListPage extends connect(store)(p13n(localize(i18next)(PageView))) {
83
+ constructor() {
84
+ super(...arguments);
85
+ this.mode = isMobileDevice() ? 'CARD' : 'GRID';
86
+ }
87
+ get context() {
88
+ var _a;
89
+ return {
90
+ title: i18next.t('title.data-set list'),
91
+ search: {
92
+ handler: (search) => {
93
+ this.grist.searchText = search;
94
+ },
95
+ value: ((_a = this.grist) === null || _a === void 0 ? void 0 : _a.searchText) || ''
96
+ },
97
+ filter: {
98
+ handler: () => {
99
+ this.grist.toggleHeadroom();
100
+ }
101
+ },
102
+ help: 'dataset/data-set',
103
+ exportable: {
104
+ name: i18next.t('title.data-set list'),
105
+ data: this.exportHandler.bind(this)
106
+ },
107
+ importable: {
108
+ handler: this.importHandler.bind(this)
109
+ },
110
+ actions: [
111
+ {
112
+ title: i18next.t('button.save'),
113
+ action: this._updateDataSet.bind(this),
114
+ icon: 'save'
115
+ },
116
+ {
117
+ title: i18next.t('button.copy'),
118
+ action: this._copyDataSet.bind(this),
119
+ icon: 'content_copy'
120
+ },
121
+ {
122
+ title: i18next.t('button.delete'),
123
+ action: this._deleteDataSet.bind(this),
124
+ icon: 'delete',
125
+ emphasis: {
126
+ danger: true
127
+ }
128
+ }
129
+ ],
130
+ toolbar: false
131
+ };
132
+ }
133
+ render() {
134
+ const mode = this.mode || (isMobileDevice() ? 'CARD' : 'GRID');
135
+ return html `
136
+ <ox-grist
137
+ .mode=${mode}
138
+ .config=${this.gristConfig}
139
+ .personalConfigProvider=${this.getPagePreferenceProvider('ox-grist')}
140
+ .fetchHandler=${this.fetchHandler.bind(this)}
141
+ ?url-params-sensitive=${this.active}
142
+ >
143
+ <div slot="headroom" class="header">
144
+ <div class="filters">
145
+ <ox-filters-form autofocus without-search></ox-filters-form>
146
+ </div>
147
+
148
+ <ox-context-page-toolbar class="actions" .context=${this.context}> </ox-context-page-toolbar>
149
+ </div>
150
+
151
+ <ox-grist-personalizer slot="setting"></ox-grist-personalizer>
152
+ </ox-grist>
153
+ `;
154
+ }
155
+ async pageInitialized(lifecycle) {
156
+ this.gristConfig = {
157
+ list: {
158
+ fields: ['name', 'description'],
159
+ details: ['schedule', 'active', 'tag']
160
+ },
161
+ columns: [
162
+ { type: 'gutter', gutterName: 'sequence', fixed: true },
163
+ { type: 'gutter', gutterName: 'row-selector', multiple: true, fixed: true },
164
+ {
165
+ type: 'gutter',
166
+ gutterName: 'button',
167
+ icon: record => (!record ? 'calendar_add_on' : !record.id || !record.scheduleId ? '' : 'event_available'),
168
+ title: i18next.t('button.schedule-task'),
169
+ handlers: {
170
+ click: (columns, data, column, record, rowIndex) => {
171
+ if (!record || !record.id || (!record.scheduleId && !record.schedule)) {
172
+ return;
173
+ }
174
+ if (record.scheduleId) {
175
+ this.stopDataCollectionSchedule(record);
176
+ }
177
+ else {
178
+ this.startDataCollectionSchedule(record);
179
+ }
180
+ }
181
+ }
182
+ },
183
+ {
184
+ type: 'gutter',
185
+ gutterName: 'button',
186
+ title: record => !record ? i18next.t('button.edit-model') : !record.id ? '' : i18next.t('button.edit-model'),
187
+ icon: record => (!record ? 'reorder' : !record.id ? '' : 'reorder'),
188
+ iconOnly: false,
189
+ width: 96,
190
+ fixed: true,
191
+ handlers: {
192
+ click: (columns, data, column, record, rowIndex) => {
193
+ if (!record.id)
194
+ return;
195
+ const popup = openPopup(html ` <data-item-list .dataSet=${record}></data-item-list> `, {
196
+ backdrop: true,
197
+ help: 'dataset/ui/data-item-list',
198
+ size: 'large',
199
+ title: i18next.t('title.data-item list')
200
+ });
201
+ popup.onclosed = () => {
202
+ this.grist.fetch();
203
+ };
204
+ }
205
+ }
206
+ },
207
+ {
208
+ type: 'gutter',
209
+ gutterName: 'button',
210
+ icon: record => (!record ? 'fact_check' : !record.id ? '' : 'fact_check'),
211
+ iconOnly: false,
212
+ width: 96,
213
+ fixed: true,
214
+ title: record => !record ? i18next.t('button.enter-data') : !record.id ? '' : i18next.t('button.enter-data'),
215
+ handlers: {
216
+ click: (columns, data, column, record, rowIndex) => {
217
+ openPopup(html ` <data-entry-form .dataSet=${record} style="background-color: white;"></data-entry-form> `, {
218
+ backdrop: true,
219
+ size: 'large',
220
+ title: i18next.t('title.data-entry-form')
221
+ });
222
+ }
223
+ }
224
+ },
225
+ {
226
+ type: 'string',
227
+ name: 'name',
228
+ header: i18next.t('field.name'),
229
+ record: {
230
+ editable: true
231
+ },
232
+ filter: 'search',
233
+ sortable: true,
234
+ fixed: true,
235
+ width: 150,
236
+ imex: {
237
+ width: 25,
238
+ header: i18next.t('field.name'),
239
+ type: 'string',
240
+ key: 'name'
241
+ }
242
+ },
243
+ {
244
+ type: 'string',
245
+ name: 'description',
246
+ header: i18next.t('field.description'),
247
+ record: {
248
+ editable: true
249
+ },
250
+ filter: 'search',
251
+ width: 200,
252
+ imex: {
253
+ width: 33,
254
+ header: i18next.t('field.description'),
255
+ type: 'string',
256
+ key: 'description'
257
+ }
258
+ },
259
+ {
260
+ type: 'varname',
261
+ name: 'tag',
262
+ header: i18next.t('field.tag'),
263
+ record: {
264
+ editable: true
265
+ },
266
+ filter: 'search',
267
+ width: 120,
268
+ imex: {
269
+ width: 25,
270
+ header: i18next.t('field.tag'),
271
+ type: 'string',
272
+ key: 'tag'
273
+ }
274
+ },
275
+ {
276
+ type: 'checkbox',
277
+ name: 'active',
278
+ label: true,
279
+ header: i18next.t('field.active'),
280
+ record: {
281
+ editable: true
282
+ },
283
+ filter: true,
284
+ sortable: true,
285
+ width: 60,
286
+ imex: {
287
+ width: 10,
288
+ header: i18next.t('field.active'),
289
+ type: 'checkbox',
290
+ key: 'active'
291
+ }
292
+ },
293
+ {
294
+ type: 'select',
295
+ name: 'type',
296
+ label: true,
297
+ header: i18next.t('field.type'),
298
+ record: {
299
+ editable: true,
300
+ options: [
301
+ {},
302
+ {
303
+ display: i18next.t('text.manually collected'),
304
+ value: 'manual'
305
+ },
306
+ {
307
+ display: i18next.t('text.automatically collected'),
308
+ value: 'automatic'
309
+ }
310
+ ]
311
+ },
312
+ sortable: true,
313
+ filter: true,
314
+ width: 60,
315
+ imex: {
316
+ width: 10,
317
+ header: i18next.t('field.type'),
318
+ type: 'select',
319
+ key: 'type'
320
+ }
321
+ },
322
+ {
323
+ type: 'select',
324
+ name: 'useCase',
325
+ label: true,
326
+ header: i18next.t('field.use-case'),
327
+ record: {
328
+ editable: true,
329
+ options: USECASE_OPTIONS
330
+ },
331
+ sortable: true,
332
+ filter: true,
333
+ width: 80
334
+ },
335
+ {
336
+ type: 'resource-object',
337
+ name: 'dataKeySet',
338
+ header: i18next.t('field.data-key-set'),
339
+ record: {
340
+ editable: true,
341
+ options: {
342
+ queryName: 'dataKeySets'
343
+ }
344
+ },
345
+ filter: false,
346
+ width: 120
347
+ },
348
+ {
349
+ type: 'partition-keys',
350
+ name: 'partitionKeys',
351
+ header: i18next.t('field.partition-keys'),
352
+ record: {
353
+ editable: true,
354
+ options: {
355
+ objectified: true /* transfered as a object type */
356
+ }
357
+ },
358
+ width: 80
359
+ },
360
+ {
361
+ type: 'select',
362
+ name: 'timezone',
363
+ header: i18next.t('field.timezone'),
364
+ record: {
365
+ editable: true,
366
+ options: TIMEZONE_OPTIONS
367
+ },
368
+ width: 120,
369
+ imex: {
370
+ width: 13,
371
+ header: i18next.t('field.timezone'),
372
+ type: 'select',
373
+ key: 'timezone'
374
+ }
375
+ },
376
+ {
377
+ type: 'crontab',
378
+ name: 'schedule',
379
+ label: true,
380
+ header: i18next.t('field.schedule'),
381
+ record: {
382
+ editable: true,
383
+ options: {
384
+ objectified: true
385
+ }
386
+ },
387
+ width: 80,
388
+ imex: {
389
+ width: 13,
390
+ header: i18next.t('field.schedule'),
391
+ type: 'string',
392
+ key: 'schedule'
393
+ }
394
+ },
395
+ {
396
+ type: 'select',
397
+ name: 'summaryPeriod',
398
+ label: true,
399
+ header: i18next.t('field.summary-period'),
400
+ record: {
401
+ editable: true,
402
+ options: SUMMARY_PERIOD_TYPES
403
+ },
404
+ width: 80
405
+ },
406
+ {
407
+ type: 'string',
408
+ name: 'nextSummarySchedule',
409
+ header: i18next.t('field.next-summary-schedule'),
410
+ record: {
411
+ editable: false,
412
+ renderer: (value, column, record, rowIndex, field) => {
413
+ return html ` <span>${asyncReplace(this.summaryScheduleTimer(record.dueAt))}</span>`;
414
+ }
415
+ },
416
+ sortable: false,
417
+ width: 140
418
+ },
419
+ {
420
+ type: 'duration',
421
+ name: 'timeLimit',
422
+ header: i18next.t('field.time-limit'),
423
+ record: {
424
+ editable: true
425
+ },
426
+ width: 80
427
+ },
428
+ {
429
+ type: 'resource-object',
430
+ name: 'normalScenario',
431
+ header: {
432
+ renderer: i18next.t('field.normal-scenario'),
433
+ group: i18next.t('text.scenario')
434
+ },
435
+ record: {
436
+ editable: true,
437
+ options: {
438
+ title: i18next.t('title.lookup scenario'),
439
+ queryName: 'scenarios',
440
+ columns: [
441
+ { name: 'id', hidden: true },
442
+ { name: 'name', header: i18next.t('field.name'), filter: 'search' },
443
+ { name: 'description', header: i18next.t('field.description'), filter: 'search' }
444
+ ],
445
+ list: { fields: ['name', 'description'] }
446
+ }
447
+ },
448
+ sortable: true,
449
+ filter: false,
450
+ width: 120
451
+ },
452
+ {
453
+ type: 'resource-object',
454
+ name: 'outlierScenario',
455
+ header: {
456
+ renderer: i18next.t('field.outlier-scenario'),
457
+ group: i18next.t('text.scenario')
458
+ },
459
+ record: {
460
+ editable: true,
461
+ options: {
462
+ title: i18next.t('title.lookup scenario'),
463
+ queryName: 'scenarios',
464
+ columns: [
465
+ { name: 'id', hidden: true },
466
+ { name: 'name', header: i18next.t('field.name'), filter: 'search' },
467
+ { name: 'description', header: i18next.t('field.description'), filter: 'search' }
468
+ ],
469
+ list: { fields: ['name', 'description'] }
470
+ }
471
+ },
472
+ sortable: true,
473
+ filter: false,
474
+ width: 120
475
+ },
476
+ {
477
+ type: 'resource-object',
478
+ name: 'supervisoryRole',
479
+ header: {
480
+ renderer: i18next.t('field.supervisory-role'),
481
+ group: i18next.t('field.role')
482
+ },
483
+ record: {
484
+ editable: true,
485
+ options: {
486
+ title: i18next.t('title.lookup role'),
487
+ queryName: 'roles'
488
+ }
489
+ },
490
+ filter: false,
491
+ width: 120
492
+ },
493
+ {
494
+ type: 'resource-object',
495
+ name: 'entryRole',
496
+ header: {
497
+ renderer: i18next.t('field.entry-role'),
498
+ group: i18next.t('field.role')
499
+ },
500
+ record: {
501
+ editable: true,
502
+ options: {
503
+ title: i18next.t('title.lookup role'),
504
+ queryName: 'roles'
505
+ }
506
+ },
507
+ width: 120
508
+ },
509
+ {
510
+ type: 'resource-object',
511
+ name: 'resolverRole',
512
+ header: {
513
+ renderer: i18next.t('field.resolver-role'),
514
+ group: i18next.t('field.role')
515
+ },
516
+ record: {
517
+ editable: true,
518
+ options: {
519
+ title: i18next.t('title.lookup role'),
520
+ queryName: 'roles'
521
+ }
522
+ },
523
+ filter: false,
524
+ width: 120
525
+ },
526
+ {
527
+ type: 'approval-line',
528
+ name: 'reviewApprovalLine',
529
+ header: {
530
+ renderer: i18next.t('field.review-approval-line'),
531
+ group: i18next.t('field.role')
532
+ },
533
+ record: {
534
+ editable: true
535
+ },
536
+ width: 80
537
+ },
538
+ {
539
+ type: 'approval-line',
540
+ name: 'outlierApprovalLine',
541
+ header: {
542
+ renderer: i18next.t('field.outlier-approval-line'),
543
+ group: i18next.t('field.role')
544
+ },
545
+ record: {
546
+ editable: true
547
+ },
548
+ width: 80
549
+ },
550
+ {
551
+ type: 'checkbox',
552
+ name: 'requiresReview',
553
+ label: true,
554
+ header: {
555
+ renderer: i18next.t('field.requires-review'),
556
+ group: i18next.t('field.role')
557
+ },
558
+ record: {
559
+ editable: true
560
+ },
561
+ filter: true,
562
+ width: 60,
563
+ imex: {
564
+ width: 10,
565
+ header: i18next.t('field.requires-review'),
566
+ type: 'checkbox',
567
+ key: 'requiresReview'
568
+ }
569
+ },
570
+ {
571
+ type: 'select',
572
+ name: 'entryType',
573
+ label: true,
574
+ header: {
575
+ renderer: i18next.t('field.entry-type'),
576
+ group: i18next.t('field.view')
577
+ },
578
+ record: {
579
+ editable: true,
580
+ options: ENTRY_TYPES
581
+ },
582
+ width: 80
583
+ },
584
+ {
585
+ type: 'string',
586
+ name: 'entryView',
587
+ header: {
588
+ renderer: i18next.t('field.entry-view'),
589
+ group: i18next.t('field.view')
590
+ },
591
+ record: {
592
+ editable: true,
593
+ editor: function (value, column, record, rowIndex, field) {
594
+ var type = record.entryType !== 'board' ? 'string' : 'board';
595
+ return getEditor(type)(value, column, record, rowIndex, field);
596
+ },
597
+ renderer: function (value, column, record, rowIndex, field) {
598
+ var type = record.entryType !== 'board' ? 'string' : 'board';
599
+ return getRenderer(type)(value, column, record, rowIndex, field);
600
+ }
601
+ },
602
+ width: 140
603
+ },
604
+ {
605
+ type: 'select',
606
+ name: 'monitorType',
607
+ label: true,
608
+ header: {
609
+ renderer: i18next.t('field.monitor-type'),
610
+ group: i18next.t('field.view')
611
+ },
612
+ record: {
613
+ editable: true,
614
+ options: MONITOR_TYPES
615
+ },
616
+ width: 80
617
+ },
618
+ {
619
+ type: 'string',
620
+ name: 'monitorView',
621
+ header: {
622
+ renderer: i18next.t('field.monitor-view'),
623
+ group: i18next.t('field.view')
624
+ },
625
+ record: {
626
+ editable: true,
627
+ editor: function (value, column, record, rowIndex, field) {
628
+ var type = record.monitorType !== 'board' ? 'string' : 'board';
629
+ return getEditor(type)(value, column, record, rowIndex, field);
630
+ },
631
+ renderer: function (value, column, record, rowIndex, field) {
632
+ var type = record.monitorType !== 'board' ? 'string' : 'board';
633
+ return getRenderer(type)(value, column, record, rowIndex, field);
634
+ }
635
+ },
636
+ width: 140
637
+ },
638
+ {
639
+ type: 'select',
640
+ name: 'reportType',
641
+ label: true,
642
+ header: {
643
+ renderer: i18next.t('field.report-type'),
644
+ group: i18next.t('field.view')
645
+ },
646
+ record: {
647
+ editable: true,
648
+ options: REPORT_TYPES
649
+ },
650
+ width: 80
651
+ },
652
+ {
653
+ type: 'string',
654
+ name: 'reportView',
655
+ header: {
656
+ renderer: i18next.t('field.report-view'),
657
+ group: i18next.t('field.view')
658
+ },
659
+ record: {
660
+ editable: true,
661
+ editor: function (value, column, record, rowIndex, field) {
662
+ var type = record.reportType !== 'custom' ? 'string' : 'script';
663
+ return getEditor(type)(value, column, record, rowIndex, field);
664
+ },
665
+ renderer: function (value, column, record, rowIndex, field) {
666
+ var type = record.reportType !== 'custom' ? 'string' : 'string';
667
+ return getRenderer(type)(value, column, record, rowIndex, field);
668
+ }
669
+ },
670
+ width: 140
671
+ },
672
+ {
673
+ type: 'file',
674
+ name: 'reportTemplate',
675
+ header: {
676
+ renderer: i18next.t('field.report-template'),
677
+ group: i18next.t('field.view')
678
+ },
679
+ record: {
680
+ editable: true
681
+ },
682
+ width: 80
683
+ },
684
+ {
685
+ type: 'resource-object',
686
+ name: 'updater',
687
+ header: i18next.t('field.updater'),
688
+ record: {
689
+ editable: false
690
+ },
691
+ width: 120
692
+ },
693
+ {
694
+ type: 'datetime',
695
+ name: 'updatedAt',
696
+ header: i18next.t('field.updated_at'),
697
+ record: {
698
+ editable: false
699
+ },
700
+ sortable: true,
701
+ width: 180
702
+ }
703
+ ],
704
+ rows: {
705
+ selectable: {
706
+ multiple: true
707
+ }
708
+ },
709
+ sorters: [
710
+ {
711
+ name: 'name'
712
+ }
713
+ ]
714
+ };
715
+ }
716
+ async fetchHandler({ page, limit, sortings = [], filters = [] }) {
717
+ const response = await client.query({
718
+ query: gql `
719
+ query ($filters: [Filter!], $pagination: Pagination, $sortings: [Sorting!]) {
720
+ responses: dataSets(filters: $filters, pagination: $pagination, sortings: $sortings) {
721
+ items {
722
+ id
723
+ name
724
+ description
725
+ tag
726
+ partitionKeys
727
+ active
728
+ type
729
+ useCase
730
+ schedule
731
+ timezone
732
+ scheduleId
733
+ summaryPeriod
734
+ summaryScheduleId
735
+ timeLimit
736
+ dataKeySet {
737
+ id
738
+ name
739
+ }
740
+ entryRole {
741
+ id
742
+ name
743
+ }
744
+ supervisoryRole {
745
+ id
746
+ name
747
+ }
748
+ resolverRole {
749
+ id
750
+ name
751
+ }
752
+ normalScenario {
753
+ id
754
+ name
755
+ }
756
+ outlierScenario {
757
+ id
758
+ name
759
+ }
760
+ reviewApprovalLine {
761
+ type
762
+ value
763
+ approver {
764
+ id
765
+ name
766
+ description
767
+ controlNo
768
+ }
769
+ }
770
+ outlierApprovalLine {
771
+ type
772
+ value
773
+ approver {
774
+ id
775
+ name
776
+ description
777
+ controlNo
778
+ }
779
+ }
780
+ requiresReview
781
+ entryType
782
+ entryView
783
+ monitorType
784
+ monitorView
785
+ reportType
786
+ reportView
787
+ reportTemplate
788
+ updater {
789
+ id
790
+ name
791
+ }
792
+ updatedAt
793
+ dataItems {
794
+ name
795
+ description
796
+ active
797
+ hidden
798
+ tag
799
+ group
800
+ subgroup
801
+ type
802
+ unit
803
+ options
804
+ quota
805
+ spec
806
+ stat
807
+ agg
808
+ }
809
+ }
810
+ total
811
+ }
812
+ }
813
+ `,
814
+ variables: {
815
+ filters,
816
+ pagination: { page, limit },
817
+ sortings
818
+ }
819
+ });
820
+ return {
821
+ total: response.data.responses.total || 0,
822
+ records: response.data.responses.items || []
823
+ };
824
+ }
825
+ async _deleteDataSet() {
826
+ if (confirm(i18next.t('text.sure_to_x', { x: i18next.t('text.delete') }))) {
827
+ const ids = this.grist.selected.map(record => record.id);
828
+ if (ids && ids.length > 0) {
829
+ const response = await client.mutate({
830
+ mutation: gql `
831
+ mutation ($ids: [String!]!) {
832
+ deleteDataSets(ids: $ids)
833
+ }
834
+ `,
835
+ variables: {
836
+ ids
837
+ }
838
+ });
839
+ if (!response.errors) {
840
+ this.grist.fetch();
841
+ notify({
842
+ message: i18next.t('text.info_x_successfully', { x: i18next.t('text.delete') })
843
+ });
844
+ }
845
+ }
846
+ }
847
+ }
848
+ async _copyDataSet() {
849
+ var selected = this.grist.selected;
850
+ if (selected.length == 0)
851
+ return;
852
+ if (!confirm(i18next.t('text.sure_to_x', { x: i18next.t('text.copy') })))
853
+ return;
854
+ var response = await client.mutate({
855
+ mutation: gql `
856
+ mutation ($ids: [String!]!) {
857
+ copyDataSets(ids: $ids) {
858
+ id
859
+ }
860
+ }
861
+ `,
862
+ variables: {
863
+ ids: selected.map(r => r.id)
864
+ }
865
+ });
866
+ if (!response.errors) {
867
+ this.grist.fetch();
868
+ }
869
+ }
870
+ async _updateDataSet() {
871
+ let patches = this.grist.dirtyRecords;
872
+ if (patches && patches.length) {
873
+ patches = patches.map(patch => {
874
+ let patchField = patch.id ? { id: patch.id } : {};
875
+ const dirtyFields = patch.__dirtyfields__;
876
+ for (let key in dirtyFields) {
877
+ patchField[key] = dirtyFields[key].after;
878
+ }
879
+ if (patchField['reportTemplate'] instanceof FileList) {
880
+ patchField['reportTemplate'] = patchField['reportTemplate'][0];
881
+ }
882
+ patchField.cuFlag = patch.__dirty__;
883
+ return patchField;
884
+ });
885
+ const response = await client.mutate({
886
+ mutation: gql `
887
+ mutation ($patches: [DataSetPatch!]!) {
888
+ updateMultipleDataSet(patches: $patches) {
889
+ name
890
+ }
891
+ }
892
+ `,
893
+ variables: {
894
+ patches
895
+ },
896
+ context: {
897
+ hasUpload: true
898
+ }
899
+ });
900
+ if (!response.errors) {
901
+ this.grist.fetch();
902
+ }
903
+ }
904
+ }
905
+ async startDataCollectionSchedule(record) {
906
+ var response = await client.mutate({
907
+ mutation: gql `
908
+ mutation ($dataSetId: String!) {
909
+ startDataCollectionSchedule(dataSetId: $dataSetId) {
910
+ scheduleId
911
+ }
912
+ }
913
+ `,
914
+ variables: {
915
+ dataSetId: record.id
916
+ }
917
+ });
918
+ const scheduleId = response.data.startDataCollectionSchedule.scheduleId;
919
+ record.scheduleId = scheduleId;
920
+ notify({
921
+ level: 'info',
922
+ message: `${record.scheduleId ? 'success' : 'fail'} to start data collection schedule : ${record.name}`
923
+ });
924
+ this.grist.fetch();
925
+ }
926
+ async stopDataCollectionSchedule(record) {
927
+ var response = await client.mutate({
928
+ mutation: gql `
929
+ mutation ($dataSetId: String!) {
930
+ stopDataCollectionSchedule(dataSetId: $dataSetId) {
931
+ scheduleId
932
+ }
933
+ }
934
+ `,
935
+ variables: {
936
+ dataSetId: record.id
937
+ }
938
+ });
939
+ if (!response.errors) {
940
+ notify({
941
+ level: 'info',
942
+ message: `success to stop data collection schedule : ${record.name}`
943
+ });
944
+ }
945
+ else {
946
+ notify({
947
+ level: 'error',
948
+ message: `${response.errors.map(error => error.message).join('\n')}`
949
+ });
950
+ }
951
+ this.grist.fetch();
952
+ }
953
+ async exportHandler() {
954
+ var headerSetting = this.grist._config.columns
955
+ .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
956
+ .map(column => {
957
+ return column.imex;
958
+ });
959
+ let records = this.grist.data.records;
960
+ var data = records.map(item => {
961
+ return Object.assign({ id: item.id }, this.grist._config.columns
962
+ .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
963
+ .reduce((record, column) => {
964
+ var imexKey = column.imex.key;
965
+ record[imexKey] = imexKey
966
+ .split('.')
967
+ .reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item);
968
+ return record;
969
+ }, {}));
970
+ });
971
+ return { header: headerSetting, data: data };
972
+ }
973
+ async importHandler(records) {
974
+ openPopup(html `
975
+ <data-set-importer
976
+ .dataSets=${records}
977
+ @imported=${() => {
978
+ history.back();
979
+ this.grist.fetch();
980
+ }}
981
+ ></data-set-importer>
982
+ `, {
983
+ backdrop: true,
984
+ size: 'large',
985
+ title: i18next.t('title.import data-set')
986
+ });
987
+ }
988
+ summaryScheduleTimer(exp) {
989
+ return __asyncGenerator(this, arguments, function* summaryScheduleTimer_1() {
990
+ while (exp && this.active) {
991
+ var secs = Math.round((Number(exp) - Date.now()) / 1000);
992
+ var positive = secs >= 0;
993
+ secs = Math.abs(secs);
994
+ const days = Math.floor(secs / DAY);
995
+ secs -= days * DAY;
996
+ const hours = Math.floor(secs / HOUR);
997
+ secs -= hours * HOUR;
998
+ const minutes = Math.floor(secs / MIN);
999
+ const seconds = secs - minutes * MIN;
1000
+ yield yield __await(`${positive ? '' : '- '}${days ? `${days}${i18next.t('label.days')} ` : ''}${hours ? `${hours}${i18next.t('label.hours')} ` : ''}${minutes ? `${minutes}${i18next.t('label.minutes')} ` : ''}`);
1001
+ yield __await(sleep(60 * 1000));
1002
+ }
1003
+ });
1004
+ }
1005
+ };
1006
+ DataSetListPage.styles = [
1007
+ ScrollbarStyles,
1008
+ CommonGristStyles,
1009
+ CommonHeaderStyles,
1010
+ css `
1011
+ :host {
1012
+ display: flex;
1013
+
1014
+ width: 100%;
1015
+
1016
+ --grid-record-emphasized-background-color: #8b0000;
1017
+ --grid-record-emphasized-color: #ff6b6b;
1018
+
1019
+ --grid-header-padding: 2px 0 2px 9px;
1020
+ }
1021
+
1022
+ ox-grist {
1023
+ overflow-y: auto;
1024
+ flex: 1;
1025
+ }
1026
+
1027
+ .header {
1028
+ grid-template-areas: 'filters actions';
1029
+ }
1030
+ `
1031
+ ];
1032
+ __decorate([
1033
+ state(),
1034
+ __metadata("design:type", Object)
1035
+ ], DataSetListPage.prototype, "gristConfig", void 0);
1036
+ __decorate([
1037
+ state(),
1038
+ __metadata("design:type", String)
1039
+ ], DataSetListPage.prototype, "mode", void 0);
1040
+ __decorate([
1041
+ query('ox-grist'),
1042
+ __metadata("design:type", DataGrist)
1043
+ ], DataSetListPage.prototype, "grist", void 0);
1044
+ DataSetListPage = __decorate([
1045
+ customElement('data-set-list-page')
1046
+ ], DataSetListPage);
1047
+ export { DataSetListPage };
1048
+ //# sourceMappingURL=data-set-list-page.js.map