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.
- package/.editorconfig +24 -0
- package/.eslintrc +40 -0
- package/.prettierignore +1 -0
- package/README.md +139 -0
- package/bin/insites-cli-archive.js +35 -0
- package/bin/insites-cli-audit.js +5 -0
- package/bin/insites-cli-data-clean.js +69 -0
- package/bin/insites-cli-data-export.js +111 -0
- package/bin/insites-cli-data-import.js +105 -0
- package/bin/insites-cli-data.js +15 -0
- package/bin/insites-cli-deploy.js +43 -0
- package/bin/insites-cli-env-add.js +107 -0
- package/bin/insites-cli-env-list.js +22 -0
- package/bin/insites-cli-env.js +12 -0
- package/bin/insites-cli-gui-serve.js +47 -0
- package/bin/insites-cli-gui.js +8 -0
- package/bin/insites-cli-init.js +44 -0
- package/bin/insites-cli-logs.js +124 -0
- package/bin/insites-cli-logsv2-alerts-add.js +34 -0
- package/bin/insites-cli-logsv2-alerts-list.js +24 -0
- package/bin/insites-cli-logsv2-alerts-trigger.js +25 -0
- package/bin/insites-cli-logsv2-alerts.js +11 -0
- package/bin/insites-cli-logsv2-reports.js +36 -0
- package/bin/insites-cli-logsv2-search.js +40 -0
- package/bin/insites-cli-logsv2-searchAround.js +29 -0
- package/bin/insites-cli-logsv2.js +11 -0
- package/bin/insites-cli-modules-init.js +54 -0
- package/bin/insites-cli-modules-list.js +28 -0
- package/bin/insites-cli-modules-pull.js +43 -0
- package/bin/insites-cli-modules-remove.js +26 -0
- package/bin/insites-cli-modules-version.js +60 -0
- package/bin/insites-cli-modules.js +13 -0
- package/bin/insites-cli-pull.js +42 -0
- package/bin/insites-cli-sync.js +30 -0
- package/bin/insites-cli.js +53 -0
- package/gui/graphql/babel.config.js +21 -0
- package/gui/graphql/package-lock.json +4772 -0
- package/gui/graphql/package.json +28 -0
- package/gui/graphql/public/105.js +7 -0
- package/gui/graphql/public/178.js +1 -0
- package/gui/graphql/public/198.js +1 -0
- package/gui/graphql/public/441.js +4 -0
- package/gui/graphql/public/471.js +1 -0
- package/gui/graphql/public/480.js +24 -0
- package/gui/graphql/public/481.js +1 -0
- package/gui/graphql/public/571.js +12 -0
- package/gui/graphql/public/573.js +8 -0
- package/gui/graphql/public/574.js +1 -0
- package/gui/graphql/public/584.js +38 -0
- package/gui/graphql/public/588.js +1 -0
- package/gui/graphql/public/662.js +8 -0
- package/gui/graphql/public/724.js +1 -0
- package/gui/graphql/public/739.js +1 -0
- package/gui/graphql/public/744.js +1 -0
- package/gui/graphql/public/768.js +1 -0
- package/gui/graphql/public/79.js +1 -0
- package/gui/graphql/public/845.js +2 -0
- package/gui/graphql/public/863.js +1 -0
- package/gui/graphql/public/896.js +1 -0
- package/gui/graphql/public/92.js +2 -0
- package/gui/graphql/public/98.js +1 -0
- package/gui/graphql/public/980.js +1 -0
- package/gui/graphql/public/995.js +1 -0
- package/gui/graphql/public/index.html +12 -0
- package/gui/graphql/public/main.css +27 -0
- package/gui/graphql/public/main.js +2230 -0
- package/gui/graphql/public/main.js.LICENSE.txt +39 -0
- package/gui/graphql/src/index.jsx +139 -0
- package/gui/graphql/webpack.config.js +52 -0
- package/gui/liquid/public/index.html +82 -0
- package/gui/v1/build/_app/immutable/assets/0.251ef76d.css +1 -0
- package/gui/v1/build/_app/immutable/assets/10.ee72ee6d.css +1 -0
- package/gui/v1/build/_app/immutable/assets/12.f6879dba.css +1 -0
- package/gui/v1/build/_app/immutable/assets/13.bf080bcc.css +1 -0
- package/gui/v1/build/_app/immutable/assets/15.0e0670ce.css +1 -0
- package/gui/v1/build/_app/immutable/assets/2.4a46c382.css +1 -0
- package/gui/v1/build/_app/immutable/assets/4.73dde45b.css +1 -0
- package/gui/v1/build/_app/immutable/assets/6.6bcda092.css +1 -0
- package/gui/v1/build/_app/immutable/assets/7.c0038863.css +1 -0
- package/gui/v1/build/_app/immutable/assets/9.6957ad32.css +1 -0
- package/gui/v1/build/_app/immutable/assets/Aside.66c2d12f.css +1 -0
- package/gui/v1/build/_app/immutable/assets/JSONTree.507a2dde.css +1 -0
- package/gui/v1/build/_app/immutable/assets/JSONTree.79010849.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_layout.4a46c382.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_layout.6bcda092.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_layout.73dde45b.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_layout.85c17bd0.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_page.0e0670ce.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_page.425c1d28.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_page.6957ad32.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_page.bf080bcc.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_page.c0038863.css +1 -0
- package/gui/v1/build/_app/immutable/assets/_page.ee72ee6d.css +1 -0
- package/gui/v1/build/_app/immutable/chunks/Aside.c28a1ec5.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/Icon.1db6668c.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/JSONTree.641da795.js +2 -0
- package/gui/v1/build/_app/immutable/chunks/backgroundJob.0f2693c5.js +53 -0
- package/gui/v1/build/_app/immutable/chunks/graphql.6101590b.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/index.50c00146.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/index.5744cd58.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/index.88325b8f.js +4 -0
- package/gui/v1/build/_app/immutable/chunks/index.c35021d1.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/singletons.b6d4da89.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/state.adc829f2.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/stores.71f75302.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/table.71e66f99.js +16 -0
- package/gui/v1/build/_app/immutable/chunks/tryParseJSON.f125f883.js +1 -0
- package/gui/v1/build/_app/immutable/chunks/user.039256f6.js +31 -0
- package/gui/v1/build/_app/immutable/entry/app.44548b11.js +1 -0
- package/gui/v1/build/_app/immutable/entry/start.4e385061.js +3 -0
- package/gui/v1/build/_app/immutable/nodes/0.d27a86c9.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/1.532e414a.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/10.962850d6.js +26 -0
- package/gui/v1/build/_app/immutable/nodes/11.d0e2eb78.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/12.6449d2bf.js +74 -0
- package/gui/v1/build/_app/immutable/nodes/13.d3883433.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/14.b1e09778.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/15.af2c20ae.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/2.4d90d0b8.js +9 -0
- package/gui/v1/build/_app/immutable/nodes/3.06f6ef98.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/4.32a26935.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/5.06f6ef98.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/6.57fec5aa.js +7 -0
- package/gui/v1/build/_app/immutable/nodes/7.ae78c23b.js +13 -0
- package/gui/v1/build/_app/immutable/nodes/8.f57c5fbf.js +1 -0
- package/gui/v1/build/_app/immutable/nodes/9.374909fd.js +1 -0
- package/gui/v1/build/_app/version.json +1 -0
- package/gui/v1/build/favicon.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-114x114.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-120x120.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-144x144.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-152x152.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-57x57.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-60x60.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-72x72.png +0 -0
- package/gui/v1/build/icon/apple-touch-icon-76x76.png +0 -0
- package/gui/v1/build/icon/code.txt +20 -0
- package/gui/v1/build/icon/favicon-128.png +0 -0
- package/gui/v1/build/icon/favicon-16x16.png +0 -0
- package/gui/v1/build/icon/favicon-196x196.png +0 -0
- package/gui/v1/build/icon/favicon-32x32.png +0 -0
- package/gui/v1/build/icon/favicon-96x96.png +0 -0
- package/gui/v1/build/icon/favicon.ico +0 -0
- package/gui/v1/build/icon/mstile-144x144.png +0 -0
- package/gui/v1/build/icon/mstile-150x150.png +0 -0
- package/gui/v1/build/icon/mstile-310x150.png +0 -0
- package/gui/v1/build/icon/mstile-310x310.png +0 -0
- package/gui/v1/build/icon/mstile-70x70.png +0 -0
- package/gui/v1/build/index.html +35 -0
- package/gui/v1/build/insites-logo-old.png +0 -0
- package/gui/v1/build/insites-logo.png +0 -0
- package/gui/v1/build/prism.js +8 -0
- package/gui/v1/package-lock.json +1616 -0
- package/gui/v1/package.json +27 -0
- package/gui/v1/playwright.config.js +10 -0
- package/gui/v1/pnpm-lock.yaml +992 -0
- package/gui/v1/src/app.html +12 -0
- package/gui/v1/src/lib/api/backgroundJob.js +124 -0
- package/gui/v1/src/lib/api/constant.js +68 -0
- package/gui/v1/src/lib/api/graphql.js +57 -0
- package/gui/v1/src/lib/api/logs.js +45 -0
- package/gui/v1/src/lib/api/record.js +286 -0
- package/gui/v1/src/lib/api/table.js +45 -0
- package/gui/v1/src/lib/api/user.js +78 -0
- package/gui/v1/src/lib/backgroundJob/Delete.svelte +61 -0
- package/gui/v1/src/lib/backgroundJob/Retry.svelte +45 -0
- package/gui/v1/src/lib/database/Create.svelte +324 -0
- package/gui/v1/src/lib/database/Delete.svelte +61 -0
- package/gui/v1/src/lib/database/Filters.svelte +155 -0
- package/gui/v1/src/lib/database/Sort.svelte +110 -0
- package/gui/v1/src/lib/database/Table.svelte +261 -0
- package/gui/v1/src/lib/database/Tables.svelte +276 -0
- package/gui/v1/src/lib/parseValue.js +51 -0
- package/gui/v1/src/lib/relativeTime.js +33 -0
- package/gui/v1/src/lib/state.js +190 -0
- package/gui/v1/src/lib/tryParseJSON.js +32 -0
- package/gui/v1/src/lib/ui/Aside.svelte +176 -0
- package/gui/v1/src/lib/ui/Code.svelte +50 -0
- package/gui/v1/src/lib/ui/ConnectionIndicator.svelte +133 -0
- package/gui/v1/src/lib/ui/Header.svelte +252 -0
- package/gui/v1/src/lib/ui/Icon.svelte +55 -0
- package/gui/v1/src/lib/ui/JSONTree.svelte +77 -0
- package/gui/v1/src/lib/ui/Notifications.svelte +111 -0
- package/gui/v1/src/lib/ui/forms/Toggle.svelte +114 -0
- package/gui/v1/src/routes/+layout.svelte +25 -0
- package/gui/v1/src/routes/+page.svelte +511 -0
- package/gui/v1/src/routes/backgroundJobs/+layout.svelte +366 -0
- package/gui/v1/src/routes/backgroundJobs/+page.svelte +0 -0
- package/gui/v1/src/routes/backgroundJobs/[type]/[id]/+page.svelte +157 -0
- package/gui/v1/src/routes/constants/+layout.svelte +1 -0
- package/gui/v1/src/routes/constants/+page.svelte +382 -0
- package/gui/v1/src/routes/database/+layout.svelte +67 -0
- package/gui/v1/src/routes/database/+page.svelte +3 -0
- package/gui/v1/src/routes/database/table/[id]/+page.svelte +219 -0
- package/gui/v1/src/routes/logs/+layout.svelte +1 -0
- package/gui/v1/src/routes/logs/+page.svelte +512 -0
- package/gui/v1/src/routes/users/+layout.svelte +252 -0
- package/gui/v1/src/routes/users/+page.svelte +4 -0
- package/gui/v1/src/routes/users/[id]/+page.svelte +127 -0
- package/gui/v1/src/style/button.css +141 -0
- package/gui/v1/src/style/code.css +4 -0
- package/gui/v1/src/style/config.css +186 -0
- package/gui/v1/src/style/forms.css +55 -0
- package/gui/v1/src/style/general.css +53 -0
- package/gui/v1/src/style/reset.css +75 -0
- package/gui/v1/static/favicon.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-114x114.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-120x120.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-144x144.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-152x152.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-57x57.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-60x60.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-72x72.png +0 -0
- package/gui/v1/static/icon/apple-touch-icon-76x76.png +0 -0
- package/gui/v1/static/icon/code.txt +20 -0
- package/gui/v1/static/icon/favicon-128.png +0 -0
- package/gui/v1/static/icon/favicon-16x16.png +0 -0
- package/gui/v1/static/icon/favicon-196x196.png +0 -0
- package/gui/v1/static/icon/favicon-32x32.png +0 -0
- package/gui/v1/static/icon/favicon-96x96.png +0 -0
- package/gui/v1/static/icon/favicon.ico +0 -0
- package/gui/v1/static/icon/mstile-144x144.png +0 -0
- package/gui/v1/static/icon/mstile-150x150.png +0 -0
- package/gui/v1/static/icon/mstile-310x150.png +0 -0
- package/gui/v1/static/icon/mstile-310x310.png +0 -0
- package/gui/v1/static/icon/mstile-70x70.png +0 -0
- package/gui/v1/static/insites-logo-old.png +0 -0
- package/gui/v1/static/insites-logo.png +0 -0
- package/gui/v1/static/prism.js +8 -0
- package/gui/v1/svelte.config.js +12 -0
- package/gui/v1/vite.config.js +9 -0
- package/gui/v2/.env.local.sample +1 -0
- package/gui/v2/.eslintrc.json +3 -0
- package/gui/v2/README.md +36 -0
- package/gui/v2/jsconfig.json +7 -0
- package/gui/v2/next.config.mjs +8 -0
- package/gui/v2/out/404/index.html +1 -0
- package/gui/v2/out/404.html +1 -0
- package/gui/v2/out/_next/static/chunks/1255.653490595d3fc3e0.js +1 -0
- package/gui/v2/out/_next/static/chunks/156-d7f9f402651cf1ce.js +1 -0
- package/gui/v2/out/_next/static/chunks/1607-f540467bd5a5afbb.js +1 -0
- package/gui/v2/out/_next/static/chunks/1846.1d14172e53de7bd5.js +1 -0
- package/gui/v2/out/_next/static/chunks/2380.950327f4432936af.js +1 -0
- package/gui/v2/out/_next/static/chunks/2572.bec81f6c42bcb825.js +1 -0
- package/gui/v2/out/_next/static/chunks/2650.fe9586a828cdca9d.js +1 -0
- package/gui/v2/out/_next/static/chunks/3331.562d592a07589250.js +1 -0
- package/gui/v2/out/_next/static/chunks/3510.61b58fad9f502d34.js +1 -0
- package/gui/v2/out/_next/static/chunks/363642f4-2accd15316551dfa.js +1 -0
- package/gui/v2/out/_next/static/chunks/4704.c49f871da8f25277.js +1 -0
- package/gui/v2/out/_next/static/chunks/49448ee7.02b7afe6f73c8f9d.js +1 -0
- package/gui/v2/out/_next/static/chunks/4d1bfaba-4c00fd5561f9a075.js +1 -0
- package/gui/v2/out/_next/static/chunks/5103.b86a80704c50b2cb.js +1 -0
- package/gui/v2/out/_next/static/chunks/5250-f85a6556cdac145c.js +1 -0
- package/gui/v2/out/_next/static/chunks/5253.6fc3f7a625a83de9.js +1 -0
- package/gui/v2/out/_next/static/chunks/6163.50329d0319b2e55b.js +1 -0
- package/gui/v2/out/_next/static/chunks/6262.57b323874390cc1b.js +1 -0
- package/gui/v2/out/_next/static/chunks/6442.5e49a9feebedaf1a.js +1 -0
- package/gui/v2/out/_next/static/chunks/6711.076ab1f536726d8d.js +1 -0
- package/gui/v2/out/_next/static/chunks/6729.9cc7e67fe8be26d8.js +1 -0
- package/gui/v2/out/_next/static/chunks/6744.73e5042f769356c2.js +1 -0
- package/gui/v2/out/_next/static/chunks/7058.e63b764d613d6d14.js +1 -0
- package/gui/v2/out/_next/static/chunks/714.039f29b090afd075.js +1 -0
- package/gui/v2/out/_next/static/chunks/720.b5dff7afd9961ccc.js +1 -0
- package/gui/v2/out/_next/static/chunks/7283.e2af380e1cb385c4.js +1 -0
- package/gui/v2/out/_next/static/chunks/7567.fb1e0ef7389df59d.js +1 -0
- package/gui/v2/out/_next/static/chunks/7604.12b8307c002ce3f4.js +1 -0
- package/gui/v2/out/_next/static/chunks/7612.f071dccc7f2b0711.js +1 -0
- package/gui/v2/out/_next/static/chunks/7737.6191e6708d094927.js +1 -0
- package/gui/v2/out/_next/static/chunks/7833.6ff3b0179c6aab2e.js +1 -0
- package/gui/v2/out/_next/static/chunks/7934.875b05fd89a8eeae.js +1 -0
- package/gui/v2/out/_next/static/chunks/7957.c1f316fb4f52b181.js +1 -0
- package/gui/v2/out/_next/static/chunks/7979.1ed8d3011a12e2f1.js +1 -0
- package/gui/v2/out/_next/static/chunks/8043.592171badd8f3ea1.js +57 -0
- package/gui/v2/out/_next/static/chunks/8047-327e12b999e88629.js +1 -0
- package/gui/v2/out/_next/static/chunks/8069-99e6658a6772ea80.js +1 -0
- package/gui/v2/out/_next/static/chunks/8414.c85352362d33de3e.js +1 -0
- package/gui/v2/out/_next/static/chunks/8700.4409d1a867db1bf3.js +1 -0
- package/gui/v2/out/_next/static/chunks/9121.b83f5b8780f6c093.js +1 -0
- package/gui/v2/out/_next/static/chunks/9336.17897c831ce187f3.js +1 -0
- package/gui/v2/out/_next/static/chunks/9479.f984522cec5ff059.js +1 -0
- package/gui/v2/out/_next/static/chunks/9557.471a0e1662abe246.js +1 -0
- package/gui/v2/out/_next/static/chunks/989.aa0766c8bb66a392.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/background-job/page-0521f8d6e8ec9b55.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/constants/page-f1397b414fe2e4c0.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/database/layout-c1e28d1ae358bc77.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/database/page-d2f667b24c673fbb.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/error-3cf235b6b99c469f.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/global-error-afc2c2c9b5e82f57.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/graphql/page-ae7c858f41b54801.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/layout-8194e46834cb4aba.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/liquid/page-02caf239e75f472f.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/loading-54414b5097331d64.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/logs/layout-5f78d72b1b805625.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/logs/page-ef7dd2b328d24734.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/not-found-33cae8ec5bdcd26f.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/page-73b1f8b1f7552d3f.js +1 -0
- package/gui/v2/out/_next/static/chunks/app/users/page-2195ac1594366ce4.js +1 -0
- package/gui/v2/out/_next/static/chunks/d9670eb5.68da5e9f84dd26cf.js +1 -0
- package/gui/v2/out/_next/static/chunks/fd9d1056-0e6b8922e4ebe23a.js +1 -0
- package/gui/v2/out/_next/static/chunks/framework-08aa667e5202eed8.js +33 -0
- package/gui/v2/out/_next/static/chunks/main-7b334683379129cf.js +1 -0
- package/gui/v2/out/_next/static/chunks/main-app-35b90d128e2e05cf.js +1 -0
- package/gui/v2/out/_next/static/chunks/pages/_app-57bdff7978360b1c.js +1 -0
- package/gui/v2/out/_next/static/chunks/pages/_error-29037c284dd0eec6.js +1 -0
- package/gui/v2/out/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
- package/gui/v2/out/_next/static/chunks/webpack-d07cc8d61c19af5d.js +1 -0
- package/gui/v2/out/_next/static/css/874c6e64ab8446a4.css +6 -0
- package/gui/v2/out/_next/static/css/88716ec5fc4aa1e3.css +15 -0
- package/gui/v2/out/_next/static/wmD1UwESxpzZj8pfiHFeB/_buildManifest.js +1 -0
- package/gui/v2/out/_next/static/wmD1UwESxpzZj8pfiHFeB/_ssgManifest.js +1 -0
- package/gui/v2/out/assets/icons/home-bg-job.png +0 -0
- package/gui/v2/out/assets/icons/home-constants.png +0 -0
- package/gui/v2/out/assets/icons/home-database.png +0 -0
- package/gui/v2/out/assets/icons/home-graphql.png +0 -0
- package/gui/v2/out/assets/icons/home-info-fill-light.png +0 -0
- package/gui/v2/out/assets/icons/home-info-light.png +0 -0
- package/gui/v2/out/assets/icons/home-liquid.png +0 -0
- package/gui/v2/out/assets/icons/home-logs.png +0 -0
- package/gui/v2/out/assets/icons/home-pin-fill-light.png +0 -0
- package/gui/v2/out/assets/icons/home-pin-light.png +0 -0
- package/gui/v2/out/assets/icons/home-support.png +0 -0
- package/gui/v2/out/assets/icons/home-users.png +0 -0
- package/gui/v2/out/assets/icons/menu-bg-job-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-bg-job-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-console-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-console-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-constants-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-constants-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-database-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-database-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-docs-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-docs-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-graphql-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-graphql-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-iia-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-iia-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-liquid-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-liquid-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-logs-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-logs-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-support-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-support-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-theme-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-theme-light.png +0 -0
- package/gui/v2/out/assets/icons/menu-users-dark.png +0 -0
- package/gui/v2/out/assets/icons/menu-users-light.png +0 -0
- package/gui/v2/out/assets/icons/search-icon-dark.svg +3 -0
- package/gui/v2/out/assets/ins-logo-dark.svg +35 -0
- package/gui/v2/out/assets/ins-logo-light.svg +35 -0
- package/gui/v2/out/background-job/index.html +1 -0
- package/gui/v2/out/background-job/index.txt +9 -0
- package/gui/v2/out/constants/index.html +1 -0
- package/gui/v2/out/constants/index.txt +11 -0
- package/gui/v2/out/database/index.html +1 -0
- package/gui/v2/out/database/index.txt +13 -0
- package/gui/v2/out/favicon.ico +0 -0
- package/gui/v2/out/favicon.png +0 -0
- package/gui/v2/out/graphql/index.html +1 -0
- package/gui/v2/out/graphql/index.txt +11 -0
- package/gui/v2/out/index.html +1 -0
- package/gui/v2/out/index.txt +11 -0
- package/gui/v2/out/liquid/index.html +1 -0
- package/gui/v2/out/liquid/index.txt +11 -0
- package/gui/v2/out/logs/index.html +1 -0
- package/gui/v2/out/logs/index.txt +13 -0
- package/gui/v2/out/next.svg +1 -0
- package/gui/v2/out/users/index.html +1 -0
- package/gui/v2/out/users/index.txt +11 -0
- package/gui/v2/out/vercel.svg +1 -0
- package/gui/v2/package-lock.json +9575 -0
- package/gui/v2/package.json +37 -0
- package/gui/v2/postcss.config.js +6 -0
- package/gui/v2/public/assets/icons/home-bg-job.png +0 -0
- package/gui/v2/public/assets/icons/home-constants.png +0 -0
- package/gui/v2/public/assets/icons/home-database.png +0 -0
- package/gui/v2/public/assets/icons/home-graphql.png +0 -0
- package/gui/v2/public/assets/icons/home-info-fill-light.png +0 -0
- package/gui/v2/public/assets/icons/home-info-light.png +0 -0
- package/gui/v2/public/assets/icons/home-liquid.png +0 -0
- package/gui/v2/public/assets/icons/home-logs.png +0 -0
- package/gui/v2/public/assets/icons/home-pin-fill-light.png +0 -0
- package/gui/v2/public/assets/icons/home-pin-light.png +0 -0
- package/gui/v2/public/assets/icons/home-support.png +0 -0
- package/gui/v2/public/assets/icons/home-users.png +0 -0
- package/gui/v2/public/assets/icons/menu-bg-job-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-bg-job-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-console-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-console-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-constants-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-constants-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-database-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-database-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-docs-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-docs-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-graphql-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-graphql-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-iia-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-iia-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-liquid-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-liquid-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-logs-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-logs-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-support-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-support-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-theme-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-theme-light.png +0 -0
- package/gui/v2/public/assets/icons/menu-users-dark.png +0 -0
- package/gui/v2/public/assets/icons/menu-users-light.png +0 -0
- package/gui/v2/public/assets/icons/search-icon-dark.svg +3 -0
- package/gui/v2/public/assets/ins-logo-dark.svg +35 -0
- package/gui/v2/public/assets/ins-logo-light.svg +35 -0
- package/gui/v2/public/favicon.png +0 -0
- package/gui/v2/public/next.svg +1 -0
- package/gui/v2/public/vercel.svg +1 -0
- package/gui/v2/src/app/background-job/page.js +35 -0
- package/gui/v2/src/app/constants/components/Field/Field.css +11 -0
- package/gui/v2/src/app/constants/components/Field/Field.js +52 -0
- package/gui/v2/src/app/constants/components/Filter.js +50 -0
- package/gui/v2/src/app/constants/components/Form/Form.css +3 -0
- package/gui/v2/src/app/constants/components/Form/Form.js +41 -0
- package/gui/v2/src/app/constants/page.js +40 -0
- package/gui/v2/src/app/database/components/Filters/FilterForm.js +70 -0
- package/gui/v2/src/app/database/components/Filters/FilterValue.js +68 -0
- package/gui/v2/src/app/database/components/Filters/Filters.js +72 -0
- package/gui/v2/src/app/database/components/Sidebar.js +46 -0
- package/gui/v2/src/app/database/components/Table.js +122 -0
- package/gui/v2/src/app/database/context.js +106 -0
- package/gui/v2/src/app/database/layout.js +10 -0
- package/gui/v2/src/app/database/page.js +31 -0
- package/gui/v2/src/app/error.js +25 -0
- package/gui/v2/src/app/favicon.ico +0 -0
- package/gui/v2/src/app/global-error.js +20 -0
- package/gui/v2/src/app/globals.css +30 -0
- package/gui/v2/src/app/graphql/graphql.js +71 -0
- package/gui/v2/src/app/graphql/page.js +11 -0
- package/gui/v2/src/app/layout.js +27 -0
- package/gui/v2/src/app/liquid/page.js +68 -0
- package/gui/v2/src/app/loading.js +7 -0
- package/gui/v2/src/app/logs/components/JsonTree.js +31 -0
- package/gui/v2/src/app/logs/components/LogMetadata/LogMetadata.js +61 -0
- package/gui/v2/src/app/logs/components/LogRow.js +62 -0
- package/gui/v2/src/app/logs/components/PinnedPanel/PinnedPanel.js +46 -0
- package/gui/v2/src/app/logs/components/Toolbar/ClearButton.js +10 -0
- package/gui/v2/src/app/logs/components/Toolbar/Filter.js +13 -0
- package/gui/v2/src/app/logs/components/Toolbar/MetaDataCheckbox.js +11 -0
- package/gui/v2/src/app/logs/components/Toolbar/ShowPinnedButton.js +8 -0
- package/gui/v2/src/app/logs/components/Toolbar/Toolbar.js +45 -0
- package/gui/v2/src/app/logs/context.js +66 -0
- package/gui/v2/src/app/logs/layout.js +10 -0
- package/gui/v2/src/app/logs/page.js +73 -0
- package/gui/v2/src/app/not-found.js +11 -0
- package/gui/v2/src/app/page.js +103 -0
- package/gui/v2/src/app/providers.js +18 -0
- package/gui/v2/src/app/users/components/UserDetails.js +38 -0
- package/gui/v2/src/app/users/page.js +121 -0
- package/gui/v2/src/components/CodeEditor/CodeEditor.css +12 -0
- package/gui/v2/src/components/CodeEditor/CodeEditor.js +76 -0
- package/gui/v2/src/components/layout/Header/Header.css +6 -0
- package/gui/v2/src/components/layout/Header/Header.js +139 -0
- package/gui/v2/src/constants/filters.js +32 -0
- package/gui/v2/src/constants/records.js +17 -0
- package/gui/v2/src/context/config.js +27 -0
- package/gui/v2/src/context/filters.js +22 -0
- package/gui/v2/src/context/menu.js +14 -0
- package/gui/v2/src/context/theme.js +29 -0
- package/gui/v2/src/hooks/config.js +6 -0
- package/gui/v2/src/hooks/constants.js +99 -0
- package/gui/v2/src/hooks/database.js +44 -0
- package/gui/v2/src/hooks/filters.js +30 -0
- package/gui/v2/src/hooks/menu.js +19 -0
- package/gui/v2/src/hooks/query.js +10 -0
- package/gui/v2/src/hooks/queryParams.js +20 -0
- package/gui/v2/src/hooks/recordQuery.js +109 -0
- package/gui/v2/src/hooks/theme.js +6 -0
- package/gui/v2/src/hooks/users.js +63 -0
- package/gui/v2/src/reducers/filter.js +28 -0
- package/gui/v2/src/reducers/menu.js +125 -0
- package/gui/v2/src/reducers/query.js +143 -0
- package/gui/v2/src/services/ConfigService.js +7 -0
- package/gui/v2/src/services/CoreService.js +68 -0
- package/gui/v2/src/services/GraphiQLService.js +14 -0
- package/gui/v2/src/services/LiquidService.js +7 -0
- package/gui/v2/src/services/LogService.js +7 -0
- package/gui/v2/src/services/RecordService.js +27 -0
- package/gui/v2/src/styles/app/database.css +10 -0
- package/gui/v2/src/styles/app/graphql.css +100 -0
- package/gui/v2/src/styles/app/liquid.css +4 -0
- package/gui/v2/src/styles/app/users.css +3 -0
- package/gui/v2/src/styles/general.css +31 -0
- package/gui/v2/src/styles/icons.css +7 -0
- package/gui/v2/src/styles/utils.css +103 -0
- package/gui/v2/src/styles/variables.css +94 -0
- package/gui/v2/tailwind.config.js +18 -0
- package/gui/v3/.cta.json +13 -0
- package/gui/v3/.cursorrules +7 -0
- package/gui/v3/.vscode/settings.json +18 -0
- package/gui/v3/README.md +300 -0
- package/gui/v3/components.json +21 -0
- package/gui/v3/index.html +17 -0
- package/gui/v3/out/assets/asn1-EdZsLKOL.js +1 -0
- package/gui/v3/out/assets/babel-C9dsZwsK.js +15 -0
- package/gui/v3/out/assets/clojure-BMjYHr_A.js +1 -0
- package/gui/v3/out/assets/codicon-DCmgc-ay.ttf +0 -0
- package/gui/v3/out/assets/constants-BTP7rcyh.js +1 -0
- package/gui/v3/out/assets/createLucideIcon-C36JZ1s3.js +21 -0
- package/gui/v3/out/assets/css-BnMrqG3P.js +1 -0
- package/gui/v3/out/assets/database-DV7gHS2m.js +106 -0
- package/gui/v3/out/assets/estree-DZUM3lmb.js +36 -0
- package/gui/v3/out/assets/format-Bs4upCOt.js +1 -0
- package/gui/v3/out/assets/graphql-7Dzro_xV.js +29 -0
- package/gui/v3/out/assets/graphql-Cg7bfA9N.js +6 -0
- package/gui/v3/out/assets/graphql-D05RS2Ys.js +29 -0
- package/gui/v3/out/assets/graphql-DeSRErpC.css +6 -0
- package/gui/v3/out/assets/graphql-Kf_-WQAL.js +335 -0
- package/gui/v3/out/assets/graphqlMode-BiZPK6IB.js +2 -0
- package/gui/v3/out/assets/icons/home-bg-job.png +0 -0
- package/gui/v3/out/assets/icons/home-constants.png +0 -0
- package/gui/v3/out/assets/icons/home-database.png +0 -0
- package/gui/v3/out/assets/icons/home-graphql.png +0 -0
- package/gui/v3/out/assets/icons/home-info-fill-light.png +0 -0
- package/gui/v3/out/assets/icons/home-info-light.png +0 -0
- package/gui/v3/out/assets/icons/home-liquid.png +0 -0
- package/gui/v3/out/assets/icons/home-logs.png +0 -0
- package/gui/v3/out/assets/icons/home-pin-fill-light.png +0 -0
- package/gui/v3/out/assets/icons/home-pin-light.png +0 -0
- package/gui/v3/out/assets/icons/home-support.png +0 -0
- package/gui/v3/out/assets/icons/home-users.png +0 -0
- package/gui/v3/out/assets/icons/menu-bg-job-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-bg-job-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-console-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-console-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-constants-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-constants-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-database-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-database-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-docs-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-docs-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-graphql-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-graphql-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-iia-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-iia-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-liquid-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-liquid-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-logs-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-logs-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-support-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-support-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-theme-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-theme-light.png +0 -0
- package/gui/v3/out/assets/icons/menu-users-dark.png +0 -0
- package/gui/v3/out/assets/icons/menu-users-light.png +0 -0
- package/gui/v3/out/assets/icons/search-icon-dark.svg +3 -0
- package/gui/v3/out/assets/index-AQmQqDwZ.js +68 -0
- package/gui/v3/out/assets/index-BkuncLX2.js +1 -0
- package/gui/v3/out/assets/index-Cf5jXmk6.css +1 -0
- package/gui/v3/out/assets/index-CizP5xBC.js +7 -0
- package/gui/v3/out/assets/index-DO4-OviR.js +1 -0
- package/gui/v3/out/assets/index-DuTWoEAJ.js +1 -0
- package/gui/v3/out/assets/index-Fzn1QYI7.js +41 -0
- package/gui/v3/out/assets/ins-logo-dark.svg +35 -0
- package/gui/v3/out/assets/ins-logo-light.svg +35 -0
- package/gui/v3/out/assets/javascript-qCveANmP.js +1 -0
- package/gui/v3/out/assets/jsonMode-D3_vpDO9.js +15 -0
- package/gui/v3/out/assets/liquid-eqk0BGFR.js +56 -0
- package/gui/v3/out/assets/lite-BCVbb_oz.js +2 -0
- package/gui/v3/out/assets/logs-DI6Go5dW.js +16 -0
- package/gui/v3/out/assets/mllike-CXdrOF99.js +1 -0
- package/gui/v3/out/assets/monaco-editor-C4cuflwX.js +722 -0
- package/gui/v3/out/assets/monaco-editor-D6kYW_CN.css +1 -0
- package/gui/v3/out/assets/mouseTarget-B_KnTiWf.js +9 -0
- package/gui/v3/out/assets/objectWithoutPropertiesLoose-Ls7qkcH1.js +1 -0
- package/gui/v3/out/assets/pug-DukmZTjD.js +1 -0
- package/gui/v3/out/assets/python-BuPzkPfP.js +1 -0
- package/gui/v3/out/assets/rpm-CTu-6PCP.js +1 -0
- package/gui/v3/out/assets/sql-D0XecflT.js +1 -0
- package/gui/v3/out/assets/standalone-BS_cqyLa.js +39 -0
- package/gui/v3/out/assets/table-D17Bwjdk.js +6 -0
- package/gui/v3/out/assets/toolkit-DToHxdMP.js +1 -0
- package/gui/v3/out/assets/ttcn-cfg-B9xdYoR4.js +1 -0
- package/gui/v3/out/assets/users-DI3wqkEI.js +1 -0
- package/gui/v3/out/favicon.png +0 -0
- package/gui/v3/out/index.html +41 -0
- package/gui/v3/out/logo192.png +0 -0
- package/gui/v3/out/logo512.png +0 -0
- package/gui/v3/out/manifest.json +25 -0
- package/gui/v3/out/monacoeditorwork/editor.worker.bundle.js +13519 -0
- package/gui/v3/out/monacoeditorwork/graphql.worker..bundle.js +32105 -0
- package/gui/v3/out/monacoeditorwork/json.worker.bundle.js +21320 -0
- package/gui/v3/out/robots.txt +3 -0
- package/gui/v3/package-lock.json +7193 -0
- package/gui/v3/package.json +69 -0
- package/gui/v3/public/assets/icons/home-bg-job.png +0 -0
- package/gui/v3/public/assets/icons/home-constants.png +0 -0
- package/gui/v3/public/assets/icons/home-database.png +0 -0
- package/gui/v3/public/assets/icons/home-graphql.png +0 -0
- package/gui/v3/public/assets/icons/home-info-fill-light.png +0 -0
- package/gui/v3/public/assets/icons/home-info-light.png +0 -0
- package/gui/v3/public/assets/icons/home-liquid.png +0 -0
- package/gui/v3/public/assets/icons/home-logs.png +0 -0
- package/gui/v3/public/assets/icons/home-pin-fill-light.png +0 -0
- package/gui/v3/public/assets/icons/home-pin-light.png +0 -0
- package/gui/v3/public/assets/icons/home-support.png +0 -0
- package/gui/v3/public/assets/icons/home-users.png +0 -0
- package/gui/v3/public/assets/icons/menu-bg-job-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-bg-job-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-console-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-console-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-constants-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-constants-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-database-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-database-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-docs-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-docs-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-graphql-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-graphql-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-iia-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-iia-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-liquid-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-liquid-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-logs-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-logs-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-support-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-support-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-theme-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-theme-light.png +0 -0
- package/gui/v3/public/assets/icons/menu-users-dark.png +0 -0
- package/gui/v3/public/assets/icons/menu-users-light.png +0 -0
- package/gui/v3/public/assets/icons/search-icon-dark.svg +3 -0
- package/gui/v3/public/assets/ins-logo-dark.svg +35 -0
- package/gui/v3/public/assets/ins-logo-light.svg +35 -0
- package/gui/v3/public/favicon.png +0 -0
- package/gui/v3/public/logo192.png +0 -0
- package/gui/v3/public/logo512.png +0 -0
- package/gui/v3/public/manifest.json +25 -0
- package/gui/v3/public/robots.txt +3 -0
- package/gui/v3/src/components/CodeEditor.tsx +100 -0
- package/gui/v3/src/components/commons/DatePicker.tsx +93 -0
- package/gui/v3/src/components/commons/DateRangeFilter.tsx +76 -0
- package/gui/v3/src/components/commons/InputBox.tsx +88 -0
- package/gui/v3/src/components/data/DataPagination.tsx +116 -0
- package/gui/v3/src/components/data/DataTable.tsx +84 -0
- package/gui/v3/src/components/layout/Header.tsx +42 -0
- package/gui/v3/src/components/layout/Layout.tsx +15 -0
- package/gui/v3/src/components/ui/alert.tsx +66 -0
- package/gui/v3/src/components/ui/badge.tsx +48 -0
- package/gui/v3/src/components/ui/button.tsx +59 -0
- package/gui/v3/src/components/ui/calendar.tsx +211 -0
- package/gui/v3/src/components/ui/card.tsx +92 -0
- package/gui/v3/src/components/ui/dropdown-menu.tsx +255 -0
- package/gui/v3/src/components/ui/hover-card.tsx +42 -0
- package/gui/v3/src/components/ui/input.tsx +21 -0
- package/gui/v3/src/components/ui/navigation-menu.tsx +168 -0
- package/gui/v3/src/components/ui/pagination.tsx +127 -0
- package/gui/v3/src/components/ui/popover.tsx +46 -0
- package/gui/v3/src/components/ui/resizable.tsx +54 -0
- package/gui/v3/src/components/ui/select.tsx +183 -0
- package/gui/v3/src/components/ui/separator.tsx +28 -0
- package/gui/v3/src/components/ui/sheet.tsx +137 -0
- package/gui/v3/src/components/ui/sidebar.tsx +724 -0
- package/gui/v3/src/components/ui/skeleton.tsx +13 -0
- package/gui/v3/src/components/ui/switch.tsx +29 -0
- package/gui/v3/src/components/ui/table.tsx +114 -0
- package/gui/v3/src/components/ui/tooltip.tsx +61 -0
- package/gui/v3/src/features/config/context.ts +21 -0
- package/gui/v3/src/features/config/hooks.ts +11 -0
- package/gui/v3/src/features/config/provider.tsx +33 -0
- package/gui/v3/src/features/config/services.ts +14 -0
- package/gui/v3/src/features/config/type.ts +7 -0
- package/gui/v3/src/features/database/components/DatabaseLayout.tsx +44 -0
- package/gui/v3/src/features/database/components/DatabaseLoader.tsx +3 -0
- package/gui/v3/src/features/database/components/DatabaseNotFound.tsx +6 -0
- package/gui/v3/src/features/database/components/DatabaseSidebar.tsx +60 -0
- package/gui/v3/src/features/database/components/LoadingIndicator.tsx +3 -0
- package/gui/v3/src/features/database/components/RecordsFilter.tsx +89 -0
- package/gui/v3/src/features/database/components/RecordsTable.tsx +64 -0
- package/gui/v3/src/features/database/components/RecordsViewer.tsx +39 -0
- package/gui/v3/src/features/database/graphql/queries.ts +64 -0
- package/gui/v3/src/features/database/hooks/useDatabaseColumns.ts +34 -0
- package/gui/v3/src/features/database/hooks/useRecords.ts +21 -0
- package/gui/v3/src/features/database/hooks/useSelectedTable.ts +14 -0
- package/gui/v3/src/features/database/hooks/useTables.ts +18 -0
- package/gui/v3/src/features/database/reducers/useRecordsVariable.ts +66 -0
- package/gui/v3/src/features/database/schema/records.ts +82 -0
- package/gui/v3/src/features/database/schema/tables.ts +51 -0
- package/gui/v3/src/features/graphiql/components/GraphiQL.tsx +21 -0
- package/gui/v3/src/features/graphiql/style.css +120 -0
- package/gui/v3/src/features/liquid/components/LiquidEditor.tsx +95 -0
- package/gui/v3/src/features/liquid/service.ts +13 -0
- package/gui/v3/src/features/logs/components/LogMessage.tsx +83 -0
- package/gui/v3/src/features/logs/components/LogsTable.tsx +121 -0
- package/gui/v3/src/features/logs/components/LogsViewer.tsx +30 -0
- package/gui/v3/src/features/logs/hooks/useLogs.tsx +59 -0
- package/gui/v3/src/features/logs/types/schema.ts +8 -0
- package/gui/v3/src/features/menu/components/GuiMenu.tsx +32 -0
- package/gui/v3/src/features/menu/components/InsitesMenu.tsx +56 -0
- package/gui/v3/src/features/menu/components/TileMenu.tsx +88 -0
- package/gui/v3/src/features/menu/constants.ts +99 -0
- package/gui/v3/src/features/menu/hooks.ts +11 -0
- package/gui/v3/src/features/menu/store.ts +26 -0
- package/gui/v3/src/features/menu/types.ts +16 -0
- package/gui/v3/src/features/theme/context.tsx +16 -0
- package/gui/v3/src/features/theme/hook.tsx +11 -0
- package/gui/v3/src/features/theme/provider.tsx +35 -0
- package/gui/v3/src/features/theme/store.ts +17 -0
- package/gui/v3/src/features/theme/types.ts +1 -0
- package/gui/v3/src/features/users/components/Users.tsx +77 -0
- package/gui/v3/src/features/users/types.ts +31 -0
- package/gui/v3/src/features/users/usernames.ts +45 -0
- package/gui/v3/src/hooks/use-mobile.ts +19 -0
- package/gui/v3/src/lib/api/constants.ts +1 -0
- package/gui/v3/src/lib/api/errors.ts +22 -0
- package/gui/v3/src/lib/api/request.ts +57 -0
- package/gui/v3/src/lib/api/types.ts +16 -0
- package/gui/v3/src/lib/graphql/hooks.ts +27 -0
- package/gui/v3/src/lib/graphql/request.ts +31 -0
- package/gui/v3/src/lib/graphql/schema/filters.ts +108 -0
- package/gui/v3/src/lib/graphql/schema/sorts.ts +10 -0
- package/gui/v3/src/lib/graphql/types.ts +29 -0
- package/gui/v3/src/lib/providers/entries.ts +21 -0
- package/gui/v3/src/lib/providers/index.tsx +10 -0
- package/gui/v3/src/lib/providers/queryClient.tsx +16 -0
- package/gui/v3/src/lib/providers/types.ts +9 -0
- package/gui/v3/src/lib/utils.ts +30 -0
- package/gui/v3/src/logo.svg +44 -0
- package/gui/v3/src/main.tsx +42 -0
- package/gui/v3/src/pages/ConstantPage.tsx +3 -0
- package/gui/v3/src/pages/DatabasePage.tsx +31 -0
- package/gui/v3/src/pages/GraphqlPage.tsx +9 -0
- package/gui/v3/src/pages/HomePage.tsx +36 -0
- package/gui/v3/src/pages/LiquidPage.tsx +5 -0
- package/gui/v3/src/pages/LogsPage.tsx +10 -0
- package/gui/v3/src/pages/Userspage.tsx +5 -0
- package/gui/v3/src/reportWebVitals.ts +13 -0
- package/gui/v3/src/routeTree.gen.ts +189 -0
- package/gui/v3/src/routes/__root.tsx +6 -0
- package/gui/v3/src/routes/constants.tsx +7 -0
- package/gui/v3/src/routes/database.tsx +6 -0
- package/gui/v3/src/routes/graphql.tsx +6 -0
- package/gui/v3/src/routes/index.tsx +6 -0
- package/gui/v3/src/routes/liquid.tsx +6 -0
- package/gui/v3/src/routes/logs.tsx +6 -0
- package/gui/v3/src/routes/users.tsx +6 -0
- package/gui/v3/src/styles.css +247 -0
- package/gui/v3/tsconfig.json +28 -0
- package/gui/v3/vite.config.ts +43 -0
- package/lib/ServerError.js +122 -0
- package/lib/apiRequest.js +15 -0
- package/lib/archive.js +126 -0
- package/lib/assets/insites-icon.png +0 -0
- package/lib/assets/manifest.js +34 -0
- package/lib/assets/packAssets.js +53 -0
- package/lib/assets.js +56 -0
- package/lib/audit/detailed.js +97 -0
- package/lib/audit/duplicateFile.js +31 -0
- package/lib/audit/extensions.js +53 -0
- package/lib/audit/fileName.js +20 -0
- package/lib/audit/filters.js +99 -0
- package/lib/audit/orphanedIncludes.js +85 -0
- package/lib/audit/tags.js +69 -0
- package/lib/audit.js +47 -0
- package/lib/data/fetchFiles.js +93 -0
- package/lib/data/isValidJSON.js +12 -0
- package/lib/data/uploadFiles.js +92 -0
- package/lib/data/waitForStatus.js +31 -0
- package/lib/deploy/directAssetsUploadStrategy.js +57 -0
- package/lib/deploy/strategy.js +8 -0
- package/lib/directories.js +23 -0
- package/lib/downloadFile.js +16 -0
- package/lib/duration.js +7 -0
- package/lib/files.js +96 -0
- package/lib/insites-apig.js +18 -0
- package/lib/insites-console.js +24 -0
- package/lib/logger/rainbow.js +11 -0
- package/lib/logger/simple.js +9 -0
- package/lib/logger.js +63 -0
- package/lib/logsv2/http.js +40 -0
- package/lib/modules.js +129 -0
- package/lib/portal.js +52 -0
- package/lib/pos-proxy.js +162 -0
- package/lib/prepareArchive.js +49 -0
- package/lib/presignUrl.js +71 -0
- package/lib/proxy.js +75 -0
- package/lib/push.js +62 -0
- package/lib/s3UploadFile.js +56 -0
- package/lib/server.js +123 -0
- package/lib/settings.js +42 -0
- package/lib/shouldBeSynced.js +89 -0
- package/lib/swagger-client.js +287 -0
- package/lib/templates.js +52 -0
- package/lib/updateNotifier.js +8 -0
- package/lib/utils/valid-file-path.js +21 -0
- package/lib/validators/directoryEmpty.js +12 -0
- package/lib/validators/directoryExists.js +12 -0
- package/lib/validators/email.js +8 -0
- package/lib/validators/existence.js +9 -0
- package/lib/validators/index.js +13 -0
- package/lib/validators/url.js +8 -0
- package/lib/watch-files-extensions.js +39 -0
- package/lib/watch.js +192 -0
- package/mock/app.js +45 -0
- package/mock/bin/www +91 -0
- package/mock/package-lock.json +2287 -0
- package/mock/package.json +18 -0
- package/mock/public/stylesheets/style.css +8 -0
- package/mock/responses/constants.js +39 -0
- package/mock/responses/databases.js +3589 -0
- package/mock/responses/logs.js +126 -0
- package/mock/responses/records.js +443 -0
- package/mock/responses/schemas.js +36896 -0
- package/mock/responses/users.js +194 -0
- package/mock/routes/api.js +53 -0
- package/mock/routes/index.js +13 -0
- package/mock/routes/users.js +9 -0
- package/mock/views/error.jade +6 -0
- package/mock/views/index.jade +5 -0
- package/mock/views/layout.jade +7 -0
- package/package.json +77 -0
- package/tests/archive.test.js +33 -0
- package/tests/deploy.test.js +26 -0
- package/tests/fixtures/archive/default/app/assets/images/insites-logo.svg +55 -0
- package/tests/fixtures/archive/default/app/views/pages/hello.liquid +4 -0
- package/tests/fixtures/archive/default/modules/testModule/public/views/pages/hello-test-module.liquid +4 -0
- package/tests/fixtures/archive/default/modules/testModule/public/views/partials/dir/subdir/foo.liquid +1 -0
- package/tests/fixtures/deploy/default/app/assets/images/insites-logo.svg +55 -0
- package/tests/fixtures/deploy/default/app/views/pages/index.liquid +6 -0
- package/tests/fixtures/deploy/default/app/views/partials/test.liquid +1 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/README.md +22 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/api_calls/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/assets/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/emails/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/graphql/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/model_schemas/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/smses/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/translations/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/views/layouts/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/views/pages/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/private/views/partials/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/api_calls/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/assets/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/emails/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/graphql/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/model_schemas/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/smses/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/translations/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/layouts/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/pages/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/pages/demo.json.liquid +4 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/components/.keep +0 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/components/test.html.liquid +1 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/public/views/partials/components/test.liquid +1 -0
- package/tests/fixtures/deploy/default/modules/insites-cli-demo-module/template-values.json +7 -0
- package/tests/utils/cliPath.js +4 -0
- package/tests/utils/exec.js +12 -0
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
const fetchAuthData = require('../lib/settings').fetchSettings,
|
|
2
|
+
path = require('path'),
|
|
3
|
+
Gateway = require('../lib/pos-proxy'),
|
|
4
|
+
logger = require('../lib/logger'),
|
|
5
|
+
{ apiRequest } = require('./apiRequest'),
|
|
6
|
+
api = require('./logsv2/http'),
|
|
7
|
+
fs = require('fs');
|
|
8
|
+
|
|
9
|
+
// const colors = require('colors');
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class APIs {
|
|
13
|
+
constructor(ctx) {
|
|
14
|
+
this.Search = new Search(ctx);
|
|
15
|
+
this.Alerts = new Alerts(ctx);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
class Alerts {
|
|
20
|
+
constructor(ctx) {
|
|
21
|
+
this.ctx = ctx;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// /api/{org_id}/alerts
|
|
25
|
+
async ListAlerts({org_id}, {securities}) {
|
|
26
|
+
return await api.get(this.ctx.url + `/api/${org_id}/alerts`, {
|
|
27
|
+
securities: securities
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// /api/{org_id}/{stream_name}/alerts/{alert_name}/trigger
|
|
32
|
+
async TriggerAlert({org_id, stream_name, alert_name}, {requestBody, securities}) {
|
|
33
|
+
return await api.put(this.ctx.url + `/api/${org_id}/${stream_name}/alerts/${alert_name}/trigger`, {
|
|
34
|
+
securities: securities,
|
|
35
|
+
body: requestBody
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
// /api/{org_id}/{stream_name}/alerts/{alert_name}
|
|
39
|
+
async SaveAlert({org_id, stream_name, alert_name}, {requestBody, securities}) {
|
|
40
|
+
console.log(requestBody);
|
|
41
|
+
return await api.post(this.ctx.url + `/api/${org_id}/${stream_name}/alerts/${alert_name}`, {
|
|
42
|
+
securities: securities,
|
|
43
|
+
body: requestBody
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// /api/{org_id}/alerts/templates/{template_name}
|
|
48
|
+
async CreateTemplate({org_id, template_name}, {requestBody, securities}) {
|
|
49
|
+
return await api.post(this.ctx.url + `/api/${org_id}/alerts/templates/${template_name}`, {
|
|
50
|
+
securities: securities,
|
|
51
|
+
body: requestBody
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// /api/{org_id}/alerts/destinations/{destination_name}
|
|
56
|
+
async CreateDestination({org_id, destination_name}, {requestBody, securities}) {
|
|
57
|
+
return await api.post(this.ctx.url + `/api/${org_id}/alerts/destinations/${destination_name}`, {
|
|
58
|
+
securities: securities,
|
|
59
|
+
body: requestBody
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
class Search {
|
|
65
|
+
constructor(ctx) {
|
|
66
|
+
this.ctx = ctx;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
async SearchSQL({org_id}, {requestBody, securities}) {
|
|
70
|
+
return await api.post(this.ctx.url + `/api/${org_id}/_search`, {
|
|
71
|
+
securities: securities,
|
|
72
|
+
body: requestBody
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
async SearchAround({org_id, stream_name, key, size, sql}, {requestBody, securities}) {
|
|
77
|
+
if (sql == undefined) sql = "";
|
|
78
|
+
return await api.get(this.ctx.url + `/api/${org_id}/${stream_name}/_around`, {
|
|
79
|
+
securities: securities,
|
|
80
|
+
params: { key, size, sql }
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
class LogClient {
|
|
87
|
+
constructor({ url }) {
|
|
88
|
+
this.apis = new APIs(this);
|
|
89
|
+
this.url = url;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
class SwaggerProxy {
|
|
94
|
+
static async client(environment, program) {
|
|
95
|
+
try {
|
|
96
|
+
const LOGS_PROXY_URL = process.env.LOGS_PROXY_URL || 'https://openobserve-proxy.platformos.dev'
|
|
97
|
+
|
|
98
|
+
const client = new LogClient({url: LOGS_PROXY_URL});
|
|
99
|
+
|
|
100
|
+
const authData = fetchAuthData(environment, program);
|
|
101
|
+
|
|
102
|
+
const securities = { authorized: { Authorization: authData.key }}
|
|
103
|
+
const instance = await new Gateway(authData).getInstance()
|
|
104
|
+
|
|
105
|
+
instance.url = authData.url
|
|
106
|
+
|
|
107
|
+
logger.Debug({instance, authData, securities})
|
|
108
|
+
|
|
109
|
+
return new SwaggerProxy(client, instance, securities);
|
|
110
|
+
}
|
|
111
|
+
catch(e) {
|
|
112
|
+
if (e.statusCode == 401)
|
|
113
|
+
logger.Error(`[Unauthorized] Please ensure your token is correct.`);
|
|
114
|
+
else
|
|
115
|
+
logger.Error(e)
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
constructor(client, instance, securities) {
|
|
120
|
+
this.client = client
|
|
121
|
+
this.instance = instance
|
|
122
|
+
this.securities = securities
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
async searchAround(program){
|
|
126
|
+
return this.client.apis.Search
|
|
127
|
+
.SearchAround(
|
|
128
|
+
{org_id: this.instance.uuid, stream_name: program.stream_name, key: program.key, size: program.size, sql: program.sql},
|
|
129
|
+
{securities: this.securities})
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
async searchSQLByQuery(query){
|
|
133
|
+
return this.client.apis.Search
|
|
134
|
+
.SearchSQL(
|
|
135
|
+
{org_id: this.instance.uuid},
|
|
136
|
+
{requestBody: query, securities: this.securities})
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
async searchSQL(program){
|
|
140
|
+
return this.searchSQLByQuery(search.buildQuery(program))
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
async alerts(program){
|
|
144
|
+
return this.client.apis.Alerts
|
|
145
|
+
.ListAlerts({org_id: this.instance.uuid}, {securities: this.securities})
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
async triggerAlert(program){
|
|
149
|
+
return this.client.apis.Alerts
|
|
150
|
+
.TriggerAlert(
|
|
151
|
+
{org_id: this.instance.uuid, stream_name: 'logs', alert_name: program.name},
|
|
152
|
+
{securities: this.securities})
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
async createAlert(program){
|
|
156
|
+
const alert = alerts.buildAlert(program)
|
|
157
|
+
|
|
158
|
+
// console.log(this.client.apis.Alerts)
|
|
159
|
+
|
|
160
|
+
const template = await this.createTemplate(program)
|
|
161
|
+
logger.Debug(template.body)
|
|
162
|
+
const destination = await this.createDestination(program)
|
|
163
|
+
logger.Debug(destination.body)
|
|
164
|
+
|
|
165
|
+
return this.client.apis.Alerts
|
|
166
|
+
.SaveAlert(
|
|
167
|
+
{org_id: this.instance.uuid, stream_name: 'logs', alert_name: program.name},
|
|
168
|
+
{requestBody: alert, securities: this.securities})
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
async createDestination(program){
|
|
172
|
+
const destination = alerts.buildDestination(program)
|
|
173
|
+
logger.Debug(destination)
|
|
174
|
+
return this.client.apis.Alerts
|
|
175
|
+
.CreateDestination(
|
|
176
|
+
{org_id: this.instance.uuid, destination_name: program.name},
|
|
177
|
+
{requestBody: destination, securities: this.securities})
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
async createTemplate(program){
|
|
181
|
+
program.instance = this.instance
|
|
182
|
+
const template = { name: program.name, body: alerts.templates.slack(program), isDefault: true }
|
|
183
|
+
logger.Debug(template)
|
|
184
|
+
return this.client.apis.Alerts
|
|
185
|
+
.CreateTemplate(
|
|
186
|
+
{org_id: this.instance.uuid, template_name: program.name},
|
|
187
|
+
{requestBody: template, securities: this.securities})
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
alerts = {
|
|
192
|
+
templates: {
|
|
193
|
+
slack({name, operator, keyword, column, channel, instance}) {
|
|
194
|
+
const template = JSON.parse(fs.readFileSync(path.join(__dirname, './openobserve/alerts/slack.json')));
|
|
195
|
+
template.channel = channel
|
|
196
|
+
|
|
197
|
+
const description = `*Alert details:*\n *${column}* column ${operator} *${keyword}* keyword`
|
|
198
|
+
template.text = description
|
|
199
|
+
template.blocks.push({type: 'section', text: {text: description, type: "mrkdwn"}})
|
|
200
|
+
|
|
201
|
+
const instanceInfo = `*Instance*:\n ${instance.url}`
|
|
202
|
+
template.blocks.push({type: 'section', text: {text: instanceInfo, type: "mrkdwn"}})
|
|
203
|
+
|
|
204
|
+
return template
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
buildDestination({url, name}){
|
|
208
|
+
return {
|
|
209
|
+
"headers": {
|
|
210
|
+
},
|
|
211
|
+
"method": "post",
|
|
212
|
+
"name": name,
|
|
213
|
+
"skip_tls_verify": false,
|
|
214
|
+
"template": name,
|
|
215
|
+
"url": url
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
buildAlert({from, name, keyword, sql, column, operator}){
|
|
219
|
+
return {
|
|
220
|
+
"condition": {
|
|
221
|
+
"column": "message",
|
|
222
|
+
"ignoreCase": true,
|
|
223
|
+
"isNumeric": true,
|
|
224
|
+
"operator": operator,
|
|
225
|
+
"value": keyword
|
|
226
|
+
},
|
|
227
|
+
"destination": name,
|
|
228
|
+
"duration": 0,
|
|
229
|
+
"frequency": 0,
|
|
230
|
+
"is_real_time": true,
|
|
231
|
+
"name": name,
|
|
232
|
+
"time_between_alerts": 0
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
search = {
|
|
238
|
+
buildQuery({from, size, start_time, end_time, sql}) {
|
|
239
|
+
query = {
|
|
240
|
+
query: {
|
|
241
|
+
from: parseInt(from),
|
|
242
|
+
size: parseInt(size),
|
|
243
|
+
sql: (sql || 'select * from logs')
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
if (start_time) query.query['start_time'] = parseInt(start_time)
|
|
247
|
+
if (end_time) query.query['end_time'] = parseInt(end_time)
|
|
248
|
+
|
|
249
|
+
return query
|
|
250
|
+
},
|
|
251
|
+
printJSON: logger.Info,
|
|
252
|
+
|
|
253
|
+
printLogs(response, key) {
|
|
254
|
+
Object
|
|
255
|
+
.entries(response.hits)
|
|
256
|
+
.map((item) => {
|
|
257
|
+
item[1].highlight = item[1]._timestamp.toString() == key;
|
|
258
|
+
return item;
|
|
259
|
+
})
|
|
260
|
+
.forEach(search.printLog)
|
|
261
|
+
},
|
|
262
|
+
printLog(hit) { console.log(search.formatHit(hit)) },
|
|
263
|
+
formatHit([id, hit]) {
|
|
264
|
+
const row = `[${search.toDate(hit._timestamp)}] ${hit._timestamp} ${hit.type} | ${hit.message}`
|
|
265
|
+
if (hit.highlight) {
|
|
266
|
+
return row.blue
|
|
267
|
+
} else {
|
|
268
|
+
return row
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
printReport(response, report) {
|
|
272
|
+
console.log(report.meta.title)
|
|
273
|
+
if (response.aggs)
|
|
274
|
+
console.table(
|
|
275
|
+
Object.entries(response.aggs.histogram).map((r) => { return r[1] }),
|
|
276
|
+
report.meta.columns
|
|
277
|
+
)
|
|
278
|
+
},
|
|
279
|
+
toDate(timestamp) {
|
|
280
|
+
if (timestamp)
|
|
281
|
+
return new Date(timestamp / 1000).toLocaleString()
|
|
282
|
+
else
|
|
283
|
+
"---"
|
|
284
|
+
},
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
module.exports = { SwaggerProxy, search };
|
package/lib/templates.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
const fs = require('fs'),
|
|
2
|
+
path = require('path');
|
|
3
|
+
|
|
4
|
+
const mustache = require('mustache');
|
|
5
|
+
|
|
6
|
+
const logger = require('./logger');
|
|
7
|
+
|
|
8
|
+
const tags = ['<%=', '=%>'];
|
|
9
|
+
const allowedTemplateExtentions = ['.css', '.js', '.liquid', '.yml', '.xml', '.json', '.svg', '.graphql', '.html'];
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* This function will replace tags with values from template data.
|
|
13
|
+
* Example: if tags are <%= and =%> and we have code like this:
|
|
14
|
+
*
|
|
15
|
+
* ---
|
|
16
|
+
* slug: <%= page_url =%>
|
|
17
|
+
* ---
|
|
18
|
+
*
|
|
19
|
+
* This function will replace `page_url` with value from templateData
|
|
20
|
+
* hash or it will **not** raise an error if the value is missing.
|
|
21
|
+
* @param {string} path - path to the file which will be processed.
|
|
22
|
+
**/
|
|
23
|
+
const fillInTemplateValues = (filePath, templateData) => {
|
|
24
|
+
if (fs.existsSync(filePath) && qualifedForTemplateProcessing(filePath) && hasTemplateValues(templateData)) {
|
|
25
|
+
const fileBody = fs.readFileSync(filePath, 'utf8');
|
|
26
|
+
try {
|
|
27
|
+
return mustache.render(fileBody, templateData, {}, tags);
|
|
28
|
+
} catch (e) {
|
|
29
|
+
logger.Debug(e.message);
|
|
30
|
+
return fileBody;
|
|
31
|
+
}
|
|
32
|
+
} else {
|
|
33
|
+
return fs.createReadStream(filePath);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
const qualifedForTemplateProcessing = filePath => {
|
|
38
|
+
return allowedTemplateExtentions.includes(path.extname(filePath));
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
const hasTemplateValues = templateData => {
|
|
42
|
+
try {
|
|
43
|
+
return Object.keys(templateData).length !== 0;
|
|
44
|
+
} catch (e) {
|
|
45
|
+
logger.Debug(e.message);
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
module.exports = {
|
|
51
|
+
fillInTemplateValues: fillInTemplateValues
|
|
52
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
const validCharacters = new RegExp([
|
|
2
|
+
'[^', // Not the following characters:
|
|
3
|
+
'\\w', // - Word characters
|
|
4
|
+
'\\s', // - Whitespace
|
|
5
|
+
'\\-', // - Dash
|
|
6
|
+
'_',
|
|
7
|
+
'~',
|
|
8
|
+
'@',
|
|
9
|
+
'%',
|
|
10
|
+
'\+', // - Plus
|
|
11
|
+
'\\.', // - Dot
|
|
12
|
+
'\\/', // - Forward slash
|
|
13
|
+
'\\\\', // - Backward slash
|
|
14
|
+
'\\(', // - Open parenthesis
|
|
15
|
+
'\\)', // - Close parenthesis
|
|
16
|
+
"'",
|
|
17
|
+
'&',
|
|
18
|
+
']'
|
|
19
|
+
].join(''));
|
|
20
|
+
|
|
21
|
+
module.exports = str => !validCharacters.test(str);
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const logger = require('../logger');
|
|
2
|
+
const shell = require('shelljs');
|
|
3
|
+
const noop = () => {};
|
|
4
|
+
|
|
5
|
+
module.exports = ({ path, message = 'Directory is empty.', fail = noop }) => {
|
|
6
|
+
const directoryEmpty = shell.ls(path).length == 0;
|
|
7
|
+
|
|
8
|
+
if (directoryEmpty) {
|
|
9
|
+
fail();
|
|
10
|
+
logger.Error(message, { hideTimestamp: true });
|
|
11
|
+
}
|
|
12
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const logger = require('../logger');
|
|
2
|
+
const fs = require('fs');
|
|
3
|
+
const noop = () => {};
|
|
4
|
+
|
|
5
|
+
module.exports = ({ path, message = "Directory doesn't exist.", fail = noop }) => {
|
|
6
|
+
const directoryExists = fs.existsSync(path);
|
|
7
|
+
|
|
8
|
+
if (!directoryExists) {
|
|
9
|
+
fail();
|
|
10
|
+
logger.Error(message, { hideTimestamp: true });
|
|
11
|
+
}
|
|
12
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
const logger = require('../logger');
|
|
2
|
+
const noop = () => {};
|
|
3
|
+
|
|
4
|
+
module.exports = ({ argumentName = 'all required arguments', argumentValue, fail = noop }) => {
|
|
5
|
+
if (typeof argumentValue === 'undefined') {
|
|
6
|
+
fail();
|
|
7
|
+
logger.Error(`Please provide ${argumentName}`, { hideTimestamp: true });
|
|
8
|
+
}
|
|
9
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const existence = require('./existence');
|
|
2
|
+
const url = require('./url');
|
|
3
|
+
const email = require('./email');
|
|
4
|
+
const directoryExists = require('./directoryExists');
|
|
5
|
+
const directoryEmpty = require('./directoryEmpty');
|
|
6
|
+
|
|
7
|
+
module.exports = {
|
|
8
|
+
existence,
|
|
9
|
+
url,
|
|
10
|
+
email,
|
|
11
|
+
directoryExists,
|
|
12
|
+
directoryEmpty
|
|
13
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
module.exports = [
|
|
2
|
+
'avif',
|
|
3
|
+
'br',
|
|
4
|
+
'css',
|
|
5
|
+
'csv',
|
|
6
|
+
'doc',
|
|
7
|
+
'docx',
|
|
8
|
+
'eot',
|
|
9
|
+
'gif',
|
|
10
|
+
'graphql',
|
|
11
|
+
'gz',
|
|
12
|
+
'html',
|
|
13
|
+
'ico',
|
|
14
|
+
'jpeg',
|
|
15
|
+
'jpg',
|
|
16
|
+
'js',
|
|
17
|
+
'json',
|
|
18
|
+
'liquid',
|
|
19
|
+
'map',
|
|
20
|
+
'mp3',
|
|
21
|
+
'mp4',
|
|
22
|
+
'ogg',
|
|
23
|
+
'otf',
|
|
24
|
+
'pdf',
|
|
25
|
+
'png',
|
|
26
|
+
'ppt',
|
|
27
|
+
'pptx',
|
|
28
|
+
'svg',
|
|
29
|
+
'ttf',
|
|
30
|
+
'txt',
|
|
31
|
+
'webm',
|
|
32
|
+
'webp',
|
|
33
|
+
'woff',
|
|
34
|
+
'woff2',
|
|
35
|
+
'xls',
|
|
36
|
+
'xlsx',
|
|
37
|
+
'yml',
|
|
38
|
+
'zip'
|
|
39
|
+
];
|
package/lib/watch.js
ADDED
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
const fs = require('fs');
|
|
2
|
+
const path = require('path');
|
|
3
|
+
const chokidar = require('chokidar');
|
|
4
|
+
const Queue = require('async/queue');
|
|
5
|
+
const cloneDeep = require('lodash.clonedeep');
|
|
6
|
+
const debounce = require('lodash.debounce');
|
|
7
|
+
|
|
8
|
+
const Gateway = require('../lib/pos-proxy'),
|
|
9
|
+
logger = require('../lib/logger'),
|
|
10
|
+
templates = require('../lib/templates'),
|
|
11
|
+
settings = require('../lib/settings'),
|
|
12
|
+
dir = require('../lib/directories'),
|
|
13
|
+
files = require('../lib/files'),
|
|
14
|
+
livereload = require('livereload'),
|
|
15
|
+
watchFileExtensions = require('../lib/watch-files-extensions'),
|
|
16
|
+
manifestGenerateForAssets = require('./assets/manifest').manifestGenerateForAssets,
|
|
17
|
+
uploadFileFormData = require('./s3UploadFile').uploadFileFormData,
|
|
18
|
+
presignDirectory = require('./presignUrl').presignDirectory,
|
|
19
|
+
shouldBeSynced = require('../lib/shouldBeSynced');
|
|
20
|
+
|
|
21
|
+
const filePathUnixified = (filePath) =>
|
|
22
|
+
filePath
|
|
23
|
+
.replace(/\\/g, '/')
|
|
24
|
+
.replace(new RegExp(`^${dir.APP}/`), '')
|
|
25
|
+
.replace(new RegExp(`^${dir.LEGACY_APP}/`), '');
|
|
26
|
+
const moduleAssetRegex = new RegExp('^modules/\\w+/public/assets');
|
|
27
|
+
let queue;
|
|
28
|
+
let directUploadData;
|
|
29
|
+
let manifestFilesToAdd = [];
|
|
30
|
+
|
|
31
|
+
const isAssetsPath = (path) => path.startsWith('app/assets') || moduleAssetRegex.test(path);
|
|
32
|
+
const enqueuePush = (filePath) => queue.push({ path: filePath, op: 'push' }, () => {});
|
|
33
|
+
const enqueueDelete = (filePath) => queue.push({ path: filePath, op: 'delete' }, () => {});
|
|
34
|
+
|
|
35
|
+
const getBody = (filePath, processTemplate) => {
|
|
36
|
+
if (processTemplate) {
|
|
37
|
+
const moduleTemplateData = templateData(filePath.split(path.sep)[1]);
|
|
38
|
+
return templates.fillInTemplateValues(filePath, moduleTemplateData);
|
|
39
|
+
} else {
|
|
40
|
+
return fs.createReadStream(filePath);
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
const templateData = (module) => settings.loadSettingsFileForModule(module);
|
|
45
|
+
|
|
46
|
+
const pushFile = (gateway, syncedFilePath) => {
|
|
47
|
+
let filePath = filePathUnixified(syncedFilePath); // need path with / separators
|
|
48
|
+
const formData = {
|
|
49
|
+
path: filePath,
|
|
50
|
+
marketplace_builder_file_body: getBody(syncedFilePath, filePath.startsWith('modules')),
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
return gateway.sync(formData).then((body) => {
|
|
54
|
+
if (body && body.refresh_index) {
|
|
55
|
+
logger.Warn('[Sync] WARNING: Data schema was updated. It will take a while for the change to be applied.');
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
if (body) {
|
|
59
|
+
logger.Success(`[Sync] Synced: ${filePath}`);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const deleteFile = (gateway, syncedFilePath) => {
|
|
65
|
+
let filePath = filePathUnixified(syncedFilePath); // need path with / separators
|
|
66
|
+
const formData = {
|
|
67
|
+
path: filePath,
|
|
68
|
+
primary_key: filePath
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
return gateway.delete(formData).then(body => {
|
|
72
|
+
if (body) {
|
|
73
|
+
logger.Info(`[Sync] Deleted: ${filePath}`);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
const pushFileDirectAssets = (gateway, syncedFilePath) => {
|
|
79
|
+
if (isAssetsPath(syncedFilePath)) {
|
|
80
|
+
sendAsset(gateway, syncedFilePath);
|
|
81
|
+
return Promise.resolve(true);
|
|
82
|
+
}
|
|
83
|
+
return pushFile(gateway, syncedFilePath);
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const manifestSend = debounce(
|
|
87
|
+
(gateway) => {
|
|
88
|
+
const manifest = manifestGenerateForAssets(manifestFilesToAdd.slice());
|
|
89
|
+
logger.Debug(manifest);
|
|
90
|
+
gateway.sendManifest(manifest);
|
|
91
|
+
manifestFilesToAdd = [];
|
|
92
|
+
},
|
|
93
|
+
1000,
|
|
94
|
+
{ maxWait: 1000 * 10 }
|
|
95
|
+
);
|
|
96
|
+
|
|
97
|
+
const manifestAddAsset = (path) => manifestFilesToAdd.push(path);
|
|
98
|
+
|
|
99
|
+
const sendAsset = async (gateway, filePath) => {
|
|
100
|
+
try {
|
|
101
|
+
const data = cloneDeep(directUploadData);
|
|
102
|
+
const fileSubdir = filePath.startsWith('app/assets')
|
|
103
|
+
? path.dirname(filePath).replace('app/assets', '')
|
|
104
|
+
: '/' + path.dirname(filePath).replace('/public/assets', '');
|
|
105
|
+
const key = data.fields.key.replace('assets/${filename}', `assets${fileSubdir}/\${filename}`);
|
|
106
|
+
data.fields.key = key;
|
|
107
|
+
logger.Debug(data);
|
|
108
|
+
await uploadFileFormData(filePath, data);
|
|
109
|
+
manifestAddAsset(filePath);
|
|
110
|
+
manifestSend(gateway);
|
|
111
|
+
logger.Success(`[Sync] Synced asset: ${filePath}`);
|
|
112
|
+
} catch (e) {
|
|
113
|
+
logger.Debug(e.message);
|
|
114
|
+
logger.Debug(e.stack);
|
|
115
|
+
logger.Error(`[Sync] Failed to sync: ${filePath}`);
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
const fetchDirectUploadData = async (instanceUrl, instanceKey, gateway) => {
|
|
120
|
+
const instanceId = (await gateway.getInstance()).id;
|
|
121
|
+
const remoteAssetsDir = `instances/${instanceId}/assets`;
|
|
122
|
+
const data = await presignDirectory(instanceUrl, instanceKey, remoteAssetsDir);
|
|
123
|
+
directUploadData = data;
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
const start = async (env, liveReload) => {
|
|
127
|
+
const program = {
|
|
128
|
+
email: env.CONSOLE_USER_EMAIL,
|
|
129
|
+
token: env.CONSOLE_USER_TOKEN,
|
|
130
|
+
|
|
131
|
+
instanceUuid: env.CONSOLE_USER_INSTANCE_UUID,
|
|
132
|
+
url: env.CONSOLE_USER_INSTANCE_URL,
|
|
133
|
+
|
|
134
|
+
key: env.CONSOLE_USER_KEY,
|
|
135
|
+
concurrency: env.CONCURRENCY,
|
|
136
|
+
};
|
|
137
|
+
const gateway = new Gateway(program);
|
|
138
|
+
const ignoreList = files.getIgnoreList();
|
|
139
|
+
const push = pushFileDirectAssets;
|
|
140
|
+
await fetchDirectUploadData(program.url, program.key, gateway);
|
|
141
|
+
|
|
142
|
+
let liveReloadServer;
|
|
143
|
+
if (liveReload) {
|
|
144
|
+
liveReloadServer = livereload.createServer({
|
|
145
|
+
exts: watchFileExtensions,
|
|
146
|
+
delay: 250,
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
liveReloadServer.watch(path.join(process.cwd(), '{app,modules}'));
|
|
150
|
+
|
|
151
|
+
logger.Info(`[LiveReload] Server started`);
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
const reload = () => liveReload && liveReloadServer.refresh(program.url);
|
|
155
|
+
|
|
156
|
+
queue = Queue((task, callback) => {
|
|
157
|
+
switch (task.op) {
|
|
158
|
+
case 'push':
|
|
159
|
+
push(gateway, task.path).then(reload).then(callback);
|
|
160
|
+
break;
|
|
161
|
+
case 'delete':
|
|
162
|
+
deleteFile(gateway, task.path).then(reload).then(callback);
|
|
163
|
+
break;
|
|
164
|
+
}
|
|
165
|
+
}, program.concurrency);
|
|
166
|
+
|
|
167
|
+
return gateway.ping().then(() => {
|
|
168
|
+
const directories = dir.toWatch();
|
|
169
|
+
|
|
170
|
+
if (directories.length === 0) {
|
|
171
|
+
logger.Error(`${dir.APP} or ${dir.MODULES} directory has to exist!`);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
chokidar
|
|
175
|
+
.watch(directories, {
|
|
176
|
+
ignoreInitial: true,
|
|
177
|
+
awaitWriteFinish: {
|
|
178
|
+
stabilityThreshold: 500,
|
|
179
|
+
pollInterval: 100,
|
|
180
|
+
},
|
|
181
|
+
})
|
|
182
|
+
.on('change', (fp) => shouldBeSynced(fp, ignoreList) && enqueuePush(fp))
|
|
183
|
+
.on('add', (fp) => shouldBeSynced(fp, ignoreList) && enqueuePush(fp))
|
|
184
|
+
.on('unlink', (fp) => shouldBeSynced(fp, ignoreList) && enqueueDelete(fp));
|
|
185
|
+
|
|
186
|
+
logger.Info(`[Sync] Synchronizing changes to: ${program.url}`);
|
|
187
|
+
});
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
module.exports = {
|
|
191
|
+
start: start,
|
|
192
|
+
};
|