@hasna/connectors 1.3.6 → 1.3.8
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/bin/index.js +306 -262
- package/bin/mcp.js +258 -283
- package/bin/serve.js +104 -93
- package/connectors/connect-github/src/api/client.ts +0 -11
- package/connectors/connect-github/src/api/index.ts +0 -12
- package/connectors/connect-github/src/api/repos.ts +38 -0
- package/connectors/connect-github/src/cli/index.ts +102 -0
- package/connectors/connect-github/src/types/index.ts +0 -190
- package/connectors/connect-github/src/utils/config.ts +2 -2
- package/connectors/{connect-namecheap → connect-yousign}/bun.lock +3 -3
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/bun/README.md +1 -1
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/bun/package.json +3 -3
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/bun.d.ts +8 -239
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/executables.mdx +10 -10
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/fullstack.mdx +13 -13
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/bun-apis.mdx +1 -2
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/bunfig.mdx +0 -11
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/hashing.mdx +1 -1
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/server.mdx +7 -34
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/json5.mdx +1 -1
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/markdown.mdx +16 -53
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/yaml.mdx +2 -3
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/configuration.mdx +0 -54
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/package.json +1 -1
- package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/s3.d.ts +0 -19
- package/dashboard/dist/assets/index-CSlS3oNV.css +1 -0
- package/dashboard/dist/assets/index-sSIkMXYs.js +284 -0
- package/dashboard/dist/index.html +2 -2
- package/dist/db/database.d.ts +6 -0
- package/dist/index.js +75 -46
- package/dist/lib/llm.d.ts +1 -1
- package/dist/lib/lock.d.ts +1 -1
- package/package.json +1 -1
- package/connectors/connect-brandsight/bun.lock +0 -32
- package/connectors/connect-namecheap/bin/index.js +0 -3119
- package/connectors/connect-namecheap/dist/index.js +0 -431
- package/connectors/connect-namecheap/node_modules/bun-types/docs/guides/http/sse.mdx +0 -91
- package/connectors/connect-namecheap/node_modules/bun-types/docs/runtime/cron.mdx +0 -358
- package/connectors/connect-namecheap/node_modules/bun-types/docs/runtime/csrf.mdx +0 -171
- package/connectors/connect-namecheap/node_modules/bun-types/docs/runtime/toml.mdx +0 -238
- package/dashboard/dist/assets/index-DmR_QNtT.css +0 -1
- package/dashboard/dist/assets/index-Dp-apHbC.js +0 -284
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/bun/LICENSE +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/bun/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/LICENSE +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/README.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/assert/strict.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/assert.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/async_hooks.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/buffer.buffer.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/buffer.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/child_process.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/cluster.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/compatibility/iterators.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/console.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/constants.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/crypto.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/dgram.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/diagnostics_channel.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/dns/promises.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/dns.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/domain.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/events.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/fs/promises.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/fs.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/globals.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/globals.typedarray.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/http.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/http2.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/https.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/inspector/promises.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/inspector.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/inspector.generated.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/module.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/net.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/os.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/package.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/path/posix.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/path/win32.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/path.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/perf_hooks.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/process.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/punycode.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/querystring.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/quic.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/readline/promises.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/readline.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/repl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/sea.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/sqlite.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/stream/consumers.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/stream/promises.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/stream/web.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/stream.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/string_decoder.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/test/reporters.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/test.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/timers/promises.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/timers.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/tls.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/trace_events.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/ts5.6/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/ts5.7/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/tty.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/url.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/util/types.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/util.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/v8.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/vm.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/wasi.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/blob.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/console.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/crypto.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/domexception.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/encoding.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/events.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/fetch.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/importmeta.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/messaging.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/navigator.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/performance.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/storage.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/streams.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/timers.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/web-globals/url.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/worker_threads.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/@types/node/zlib.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/CLAUDE.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/README.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/bun.ns.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/bundle.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/deprecated.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/devserver.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/README.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/bytecode.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/css.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/esbuild.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/hot-reloading.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/html-static.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/index.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/loaders.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/macros.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/minifier.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/plugins.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/bundler/standalone-html.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/feedback.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/arraybuffer-to-array.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/arraybuffer-to-blob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/arraybuffer-to-buffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/arraybuffer-to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/arraybuffer-to-typedarray.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/blob-to-arraybuffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/blob-to-dataview.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/blob-to-stream.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/blob-to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/blob-to-typedarray.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/buffer-to-arraybuffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/buffer-to-blob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/buffer-to-readablestream.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/buffer-to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/buffer-to-typedarray.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/dataview-to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/typedarray-to-arraybuffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/typedarray-to-blob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/typedarray-to-buffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/typedarray-to-dataview.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/typedarray-to-readablestream.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/binary/typedarray-to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/deployment/aws-lambda.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/deployment/digital-ocean.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/deployment/google-cloud-run.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/deployment/railway.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/deployment/render.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/deployment/vercel.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/astro.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/discordjs.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/docker.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/drizzle.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/elysia.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/express.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/gel.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/hono.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/mongoose.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/neon-drizzle.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/neon-serverless-postgres.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/nextjs.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/nuxt.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/pm2.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/prisma-postgres.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/prisma.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/qwik.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/react.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/remix.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/sentry.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/solidstart.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/ssr-react.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/stric.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/sveltekit.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/systemd.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/tanstack-start.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/upstash.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/ecosystem/vite.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/html-rewriter/extract-links.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/html-rewriter/extract-social-meta.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/cluster.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/fetch-unix.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/fetch.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/file-uploads.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/hot.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/proxy.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/server.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/simple.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/stream-file.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/stream-iterator.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/stream-node-streams-in-bun.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/http/tls.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/index.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/add-dev.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/add-git.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/add-optional.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/add-peer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/add-tarball.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/add.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/azure-artifacts.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/cicd.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/custom-registry.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/from-npm-install-to-bun-install.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/git-diff-bun-lockfile.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/jfrog-artifactory.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/npm-alias.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/registry-scope.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/trusted.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/workspaces.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/install/yarnlock.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/argv.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/ctrl-c.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/ipc.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/nanoseconds.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/os-signals.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/spawn-stderr.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/spawn-stdout.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/spawn.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/process/stdin.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/arraybuffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/buffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/exists.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/json.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/mime.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/stream.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/uint8array.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/read-file/watch.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/build-time-constants.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/cicd.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/codesign-macos-executable.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/define-constant.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/delete-directory.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/delete-file.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/heap-snapshot.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/import-html.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/import-json.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/import-json5.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/import-toml.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/import-yaml.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/read-env.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/set-env.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/shell.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/timezone.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/tsconfig-paths.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/typescript.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/vscode-debugger.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/runtime/web-debugger.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/node-readable-to-arraybuffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/node-readable-to-blob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/node-readable-to-json.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/node-readable-to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/node-readable-to-uint8array.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-array.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-arraybuffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-blob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-buffer.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-json.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-string.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/streams/to-typedarray.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/bail.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/concurrent-test-glob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/coverage-threshold.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/coverage.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/happy-dom.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/migrate-from-jest.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/mock-clock.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/mock-functions.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/rerun-each.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/run-tests.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/skip-tests.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/snapshot.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/spy-on.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/svelte-test.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/testing-library.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/timeout.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/todo-tests.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/update-snapshots.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/test/watch-mode.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/base64.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/deep-equals.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/deflate.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/detect-bun.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/entrypoint.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/escape-html.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/file-url-to-path.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/gzip.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/hash-a-password.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/import-meta-dir.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/import-meta-file.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/import-meta-path.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/javascript-uuid.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/main.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/path-to-file-url.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/sleep.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/upgrade.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/version.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/util/which-path-to-executable-bin.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/websocket/compression.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/websocket/context.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/websocket/pubsub.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/websocket/simple.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/append.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/basic.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/blob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/cat.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/file-cp.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/filesink.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/response.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/stdout.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/stream.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/guides/write-file/unlink.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/index.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/installation.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/bunx.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/catalogs.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/add.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/audit.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/info.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/install.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/link.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/outdated.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/patch.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/pm.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/publish.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/remove.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/update.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/cli/why.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/filter.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/global-cache.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/isolated-installs.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/lifecycle.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/lockfile.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/npmrc.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/overrides.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/scopes-registries.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/security-scanner-api.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/pm/workspaces.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/benchmarking.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/bindgen.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/building-windows.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/contributing.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/feedback.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/license.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/project/roadmap.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/quickstart.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/archive.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/auto-install.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/binary-data.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/c-compiler.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/child-process.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/color.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/console.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/cookies.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/debugger.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/environment-variables.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/ffi.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/file-io.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/file-system-router.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/file-types.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/glob.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/globals.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/html-rewriter.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/cookies.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/error-handling.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/metrics.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/routing.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/tls.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/http/websockets.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/index.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/jsonl.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/jsx.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/module-resolution.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/networking/dns.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/networking/fetch.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/networking/tcp.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/networking/udp.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/node-api.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/nodejs-compat.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/plugins.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/redis.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/repl.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/s3.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/secrets.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/semver.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/shell.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/sql.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/sqlite.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/streams.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/templating/create.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/templating/init.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/transpiler.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/typescript.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/utils.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/watch-mode.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/web-apis.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/runtime/workers.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/add.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/build.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/bunx.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/feedback.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/init.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/install.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/link.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/outdated.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/patch.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/publish.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/remove.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/run.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/test.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/snippets/cli/update.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/code-coverage.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/dates-times.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/discovery.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/dom.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/index.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/lifecycle.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/mocks.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/reporters.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/runtime-behavior.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/snapshots.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/test/writing-tests.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/docs/typescript.mdx +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/extensions.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/fetch.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/ffi.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/globals.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/html-rewriter.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/jsc.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/jsx.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/overrides.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/redis.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/security.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/serve.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/shell.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/sql.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/sqlite.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/test-globals.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/test.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/vendor/expect-type/branding.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/vendor/expect-type/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/vendor/expect-type/messages.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/vendor/expect-type/overloads.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/vendor/expect-type/utils.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/bun-types/wasm.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/license +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/package.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/readme.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/index.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/utilities.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/vendor/supports-color/browser.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/chalk/source/vendor/supports-color/index.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/LICENSE +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/Readme.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/esm.mjs +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/index.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/lib/argument.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/lib/command.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/lib/error.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/lib/help.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/lib/option.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/lib/suggestSimilar.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/package-support.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/package.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/typings/esm.d.mts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/commander/typings/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/LICENSE.txt +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/README.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/SECURITY.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/ThirdPartyNoticeText.txt +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/bin/tsc +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/bin/tsserver +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/_tsc.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/_tsserver.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/_typingsInstaller.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/de/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/es/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/it/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.decorators.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.decorators.legacy.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.dom.asynciterable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.dom.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.dom.iterable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.collection.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.core.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.generator.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.iterable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.promise.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.proxy.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.reflect.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.symbol.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2016.array.include.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2016.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2016.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2016.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.date.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.object.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.string.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.promise.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2018.regexp.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.array.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.object.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.string.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2019.symbol.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.bigint.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.date.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.number.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.promise.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.string.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2021.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2021.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2021.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2021.promise.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2021.string.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2021.weakref.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.array.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.error.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.object.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.regexp.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2022.string.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2023.array.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2023.collection.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2023.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2023.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2023.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.collection.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.object.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.promise.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.regexp.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es2024.string.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es5.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.es6.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.array.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.collection.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.decorators.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.disposable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.error.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.float16.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.full.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.intl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.iterator.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.promise.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.scripthost.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.webworker.asynciterable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.webworker.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.webworker.importscripts.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/lib.webworker.iterable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/tsc.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/tsserver.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/tsserverlibrary.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/tsserverlibrary.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/typesMap.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/typescript.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/typescript.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/typingsInstaller.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/watchGuard.js +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/typescript/package.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/LICENSE +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/README.md +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/agent.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/api.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/balanced-pool.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/cache-interceptor.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/cache.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/client-stats.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/client.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/connector.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/content-type.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/cookies.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/diagnostics-channel.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/dispatcher.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/errors.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/eventsource.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/fetch.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/formdata.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/global-dispatcher.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/global-origin.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/h2c-client.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/handlers.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/header.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/index.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/interceptors.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/mock-agent.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/mock-call-history.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/mock-client.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/mock-errors.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/mock-interceptor.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/mock-pool.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/package.json +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/patch.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/pool-stats.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/pool.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/proxy-agent.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/readable.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/retry-agent.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/retry-handler.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/round-robin-pool.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/snapshot-agent.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/util.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/utility.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/webidl.d.ts +0 -0
- /package/connectors/{connect-namecheap → connect-yousign}/node_modules/undici-types/websocket.d.ts +0 -0
package/bin/index.js
CHANGED
|
@@ -6,39 +6,60 @@ var __defProp = Object.defineProperty;
|
|
|
6
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
7
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
8
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
function __accessProp(key) {
|
|
10
|
+
return this[key];
|
|
11
|
+
}
|
|
12
|
+
var __toESMCache_node;
|
|
13
|
+
var __toESMCache_esm;
|
|
9
14
|
var __toESM = (mod, isNodeMode, target) => {
|
|
15
|
+
var canCache = mod != null && typeof mod === "object";
|
|
16
|
+
if (canCache) {
|
|
17
|
+
var cache = isNodeMode ? __toESMCache_node ??= new WeakMap : __toESMCache_esm ??= new WeakMap;
|
|
18
|
+
var cached = cache.get(mod);
|
|
19
|
+
if (cached)
|
|
20
|
+
return cached;
|
|
21
|
+
}
|
|
10
22
|
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
11
23
|
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
12
24
|
for (let key of __getOwnPropNames(mod))
|
|
13
25
|
if (!__hasOwnProp.call(to, key))
|
|
14
26
|
__defProp(to, key, {
|
|
15
|
-
get: (
|
|
27
|
+
get: __accessProp.bind(mod, key),
|
|
16
28
|
enumerable: true
|
|
17
29
|
});
|
|
30
|
+
if (canCache)
|
|
31
|
+
cache.set(mod, to);
|
|
18
32
|
return to;
|
|
19
33
|
};
|
|
20
|
-
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
|
21
34
|
var __toCommonJS = (from) => {
|
|
22
|
-
var entry = __moduleCache.get(from), desc;
|
|
35
|
+
var entry = (__moduleCache ??= new WeakMap).get(from), desc;
|
|
23
36
|
if (entry)
|
|
24
37
|
return entry;
|
|
25
38
|
entry = __defProp({}, "__esModule", { value: true });
|
|
26
|
-
if (from && typeof from === "object" || typeof from === "function")
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
39
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
40
|
+
for (var key of __getOwnPropNames(from))
|
|
41
|
+
if (!__hasOwnProp.call(entry, key))
|
|
42
|
+
__defProp(entry, key, {
|
|
43
|
+
get: __accessProp.bind(from, key),
|
|
44
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
45
|
+
});
|
|
46
|
+
}
|
|
31
47
|
__moduleCache.set(from, entry);
|
|
32
48
|
return entry;
|
|
33
49
|
};
|
|
50
|
+
var __moduleCache;
|
|
34
51
|
var __commonJS = (cb, mod) => () => (mod || cb((mod = { exports: {} }).exports, mod), mod.exports);
|
|
52
|
+
var __returnValue = (v) => v;
|
|
53
|
+
function __exportSetter(name, newValue) {
|
|
54
|
+
this[name] = __returnValue.bind(null, newValue);
|
|
55
|
+
}
|
|
35
56
|
var __export = (target, all) => {
|
|
36
57
|
for (var name in all)
|
|
37
58
|
__defProp(target, name, {
|
|
38
59
|
get: all[name],
|
|
39
60
|
enumerable: true,
|
|
40
61
|
configurable: true,
|
|
41
|
-
set: (
|
|
62
|
+
set: __exportSetter.bind(all, name)
|
|
42
63
|
});
|
|
43
64
|
};
|
|
44
65
|
var __esm = (fn, res) => () => (fn && (res = fn(fn = 0)), res);
|
|
@@ -1883,147 +1904,45 @@ var require_commander = __commonJS((exports) => {
|
|
|
1883
1904
|
exports.InvalidOptionArgumentError = InvalidArgumentError;
|
|
1884
1905
|
});
|
|
1885
1906
|
|
|
1886
|
-
// src/lib/llm.ts
|
|
1887
|
-
import { existsSync, readFileSync, writeFileSync, mkdirSync } from "fs";
|
|
1888
|
-
import { join } from "path";
|
|
1889
|
-
import { homedir } from "os";
|
|
1890
|
-
function getLlmConfigPath() {
|
|
1891
|
-
return join(homedir(), ".connectors", "llm.json");
|
|
1892
|
-
}
|
|
1893
|
-
function getLlmConfig() {
|
|
1894
|
-
const path = getLlmConfigPath();
|
|
1895
|
-
if (!existsSync(path))
|
|
1896
|
-
return null;
|
|
1897
|
-
try {
|
|
1898
|
-
return JSON.parse(readFileSync(path, "utf-8"));
|
|
1899
|
-
} catch {
|
|
1900
|
-
return null;
|
|
1901
|
-
}
|
|
1902
|
-
}
|
|
1903
|
-
function saveLlmConfig(config) {
|
|
1904
|
-
const dir = join(homedir(), ".connectors");
|
|
1905
|
-
mkdirSync(dir, { recursive: true });
|
|
1906
|
-
writeFileSync(getLlmConfigPath(), JSON.stringify(config, null, 2));
|
|
1907
|
-
}
|
|
1908
|
-
function setLlmStrip(enabled) {
|
|
1909
|
-
const config = getLlmConfig();
|
|
1910
|
-
if (!config)
|
|
1911
|
-
throw new Error("No LLM config found. Run: connectors llm set --provider <provider> --key <key>");
|
|
1912
|
-
saveLlmConfig({ ...config, strip: enabled });
|
|
1913
|
-
}
|
|
1914
|
-
function maskKey(key) {
|
|
1915
|
-
if (key.length <= 8)
|
|
1916
|
-
return "***";
|
|
1917
|
-
return key.slice(0, 8) + "***";
|
|
1918
|
-
}
|
|
1919
|
-
|
|
1920
|
-
class LLMClient {
|
|
1921
|
-
config;
|
|
1922
|
-
constructor(config) {
|
|
1923
|
-
this.config = config;
|
|
1924
|
-
}
|
|
1925
|
-
static fromConfig() {
|
|
1926
|
-
const config = getLlmConfig();
|
|
1927
|
-
if (!config)
|
|
1928
|
-
return null;
|
|
1929
|
-
return new LLMClient(config);
|
|
1930
|
-
}
|
|
1931
|
-
async complete(prompt, content) {
|
|
1932
|
-
const start = Date.now();
|
|
1933
|
-
const { provider, model, api_key } = this.config;
|
|
1934
|
-
if (provider === "anthropic") {
|
|
1935
|
-
return this._anthropicComplete(prompt, content, start);
|
|
1936
|
-
}
|
|
1937
|
-
const baseUrl = PROVIDER_BASE_URLS[provider];
|
|
1938
|
-
const response = await fetch(`${baseUrl}/chat/completions`, {
|
|
1939
|
-
method: "POST",
|
|
1940
|
-
headers: {
|
|
1941
|
-
"Content-Type": "application/json",
|
|
1942
|
-
Authorization: `Bearer ${api_key}`
|
|
1943
|
-
},
|
|
1944
|
-
body: JSON.stringify({
|
|
1945
|
-
model,
|
|
1946
|
-
messages: [
|
|
1947
|
-
{ role: "system", content: prompt },
|
|
1948
|
-
{ role: "user", content }
|
|
1949
|
-
],
|
|
1950
|
-
temperature: 0,
|
|
1951
|
-
max_tokens: 4096
|
|
1952
|
-
})
|
|
1953
|
-
});
|
|
1954
|
-
if (!response.ok) {
|
|
1955
|
-
const error = await response.text();
|
|
1956
|
-
throw new Error(`LLM request failed (${provider} ${response.status}): ${error}`);
|
|
1957
|
-
}
|
|
1958
|
-
const data = await response.json();
|
|
1959
|
-
return {
|
|
1960
|
-
content: data.choices[0].message.content,
|
|
1961
|
-
provider,
|
|
1962
|
-
model,
|
|
1963
|
-
latency_ms: Date.now() - start
|
|
1964
|
-
};
|
|
1965
|
-
}
|
|
1966
|
-
async _anthropicComplete(prompt, content, start) {
|
|
1967
|
-
const { model, api_key } = this.config;
|
|
1968
|
-
const response = await fetch("https://api.anthropic.com/v1/messages", {
|
|
1969
|
-
method: "POST",
|
|
1970
|
-
headers: {
|
|
1971
|
-
"Content-Type": "application/json",
|
|
1972
|
-
"x-api-key": api_key,
|
|
1973
|
-
"anthropic-version": "2023-06-01"
|
|
1974
|
-
},
|
|
1975
|
-
body: JSON.stringify({
|
|
1976
|
-
model,
|
|
1977
|
-
system: prompt,
|
|
1978
|
-
messages: [{ role: "user", content }],
|
|
1979
|
-
max_tokens: 4096
|
|
1980
|
-
})
|
|
1981
|
-
});
|
|
1982
|
-
if (!response.ok) {
|
|
1983
|
-
const error = await response.text();
|
|
1984
|
-
throw new Error(`LLM request failed (anthropic ${response.status}): ${error}`);
|
|
1985
|
-
}
|
|
1986
|
-
const data = await response.json();
|
|
1987
|
-
return {
|
|
1988
|
-
content: data.content[0].text,
|
|
1989
|
-
provider: "anthropic",
|
|
1990
|
-
model,
|
|
1991
|
-
latency_ms: Date.now() - start
|
|
1992
|
-
};
|
|
1993
|
-
}
|
|
1994
|
-
}
|
|
1995
|
-
var PROVIDER_BASE_URLS, PROVIDER_DEFAULTS;
|
|
1996
|
-
var init_llm = __esm(() => {
|
|
1997
|
-
PROVIDER_BASE_URLS = {
|
|
1998
|
-
cerebras: "https://api.cerebras.ai/v1",
|
|
1999
|
-
groq: "https://api.groq.com/openai/v1",
|
|
2000
|
-
openai: "https://api.openai.com/v1"
|
|
2001
|
-
};
|
|
2002
|
-
PROVIDER_DEFAULTS = {
|
|
2003
|
-
cerebras: { model: "qwen-3-32b" },
|
|
2004
|
-
groq: { model: "llama-3.3-70b-versatile" },
|
|
2005
|
-
openai: { model: "gpt-4o-mini" },
|
|
2006
|
-
anthropic: { model: "claude-haiku-4-5-20251001" }
|
|
2007
|
-
};
|
|
2008
|
-
});
|
|
2009
|
-
|
|
2010
1907
|
// src/db/database.ts
|
|
2011
1908
|
var exports_database = {};
|
|
2012
1909
|
__export(exports_database, {
|
|
2013
1910
|
shortUuid: () => shortUuid,
|
|
2014
1911
|
now: () => now,
|
|
2015
1912
|
getDatabase: () => getDatabase,
|
|
1913
|
+
getConnectorsHome: () => getConnectorsHome,
|
|
2016
1914
|
closeDatabase: () => closeDatabase
|
|
2017
1915
|
});
|
|
2018
1916
|
import { Database } from "bun:sqlite";
|
|
2019
|
-
import { join
|
|
2020
|
-
import { homedir
|
|
2021
|
-
import { mkdirSync
|
|
1917
|
+
import { join } from "path";
|
|
1918
|
+
import { homedir } from "os";
|
|
1919
|
+
import { mkdirSync, existsSync, readdirSync, copyFileSync, statSync } from "fs";
|
|
1920
|
+
function getConnectorsHome() {
|
|
1921
|
+
const home = process.env["HOME"] || process.env["USERPROFILE"] || homedir();
|
|
1922
|
+
const newDir = join(home, ".hasna", "connectors");
|
|
1923
|
+
const oldDir = join(home, ".connectors");
|
|
1924
|
+
if (existsSync(oldDir) && !existsSync(newDir)) {
|
|
1925
|
+
mkdirSync(newDir, { recursive: true });
|
|
1926
|
+
try {
|
|
1927
|
+
for (const file of readdirSync(oldDir)) {
|
|
1928
|
+
const oldPath = join(oldDir, file);
|
|
1929
|
+
const newPath = join(newDir, file);
|
|
1930
|
+
try {
|
|
1931
|
+
if (statSync(oldPath).isFile()) {
|
|
1932
|
+
copyFileSync(oldPath, newPath);
|
|
1933
|
+
}
|
|
1934
|
+
} catch {}
|
|
1935
|
+
}
|
|
1936
|
+
} catch {}
|
|
1937
|
+
}
|
|
1938
|
+
mkdirSync(newDir, { recursive: true });
|
|
1939
|
+
return newDir;
|
|
1940
|
+
}
|
|
2022
1941
|
function getDatabase(path) {
|
|
2023
1942
|
if (_db)
|
|
2024
1943
|
return _db;
|
|
2025
1944
|
const dbPath = path ?? DB_PATH;
|
|
2026
|
-
|
|
1945
|
+
mkdirSync(join(dbPath, ".."), { recursive: true });
|
|
2027
1946
|
_db = new Database(dbPath);
|
|
2028
1947
|
_db.run("PRAGMA journal_mode = WAL");
|
|
2029
1948
|
migrate(_db);
|
|
@@ -2133,8 +2052,132 @@ function migrate(db) {
|
|
|
2133
2052
|
}
|
|
2134
2053
|
var DB_DIR, DB_PATH, _db = null;
|
|
2135
2054
|
var init_database = __esm(() => {
|
|
2136
|
-
DB_DIR =
|
|
2137
|
-
DB_PATH =
|
|
2055
|
+
DB_DIR = getConnectorsHome();
|
|
2056
|
+
DB_PATH = join(DB_DIR, "connectors.db");
|
|
2057
|
+
});
|
|
2058
|
+
|
|
2059
|
+
// src/lib/llm.ts
|
|
2060
|
+
import { existsSync as existsSync2, readFileSync, writeFileSync, mkdirSync as mkdirSync2 } from "fs";
|
|
2061
|
+
import { join as join2 } from "path";
|
|
2062
|
+
function getLlmConfigPath() {
|
|
2063
|
+
return join2(getConnectorsHome(), "llm.json");
|
|
2064
|
+
}
|
|
2065
|
+
function getLlmConfig() {
|
|
2066
|
+
const path = getLlmConfigPath();
|
|
2067
|
+
if (!existsSync2(path))
|
|
2068
|
+
return null;
|
|
2069
|
+
try {
|
|
2070
|
+
return JSON.parse(readFileSync(path, "utf-8"));
|
|
2071
|
+
} catch {
|
|
2072
|
+
return null;
|
|
2073
|
+
}
|
|
2074
|
+
}
|
|
2075
|
+
function saveLlmConfig(config) {
|
|
2076
|
+
const dir = getConnectorsHome();
|
|
2077
|
+
mkdirSync2(dir, { recursive: true });
|
|
2078
|
+
writeFileSync(getLlmConfigPath(), JSON.stringify(config, null, 2));
|
|
2079
|
+
}
|
|
2080
|
+
function setLlmStrip(enabled) {
|
|
2081
|
+
const config = getLlmConfig();
|
|
2082
|
+
if (!config)
|
|
2083
|
+
throw new Error("No LLM config found. Run: connectors llm set --provider <provider> --key <key>");
|
|
2084
|
+
saveLlmConfig({ ...config, strip: enabled });
|
|
2085
|
+
}
|
|
2086
|
+
function maskKey(key) {
|
|
2087
|
+
if (key.length <= 8)
|
|
2088
|
+
return "***";
|
|
2089
|
+
return key.slice(0, 8) + "***";
|
|
2090
|
+
}
|
|
2091
|
+
|
|
2092
|
+
class LLMClient {
|
|
2093
|
+
config;
|
|
2094
|
+
constructor(config) {
|
|
2095
|
+
this.config = config;
|
|
2096
|
+
}
|
|
2097
|
+
static fromConfig() {
|
|
2098
|
+
const config = getLlmConfig();
|
|
2099
|
+
if (!config)
|
|
2100
|
+
return null;
|
|
2101
|
+
return new LLMClient(config);
|
|
2102
|
+
}
|
|
2103
|
+
async complete(prompt, content) {
|
|
2104
|
+
const start = Date.now();
|
|
2105
|
+
const { provider, model, api_key } = this.config;
|
|
2106
|
+
if (provider === "anthropic") {
|
|
2107
|
+
return this._anthropicComplete(prompt, content, start);
|
|
2108
|
+
}
|
|
2109
|
+
const baseUrl = PROVIDER_BASE_URLS[provider];
|
|
2110
|
+
const response = await fetch(`${baseUrl}/chat/completions`, {
|
|
2111
|
+
method: "POST",
|
|
2112
|
+
headers: {
|
|
2113
|
+
"Content-Type": "application/json",
|
|
2114
|
+
Authorization: `Bearer ${api_key}`
|
|
2115
|
+
},
|
|
2116
|
+
body: JSON.stringify({
|
|
2117
|
+
model,
|
|
2118
|
+
messages: [
|
|
2119
|
+
{ role: "system", content: prompt },
|
|
2120
|
+
{ role: "user", content }
|
|
2121
|
+
],
|
|
2122
|
+
temperature: 0,
|
|
2123
|
+
max_tokens: 4096
|
|
2124
|
+
})
|
|
2125
|
+
});
|
|
2126
|
+
if (!response.ok) {
|
|
2127
|
+
const error = await response.text();
|
|
2128
|
+
throw new Error(`LLM request failed (${provider} ${response.status}): ${error}`);
|
|
2129
|
+
}
|
|
2130
|
+
const data = await response.json();
|
|
2131
|
+
return {
|
|
2132
|
+
content: data.choices[0].message.content,
|
|
2133
|
+
provider,
|
|
2134
|
+
model,
|
|
2135
|
+
latency_ms: Date.now() - start
|
|
2136
|
+
};
|
|
2137
|
+
}
|
|
2138
|
+
async _anthropicComplete(prompt, content, start) {
|
|
2139
|
+
const { model, api_key } = this.config;
|
|
2140
|
+
const response = await fetch("https://api.anthropic.com/v1/messages", {
|
|
2141
|
+
method: "POST",
|
|
2142
|
+
headers: {
|
|
2143
|
+
"Content-Type": "application/json",
|
|
2144
|
+
"x-api-key": api_key,
|
|
2145
|
+
"anthropic-version": "2023-06-01"
|
|
2146
|
+
},
|
|
2147
|
+
body: JSON.stringify({
|
|
2148
|
+
model,
|
|
2149
|
+
system: prompt,
|
|
2150
|
+
messages: [{ role: "user", content }],
|
|
2151
|
+
max_tokens: 4096
|
|
2152
|
+
})
|
|
2153
|
+
});
|
|
2154
|
+
if (!response.ok) {
|
|
2155
|
+
const error = await response.text();
|
|
2156
|
+
throw new Error(`LLM request failed (anthropic ${response.status}): ${error}`);
|
|
2157
|
+
}
|
|
2158
|
+
const data = await response.json();
|
|
2159
|
+
return {
|
|
2160
|
+
content: data.content[0].text,
|
|
2161
|
+
provider: "anthropic",
|
|
2162
|
+
model,
|
|
2163
|
+
latency_ms: Date.now() - start
|
|
2164
|
+
};
|
|
2165
|
+
}
|
|
2166
|
+
}
|
|
2167
|
+
var PROVIDER_BASE_URLS, PROVIDER_DEFAULTS;
|
|
2168
|
+
var init_llm = __esm(() => {
|
|
2169
|
+
init_database();
|
|
2170
|
+
PROVIDER_BASE_URLS = {
|
|
2171
|
+
cerebras: "https://api.cerebras.ai/v1",
|
|
2172
|
+
groq: "https://api.groq.com/openai/v1",
|
|
2173
|
+
openai: "https://api.openai.com/v1"
|
|
2174
|
+
};
|
|
2175
|
+
PROVIDER_DEFAULTS = {
|
|
2176
|
+
cerebras: { model: "qwen-3-32b" },
|
|
2177
|
+
groq: { model: "llama-3.3-70b-versatile" },
|
|
2178
|
+
openai: { model: "gpt-4o-mini" },
|
|
2179
|
+
anthropic: { model: "claude-haiku-4-5-20251001" }
|
|
2180
|
+
};
|
|
2138
2181
|
});
|
|
2139
2182
|
|
|
2140
2183
|
// src/db/jobs.ts
|
|
@@ -2545,7 +2588,7 @@ var init_synonyms = __esm(() => {
|
|
|
2545
2588
|
});
|
|
2546
2589
|
|
|
2547
2590
|
// src/lib/registry.ts
|
|
2548
|
-
import { existsSync as
|
|
2591
|
+
import { existsSync as existsSync3, readFileSync as readFileSync2 } from "fs";
|
|
2549
2592
|
import { join as join3, dirname } from "path";
|
|
2550
2593
|
import { fileURLToPath } from "url";
|
|
2551
2594
|
function getConnectorsByCategory(category) {
|
|
@@ -2710,13 +2753,13 @@ function loadConnectorVersions() {
|
|
|
2710
2753
|
join3(thisDir, "..", "connectors"),
|
|
2711
2754
|
join3(thisDir, "..", "..", "connectors")
|
|
2712
2755
|
];
|
|
2713
|
-
const connectorsDir = candidates.find((d) =>
|
|
2756
|
+
const connectorsDir = candidates.find((d) => existsSync3(d));
|
|
2714
2757
|
if (!connectorsDir)
|
|
2715
2758
|
return;
|
|
2716
2759
|
for (const connector of CONNECTORS) {
|
|
2717
2760
|
try {
|
|
2718
2761
|
const pkgPath = join3(connectorsDir, `connect-${connector.name}`, "package.json");
|
|
2719
|
-
if (
|
|
2762
|
+
if (existsSync3(pkgPath)) {
|
|
2720
2763
|
const pkg = JSON.parse(readFileSync2(pkgPath, "utf-8"));
|
|
2721
2764
|
connector.version = pkg.version || "0.0.0";
|
|
2722
2765
|
}
|
|
@@ -10291,16 +10334,15 @@ var require_cli_spinners = __commonJS((exports, module) => {
|
|
|
10291
10334
|
});
|
|
10292
10335
|
|
|
10293
10336
|
// src/lib/installer.ts
|
|
10294
|
-
import { existsSync as
|
|
10295
|
-
import { homedir as homedir3 } from "os";
|
|
10337
|
+
import { existsSync as existsSync4, cpSync, mkdirSync as mkdirSync3, readFileSync as readFileSync3, writeFileSync as writeFileSync2, readdirSync as readdirSync2, statSync as statSync2, rmSync } from "fs";
|
|
10296
10338
|
import { join as join4, dirname as dirname2 } from "path";
|
|
10297
10339
|
import { fileURLToPath as fileURLToPath2 } from "url";
|
|
10298
10340
|
function resolveConnectorsDir() {
|
|
10299
10341
|
const fromBin = join4(__dirname2, "..", "connectors");
|
|
10300
|
-
if (
|
|
10342
|
+
if (existsSync4(fromBin))
|
|
10301
10343
|
return fromBin;
|
|
10302
10344
|
const fromSrc = join4(__dirname2, "..", "..", "connectors");
|
|
10303
|
-
if (
|
|
10345
|
+
if (existsSync4(fromSrc))
|
|
10304
10346
|
return fromSrc;
|
|
10305
10347
|
return fromBin;
|
|
10306
10348
|
}
|
|
@@ -10309,7 +10351,7 @@ function getConnectorPath(name) {
|
|
|
10309
10351
|
return join4(CONNECTORS_DIR, connectorName);
|
|
10310
10352
|
}
|
|
10311
10353
|
function connectorExists(name) {
|
|
10312
|
-
return
|
|
10354
|
+
return existsSync4(getConnectorPath(name));
|
|
10313
10355
|
}
|
|
10314
10356
|
function installConnector(name, options = {}) {
|
|
10315
10357
|
const { targetDir = process.cwd(), overwrite = false } = options;
|
|
@@ -10324,14 +10366,14 @@ function installConnector(name, options = {}) {
|
|
|
10324
10366
|
const sourcePath = getConnectorPath(name);
|
|
10325
10367
|
const destDir = join4(targetDir, ".connectors");
|
|
10326
10368
|
const destPath = join4(destDir, connectorName);
|
|
10327
|
-
if (!
|
|
10369
|
+
if (!existsSync4(sourcePath)) {
|
|
10328
10370
|
return {
|
|
10329
10371
|
connector: name,
|
|
10330
10372
|
success: false,
|
|
10331
10373
|
error: `Connector '${name}' not found`
|
|
10332
10374
|
};
|
|
10333
10375
|
}
|
|
10334
|
-
if (
|
|
10376
|
+
if (existsSync4(destPath) && !overwrite) {
|
|
10335
10377
|
return {
|
|
10336
10378
|
connector: name,
|
|
10337
10379
|
success: false,
|
|
@@ -10340,21 +10382,21 @@ function installConnector(name, options = {}) {
|
|
|
10340
10382
|
};
|
|
10341
10383
|
}
|
|
10342
10384
|
try {
|
|
10343
|
-
if (!
|
|
10385
|
+
if (!existsSync4(destDir)) {
|
|
10344
10386
|
mkdirSync3(destDir, { recursive: true });
|
|
10345
10387
|
}
|
|
10346
10388
|
cpSync(sourcePath, destPath, { recursive: true });
|
|
10347
|
-
const homeCredDir = join4(
|
|
10348
|
-
if (
|
|
10389
|
+
const homeCredDir = join4(getConnectorsHome(), connectorName);
|
|
10390
|
+
if (existsSync4(homeCredDir)) {
|
|
10349
10391
|
const filesToCopy = ["credentials.json", "current_profile"];
|
|
10350
10392
|
for (const file of filesToCopy) {
|
|
10351
10393
|
const src = join4(homeCredDir, file);
|
|
10352
|
-
if (
|
|
10394
|
+
if (existsSync4(src)) {
|
|
10353
10395
|
cpSync(src, join4(destPath, file));
|
|
10354
10396
|
}
|
|
10355
10397
|
}
|
|
10356
10398
|
const profilesDir = join4(homeCredDir, "profiles");
|
|
10357
|
-
if (
|
|
10399
|
+
if (existsSync4(profilesDir)) {
|
|
10358
10400
|
cpSync(profilesDir, join4(destPath, "profiles"), { recursive: true });
|
|
10359
10401
|
}
|
|
10360
10402
|
}
|
|
@@ -10374,7 +10416,7 @@ function installConnector(name, options = {}) {
|
|
|
10374
10416
|
}
|
|
10375
10417
|
function updateConnectorsIndex(connectorsDir) {
|
|
10376
10418
|
const indexPath = join4(connectorsDir, "index.ts");
|
|
10377
|
-
const connectors =
|
|
10419
|
+
const connectors = readdirSync2(connectorsDir).filter((f) => f.startsWith("connect-") && !f.includes("."));
|
|
10378
10420
|
const exports = connectors.map((c) => {
|
|
10379
10421
|
const name = c.replace("connect-", "");
|
|
10380
10422
|
return `export * as ${name} from './${c}/src/index.js';`;
|
|
@@ -10391,18 +10433,18 @@ ${exports}
|
|
|
10391
10433
|
}
|
|
10392
10434
|
function getInstalledConnectors(targetDir = process.cwd()) {
|
|
10393
10435
|
const connectorsDir = join4(targetDir, ".connectors");
|
|
10394
|
-
if (!
|
|
10436
|
+
if (!existsSync4(connectorsDir)) {
|
|
10395
10437
|
return [];
|
|
10396
10438
|
}
|
|
10397
|
-
return
|
|
10439
|
+
return readdirSync2(connectorsDir).filter((f) => {
|
|
10398
10440
|
const fullPath = join4(connectorsDir, f);
|
|
10399
|
-
return f.startsWith("connect-") &&
|
|
10441
|
+
return f.startsWith("connect-") && statSync2(fullPath).isDirectory();
|
|
10400
10442
|
}).map((f) => f.replace("connect-", ""));
|
|
10401
10443
|
}
|
|
10402
10444
|
function getConnectorDocs(name) {
|
|
10403
10445
|
const connectorPath = getConnectorPath(name);
|
|
10404
10446
|
const claudeMdPath = join4(connectorPath, "CLAUDE.md");
|
|
10405
|
-
if (!
|
|
10447
|
+
if (!existsSync4(claudeMdPath))
|
|
10406
10448
|
return null;
|
|
10407
10449
|
const raw = readFileSync3(claudeMdPath, "utf-8");
|
|
10408
10450
|
return {
|
|
@@ -10445,7 +10487,7 @@ function removeConnector(name, targetDir = process.cwd()) {
|
|
|
10445
10487
|
const connectorName = name.startsWith("connect-") ? name : `connect-${name}`;
|
|
10446
10488
|
const connectorsDir = join4(targetDir, ".connectors");
|
|
10447
10489
|
const connectorPath = join4(connectorsDir, connectorName);
|
|
10448
|
-
if (!
|
|
10490
|
+
if (!existsSync4(connectorPath)) {
|
|
10449
10491
|
return false;
|
|
10450
10492
|
}
|
|
10451
10493
|
rmSync(connectorPath, { recursive: true });
|
|
@@ -10454,30 +10496,30 @@ function removeConnector(name, targetDir = process.cwd()) {
|
|
|
10454
10496
|
}
|
|
10455
10497
|
var __dirname2, CONNECTORS_DIR;
|
|
10456
10498
|
var init_installer = __esm(() => {
|
|
10499
|
+
init_database();
|
|
10457
10500
|
__dirname2 = dirname2(fileURLToPath2(import.meta.url));
|
|
10458
10501
|
CONNECTORS_DIR = resolveConnectorsDir();
|
|
10459
10502
|
});
|
|
10460
10503
|
|
|
10461
10504
|
// src/lib/lock.ts
|
|
10462
|
-
import { openSync, closeSync, unlinkSync, existsSync as
|
|
10505
|
+
import { openSync, closeSync, unlinkSync, existsSync as existsSync5, statSync as statSync3 } from "fs";
|
|
10463
10506
|
import { join as join5 } from "path";
|
|
10464
|
-
import { homedir as homedir4 } from "os";
|
|
10465
10507
|
import { mkdirSync as mkdirSync4 } from "fs";
|
|
10466
10508
|
function lockPath(connector) {
|
|
10467
|
-
const dir = join5(
|
|
10509
|
+
const dir = join5(getConnectorsHome(), `connect-${connector}`);
|
|
10468
10510
|
mkdirSync4(dir, { recursive: true });
|
|
10469
10511
|
return join5(dir, ".write.lock");
|
|
10470
10512
|
}
|
|
10471
10513
|
function isStale(path) {
|
|
10472
10514
|
try {
|
|
10473
|
-
const stat =
|
|
10515
|
+
const stat = statSync3(path);
|
|
10474
10516
|
return Date.now() - stat.mtimeMs > STALE_LOCK_MS;
|
|
10475
10517
|
} catch {
|
|
10476
10518
|
return false;
|
|
10477
10519
|
}
|
|
10478
10520
|
}
|
|
10479
10521
|
function tryAcquire(path) {
|
|
10480
|
-
if (
|
|
10522
|
+
if (existsSync5(path) && isStale(path)) {
|
|
10481
10523
|
try {
|
|
10482
10524
|
unlinkSync(path);
|
|
10483
10525
|
} catch {}
|
|
@@ -10514,6 +10556,7 @@ async function withWriteLock(connector, fn) {
|
|
|
10514
10556
|
}
|
|
10515
10557
|
var LOCK_TIMEOUT_MS = 5000, LOCK_RETRY_MS = 100, STALE_LOCK_MS = 30000, LockTimeoutError;
|
|
10516
10558
|
var init_lock = __esm(() => {
|
|
10559
|
+
init_database();
|
|
10517
10560
|
LockTimeoutError = class LockTimeoutError extends Error {
|
|
10518
10561
|
connector;
|
|
10519
10562
|
constructor(connector) {
|
|
@@ -10525,9 +10568,8 @@ var init_lock = __esm(() => {
|
|
|
10525
10568
|
});
|
|
10526
10569
|
|
|
10527
10570
|
// src/server/auth.ts
|
|
10528
|
-
import { existsSync as
|
|
10571
|
+
import { existsSync as existsSync6, readFileSync as readFileSync4, writeFileSync as writeFileSync3, mkdirSync as mkdirSync5, readdirSync as readdirSync3, rmSync as rmSync2, statSync as statSync4 } from "fs";
|
|
10529
10572
|
import { randomBytes } from "crypto";
|
|
10530
|
-
import { homedir as homedir5 } from "os";
|
|
10531
10573
|
import { join as join6 } from "path";
|
|
10532
10574
|
function getAuthType(name) {
|
|
10533
10575
|
const docs = getConnectorDocs(name);
|
|
@@ -10542,12 +10584,12 @@ function getAuthType(name) {
|
|
|
10542
10584
|
}
|
|
10543
10585
|
function getConnectorConfigDir(name) {
|
|
10544
10586
|
const connectorName = name.startsWith("connect-") ? name : `connect-${name}`;
|
|
10545
|
-
return join6(
|
|
10587
|
+
return join6(getConnectorsHome(), connectorName);
|
|
10546
10588
|
}
|
|
10547
10589
|
function getCurrentProfile(name) {
|
|
10548
10590
|
const configDir = getConnectorConfigDir(name);
|
|
10549
10591
|
const currentProfileFile = join6(configDir, "current_profile");
|
|
10550
|
-
if (
|
|
10592
|
+
if (existsSync6(currentProfileFile)) {
|
|
10551
10593
|
try {
|
|
10552
10594
|
return readFileSync4(currentProfileFile, "utf-8").trim() || "default";
|
|
10553
10595
|
} catch {
|
|
@@ -10562,13 +10604,13 @@ function loadProfileConfig(name) {
|
|
|
10562
10604
|
let flatConfig = {};
|
|
10563
10605
|
let dirConfig = {};
|
|
10564
10606
|
const profileFile = join6(configDir, "profiles", `${profile}.json`);
|
|
10565
|
-
if (
|
|
10607
|
+
if (existsSync6(profileFile)) {
|
|
10566
10608
|
try {
|
|
10567
10609
|
flatConfig = JSON.parse(readFileSync4(profileFile, "utf-8"));
|
|
10568
10610
|
} catch {}
|
|
10569
10611
|
}
|
|
10570
10612
|
const profileDirConfig = join6(configDir, "profiles", profile, "config.json");
|
|
10571
|
-
if (
|
|
10613
|
+
if (existsSync6(profileDirConfig)) {
|
|
10572
10614
|
try {
|
|
10573
10615
|
dirConfig = JSON.parse(readFileSync4(profileDirConfig, "utf-8"));
|
|
10574
10616
|
} catch {}
|
|
@@ -10582,7 +10624,7 @@ function loadTokens(name) {
|
|
|
10582
10624
|
const configDir = getConnectorConfigDir(name);
|
|
10583
10625
|
const profile = getCurrentProfile(name);
|
|
10584
10626
|
const tokensFile = join6(configDir, "profiles", profile, "tokens.json");
|
|
10585
|
-
if (
|
|
10627
|
+
if (existsSync6(tokensFile)) {
|
|
10586
10628
|
try {
|
|
10587
10629
|
return JSON.parse(readFileSync4(tokensFile, "utf-8"));
|
|
10588
10630
|
} catch {
|
|
@@ -10654,7 +10696,7 @@ function _saveApiKey(name, key, field) {
|
|
|
10654
10696
|
const credentialsFile = join6(configDir, "credentials.json");
|
|
10655
10697
|
mkdirSync5(configDir, { recursive: true });
|
|
10656
10698
|
let creds = {};
|
|
10657
|
-
if (
|
|
10699
|
+
if (existsSync6(credentialsFile)) {
|
|
10658
10700
|
try {
|
|
10659
10701
|
creds = JSON.parse(readFileSync4(credentialsFile, "utf-8"));
|
|
10660
10702
|
} catch {}
|
|
@@ -10665,7 +10707,7 @@ function _saveApiKey(name, key, field) {
|
|
|
10665
10707
|
}
|
|
10666
10708
|
const profileFile = join6(configDir, "profiles", `${profile}.json`);
|
|
10667
10709
|
const profileDir = join6(configDir, "profiles", profile);
|
|
10668
|
-
if (
|
|
10710
|
+
if (existsSync6(profileFile)) {
|
|
10669
10711
|
let config = {};
|
|
10670
10712
|
try {
|
|
10671
10713
|
config = JSON.parse(readFileSync4(profileFile, "utf-8"));
|
|
@@ -10674,10 +10716,10 @@ function _saveApiKey(name, key, field) {
|
|
|
10674
10716
|
writeFileSync3(profileFile, JSON.stringify(config, null, 2));
|
|
10675
10717
|
return;
|
|
10676
10718
|
}
|
|
10677
|
-
if (
|
|
10719
|
+
if (existsSync6(profileDir)) {
|
|
10678
10720
|
const configFile = join6(profileDir, "config.json");
|
|
10679
10721
|
let config = {};
|
|
10680
|
-
if (
|
|
10722
|
+
if (existsSync6(configFile)) {
|
|
10681
10723
|
try {
|
|
10682
10724
|
config = JSON.parse(readFileSync4(configFile, "utf-8"));
|
|
10683
10725
|
} catch {}
|
|
@@ -10706,7 +10748,7 @@ function guessKeyField(name) {
|
|
|
10706
10748
|
function getOAuthConfig(name) {
|
|
10707
10749
|
const configDir = getConnectorConfigDir(name);
|
|
10708
10750
|
const credentialsFile = join6(configDir, "credentials.json");
|
|
10709
|
-
if (
|
|
10751
|
+
if (existsSync6(credentialsFile)) {
|
|
10710
10752
|
try {
|
|
10711
10753
|
const creds = JSON.parse(readFileSync4(credentialsFile, "utf-8"));
|
|
10712
10754
|
return { clientId: creds.clientId, clientSecret: creds.clientSecret };
|
|
@@ -10833,14 +10875,14 @@ async function _refreshOAuthToken(name) {
|
|
|
10833
10875
|
function listProfiles(name) {
|
|
10834
10876
|
const configDir = getConnectorConfigDir(name);
|
|
10835
10877
|
const profilesDir = join6(configDir, "profiles");
|
|
10836
|
-
if (!
|
|
10878
|
+
if (!existsSync6(profilesDir))
|
|
10837
10879
|
return ["default"];
|
|
10838
10880
|
const seen = new Set;
|
|
10839
10881
|
try {
|
|
10840
|
-
const entries =
|
|
10882
|
+
const entries = readdirSync3(profilesDir);
|
|
10841
10883
|
for (const entry of entries) {
|
|
10842
10884
|
const fullPath = join6(profilesDir, entry);
|
|
10843
|
-
const stat =
|
|
10885
|
+
const stat = statSync4(fullPath);
|
|
10844
10886
|
if (stat.isDirectory()) {
|
|
10845
10887
|
seen.add(entry);
|
|
10846
10888
|
} else if (entry.endsWith(".json")) {
|
|
@@ -10862,7 +10904,7 @@ function deleteProfile(name, profile) {
|
|
|
10862
10904
|
const configDir = getConnectorConfigDir(name);
|
|
10863
10905
|
const profilesDir = join6(configDir, "profiles");
|
|
10864
10906
|
const profileFile = join6(profilesDir, `${profile}.json`);
|
|
10865
|
-
if (
|
|
10907
|
+
if (existsSync6(profileFile)) {
|
|
10866
10908
|
rmSync2(profileFile);
|
|
10867
10909
|
if (getCurrentProfile(name) === profile) {
|
|
10868
10910
|
switchProfile(name, "default");
|
|
@@ -10870,7 +10912,7 @@ function deleteProfile(name, profile) {
|
|
|
10870
10912
|
return true;
|
|
10871
10913
|
}
|
|
10872
10914
|
const profileDir = join6(profilesDir, profile);
|
|
10873
|
-
if (
|
|
10915
|
+
if (existsSync6(profileDir)) {
|
|
10874
10916
|
rmSync2(profileDir, { recursive: true });
|
|
10875
10917
|
if (getCurrentProfile(name) === profile) {
|
|
10876
10918
|
switchProfile(name, "default");
|
|
@@ -10883,6 +10925,7 @@ var FETCH_TIMEOUT = 1e4, oauthStateStore, GOOGLE_AUTH_URL = "https://accounts.go
|
|
|
10883
10925
|
var init_auth = __esm(() => {
|
|
10884
10926
|
init_installer();
|
|
10885
10927
|
init_lock();
|
|
10928
|
+
init_database();
|
|
10886
10929
|
oauthStateStore = new Map;
|
|
10887
10930
|
GOOGLE_SCOPES = {
|
|
10888
10931
|
gmail: [
|
|
@@ -11136,10 +11179,9 @@ var exports_serve = {};
|
|
|
11136
11179
|
__export(exports_serve, {
|
|
11137
11180
|
startServer: () => startServer
|
|
11138
11181
|
});
|
|
11139
|
-
import { existsSync as
|
|
11182
|
+
import { existsSync as existsSync8, readdirSync as readdirSync4, readFileSync as readFileSync5, writeFileSync as writeFileSync4, mkdirSync as mkdirSync6 } from "fs";
|
|
11140
11183
|
import { join as join8, dirname as dirname4, extname, basename } from "path";
|
|
11141
11184
|
import { fileURLToPath as fileURLToPath4 } from "url";
|
|
11142
|
-
import { homedir as homedir6 } from "os";
|
|
11143
11185
|
function logActivity(action, connector, detail) {
|
|
11144
11186
|
activityLog.unshift({ action, connector, timestamp: Date.now(), detail });
|
|
11145
11187
|
if (activityLog.length > MAX_ACTIVITY_LOG) {
|
|
@@ -11160,7 +11202,7 @@ function resolveDashboardDir() {
|
|
|
11160
11202
|
}
|
|
11161
11203
|
candidates.push(join8(process.cwd(), "dashboard", "dist"));
|
|
11162
11204
|
for (const candidate of candidates) {
|
|
11163
|
-
if (
|
|
11205
|
+
if (existsSync8(candidate))
|
|
11164
11206
|
return candidate;
|
|
11165
11207
|
}
|
|
11166
11208
|
return join8(process.cwd(), "dashboard", "dist");
|
|
@@ -11248,7 +11290,7 @@ function oauthPage(type, title, message, hint, extra) {
|
|
|
11248
11290
|
</body></html>`;
|
|
11249
11291
|
}
|
|
11250
11292
|
function serveStaticFile(filePath) {
|
|
11251
|
-
if (!
|
|
11293
|
+
if (!existsSync8(filePath))
|
|
11252
11294
|
return null;
|
|
11253
11295
|
const ext = extname(filePath);
|
|
11254
11296
|
const contentType = MIME_TYPES[ext] || "application/octet-stream";
|
|
@@ -11272,7 +11314,7 @@ async function startServer(requestedPort, options) {
|
|
|
11272
11314
|
const shouldOpen = options?.open ?? true;
|
|
11273
11315
|
loadConnectorVersions();
|
|
11274
11316
|
const dashboardDir = resolveDashboardDir();
|
|
11275
|
-
const dashboardExists =
|
|
11317
|
+
const dashboardExists = existsSync8(dashboardDir);
|
|
11276
11318
|
if (!dashboardExists) {
|
|
11277
11319
|
console.error(`
|
|
11278
11320
|
Dashboard not found at: ${dashboardDir}`);
|
|
@@ -11426,7 +11468,7 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11426
11468
|
const { getPromotedConnectors: getPromotedConnectors2 } = await Promise.resolve().then(() => (init_promotions(), exports_promotions));
|
|
11427
11469
|
const limit = parseInt(url2.searchParams.get("limit") || "10", 10);
|
|
11428
11470
|
const days = parseInt(url2.searchParams.get("days") || "7", 10);
|
|
11429
|
-
const db =
|
|
11471
|
+
const db = getDatabase3();
|
|
11430
11472
|
const top = getTopConnectors2(limit, days, db);
|
|
11431
11473
|
const promoted = new Set(getPromotedConnectors2(db));
|
|
11432
11474
|
return json(top.map((t) => ({ ...t, promoted: promoted.has(t.connector) })), 200, port);
|
|
@@ -11437,12 +11479,12 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11437
11479
|
if (!getConnector(name))
|
|
11438
11480
|
return json({ error: "Connector not found" }, 404, port);
|
|
11439
11481
|
const { promoteConnector: promoteConnector2 } = await Promise.resolve().then(() => (init_promotions(), exports_promotions));
|
|
11440
|
-
promoteConnector2(name,
|
|
11482
|
+
promoteConnector2(name, getDatabase3());
|
|
11441
11483
|
return json({ success: true, connector: name }, 200, port);
|
|
11442
11484
|
}
|
|
11443
11485
|
if (promoteMatch && method === "DELETE") {
|
|
11444
11486
|
const { demoteConnector: demoteConnector2 } = await Promise.resolve().then(() => (init_promotions(), exports_promotions));
|
|
11445
|
-
const removed = demoteConnector2(promoteMatch[1],
|
|
11487
|
+
const removed = demoteConnector2(promoteMatch[1], getDatabase3());
|
|
11446
11488
|
return json({ success: removed, connector: promoteMatch[1] }, 200, port);
|
|
11447
11489
|
}
|
|
11448
11490
|
if (path === "/api/llm" && method === "GET") {
|
|
@@ -11478,19 +11520,19 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11478
11520
|
}
|
|
11479
11521
|
}
|
|
11480
11522
|
if (path === "/api/jobs" && method === "GET") {
|
|
11481
|
-
return json(listJobs(
|
|
11523
|
+
return json(listJobs(getDatabase3()), 200, port);
|
|
11482
11524
|
}
|
|
11483
11525
|
if (path === "/api/jobs" && method === "POST") {
|
|
11484
11526
|
const body = await req.json().catch(() => ({}));
|
|
11485
11527
|
if (!body.name || !body.connector || !body.command || !body.cron)
|
|
11486
11528
|
return json({ error: "name, connector, command, cron required" }, 400, port);
|
|
11487
|
-
const job = createJob({ name: body.name, connector: body.connector, command: body.command, args: body.args ?? [], cron: body.cron, strip: !!body.strip },
|
|
11529
|
+
const job = createJob({ name: body.name, connector: body.connector, command: body.command, args: body.args ?? [], cron: body.cron, strip: !!body.strip }, getDatabase3());
|
|
11488
11530
|
return json(job, 201, port);
|
|
11489
11531
|
}
|
|
11490
11532
|
const jobMatch = path.match(/^\/api\/jobs\/([^/]+)$/);
|
|
11491
11533
|
if (jobMatch) {
|
|
11492
|
-
const db =
|
|
11493
|
-
const job = getJobByName(jobMatch[1]) ??
|
|
11534
|
+
const db = getDatabase3();
|
|
11535
|
+
const job = getJobByName(jobMatch[1]) ?? getDatabase3().query("SELECT * FROM connector_jobs WHERE id = ?").get(jobMatch[1]);
|
|
11494
11536
|
if (!job && method !== "DELETE")
|
|
11495
11537
|
return json({ error: "Job not found" }, 404, port);
|
|
11496
11538
|
if (method === "GET")
|
|
@@ -11511,7 +11553,7 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11511
11553
|
}
|
|
11512
11554
|
const jobRunMatch = path.match(/^\/api\/jobs\/([^/]+)\/run$/);
|
|
11513
11555
|
if (jobRunMatch && method === "POST") {
|
|
11514
|
-
const db =
|
|
11556
|
+
const db = getDatabase3();
|
|
11515
11557
|
const job = getJobByName(jobRunMatch[1], db);
|
|
11516
11558
|
if (!job)
|
|
11517
11559
|
return json({ error: "Job not found" }, 404, port);
|
|
@@ -11519,18 +11561,18 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11519
11561
|
return json(result, 200, port);
|
|
11520
11562
|
}
|
|
11521
11563
|
if (path === "/api/workflows" && method === "GET") {
|
|
11522
|
-
return json(listWorkflows(
|
|
11564
|
+
return json(listWorkflows(getDatabase3()), 200, port);
|
|
11523
11565
|
}
|
|
11524
11566
|
if (path === "/api/workflows" && method === "POST") {
|
|
11525
11567
|
const body = await req.json().catch(() => ({}));
|
|
11526
11568
|
if (!body.name || !body.steps)
|
|
11527
11569
|
return json({ error: "name and steps required" }, 400, port);
|
|
11528
|
-
const wf = createWorkflow({ name: body.name, steps: body.steps },
|
|
11570
|
+
const wf = createWorkflow({ name: body.name, steps: body.steps }, getDatabase3());
|
|
11529
11571
|
return json(wf, 201, port);
|
|
11530
11572
|
}
|
|
11531
11573
|
const wfMatch = path.match(/^\/api\/workflows\/([^/]+)$/);
|
|
11532
11574
|
if (wfMatch) {
|
|
11533
|
-
const db =
|
|
11575
|
+
const db = getDatabase3();
|
|
11534
11576
|
const wf = getWorkflowByName(wfMatch[1], db);
|
|
11535
11577
|
if (!wf)
|
|
11536
11578
|
return json({ error: "Workflow not found" }, 404, port);
|
|
@@ -11543,7 +11585,7 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11543
11585
|
}
|
|
11544
11586
|
const wfRunMatch = path.match(/^\/api\/workflows\/([^/]+)\/run$/);
|
|
11545
11587
|
if (wfRunMatch && method === "POST") {
|
|
11546
|
-
const wf = getWorkflowByName(wfRunMatch[1],
|
|
11588
|
+
const wf = getWorkflowByName(wfRunMatch[1], getDatabase3());
|
|
11547
11589
|
if (!wf)
|
|
11548
11590
|
return json({ error: "Workflow not found" }, 404, port);
|
|
11549
11591
|
const result = await runWorkflow(wf);
|
|
@@ -11589,10 +11631,10 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11589
11631
|
return json({ error: "Invalid connector name" }, 400, port);
|
|
11590
11632
|
try {
|
|
11591
11633
|
const profiles = listProfiles(name);
|
|
11592
|
-
const configDir = join8(
|
|
11634
|
+
const configDir = join8(getConnectorsHome(), name.startsWith("connect-") ? name : `connect-${name}`);
|
|
11593
11635
|
const currentProfileFile = join8(configDir, "current_profile");
|
|
11594
11636
|
let current = "default";
|
|
11595
|
-
if (
|
|
11637
|
+
if (existsSync8(currentProfileFile)) {
|
|
11596
11638
|
try {
|
|
11597
11639
|
current = readFileSync5(currentProfileFile, "utf-8").trim() || "default";
|
|
11598
11640
|
} catch {}
|
|
@@ -11641,19 +11683,19 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11641
11683
|
}
|
|
11642
11684
|
if (path === "/api/export" && method === "GET") {
|
|
11643
11685
|
try {
|
|
11644
|
-
const connectDir =
|
|
11686
|
+
const connectDir = getConnectorsHome();
|
|
11645
11687
|
const result = {};
|
|
11646
|
-
if (
|
|
11647
|
-
const entries =
|
|
11688
|
+
if (existsSync8(connectDir)) {
|
|
11689
|
+
const entries = readdirSync4(connectDir, { withFileTypes: true });
|
|
11648
11690
|
for (const entry of entries) {
|
|
11649
11691
|
if (!entry.isDirectory() || !entry.name.startsWith("connect-"))
|
|
11650
11692
|
continue;
|
|
11651
11693
|
const connectorName = entry.name.replace(/^connect-/, "");
|
|
11652
11694
|
const profilesDir = join8(connectDir, entry.name, "profiles");
|
|
11653
|
-
if (!
|
|
11695
|
+
if (!existsSync8(profilesDir))
|
|
11654
11696
|
continue;
|
|
11655
11697
|
const profiles = {};
|
|
11656
|
-
const profileEntries =
|
|
11698
|
+
const profileEntries = readdirSync4(profilesDir, { withFileTypes: true });
|
|
11657
11699
|
for (const pEntry of profileEntries) {
|
|
11658
11700
|
if (pEntry.isFile() && pEntry.name.endsWith(".json")) {
|
|
11659
11701
|
const profileName = basename(pEntry.name, ".json");
|
|
@@ -11664,7 +11706,7 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11664
11706
|
}
|
|
11665
11707
|
if (pEntry.isDirectory()) {
|
|
11666
11708
|
const configPath = join8(profilesDir, pEntry.name, "config.json");
|
|
11667
|
-
if (
|
|
11709
|
+
if (existsSync8(configPath)) {
|
|
11668
11710
|
try {
|
|
11669
11711
|
const config = JSON.parse(readFileSync5(configPath, "utf-8"));
|
|
11670
11712
|
profiles[pEntry.name] = config;
|
|
@@ -11701,7 +11743,7 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11701
11743
|
return json({ error: "Invalid import format: missing 'connectors' object" }, 400, port);
|
|
11702
11744
|
}
|
|
11703
11745
|
let imported = 0;
|
|
11704
|
-
const connectDir =
|
|
11746
|
+
const connectDir = getConnectorsHome();
|
|
11705
11747
|
for (const [connectorName, data] of Object.entries(body.connectors)) {
|
|
11706
11748
|
if (!isValidConnectorName(connectorName))
|
|
11707
11749
|
continue;
|
|
@@ -11789,8 +11831,8 @@ Dashboard not found at: ${dashboardDir}`);
|
|
|
11789
11831
|
process.on("SIGINT", shutdown);
|
|
11790
11832
|
process.on("SIGTERM", shutdown);
|
|
11791
11833
|
const { startScheduler: startScheduler2 } = await Promise.resolve().then(() => (init_scheduler(), exports_scheduler));
|
|
11792
|
-
const { getDatabase:
|
|
11793
|
-
startScheduler2(
|
|
11834
|
+
const { getDatabase: getDatabase3 } = await Promise.resolve().then(() => (init_database(), exports_database));
|
|
11835
|
+
startScheduler2(getDatabase3());
|
|
11794
11836
|
const url = `http://localhost:${port}`;
|
|
11795
11837
|
console.log(`Connectors Dashboard running at ${url}`);
|
|
11796
11838
|
if (shouldOpen) {
|
|
@@ -11811,6 +11853,7 @@ var init_serve = __esm(() => {
|
|
|
11811
11853
|
init_workflows();
|
|
11812
11854
|
init_scheduler();
|
|
11813
11855
|
init_workflow_runner();
|
|
11856
|
+
init_database();
|
|
11814
11857
|
init_registry();
|
|
11815
11858
|
init_installer();
|
|
11816
11859
|
init_auth();
|
|
@@ -11858,7 +11901,7 @@ import chalk2 from "chalk";
|
|
|
11858
11901
|
// package.json
|
|
11859
11902
|
var package_default = {
|
|
11860
11903
|
name: "@hasna/connectors",
|
|
11861
|
-
version: "1.3.
|
|
11904
|
+
version: "1.3.8",
|
|
11862
11905
|
description: "Open source connector library - Install API connectors with a single command",
|
|
11863
11906
|
type: "module",
|
|
11864
11907
|
bin: {
|
|
@@ -13423,8 +13466,9 @@ function App({ initialConnectors, overwrite = false }) {
|
|
|
13423
13466
|
init_registry();
|
|
13424
13467
|
init_installer();
|
|
13425
13468
|
init_auth();
|
|
13426
|
-
|
|
13427
|
-
import {
|
|
13469
|
+
init_database();
|
|
13470
|
+
import { readdirSync as readdirSync5, existsSync as existsSync9, statSync as statSync5, readFileSync as readFileSync6, writeFileSync as writeFileSync5, mkdirSync as mkdirSync7 } from "fs";
|
|
13471
|
+
import { homedir as homedir2 } from "os";
|
|
13428
13472
|
import { join as join9, relative } from "path";
|
|
13429
13473
|
|
|
13430
13474
|
// src/lib/test-endpoints.ts
|
|
@@ -13626,17 +13670,17 @@ var TEST_ENDPOINTS = {
|
|
|
13626
13670
|
import { createInterface } from "readline";
|
|
13627
13671
|
|
|
13628
13672
|
// src/lib/runner.ts
|
|
13629
|
-
import { existsSync as
|
|
13673
|
+
import { existsSync as existsSync7 } from "fs";
|
|
13630
13674
|
import { join as join7, dirname as dirname3 } from "path";
|
|
13631
13675
|
import { fileURLToPath as fileURLToPath3 } from "url";
|
|
13632
13676
|
import { spawn as spawn3 } from "child_process";
|
|
13633
13677
|
var __dirname3 = dirname3(fileURLToPath3(import.meta.url));
|
|
13634
13678
|
function resolveConnectorsDir2() {
|
|
13635
13679
|
const fromBin = join7(__dirname3, "..", "connectors");
|
|
13636
|
-
if (
|
|
13680
|
+
if (existsSync7(fromBin))
|
|
13637
13681
|
return fromBin;
|
|
13638
13682
|
const fromSrc = join7(__dirname3, "..", "..", "connectors");
|
|
13639
|
-
if (
|
|
13683
|
+
if (existsSync7(fromSrc))
|
|
13640
13684
|
return fromSrc;
|
|
13641
13685
|
return fromBin;
|
|
13642
13686
|
}
|
|
@@ -13678,7 +13722,7 @@ function getConnectorCliPath(name) {
|
|
|
13678
13722
|
const safeName = name.replace(/[^a-z0-9-]/g, "");
|
|
13679
13723
|
const connectorDir = join7(CONNECTORS_DIR2, `connect-${safeName}`);
|
|
13680
13724
|
const cliPath = join7(connectorDir, "src", "cli", "index.ts");
|
|
13681
|
-
if (
|
|
13725
|
+
if (existsSync7(cliPath))
|
|
13682
13726
|
return cliPath;
|
|
13683
13727
|
return null;
|
|
13684
13728
|
}
|
|
@@ -13790,9 +13834,9 @@ Run 'connectors --help' for full usage.`);
|
|
|
13790
13834
|
});
|
|
13791
13835
|
function listFilesRecursive(dir, base = dir) {
|
|
13792
13836
|
const files = [];
|
|
13793
|
-
for (const entry of
|
|
13837
|
+
for (const entry of readdirSync5(dir)) {
|
|
13794
13838
|
const fullPath = join9(dir, entry);
|
|
13795
|
-
if (
|
|
13839
|
+
if (statSync5(fullPath).isDirectory()) {
|
|
13796
13840
|
files.push(...listFilesRecursive(fullPath, base));
|
|
13797
13841
|
} else {
|
|
13798
13842
|
files.push(relative(base, fullPath));
|
|
@@ -14372,7 +14416,7 @@ Updating ${toUpdate.length} connector(s)...
|
|
|
14372
14416
|
});
|
|
14373
14417
|
program2.command("status").option("--json", "Output as JSON", false).description("Show auth status of all configured connectors (project + global)").action((options) => {
|
|
14374
14418
|
const installed = getInstalledConnectors();
|
|
14375
|
-
const configDir =
|
|
14419
|
+
const configDir = getConnectorsHome();
|
|
14376
14420
|
const seen = new Set;
|
|
14377
14421
|
const allStatuses = [];
|
|
14378
14422
|
function buildStatusEntry(name, source) {
|
|
@@ -14380,7 +14424,7 @@ program2.command("status").option("--json", "Output as JSON", false).description
|
|
|
14380
14424
|
const connectorName = name.startsWith("connect-") ? name : `connect-${name}`;
|
|
14381
14425
|
const currentProfileFile = join9(configDir, connectorName, "current_profile");
|
|
14382
14426
|
let profile = "default";
|
|
14383
|
-
if (
|
|
14427
|
+
if (existsSync9(currentProfileFile)) {
|
|
14384
14428
|
try {
|
|
14385
14429
|
profile = readFileSync6(currentProfileFile, "utf-8").trim() || "default";
|
|
14386
14430
|
} catch {}
|
|
@@ -14418,13 +14462,13 @@ program2.command("status").option("--json", "Output as JSON", false).description
|
|
|
14418
14462
|
seen.add(name);
|
|
14419
14463
|
allStatuses.push(buildStatusEntry(name, "project"));
|
|
14420
14464
|
}
|
|
14421
|
-
if (
|
|
14465
|
+
if (existsSync9(configDir)) {
|
|
14422
14466
|
try {
|
|
14423
|
-
const globalDirs =
|
|
14467
|
+
const globalDirs = readdirSync5(configDir).filter((f) => {
|
|
14424
14468
|
if (!f.startsWith("connect-"))
|
|
14425
14469
|
return false;
|
|
14426
14470
|
try {
|
|
14427
|
-
return
|
|
14471
|
+
return statSync5(join9(configDir, f)).isDirectory();
|
|
14428
14472
|
} catch {
|
|
14429
14473
|
return false;
|
|
14430
14474
|
}
|
|
@@ -14789,15 +14833,15 @@ program2.command("init").option("--json", "Output presets and suggestions as JSO
|
|
|
14789
14833
|
{ key: "commerce", emoji: "\uD83D\uDCB3", label: "Commerce", connectors: ["stripe", "shopify", "paypal", "revolut", "mercury"], description: "Commerce and finance" },
|
|
14790
14834
|
{ key: "google", emoji: "\uD83D\uDCC1", label: "Google Workspace", connectors: ["gmail", "googledrive", "googlecalendar", "googledocs", "googlesheets"], description: "Google Workspace suite" }
|
|
14791
14835
|
];
|
|
14792
|
-
const connectorsHome =
|
|
14836
|
+
const connectorsHome = getConnectorsHome();
|
|
14793
14837
|
let configuredCount = 0;
|
|
14794
14838
|
const configuredNames = [];
|
|
14795
14839
|
try {
|
|
14796
|
-
if (
|
|
14797
|
-
const entries =
|
|
14840
|
+
if (existsSync9(connectorsHome)) {
|
|
14841
|
+
const entries = readdirSync5(connectorsHome).filter((e) => e.startsWith("connect-") && statSync5(join9(connectorsHome, e)).isDirectory());
|
|
14798
14842
|
for (const entry of entries) {
|
|
14799
14843
|
const profilesDir = join9(connectorsHome, entry, "profiles");
|
|
14800
|
-
if (
|
|
14844
|
+
if (existsSync9(profilesDir)) {
|
|
14801
14845
|
configuredCount++;
|
|
14802
14846
|
configuredNames.push(entry.replace(/^connect-/, ""));
|
|
14803
14847
|
}
|
|
@@ -14895,42 +14939,42 @@ function redactSecrets(obj) {
|
|
|
14895
14939
|
return obj;
|
|
14896
14940
|
}
|
|
14897
14941
|
program2.command("export").option("-o, --output <file>", "Write to file instead of stdout").option("--include-secrets", "Include secrets in plaintext (dangerous \u2014 use only for backup/restore)").description("Export all connector credentials as JSON backup").action((options) => {
|
|
14898
|
-
const connectDir =
|
|
14942
|
+
const connectDir = getConnectorsHome();
|
|
14899
14943
|
const result = {};
|
|
14900
|
-
if (
|
|
14901
|
-
for (const entry of
|
|
14944
|
+
if (existsSync9(connectDir)) {
|
|
14945
|
+
for (const entry of readdirSync5(connectDir)) {
|
|
14902
14946
|
const entryPath = join9(connectDir, entry);
|
|
14903
|
-
if (!
|
|
14947
|
+
if (!statSync5(entryPath).isDirectory() || !entry.startsWith("connect-"))
|
|
14904
14948
|
continue;
|
|
14905
14949
|
const connectorName = entry.replace(/^connect-/, "");
|
|
14906
14950
|
let credentials = undefined;
|
|
14907
14951
|
const credentialsPath = join9(entryPath, "credentials.json");
|
|
14908
|
-
if (
|
|
14952
|
+
if (existsSync9(credentialsPath)) {
|
|
14909
14953
|
try {
|
|
14910
14954
|
credentials = JSON.parse(readFileSync6(credentialsPath, "utf-8"));
|
|
14911
14955
|
} catch {}
|
|
14912
14956
|
}
|
|
14913
14957
|
const profilesDir = join9(entryPath, "profiles");
|
|
14914
|
-
if (!
|
|
14958
|
+
if (!existsSync9(profilesDir) && !credentials)
|
|
14915
14959
|
continue;
|
|
14916
14960
|
const profiles = {};
|
|
14917
|
-
if (
|
|
14918
|
-
for (const pEntry of
|
|
14961
|
+
if (existsSync9(profilesDir)) {
|
|
14962
|
+
for (const pEntry of readdirSync5(profilesDir)) {
|
|
14919
14963
|
const pPath = join9(profilesDir, pEntry);
|
|
14920
|
-
if (
|
|
14964
|
+
if (statSync5(pPath).isFile() && pEntry.endsWith(".json")) {
|
|
14921
14965
|
try {
|
|
14922
14966
|
profiles[pEntry.replace(/\.json$/, "")] = JSON.parse(readFileSync6(pPath, "utf-8"));
|
|
14923
14967
|
} catch {}
|
|
14924
|
-
} else if (
|
|
14968
|
+
} else if (statSync5(pPath).isDirectory()) {
|
|
14925
14969
|
const configPath = join9(pPath, "config.json");
|
|
14926
14970
|
const tokensPath = join9(pPath, "tokens.json");
|
|
14927
14971
|
let merged = {};
|
|
14928
|
-
if (
|
|
14972
|
+
if (existsSync9(configPath)) {
|
|
14929
14973
|
try {
|
|
14930
14974
|
merged = { ...merged, ...JSON.parse(readFileSync6(configPath, "utf-8")) };
|
|
14931
14975
|
} catch {}
|
|
14932
14976
|
}
|
|
14933
|
-
if (
|
|
14977
|
+
if (existsSync9(tokensPath)) {
|
|
14934
14978
|
try {
|
|
14935
14979
|
merged = { ...merged, ...JSON.parse(readFileSync6(tokensPath, "utf-8")) };
|
|
14936
14980
|
} catch {}
|
|
@@ -14967,7 +15011,7 @@ program2.command("import").argument("<file>", "JSON backup file to import (use -
|
|
|
14967
15011
|
chunks.push(chunk.toString());
|
|
14968
15012
|
raw = chunks.join("");
|
|
14969
15013
|
} else {
|
|
14970
|
-
if (!
|
|
15014
|
+
if (!existsSync9(file)) {
|
|
14971
15015
|
if (options.json) {
|
|
14972
15016
|
console.log(JSON.stringify({ error: `File not found: ${file}` }));
|
|
14973
15017
|
} else {
|
|
@@ -14999,7 +15043,7 @@ program2.command("import").argument("<file>", "JSON backup file to import (use -
|
|
|
14999
15043
|
process.exit(1);
|
|
15000
15044
|
return;
|
|
15001
15045
|
}
|
|
15002
|
-
const connectDir =
|
|
15046
|
+
const connectDir = getConnectorsHome();
|
|
15003
15047
|
let imported = 0;
|
|
15004
15048
|
for (const [connectorName, connData] of Object.entries(data.connectors)) {
|
|
15005
15049
|
if (!/^[a-z0-9-]+$/.test(connectorName))
|
|
@@ -15027,10 +15071,10 @@ program2.command("import").argument("<file>", "JSON backup file to import (use -
|
|
|
15027
15071
|
console.log(chalk2.green(`\u2713 Imported ${imported} profile(s)`));
|
|
15028
15072
|
}
|
|
15029
15073
|
});
|
|
15030
|
-
program2.command("auth-import").option("--json", "Output as JSON", false).option("-d, --dry-run", "Preview what would be imported without copying", false).option("--force", "Overwrite existing files in ~/.connectors/", false).description("Migrate auth tokens from ~/.connect/ to ~/.connectors/").action((options) => {
|
|
15031
|
-
const oldBase = join9(
|
|
15032
|
-
const newBase =
|
|
15033
|
-
if (!
|
|
15074
|
+
program2.command("auth-import").option("--json", "Output as JSON", false).option("-d, --dry-run", "Preview what would be imported without copying", false).option("--force", "Overwrite existing files in ~/.hasna/connectors/", false).description("Migrate auth tokens from ~/.connect/ to ~/.hasna/connectors/").action((options) => {
|
|
15075
|
+
const oldBase = join9(homedir2(), ".connect");
|
|
15076
|
+
const newBase = getConnectorsHome();
|
|
15077
|
+
if (!existsSync9(oldBase)) {
|
|
15034
15078
|
if (options.json) {
|
|
15035
15079
|
console.log(JSON.stringify({ imported: [], skipped: [], error: null, message: "No ~/.connect/ directory found" }));
|
|
15036
15080
|
} else {
|
|
@@ -15038,11 +15082,11 @@ program2.command("auth-import").option("--json", "Output as JSON", false).option
|
|
|
15038
15082
|
}
|
|
15039
15083
|
return;
|
|
15040
15084
|
}
|
|
15041
|
-
const entries =
|
|
15085
|
+
const entries = readdirSync5(oldBase).filter((name) => {
|
|
15042
15086
|
if (!name.startsWith("connect-"))
|
|
15043
15087
|
return false;
|
|
15044
15088
|
try {
|
|
15045
|
-
return
|
|
15089
|
+
return statSync5(join9(oldBase, name)).isDirectory();
|
|
15046
15090
|
} catch {
|
|
15047
15091
|
return false;
|
|
15048
15092
|
}
|
|
@@ -15072,7 +15116,7 @@ program2.command("auth-import").option("--json", "Output as JSON", false).option
|
|
|
15072
15116
|
for (const relFile of authFiles) {
|
|
15073
15117
|
const srcPath = join9(oldDir, relFile);
|
|
15074
15118
|
const destPath = join9(newDir, relFile);
|
|
15075
|
-
if (
|
|
15119
|
+
if (existsSync9(destPath) && !options.force) {
|
|
15076
15120
|
skippedFiles.push(relFile);
|
|
15077
15121
|
continue;
|
|
15078
15122
|
}
|
|
@@ -15353,7 +15397,7 @@ Available presets:
|
|
|
15353
15397
|
`));
|
|
15354
15398
|
});
|
|
15355
15399
|
program2.command("whoami").option("--json", "Output as JSON", false).description("Show current setup: config dir, installed connectors, auth status").action((options) => {
|
|
15356
|
-
const configDir =
|
|
15400
|
+
const configDir = getConnectorsHome();
|
|
15357
15401
|
const installed = getInstalledConnectors();
|
|
15358
15402
|
const version = "0.3.1";
|
|
15359
15403
|
let configured = 0;
|
|
@@ -15370,20 +15414,20 @@ program2.command("whoami").option("--json", "Output as JSON", false).description
|
|
|
15370
15414
|
const connectorConfigDir = join9(configDir, name.startsWith("connect-") ? name : `connect-${name}`);
|
|
15371
15415
|
const currentProfileFile = join9(connectorConfigDir, "current_profile");
|
|
15372
15416
|
let profile = "default";
|
|
15373
|
-
if (
|
|
15417
|
+
if (existsSync9(currentProfileFile)) {
|
|
15374
15418
|
try {
|
|
15375
15419
|
profile = readFileSync6(currentProfileFile, "utf-8").trim() || "default";
|
|
15376
15420
|
} catch {}
|
|
15377
15421
|
}
|
|
15378
15422
|
connectorDetails.push({ name, configured: auth.configured, authType: auth.type, profile, source: "project" });
|
|
15379
15423
|
}
|
|
15380
|
-
if (
|
|
15424
|
+
if (existsSync9(configDir)) {
|
|
15381
15425
|
try {
|
|
15382
|
-
const globalDirs =
|
|
15426
|
+
const globalDirs = readdirSync5(configDir).filter((f) => {
|
|
15383
15427
|
if (!f.startsWith("connect-"))
|
|
15384
15428
|
return false;
|
|
15385
15429
|
try {
|
|
15386
|
-
return
|
|
15430
|
+
return statSync5(join9(configDir, f)).isDirectory();
|
|
15387
15431
|
} catch {
|
|
15388
15432
|
return false;
|
|
15389
15433
|
}
|
|
@@ -15399,7 +15443,7 @@ program2.command("whoami").option("--json", "Output as JSON", false).description
|
|
|
15399
15443
|
configured++;
|
|
15400
15444
|
const currentProfileFile = join9(configDir, dir, "current_profile");
|
|
15401
15445
|
let profile = "default";
|
|
15402
|
-
if (
|
|
15446
|
+
if (existsSync9(currentProfileFile)) {
|
|
15403
15447
|
try {
|
|
15404
15448
|
profile = readFileSync6(currentProfileFile, "utf-8").trim() || "default";
|
|
15405
15449
|
} catch {}
|
|
@@ -15412,7 +15456,7 @@ program2.command("whoami").option("--json", "Output as JSON", false).description
|
|
|
15412
15456
|
console.log(JSON.stringify({
|
|
15413
15457
|
version,
|
|
15414
15458
|
configDir,
|
|
15415
|
-
configDirExists:
|
|
15459
|
+
configDirExists: existsSync9(configDir),
|
|
15416
15460
|
installed: installed.length,
|
|
15417
15461
|
configured,
|
|
15418
15462
|
unconfigured,
|
|
@@ -15424,7 +15468,7 @@ program2.command("whoami").option("--json", "Output as JSON", false).description
|
|
|
15424
15468
|
Connectors Setup
|
|
15425
15469
|
`));
|
|
15426
15470
|
console.log(` Version: ${chalk2.cyan(version)}`);
|
|
15427
|
-
console.log(` Config: ${configDir}${
|
|
15471
|
+
console.log(` Config: ${configDir}${existsSync9(configDir) ? "" : chalk2.dim(" (not created yet)")}`);
|
|
15428
15472
|
console.log(` Installed: ${installed.length} connector${installed.length !== 1 ? "s" : ""}`);
|
|
15429
15473
|
console.log(` Configured: ${chalk2.green(String(configured))} ready, ${unconfigured > 0 ? chalk2.red(String(unconfigured)) : chalk2.dim("0")} need auth`);
|
|
15430
15474
|
const projectConnectors = connectorDetails.filter((c) => c.source === "project");
|
|
@@ -15514,16 +15558,16 @@ Testing connector credentials...
|
|
|
15514
15558
|
}
|
|
15515
15559
|
}
|
|
15516
15560
|
if (!apiKey) {
|
|
15517
|
-
const connectorConfigDir = join9(
|
|
15561
|
+
const connectorConfigDir = join9(getConnectorsHome(), name.startsWith("connect-") ? name : `connect-${name}`);
|
|
15518
15562
|
let currentProfile = "default";
|
|
15519
15563
|
const currentProfileFile = join9(connectorConfigDir, "current_profile");
|
|
15520
|
-
if (
|
|
15564
|
+
if (existsSync9(currentProfileFile)) {
|
|
15521
15565
|
try {
|
|
15522
15566
|
currentProfile = readFileSync6(currentProfileFile, "utf-8").trim() || "default";
|
|
15523
15567
|
} catch {}
|
|
15524
15568
|
}
|
|
15525
15569
|
const tokensFile = join9(connectorConfigDir, "profiles", currentProfile, "tokens.json");
|
|
15526
|
-
if (
|
|
15570
|
+
if (existsSync9(tokensFile)) {
|
|
15527
15571
|
try {
|
|
15528
15572
|
const tokens = JSON.parse(readFileSync6(tokensFile, "utf-8"));
|
|
15529
15573
|
const isExpired = tokens.expiresAt && Date.now() >= tokens.expiresAt - 60000;
|
|
@@ -15544,7 +15588,7 @@ Testing connector credentials...
|
|
|
15544
15588
|
}
|
|
15545
15589
|
if (!apiKey) {
|
|
15546
15590
|
const profileFile = join9(connectorConfigDir, "profiles", `${currentProfile}.json`);
|
|
15547
|
-
if (
|
|
15591
|
+
if (existsSync9(profileFile)) {
|
|
15548
15592
|
try {
|
|
15549
15593
|
const config = JSON.parse(readFileSync6(profileFile, "utf-8"));
|
|
15550
15594
|
apiKey = Object.values(config).find((v) => typeof v === "string" && v.length > 0);
|
|
@@ -15553,7 +15597,7 @@ Testing connector credentials...
|
|
|
15553
15597
|
}
|
|
15554
15598
|
if (!apiKey) {
|
|
15555
15599
|
const profileDirConfig = join9(connectorConfigDir, "profiles", currentProfile, "config.json");
|
|
15556
|
-
if (
|
|
15600
|
+
if (existsSync9(profileDirConfig)) {
|
|
15557
15601
|
try {
|
|
15558
15602
|
const config = JSON.parse(readFileSync6(profileDirConfig, "utf-8"));
|
|
15559
15603
|
apiKey = Object.values(config).find((v) => typeof v === "string" && v.length > 0);
|