@eventmodelers/node-kit 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -0
- package/package.json +36 -0
- package/src/cli.js +176 -0
- package/templates/.claude/skills/connect/SKILL.md +169 -0
- package/templates/.claude/skills/load-slice/SKILL.md +86 -0
- package/templates/realtime-agent/node_modules/.package-lock.json +107 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/LICENSE +21 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/README.md +190 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthAdminApi.d.ts +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthAdminApi.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthAdminApi.js +7 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthAdminApi.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthClient.d.ts +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthClient.js +7 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/AuthClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueAdminApi.d.ts +716 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueAdminApi.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueAdminApi.js +1108 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueAdminApi.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueClient.d.ts +2473 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueClient.js +5217 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/GoTrueClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/index.d.ts +9 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/index.js +20 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/index.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/base64url.d.ts +76 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/base64url.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/base64url.js +269 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/base64url.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/constants.d.ts +26 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/constants.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/constants.js +31 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/constants.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/error-codes.d.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/error-codes.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/error-codes.js +3 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/error-codes.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/errors.d.ts +258 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/errors.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/errors.js +290 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/errors.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/fetch.d.ts +54 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/fetch.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/fetch.js +200 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/fetch.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/helpers.d.ts +94 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/helpers.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/helpers.js +406 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/helpers.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/local-storage.d.ts +9 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/local-storage.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/local-storage.js +21 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/local-storage.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/locks.d.ts +107 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/locks.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/locks.js +349 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/locks.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/polyfills.d.ts +5 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/polyfills.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/polyfills.js +29 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/polyfills.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/types.d.ts +2498 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/types.js +23 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/types.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/version.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/version.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/version.js +11 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/version.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/ethereum.d.ts +96 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/ethereum.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/ethereum.js +66 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/ethereum.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/solana.d.ts +160 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/solana.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/solana.js +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/web3/solana.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.d.ts +284 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.dom.d.ts +583 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.dom.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.dom.js +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.dom.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.errors.d.ts +85 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.errors.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.errors.js +272 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.errors.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.js +707 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/main/lib/webauthn.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthAdminApi.d.ts +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthAdminApi.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthAdminApi.js +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthAdminApi.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthClient.d.ts +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthClient.js +4 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/AuthClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueAdminApi.d.ts +716 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueAdminApi.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueAdminApi.js +1105 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueAdminApi.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueClient.d.ts +2473 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueClient.js +5214 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/GoTrueClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/index.d.ts +9 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/index.js +9 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/index.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/base64url.d.ts +76 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/base64url.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/base64url.js +257 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/base64url.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/constants.d.ts +26 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/constants.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/constants.js +28 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/constants.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/error-codes.d.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/error-codes.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/error-codes.js +2 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/error-codes.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/errors.d.ts +258 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/errors.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/errors.js +267 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/errors.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/fetch.d.ts +54 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/fetch.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/fetch.js +190 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/fetch.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/helpers.d.ts +94 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/helpers.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/helpers.js +378 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/helpers.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/local-storage.d.ts +9 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/local-storage.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/local-storage.js +18 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/local-storage.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/locks.d.ts +107 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/locks.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/locks.js +341 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/locks.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/polyfills.d.ts +5 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/polyfills.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/polyfills.js +26 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/polyfills.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/types.d.ts +2498 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/types.js +20 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/types.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/version.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/version.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/version.js +8 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/version.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/ethereum.d.ts +96 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/ethereum.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/ethereum.js +60 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/ethereum.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/solana.d.ts +160 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/solana.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/solana.js +3 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/web3/solana.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.d.ts +284 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.dom.d.ts +583 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.dom.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.dom.js +3 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.dom.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.errors.d.ts +85 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.errors.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.errors.js +264 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.errors.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.js +689 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/module/lib/webauthn.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/tsconfig.module.tsbuildinfo +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/dist/tsconfig.tsbuildinfo +1 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/package.json +44 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/AuthAdminApi.ts +5 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/AuthClient.ts +5 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/GoTrueAdminApi.ts +1267 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/GoTrueClient.ts +6360 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/index.ts +13 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/base64url.ts +308 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/constants.ts +34 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/error-codes.ts +90 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/errors.ts +359 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/fetch.ts +320 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/helpers.ts +476 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/local-storage.ts +21 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/locks.ts +420 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/polyfills.ts +23 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/types.ts +2917 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/version.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/web3/ethereum.ts +184 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/web3/solana.ts +186 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/webauthn.dom.ts +636 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/webauthn.errors.ts +329 -0
- package/templates/realtime-agent/node_modules/@supabase/auth-js/src/lib/webauthn.ts +946 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/README.md +134 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/FunctionsClient.d.ts +177 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/FunctionsClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/FunctionsClient.js +309 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/FunctionsClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/helper.d.ts +3 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/helper.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/helper.js +11 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/helper.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/index.d.ts +3 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/index.js +12 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/index.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/types.d.ts +122 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/types.js +98 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/types.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/version.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/version.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/version.js +11 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/main/version.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/FunctionsClient.d.ts +177 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/FunctionsClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/FunctionsClient.js +305 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/FunctionsClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/helper.d.ts +3 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/helper.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/helper.js +7 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/helper.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/index.d.ts +3 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/index.js +3 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/index.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/types.d.ts +122 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/types.js +91 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/types.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/version.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/version.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/version.js +8 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/module/version.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/tsconfig.module.tsbuildinfo +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/dist/tsconfig.tsbuildinfo +1 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/package.json +52 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/src/FunctionsClient.ts +335 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/src/edge-runtime.d.ts +214 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/src/helper.ts +8 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/src/index.ts +10 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/src/types.ts +146 -0
- package/templates/realtime-agent/node_modules/@supabase/functions-js/src/version.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/LICENSE.md +22 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/README.md +121 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/ajax.js +116 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/channel.js +331 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/constants.js +35 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/index.js +212 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/longpoll.js +192 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/presence.js +208 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/push.js +134 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/serializer.js +133 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/socket.js +756 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/timer.js +48 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/types.js +184 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/assets/js/phoenix/utils.js +16 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/package.json +58 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/favicon.ico +0 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix-orange.png +0 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.cjs.js +1825 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.cjs.js.map +7 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.js +1847 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.min.js +2 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.mjs +1802 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.mjs.map +7 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/phoenix.png +0 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/ajax.d.ts +10 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/ajax.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/channel.d.ts +167 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/channel.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/constants.d.ts +36 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/constants.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/index.d.ts +10 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/longpoll.d.ts +29 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/longpoll.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/presence.d.ts +107 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/presence.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/push.d.ts +70 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/push.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/serializer.d.ts +74 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/serializer.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/socket.d.ts +291 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/socket.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/timer.d.ts +36 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/timer.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/types.d.ts +280 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/utils.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/priv/static/types/utils.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/phoenix/tsconfig.json +20 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/README.md +213 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.cjs +5025 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.cjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.d.cts +3828 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.d.cts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.d.mts +3828 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.d.mts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.mjs +5017 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/dist/index.mjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/package.json +69 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/PostgrestBuilder.ts +688 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/PostgrestClient.ts +447 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/PostgrestError.ts +41 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/PostgrestFilterBuilder.ts +2137 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/PostgrestQueryBuilder.ts +1703 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/PostgrestTransformBuilder.ts +981 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/constants.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/index.ts +34 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/select-query-parser/parser.ts +476 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/select-query-parser/result.ts +550 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/select-query-parser/types.ts +129 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/select-query-parser/utils.ts +704 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/types/common/common.ts +83 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/types/common/rpc.ts +148 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/types/feature-flags.ts +17 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/types/types.ts +161 -0
- package/templates/realtime-agent/node_modules/@supabase/postgrest-js/src/version.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/README.md +326 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeChannel.d.ts +442 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeChannel.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeChannel.js +719 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeChannel.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeClient.d.ts +275 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeClient.js +697 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimeClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimePresence.d.ts +62 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimePresence.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimePresence.js +43 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/RealtimePresence.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/index.d.ts +6 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/index.js +18 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/index.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/constants.d.ts +43 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/constants.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/constants.js +43 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/constants.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/normalizeChannelError.d.ts +10 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/normalizeChannelError.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/normalizeChannelError.js +29 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/normalizeChannelError.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/serializer.d.ts +33 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/serializer.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/serializer.js +155 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/serializer.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/transformers.d.ts +109 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/transformers.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/transformers.js +241 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/transformers.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/version.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/version.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/version.js +11 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/version.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/websocket-factory.d.ts +82 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/websocket-factory.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/websocket-factory.js +130 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/lib/websocket-factory.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/channelAdapter.d.ts +32 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/channelAdapter.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/channelAdapter.js +103 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/channelAdapter.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/presenceAdapter.d.ts +53 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/presenceAdapter.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/presenceAdapter.js +93 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/presenceAdapter.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/socketAdapter.d.ts +38 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/socketAdapter.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/socketAdapter.js +114 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/socketAdapter.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/types.d.ts +5 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/types.js +3 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/main/phoenix/types.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeChannel.d.ts +442 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeChannel.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeChannel.js +714 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeChannel.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeClient.d.ts +275 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeClient.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeClient.js +693 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimeClient.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimePresence.d.ts +62 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimePresence.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimePresence.js +38 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/RealtimePresence.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/index.d.ts +6 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/index.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/index.js +6 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/index.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/constants.d.ts +43 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/constants.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/constants.js +40 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/constants.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/normalizeChannelError.d.ts +10 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/normalizeChannelError.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/normalizeChannelError.js +26 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/normalizeChannelError.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/serializer.d.ts +33 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/serializer.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/serializer.js +152 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/serializer.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/transformers.d.ts +109 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/transformers.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/transformers.js +229 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/transformers.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/version.d.ts +2 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/version.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/version.js +8 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/version.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/websocket-factory.d.ts +82 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/websocket-factory.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/websocket-factory.js +126 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/lib/websocket-factory.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/channelAdapter.d.ts +32 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/channelAdapter.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/channelAdapter.js +100 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/channelAdapter.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/presenceAdapter.d.ts +53 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/presenceAdapter.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/presenceAdapter.js +90 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/presenceAdapter.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/socketAdapter.d.ts +38 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/socketAdapter.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/socketAdapter.js +111 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/socketAdapter.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/types.d.ts +5 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/types.d.ts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/types.js +2 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/module/phoenix/types.js.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/tsconfig.module.tsbuildinfo +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/dist/tsconfig.tsbuildinfo +1 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/package.json +58 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/RealtimeChannel.ts +1118 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/RealtimeClient.ts +868 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/RealtimePresence.ts +71 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/index.ts +53 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/lib/constants.ts +62 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/lib/normalizeChannelError.ts +30 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/lib/serializer.ts +203 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/lib/transformers.ts +270 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/lib/version.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/lib/websocket-factory.ts +204 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/phoenix/channelAdapter.ts +149 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/phoenix/presenceAdapter.ts +116 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/phoenix/socketAdapter.ts +168 -0
- package/templates/realtime-agent/node_modules/@supabase/realtime-js/src/phoenix/types.ts +32 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/README.md +1262 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.cjs +2995 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.cjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.d.cts +2956 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.d.cts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.d.mts +2956 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.d.mts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.mjs +2979 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/index.mjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/dist/umd/supabase.js +1 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/package.json +62 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/StorageClient.ts +98 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/index.ts +19 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/common/BaseApiClient.ts +104 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/common/errors.ts +160 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/common/fetch.ts +303 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/common/headers.ts +43 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/common/helpers.ts +146 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/constants.ts +4 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/types.ts +654 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/lib/version.ts +7 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/BlobDownloadBuilder.ts +62 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/StorageAnalyticsClient.ts +420 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/StorageBucketApi.ts +414 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/StorageFileApi.ts +1423 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/StorageVectorsClient.ts +644 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/StreamDownloadBuilder.ts +39 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/VectorBucketApi.ts +73 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/VectorDataApi.ts +98 -0
- package/templates/realtime-agent/node_modules/@supabase/storage-js/src/packages/VectorIndexApi.ts +90 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/README.md +238 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.cjs +89 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.cjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.d.cts +58 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.d.cts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.d.mts +58 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.d.mts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.mjs +88 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/cors.mjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.cjs +660 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.cjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.d.cts +616 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.d.cts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.d.mts +616 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.d.mts.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.mjs +607 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/index.mjs.map +1 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/dist/umd/supabase.js +24 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/package.json +122 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/SupabaseClient.ts +625 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/cors.ts +84 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/index.ts +106 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/SupabaseAuthClient.ts +8 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/constants.ts +35 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/fetch.ts +36 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/helpers.ts +98 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/rest/types/common/common.ts +93 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/rest/types/common/rpc.ts +158 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/types.ts +196 -0
- package/templates/realtime-agent/node_modules/@supabase/supabase-js/src/lib/version.ts +7 -0
- package/templates/realtime-agent/node_modules/iceberg-js/LICENSE +21 -0
- package/templates/realtime-agent/node_modules/iceberg-js/README.md +439 -0
- package/templates/realtime-agent/node_modules/iceberg-js/dist/index.cjs +596 -0
- package/templates/realtime-agent/node_modules/iceberg-js/dist/index.cjs.map +1 -0
- package/templates/realtime-agent/node_modules/iceberg-js/dist/index.d.cts +547 -0
- package/templates/realtime-agent/node_modules/iceberg-js/dist/index.d.ts +547 -0
- package/templates/realtime-agent/node_modules/iceberg-js/dist/index.mjs +587 -0
- package/templates/realtime-agent/node_modules/iceberg-js/dist/index.mjs.map +1 -0
- package/templates/realtime-agent/node_modules/iceberg-js/package.json +77 -0
- package/templates/realtime-agent/node_modules/tslib/CopyrightNotice.txt +15 -0
- package/templates/realtime-agent/node_modules/tslib/LICENSE.txt +12 -0
- package/templates/realtime-agent/node_modules/tslib/README.md +164 -0
- package/templates/realtime-agent/node_modules/tslib/SECURITY.md +41 -0
- package/templates/realtime-agent/node_modules/tslib/modules/index.d.ts +38 -0
- package/templates/realtime-agent/node_modules/tslib/modules/index.js +70 -0
- package/templates/realtime-agent/node_modules/tslib/modules/package.json +3 -0
- package/templates/realtime-agent/node_modules/tslib/package.json +47 -0
- package/templates/realtime-agent/node_modules/tslib/tslib.d.ts +460 -0
- package/templates/realtime-agent/node_modules/tslib/tslib.es6.html +1 -0
- package/templates/realtime-agent/node_modules/tslib/tslib.es6.js +402 -0
- package/templates/realtime-agent/node_modules/tslib/tslib.es6.mjs +401 -0
- package/templates/realtime-agent/node_modules/tslib/tslib.html +1 -0
- package/templates/realtime-agent/node_modules/tslib/tslib.js +484 -0
- package/templates/realtime-agent/package-lock.json +114 -0
- package/templates/realtime-agent/package.json +11 -0
- package/templates/realtime-agent/src/index.js +152 -0
- package/templates/root/AGENT.md +37 -0
- package/templates/root/model.md +1 -0
- package/templates/root/prompt.md +91 -0
- package/templates/root/ralph.sh +47 -0
|
@@ -0,0 +1,587 @@
|
|
|
1
|
+
// src/errors/IcebergError.ts
|
|
2
|
+
var IcebergError = class extends Error {
|
|
3
|
+
constructor(message, opts) {
|
|
4
|
+
super(message);
|
|
5
|
+
this.name = "IcebergError";
|
|
6
|
+
this.status = opts.status;
|
|
7
|
+
this.icebergType = opts.icebergType;
|
|
8
|
+
this.icebergCode = opts.icebergCode;
|
|
9
|
+
this.details = opts.details;
|
|
10
|
+
this.isCommitStateUnknown = opts.icebergType === "CommitStateUnknownException" || [500, 502, 504].includes(opts.status) && opts.icebergType?.includes("CommitState") === true;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Returns true if the error is a 404 Not Found error.
|
|
14
|
+
*/
|
|
15
|
+
isNotFound() {
|
|
16
|
+
return this.status === 404;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Returns true if the error is a 409 Conflict error.
|
|
20
|
+
*/
|
|
21
|
+
isConflict() {
|
|
22
|
+
return this.status === 409;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Returns true if the error is a 419 Authentication Timeout error.
|
|
26
|
+
*/
|
|
27
|
+
isAuthenticationTimeout() {
|
|
28
|
+
return this.status === 419;
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
// src/utils/url.ts
|
|
33
|
+
function buildUrl(baseUrl, path, query) {
|
|
34
|
+
const url = new URL(path, baseUrl);
|
|
35
|
+
if (query) {
|
|
36
|
+
for (const [key, value] of Object.entries(query)) {
|
|
37
|
+
if (value !== void 0) {
|
|
38
|
+
url.searchParams.set(key, value);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return url.toString();
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// src/http/createFetchClient.ts
|
|
46
|
+
async function buildAuthHeaders(auth) {
|
|
47
|
+
if (!auth || auth.type === "none") {
|
|
48
|
+
return {};
|
|
49
|
+
}
|
|
50
|
+
if (auth.type === "bearer") {
|
|
51
|
+
return { Authorization: `Bearer ${auth.token}` };
|
|
52
|
+
}
|
|
53
|
+
if (auth.type === "header") {
|
|
54
|
+
return { [auth.name]: auth.value };
|
|
55
|
+
}
|
|
56
|
+
if (auth.type === "custom") {
|
|
57
|
+
return await auth.getHeaders();
|
|
58
|
+
}
|
|
59
|
+
return {};
|
|
60
|
+
}
|
|
61
|
+
function createFetchClient(options) {
|
|
62
|
+
const fetchFn = options.fetchImpl ?? globalThis.fetch;
|
|
63
|
+
return {
|
|
64
|
+
async request({
|
|
65
|
+
method,
|
|
66
|
+
path,
|
|
67
|
+
query,
|
|
68
|
+
body,
|
|
69
|
+
headers
|
|
70
|
+
}) {
|
|
71
|
+
const url = buildUrl(options.baseUrl, path, query);
|
|
72
|
+
const authHeaders = await buildAuthHeaders(options.auth);
|
|
73
|
+
const res = await fetchFn(url, {
|
|
74
|
+
method,
|
|
75
|
+
headers: {
|
|
76
|
+
...body ? { "Content-Type": "application/json" } : {},
|
|
77
|
+
...authHeaders,
|
|
78
|
+
...headers
|
|
79
|
+
},
|
|
80
|
+
body: body ? JSON.stringify(body) : void 0
|
|
81
|
+
});
|
|
82
|
+
const text = await res.text();
|
|
83
|
+
const isJson = (res.headers.get("content-type") || "").includes("application/json");
|
|
84
|
+
const data = isJson && text ? JSON.parse(text) : text;
|
|
85
|
+
if (!res.ok) {
|
|
86
|
+
const errBody = isJson ? data : void 0;
|
|
87
|
+
const errorDetail = errBody?.error;
|
|
88
|
+
throw new IcebergError(
|
|
89
|
+
errorDetail?.message ?? `Request failed with status ${res.status}`,
|
|
90
|
+
{
|
|
91
|
+
status: res.status,
|
|
92
|
+
icebergType: errorDetail?.type,
|
|
93
|
+
icebergCode: errorDetail?.code,
|
|
94
|
+
details: errBody
|
|
95
|
+
}
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
return { status: res.status, headers: res.headers, data };
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
// src/catalog/namespaces.ts
|
|
104
|
+
function namespaceToPath(namespace) {
|
|
105
|
+
return namespace.join("");
|
|
106
|
+
}
|
|
107
|
+
var NamespaceOperations = class {
|
|
108
|
+
constructor(client, prefix = "") {
|
|
109
|
+
this.client = client;
|
|
110
|
+
this.prefix = prefix;
|
|
111
|
+
}
|
|
112
|
+
async listNamespaces(parent) {
|
|
113
|
+
const query = parent ? { parent: namespaceToPath(parent.namespace) } : void 0;
|
|
114
|
+
const response = await this.client.request({
|
|
115
|
+
method: "GET",
|
|
116
|
+
path: `${this.prefix}/namespaces`,
|
|
117
|
+
query
|
|
118
|
+
});
|
|
119
|
+
return response.data.namespaces.map((ns) => ({ namespace: ns }));
|
|
120
|
+
}
|
|
121
|
+
async createNamespace(id, metadata) {
|
|
122
|
+
const request = {
|
|
123
|
+
namespace: id.namespace,
|
|
124
|
+
properties: metadata?.properties
|
|
125
|
+
};
|
|
126
|
+
const response = await this.client.request({
|
|
127
|
+
method: "POST",
|
|
128
|
+
path: `${this.prefix}/namespaces`,
|
|
129
|
+
body: request
|
|
130
|
+
});
|
|
131
|
+
return response.data;
|
|
132
|
+
}
|
|
133
|
+
async dropNamespace(id) {
|
|
134
|
+
await this.client.request({
|
|
135
|
+
method: "DELETE",
|
|
136
|
+
path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}`
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
async loadNamespaceMetadata(id) {
|
|
140
|
+
const response = await this.client.request({
|
|
141
|
+
method: "GET",
|
|
142
|
+
path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}`
|
|
143
|
+
});
|
|
144
|
+
return {
|
|
145
|
+
properties: response.data.properties
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
async namespaceExists(id) {
|
|
149
|
+
try {
|
|
150
|
+
await this.client.request({
|
|
151
|
+
method: "HEAD",
|
|
152
|
+
path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}`
|
|
153
|
+
});
|
|
154
|
+
return true;
|
|
155
|
+
} catch (error) {
|
|
156
|
+
if (error instanceof IcebergError && error.status === 404) {
|
|
157
|
+
return false;
|
|
158
|
+
}
|
|
159
|
+
throw error;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
async createNamespaceIfNotExists(id, metadata) {
|
|
163
|
+
try {
|
|
164
|
+
return await this.createNamespace(id, metadata);
|
|
165
|
+
} catch (error) {
|
|
166
|
+
if (error instanceof IcebergError && error.status === 409) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
throw error;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
|
|
174
|
+
// src/catalog/tables.ts
|
|
175
|
+
function namespaceToPath2(namespace) {
|
|
176
|
+
return namespace.join("");
|
|
177
|
+
}
|
|
178
|
+
var TableOperations = class {
|
|
179
|
+
constructor(client, prefix = "", accessDelegation) {
|
|
180
|
+
this.client = client;
|
|
181
|
+
this.prefix = prefix;
|
|
182
|
+
this.accessDelegation = accessDelegation;
|
|
183
|
+
}
|
|
184
|
+
async listTables(namespace) {
|
|
185
|
+
const response = await this.client.request({
|
|
186
|
+
method: "GET",
|
|
187
|
+
path: `${this.prefix}/namespaces/${namespaceToPath2(namespace.namespace)}/tables`
|
|
188
|
+
});
|
|
189
|
+
return response.data.identifiers;
|
|
190
|
+
}
|
|
191
|
+
async createTable(namespace, request) {
|
|
192
|
+
const headers = {};
|
|
193
|
+
if (this.accessDelegation) {
|
|
194
|
+
headers["X-Iceberg-Access-Delegation"] = this.accessDelegation;
|
|
195
|
+
}
|
|
196
|
+
const response = await this.client.request({
|
|
197
|
+
method: "POST",
|
|
198
|
+
path: `${this.prefix}/namespaces/${namespaceToPath2(namespace.namespace)}/tables`,
|
|
199
|
+
body: request,
|
|
200
|
+
headers
|
|
201
|
+
});
|
|
202
|
+
return response.data.metadata;
|
|
203
|
+
}
|
|
204
|
+
async updateTable(id, request) {
|
|
205
|
+
const response = await this.client.request({
|
|
206
|
+
method: "POST",
|
|
207
|
+
path: `${this.prefix}/namespaces/${namespaceToPath2(id.namespace)}/tables/${id.name}`,
|
|
208
|
+
body: request
|
|
209
|
+
});
|
|
210
|
+
return {
|
|
211
|
+
"metadata-location": response.data["metadata-location"],
|
|
212
|
+
metadata: response.data.metadata
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
async dropTable(id, options) {
|
|
216
|
+
await this.client.request({
|
|
217
|
+
method: "DELETE",
|
|
218
|
+
path: `${this.prefix}/namespaces/${namespaceToPath2(id.namespace)}/tables/${id.name}`,
|
|
219
|
+
query: { purgeRequested: String(options?.purge ?? false) }
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
async loadTable(id) {
|
|
223
|
+
const headers = {};
|
|
224
|
+
if (this.accessDelegation) {
|
|
225
|
+
headers["X-Iceberg-Access-Delegation"] = this.accessDelegation;
|
|
226
|
+
}
|
|
227
|
+
const response = await this.client.request({
|
|
228
|
+
method: "GET",
|
|
229
|
+
path: `${this.prefix}/namespaces/${namespaceToPath2(id.namespace)}/tables/${id.name}`,
|
|
230
|
+
headers
|
|
231
|
+
});
|
|
232
|
+
return response.data.metadata;
|
|
233
|
+
}
|
|
234
|
+
async tableExists(id) {
|
|
235
|
+
const headers = {};
|
|
236
|
+
if (this.accessDelegation) {
|
|
237
|
+
headers["X-Iceberg-Access-Delegation"] = this.accessDelegation;
|
|
238
|
+
}
|
|
239
|
+
try {
|
|
240
|
+
await this.client.request({
|
|
241
|
+
method: "HEAD",
|
|
242
|
+
path: `${this.prefix}/namespaces/${namespaceToPath2(id.namespace)}/tables/${id.name}`,
|
|
243
|
+
headers
|
|
244
|
+
});
|
|
245
|
+
return true;
|
|
246
|
+
} catch (error) {
|
|
247
|
+
if (error instanceof IcebergError && error.status === 404) {
|
|
248
|
+
return false;
|
|
249
|
+
}
|
|
250
|
+
throw error;
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
async createTableIfNotExists(namespace, request) {
|
|
254
|
+
try {
|
|
255
|
+
return await this.createTable(namespace, request);
|
|
256
|
+
} catch (error) {
|
|
257
|
+
if (error instanceof IcebergError && error.status === 409) {
|
|
258
|
+
return await this.loadTable({ namespace: namespace.namespace, name: request.name });
|
|
259
|
+
}
|
|
260
|
+
throw error;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
};
|
|
264
|
+
|
|
265
|
+
// src/catalog/IcebergRestCatalog.ts
|
|
266
|
+
var IcebergRestCatalog = class {
|
|
267
|
+
/**
|
|
268
|
+
* Creates a new Iceberg REST Catalog client.
|
|
269
|
+
*
|
|
270
|
+
* @param options - Configuration options for the catalog client
|
|
271
|
+
*/
|
|
272
|
+
constructor(options) {
|
|
273
|
+
let prefix = "v1";
|
|
274
|
+
if (options.catalogName) {
|
|
275
|
+
prefix += `/${options.catalogName}`;
|
|
276
|
+
}
|
|
277
|
+
const baseUrl = options.baseUrl.endsWith("/") ? options.baseUrl : `${options.baseUrl}/`;
|
|
278
|
+
this.client = createFetchClient({
|
|
279
|
+
baseUrl,
|
|
280
|
+
auth: options.auth,
|
|
281
|
+
fetchImpl: options.fetch
|
|
282
|
+
});
|
|
283
|
+
this.accessDelegation = options.accessDelegation?.join(",");
|
|
284
|
+
this.namespaceOps = new NamespaceOperations(this.client, prefix);
|
|
285
|
+
this.tableOps = new TableOperations(this.client, prefix, this.accessDelegation);
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* Lists all namespaces in the catalog.
|
|
289
|
+
*
|
|
290
|
+
* @param parent - Optional parent namespace to list children under
|
|
291
|
+
* @returns Array of namespace identifiers
|
|
292
|
+
*
|
|
293
|
+
* @example
|
|
294
|
+
* ```typescript
|
|
295
|
+
* // List all top-level namespaces
|
|
296
|
+
* const namespaces = await catalog.listNamespaces();
|
|
297
|
+
*
|
|
298
|
+
* // List namespaces under a parent
|
|
299
|
+
* const children = await catalog.listNamespaces({ namespace: ['analytics'] });
|
|
300
|
+
* ```
|
|
301
|
+
*/
|
|
302
|
+
async listNamespaces(parent) {
|
|
303
|
+
return this.namespaceOps.listNamespaces(parent);
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Creates a new namespace in the catalog.
|
|
307
|
+
*
|
|
308
|
+
* @param id - Namespace identifier to create
|
|
309
|
+
* @param metadata - Optional metadata properties for the namespace
|
|
310
|
+
* @returns Response containing the created namespace and its properties
|
|
311
|
+
*
|
|
312
|
+
* @example
|
|
313
|
+
* ```typescript
|
|
314
|
+
* const response = await catalog.createNamespace(
|
|
315
|
+
* { namespace: ['analytics'] },
|
|
316
|
+
* { properties: { owner: 'data-team' } }
|
|
317
|
+
* );
|
|
318
|
+
* console.log(response.namespace); // ['analytics']
|
|
319
|
+
* console.log(response.properties); // { owner: 'data-team', ... }
|
|
320
|
+
* ```
|
|
321
|
+
*/
|
|
322
|
+
async createNamespace(id, metadata) {
|
|
323
|
+
return this.namespaceOps.createNamespace(id, metadata);
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Drops a namespace from the catalog.
|
|
327
|
+
*
|
|
328
|
+
* The namespace must be empty (contain no tables) before it can be dropped.
|
|
329
|
+
*
|
|
330
|
+
* @param id - Namespace identifier to drop
|
|
331
|
+
*
|
|
332
|
+
* @example
|
|
333
|
+
* ```typescript
|
|
334
|
+
* await catalog.dropNamespace({ namespace: ['analytics'] });
|
|
335
|
+
* ```
|
|
336
|
+
*/
|
|
337
|
+
async dropNamespace(id) {
|
|
338
|
+
await this.namespaceOps.dropNamespace(id);
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Loads metadata for a namespace.
|
|
342
|
+
*
|
|
343
|
+
* @param id - Namespace identifier to load
|
|
344
|
+
* @returns Namespace metadata including properties
|
|
345
|
+
*
|
|
346
|
+
* @example
|
|
347
|
+
* ```typescript
|
|
348
|
+
* const metadata = await catalog.loadNamespaceMetadata({ namespace: ['analytics'] });
|
|
349
|
+
* console.log(metadata.properties);
|
|
350
|
+
* ```
|
|
351
|
+
*/
|
|
352
|
+
async loadNamespaceMetadata(id) {
|
|
353
|
+
return this.namespaceOps.loadNamespaceMetadata(id);
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Lists all tables in a namespace.
|
|
357
|
+
*
|
|
358
|
+
* @param namespace - Namespace identifier to list tables from
|
|
359
|
+
* @returns Array of table identifiers
|
|
360
|
+
*
|
|
361
|
+
* @example
|
|
362
|
+
* ```typescript
|
|
363
|
+
* const tables = await catalog.listTables({ namespace: ['analytics'] });
|
|
364
|
+
* console.log(tables); // [{ namespace: ['analytics'], name: 'events' }, ...]
|
|
365
|
+
* ```
|
|
366
|
+
*/
|
|
367
|
+
async listTables(namespace) {
|
|
368
|
+
return this.tableOps.listTables(namespace);
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* Creates a new table in the catalog.
|
|
372
|
+
*
|
|
373
|
+
* @param namespace - Namespace to create the table in
|
|
374
|
+
* @param request - Table creation request including name, schema, partition spec, etc.
|
|
375
|
+
* @returns Table metadata for the created table
|
|
376
|
+
*
|
|
377
|
+
* @example
|
|
378
|
+
* ```typescript
|
|
379
|
+
* const metadata = await catalog.createTable(
|
|
380
|
+
* { namespace: ['analytics'] },
|
|
381
|
+
* {
|
|
382
|
+
* name: 'events',
|
|
383
|
+
* schema: {
|
|
384
|
+
* type: 'struct',
|
|
385
|
+
* fields: [
|
|
386
|
+
* { id: 1, name: 'id', type: 'long', required: true },
|
|
387
|
+
* { id: 2, name: 'timestamp', type: 'timestamp', required: true }
|
|
388
|
+
* ],
|
|
389
|
+
* 'schema-id': 0
|
|
390
|
+
* },
|
|
391
|
+
* 'partition-spec': {
|
|
392
|
+
* 'spec-id': 0,
|
|
393
|
+
* fields: [
|
|
394
|
+
* { source_id: 2, field_id: 1000, name: 'ts_day', transform: 'day' }
|
|
395
|
+
* ]
|
|
396
|
+
* }
|
|
397
|
+
* }
|
|
398
|
+
* );
|
|
399
|
+
* ```
|
|
400
|
+
*/
|
|
401
|
+
async createTable(namespace, request) {
|
|
402
|
+
return this.tableOps.createTable(namespace, request);
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* Updates an existing table's metadata.
|
|
406
|
+
*
|
|
407
|
+
* Can update the schema, partition spec, or properties of a table.
|
|
408
|
+
*
|
|
409
|
+
* @param id - Table identifier to update
|
|
410
|
+
* @param request - Update request with fields to modify
|
|
411
|
+
* @returns Response containing the metadata location and updated table metadata
|
|
412
|
+
*
|
|
413
|
+
* @example
|
|
414
|
+
* ```typescript
|
|
415
|
+
* const response = await catalog.updateTable(
|
|
416
|
+
* { namespace: ['analytics'], name: 'events' },
|
|
417
|
+
* {
|
|
418
|
+
* properties: { 'read.split.target-size': '134217728' }
|
|
419
|
+
* }
|
|
420
|
+
* );
|
|
421
|
+
* console.log(response['metadata-location']); // s3://...
|
|
422
|
+
* console.log(response.metadata); // TableMetadata object
|
|
423
|
+
* ```
|
|
424
|
+
*/
|
|
425
|
+
async updateTable(id, request) {
|
|
426
|
+
return this.tableOps.updateTable(id, request);
|
|
427
|
+
}
|
|
428
|
+
/**
|
|
429
|
+
* Drops a table from the catalog.
|
|
430
|
+
*
|
|
431
|
+
* @param id - Table identifier to drop
|
|
432
|
+
*
|
|
433
|
+
* @example
|
|
434
|
+
* ```typescript
|
|
435
|
+
* await catalog.dropTable({ namespace: ['analytics'], name: 'events' });
|
|
436
|
+
* ```
|
|
437
|
+
*/
|
|
438
|
+
async dropTable(id, options) {
|
|
439
|
+
await this.tableOps.dropTable(id, options);
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
442
|
+
* Loads metadata for a table.
|
|
443
|
+
*
|
|
444
|
+
* @param id - Table identifier to load
|
|
445
|
+
* @returns Table metadata including schema, partition spec, location, etc.
|
|
446
|
+
*
|
|
447
|
+
* @example
|
|
448
|
+
* ```typescript
|
|
449
|
+
* const metadata = await catalog.loadTable({ namespace: ['analytics'], name: 'events' });
|
|
450
|
+
* console.log(metadata.schema);
|
|
451
|
+
* console.log(metadata.location);
|
|
452
|
+
* ```
|
|
453
|
+
*/
|
|
454
|
+
async loadTable(id) {
|
|
455
|
+
return this.tableOps.loadTable(id);
|
|
456
|
+
}
|
|
457
|
+
/**
|
|
458
|
+
* Checks if a namespace exists in the catalog.
|
|
459
|
+
*
|
|
460
|
+
* @param id - Namespace identifier to check
|
|
461
|
+
* @returns True if the namespace exists, false otherwise
|
|
462
|
+
*
|
|
463
|
+
* @example
|
|
464
|
+
* ```typescript
|
|
465
|
+
* const exists = await catalog.namespaceExists({ namespace: ['analytics'] });
|
|
466
|
+
* console.log(exists); // true or false
|
|
467
|
+
* ```
|
|
468
|
+
*/
|
|
469
|
+
async namespaceExists(id) {
|
|
470
|
+
return this.namespaceOps.namespaceExists(id);
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Checks if a table exists in the catalog.
|
|
474
|
+
*
|
|
475
|
+
* @param id - Table identifier to check
|
|
476
|
+
* @returns True if the table exists, false otherwise
|
|
477
|
+
*
|
|
478
|
+
* @example
|
|
479
|
+
* ```typescript
|
|
480
|
+
* const exists = await catalog.tableExists({ namespace: ['analytics'], name: 'events' });
|
|
481
|
+
* console.log(exists); // true or false
|
|
482
|
+
* ```
|
|
483
|
+
*/
|
|
484
|
+
async tableExists(id) {
|
|
485
|
+
return this.tableOps.tableExists(id);
|
|
486
|
+
}
|
|
487
|
+
/**
|
|
488
|
+
* Creates a namespace if it does not exist.
|
|
489
|
+
*
|
|
490
|
+
* If the namespace already exists, returns void. If created, returns the response.
|
|
491
|
+
*
|
|
492
|
+
* @param id - Namespace identifier to create
|
|
493
|
+
* @param metadata - Optional metadata properties for the namespace
|
|
494
|
+
* @returns Response containing the created namespace and its properties, or void if it already exists
|
|
495
|
+
*
|
|
496
|
+
* @example
|
|
497
|
+
* ```typescript
|
|
498
|
+
* const response = await catalog.createNamespaceIfNotExists(
|
|
499
|
+
* { namespace: ['analytics'] },
|
|
500
|
+
* { properties: { owner: 'data-team' } }
|
|
501
|
+
* );
|
|
502
|
+
* if (response) {
|
|
503
|
+
* console.log('Created:', response.namespace);
|
|
504
|
+
* } else {
|
|
505
|
+
* console.log('Already exists');
|
|
506
|
+
* }
|
|
507
|
+
* ```
|
|
508
|
+
*/
|
|
509
|
+
async createNamespaceIfNotExists(id, metadata) {
|
|
510
|
+
return this.namespaceOps.createNamespaceIfNotExists(id, metadata);
|
|
511
|
+
}
|
|
512
|
+
/**
|
|
513
|
+
* Creates a table if it does not exist.
|
|
514
|
+
*
|
|
515
|
+
* If the table already exists, returns its metadata instead.
|
|
516
|
+
*
|
|
517
|
+
* @param namespace - Namespace to create the table in
|
|
518
|
+
* @param request - Table creation request including name, schema, partition spec, etc.
|
|
519
|
+
* @returns Table metadata for the created or existing table
|
|
520
|
+
*
|
|
521
|
+
* @example
|
|
522
|
+
* ```typescript
|
|
523
|
+
* const metadata = await catalog.createTableIfNotExists(
|
|
524
|
+
* { namespace: ['analytics'] },
|
|
525
|
+
* {
|
|
526
|
+
* name: 'events',
|
|
527
|
+
* schema: {
|
|
528
|
+
* type: 'struct',
|
|
529
|
+
* fields: [
|
|
530
|
+
* { id: 1, name: 'id', type: 'long', required: true },
|
|
531
|
+
* { id: 2, name: 'timestamp', type: 'timestamp', required: true }
|
|
532
|
+
* ],
|
|
533
|
+
* 'schema-id': 0
|
|
534
|
+
* }
|
|
535
|
+
* }
|
|
536
|
+
* );
|
|
537
|
+
* ```
|
|
538
|
+
*/
|
|
539
|
+
async createTableIfNotExists(namespace, request) {
|
|
540
|
+
return this.tableOps.createTableIfNotExists(namespace, request);
|
|
541
|
+
}
|
|
542
|
+
};
|
|
543
|
+
|
|
544
|
+
// src/catalog/types.ts
|
|
545
|
+
var DECIMAL_REGEX = /^decimal\s*\(\s*(\d+)\s*,\s*(\d+)\s*\)$/;
|
|
546
|
+
var FIXED_REGEX = /^fixed\s*\[\s*(\d+)\s*\]$/;
|
|
547
|
+
function parseDecimalType(type) {
|
|
548
|
+
const match = type.match(DECIMAL_REGEX);
|
|
549
|
+
if (!match) return null;
|
|
550
|
+
return {
|
|
551
|
+
precision: parseInt(match[1], 10),
|
|
552
|
+
scale: parseInt(match[2], 10)
|
|
553
|
+
};
|
|
554
|
+
}
|
|
555
|
+
function parseFixedType(type) {
|
|
556
|
+
const match = type.match(FIXED_REGEX);
|
|
557
|
+
if (!match) return null;
|
|
558
|
+
return {
|
|
559
|
+
length: parseInt(match[1], 10)
|
|
560
|
+
};
|
|
561
|
+
}
|
|
562
|
+
function isDecimalType(type) {
|
|
563
|
+
return DECIMAL_REGEX.test(type);
|
|
564
|
+
}
|
|
565
|
+
function isFixedType(type) {
|
|
566
|
+
return FIXED_REGEX.test(type);
|
|
567
|
+
}
|
|
568
|
+
function typesEqual(a, b) {
|
|
569
|
+
const decimalA = parseDecimalType(a);
|
|
570
|
+
const decimalB = parseDecimalType(b);
|
|
571
|
+
if (decimalA && decimalB) {
|
|
572
|
+
return decimalA.precision === decimalB.precision && decimalA.scale === decimalB.scale;
|
|
573
|
+
}
|
|
574
|
+
const fixedA = parseFixedType(a);
|
|
575
|
+
const fixedB = parseFixedType(b);
|
|
576
|
+
if (fixedA && fixedB) {
|
|
577
|
+
return fixedA.length === fixedB.length;
|
|
578
|
+
}
|
|
579
|
+
return a === b;
|
|
580
|
+
}
|
|
581
|
+
function getCurrentSchema(metadata) {
|
|
582
|
+
return metadata.schemas.find((s) => s["schema-id"] === metadata["current-schema-id"]);
|
|
583
|
+
}
|
|
584
|
+
|
|
585
|
+
export { IcebergError, IcebergRestCatalog, getCurrentSchema, isDecimalType, isFixedType, parseDecimalType, parseFixedType, typesEqual };
|
|
586
|
+
//# sourceMappingURL=index.mjs.map
|
|
587
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/errors/IcebergError.ts","../src/utils/url.ts","../src/http/createFetchClient.ts","../src/catalog/namespaces.ts","../src/catalog/tables.ts","../src/catalog/IcebergRestCatalog.ts","../src/catalog/types.ts"],"names":["namespaceToPath"],"mappings":"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","file":"index.mjs","sourcesContent":["export interface IcebergErrorResponse {\n error: {\n message: string\n type: string\n code: number\n stack?: string[]\n }\n}\n\nexport class IcebergError extends Error {\n readonly status: number\n readonly icebergType?: string\n readonly icebergCode?: number\n readonly details?: unknown\n readonly isCommitStateUnknown: boolean\n\n constructor(\n message: string,\n opts: {\n status: number\n icebergType?: string\n icebergCode?: number\n details?: unknown\n }\n ) {\n super(message)\n this.name = 'IcebergError'\n this.status = opts.status\n this.icebergType = opts.icebergType\n this.icebergCode = opts.icebergCode\n this.details = opts.details\n\n // Detect CommitStateUnknownException (500, 502, 504 during table commits)\n this.isCommitStateUnknown =\n opts.icebergType === 'CommitStateUnknownException' ||\n ([500, 502, 504].includes(opts.status) && opts.icebergType?.includes('CommitState') === true)\n }\n\n /**\n * Returns true if the error is a 404 Not Found error.\n */\n isNotFound(): boolean {\n return this.status === 404\n }\n\n /**\n * Returns true if the error is a 409 Conflict error.\n */\n isConflict(): boolean {\n return this.status === 409\n }\n\n /**\n * Returns true if the error is a 419 Authentication Timeout error.\n */\n isAuthenticationTimeout(): boolean {\n return this.status === 419\n }\n}\n","export function buildUrl(\n baseUrl: string,\n path: string,\n query?: Record<string, string | undefined>\n): string {\n const url = new URL(path, baseUrl)\n\n if (query) {\n for (const [key, value] of Object.entries(query)) {\n if (value !== undefined) {\n url.searchParams.set(key, value)\n }\n }\n }\n\n return url.toString()\n}\n","import { IcebergError, type IcebergErrorResponse } from '../errors/IcebergError'\nimport { buildUrl } from '../utils/url'\nimport type { AuthConfig, HttpClient, HttpRequest, HttpResponse } from './types'\n\nasync function buildAuthHeaders(auth?: AuthConfig): Promise<Record<string, string>> {\n if (!auth || auth.type === 'none') {\n return {}\n }\n\n if (auth.type === 'bearer') {\n return { Authorization: `Bearer ${auth.token}` }\n }\n\n if (auth.type === 'header') {\n return { [auth.name]: auth.value }\n }\n\n if (auth.type === 'custom') {\n return await auth.getHeaders()\n }\n\n return {}\n}\n\nexport function createFetchClient(options: {\n baseUrl: string\n auth?: AuthConfig\n fetchImpl?: typeof fetch\n}): HttpClient {\n const fetchFn = options.fetchImpl ?? globalThis.fetch\n\n return {\n async request<T>({\n method,\n path,\n query,\n body,\n headers,\n }: HttpRequest): Promise<HttpResponse<T>> {\n const url = buildUrl(options.baseUrl, path, query)\n const authHeaders = await buildAuthHeaders(options.auth)\n\n const res = await fetchFn(url, {\n method,\n headers: {\n ...(body ? { 'Content-Type': 'application/json' } : {}),\n ...authHeaders,\n ...headers,\n },\n body: body ? JSON.stringify(body) : undefined,\n })\n\n const text = await res.text()\n const isJson = (res.headers.get('content-type') || '').includes('application/json')\n const data = isJson && text ? (JSON.parse(text) as T) : (text as T)\n\n if (!res.ok) {\n const errBody = isJson ? (data as IcebergErrorResponse) : undefined\n const errorDetail = errBody?.error\n throw new IcebergError(\n errorDetail?.message ?? `Request failed with status ${res.status}`,\n {\n status: res.status,\n icebergType: errorDetail?.type,\n icebergCode: errorDetail?.code,\n details: errBody,\n }\n )\n }\n\n return { status: res.status, headers: res.headers, data: data as T }\n },\n }\n}\n","import type { HttpClient } from '../http/types'\nimport { IcebergError } from '../errors/IcebergError'\nimport type {\n CreateNamespaceRequest,\n CreateNamespaceResponse,\n GetNamespaceResponse,\n ListNamespacesResponse,\n NamespaceIdentifier,\n NamespaceMetadata,\n} from './types'\n\nfunction namespaceToPath(namespace: string[]): string {\n return namespace.join('\\x1F')\n}\n\nexport class NamespaceOperations {\n constructor(\n private readonly client: HttpClient,\n private readonly prefix: string = ''\n ) {}\n\n async listNamespaces(parent?: NamespaceIdentifier): Promise<NamespaceIdentifier[]> {\n const query = parent ? { parent: namespaceToPath(parent.namespace) } : undefined\n\n const response = await this.client.request<ListNamespacesResponse>({\n method: 'GET',\n path: `${this.prefix}/namespaces`,\n query,\n })\n\n return response.data.namespaces.map((ns) => ({ namespace: ns }))\n }\n\n async createNamespace(\n id: NamespaceIdentifier,\n metadata?: NamespaceMetadata\n ): Promise<CreateNamespaceResponse> {\n const request: CreateNamespaceRequest = {\n namespace: id.namespace,\n properties: metadata?.properties,\n }\n\n const response = await this.client.request<CreateNamespaceResponse>({\n method: 'POST',\n path: `${this.prefix}/namespaces`,\n body: request,\n })\n\n return response.data\n }\n\n async dropNamespace(id: NamespaceIdentifier): Promise<void> {\n await this.client.request<void>({\n method: 'DELETE',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}`,\n })\n }\n\n async loadNamespaceMetadata(id: NamespaceIdentifier): Promise<NamespaceMetadata> {\n const response = await this.client.request<GetNamespaceResponse>({\n method: 'GET',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}`,\n })\n\n return {\n properties: response.data.properties,\n }\n }\n\n async namespaceExists(id: NamespaceIdentifier): Promise<boolean> {\n try {\n await this.client.request<void>({\n method: 'HEAD',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}`,\n })\n return true\n } catch (error) {\n if (error instanceof IcebergError && error.status === 404) {\n return false\n }\n throw error\n }\n }\n\n async createNamespaceIfNotExists(\n id: NamespaceIdentifier,\n metadata?: NamespaceMetadata\n ): Promise<CreateNamespaceResponse | void> {\n try {\n return await this.createNamespace(id, metadata)\n } catch (error) {\n if (error instanceof IcebergError && error.status === 409) {\n return\n }\n throw error\n }\n }\n}\n","import type { HttpClient } from '../http/types'\nimport { IcebergError } from '../errors/IcebergError'\nimport type {\n CreateTableRequest,\n CommitTableResponse,\n ListTablesResponse,\n LoadTableResponse,\n NamespaceIdentifier,\n TableIdentifier,\n TableMetadata,\n UpdateTableRequest,\n DropTableRequest,\n} from './types'\n\nfunction namespaceToPath(namespace: string[]): string {\n return namespace.join('\\x1F')\n}\n\nexport class TableOperations {\n constructor(\n private readonly client: HttpClient,\n private readonly prefix: string = '',\n private readonly accessDelegation?: string\n ) {}\n\n async listTables(namespace: NamespaceIdentifier): Promise<TableIdentifier[]> {\n const response = await this.client.request<ListTablesResponse>({\n method: 'GET',\n path: `${this.prefix}/namespaces/${namespaceToPath(namespace.namespace)}/tables`,\n })\n\n return response.data.identifiers\n }\n\n async createTable(\n namespace: NamespaceIdentifier,\n request: CreateTableRequest\n ): Promise<TableMetadata> {\n const headers: Record<string, string> = {}\n if (this.accessDelegation) {\n headers['X-Iceberg-Access-Delegation'] = this.accessDelegation\n }\n\n const response = await this.client.request<LoadTableResponse>({\n method: 'POST',\n path: `${this.prefix}/namespaces/${namespaceToPath(namespace.namespace)}/tables`,\n body: request,\n headers,\n })\n\n return response.data.metadata\n }\n\n async updateTable(id: TableIdentifier, request: UpdateTableRequest): Promise<CommitTableResponse> {\n const response = await this.client.request<LoadTableResponse>({\n method: 'POST',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}/tables/${id.name}`,\n body: request,\n })\n\n return {\n 'metadata-location': response.data['metadata-location'],\n metadata: response.data.metadata,\n }\n }\n\n async dropTable(id: TableIdentifier, options?: DropTableRequest): Promise<void> {\n await this.client.request<void>({\n method: 'DELETE',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}/tables/${id.name}`,\n query: { purgeRequested: String(options?.purge ?? false) },\n })\n }\n\n async loadTable(id: TableIdentifier): Promise<TableMetadata> {\n const headers: Record<string, string> = {}\n if (this.accessDelegation) {\n headers['X-Iceberg-Access-Delegation'] = this.accessDelegation\n }\n\n const response = await this.client.request<LoadTableResponse>({\n method: 'GET',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}/tables/${id.name}`,\n headers,\n })\n\n return response.data.metadata\n }\n\n async tableExists(id: TableIdentifier): Promise<boolean> {\n const headers: Record<string, string> = {}\n if (this.accessDelegation) {\n headers['X-Iceberg-Access-Delegation'] = this.accessDelegation\n }\n\n try {\n await this.client.request<void>({\n method: 'HEAD',\n path: `${this.prefix}/namespaces/${namespaceToPath(id.namespace)}/tables/${id.name}`,\n headers,\n })\n return true\n } catch (error) {\n if (error instanceof IcebergError && error.status === 404) {\n return false\n }\n throw error\n }\n }\n\n async createTableIfNotExists(\n namespace: NamespaceIdentifier,\n request: CreateTableRequest\n ): Promise<TableMetadata> {\n try {\n return await this.createTable(namespace, request)\n } catch (error) {\n if (error instanceof IcebergError && error.status === 409) {\n return await this.loadTable({ namespace: namespace.namespace, name: request.name })\n }\n throw error\n }\n }\n}\n","import { createFetchClient } from '../http/createFetchClient'\nimport type { AuthConfig, HttpClient } from '../http/types'\nimport { NamespaceOperations } from './namespaces'\nimport { TableOperations } from './tables'\nimport type {\n CreateTableRequest,\n CreateNamespaceResponse,\n CommitTableResponse,\n NamespaceIdentifier,\n NamespaceMetadata,\n TableIdentifier,\n TableMetadata,\n UpdateTableRequest,\n DropTableRequest,\n} from './types'\n\n/**\n * Access delegation mechanisms supported by the Iceberg REST Catalog.\n *\n * - `vended-credentials`: Server provides temporary credentials for data access\n * - `remote-signing`: Server signs requests on behalf of the client\n */\nexport type AccessDelegation = 'vended-credentials' | 'remote-signing'\n\n/**\n * Configuration options for the Iceberg REST Catalog client.\n */\nexport interface IcebergRestCatalogOptions {\n /** Base URL of the Iceberg REST Catalog API */\n baseUrl: string\n /** Optional catalog name prefix for multi-catalog servers */\n catalogName?: string\n /** Authentication configuration */\n auth?: AuthConfig\n /** Custom fetch implementation (defaults to globalThis.fetch) */\n fetch?: typeof fetch\n /**\n * Access delegation mechanisms to request from the server.\n * When specified, the X-Iceberg-Access-Delegation header will be sent\n * with supported operations (createTable, loadTable).\n *\n * @example ['vended-credentials']\n * @example ['vended-credentials', 'remote-signing']\n */\n accessDelegation?: AccessDelegation[]\n}\n\n/**\n * Client for interacting with an Apache Iceberg REST Catalog.\n *\n * This class provides methods for managing namespaces and tables in an Iceberg catalog.\n * It handles authentication, request formatting, and error handling automatically.\n *\n * @example\n * ```typescript\n * const catalog = new IcebergRestCatalog({\n * baseUrl: 'https://my-catalog.example.com/iceberg/v1',\n * auth: { type: 'bearer', token: process.env.ICEBERG_TOKEN }\n * });\n *\n * // Create a namespace\n * await catalog.createNamespace({ namespace: ['analytics'] });\n *\n * // Create a table\n * await catalog.createTable(\n * { namespace: ['analytics'] },\n * {\n * name: 'events',\n * schema: { type: 'struct', fields: [...] }\n * }\n * );\n * ```\n */\nexport class IcebergRestCatalog {\n private readonly client: HttpClient\n private readonly namespaceOps: NamespaceOperations\n private readonly tableOps: TableOperations\n private readonly accessDelegation?: string\n\n /**\n * Creates a new Iceberg REST Catalog client.\n *\n * @param options - Configuration options for the catalog client\n */\n constructor(options: IcebergRestCatalogOptions) {\n let prefix = 'v1'\n if (options.catalogName) {\n prefix += `/${options.catalogName}`\n }\n\n const baseUrl = options.baseUrl.endsWith('/') ? options.baseUrl : `${options.baseUrl}/`\n\n this.client = createFetchClient({\n baseUrl,\n auth: options.auth,\n fetchImpl: options.fetch,\n })\n\n // Format accessDelegation as comma-separated string per spec\n this.accessDelegation = options.accessDelegation?.join(',')\n\n this.namespaceOps = new NamespaceOperations(this.client, prefix)\n this.tableOps = new TableOperations(this.client, prefix, this.accessDelegation)\n }\n\n /**\n * Lists all namespaces in the catalog.\n *\n * @param parent - Optional parent namespace to list children under\n * @returns Array of namespace identifiers\n *\n * @example\n * ```typescript\n * // List all top-level namespaces\n * const namespaces = await catalog.listNamespaces();\n *\n * // List namespaces under a parent\n * const children = await catalog.listNamespaces({ namespace: ['analytics'] });\n * ```\n */\n async listNamespaces(parent?: NamespaceIdentifier): Promise<NamespaceIdentifier[]> {\n return this.namespaceOps.listNamespaces(parent)\n }\n\n /**\n * Creates a new namespace in the catalog.\n *\n * @param id - Namespace identifier to create\n * @param metadata - Optional metadata properties for the namespace\n * @returns Response containing the created namespace and its properties\n *\n * @example\n * ```typescript\n * const response = await catalog.createNamespace(\n * { namespace: ['analytics'] },\n * { properties: { owner: 'data-team' } }\n * );\n * console.log(response.namespace); // ['analytics']\n * console.log(response.properties); // { owner: 'data-team', ... }\n * ```\n */\n async createNamespace(id: NamespaceIdentifier, metadata?: NamespaceMetadata): Promise<CreateNamespaceResponse> {\n return this.namespaceOps.createNamespace(id, metadata)\n }\n\n /**\n * Drops a namespace from the catalog.\n *\n * The namespace must be empty (contain no tables) before it can be dropped.\n *\n * @param id - Namespace identifier to drop\n *\n * @example\n * ```typescript\n * await catalog.dropNamespace({ namespace: ['analytics'] });\n * ```\n */\n async dropNamespace(id: NamespaceIdentifier): Promise<void> {\n await this.namespaceOps.dropNamespace(id)\n }\n\n /**\n * Loads metadata for a namespace.\n *\n * @param id - Namespace identifier to load\n * @returns Namespace metadata including properties\n *\n * @example\n * ```typescript\n * const metadata = await catalog.loadNamespaceMetadata({ namespace: ['analytics'] });\n * console.log(metadata.properties);\n * ```\n */\n async loadNamespaceMetadata(id: NamespaceIdentifier): Promise<NamespaceMetadata> {\n return this.namespaceOps.loadNamespaceMetadata(id)\n }\n\n /**\n * Lists all tables in a namespace.\n *\n * @param namespace - Namespace identifier to list tables from\n * @returns Array of table identifiers\n *\n * @example\n * ```typescript\n * const tables = await catalog.listTables({ namespace: ['analytics'] });\n * console.log(tables); // [{ namespace: ['analytics'], name: 'events' }, ...]\n * ```\n */\n async listTables(namespace: NamespaceIdentifier): Promise<TableIdentifier[]> {\n return this.tableOps.listTables(namespace)\n }\n\n /**\n * Creates a new table in the catalog.\n *\n * @param namespace - Namespace to create the table in\n * @param request - Table creation request including name, schema, partition spec, etc.\n * @returns Table metadata for the created table\n *\n * @example\n * ```typescript\n * const metadata = await catalog.createTable(\n * { namespace: ['analytics'] },\n * {\n * name: 'events',\n * schema: {\n * type: 'struct',\n * fields: [\n * { id: 1, name: 'id', type: 'long', required: true },\n * { id: 2, name: 'timestamp', type: 'timestamp', required: true }\n * ],\n * 'schema-id': 0\n * },\n * 'partition-spec': {\n * 'spec-id': 0,\n * fields: [\n * { source_id: 2, field_id: 1000, name: 'ts_day', transform: 'day' }\n * ]\n * }\n * }\n * );\n * ```\n */\n async createTable(\n namespace: NamespaceIdentifier,\n request: CreateTableRequest\n ): Promise<TableMetadata> {\n return this.tableOps.createTable(namespace, request)\n }\n\n /**\n * Updates an existing table's metadata.\n *\n * Can update the schema, partition spec, or properties of a table.\n *\n * @param id - Table identifier to update\n * @param request - Update request with fields to modify\n * @returns Response containing the metadata location and updated table metadata\n *\n * @example\n * ```typescript\n * const response = await catalog.updateTable(\n * { namespace: ['analytics'], name: 'events' },\n * {\n * properties: { 'read.split.target-size': '134217728' }\n * }\n * );\n * console.log(response['metadata-location']); // s3://...\n * console.log(response.metadata); // TableMetadata object\n * ```\n */\n async updateTable(id: TableIdentifier, request: UpdateTableRequest): Promise<CommitTableResponse> {\n return this.tableOps.updateTable(id, request)\n }\n\n /**\n * Drops a table from the catalog.\n *\n * @param id - Table identifier to drop\n *\n * @example\n * ```typescript\n * await catalog.dropTable({ namespace: ['analytics'], name: 'events' });\n * ```\n */\n async dropTable(id: TableIdentifier, options?: DropTableRequest): Promise<void> {\n await this.tableOps.dropTable(id, options)\n }\n\n /**\n * Loads metadata for a table.\n *\n * @param id - Table identifier to load\n * @returns Table metadata including schema, partition spec, location, etc.\n *\n * @example\n * ```typescript\n * const metadata = await catalog.loadTable({ namespace: ['analytics'], name: 'events' });\n * console.log(metadata.schema);\n * console.log(metadata.location);\n * ```\n */\n async loadTable(id: TableIdentifier): Promise<TableMetadata> {\n return this.tableOps.loadTable(id)\n }\n\n /**\n * Checks if a namespace exists in the catalog.\n *\n * @param id - Namespace identifier to check\n * @returns True if the namespace exists, false otherwise\n *\n * @example\n * ```typescript\n * const exists = await catalog.namespaceExists({ namespace: ['analytics'] });\n * console.log(exists); // true or false\n * ```\n */\n async namespaceExists(id: NamespaceIdentifier): Promise<boolean> {\n return this.namespaceOps.namespaceExists(id)\n }\n\n /**\n * Checks if a table exists in the catalog.\n *\n * @param id - Table identifier to check\n * @returns True if the table exists, false otherwise\n *\n * @example\n * ```typescript\n * const exists = await catalog.tableExists({ namespace: ['analytics'], name: 'events' });\n * console.log(exists); // true or false\n * ```\n */\n async tableExists(id: TableIdentifier): Promise<boolean> {\n return this.tableOps.tableExists(id)\n }\n\n /**\n * Creates a namespace if it does not exist.\n *\n * If the namespace already exists, returns void. If created, returns the response.\n *\n * @param id - Namespace identifier to create\n * @param metadata - Optional metadata properties for the namespace\n * @returns Response containing the created namespace and its properties, or void if it already exists\n *\n * @example\n * ```typescript\n * const response = await catalog.createNamespaceIfNotExists(\n * { namespace: ['analytics'] },\n * { properties: { owner: 'data-team' } }\n * );\n * if (response) {\n * console.log('Created:', response.namespace);\n * } else {\n * console.log('Already exists');\n * }\n * ```\n */\n async createNamespaceIfNotExists(\n id: NamespaceIdentifier,\n metadata?: NamespaceMetadata\n ): Promise<CreateNamespaceResponse | void> {\n return this.namespaceOps.createNamespaceIfNotExists(id, metadata)\n }\n\n /**\n * Creates a table if it does not exist.\n *\n * If the table already exists, returns its metadata instead.\n *\n * @param namespace - Namespace to create the table in\n * @param request - Table creation request including name, schema, partition spec, etc.\n * @returns Table metadata for the created or existing table\n *\n * @example\n * ```typescript\n * const metadata = await catalog.createTableIfNotExists(\n * { namespace: ['analytics'] },\n * {\n * name: 'events',\n * schema: {\n * type: 'struct',\n * fields: [\n * { id: 1, name: 'id', type: 'long', required: true },\n * { id: 2, name: 'timestamp', type: 'timestamp', required: true }\n * ],\n * 'schema-id': 0\n * }\n * }\n * );\n * ```\n */\n async createTableIfNotExists(\n namespace: NamespaceIdentifier,\n request: CreateTableRequest\n ): Promise<TableMetadata> {\n return this.tableOps.createTableIfNotExists(namespace, request)\n }\n}\n","export interface NamespaceIdentifier {\n namespace: string[]\n}\n\nexport interface NamespaceMetadata {\n properties: Record<string, string>\n}\n\nexport interface TableIdentifier {\n namespace: string[]\n name: string\n}\n\n/**\n * Primitive types in Iceberg - all represented as strings.\n * Parameterized types use string format: decimal(precision,scale) and fixed[length]\n *\n * Note: The OpenAPI spec defines PrimitiveType as `type: string`, so any string is valid.\n * We include known types for autocomplete, plus a catch-all for flexibility.\n */\nexport type PrimitiveType =\n | 'boolean'\n | 'int'\n | 'long'\n | 'float'\n | 'double'\n | 'string'\n | 'timestamp'\n | 'date'\n | 'time'\n | 'timestamptz'\n | 'uuid'\n | 'binary'\n | `decimal(${number},${number})`\n | `fixed[${number}]`\n | (string & {}) // catch-all for any format (e.g., \"decimal(10, 2)\" with spaces) and future types\n\n/**\n * Regex patterns for parsing parameterized types.\n * These allow flexible whitespace matching.\n */\nconst DECIMAL_REGEX = /^decimal\\s*\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*\\)$/\nconst FIXED_REGEX = /^fixed\\s*\\[\\s*(\\d+)\\s*\\]$/\n\n/**\n * Parse a decimal type string into its components.\n * Handles any whitespace formatting (e.g., \"decimal(10,2)\", \"decimal(10, 2)\", \"decimal( 10 , 2 )\").\n *\n * @param type - The type string to parse\n * @returns Object with precision and scale, or null if not a valid decimal type\n */\nexport function parseDecimalType(type: string): { precision: number; scale: number } | null {\n const match = type.match(DECIMAL_REGEX)\n if (!match) return null\n return {\n precision: parseInt(match[1], 10),\n scale: parseInt(match[2], 10),\n }\n}\n\n/**\n * Parse a fixed type string into its length.\n * Handles any whitespace formatting (e.g., \"fixed[16]\", \"fixed[ 16 ]\").\n *\n * @param type - The type string to parse\n * @returns Object with length, or null if not a valid fixed type\n */\nexport function parseFixedType(type: string): { length: number } | null {\n const match = type.match(FIXED_REGEX)\n if (!match) return null\n return {\n length: parseInt(match[1], 10),\n }\n}\n\n/**\n * Check if a type string is a decimal type.\n */\nexport function isDecimalType(type: string): boolean {\n return DECIMAL_REGEX.test(type)\n}\n\n/**\n * Check if a type string is a fixed type.\n */\nexport function isFixedType(type: string): boolean {\n return FIXED_REGEX.test(type)\n}\n\n/**\n * Compare two Iceberg type strings for equality, ignoring whitespace differences.\n * This is useful when comparing types from user input vs catalog responses,\n * as catalogs may normalize whitespace differently.\n *\n * @param a - First type string\n * @param b - Second type string\n * @returns true if the types are equivalent\n */\nexport function typesEqual(a: string, b: string): boolean {\n // For decimal types, compare parsed values\n const decimalA = parseDecimalType(a)\n const decimalB = parseDecimalType(b)\n if (decimalA && decimalB) {\n return decimalA.precision === decimalB.precision && decimalA.scale === decimalB.scale\n }\n\n // For fixed types, compare parsed values\n const fixedA = parseFixedType(a)\n const fixedB = parseFixedType(b)\n if (fixedA && fixedB) {\n return fixedA.length === fixedB.length\n }\n\n // For other types, direct string comparison\n return a === b\n}\n\n/**\n * Struct type - a nested structure containing fields.\n * Used for nested records within a field.\n */\nexport interface StructType {\n type: 'struct'\n fields: StructField[]\n}\n\n/**\n * List type - an array of elements.\n */\nexport interface ListType {\n type: 'list'\n 'element-id': number\n element: IcebergType\n 'element-required': boolean\n}\n\n/**\n * Map type - a key-value mapping.\n */\nexport interface MapType {\n type: 'map'\n 'key-id': number\n key: IcebergType\n 'value-id': number\n value: IcebergType\n 'value-required': boolean\n}\n\n/**\n * Union of all Iceberg types.\n * Can be a primitive type (string) or a complex type (struct, list, map).\n */\nexport type IcebergType = PrimitiveType | StructType | ListType | MapType\n\n/**\n * Primitive type values for default values.\n * Represents the possible values for initial-default and write-default.\n */\nexport type PrimitiveTypeValue = boolean | number | string\n\n/**\n * A field within a struct (used in nested StructType).\n */\nexport interface StructField {\n id: number\n name: string\n type: IcebergType\n required: boolean\n doc?: string\n 'initial-default'?: PrimitiveTypeValue\n 'write-default'?: PrimitiveTypeValue\n}\n\n/**\n * A field within a table schema (top-level).\n * Equivalent to StructField but kept for backwards compatibility.\n */\nexport interface TableField {\n id: number\n name: string\n type: IcebergType\n required: boolean\n doc?: string\n 'initial-default'?: PrimitiveTypeValue\n 'write-default'?: PrimitiveTypeValue\n}\n\nexport interface TableSchema {\n type: 'struct'\n fields: TableField[]\n 'schema-id'?: number\n 'identifier-field-ids'?: number[]\n}\n\nexport interface PartitionField {\n source_id: number\n field_id: number\n name: string\n transform: string\n}\n\nexport interface PartitionSpec {\n 'spec-id': number\n fields: PartitionField[]\n}\n\nexport interface SortField {\n source_id: number\n transform: string\n direction: 'asc' | 'desc'\n null_order: 'nulls-first' | 'nulls-last'\n}\n\nexport interface SortOrder {\n 'order-id': number\n fields: SortField[]\n}\n\nexport interface CreateTableRequest {\n name: string\n schema: TableSchema\n 'partition-spec'?: PartitionSpec\n 'write-order'?: SortOrder\n properties?: Record<string, string>\n 'stage-create'?: boolean\n}\n\nexport interface UpdateTableRequest {\n schema?: TableSchema\n 'partition-spec'?: PartitionSpec\n properties?: Record<string, string>\n}\n\nexport interface DropTableRequest {\n purge?: boolean\n}\n\nexport interface TableMetadata {\n name?: string\n location: string\n schemas: TableSchema[]\n 'current-schema-id': number\n 'partition-specs': PartitionSpec[]\n 'default-spec-id'?: number\n 'sort-orders': SortOrder[]\n 'default-sort-order-id'?: number\n properties: Record<string, string>\n 'metadata-location'?: string\n 'current-snapshot-id'?: number\n snapshots?: unknown[]\n 'snapshot-log'?: unknown[]\n 'metadata-log'?: unknown[]\n refs?: Record<string, unknown>\n 'last-updated-ms'?: number\n 'last-column-id'?: number\n 'last-sequence-number'?: number\n 'table-uuid'?: string\n 'format-version'?: number\n 'last-partition-id'?: number\n}\n\nexport interface CreateNamespaceRequest {\n namespace: string[]\n properties?: Record<string, string>\n}\n\nexport interface CreateNamespaceResponse {\n namespace: string[]\n properties?: Record<string, string>\n}\n\nexport interface GetNamespaceResponse {\n namespace: string[]\n properties: Record<string, string>\n}\n\nexport interface ListNamespacesResponse {\n namespaces: string[][]\n 'next-page-token'?: string\n}\n\nexport interface ListTablesResponse {\n identifiers: TableIdentifier[]\n 'next-page-token'?: string\n}\n\nexport interface LoadTableResponse {\n 'metadata-location': string\n metadata: TableMetadata\n config?: Record<string, string>\n}\n\nexport interface CommitTableResponse {\n 'metadata-location': string\n metadata: TableMetadata\n}\n\n/**\n * Gets the current (active) schema from table metadata.\n *\n * @param metadata - Table metadata containing schemas array and current-schema-id\n * @returns The current table schema, or undefined if not found\n */\nexport function getCurrentSchema(metadata: TableMetadata): TableSchema | undefined {\n return metadata.schemas.find((s) => s['schema-id'] === metadata['current-schema-id'])\n}\n"]}
|