ezekiel-cli 5.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (854) hide show
  1. package/.editorconfig +24 -0
  2. package/.eslintrc +40 -0
  3. package/.prettierignore +1 -0
  4. package/README.md +139 -0
  5. package/bin/insites-cli-archive.js +35 -0
  6. package/bin/insites-cli-audit.js +5 -0
  7. package/bin/insites-cli-data-clean.js +69 -0
  8. package/bin/insites-cli-data-export.js +111 -0
  9. package/bin/insites-cli-data-import.js +105 -0
  10. package/bin/insites-cli-data.js +15 -0
  11. package/bin/insites-cli-deploy.js +43 -0
  12. package/bin/insites-cli-env-add.js +107 -0
  13. package/bin/insites-cli-env-list.js +22 -0
  14. package/bin/insites-cli-env.js +12 -0
  15. package/bin/insites-cli-gui-serve.js +47 -0
  16. package/bin/insites-cli-gui.js +8 -0
  17. package/bin/insites-cli-init.js +44 -0
  18. package/bin/insites-cli-logs.js +124 -0
  19. package/bin/insites-cli-logsv2-alerts-add.js +34 -0
  20. package/bin/insites-cli-logsv2-alerts-list.js +24 -0
  21. package/bin/insites-cli-logsv2-alerts-trigger.js +25 -0
  22. package/bin/insites-cli-logsv2-alerts.js +11 -0
  23. package/bin/insites-cli-logsv2-reports.js +36 -0
  24. package/bin/insites-cli-logsv2-search.js +40 -0
  25. package/bin/insites-cli-logsv2-searchAround.js +29 -0
  26. package/bin/insites-cli-logsv2.js +11 -0
  27. package/bin/insites-cli-modules-init.js +54 -0
  28. package/bin/insites-cli-modules-list.js +28 -0
  29. package/bin/insites-cli-modules-pull.js +43 -0
  30. package/bin/insites-cli-modules-remove.js +26 -0
  31. package/bin/insites-cli-modules-version.js +60 -0
  32. package/bin/insites-cli-modules.js +13 -0
  33. package/bin/insites-cli-pull.js +42 -0
  34. package/bin/insites-cli-sync.js +30 -0
  35. package/bin/insites-cli.js +53 -0
  36. package/gui/graphql/babel.config.js +21 -0
  37. package/gui/graphql/package-lock.json +4772 -0
  38. package/gui/graphql/package.json +28 -0
  39. package/gui/graphql/public/105.js +7 -0
  40. package/gui/graphql/public/178.js +1 -0
  41. package/gui/graphql/public/198.js +1 -0
  42. package/gui/graphql/public/441.js +4 -0
  43. package/gui/graphql/public/471.js +1 -0
  44. package/gui/graphql/public/480.js +24 -0
  45. package/gui/graphql/public/481.js +1 -0
  46. package/gui/graphql/public/571.js +12 -0
  47. package/gui/graphql/public/573.js +8 -0
  48. package/gui/graphql/public/574.js +1 -0
  49. package/gui/graphql/public/584.js +38 -0
  50. package/gui/graphql/public/588.js +1 -0
  51. package/gui/graphql/public/662.js +8 -0
  52. package/gui/graphql/public/724.js +1 -0
  53. package/gui/graphql/public/739.js +1 -0
  54. package/gui/graphql/public/744.js +1 -0
  55. package/gui/graphql/public/768.js +1 -0
  56. package/gui/graphql/public/79.js +1 -0
  57. package/gui/graphql/public/845.js +2 -0
  58. package/gui/graphql/public/863.js +1 -0
  59. package/gui/graphql/public/896.js +1 -0
  60. package/gui/graphql/public/92.js +2 -0
  61. package/gui/graphql/public/98.js +1 -0
  62. package/gui/graphql/public/980.js +1 -0
  63. package/gui/graphql/public/995.js +1 -0
  64. package/gui/graphql/public/index.html +12 -0
  65. package/gui/graphql/public/main.css +27 -0
  66. package/gui/graphql/public/main.js +2230 -0
  67. package/gui/graphql/public/main.js.LICENSE.txt +39 -0
  68. package/gui/graphql/src/index.jsx +139 -0
  69. package/gui/graphql/webpack.config.js +52 -0
  70. package/gui/liquid/public/index.html +82 -0
  71. package/gui/v1/build/_app/immutable/assets/0.251ef76d.css +1 -0
  72. package/gui/v1/build/_app/immutable/assets/10.ee72ee6d.css +1 -0
  73. package/gui/v1/build/_app/immutable/assets/12.f6879dba.css +1 -0
  74. package/gui/v1/build/_app/immutable/assets/13.bf080bcc.css +1 -0
  75. package/gui/v1/build/_app/immutable/assets/15.0e0670ce.css +1 -0
  76. package/gui/v1/build/_app/immutable/assets/2.4a46c382.css +1 -0
  77. package/gui/v1/build/_app/immutable/assets/4.73dde45b.css +1 -0
  78. package/gui/v1/build/_app/immutable/assets/6.6bcda092.css +1 -0
  79. package/gui/v1/build/_app/immutable/assets/7.c0038863.css +1 -0
  80. package/gui/v1/build/_app/immutable/assets/9.6957ad32.css +1 -0
  81. package/gui/v1/build/_app/immutable/assets/Aside.66c2d12f.css +1 -0
  82. package/gui/v1/build/_app/immutable/assets/JSONTree.507a2dde.css +1 -0
  83. package/gui/v1/build/_app/immutable/assets/JSONTree.79010849.css +1 -0
  84. package/gui/v1/build/_app/immutable/assets/_layout.4a46c382.css +1 -0
  85. package/gui/v1/build/_app/immutable/assets/_layout.6bcda092.css +1 -0
  86. package/gui/v1/build/_app/immutable/assets/_layout.73dde45b.css +1 -0
  87. package/gui/v1/build/_app/immutable/assets/_layout.85c17bd0.css +1 -0
  88. package/gui/v1/build/_app/immutable/assets/_page.0e0670ce.css +1 -0
  89. package/gui/v1/build/_app/immutable/assets/_page.425c1d28.css +1 -0
  90. package/gui/v1/build/_app/immutable/assets/_page.6957ad32.css +1 -0
  91. package/gui/v1/build/_app/immutable/assets/_page.bf080bcc.css +1 -0
  92. package/gui/v1/build/_app/immutable/assets/_page.c0038863.css +1 -0
  93. package/gui/v1/build/_app/immutable/assets/_page.ee72ee6d.css +1 -0
  94. package/gui/v1/build/_app/immutable/chunks/Aside.c28a1ec5.js +1 -0
  95. package/gui/v1/build/_app/immutable/chunks/Icon.1db6668c.js +1 -0
  96. package/gui/v1/build/_app/immutable/chunks/JSONTree.641da795.js +2 -0
  97. package/gui/v1/build/_app/immutable/chunks/backgroundJob.0f2693c5.js +53 -0
  98. package/gui/v1/build/_app/immutable/chunks/graphql.6101590b.js +1 -0
  99. package/gui/v1/build/_app/immutable/chunks/index.50c00146.js +1 -0
  100. package/gui/v1/build/_app/immutable/chunks/index.5744cd58.js +1 -0
  101. package/gui/v1/build/_app/immutable/chunks/index.88325b8f.js +4 -0
  102. package/gui/v1/build/_app/immutable/chunks/index.c35021d1.js +1 -0
  103. package/gui/v1/build/_app/immutable/chunks/singletons.b6d4da89.js +1 -0
  104. package/gui/v1/build/_app/immutable/chunks/state.adc829f2.js +1 -0
  105. package/gui/v1/build/_app/immutable/chunks/stores.71f75302.js +1 -0
  106. package/gui/v1/build/_app/immutable/chunks/table.71e66f99.js +16 -0
  107. package/gui/v1/build/_app/immutable/chunks/tryParseJSON.f125f883.js +1 -0
  108. package/gui/v1/build/_app/immutable/chunks/user.039256f6.js +31 -0
  109. package/gui/v1/build/_app/immutable/entry/app.44548b11.js +1 -0
  110. package/gui/v1/build/_app/immutable/entry/start.4e385061.js +3 -0
  111. package/gui/v1/build/_app/immutable/nodes/0.d27a86c9.js +1 -0
  112. package/gui/v1/build/_app/immutable/nodes/1.532e414a.js +1 -0
  113. package/gui/v1/build/_app/immutable/nodes/10.962850d6.js +26 -0
  114. package/gui/v1/build/_app/immutable/nodes/11.d0e2eb78.js +1 -0
  115. package/gui/v1/build/_app/immutable/nodes/12.6449d2bf.js +74 -0
  116. package/gui/v1/build/_app/immutable/nodes/13.d3883433.js +1 -0
  117. package/gui/v1/build/_app/immutable/nodes/14.b1e09778.js +1 -0
  118. package/gui/v1/build/_app/immutable/nodes/15.af2c20ae.js +1 -0
  119. package/gui/v1/build/_app/immutable/nodes/2.4d90d0b8.js +9 -0
  120. package/gui/v1/build/_app/immutable/nodes/3.06f6ef98.js +1 -0
  121. package/gui/v1/build/_app/immutable/nodes/4.32a26935.js +1 -0
  122. package/gui/v1/build/_app/immutable/nodes/5.06f6ef98.js +1 -0
  123. package/gui/v1/build/_app/immutable/nodes/6.57fec5aa.js +7 -0
  124. package/gui/v1/build/_app/immutable/nodes/7.ae78c23b.js +13 -0
  125. package/gui/v1/build/_app/immutable/nodes/8.f57c5fbf.js +1 -0
  126. package/gui/v1/build/_app/immutable/nodes/9.374909fd.js +1 -0
  127. package/gui/v1/build/_app/version.json +1 -0
  128. package/gui/v1/build/favicon.png +0 -0
  129. package/gui/v1/build/icon/apple-touch-icon-114x114.png +0 -0
  130. package/gui/v1/build/icon/apple-touch-icon-120x120.png +0 -0
  131. package/gui/v1/build/icon/apple-touch-icon-144x144.png +0 -0
  132. package/gui/v1/build/icon/apple-touch-icon-152x152.png +0 -0
  133. package/gui/v1/build/icon/apple-touch-icon-57x57.png +0 -0
  134. package/gui/v1/build/icon/apple-touch-icon-60x60.png +0 -0
  135. package/gui/v1/build/icon/apple-touch-icon-72x72.png +0 -0
  136. package/gui/v1/build/icon/apple-touch-icon-76x76.png +0 -0
  137. package/gui/v1/build/icon/code.txt +20 -0
  138. package/gui/v1/build/icon/favicon-128.png +0 -0
  139. package/gui/v1/build/icon/favicon-16x16.png +0 -0
  140. package/gui/v1/build/icon/favicon-196x196.png +0 -0
  141. package/gui/v1/build/icon/favicon-32x32.png +0 -0
  142. package/gui/v1/build/icon/favicon-96x96.png +0 -0
  143. package/gui/v1/build/icon/favicon.ico +0 -0
  144. package/gui/v1/build/icon/mstile-144x144.png +0 -0
  145. package/gui/v1/build/icon/mstile-150x150.png +0 -0
  146. package/gui/v1/build/icon/mstile-310x150.png +0 -0
  147. package/gui/v1/build/icon/mstile-310x310.png +0 -0
  148. package/gui/v1/build/icon/mstile-70x70.png +0 -0
  149. package/gui/v1/build/index.html +35 -0
  150. package/gui/v1/build/insites-logo-old.png +0 -0
  151. package/gui/v1/build/insites-logo.png +0 -0
  152. package/gui/v1/build/prism.js +8 -0
  153. package/gui/v1/package-lock.json +1616 -0
  154. package/gui/v1/package.json +27 -0
  155. package/gui/v1/playwright.config.js +10 -0
  156. package/gui/v1/pnpm-lock.yaml +992 -0
  157. package/gui/v1/src/app.html +12 -0
  158. package/gui/v1/src/lib/api/backgroundJob.js +124 -0
  159. package/gui/v1/src/lib/api/constant.js +68 -0
  160. package/gui/v1/src/lib/api/graphql.js +57 -0
  161. package/gui/v1/src/lib/api/logs.js +45 -0
  162. package/gui/v1/src/lib/api/record.js +286 -0
  163. package/gui/v1/src/lib/api/table.js +45 -0
  164. package/gui/v1/src/lib/api/user.js +78 -0
  165. package/gui/v1/src/lib/backgroundJob/Delete.svelte +61 -0
  166. package/gui/v1/src/lib/backgroundJob/Retry.svelte +45 -0
  167. package/gui/v1/src/lib/database/Create.svelte +324 -0
  168. package/gui/v1/src/lib/database/Delete.svelte +61 -0
  169. package/gui/v1/src/lib/database/Filters.svelte +155 -0
  170. package/gui/v1/src/lib/database/Sort.svelte +110 -0
  171. package/gui/v1/src/lib/database/Table.svelte +261 -0
  172. package/gui/v1/src/lib/database/Tables.svelte +276 -0
  173. package/gui/v1/src/lib/parseValue.js +51 -0
  174. package/gui/v1/src/lib/relativeTime.js +33 -0
  175. package/gui/v1/src/lib/state.js +190 -0
  176. package/gui/v1/src/lib/tryParseJSON.js +32 -0
  177. package/gui/v1/src/lib/ui/Aside.svelte +176 -0
  178. package/gui/v1/src/lib/ui/Code.svelte +50 -0
  179. package/gui/v1/src/lib/ui/ConnectionIndicator.svelte +133 -0
  180. package/gui/v1/src/lib/ui/Header.svelte +252 -0
  181. package/gui/v1/src/lib/ui/Icon.svelte +55 -0
  182. package/gui/v1/src/lib/ui/JSONTree.svelte +77 -0
  183. package/gui/v1/src/lib/ui/Notifications.svelte +111 -0
  184. package/gui/v1/src/lib/ui/forms/Toggle.svelte +114 -0
  185. package/gui/v1/src/routes/+layout.svelte +25 -0
  186. package/gui/v1/src/routes/+page.svelte +511 -0
  187. package/gui/v1/src/routes/backgroundJobs/+layout.svelte +366 -0
  188. package/gui/v1/src/routes/backgroundJobs/+page.svelte +0 -0
  189. package/gui/v1/src/routes/backgroundJobs/[type]/[id]/+page.svelte +157 -0
  190. package/gui/v1/src/routes/constants/+layout.svelte +1 -0
  191. package/gui/v1/src/routes/constants/+page.svelte +382 -0
  192. package/gui/v1/src/routes/database/+layout.svelte +67 -0
  193. package/gui/v1/src/routes/database/+page.svelte +3 -0
  194. package/gui/v1/src/routes/database/table/[id]/+page.svelte +219 -0
  195. package/gui/v1/src/routes/logs/+layout.svelte +1 -0
  196. package/gui/v1/src/routes/logs/+page.svelte +512 -0
  197. package/gui/v1/src/routes/users/+layout.svelte +252 -0
  198. package/gui/v1/src/routes/users/+page.svelte +4 -0
  199. package/gui/v1/src/routes/users/[id]/+page.svelte +127 -0
  200. package/gui/v1/src/style/button.css +141 -0
  201. package/gui/v1/src/style/code.css +4 -0
  202. package/gui/v1/src/style/config.css +186 -0
  203. package/gui/v1/src/style/forms.css +55 -0
  204. package/gui/v1/src/style/general.css +53 -0
  205. package/gui/v1/src/style/reset.css +75 -0
  206. package/gui/v1/static/favicon.png +0 -0
  207. package/gui/v1/static/icon/apple-touch-icon-114x114.png +0 -0
  208. package/gui/v1/static/icon/apple-touch-icon-120x120.png +0 -0
  209. package/gui/v1/static/icon/apple-touch-icon-144x144.png +0 -0
  210. package/gui/v1/static/icon/apple-touch-icon-152x152.png +0 -0
  211. package/gui/v1/static/icon/apple-touch-icon-57x57.png +0 -0
  212. package/gui/v1/static/icon/apple-touch-icon-60x60.png +0 -0
  213. package/gui/v1/static/icon/apple-touch-icon-72x72.png +0 -0
  214. package/gui/v1/static/icon/apple-touch-icon-76x76.png +0 -0
  215. package/gui/v1/static/icon/code.txt +20 -0
  216. package/gui/v1/static/icon/favicon-128.png +0 -0
  217. package/gui/v1/static/icon/favicon-16x16.png +0 -0
  218. package/gui/v1/static/icon/favicon-196x196.png +0 -0
  219. package/gui/v1/static/icon/favicon-32x32.png +0 -0
  220. package/gui/v1/static/icon/favicon-96x96.png +0 -0
  221. package/gui/v1/static/icon/favicon.ico +0 -0
  222. package/gui/v1/static/icon/mstile-144x144.png +0 -0
  223. package/gui/v1/static/icon/mstile-150x150.png +0 -0
  224. package/gui/v1/static/icon/mstile-310x150.png +0 -0
  225. package/gui/v1/static/icon/mstile-310x310.png +0 -0
  226. package/gui/v1/static/icon/mstile-70x70.png +0 -0
  227. package/gui/v1/static/insites-logo-old.png +0 -0
  228. package/gui/v1/static/insites-logo.png +0 -0
  229. package/gui/v1/static/prism.js +8 -0
  230. package/gui/v1/svelte.config.js +12 -0
  231. package/gui/v1/vite.config.js +9 -0
  232. package/gui/v2/.env.local.sample +1 -0
  233. package/gui/v2/.eslintrc.json +3 -0
  234. package/gui/v2/README.md +36 -0
  235. package/gui/v2/jsconfig.json +7 -0
  236. package/gui/v2/next.config.mjs +8 -0
  237. package/gui/v2/out/404/index.html +1 -0
  238. package/gui/v2/out/404.html +1 -0
  239. package/gui/v2/out/_next/static/chunks/1255.653490595d3fc3e0.js +1 -0
  240. package/gui/v2/out/_next/static/chunks/156-d7f9f402651cf1ce.js +1 -0
  241. package/gui/v2/out/_next/static/chunks/1607-f540467bd5a5afbb.js +1 -0
  242. package/gui/v2/out/_next/static/chunks/1846.1d14172e53de7bd5.js +1 -0
  243. package/gui/v2/out/_next/static/chunks/2380.950327f4432936af.js +1 -0
  244. package/gui/v2/out/_next/static/chunks/2572.bec81f6c42bcb825.js +1 -0
  245. package/gui/v2/out/_next/static/chunks/2650.fe9586a828cdca9d.js +1 -0
  246. package/gui/v2/out/_next/static/chunks/3331.562d592a07589250.js +1 -0
  247. package/gui/v2/out/_next/static/chunks/3510.61b58fad9f502d34.js +1 -0
  248. package/gui/v2/out/_next/static/chunks/363642f4-2accd15316551dfa.js +1 -0
  249. package/gui/v2/out/_next/static/chunks/4704.c49f871da8f25277.js +1 -0
  250. package/gui/v2/out/_next/static/chunks/49448ee7.02b7afe6f73c8f9d.js +1 -0
  251. package/gui/v2/out/_next/static/chunks/4d1bfaba-4c00fd5561f9a075.js +1 -0
  252. package/gui/v2/out/_next/static/chunks/5103.b86a80704c50b2cb.js +1 -0
  253. package/gui/v2/out/_next/static/chunks/5250-f85a6556cdac145c.js +1 -0
  254. package/gui/v2/out/_next/static/chunks/5253.6fc3f7a625a83de9.js +1 -0
  255. package/gui/v2/out/_next/static/chunks/6163.50329d0319b2e55b.js +1 -0
  256. package/gui/v2/out/_next/static/chunks/6262.57b323874390cc1b.js +1 -0
  257. package/gui/v2/out/_next/static/chunks/6442.5e49a9feebedaf1a.js +1 -0
  258. package/gui/v2/out/_next/static/chunks/6711.076ab1f536726d8d.js +1 -0
  259. package/gui/v2/out/_next/static/chunks/6729.9cc7e67fe8be26d8.js +1 -0
  260. package/gui/v2/out/_next/static/chunks/6744.73e5042f769356c2.js +1 -0
  261. package/gui/v2/out/_next/static/chunks/7058.e63b764d613d6d14.js +1 -0
  262. package/gui/v2/out/_next/static/chunks/714.039f29b090afd075.js +1 -0
  263. package/gui/v2/out/_next/static/chunks/720.b5dff7afd9961ccc.js +1 -0
  264. package/gui/v2/out/_next/static/chunks/7283.e2af380e1cb385c4.js +1 -0
  265. package/gui/v2/out/_next/static/chunks/7567.fb1e0ef7389df59d.js +1 -0
  266. package/gui/v2/out/_next/static/chunks/7604.12b8307c002ce3f4.js +1 -0
  267. package/gui/v2/out/_next/static/chunks/7612.f071dccc7f2b0711.js +1 -0
  268. package/gui/v2/out/_next/static/chunks/7737.6191e6708d094927.js +1 -0
  269. package/gui/v2/out/_next/static/chunks/7833.6ff3b0179c6aab2e.js +1 -0
  270. package/gui/v2/out/_next/static/chunks/7934.875b05fd89a8eeae.js +1 -0
  271. package/gui/v2/out/_next/static/chunks/7957.c1f316fb4f52b181.js +1 -0
  272. package/gui/v2/out/_next/static/chunks/7979.1ed8d3011a12e2f1.js +1 -0
  273. package/gui/v2/out/_next/static/chunks/8043.592171badd8f3ea1.js +57 -0
  274. package/gui/v2/out/_next/static/chunks/8047-327e12b999e88629.js +1 -0
  275. package/gui/v2/out/_next/static/chunks/8069-99e6658a6772ea80.js +1 -0
  276. package/gui/v2/out/_next/static/chunks/8414.c85352362d33de3e.js +1 -0
  277. package/gui/v2/out/_next/static/chunks/8700.4409d1a867db1bf3.js +1 -0
  278. package/gui/v2/out/_next/static/chunks/9121.b83f5b8780f6c093.js +1 -0
  279. package/gui/v2/out/_next/static/chunks/9336.17897c831ce187f3.js +1 -0
  280. package/gui/v2/out/_next/static/chunks/9479.f984522cec5ff059.js +1 -0
  281. package/gui/v2/out/_next/static/chunks/9557.471a0e1662abe246.js +1 -0
  282. package/gui/v2/out/_next/static/chunks/989.aa0766c8bb66a392.js +1 -0
  283. package/gui/v2/out/_next/static/chunks/app/background-job/page-0521f8d6e8ec9b55.js +1 -0
  284. package/gui/v2/out/_next/static/chunks/app/constants/page-f1397b414fe2e4c0.js +1 -0
  285. package/gui/v2/out/_next/static/chunks/app/database/layout-c1e28d1ae358bc77.js +1 -0
  286. package/gui/v2/out/_next/static/chunks/app/database/page-d2f667b24c673fbb.js +1 -0
  287. package/gui/v2/out/_next/static/chunks/app/error-3cf235b6b99c469f.js +1 -0
  288. package/gui/v2/out/_next/static/chunks/app/global-error-afc2c2c9b5e82f57.js +1 -0
  289. package/gui/v2/out/_next/static/chunks/app/graphql/page-ae7c858f41b54801.js +1 -0
  290. package/gui/v2/out/_next/static/chunks/app/layout-8194e46834cb4aba.js +1 -0
  291. package/gui/v2/out/_next/static/chunks/app/liquid/page-02caf239e75f472f.js +1 -0
  292. package/gui/v2/out/_next/static/chunks/app/loading-54414b5097331d64.js +1 -0
  293. package/gui/v2/out/_next/static/chunks/app/logs/layout-5f78d72b1b805625.js +1 -0
  294. package/gui/v2/out/_next/static/chunks/app/logs/page-ef7dd2b328d24734.js +1 -0
  295. package/gui/v2/out/_next/static/chunks/app/not-found-33cae8ec5bdcd26f.js +1 -0
  296. package/gui/v2/out/_next/static/chunks/app/page-73b1f8b1f7552d3f.js +1 -0
  297. package/gui/v2/out/_next/static/chunks/app/users/page-2195ac1594366ce4.js +1 -0
  298. package/gui/v2/out/_next/static/chunks/d9670eb5.68da5e9f84dd26cf.js +1 -0
  299. package/gui/v2/out/_next/static/chunks/fd9d1056-0e6b8922e4ebe23a.js +1 -0
  300. package/gui/v2/out/_next/static/chunks/framework-08aa667e5202eed8.js +33 -0
  301. package/gui/v2/out/_next/static/chunks/main-7b334683379129cf.js +1 -0
  302. package/gui/v2/out/_next/static/chunks/main-app-35b90d128e2e05cf.js +1 -0
  303. package/gui/v2/out/_next/static/chunks/pages/_app-57bdff7978360b1c.js +1 -0
  304. package/gui/v2/out/_next/static/chunks/pages/_error-29037c284dd0eec6.js +1 -0
  305. package/gui/v2/out/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
  306. package/gui/v2/out/_next/static/chunks/webpack-d07cc8d61c19af5d.js +1 -0
  307. package/gui/v2/out/_next/static/css/874c6e64ab8446a4.css +6 -0
  308. package/gui/v2/out/_next/static/css/88716ec5fc4aa1e3.css +15 -0
  309. package/gui/v2/out/_next/static/wmD1UwESxpzZj8pfiHFeB/_buildManifest.js +1 -0
  310. package/gui/v2/out/_next/static/wmD1UwESxpzZj8pfiHFeB/_ssgManifest.js +1 -0
  311. package/gui/v2/out/assets/icons/home-bg-job.png +0 -0
  312. package/gui/v2/out/assets/icons/home-constants.png +0 -0
  313. package/gui/v2/out/assets/icons/home-database.png +0 -0
  314. package/gui/v2/out/assets/icons/home-graphql.png +0 -0
  315. package/gui/v2/out/assets/icons/home-info-fill-light.png +0 -0
  316. package/gui/v2/out/assets/icons/home-info-light.png +0 -0
  317. package/gui/v2/out/assets/icons/home-liquid.png +0 -0
  318. package/gui/v2/out/assets/icons/home-logs.png +0 -0
  319. package/gui/v2/out/assets/icons/home-pin-fill-light.png +0 -0
  320. package/gui/v2/out/assets/icons/home-pin-light.png +0 -0
  321. package/gui/v2/out/assets/icons/home-support.png +0 -0
  322. package/gui/v2/out/assets/icons/home-users.png +0 -0
  323. package/gui/v2/out/assets/icons/menu-bg-job-dark.png +0 -0
  324. package/gui/v2/out/assets/icons/menu-bg-job-light.png +0 -0
  325. package/gui/v2/out/assets/icons/menu-console-dark.png +0 -0
  326. package/gui/v2/out/assets/icons/menu-console-light.png +0 -0
  327. package/gui/v2/out/assets/icons/menu-constants-dark.png +0 -0
  328. package/gui/v2/out/assets/icons/menu-constants-light.png +0 -0
  329. package/gui/v2/out/assets/icons/menu-database-dark.png +0 -0
  330. package/gui/v2/out/assets/icons/menu-database-light.png +0 -0
  331. package/gui/v2/out/assets/icons/menu-docs-dark.png +0 -0
  332. package/gui/v2/out/assets/icons/menu-docs-light.png +0 -0
  333. package/gui/v2/out/assets/icons/menu-graphql-dark.png +0 -0
  334. package/gui/v2/out/assets/icons/menu-graphql-light.png +0 -0
  335. package/gui/v2/out/assets/icons/menu-iia-dark.png +0 -0
  336. package/gui/v2/out/assets/icons/menu-iia-light.png +0 -0
  337. package/gui/v2/out/assets/icons/menu-liquid-dark.png +0 -0
  338. package/gui/v2/out/assets/icons/menu-liquid-light.png +0 -0
  339. package/gui/v2/out/assets/icons/menu-logs-dark.png +0 -0
  340. package/gui/v2/out/assets/icons/menu-logs-light.png +0 -0
  341. package/gui/v2/out/assets/icons/menu-support-dark.png +0 -0
  342. package/gui/v2/out/assets/icons/menu-support-light.png +0 -0
  343. package/gui/v2/out/assets/icons/menu-theme-dark.png +0 -0
  344. package/gui/v2/out/assets/icons/menu-theme-light.png +0 -0
  345. package/gui/v2/out/assets/icons/menu-users-dark.png +0 -0
  346. package/gui/v2/out/assets/icons/menu-users-light.png +0 -0
  347. package/gui/v2/out/assets/icons/search-icon-dark.svg +3 -0
  348. package/gui/v2/out/assets/ins-logo-dark.svg +35 -0
  349. package/gui/v2/out/assets/ins-logo-light.svg +35 -0
  350. package/gui/v2/out/background-job/index.html +1 -0
  351. package/gui/v2/out/background-job/index.txt +9 -0
  352. package/gui/v2/out/constants/index.html +1 -0
  353. package/gui/v2/out/constants/index.txt +11 -0
  354. package/gui/v2/out/database/index.html +1 -0
  355. package/gui/v2/out/database/index.txt +13 -0
  356. package/gui/v2/out/favicon.ico +0 -0
  357. package/gui/v2/out/favicon.png +0 -0
  358. package/gui/v2/out/graphql/index.html +1 -0
  359. package/gui/v2/out/graphql/index.txt +11 -0
  360. package/gui/v2/out/index.html +1 -0
  361. package/gui/v2/out/index.txt +11 -0
  362. package/gui/v2/out/liquid/index.html +1 -0
  363. package/gui/v2/out/liquid/index.txt +11 -0
  364. package/gui/v2/out/logs/index.html +1 -0
  365. package/gui/v2/out/logs/index.txt +13 -0
  366. package/gui/v2/out/next.svg +1 -0
  367. package/gui/v2/out/users/index.html +1 -0
  368. package/gui/v2/out/users/index.txt +11 -0
  369. package/gui/v2/out/vercel.svg +1 -0
  370. package/gui/v2/package-lock.json +9575 -0
  371. package/gui/v2/package.json +37 -0
  372. package/gui/v2/postcss.config.js +6 -0
  373. package/gui/v2/public/assets/icons/home-bg-job.png +0 -0
  374. package/gui/v2/public/assets/icons/home-constants.png +0 -0
  375. package/gui/v2/public/assets/icons/home-database.png +0 -0
  376. package/gui/v2/public/assets/icons/home-graphql.png +0 -0
  377. package/gui/v2/public/assets/icons/home-info-fill-light.png +0 -0
  378. package/gui/v2/public/assets/icons/home-info-light.png +0 -0
  379. package/gui/v2/public/assets/icons/home-liquid.png +0 -0
  380. package/gui/v2/public/assets/icons/home-logs.png +0 -0
  381. package/gui/v2/public/assets/icons/home-pin-fill-light.png +0 -0
  382. package/gui/v2/public/assets/icons/home-pin-light.png +0 -0
  383. package/gui/v2/public/assets/icons/home-support.png +0 -0
  384. package/gui/v2/public/assets/icons/home-users.png +0 -0
  385. package/gui/v2/public/assets/icons/menu-bg-job-dark.png +0 -0
  386. package/gui/v2/public/assets/icons/menu-bg-job-light.png +0 -0
  387. package/gui/v2/public/assets/icons/menu-console-dark.png +0 -0
  388. package/gui/v2/public/assets/icons/menu-console-light.png +0 -0
  389. package/gui/v2/public/assets/icons/menu-constants-dark.png +0 -0
  390. package/gui/v2/public/assets/icons/menu-constants-light.png +0 -0
  391. package/gui/v2/public/assets/icons/menu-database-dark.png +0 -0
  392. package/gui/v2/public/assets/icons/menu-database-light.png +0 -0
  393. package/gui/v2/public/assets/icons/menu-docs-dark.png +0 -0
  394. package/gui/v2/public/assets/icons/menu-docs-light.png +0 -0
  395. package/gui/v2/public/assets/icons/menu-graphql-dark.png +0 -0
  396. package/gui/v2/public/assets/icons/menu-graphql-light.png +0 -0
  397. package/gui/v2/public/assets/icons/menu-iia-dark.png +0 -0
  398. package/gui/v2/public/assets/icons/menu-iia-light.png +0 -0
  399. package/gui/v2/public/assets/icons/menu-liquid-dark.png +0 -0
  400. package/gui/v2/public/assets/icons/menu-liquid-light.png +0 -0
  401. package/gui/v2/public/assets/icons/menu-logs-dark.png +0 -0
  402. package/gui/v2/public/assets/icons/menu-logs-light.png +0 -0
  403. package/gui/v2/public/assets/icons/menu-support-dark.png +0 -0
  404. package/gui/v2/public/assets/icons/menu-support-light.png +0 -0
  405. package/gui/v2/public/assets/icons/menu-theme-dark.png +0 -0
  406. package/gui/v2/public/assets/icons/menu-theme-light.png +0 -0
  407. package/gui/v2/public/assets/icons/menu-users-dark.png +0 -0
  408. package/gui/v2/public/assets/icons/menu-users-light.png +0 -0
  409. package/gui/v2/public/assets/icons/search-icon-dark.svg +3 -0
  410. package/gui/v2/public/assets/ins-logo-dark.svg +35 -0
  411. package/gui/v2/public/assets/ins-logo-light.svg +35 -0
  412. package/gui/v2/public/favicon.png +0 -0
  413. package/gui/v2/public/next.svg +1 -0
  414. package/gui/v2/public/vercel.svg +1 -0
  415. package/gui/v2/src/app/background-job/page.js +35 -0
  416. package/gui/v2/src/app/constants/components/Field/Field.css +11 -0
  417. package/gui/v2/src/app/constants/components/Field/Field.js +52 -0
  418. package/gui/v2/src/app/constants/components/Filter.js +50 -0
  419. package/gui/v2/src/app/constants/components/Form/Form.css +3 -0
  420. package/gui/v2/src/app/constants/components/Form/Form.js +41 -0
  421. package/gui/v2/src/app/constants/page.js +40 -0
  422. package/gui/v2/src/app/database/components/Filters/FilterForm.js +70 -0
  423. package/gui/v2/src/app/database/components/Filters/FilterValue.js +68 -0
  424. package/gui/v2/src/app/database/components/Filters/Filters.js +72 -0
  425. package/gui/v2/src/app/database/components/Sidebar.js +46 -0
  426. package/gui/v2/src/app/database/components/Table.js +122 -0
  427. package/gui/v2/src/app/database/context.js +106 -0
  428. package/gui/v2/src/app/database/layout.js +10 -0
  429. package/gui/v2/src/app/database/page.js +31 -0
  430. package/gui/v2/src/app/error.js +25 -0
  431. package/gui/v2/src/app/favicon.ico +0 -0
  432. package/gui/v2/src/app/global-error.js +20 -0
  433. package/gui/v2/src/app/globals.css +30 -0
  434. package/gui/v2/src/app/graphql/graphql.js +71 -0
  435. package/gui/v2/src/app/graphql/page.js +11 -0
  436. package/gui/v2/src/app/layout.js +27 -0
  437. package/gui/v2/src/app/liquid/page.js +68 -0
  438. package/gui/v2/src/app/loading.js +7 -0
  439. package/gui/v2/src/app/logs/components/JsonTree.js +31 -0
  440. package/gui/v2/src/app/logs/components/LogMetadata/LogMetadata.js +61 -0
  441. package/gui/v2/src/app/logs/components/LogRow.js +62 -0
  442. package/gui/v2/src/app/logs/components/PinnedPanel/PinnedPanel.js +46 -0
  443. package/gui/v2/src/app/logs/components/Toolbar/ClearButton.js +10 -0
  444. package/gui/v2/src/app/logs/components/Toolbar/Filter.js +13 -0
  445. package/gui/v2/src/app/logs/components/Toolbar/MetaDataCheckbox.js +11 -0
  446. package/gui/v2/src/app/logs/components/Toolbar/ShowPinnedButton.js +8 -0
  447. package/gui/v2/src/app/logs/components/Toolbar/Toolbar.js +45 -0
  448. package/gui/v2/src/app/logs/context.js +66 -0
  449. package/gui/v2/src/app/logs/layout.js +10 -0
  450. package/gui/v2/src/app/logs/page.js +73 -0
  451. package/gui/v2/src/app/not-found.js +11 -0
  452. package/gui/v2/src/app/page.js +103 -0
  453. package/gui/v2/src/app/providers.js +18 -0
  454. package/gui/v2/src/app/users/components/UserDetails.js +38 -0
  455. package/gui/v2/src/app/users/page.js +121 -0
  456. package/gui/v2/src/components/CodeEditor/CodeEditor.css +12 -0
  457. package/gui/v2/src/components/CodeEditor/CodeEditor.js +76 -0
  458. package/gui/v2/src/components/layout/Header/Header.css +6 -0
  459. package/gui/v2/src/components/layout/Header/Header.js +139 -0
  460. package/gui/v2/src/constants/filters.js +32 -0
  461. package/gui/v2/src/constants/records.js +17 -0
  462. package/gui/v2/src/context/config.js +27 -0
  463. package/gui/v2/src/context/filters.js +22 -0
  464. package/gui/v2/src/context/menu.js +14 -0
  465. package/gui/v2/src/context/theme.js +29 -0
  466. package/gui/v2/src/hooks/config.js +6 -0
  467. package/gui/v2/src/hooks/constants.js +99 -0
  468. package/gui/v2/src/hooks/database.js +44 -0
  469. package/gui/v2/src/hooks/filters.js +30 -0
  470. package/gui/v2/src/hooks/menu.js +19 -0
  471. package/gui/v2/src/hooks/query.js +10 -0
  472. package/gui/v2/src/hooks/queryParams.js +20 -0
  473. package/gui/v2/src/hooks/recordQuery.js +109 -0
  474. package/gui/v2/src/hooks/theme.js +6 -0
  475. package/gui/v2/src/hooks/users.js +63 -0
  476. package/gui/v2/src/reducers/filter.js +28 -0
  477. package/gui/v2/src/reducers/menu.js +125 -0
  478. package/gui/v2/src/reducers/query.js +143 -0
  479. package/gui/v2/src/services/ConfigService.js +7 -0
  480. package/gui/v2/src/services/CoreService.js +68 -0
  481. package/gui/v2/src/services/GraphiQLService.js +14 -0
  482. package/gui/v2/src/services/LiquidService.js +7 -0
  483. package/gui/v2/src/services/LogService.js +7 -0
  484. package/gui/v2/src/services/RecordService.js +27 -0
  485. package/gui/v2/src/styles/app/database.css +10 -0
  486. package/gui/v2/src/styles/app/graphql.css +100 -0
  487. package/gui/v2/src/styles/app/liquid.css +4 -0
  488. package/gui/v2/src/styles/app/users.css +3 -0
  489. package/gui/v2/src/styles/general.css +31 -0
  490. package/gui/v2/src/styles/icons.css +7 -0
  491. package/gui/v2/src/styles/utils.css +103 -0
  492. package/gui/v2/src/styles/variables.css +94 -0
  493. package/gui/v2/tailwind.config.js +18 -0
  494. package/gui/v3/.cta.json +13 -0
  495. package/gui/v3/.cursorrules +7 -0
  496. package/gui/v3/.vscode/settings.json +18 -0
  497. package/gui/v3/README.md +300 -0
  498. package/gui/v3/components.json +21 -0
  499. package/gui/v3/index.html +17 -0
  500. package/gui/v3/out/assets/asn1-EdZsLKOL.js +1 -0
  501. package/gui/v3/out/assets/babel-C9dsZwsK.js +15 -0
  502. package/gui/v3/out/assets/clojure-BMjYHr_A.js +1 -0
  503. package/gui/v3/out/assets/codicon-DCmgc-ay.ttf +0 -0
  504. package/gui/v3/out/assets/constants-BTP7rcyh.js +1 -0
  505. package/gui/v3/out/assets/createLucideIcon-C36JZ1s3.js +21 -0
  506. package/gui/v3/out/assets/css-BnMrqG3P.js +1 -0
  507. package/gui/v3/out/assets/database-DV7gHS2m.js +106 -0
  508. package/gui/v3/out/assets/estree-DZUM3lmb.js +36 -0
  509. package/gui/v3/out/assets/format-Bs4upCOt.js +1 -0
  510. package/gui/v3/out/assets/graphql-7Dzro_xV.js +29 -0
  511. package/gui/v3/out/assets/graphql-Cg7bfA9N.js +6 -0
  512. package/gui/v3/out/assets/graphql-D05RS2Ys.js +29 -0
  513. package/gui/v3/out/assets/graphql-DeSRErpC.css +6 -0
  514. package/gui/v3/out/assets/graphql-Kf_-WQAL.js +335 -0
  515. package/gui/v3/out/assets/graphqlMode-BiZPK6IB.js +2 -0
  516. package/gui/v3/out/assets/icons/home-bg-job.png +0 -0
  517. package/gui/v3/out/assets/icons/home-constants.png +0 -0
  518. package/gui/v3/out/assets/icons/home-database.png +0 -0
  519. package/gui/v3/out/assets/icons/home-graphql.png +0 -0
  520. package/gui/v3/out/assets/icons/home-info-fill-light.png +0 -0
  521. package/gui/v3/out/assets/icons/home-info-light.png +0 -0
  522. package/gui/v3/out/assets/icons/home-liquid.png +0 -0
  523. package/gui/v3/out/assets/icons/home-logs.png +0 -0
  524. package/gui/v3/out/assets/icons/home-pin-fill-light.png +0 -0
  525. package/gui/v3/out/assets/icons/home-pin-light.png +0 -0
  526. package/gui/v3/out/assets/icons/home-support.png +0 -0
  527. package/gui/v3/out/assets/icons/home-users.png +0 -0
  528. package/gui/v3/out/assets/icons/menu-bg-job-dark.png +0 -0
  529. package/gui/v3/out/assets/icons/menu-bg-job-light.png +0 -0
  530. package/gui/v3/out/assets/icons/menu-console-dark.png +0 -0
  531. package/gui/v3/out/assets/icons/menu-console-light.png +0 -0
  532. package/gui/v3/out/assets/icons/menu-constants-dark.png +0 -0
  533. package/gui/v3/out/assets/icons/menu-constants-light.png +0 -0
  534. package/gui/v3/out/assets/icons/menu-database-dark.png +0 -0
  535. package/gui/v3/out/assets/icons/menu-database-light.png +0 -0
  536. package/gui/v3/out/assets/icons/menu-docs-dark.png +0 -0
  537. package/gui/v3/out/assets/icons/menu-docs-light.png +0 -0
  538. package/gui/v3/out/assets/icons/menu-graphql-dark.png +0 -0
  539. package/gui/v3/out/assets/icons/menu-graphql-light.png +0 -0
  540. package/gui/v3/out/assets/icons/menu-iia-dark.png +0 -0
  541. package/gui/v3/out/assets/icons/menu-iia-light.png +0 -0
  542. package/gui/v3/out/assets/icons/menu-liquid-dark.png +0 -0
  543. package/gui/v3/out/assets/icons/menu-liquid-light.png +0 -0
  544. package/gui/v3/out/assets/icons/menu-logs-dark.png +0 -0
  545. package/gui/v3/out/assets/icons/menu-logs-light.png +0 -0
  546. package/gui/v3/out/assets/icons/menu-support-dark.png +0 -0
  547. package/gui/v3/out/assets/icons/menu-support-light.png +0 -0
  548. package/gui/v3/out/assets/icons/menu-theme-dark.png +0 -0
  549. package/gui/v3/out/assets/icons/menu-theme-light.png +0 -0
  550. package/gui/v3/out/assets/icons/menu-users-dark.png +0 -0
  551. package/gui/v3/out/assets/icons/menu-users-light.png +0 -0
  552. package/gui/v3/out/assets/icons/search-icon-dark.svg +3 -0
  553. package/gui/v3/out/assets/index-AQmQqDwZ.js +68 -0
  554. package/gui/v3/out/assets/index-BkuncLX2.js +1 -0
  555. package/gui/v3/out/assets/index-Cf5jXmk6.css +1 -0
  556. package/gui/v3/out/assets/index-CizP5xBC.js +7 -0
  557. package/gui/v3/out/assets/index-DO4-OviR.js +1 -0
  558. package/gui/v3/out/assets/index-DuTWoEAJ.js +1 -0
  559. package/gui/v3/out/assets/index-Fzn1QYI7.js +41 -0
  560. package/gui/v3/out/assets/ins-logo-dark.svg +35 -0
  561. package/gui/v3/out/assets/ins-logo-light.svg +35 -0
  562. package/gui/v3/out/assets/javascript-qCveANmP.js +1 -0
  563. package/gui/v3/out/assets/jsonMode-D3_vpDO9.js +15 -0
  564. package/gui/v3/out/assets/liquid-eqk0BGFR.js +56 -0
  565. package/gui/v3/out/assets/lite-BCVbb_oz.js +2 -0
  566. package/gui/v3/out/assets/logs-DI6Go5dW.js +16 -0
  567. package/gui/v3/out/assets/mllike-CXdrOF99.js +1 -0
  568. package/gui/v3/out/assets/monaco-editor-C4cuflwX.js +722 -0
  569. package/gui/v3/out/assets/monaco-editor-D6kYW_CN.css +1 -0
  570. package/gui/v3/out/assets/mouseTarget-B_KnTiWf.js +9 -0
  571. package/gui/v3/out/assets/objectWithoutPropertiesLoose-Ls7qkcH1.js +1 -0
  572. package/gui/v3/out/assets/pug-DukmZTjD.js +1 -0
  573. package/gui/v3/out/assets/python-BuPzkPfP.js +1 -0
  574. package/gui/v3/out/assets/rpm-CTu-6PCP.js +1 -0
  575. package/gui/v3/out/assets/sql-D0XecflT.js +1 -0
  576. package/gui/v3/out/assets/standalone-BS_cqyLa.js +39 -0
  577. package/gui/v3/out/assets/table-D17Bwjdk.js +6 -0
  578. package/gui/v3/out/assets/toolkit-DToHxdMP.js +1 -0
  579. package/gui/v3/out/assets/ttcn-cfg-B9xdYoR4.js +1 -0
  580. package/gui/v3/out/assets/users-DI3wqkEI.js +1 -0
  581. package/gui/v3/out/favicon.png +0 -0
  582. package/gui/v3/out/index.html +41 -0
  583. package/gui/v3/out/logo192.png +0 -0
  584. package/gui/v3/out/logo512.png +0 -0
  585. package/gui/v3/out/manifest.json +25 -0
  586. package/gui/v3/out/monacoeditorwork/editor.worker.bundle.js +13519 -0
  587. package/gui/v3/out/monacoeditorwork/graphql.worker..bundle.js +32105 -0
  588. package/gui/v3/out/monacoeditorwork/json.worker.bundle.js +21320 -0
  589. package/gui/v3/out/robots.txt +3 -0
  590. package/gui/v3/package-lock.json +7193 -0
  591. package/gui/v3/package.json +69 -0
  592. package/gui/v3/public/assets/icons/home-bg-job.png +0 -0
  593. package/gui/v3/public/assets/icons/home-constants.png +0 -0
  594. package/gui/v3/public/assets/icons/home-database.png +0 -0
  595. package/gui/v3/public/assets/icons/home-graphql.png +0 -0
  596. package/gui/v3/public/assets/icons/home-info-fill-light.png +0 -0
  597. package/gui/v3/public/assets/icons/home-info-light.png +0 -0
  598. package/gui/v3/public/assets/icons/home-liquid.png +0 -0
  599. package/gui/v3/public/assets/icons/home-logs.png +0 -0
  600. package/gui/v3/public/assets/icons/home-pin-fill-light.png +0 -0
  601. package/gui/v3/public/assets/icons/home-pin-light.png +0 -0
  602. package/gui/v3/public/assets/icons/home-support.png +0 -0
  603. package/gui/v3/public/assets/icons/home-users.png +0 -0
  604. package/gui/v3/public/assets/icons/menu-bg-job-dark.png +0 -0
  605. package/gui/v3/public/assets/icons/menu-bg-job-light.png +0 -0
  606. package/gui/v3/public/assets/icons/menu-console-dark.png +0 -0
  607. package/gui/v3/public/assets/icons/menu-console-light.png +0 -0
  608. package/gui/v3/public/assets/icons/menu-constants-dark.png +0 -0
  609. package/gui/v3/public/assets/icons/menu-constants-light.png +0 -0
  610. package/gui/v3/public/assets/icons/menu-database-dark.png +0 -0
  611. package/gui/v3/public/assets/icons/menu-database-light.png +0 -0
  612. package/gui/v3/public/assets/icons/menu-docs-dark.png +0 -0
  613. package/gui/v3/public/assets/icons/menu-docs-light.png +0 -0
  614. package/gui/v3/public/assets/icons/menu-graphql-dark.png +0 -0
  615. package/gui/v3/public/assets/icons/menu-graphql-light.png +0 -0
  616. package/gui/v3/public/assets/icons/menu-iia-dark.png +0 -0
  617. package/gui/v3/public/assets/icons/menu-iia-light.png +0 -0
  618. package/gui/v3/public/assets/icons/menu-liquid-dark.png +0 -0
  619. package/gui/v3/public/assets/icons/menu-liquid-light.png +0 -0
  620. package/gui/v3/public/assets/icons/menu-logs-dark.png +0 -0
  621. package/gui/v3/public/assets/icons/menu-logs-light.png +0 -0
  622. package/gui/v3/public/assets/icons/menu-support-dark.png +0 -0
  623. package/gui/v3/public/assets/icons/menu-support-light.png +0 -0
  624. package/gui/v3/public/assets/icons/menu-theme-dark.png +0 -0
  625. package/gui/v3/public/assets/icons/menu-theme-light.png +0 -0
  626. package/gui/v3/public/assets/icons/menu-users-dark.png +0 -0
  627. package/gui/v3/public/assets/icons/menu-users-light.png +0 -0
  628. package/gui/v3/public/assets/icons/search-icon-dark.svg +3 -0
  629. package/gui/v3/public/assets/ins-logo-dark.svg +35 -0
  630. package/gui/v3/public/assets/ins-logo-light.svg +35 -0
  631. package/gui/v3/public/favicon.png +0 -0
  632. package/gui/v3/public/logo192.png +0 -0
  633. package/gui/v3/public/logo512.png +0 -0
  634. package/gui/v3/public/manifest.json +25 -0
  635. package/gui/v3/public/robots.txt +3 -0
  636. package/gui/v3/src/components/CodeEditor.tsx +100 -0
  637. package/gui/v3/src/components/commons/DatePicker.tsx +93 -0
  638. package/gui/v3/src/components/commons/DateRangeFilter.tsx +76 -0
  639. package/gui/v3/src/components/commons/InputBox.tsx +88 -0
  640. package/gui/v3/src/components/data/DataPagination.tsx +116 -0
  641. package/gui/v3/src/components/data/DataTable.tsx +84 -0
  642. package/gui/v3/src/components/layout/Header.tsx +42 -0
  643. package/gui/v3/src/components/layout/Layout.tsx +15 -0
  644. package/gui/v3/src/components/ui/alert.tsx +66 -0
  645. package/gui/v3/src/components/ui/badge.tsx +48 -0
  646. package/gui/v3/src/components/ui/button.tsx +59 -0
  647. package/gui/v3/src/components/ui/calendar.tsx +211 -0
  648. package/gui/v3/src/components/ui/card.tsx +92 -0
  649. package/gui/v3/src/components/ui/dropdown-menu.tsx +255 -0
  650. package/gui/v3/src/components/ui/hover-card.tsx +42 -0
  651. package/gui/v3/src/components/ui/input.tsx +21 -0
  652. package/gui/v3/src/components/ui/navigation-menu.tsx +168 -0
  653. package/gui/v3/src/components/ui/pagination.tsx +127 -0
  654. package/gui/v3/src/components/ui/popover.tsx +46 -0
  655. package/gui/v3/src/components/ui/resizable.tsx +54 -0
  656. package/gui/v3/src/components/ui/select.tsx +183 -0
  657. package/gui/v3/src/components/ui/separator.tsx +28 -0
  658. package/gui/v3/src/components/ui/sheet.tsx +137 -0
  659. package/gui/v3/src/components/ui/sidebar.tsx +724 -0
  660. package/gui/v3/src/components/ui/skeleton.tsx +13 -0
  661. package/gui/v3/src/components/ui/switch.tsx +29 -0
  662. package/gui/v3/src/components/ui/table.tsx +114 -0
  663. package/gui/v3/src/components/ui/tooltip.tsx +61 -0
  664. package/gui/v3/src/features/config/context.ts +21 -0
  665. package/gui/v3/src/features/config/hooks.ts +11 -0
  666. package/gui/v3/src/features/config/provider.tsx +33 -0
  667. package/gui/v3/src/features/config/services.ts +14 -0
  668. package/gui/v3/src/features/config/type.ts +7 -0
  669. package/gui/v3/src/features/database/components/DatabaseLayout.tsx +44 -0
  670. package/gui/v3/src/features/database/components/DatabaseLoader.tsx +3 -0
  671. package/gui/v3/src/features/database/components/DatabaseNotFound.tsx +6 -0
  672. package/gui/v3/src/features/database/components/DatabaseSidebar.tsx +60 -0
  673. package/gui/v3/src/features/database/components/LoadingIndicator.tsx +3 -0
  674. package/gui/v3/src/features/database/components/RecordsFilter.tsx +89 -0
  675. package/gui/v3/src/features/database/components/RecordsTable.tsx +64 -0
  676. package/gui/v3/src/features/database/components/RecordsViewer.tsx +39 -0
  677. package/gui/v3/src/features/database/graphql/queries.ts +64 -0
  678. package/gui/v3/src/features/database/hooks/useDatabaseColumns.ts +34 -0
  679. package/gui/v3/src/features/database/hooks/useRecords.ts +21 -0
  680. package/gui/v3/src/features/database/hooks/useSelectedTable.ts +14 -0
  681. package/gui/v3/src/features/database/hooks/useTables.ts +18 -0
  682. package/gui/v3/src/features/database/reducers/useRecordsVariable.ts +66 -0
  683. package/gui/v3/src/features/database/schema/records.ts +82 -0
  684. package/gui/v3/src/features/database/schema/tables.ts +51 -0
  685. package/gui/v3/src/features/graphiql/components/GraphiQL.tsx +21 -0
  686. package/gui/v3/src/features/graphiql/style.css +120 -0
  687. package/gui/v3/src/features/liquid/components/LiquidEditor.tsx +95 -0
  688. package/gui/v3/src/features/liquid/service.ts +13 -0
  689. package/gui/v3/src/features/logs/components/LogMessage.tsx +83 -0
  690. package/gui/v3/src/features/logs/components/LogsTable.tsx +121 -0
  691. package/gui/v3/src/features/logs/components/LogsViewer.tsx +30 -0
  692. package/gui/v3/src/features/logs/hooks/useLogs.tsx +59 -0
  693. package/gui/v3/src/features/logs/types/schema.ts +8 -0
  694. package/gui/v3/src/features/menu/components/GuiMenu.tsx +32 -0
  695. package/gui/v3/src/features/menu/components/InsitesMenu.tsx +56 -0
  696. package/gui/v3/src/features/menu/components/TileMenu.tsx +88 -0
  697. package/gui/v3/src/features/menu/constants.ts +99 -0
  698. package/gui/v3/src/features/menu/hooks.ts +11 -0
  699. package/gui/v3/src/features/menu/store.ts +26 -0
  700. package/gui/v3/src/features/menu/types.ts +16 -0
  701. package/gui/v3/src/features/theme/context.tsx +16 -0
  702. package/gui/v3/src/features/theme/hook.tsx +11 -0
  703. package/gui/v3/src/features/theme/provider.tsx +35 -0
  704. package/gui/v3/src/features/theme/store.ts +17 -0
  705. package/gui/v3/src/features/theme/types.ts +1 -0
  706. package/gui/v3/src/features/users/components/Users.tsx +77 -0
  707. package/gui/v3/src/features/users/types.ts +31 -0
  708. package/gui/v3/src/features/users/usernames.ts +45 -0
  709. package/gui/v3/src/hooks/use-mobile.ts +19 -0
  710. package/gui/v3/src/lib/api/constants.ts +1 -0
  711. package/gui/v3/src/lib/api/errors.ts +22 -0
  712. package/gui/v3/src/lib/api/request.ts +57 -0
  713. package/gui/v3/src/lib/api/types.ts +16 -0
  714. package/gui/v3/src/lib/graphql/hooks.ts +27 -0
  715. package/gui/v3/src/lib/graphql/request.ts +31 -0
  716. package/gui/v3/src/lib/graphql/schema/filters.ts +108 -0
  717. package/gui/v3/src/lib/graphql/schema/sorts.ts +10 -0
  718. package/gui/v3/src/lib/graphql/types.ts +29 -0
  719. package/gui/v3/src/lib/providers/entries.ts +21 -0
  720. package/gui/v3/src/lib/providers/index.tsx +10 -0
  721. package/gui/v3/src/lib/providers/queryClient.tsx +16 -0
  722. package/gui/v3/src/lib/providers/types.ts +9 -0
  723. package/gui/v3/src/lib/utils.ts +30 -0
  724. package/gui/v3/src/logo.svg +44 -0
  725. package/gui/v3/src/main.tsx +42 -0
  726. package/gui/v3/src/pages/ConstantPage.tsx +3 -0
  727. package/gui/v3/src/pages/DatabasePage.tsx +31 -0
  728. package/gui/v3/src/pages/GraphqlPage.tsx +9 -0
  729. package/gui/v3/src/pages/HomePage.tsx +36 -0
  730. package/gui/v3/src/pages/LiquidPage.tsx +5 -0
  731. package/gui/v3/src/pages/LogsPage.tsx +10 -0
  732. package/gui/v3/src/pages/Userspage.tsx +5 -0
  733. package/gui/v3/src/reportWebVitals.ts +13 -0
  734. package/gui/v3/src/routeTree.gen.ts +189 -0
  735. package/gui/v3/src/routes/__root.tsx +6 -0
  736. package/gui/v3/src/routes/constants.tsx +7 -0
  737. package/gui/v3/src/routes/database.tsx +6 -0
  738. package/gui/v3/src/routes/graphql.tsx +6 -0
  739. package/gui/v3/src/routes/index.tsx +6 -0
  740. package/gui/v3/src/routes/liquid.tsx +6 -0
  741. package/gui/v3/src/routes/logs.tsx +6 -0
  742. package/gui/v3/src/routes/users.tsx +6 -0
  743. package/gui/v3/src/styles.css +247 -0
  744. package/gui/v3/tsconfig.json +28 -0
  745. package/gui/v3/vite.config.ts +43 -0
  746. package/lib/ServerError.js +122 -0
  747. package/lib/apiRequest.js +15 -0
  748. package/lib/archive.js +126 -0
  749. package/lib/assets/insites-icon.png +0 -0
  750. package/lib/assets/manifest.js +34 -0
  751. package/lib/assets/packAssets.js +53 -0
  752. package/lib/assets.js +56 -0
  753. package/lib/audit/detailed.js +97 -0
  754. package/lib/audit/duplicateFile.js +31 -0
  755. package/lib/audit/extensions.js +53 -0
  756. package/lib/audit/fileName.js +20 -0
  757. package/lib/audit/filters.js +99 -0
  758. package/lib/audit/orphanedIncludes.js +85 -0
  759. package/lib/audit/tags.js +69 -0
  760. package/lib/audit.js +47 -0
  761. package/lib/data/fetchFiles.js +93 -0
  762. package/lib/data/isValidJSON.js +12 -0
  763. package/lib/data/uploadFiles.js +92 -0
  764. package/lib/data/waitForStatus.js +31 -0
  765. package/lib/deploy/directAssetsUploadStrategy.js +57 -0
  766. package/lib/deploy/strategy.js +8 -0
  767. package/lib/directories.js +23 -0
  768. package/lib/downloadFile.js +16 -0
  769. package/lib/duration.js +7 -0
  770. package/lib/files.js +96 -0
  771. package/lib/insites-apig.js +18 -0
  772. package/lib/insites-console.js +24 -0
  773. package/lib/logger/rainbow.js +11 -0
  774. package/lib/logger/simple.js +9 -0
  775. package/lib/logger.js +63 -0
  776. package/lib/logsv2/http.js +40 -0
  777. package/lib/modules.js +129 -0
  778. package/lib/portal.js +52 -0
  779. package/lib/pos-proxy.js +162 -0
  780. package/lib/prepareArchive.js +49 -0
  781. package/lib/presignUrl.js +71 -0
  782. package/lib/proxy.js +75 -0
  783. package/lib/push.js +62 -0
  784. package/lib/s3UploadFile.js +56 -0
  785. package/lib/server.js +123 -0
  786. package/lib/settings.js +42 -0
  787. package/lib/shouldBeSynced.js +89 -0
  788. package/lib/swagger-client.js +287 -0
  789. package/lib/templates.js +52 -0
  790. package/lib/updateNotifier.js +8 -0
  791. package/lib/utils/valid-file-path.js +21 -0
  792. package/lib/validators/directoryEmpty.js +12 -0
  793. package/lib/validators/directoryExists.js +12 -0
  794. package/lib/validators/email.js +8 -0
  795. package/lib/validators/existence.js +9 -0
  796. package/lib/validators/index.js +13 -0
  797. package/lib/validators/url.js +8 -0
  798. package/lib/watch-files-extensions.js +39 -0
  799. package/lib/watch.js +192 -0
  800. package/mock/app.js +45 -0
  801. package/mock/bin/www +91 -0
  802. package/mock/package-lock.json +2287 -0
  803. package/mock/package.json +18 -0
  804. package/mock/public/stylesheets/style.css +8 -0
  805. package/mock/responses/constants.js +39 -0
  806. package/mock/responses/databases.js +3589 -0
  807. package/mock/responses/logs.js +126 -0
  808. package/mock/responses/records.js +443 -0
  809. package/mock/responses/schemas.js +36896 -0
  810. package/mock/responses/users.js +194 -0
  811. package/mock/routes/api.js +53 -0
  812. package/mock/routes/index.js +13 -0
  813. package/mock/routes/users.js +9 -0
  814. package/mock/views/error.jade +6 -0
  815. package/mock/views/index.jade +5 -0
  816. package/mock/views/layout.jade +7 -0
  817. package/package.json +77 -0
  818. package/tests/archive.test.js +33 -0
  819. package/tests/deploy.test.js +26 -0
  820. package/tests/fixtures/archive/default/app/assets/images/insites-logo.svg +55 -0
  821. package/tests/fixtures/archive/default/app/views/pages/hello.liquid +4 -0
  822. package/tests/fixtures/archive/default/modules/testModule/public/views/pages/hello-test-module.liquid +4 -0
  823. package/tests/fixtures/archive/default/modules/testModule/public/views/partials/dir/subdir/foo.liquid +1 -0
  824. package/tests/fixtures/deploy/default/app/assets/images/insites-logo.svg +55 -0
  825. package/tests/fixtures/deploy/default/app/views/pages/index.liquid +6 -0
  826. package/tests/fixtures/deploy/default/app/views/partials/test.liquid +1 -0
  827. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/README.md +22 -0
  828. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/api_calls/.keep +0 -0
  829. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/assets/.keep +0 -0
  830. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/emails/.keep +0 -0
  831. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/graphql/.keep +0 -0
  832. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/model_schemas/.keep +0 -0
  833. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/smses/.keep +0 -0
  834. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/translations/.keep +0 -0
  835. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/views/layouts/.keep +0 -0
  836. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/views/pages/.keep +0 -0
  837. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/views/partials/.keep +0 -0
  838. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/api_calls/.keep +0 -0
  839. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/assets/.keep +0 -0
  840. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/emails/.keep +0 -0
  841. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/graphql/.keep +0 -0
  842. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/model_schemas/.keep +0 -0
  843. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/smses/.keep +0 -0
  844. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/translations/.keep +0 -0
  845. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/layouts/.keep +0 -0
  846. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/pages/.keep +0 -0
  847. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/pages/demo.json.liquid +4 -0
  848. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/.keep +0 -0
  849. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/components/.keep +0 -0
  850. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/components/test.html.liquid +1 -0
  851. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/components/test.liquid +1 -0
  852. package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/template-values.json +7 -0
  853. package/tests/utils/cliPath.js +4 -0
  854. package/tests/utils/exec.js +12 -0
