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,31 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { lazy } from 'react';
|
|
3
|
+
import { useTheme } from '@/hooks/theme';
|
|
4
|
+
// import ReactJson from '@microlink/react-json-view';
|
|
5
|
+
const DynamicReactJson = lazy(() => import('@microlink/react-json-view'));
|
|
6
|
+
import CodeEditor from '@/components/CodeEditor/CodeEditor';
|
|
7
|
+
|
|
8
|
+
export default function JsonTree({ data, maxMessageLength = 100, collapsed = 2 }) {
|
|
9
|
+
const { theme } = useTheme();
|
|
10
|
+
try {
|
|
11
|
+
const source = JSON.parse(data);
|
|
12
|
+
if (Array.isArray(source) || (source && typeof source === 'object' && source.constructor === Object)) {
|
|
13
|
+
const viewerTheme = theme === 'dark' ? 'twilight' : 'solarized-light';
|
|
14
|
+
return (
|
|
15
|
+
<DynamicReactJson
|
|
16
|
+
name={false}
|
|
17
|
+
src={source}
|
|
18
|
+
enableClipboard={true}
|
|
19
|
+
collapsed={collapsed}
|
|
20
|
+
collapseStringsAfterLength={maxMessageLength}
|
|
21
|
+
groupArraysAfterLength={5}
|
|
22
|
+
theme={viewerTheme}
|
|
23
|
+
style={{
|
|
24
|
+
backgroundColor: 'transparent',
|
|
25
|
+
}}
|
|
26
|
+
/>
|
|
27
|
+
);
|
|
28
|
+
}
|
|
29
|
+
} catch (error) {}
|
|
30
|
+
return <CodeEditor data={data} readOnly={true} />;
|
|
31
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import JsonTree from '../JsonTree';
|
|
5
|
+
|
|
6
|
+
function isObject(value) {
|
|
7
|
+
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
function renderValue(key, value) {
|
|
11
|
+
const renderUrl = (url) => (
|
|
12
|
+
<a
|
|
13
|
+
className="text-blue-500 overflow-x-hidden whitespace-nowrap text-ellipsis w-full"
|
|
14
|
+
target="_blank"
|
|
15
|
+
href={`https://${url}`}
|
|
16
|
+
>
|
|
17
|
+
https://{url}
|
|
18
|
+
</a>
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
const renderId = (id) => (
|
|
22
|
+
<a className="text-blue-500" href={`/users/${id}`}>
|
|
23
|
+
{id}
|
|
24
|
+
</a>
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
switch (key) {
|
|
28
|
+
case 'url':
|
|
29
|
+
return renderUrl(value);
|
|
30
|
+
case 'id':
|
|
31
|
+
return renderId(value);
|
|
32
|
+
default:
|
|
33
|
+
return <span>{value}</span>;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export default function LogMetadata({ data, parent }) {
|
|
38
|
+
if (!isObject(data)) return null;
|
|
39
|
+
|
|
40
|
+
const listItemStyle = {
|
|
41
|
+
fontSize: '11px',
|
|
42
|
+
paddingLeft: parent ? '5px' : '0',
|
|
43
|
+
paddingTop: parent ? '0' : '3px',
|
|
44
|
+
};
|
|
45
|
+
return (
|
|
46
|
+
<div className="background-ui-4 py-1 rounded mt-2 mx-0" style={listItemStyle}>
|
|
47
|
+
{Object.entries(data).map(([key, value], index) => (
|
|
48
|
+
<div className="w-full flex gap-2 px-2 max-w-lg" key={key + index}>
|
|
49
|
+
<span className="font-medium shrink-0">{key}: </span>
|
|
50
|
+
{isObject(value) ? (
|
|
51
|
+
<div className="float-left">
|
|
52
|
+
<JsonTree data={JSON.stringify(value)} collapsed={0} />
|
|
53
|
+
</div>
|
|
54
|
+
) : (
|
|
55
|
+
renderValue(key, value)
|
|
56
|
+
)}
|
|
57
|
+
</div>
|
|
58
|
+
))}
|
|
59
|
+
</div>
|
|
60
|
+
);
|
|
61
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
import JsonTree from './JsonTree';
|
|
3
|
+
import LogMetadata from './LogMetadata/LogMetadata';
|
|
4
|
+
import { useLogs } from '../context';
|
|
5
|
+
|
|
6
|
+
export default function LogRow({ log }) {
|
|
7
|
+
const { showMetadata, showPinned, setPinnedLog } = useLogs();
|
|
8
|
+
const [copied, setCopied] = useState(false);
|
|
9
|
+
|
|
10
|
+
const copyToClipboard = async () => {
|
|
11
|
+
try {
|
|
12
|
+
await navigator.clipboard.writeText(JSON.stringify(log.message));
|
|
13
|
+
setCopied(true);
|
|
14
|
+
setTimeout(() => setCopied(false), 3000); // Reset copied state after 3 seconds
|
|
15
|
+
} catch (error) {
|
|
16
|
+
console.error('Failed to copy log to clipboard:', error);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
return (
|
|
21
|
+
<tr className="border-b border-color-ui-3">
|
|
22
|
+
<td className="py-3 px-3 w-1/5 md:w-52">
|
|
23
|
+
<time dateTime={log.created_at}>
|
|
24
|
+
{new Date(log.created_at).toLocaleDateString(undefined, {})}
|
|
25
|
+
{new Date(log.created_at).toLocaleTimeString(undefined, {})}
|
|
26
|
+
</time>
|
|
27
|
+
</td>
|
|
28
|
+
<td className="py-3 px-3 w-1/5 md:w-48">
|
|
29
|
+
<span
|
|
30
|
+
className={` break-words ${
|
|
31
|
+
log.error_type && log.error_type.match(/error/i) ? 'color-alert-negative' : 'color-3'
|
|
32
|
+
}`}
|
|
33
|
+
>
|
|
34
|
+
{log.error_type}
|
|
35
|
+
</span>
|
|
36
|
+
</td>
|
|
37
|
+
<td>
|
|
38
|
+
<div className="flex gap-8 justify-between shrink flex-wrap sm:flex-nowrap">
|
|
39
|
+
<div className="w-full">
|
|
40
|
+
<JsonTree data={log.message} />
|
|
41
|
+
{showMetadata && <LogMetadata className={`${showPinned ? 'float-left' : ''}`} data={log.data} />}
|
|
42
|
+
</div>
|
|
43
|
+
<div className={`py-3 px-3 flex gap-2 items-start w-auto shrink ${showPinned ? 'flex-col' : ''}`}>
|
|
44
|
+
<button
|
|
45
|
+
className="rounded border-main px-3 color-main pt-2 pb-0.5 hover:bg-blue-500 hover:text-white"
|
|
46
|
+
onClick={copyToClipboard}
|
|
47
|
+
disabled={copied}
|
|
48
|
+
>
|
|
49
|
+
<span className="material-symbols-outlined">{copied ? 'check' : 'content_copy'}</span>
|
|
50
|
+
</button>
|
|
51
|
+
<button
|
|
52
|
+
className="rounded border-main px-3 color-main pt-2 pb-0.5 hover:bg-blue-500 hover:text-white"
|
|
53
|
+
onClick={() => setPinnedLog(log)}
|
|
54
|
+
>
|
|
55
|
+
<span className="material-symbols-outlined">push_pin</span>
|
|
56
|
+
</button>
|
|
57
|
+
</div>
|
|
58
|
+
</div>
|
|
59
|
+
</td>
|
|
60
|
+
</tr>
|
|
61
|
+
);
|
|
62
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { useLogs } from '../../context';
|
|
2
|
+
import JsonTree from '../JsonTree';
|
|
3
|
+
|
|
4
|
+
export default function PinnedPanel({}) {
|
|
5
|
+
const { showPinned, pinned, clearPinnedLogs, removePinnedLog } = useLogs(); // TODO: usePinned
|
|
6
|
+
|
|
7
|
+
const formatDatetime = (datetimeString) => {
|
|
8
|
+
return new Date(datetimeString).toLocaleString('en-US', {
|
|
9
|
+
year: 'numeric',
|
|
10
|
+
month: 'short',
|
|
11
|
+
day: 'numeric',
|
|
12
|
+
hour: 'numeric',
|
|
13
|
+
minute: '2-digit',
|
|
14
|
+
second: '2-digit',
|
|
15
|
+
hour12: true,
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
return (
|
|
20
|
+
<div
|
|
21
|
+
className={`${
|
|
22
|
+
showPinned ? 'translate-x-0' : 'translate-x-full'
|
|
23
|
+
} transition-transform duration-300 ease-in background-ui-5 fixed top-[81px] right-0 w-[360px] h-full border-l border-color-ui-3 z-20`}
|
|
24
|
+
>
|
|
25
|
+
<div className="flex py-7 px-4 justify-end background-ui-3">
|
|
26
|
+
<button
|
|
27
|
+
className="color-1 text-xs py-3 px-4 rounded-lg hover:ring-1 hover:ring-neutral-500"
|
|
28
|
+
onClick={clearPinnedLogs}
|
|
29
|
+
>
|
|
30
|
+
Clear pinned logs
|
|
31
|
+
</button>
|
|
32
|
+
</div>
|
|
33
|
+
<div className="h-full px-4 text-sm">
|
|
34
|
+
{pinned.map((log, key) => (
|
|
35
|
+
<div className="flex flex-col gap-2 border-b py-4 border-color-ui-3" key={key}>
|
|
36
|
+
<div className="flex justify-between items-center text-xs">
|
|
37
|
+
<label>{formatDatetime(log.updated_at)}</label>
|
|
38
|
+
<button onClick={() => removePinnedLog(log)}><span className="material-icons md-14 color-main">delete</span></button>
|
|
39
|
+
</div>
|
|
40
|
+
<JsonTree data={log.message} />
|
|
41
|
+
</div>
|
|
42
|
+
))}
|
|
43
|
+
</div>
|
|
44
|
+
</div>
|
|
45
|
+
);
|
|
46
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export default function Filter({}) {
|
|
2
|
+
return (
|
|
3
|
+
<div className="flex justify-center items-center gap-2 my-1">
|
|
4
|
+
<label>Filter by</label>
|
|
5
|
+
<input className="background-ui-5 p-2.5 rounded shrink" type="text" />
|
|
6
|
+
<button
|
|
7
|
+
className="rounded background-main px-3 color-button-label pt-2 pb-0.5 hover:bg-blue-500"
|
|
8
|
+
>
|
|
9
|
+
<span className="material-symbols-outlined">search</span>
|
|
10
|
+
</button>
|
|
11
|
+
</div>
|
|
12
|
+
);
|
|
13
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export default function MetaDataCheckbox({ value, onChange }) {
|
|
2
|
+
return (
|
|
3
|
+
<div className="flex gap-2 text-xs items-center mr-4">
|
|
4
|
+
<label className="inline-flex items-center cursor-pointer">
|
|
5
|
+
<input className="sr-only peer" type="checkbox" checked={value} onChange={onChange} />
|
|
6
|
+
<div className="relative w-11 h-6 bg-gray-200 peer-focus:outline-none peer-focus:ring-4 peer-focus:ring-blue-300 dark:peer-focus:ring-blue-800 rounded-full peer dark:bg-gray-700 peer-checked:after:translate-x-full rtl:peer-checked:after:-translate-x-full peer-checked:after:border-white after:content-[''] after:absolute after:top-[2px] after:start-[2px] after:bg-white after:border-gray-300 after:border after:rounded-full after:h-5 after:w-5 after:transition-all dark:border-gray-600 peer-checked:bg-blue-600"></div>
|
|
7
|
+
<span className="ms-3 text-sm font-medium text-gray-900 dark:text-gray-300">Show Metadata</span>
|
|
8
|
+
</label>
|
|
9
|
+
</div>
|
|
10
|
+
);
|
|
11
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export default function ShowPinnedButton({ onClick }) {
|
|
2
|
+
return (
|
|
3
|
+
<button className="rounded background-main px-3 color-button-label pt-2 pb-0.5 hover:bg-blue-500" onClick={onClick}>
|
|
4
|
+
<span className="material-symbols-outlined">push_pin</span>
|
|
5
|
+
</button>
|
|
6
|
+
);
|
|
7
|
+
}
|
|
8
|
+
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useLogs } from '../../context';
|
|
3
|
+
import Filter from './Filter';
|
|
4
|
+
import MetaDataCheckbox from './MetaDataCheckbox';
|
|
5
|
+
import ClearButton from './ClearButton';
|
|
6
|
+
import ShowPinnedButton from './ShowPinnedButton';
|
|
7
|
+
import PinnedPanel from '../PinnedPanel/PinnedPanel';
|
|
8
|
+
|
|
9
|
+
export default function Toolbar() {
|
|
10
|
+
const { showPinned, setShowPinned, showMetadata, setShowMetadata, setLogs, setPinned } = useLogs();
|
|
11
|
+
|
|
12
|
+
const handleClear = () => {
|
|
13
|
+
setLogs([]);
|
|
14
|
+
setPinned([]);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
const toggleMetadata = () => {
|
|
18
|
+
setShowMetadata(!showMetadata);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
return (
|
|
22
|
+
<>
|
|
23
|
+
<div className="background-ui-4 sticky top-[81px] left-0 z-10">
|
|
24
|
+
<div className={`flex flex-wrap justify-between py-2 px-4 border-b border-color-ui-3 transition-all duration-300 ease-in ${showPinned && "mr-[360px]"}`}>
|
|
25
|
+
{/* <Filter /> */}
|
|
26
|
+
<div className={`flex items-center flex-1 gap-2 my-1 justify-end`}>
|
|
27
|
+
<MetaDataCheckbox value={showMetadata} onChange={toggleMetadata} />
|
|
28
|
+
<ClearButton onClick={handleClear} />
|
|
29
|
+
<ShowPinnedButton onClick={() => setShowPinned(!showPinned)} />
|
|
30
|
+
</div>
|
|
31
|
+
</div>
|
|
32
|
+
<table className="w-full table-fixed table">
|
|
33
|
+
<thead className="background-ui-4 border-b border-color-ui-3">
|
|
34
|
+
<tr className="text-left">
|
|
35
|
+
<th className="py-5 px-3 w-1/5 md:w-52">Timestamp</th>
|
|
36
|
+
<th className="py-5 px-3 w-1/5 md:w-48">Type</th>
|
|
37
|
+
<th className="py-5 px-3">Message</th>
|
|
38
|
+
</tr>
|
|
39
|
+
</thead>
|
|
40
|
+
</table>
|
|
41
|
+
</div>
|
|
42
|
+
<PinnedPanel />
|
|
43
|
+
</>
|
|
44
|
+
);
|
|
45
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { createContext, useContext, useEffect, useState } from 'react';
|
|
3
|
+
|
|
4
|
+
export const LogsContext = createContext();
|
|
5
|
+
|
|
6
|
+
export function LogsProvider({ children }) {
|
|
7
|
+
const [logs, setLogs] = useState([]);
|
|
8
|
+
const [pinned, setPinned] = useState([]);
|
|
9
|
+
|
|
10
|
+
const [filter, setFilter] = useState('');
|
|
11
|
+
const [showMetadata, setShowMetadata] = useState(false);
|
|
12
|
+
const [showPinned, setShowPinned] = useState(false);
|
|
13
|
+
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
const pinnedLogs = JSON.parse(localStorage.getItem('pinnedLogs')) || [];
|
|
16
|
+
setPinned(pinnedLogs);
|
|
17
|
+
}, []);
|
|
18
|
+
|
|
19
|
+
const setPinnedLog = (log) => {
|
|
20
|
+
console.log(log);
|
|
21
|
+
const pinnedLogs = JSON.parse(localStorage.getItem('pinnedLogs')) || [];
|
|
22
|
+
if (!pinnedLogs.some(({ id }) => id === log.id)) {
|
|
23
|
+
pinnedLogs.push(log);
|
|
24
|
+
localStorage.setItem('pinnedLogs', JSON.stringify(pinnedLogs));
|
|
25
|
+
setPinned(pinnedLogs);
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
const removePinnedLog = (log) => {
|
|
30
|
+
const pinnedLogs = JSON.parse(localStorage.getItem('pinnedLogs')) || [];
|
|
31
|
+
const newPinnedLogs = pinnedLogs.filter(({ id }) => id !== log.id);
|
|
32
|
+
localStorage.setItem('pinnedLogs', JSON.stringify(newPinnedLogs));
|
|
33
|
+
console.log(newPinnedLogs)
|
|
34
|
+
setPinned(newPinnedLogs);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const clearPinnedLogs = () => {
|
|
38
|
+
localStorage.removeItem('pinnedLogs');
|
|
39
|
+
setPinned([]);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<LogsContext.Provider
|
|
44
|
+
value={{
|
|
45
|
+
logs,
|
|
46
|
+
setLogs,
|
|
47
|
+
pinned,
|
|
48
|
+
clearPinnedLogs,
|
|
49
|
+
filter,
|
|
50
|
+
setFilter,
|
|
51
|
+
showMetadata,
|
|
52
|
+
setShowMetadata,
|
|
53
|
+
showPinned,
|
|
54
|
+
setShowPinned,
|
|
55
|
+
setPinnedLog,
|
|
56
|
+
removePinnedLog,
|
|
57
|
+
}}
|
|
58
|
+
>
|
|
59
|
+
{children}
|
|
60
|
+
</LogsContext.Provider>
|
|
61
|
+
);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export function useLogs() {
|
|
65
|
+
return useContext(LogsContext);
|
|
66
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { getLogs } from '@/services/LogService';
|
|
5
|
+
|
|
6
|
+
import LogRow from './components/LogRow';
|
|
7
|
+
import Toolbar from './components/Toolbar/Toolbar';
|
|
8
|
+
import { useLogs } from './context';
|
|
9
|
+
|
|
10
|
+
export default function Logs() {
|
|
11
|
+
const { logs, setLogs, showPinned } = useLogs();
|
|
12
|
+
const autoScrollRef = useRef(true);
|
|
13
|
+
const prevScrollY = useRef(0);
|
|
14
|
+
const lastId = useRef(null);
|
|
15
|
+
|
|
16
|
+
const loadLogs = async () => {
|
|
17
|
+
const response = await getLogs(lastId.current);
|
|
18
|
+
|
|
19
|
+
setLogs((prev) => {
|
|
20
|
+
const uniqueLogs = response.logs.filter(({ id }) => !prev.some((log) => log.id === id));
|
|
21
|
+
return uniqueLogs.length ? [...prev, ...uniqueLogs] : prev;
|
|
22
|
+
});
|
|
23
|
+
lastId.current = response.logs?.at(-1)?.id ?? null;
|
|
24
|
+
|
|
25
|
+
if (autoScrollRef.current) {
|
|
26
|
+
try {
|
|
27
|
+
document.body.querySelector('footer').scrollIntoView({ behavior: 'smooth', block: 'end' });
|
|
28
|
+
} catch (error) {
|
|
29
|
+
console.error(error);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
const handleScroll = () => {
|
|
36
|
+
const currentScrollY = window.scrollY;
|
|
37
|
+
if (currentScrollY < prevScrollY.current) autoScrollRef.current = false;
|
|
38
|
+
|
|
39
|
+
prevScrollY.current = currentScrollY;
|
|
40
|
+
};
|
|
41
|
+
document.addEventListener('scroll', handleScroll);
|
|
42
|
+
|
|
43
|
+
loadLogs();
|
|
44
|
+
|
|
45
|
+
const onlineCheckInterval = setInterval(loadLogs, 3000);
|
|
46
|
+
|
|
47
|
+
return () => {
|
|
48
|
+
clearInterval(onlineCheckInterval);
|
|
49
|
+
document.removeEventListener('scroll', handleScroll);
|
|
50
|
+
};
|
|
51
|
+
}, []);
|
|
52
|
+
|
|
53
|
+
return (
|
|
54
|
+
<>
|
|
55
|
+
<Toolbar />
|
|
56
|
+
<div className="overflow-x-hidden">
|
|
57
|
+
<table className={`w-full table-fixed table transition-all duration-300 ease-in ${showPinned && 'w-[calc(100vw-375px)]'}`}>
|
|
58
|
+
<tbody className="background-ui-5 z-0">
|
|
59
|
+
{logs.map((log, key) => (
|
|
60
|
+
<LogRow key={key} log={log} />
|
|
61
|
+
))}
|
|
62
|
+
</tbody>
|
|
63
|
+
</table>
|
|
64
|
+
</div>
|
|
65
|
+
<footer className={`flex justify-center items-center py-8 transition-all duration-300 ease-in ${showPinned && 'w-[calc(100vw-375px)]'}`}>
|
|
66
|
+
<p>
|
|
67
|
+
No newer logs to show <br />
|
|
68
|
+
Checking every 3 seconds
|
|
69
|
+
</p>
|
|
70
|
+
</footer>
|
|
71
|
+
</>
|
|
72
|
+
);
|
|
73
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Link from 'next/link'
|
|
2
|
+
|
|
3
|
+
export default function NotFound() {
|
|
4
|
+
return (
|
|
5
|
+
<div className='flex flex-col justify-center items-center h-full min-h-[80vh]'>
|
|
6
|
+
<h2>Not Found</h2>
|
|
7
|
+
<p>Could not find requested resource</p>
|
|
8
|
+
<Link href="/">Return Home</Link>
|
|
9
|
+
</div>
|
|
10
|
+
)
|
|
11
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import Link from "next/link";
|
|
3
|
+
import { useMenu } from "@/hooks/menu";
|
|
4
|
+
|
|
5
|
+
const Card = ({
|
|
6
|
+
title,
|
|
7
|
+
icon,
|
|
8
|
+
path = "#",
|
|
9
|
+
theme = "light",
|
|
10
|
+
children,
|
|
11
|
+
showDescription = false,
|
|
12
|
+
pin = true,
|
|
13
|
+
}) => {
|
|
14
|
+
const { expandDescription, pinMenu } = useMenu();
|
|
15
|
+
return (
|
|
16
|
+
<div className="flex background-card rounded overflow-hidden shadow mb-0 p-6 self-stretch transition-all flex-auto basis-full md:basis-auto lg:w-1/5 md:w-1/4">
|
|
17
|
+
<div className="flex flex-col items-start justify-between gap-4 self-stretch flex-1">
|
|
18
|
+
{title !== "Support" && (
|
|
19
|
+
<div className="flex items-start justify-end self-stretch gap-2">
|
|
20
|
+
<button onClick={() => expandDescription(title)}>
|
|
21
|
+
<img
|
|
22
|
+
width={16}
|
|
23
|
+
src={
|
|
24
|
+
showDescription
|
|
25
|
+
? `/assets/icons/home-info-fill-${theme}.png`
|
|
26
|
+
: `/assets/icons/home-info-${theme}.png`
|
|
27
|
+
}
|
|
28
|
+
alt="Info"
|
|
29
|
+
/>
|
|
30
|
+
</button>
|
|
31
|
+
<img
|
|
32
|
+
width={16}
|
|
33
|
+
src={
|
|
34
|
+
pin
|
|
35
|
+
? `/assets/icons/home-pin-fill-${theme}.png`
|
|
36
|
+
: `/assets/icons/home-pin-${theme}.png`
|
|
37
|
+
}
|
|
38
|
+
alt="Pin"
|
|
39
|
+
onClick={() => pinMenu(title)}
|
|
40
|
+
/>
|
|
41
|
+
</div>
|
|
42
|
+
)}
|
|
43
|
+
<Link
|
|
44
|
+
href={path}
|
|
45
|
+
title={title}
|
|
46
|
+
className="flex flex-col items-start justify-end gap-4 self-stretch flex-1"
|
|
47
|
+
>
|
|
48
|
+
<img
|
|
49
|
+
width={32}
|
|
50
|
+
src={`/assets/icons/home-${icon}.png`}
|
|
51
|
+
alt={title}
|
|
52
|
+
/>
|
|
53
|
+
<div className="flex flex-col justify-start items-start self-stretch">
|
|
54
|
+
<p className="self-stretch font-semibold text-lg text-left">
|
|
55
|
+
{title}
|
|
56
|
+
</p>
|
|
57
|
+
</div>
|
|
58
|
+
{showDescription && <ul className="description">{children}</ul>}
|
|
59
|
+
</Link>
|
|
60
|
+
</div>
|
|
61
|
+
</div>
|
|
62
|
+
);
|
|
63
|
+
};
|
|
64
|
+
export default function Home() {
|
|
65
|
+
const { menus } = useMenu();
|
|
66
|
+
return (
|
|
67
|
+
<main className="flex flex-col items-center px-6">
|
|
68
|
+
<div className="flex flex-col items-center py-24">
|
|
69
|
+
<h1 className="text-[64px] font-semibold leading-[72px] tracking-[-1px] mb-6 text-center">
|
|
70
|
+
Welcome to the Insites CLI Tool
|
|
71
|
+
</h1>
|
|
72
|
+
<p className="text-1 text-base mb-10 text-center">
|
|
73
|
+
The Insites CLI Tool is a command line interface that helps
|
|
74
|
+
you deploy configuration files and assets to your Insites
|
|
75
|
+
instance. It expects you to follow a certain file structure
|
|
76
|
+
to communicate correctly with Insites API's.
|
|
77
|
+
</p>
|
|
78
|
+
<div className="flex items-center gap-10 self-stretch justify-center flex-wrap text-center">
|
|
79
|
+
{menus.map((menu, key) => {
|
|
80
|
+
return (
|
|
81
|
+
<Card
|
|
82
|
+
key={key}
|
|
83
|
+
path={menu.path}
|
|
84
|
+
title={menu.title}
|
|
85
|
+
icon={menu.icon}
|
|
86
|
+
showDescription={menu.showDescription}
|
|
87
|
+
pin={menu.pin}
|
|
88
|
+
>
|
|
89
|
+
{menu.descriptions.map((description) => {
|
|
90
|
+
return (
|
|
91
|
+
<li className="text-left" key={description}>
|
|
92
|
+
› {description}
|
|
93
|
+
</li>
|
|
94
|
+
);
|
|
95
|
+
})}
|
|
96
|
+
</Card>
|
|
97
|
+
);
|
|
98
|
+
})}
|
|
99
|
+
</div>
|
|
100
|
+
</div>
|
|
101
|
+
</main>
|
|
102
|
+
);
|
|
103
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { ConfigProvider } from "@/context/config";
|
|
4
|
+
import { FiltersProvider } from "@/context/filters";
|
|
5
|
+
import { MenuProvider } from "@/context/menu";
|
|
6
|
+
import { ThemeProvider } from "@/context/theme";
|
|
7
|
+
|
|
8
|
+
export function Providers({ children }) {
|
|
9
|
+
return (
|
|
10
|
+
<ConfigProvider>
|
|
11
|
+
<ThemeProvider>
|
|
12
|
+
<MenuProvider>
|
|
13
|
+
<FiltersProvider>{children}</FiltersProvider>
|
|
14
|
+
</MenuProvider>
|
|
15
|
+
</ThemeProvider>
|
|
16
|
+
</ConfigProvider>
|
|
17
|
+
);
|
|
18
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export function UserDetails({ user, state, setState }) {
|
|
2
|
+
return (
|
|
3
|
+
<div
|
|
4
|
+
className={`${
|
|
5
|
+
state ? "translate-x-0" : "translate-x-full"
|
|
6
|
+
} transition-transform duration-300 ease-in background-ui-5 absolute top-0 right-0 flex flex-col gap-6 w-[360px] h-full border-l border-color-ui-3 p-4`}
|
|
7
|
+
>
|
|
8
|
+
<div className="relative">
|
|
9
|
+
<label className="color-1 text-lg underline">
|
|
10
|
+
{user.email}
|
|
11
|
+
</label>
|
|
12
|
+
<div className="flex gap-2">
|
|
13
|
+
<label className="text-xs">ID: 000</label>
|
|
14
|
+
<label className="text-xs color-3">{user.created_at}</label>
|
|
15
|
+
</div>
|
|
16
|
+
<button className="absolute top-0 right-0" onClick={() => setState(false)}>
|
|
17
|
+
<span className="material-symbols-outlined text-xs">
|
|
18
|
+
close
|
|
19
|
+
</span>
|
|
20
|
+
</button>
|
|
21
|
+
</div>
|
|
22
|
+
<div className="flex flex-col gap-2">
|
|
23
|
+
<label>External ID</label>
|
|
24
|
+
<input className="background-ui-5 px-2.5 py-[9px] rounded border border-color-ui-3" readOnly value={user.external_id} />
|
|
25
|
+
<label>JWT</label>
|
|
26
|
+
<textarea className="background-ui-5 px-2.5 py-[9px] rounded border border-color-ui-3 resize-y" rows={3} readOnly value={user.jwt_token}></textarea>
|
|
27
|
+
</div>
|
|
28
|
+
<hr />
|
|
29
|
+
<div className="flex flex-col gap-2">
|
|
30
|
+
<label>Full Name: {user.name}</label>
|
|
31
|
+
<label>First Name: {user.first_name}</label>
|
|
32
|
+
<label>Last Name: {user.last_name}</label>
|
|
33
|
+
<label>Slug: {user.slug}</label>
|
|
34
|
+
<label>Language: {user.language}</label>
|
|
35
|
+
</div>
|
|
36
|
+
</div>
|
|
37
|
+
);
|
|
38
|
+
}
|