package/lib/files.js ADDED
@@ -0,0 +1,96 @@
1
+ const path = require('path');
2
+ const fs = require('fs');
3
+ const glob = require('fast-glob');
4
+
5
+ const logger = require('./logger');
6
+ const dir = require('./directories');
7
+
8
+ const config = {
9
+ CONFIG: '.insites',
10
+ LEGACY_CONFIG: '.insites.legacy',
11
+ IGNORE_LIST: '.insitesignore',
12
+ templateValues: 'template-values.json'
13
+ };
14
+
15
+ const _paths = customConfig => [customConfig, config.CONFIG, config.LEGACY_CONFIG];
16
+
17
+ const _getConfigPath = customConfig => {
18
+ const firstExistingConfig = _paths(customConfig).filter(fs.existsSync)[0];
19
+ logger.Debug(`[_getConfigPath] First existing config file: ${firstExistingConfig}`);
20
+ return path.resolve(firstExistingConfig || config.CONFIG);
21
+ };
22
+
23
+ const _readJSON = (filePath, opts = { exit: true, throwDoesNotExistError: false }) => {
24
+ if (fs.existsSync(filePath)) {
25
+ logger.Debug(`[_readJSON] File exist: ${filePath}.`);
26
+
27
+ const fileContent = fs.readFileSync(filePath, { encoding: 'utf8' });
28
+
29
+ try {
30
+ return JSON.parse(fileContent);
31
+ } catch (error) {
32
+ logger.Debug(`${error.message}`);
33
+ logger.Error(`${filePath} is not a valid JSON file. Use https://jsonlint.com to lint your JSON syntax.`, {
34
+ exit: false
35
+ });
36
+ logger.Error(`Error thrown by the parser: ${error.message}`, { exit: opts.exit });
37
+ }
38
+ } else {
39
+ if (opts.throwDoesNotExistError) {
40
+ logger.Error(`File doesn't exist: ${filePath}`, { exit: opts.exit });
41
+ } else {
42
+ logger.Debug(`[_readJSON] File doesn't exist: ${filePath}`);
43
+ }
44
+ return {};
45
+ }
46
+ };
47
+
48
+ const _writeJSON = (filePath, content, opts = { exit: true, replacer: null, space: 2}) => {
49
+ if (!fs.existsSync(filePath)) {
50
+ logger.Error(`File doesn't exist: ${filePath}`, { exit: opts.exit });
51
+ return {};
52
+ }
53
+
54
+ try {
55
+ fs.writeFileSync(filePath, JSON.stringify(content, opts.replacer, opts.space));
56
+ } catch (error) {
57
+ logger.Debug(`${error.message}`);
58
+ logger.Error(`Error thrown when writing a json to ${filePath}: ${error.message}`, { exit: opts.exit });
59
+ }
60
+ };
61
+
62
+ const _readIgnoreList = filePath => {
63
+ if (fs.existsSync(filePath) === false) {
64
+ return [];
65
+ }
66
+
67
+ const rules = fs
68
+ .readFileSync(filePath, { encoding: 'utf8' })
69
+ .split('\n')
70
+ .filter(Boolean) // remove empty lines
71
+ .filter(line => line.indexOf('#') !== 0); // remove commented lines
72
+
73
+ return rules;
74
+ };
75
+
76
+ const _getAssets = async () => {
77
+ const appAssets = fs.existsSync(`${dir.currentApp()}/assets`) ? await glob(`${dir.currentApp()}/assets/**`) : [];
78
+ const modulesAssets = fs.existsSync(dir.MODULES) ? await glob('modules/*/{private,public}/assets/**') : [];
79
+
80
+ return [...appAssets, ...modulesAssets] || [];
81
+ };
82
+
83
+ const methods = {
84
+ readJSON: _readJSON,
85
+ writeJSON: _writeJSON,
86
+ getConfigPath: _getConfigPath,
87
+ getConfig: () => {
88
+ const configPath = _getConfigPath(process.env.CONFIG_FILE_PATH);
89
+ logger.Debug(`[getConfig] Looking for config in: ${configPath}`);
90
+ return _readJSON(configPath) || {};
91
+ },
92
+ getAssets: _getAssets,
93
+ getIgnoreList: ignoreListPath => _readIgnoreList(ignoreListPath || config.IGNORE_LIST) || []
94
+ };
95
+
96
+ module.exports = Object.assign({}, config, methods);
@@ -0,0 +1,18 @@
1
+ const apiRequest = require('./apiRequest');
2
+ require("dotenv").config();
3
+
4
+ const HOST = process.env.INSITES_CONSOLE_API_HOST || 'https://ybn9n8m7cc.execute-api.ap-southeast-2.amazonaws.com/api/';
5
+ // const HOST = "https://bpf0fvgyw9.execute-api.ap-southeast-2.amazonaws.com/dev/"
6
+
7
+ const APIG = {
8
+ getInitPackageURL: () => {
9
+ return apiRequest({
10
+ uri: `${HOST}/v1/package/init`,
11
+ method: 'GET',
12
+ json: true,
13
+ });
14
+ },
15
+ HOST: HOST,
16
+ };
17
+
18
+ module.exports = APIG;
@@ -0,0 +1,24 @@
1
+ const apiRequest = require("./apiRequest");
2
+ const logger = require("./logger");
3
+
4
+ require("dotenv").config();
5
+
6
+ const HOST = process.env.INSITES_CONSOLE_HOST || "https://console.insites.io";
7
+
8
+ const Console = {
9
+ login: (email, password, instanceUuid) => {
10
+ logger.Debug("Console.login " + email + " to " + HOST);
11
+ return apiRequest({
12
+ uri: `${HOST}/api/console/cli/login`,
13
+ headers: {
14
+ UserAuthorization: `${email}:${password}`,
15
+ InstanceUUID: instanceUuid,
16
+ },
17
+ method: 'POST',
18
+ json: true,
19
+ });
20
+ },
21
+ HOST: HOST,
22
+ };
23
+
24
+ module.exports = Console;
@@ -0,0 +1,11 @@
1
+ const chalk = require('chalk');
2
+
3
+ const Error = message => console.error(chalk.red.bold(message));
4
+ const Success = message => console.log(chalk.green.bold(message));
5
+ const Quiet = message => console.log(chalk.grey(message));
6
+ const Info = message => console.log(chalk.bold(message));
7
+ const Warn = message => console.log(chalk.yellow.dim(message));
8
+ const News = message => console.log(chalk.cyan(message));
9
+ const Print = txt => process.stdout.write(txt);
10
+
11
+ module.exports = { Error, Success, Quiet, Info, Warn, News, Print };
@@ -0,0 +1,9 @@
1
+ const Error = console.error;
2
+ const Success = console.log;
3
+ const Quiet = console.log;
4
+ const Info = console.log;
5
+ const Warn = console.log;
6
+ const News = message => console.log(chalk.cyan(message));
7
+ const Print = txt => process.stdout.write(txt);
8
+
9
+ module.exports = { Error, Success, Quiet, Info, Warn, News, Print };
package/lib/logger.js ADDED
@@ -0,0 +1,63 @@
1
+ const path = require('path');
2
+ const notifier = require('node-notifier');
3
+
4
+ const instance =
5
+ !!process.env.NO_COLOR || !!process.env.CI ? require('./logger/simple.js') : require('./logger/rainbow.js');
6
+
7
+ const showNotification = (message) => {
8
+ if (!!process.env.CI) {
9
+ return;
10
+ }
11
+ const icon = path.resolve(__dirname, '../lib/assets/insites-icon.png');
12
+ notifier.notify({ title: 'Error', message, icon, 'app-name': 'insites-cli' });
13
+ };
14
+
15
+ const formatter = (msg, opts = { hideTimestamp: false }) => {
16
+ let message = msg;
17
+
18
+ if (typeof msg != 'string') {
19
+ message = JSON.stringify(msg, null, 2);
20
+ }
21
+
22
+ if (!opts.hideTimestamp) {
23
+ const HHMMSS = new Date().toTimeString().split(' ')[0];
24
+ message = `[${HHMMSS}] ${message}`;
25
+ }
26
+
27
+ return message.trim();
28
+ };
29
+
30
+ const logger = {
31
+ Error: (message, opts) => {
32
+ const options = Object.assign({}, { exit: true, notify: true }, opts);
33
+ instance.Print('\n');
34
+ instance.Error(formatter(message, options));
35
+
36
+ if (message && options.notify) {
37
+ if (typeof msg != 'string') {
38
+ message = JSON.stringify(message, null, 2);
39
+ }
40
+ showNotification(message.slice(0, 100));
41
+ }
42
+
43
+ if (options.exit) {
44
+ process.exit(1);
45
+ } else {
46
+ return false;
47
+ }
48
+ },
49
+ Success: (message, opts = {}) => instance.Success(formatter(message, opts)),
50
+ Quiet: (message, opts = {}) => instance.Quiet(formatter(message, opts)),
51
+ Info: (message, opts = {}) => instance.Info(formatter(message, opts)),
52
+ Warn: (message, opts = {}) => instance.Warn(formatter(message, opts)),
53
+ News: (message, opts = {}) => instance.News(formatter(message, opts)),
54
+ Print: (message, opts = {}) => instance.Print(message, opts),
55
+ Debug: (message, opts = {}) => {
56
+ if (process.env.DEBUG) {
57
+ instance.Print('\n');
58
+ instance.Warn(formatter(message, opts));
59
+ }
60
+ },
61
+ };
62
+
63
+ module.exports = logger;
@@ -0,0 +1,40 @@
1
+ const apiRequest = require('../apiRequest');
2
+
3
+ class HTTP {
4
+ static async get(url, {params, securities}) {
5
+ return await apiRequest({
6
+ uri: url + '?' + new URLSearchParams(params),
7
+ method: 'GET',
8
+ json: true,
9
+ headers: {
10
+ Authorization: `Bearer ${securities.authorized.Authorization}`
11
+ }
12
+ });
13
+ }
14
+
15
+ static async post(url, {securities, body}) {
16
+ return await apiRequest({
17
+ uri: url,
18
+ method: 'POST',
19
+ headers: {
20
+ Authorization: `Bearer ${securities.authorized.Authorization}`,
21
+ 'Content-Type': 'application/json'
22
+ },
23
+ body: body
24
+ });
25
+ }
26
+
27
+ static async put(url, {securities, body}) {
28
+ return apiRequest({
29
+ uri: url,
30
+ method: 'PUT',
31
+ headers: {
32
+ Authorization: `Bearer ${securities.authorized.Authorization}`,
33
+ 'Content-Type': 'application/json'
34
+ },
35
+ body: JSON.stringify(body)
36
+ });
37
+ }
38
+ }
39
+
40
+ module.exports = HTTP
package/lib/modules.js ADDED
@@ -0,0 +1,129 @@
1
+ const rl = require('readline');
2
+
3
+ const files = require('./files');
4
+ const logger = require('./logger');
5
+
6
+ const portal = require('./portal');
7
+ const prepareArchive = require('./prepareArchive');
8
+ const presignUrl = require('./presignUrl').presignUrlForPortal;
9
+ const uploadFile = require('./s3UploadFile').uploadFile;
10
+ const waitForStatus = require('./data/waitForStatus');
11
+
12
+ let moduleId;
13
+ const archiveFileName = 'release.zip';
14
+ const archivePath = `./tmp/${archiveFileName}`;
15
+
16
+ const moduleConfig = () => {
17
+ return files.readJSON('template-values.json', { throwDoesNotExistError: true, exit: true });
18
+ };
19
+
20
+ const createArchive = async (moduleName) => {
21
+ return new Promise(async (resolve, reject) => {
22
+ const releaseArchive = prepareArchive(archivePath, resolve, true);
23
+ releaseArchive.glob('{private,public}/**', {}, { prefix: moduleName });
24
+ await releaseArchive.finalize();
25
+ });
26
+ };
27
+
28
+ const uploadArchive = async (token) => {
29
+ const data = await presignUrl(token, moduleId, archiveFileName);
30
+ logger.Debug(data);
31
+ await uploadFile(archivePath, data.uploadUrl);
32
+ logger.Info('Release Uploaded');
33
+ return data.accessUrl;
34
+ };
35
+
36
+ const createVersion = async (token, accessUrl, moduleVersionName) => {
37
+ try {
38
+ const version = await portal.createVersion(token, accessUrl, moduleVersionName, moduleId)
39
+ return version.id;
40
+ } catch(e) {
41
+ throw new Error(`Module Version not created`);
42
+ }
43
+ };
44
+
45
+ const waitForPublishing = async (token, moduleVersionId) => {
46
+ try {
47
+ await waitForStatus(() => portal.moduleVersionStatus(token, moduleId, moduleVersionId), 'pending', 'accepted');
48
+ logger.Success('Module Published');
49
+ } catch(e) {
50
+ throw new Error('Module not published. Check email for errors.');
51
+ }
52
+ };
53
+
54
+ const getModule = async (token, name) => {
55
+ const modules = await portal.findModules(token, name);
56
+ const module = modules[0];
57
+ if (module){
58
+ return module;
59
+ } else {
60
+ throw new Error(`Module "${name}" not found`);
61
+ }
62
+ };
63
+
64
+ const getPassword = () => {
65
+ return new Promise((resolve, reject) => {
66
+ const reader = rl.createInterface({ input: process.stdin, output: process.stdout });
67
+ reader.stdoutMuted = true;
68
+ reader.question('Password: ', password => {
69
+ reader.close();
70
+ console.log('');
71
+ resolve(password);
72
+ });
73
+
74
+ reader._writeToOutput = stringToWrite => (reader.stdoutMuted && reader.output.write('*')) || reader.output.write(stringToWrite);
75
+ });
76
+ };
77
+
78
+ const getToken = async (params) => {
79
+ let password;
80
+ if (process.env.POS_PORTAL_PASSWORD) {
81
+ password = process.env.POS_PORTAL_PASSWORD;
82
+ } else {
83
+ password = await getPassword();
84
+ }
85
+ logger.Info(`Asking ${portal.HOST} for access token...`);
86
+ const token = await portalAuthToken(params.email, password);
87
+ return token;
88
+ }
89
+
90
+ const portalAuthToken = async (email, password) => {
91
+ try {
92
+ const token = await portal.jwtToken(email, password)
93
+ return token.auth_token;
94
+ } catch (e) {
95
+ process.exit(1);
96
+ }
97
+ };
98
+
99
+ const publishVersion = async (params) => {
100
+ try {
101
+ const config = moduleConfig();
102
+ const moduleName = config['machine_name'];
103
+ const moduleVersionName = config['version'];
104
+ const numberOfFiles = await createArchive(moduleName);
105
+ if (numberOfFiles > 0) {
106
+ const token = await getToken(params);
107
+ const module = await getModule(token, moduleName);
108
+ moduleId = module.id;
109
+ const archiveUrl = await uploadArchive(token);
110
+ const posModuleVersionId = await createVersion(token, archiveUrl, moduleVersionName);
111
+ await waitForPublishing(token, posModuleVersionId);
112
+ } else {
113
+ throw new Error('There are no files in module release');
114
+ }
115
+
116
+ return true;
117
+ } catch (e) {
118
+ if (e.message){
119
+ logger.Error(e.message);
120
+ } else {
121
+ logger.Error('Error');
122
+ }
123
+ process.exit(1);
124
+ }
125
+ };
126
+
127
+ module.exports = {
128
+ publishVersion: publishVersion
129
+ };
package/lib/portal.js ADDED
@@ -0,0 +1,52 @@
1
+ const apiRequest = require('./apiRequest');
2
+ const logger = require('./logger');
3
+
4
+ const HOST = process.env.PARTNER_PORTAL_HOST || 'https://partners.platformos.com';
5
+
6
+ const Portal = {
7
+ login: (email, password, url) => {
8
+ logger.Debug('Portal.login ' + email + ' to ' + HOST);
9
+
10
+ return apiRequest({
11
+ uri: `${HOST}/api/user_tokens`,
12
+ headers: { UserAuthorization: `${email}:${password}`, InstanceDomain: url },
13
+ json: true
14
+ });
15
+ },
16
+ jwtToken: (email, password) => {
17
+ return apiRequest({
18
+ method: 'POST',
19
+ uri: `${HOST}/api/authenticate`,
20
+ formData: { email: email, password: password },
21
+ json: true
22
+ });
23
+ },
24
+ findModules: (token, name) => {
25
+ return apiRequest({
26
+ method: 'GET',
27
+ uri: `${HOST}/api/pos_modules/?modules=${name}`,
28
+ headers: { Authorization: `Bearer ${token}` },
29
+ json: true
30
+ });
31
+ },
32
+ createVersion: (token, url, name, posModuleId) => {
33
+ return apiRequest({
34
+ method: 'POST',
35
+ uri: `${HOST}/api/pos_modules/${posModuleId}/pos_module_versions`,
36
+ body: { pos_module_version: { archive: url, name: name } },
37
+ headers: { Authorization: `Bearer ${token}` },
38
+ json: true
39
+ });
40
+ },
41
+ moduleVersionStatus: (token, posModuleId, moduleVersionId) => {
42
+ return apiRequest({
43
+ method: 'GET',
44
+ uri: `${HOST}/api/pos_modules/${posModuleId}/pos_module_versions/${moduleVersionId}`,
45
+ headers: { Authorization: `Bearer ${token}` },
46
+ json: true
47
+ });
48
+ },
49
+ HOST: HOST
50
+ };
51
+
52
+ module.exports = Portal;
@@ -0,0 +1,162 @@
1
+ const requestPromise = require('request-promise');
2
+
3
+ const apiRequest = require('./apiRequest');
4
+ const logger = require('./logger');
5
+ const version = '4.21.2';
6
+
7
+ class Gateway {
8
+ constructor({ url, key: token, email }, client) {
9
+ this.url = url;
10
+ this.api_url = `${url}/api/app_builder`;
11
+ this.private_api_url = `${url}/api/private`;
12
+ this.client = client;
13
+
14
+ const headers = {
15
+ Authorization: `Token ${token}`,
16
+ InstanceDomain: url,
17
+ 'User-Agent': `pos-cli/${version}`,
18
+ From: email
19
+ };
20
+
21
+ const censored = Object.assign({}, headers, { Authorization: 'Token: <censored>' });
22
+ logger.Debug(`Request headers: ${JSON.stringify(censored, null, 2)}`);
23
+
24
+ this.authorizedRequest = requestPromise.defaults({ headers });
25
+ }
26
+
27
+ apiRequest({ method = 'GET', uri, formData, json = true, forever }) {
28
+ return apiRequest({
29
+ method: method,
30
+ uri: uri,
31
+ formData: formData,
32
+ json: json,
33
+ forever: forever,
34
+ request: this.authorizedRequest,
35
+ });
36
+ }
37
+
38
+ appExportStart(formData = {}) {
39
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/marketplace_releases/backup`, formData });
40
+ }
41
+
42
+ appExportStatus(id) {
43
+ return this.apiRequest({ uri: `${this.api_url}/marketplace_releases/${id}` });
44
+ }
45
+
46
+ dataExportStart(export_internal, csv_import = false) {
47
+ const formData = { export_internal };
48
+ let uri = `${this.api_url}/exports`;
49
+ if (csv_import) {
50
+ uri += '?csv_export=true';
51
+ }
52
+ return this.apiRequest({ method: 'POST', uri, formData });
53
+ }
54
+
55
+ dataExportStatus(id, csv_import = false) {
56
+ let uri = `${this.api_url}/exports/${id}`;
57
+ if (csv_import) {
58
+ uri += '?csv_export=true';
59
+ }
60
+ return this.apiRequest({ uri });
61
+ }
62
+
63
+ dataImportStart(formData) {
64
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/imports`, formData });
65
+ }
66
+
67
+ dataImportStatus(id, csv_import = false) {
68
+ let uri = `${this.api_url}/imports/${id}`;
69
+ if (csv_import) {
70
+ uri += '?csv_import=true';
71
+ }
72
+ return this.apiRequest({ uri });
73
+ }
74
+
75
+ dataUpdate(formData) {
76
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/data_updates`, formData });
77
+ }
78
+
79
+ dataClean(confirmation, include_schema) {
80
+ return this.apiRequest({
81
+ method: 'POST',
82
+ uri: `${this.api_url}/data_clean`,
83
+ json: { confirmation, include_schema },
84
+ });
85
+ }
86
+
87
+ dataCleanStatus(id) {
88
+ return this.apiRequest({ method: 'GET', uri: `${this.api_url}/data_clean/${id}` });
89
+ }
90
+
91
+ ping() {
92
+ return this.apiRequest({ uri: `${this.api_url}/logs` });
93
+ }
94
+
95
+ logs(json) {
96
+ return this.apiRequest({ uri: `${this.api_url}/logs?last_id=${json.lastId}`, json, forever: true });
97
+ }
98
+
99
+ getInstance() {
100
+ return this.apiRequest({ uri: `${this.api_url}/instance` });
101
+ }
102
+
103
+ getStatus(id) {
104
+ return this.apiRequest({ uri: `${this.api_url}/marketplace_releases/${id}`, forever: true });
105
+ }
106
+
107
+ graph(json) {
108
+ return this.apiRequest({ method: 'POST', uri: `${this.url}/api/graph`, json, forever: true });
109
+ }
110
+
111
+ liquid(json) {
112
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/liquid_exec`, json, forever: true });
113
+ }
114
+
115
+ listModules() {
116
+ return this.apiRequest({ uri: `${this.api_url}/installed_modules` });
117
+ }
118
+
119
+ removeModule(formData) {
120
+ return this.apiRequest({ method: 'DELETE', uri: `${this.api_url}/installed_modules`, formData });
121
+ }
122
+
123
+ listMigrations() {
124
+ return this.apiRequest({ uri: `${this.api_url}/migrations` });
125
+ }
126
+
127
+ generateMigration(formData) {
128
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/migrations`, formData });
129
+ }
130
+
131
+ runMigration(formData) {
132
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/migrations/run`, formData });
133
+ }
134
+
135
+ sendManifest(manifest) {
136
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/assets_manifest`, json: { manifest } });
137
+ }
138
+
139
+ sync(formData) {
140
+ return this.apiRequest({
141
+ method: 'PUT',
142
+ uri: `${this.api_url}/marketplace_releases/sync`,
143
+ formData,
144
+ forever: true,
145
+ });
146
+ }
147
+
148
+ delete(formData) {
149
+ return this.apiRequest({
150
+ method: 'DELETE',
151
+ uri: `${this.api_url}/marketplace_releases/sync`,
152
+ formData,
153
+ forever: true,
154
+ });
155
+ }
156
+
157
+ push(formData) {
158
+ return this.apiRequest({ method: 'POST', uri: `${this.api_url}/marketplace_releases`, formData });
159
+ }
160
+ }
161
+
162
+ module.exports = Gateway;
@@ -0,0 +1,49 @@
1
+ const fs = require('fs');
2
+ const shell = require('shelljs');
3
+ const archiver = require('archiver');
4
+ const logger = require('./logger');
5
+
6
+ const prepareDestination = path => {
7
+ shell.mkdir('-p', 'tmp');
8
+ shell.rm('-rf', path);
9
+ };
10
+
11
+ const prepareArchive = (path, resolve, verbose = false) => {
12
+ let numberOfFiles = 0;
13
+ prepareDestination(path);
14
+ const output = fs.createWriteStream(path);
15
+ const archive = archiver('zip', { zlib: { level: 6 } });
16
+
17
+ // listen for all archive data to be written
18
+ // 'close' event is fired only when a file descriptor is involved
19
+ output.on('close', () => {
20
+ if (verbose) {
21
+ const sizeInMB = archive.pointer() / 1024 / 1024;
22
+ logger.Info(`Archive size: ${sizeInMB.toFixed(2)} MB at ${path}`);
23
+ }
24
+ resolve(numberOfFiles);
25
+ });
26
+
27
+ archive.on('warning', err => {
28
+ if (err.code === 'ENOENT') {
29
+ logger.Debug(err);
30
+ logger.Error('Archive creation failed.');
31
+ } else {
32
+ throw err;
33
+ }
34
+ });
35
+
36
+ archive.on('error', err => {
37
+ logger.Debug(err);
38
+ });
39
+
40
+ archive.on('entry', function(entry) {
41
+ if (entry.type == 'file') numberOfFiles++;
42
+ });
43
+
44
+ archive.pipe(output);
45
+
46
+ return archive;
47
+ };
48
+
49
+ module.exports = prepareArchive;