coze-coding-dev-sdk 0.7.21 → 0.7.22
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/dist/cjs/cli/index.js +4 -4
- package/dist/cjs/index.js +1 -1
- package/dist/esm/131.mjs +2 -2
- package/dist/esm/cli/index.mjs +3 -3
- package/dist/types/llm/client.d.ts.map +1 -1
- package/dist/types/supabase/client.d.ts +3 -1
- package/dist/types/supabase/client.d.ts.map +1 -1
- package/dist/types/supabase/models.d.ts +24 -1
- package/dist/types/supabase/models.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/esm/131.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
let e,i,n,t,a,r,o,u,s,l,h,g,c,d;import*as p from"buffer";import*as f from"crypto";import*as m from"events";import*as y from"fs";import*as S from"node:fs";import*as b from"node:fs/promises";import*as C from"node:stream";import*as T from"os";import*as w from"path";import*as x from"stream";import*as E from"zlib";import{__webpack_require__ as L}from"./rslib-runtime.mjs";import _ from"axios";import{ChatOpenAI as Y}from"@langchain/openai";import{AIMessage as D,HumanMessage as v,SystemMessage as A}from"@langchain/core/messages";import N from"pg";import{exec as P,execSync as Z}from"child_process";import{env as R,versions as M}from"process";import{Agent as J,request as k}from"http";import{Agent as B,request as H}from"https";L.add({"./node_modules/dotenv/lib/main.js"(e,i,n){let t=n("fs"),a=n("path"),r=n("os"),o=n("crypto"),u=n("./node_modules/dotenv/package.json").version,s=["\uD83D\uDD10 encrypt with Dotenvx: https://dotenvx.com","\uD83D\uDD10 prevent committing .env to code: https://dotenvx.com/precommit","\uD83D\uDD10 prevent building .env in docker: https://dotenvx.com/prebuild","\uD83D\uDCE1 add observability to secrets: https://dotenvx.com/ops","\uD83D\uDC65 sync secrets across teammates & machines: https://dotenvx.com/ops","\uD83D\uDDC2️ backup and recover secrets: https://dotenvx.com/ops","✅ audit secrets and track compliance: https://dotenvx.com/ops","\uD83D\uDD04 add secrets lifecycle management: https://dotenvx.com/ops","\uD83D\uDD11 add access controls to secrets: https://dotenvx.com/ops","\uD83D\uDEE0️ run anywhere with `dotenvx run -- yourcommand`","⚙️ specify custom .env file path with { path: '/custom/path/.env' }","⚙️ enable debug logging with { debug: true }","⚙️ override existing env vars with { override: true }","⚙️ suppress all logs with { quiet: true }","⚙️ write to custom object with { processEnv: myObject }","⚙️ load multiple .env files with { path: ['.env.local', '.env'] }"];function _getRandomTip(){return s[Math.floor(Math.random()*s.length)]}function parseBoolean(e){return"string"==typeof e?!["false","0","no","off",""].includes(e.toLowerCase()):!!e}function supportsAnsi(){return process.stdout.isTTY}function dim(e){return supportsAnsi()?`\x1b[2m${e}\x1b[0m`:e}let l=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function _warn(e){console.error(`[dotenv@${u}][WARN] ${e}`)}function _debug(e){console.log(`[dotenv@${u}][DEBUG] ${e}`)}function _log(e){console.log(`[dotenv@${u}] ${e}`)}function _dotenvKey(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function _instructions(e,i){let n;try{n=new URL(i)}catch(e){if("ERR_INVALID_URL"===e.code){let e=Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw e.code="INVALID_DOTENV_KEY",e}throw e}let t=n.password;if(!t){let e=Error("INVALID_DOTENV_KEY: Missing key part");throw e.code="INVALID_DOTENV_KEY",e}let a=n.searchParams.get("environment");if(!a){let e=Error("INVALID_DOTENV_KEY: Missing environment part");throw e.code="INVALID_DOTENV_KEY",e}let r=`DOTENV_VAULT_${a.toUpperCase()}`,o=e.parsed[r];if(!o){let e=Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${r} in your .env.vault file.`);throw e.code="NOT_FOUND_DOTENV_ENVIRONMENT",e}return{ciphertext:o,key:t}}function _vaultPath(e){let i=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let n of e.path)t.existsSync(n)&&(i=n.endsWith(".vault")?n:`${n}.vault`);else i=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else i=a.resolve(process.cwd(),".env.vault");return t.existsSync(i)?i:null}function _resolveHome(e){return"~"===e[0]?a.join(r.homedir(),e.slice(1)):e}let h={configDotenv:function(e){let i,n=a.resolve(process.cwd(),".env"),r="utf8",o=process.env;e&&null!=e.processEnv&&(o=e.processEnv);let u=parseBoolean(o.DOTENV_CONFIG_DEBUG||e&&e.debug),s=parseBoolean(o.DOTENV_CONFIG_QUIET||e&&e.quiet);e&&e.encoding?r=e.encoding:u&&_debug("No encoding is specified. UTF-8 is used by default");let l=[n];if(e&&e.path)if(Array.isArray(e.path))for(let i of(l=[],e.path))l.push(_resolveHome(i));else l=[_resolveHome(e.path)];let g={};for(let n of l)try{let i=h.parse(t.readFileSync(n,{encoding:r}));h.populate(g,i,e)}catch(e){u&&_debug(`Failed to load ${n} ${e.message}`),i=e}let c=h.populate(o,g,e);if(u=parseBoolean(o.DOTENV_CONFIG_DEBUG||u),s=parseBoolean(o.DOTENV_CONFIG_QUIET||s),u||!s){let e=Object.keys(c).length,n=[];for(let e of l)try{let i=a.relative(process.cwd(),e);n.push(i)}catch(n){u&&_debug(`Failed to load ${e} ${n.message}`),i=n}_log(`injecting env (${e}) from ${n.join(",")} ${dim(`-- tip: ${_getRandomTip()}`)}`)}return i?{parsed:g,error:i}:{parsed:g}},_configVault:function(e){let i=parseBoolean(process.env.DOTENV_CONFIG_DEBUG||e&&e.debug),n=parseBoolean(process.env.DOTENV_CONFIG_QUIET||e&&e.quiet);(i||!n)&&_log("Loading env from encrypted .env.vault");let t=h._parseVault(e),a=process.env;return e&&null!=e.processEnv&&(a=e.processEnv),h.populate(a,t,e),{parsed:t}},_parseVault:function(e){let i,n=_vaultPath(e=e||{});e.path=n;let t=h.configDotenv(e);if(!t.parsed){let e=Error(`MISSING_DATA: Cannot parse ${n} for an unknown reason`);throw e.code="MISSING_DATA",e}let a=_dotenvKey(e).split(","),r=a.length;for(let e=0;e<r;e++)try{let n=a[e].trim(),r=_instructions(t,n);i=h.decrypt(r.ciphertext,r.key);break}catch(i){if(e+1>=r)throw i}return h.parse(i)},config:function(e){if(0===_dotenvKey(e).length)return h.configDotenv(e);let i=_vaultPath(e);return i?h._configVault(e):(_warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${i}. Did you forget to build it?`),h.configDotenv(e))},decrypt:function(e,i){let n=Buffer.from(i.slice(-64),"hex"),t=Buffer.from(e,"base64"),a=t.subarray(0,12),r=t.subarray(-16);t=t.subarray(12,-16);try{let e=o.createDecipheriv("aes-256-gcm",n,a);return e.setAuthTag(r),`${e.update(t)}${e.final()}`}catch(t){let e=t instanceof RangeError,i="Invalid key length"===t.message,n="Unsupported state or unable to authenticate data"===t.message;if(e||i){let e=Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw e.code="INVALID_DOTENV_KEY",e}if(n){let e=Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw e.code="DECRYPTION_FAILED",e}throw t}},parse:function(e){let i,n={},t=e.toString();for(t=t.replace(/\r\n?/mg,"\n");null!=(i=l.exec(t));){let e=i[1],t=i[2]||"",a=(t=t.trim())[0];t=t.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),'"'===a&&(t=(t=t.replace(/\\n/g,"\n")).replace(/\\r/g,"\r")),n[e]=t}return n},populate:function(e,i,n={}){let t=!!(n&&n.debug),a=!!(n&&n.override),r={};if("object"!=typeof i){let e=Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw e.code="OBJECT_REQUIRED",e}for(let n of Object.keys(i))Object.prototype.hasOwnProperty.call(e,n)?(!0===a&&(e[n]=i[n],r[n]=i[n]),t&&(!0===a?_debug(`"${n}" is already defined and WAS overwritten`):_debug(`"${n}" is already defined and was NOT overwritten`))):(e[n]=i[n],r[n]=i[n]);return r}};e.exports.configDotenv=h.configDotenv,e.exports._configVault=h._configVault,e.exports._parseVault=h._parseVault,e.exports.config=h.config,e.exports.decrypt=h.decrypt,e.exports.parse=h.parse,e.exports.populate=h.populate,e.exports=h},buffer(e){e.exports=p},crypto(e){e.exports=f},events(e){e.exports=m},fs(e){e.exports=y},"node:fs"(e){e.exports=S},"node:fs/promises"(e){e.exports=b},"node:stream"(e){e.exports=C},os(e){e.exports=T},path(e){e.exports=w},stream(e){e.exports=x},zlib(e){e.exports=E},"./node_modules/dotenv/package.json"(e){e.exports=JSON.parse('{"name":"dotenv","version":"17.2.3","description":"Loads environment variables from .env file","main":"lib/main.js","types":"lib/main.d.ts","exports":{".":{"types":"./lib/main.d.ts","require":"./lib/main.js","default":"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},"scripts":{"dts-check":"tsc --project tests/types/tsconfig.json","lint":"standard","pretest":"npm run lint && npm run dts-check","test":"tap run tests/**/*.js --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run tests/**/*.js --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov","prerelease":"npm test","release":"standard-version"},"repository":{"type":"git","url":"git://github.com/motdotla/dotenv.git"},"homepage":"https://github.com/motdotla/dotenv#readme","funding":"https://dotenvx.com","keywords":["dotenv","env",".env","environment","variables","config","settings"],"readmeFilename":"README.md","license":"BSD-2-Clause","devDependencies":{"@types/node":"^18.11.3","decache":"^4.6.2","sinon":"^14.0.1","standard":"^17.0.0","standard-version":"^9.5.0","tap":"^19.2.0","typescript":"^4.8.4"},"engines":{"node":">=12"},"browser":{"fs":false}}')}});var F,X,I,O,Q,G,U,q,K,$,z,W,j,V,ee,ei,en,et,ea,er,eo,eu,es,el,eh,eg,ec,ed,ep={};L.r(ep),L.d(ep,{T:()=>eS});var ef={};L.r(ef),L.d(ef,{n:()=>eE,p:()=>eL});var em={};L.r(em),L.d(em,{F:()=>mH});var ey={};L.r(ey),L.d(ey,{c:()=>eB});class eS{apiKey;baseUrl;modelBaseUrl;retryTimes;retryDelay;timeout;constructor(e){this.apiKey=e?.apiKey||process.env.COZE_WORKLOAD_IDENTITY_API_KEY||"",this.baseUrl=e?.baseUrl||process.env.COZE_INTEGRATION_BASE_URL||"",this.modelBaseUrl=e?.modelBaseUrl||process.env.COZE_INTEGRATION_MODEL_BASE_URL||"",this.retryTimes=e?.retryTimes??3,this.retryDelay=e?.retryDelay??1,this.timeout=e?.timeout??9e5}validate(){if(!this.apiKey)throw Error("API key is required. Set COZE_WORKLOAD_IDENTITY_API_KEY or provide apiKey in config.")}getHeaders(){if(!this.apiKey)throw Error("API key is required. Set COZE_WORKLOAD_IDENTITY_API_KEY or provide apiKey in config.");return{Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json"}}}class eb extends Error{constructor(e){super(e),this.name="ConfigurationError"}}class eC extends Error{statusCode;response;constructor(e,i,n){super(e),this.name="APIError",this.statusCode=i,this.response=n}}class eT extends Error{originalError;constructor(e,i){super(e),this.originalError=i,this.name="NetworkError"}}class ew extends Error{constructor(e){super(e),this.name="ValidationError"}}class ex{config;axiosInstance;verbose;constructor(e,i,n=!1){this.config=e||new eS,this.verbose=n,this.axiosInstance=_.create({timeout:this.config.timeout,headers:{Authorization:`Bearer ${this.config.apiKey}`,"Content-Type":"application/json","X-Client-Sdk":"coze-coding-dev-sdk-typescript/0.3.0",...i}})}async request(e,i,n,t){let a=null;for(let r=0;r<=this.config.retryTimes;r++)try{0===r&&this.verbose&&this.logRequest(e,i,n,t);let a=await this.axiosInstance.request({method:e,url:i,data:n,...t});return 0===r&&this.verbose&&this.logResponse(a),a.data}catch(e){if(a=e,e.response){let i=e.response.status;if(i>=400&&i<500&&429!==i)throw new eC(e.response.data?.message||e.message,i,e.response.data)}r<this.config.retryTimes&&await this.sleep(1e3*this.config.retryDelay*(r+1))}if(a)if(_.isAxiosError(a)&&a.response)throw new eC(a.response.data?.message||a.message,a.response.status,a.response.data);else throw new eT(a.message);throw new eT("Request failed after retries")}async requestWithResponse(e,i,n,t){let a=null;for(let r=0;r<=this.config.retryTimes;r++)try{0===r&&this.verbose&&this.logRequest(e,i,n,t);let a=await this.axiosInstance.request({method:e,url:i,data:n,...t});return 0===r&&this.verbose&&this.logResponse(a),a}catch(e){if(a=e,e.response){let i=e.response.status;if(i>=400&&i<500&&429!==i)throw new eC(e.response.data?.message||e.message,i,e.response.data)}r<this.config.retryTimes&&await this.sleep(1e3*this.config.retryDelay*(r+1))}if(a)if(_.isAxiosError(a)&&a.response)throw new eC(a.response.data?.message||a.message,a.response.status,a.response.data);else throw new eT(a.message);throw new eT("Request failed after retries")}sanitizeHeaders(e){let i=["authorization","auth","api-key","apikey","api_key","x-api-key","x-auth-token","token","secret","password","passwd","pwd"],n={};for(let[t,a]of Object.entries(e)){let e=t.toLowerCase();i.some(i=>e.includes(i))?n[t]="***":n[t]=a}return n}logRequest(e,i,n,t){console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log("\uD83D\uDCE4 HTTP Request"),console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log(`Method: ${e}`),console.log(`URL: ${i}`);let a={};Object.assign(a,this.axiosInstance.defaults.headers.common||{},this.axiosInstance.defaults.headers[e.toLowerCase()]||{},t?.headers||{});let r=this.sanitizeHeaders(a);for(let[e,i]of(console.log("\nHeaders:"),Object.entries(r)))console.log(` ${e}: ${i}`);n&&(console.log("\nBody:"),console.log(JSON.stringify(n,null,2))),console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n")}logResponse(e){if(console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log("\uD83D\uDCE5 HTTP Response"),console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log(`Status: ${e.status} ${e.statusText}`),e.headers)for(let[i,n]of(console.log("\nHeaders:"),Object.entries(e.headers)))console.log(` ${i}: ${n}`);if(e.data){console.log("\nBody:");let i="string"==typeof e.data?e.data:JSON.stringify(e.data,null,2);console.log(i.length>1e3?i.substring(0,1e3)+"\n... (truncated)":i)}console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n")}sleep(e){return new Promise(i=>setTimeout(i,e))}}let eE=["x-tt-logid","x-tt-env","x-use-ppe","x-tt-env-fe","x-run-mode","rpc-persist-res-rec-biz-scene","rpc-persist-coze-record-root-id","rpc-persist-res-rec-root-entity-type","rpc-persist-res-rec-root-entity-id","rpc-persist-res-rec-ext-info"];class eL{static extractForwardHeaders(e){let i={};return e instanceof Headers?eE.forEach(n=>{let t=e.get(n);t&&(i[n]=t)}):eE.forEach(n=>{let t=e[n]||e[n.toLowerCase()];t&&(i[n]=t)}),i}}class e_{static DEFAULT_MODEL="doubao-seedream-5-0-260128";static DEFAULT_SIZE="2K";static DEFAULT_CUSTOM_SIZE="2048x2048";static DEFAULT_WATERMARK=!0;static DEFAULT_RESPONSE_FORMAT="url";static DEFAULT_OPTIMIZE_PROMPT_MODE="standard";static DEFAULT_SEQUENTIAL_IMAGE_GENERATION="disabled";static DEFAULT_SEQUENTIAL_IMAGE_GENERATION_MAX_IMAGES=15;static MIN_TOTAL_PIXELS=3686400;static MAX_TOTAL_PIXELS=0x1000000;static MIN_ASPECT_RATIO=1/16;static MAX_ASPECT_RATIO=16;static PRESET_SIZES=["2K","4K"]}function validateImageSize(e){if(e_.PRESET_SIZES.includes(e))return e;let i=e.match(/^(\d+)x(\d+)$/);if(!i)throw Error(`Invalid size format. Must be ${JSON.stringify(e_.PRESET_SIZES)} or 'WIDTHxHEIGHT' format (e.g., 2048x2048). Got: ${e}`);let n=parseInt(i[1],10),t=parseInt(i[2],10);if(n<=0||t<=0)throw Error(`Width and height must be positive integers. Got: ${e}`);let a=n*t;if(a<e_.MIN_TOTAL_PIXELS||a>e_.MAX_TOTAL_PIXELS)throw Error(`Total pixels must be between ${e_.MIN_TOTAL_PIXELS.toLocaleString()} and ${e_.MAX_TOTAL_PIXELS.toLocaleString()}. Got: ${a.toLocaleString()} (${n}x${t})`);let r=n/t;if(r<e_.MIN_ASPECT_RATIO||r>e_.MAX_ASPECT_RATIO)throw Error(`Aspect ratio must be between 1:16 and 16:1. Got: ${n}:${t} (${r.toFixed(2)})`);return e}function validateImageSizeOrDefault(e){try{return validateImageSize(e)}catch{return e_.DEFAULT_SIZE}}class eY{response;constructor(e){this.response=e}get success(){return!this.response.error&&this.response.data.every(e=>!e.error)}get imageUrls(){return this.response.data.filter(e=>e.url).map(e=>e.url)}get imageB64List(){return this.response.data.filter(e=>e.b64_json).map(e=>e.b64_json)}get errorMessages(){let e=[];for(let i of(this.response.error&&e.push(`API Error: ${this.response.error.message||"Unknown error"}`),this.response.data))i.error&&e.push(`Image generation error: ${i.error.message||"Unknown error"}`);return e}}function buildImageGenerationApiRequest(e,i){let n=validateImageSizeOrDefault(e.size||e_.DEFAULT_SIZE);return{model:i,prompt:e.prompt,size:n,watermark:e.watermark??e_.DEFAULT_WATERMARK,image:e.image,response_format:e.responseFormat||e_.DEFAULT_RESPONSE_FORMAT,optimize_prompt_options:{mode:e.optimizePromptMode||e_.DEFAULT_OPTIMIZE_PROMPT_MODE},sequential_image_generation:e.sequentialImageGeneration||e_.DEFAULT_SEQUENTIAL_IMAGE_GENERATION,sequential_image_generation_options:{max_images:e.sequentialImageGenerationMaxImages||e_.DEFAULT_SEQUENTIAL_IMAGE_GENERATION_MAX_IMAGES}}}class eD extends ex{constructor(e,i,n=!1){super(e,i,n)}async generate(e){let i=e.model||e_.DEFAULT_MODEL,n=buildImageGenerationApiRequest(e,i),t=await this.request("POST",`${this.config.baseUrl}/api/v3/images/generations`,n);if(t.error)throw new eC(`API returned error: ${t.error.message||"Unknown error"}`,t.error.code?parseInt(t.error.code):500,t.error);for(let e of t.data)if(e.error)throw new eC(`Image generation failed: ${e.error.message||"Unknown error"}`,e.error.code?parseInt(e.error.code):500,e.error);return t}async batchGenerate(e){return Promise.all(e.map(e=>this.generate(e)))}getResponseHelper(e){return new eY(e)}}function convertToApiFormat(e){let i={};return e.query&&(i.Query=e.query),e.search_type&&(i.SearchType=e.search_type),void 0!==e.count&&(i.Count=e.count),void 0!==e.need_summary&&(i.NeedSummary=e.need_summary),e.time_range&&(i.TimeRange=e.time_range),e.filter&&(i.Filter={NeedContent:e.filter.need_content||!1,NeedUrl:e.filter.need_url||!1,Sites:e.filter.sites,BlockHosts:e.filter.block_hosts}),i}function convertFromApiFormat(e){let i={};return void 0!==e.Id&&(i.id=e.Id),void 0!==e.SortId&&(i.sort_id=e.SortId),void 0!==e.Title&&(i.title=e.Title),void 0!==e.SiteName&&(i.site_name=e.SiteName),void 0!==e.Url&&(i.url=e.Url),void 0!==e.Snippet&&(i.snippet=e.Snippet),void 0!==e.Summary&&(i.summary=e.Summary),void 0!==e.Content&&(i.content=e.Content),void 0!==e.PublishTime&&(i.publish_time=e.PublishTime),void 0!==e.LogoUrl&&(i.logo_url=e.LogoUrl),void 0!==e.RankScore&&(i.rank_score=e.RankScore),void 0!==e.AuthInfoDes&&(i.auth_info_des=e.AuthInfoDes),void 0!==e.AuthInfoLevel&&(i.auth_info_level=e.AuthInfoLevel),e.Image&&(i.image={url:e.Image.Url,width:e.Image.Width,height:e.Image.Height,shape:e.Image.Shape}),i}class ev extends ex{constructor(e,i,n=!1){super(e,i,n)}async search(e){let i,n=convertToApiFormat(e),t=await this.request("POST",`${this.config.baseUrl}/api/search_api/web_search`,n),a=t.ResponseMetadata||{};if(a.Error)throw new eC(`Search failed: ${a.Error}`,500,a.Error);let r=t.Result||{},o=[];if(r.WebResults)for(let e of r.WebResults)o.push(convertFromApiFormat(e));let u=[];if(r.ImageResults)for(let e of r.ImageResults)u.push(convertFromApiFormat(e));return r.Choices&&r.Choices.length>0&&(i=r.Choices[0].Message?.Content),{web_items:o,image_items:u,summary:i}}async webSearch(e,i=10,n=!0){return this.search({query:e,search_type:"web",count:i,need_summary:n})}async webSearchWithSummary(e,i=10){return this.search({query:e,search_type:"web_summary",count:i,need_summary:!0})}async imageSearch(e,i=10){return this.search({query:e,search_type:"image",count:i,need_summary:!1})}async advancedSearch(e,i={}){let n={need_content:i.needContent,need_url:i.needUrl,sites:i.sites,block_hosts:i.blockHosts};return this.search({query:e,search_type:i.searchType||"web",count:i.count||10,filter:n,need_summary:void 0===i.needSummary||i.needSummary,time_range:i.timeRange})}}class eA{static DEFAULT_SPEAKER="zh_female_xiaohe_uranus_bigtts";static DEFAULT_AUDIO_FORMAT="mp3";static DEFAULT_SAMPLE_RATE=24e3;static DEFAULT_SPEECH_RATE=0;static DEFAULT_LOUDNESS_RATE=0}function buildTTSApiRequest(e){let i={user:{uid:e.uid},req_params:{speaker:e.speaker||eA.DEFAULT_SPEAKER,audio_params:{format:e.audioFormat||eA.DEFAULT_AUDIO_FORMAT,sample_rate:e.sampleRate||eA.DEFAULT_SAMPLE_RATE,speech_rate:e.speechRate??eA.DEFAULT_SPEECH_RATE,loudness_rate:e.loudnessRate??eA.DEFAULT_LOUDNESS_RATE}}};return e.text?i.req_params.text=e.text:e.ssml&&(i.req_params.ssml=e.ssml),i}function buildASRApiRequest(e){let i={};return e.url?i.url=e.url:e.base64Data&&(i.data=e.base64Data),{user:{uid:e.uid},audio:i}}class eN extends ex{constructor(e,i,n=!1){super(e,i,n)}async synthesize(e){if(!e.text&&!e.ssml)throw new ew("必须提供 text 或 ssml 其中之一");let i=buildTTSApiRequest(e),n={...this.config.getHeaders(),Connection:"keep-alive"};try{let e=await _.post(`${this.config.baseUrl}/api/v3/tts/unidirectional`,i,{headers:n,responseType:"stream",timeout:this.config.timeout});return await this.processStreamResponse(e)}catch(e){if(e.response)throw new eC(`TTS 请求失败: ${e.message}`,e.response.status,e.response.data);throw new eC(`TTS 请求异常: ${e.message}`,500)}}async processStreamResponse(e){return new Promise((i,n)=>{let t="",a=0,r="";e.data.on("data",e=>{let o=(r+=e.toString("utf-8")).split("\n");for(let e of(r=o.pop()||"",o))if(e.trim()&&e.startsWith("data:"))try{let r=e.replace("data:","").trim();if(!r)continue;let o=JSON.parse(r);if(0===o.code&&o.data){let e=Buffer.from(o.data,"base64");a+=e.length}else if(2e7===o.code){o.url&&(t=o.url),i({audioUri:t,audioSize:a});return}else if(o.code>0)return void n(new eC(`合成音频失败: ${o.message||""}`,o.code))}catch(e){n(new eC(`响应解析失败: ${e.message}`,500));return}}),e.data.on("end",()=>{t||0!==a?i({audioUri:t,audioSize:a}):n(new eC("未收到完整的音频数据",500))}),e.data.on("error",e=>{n(new eC(`流处理错误: ${e.message}`,500))})})}}class eP extends ex{constructor(e,i,n=!1){super(e,i,n)}async recognize(e){if(!e.url&&!e.base64Data)throw new ew("必须提供 url 或 base64Data 其中之一");let i=buildASRApiRequest(e);try{let e=await this.requestWithResponse("POST",`${this.config.baseUrl}/api/v3/auc/bigmodel/recognize/flash`,i),n=e.headers["x-api-status-code"]||"0",t=e.headers["x-api-message"]||"";if("20000000"!==n)throw new eC(`ASR 识别失败,状态码: ${n}, 错误信息: ${t}`,e.status,{code:n,message:t});let a=e.data.result||{};return{text:a.text||"",duration:a.duration,utterances:a.utterances,rawData:e.data}}catch(e){if(e instanceof eC)throw e;throw new eC(`ASR 请求异常: ${e.message}`,500)}}}class eZ{static DEFAULT_MODEL="doubao-seedance-1-5-pro-251215";static DEFAULT_RESOLUTION="720p";static DEFAULT_RATIO="16:9";static DEFAULT_DURATION=5;static DEFAULT_WATERMARK=!0;static DEFAULT_CAMERA_FIXED=!1;static DEFAULT_GENERATE_AUDIO=!0}class eR extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}async videoGeneration(e,i){let n=(i?.maxWaitTime??900)*1e3,t={model:i?.model||eZ.DEFAULT_MODEL,content:e};i?.callbackUrl&&(t.callback_url=i.callbackUrl),i?.returnLastFrame&&(t.return_last_frame=i.returnLastFrame),t.resolution=i?.resolution??eZ.DEFAULT_RESOLUTION,t.ratio=i?.ratio??eZ.DEFAULT_RATIO,t.duration=i?.duration??eZ.DEFAULT_DURATION,t.watermark=i?.watermark??eZ.DEFAULT_WATERMARK,i?.seed!==void 0&&(t.seed=i.seed),t.camerafixed=i?.camerafixed??eZ.DEFAULT_CAMERA_FIXED,t.generate_audio=i?.generateAudio??eZ.DEFAULT_GENERATE_AUDIO;let a=null,r=0;for(;r<3;)try{if(!(a=(await this.request("POST",`${this.baseUrl}/api/v3/contents/generations/tasks`,t)).id))throw new eC("创建视频生成任务失败:响应中缺少任务ID",500);this.verbose&&console.log(`视频生成任务创建成功,任务ID: ${a}`);break}catch(i){r++;let e=i instanceof Error?i.message:String(i);if(this.verbose&&console.error(`创建视频生成任务失败(尝试 ${r}/3): ${e}`),r>=3)throw new eC(`创建视频生成任务失败,已重试3次: ${e}`,500);if(e.toLowerCase().includes("rate limit")||e.includes("429")){let e=Math.min(2**r*1e3,1e4);this.verbose&&console.warn(`遇到速率限制,等待 ${e/1e3} 秒后重试...`),await this.sleep(e)}else if(e.toLowerCase().includes("timeout"))this.verbose&&console.warn("请求超时,等待 2 秒后重试..."),await this.sleep(2e3);else throw i}let o=Date.now(),u=0;for(;Date.now()-o<n;){u++;try{let e=await this.request("GET",`${this.baseUrl}/api/v3/contents/generations/tasks/${a}`),i=e.status;if(this.verbose&&console.log(`任务 ${a} 状态检查 #${u}: ${i}`),"succeeded"===i){let i=e.content?.video_url||null,n=e.content?.last_frame_url||"";if(!i)throw new eC(`视频生成成功但响应中缺少视频URL,任务ID: ${a}`,500);return this.verbose&&console.log(`视频生成成功,任务ID: ${a}, 视频URL: ${i}`),{videoUrl:i,response:e,lastFrameUrl:n}}if("failed"===i){let i=e.error_message||"未知错误";throw this.verbose&&console.error(`视频生成失败,任务ID: ${a}, 错误: ${i}`),new eC(`视频生成失败: ${i}`,500)}if("cancelled"===i)return this.verbose&&console.warn(`视频生成任务被取消,任务ID: ${a}`),{videoUrl:null,response:e,lastFrameUrl:""};else if("queued"===i||"running"===i){await this.sleep(5e3);continue}else{this.verbose&&console.warn(`未知的任务状态: ${i},任务ID: ${a}`),await this.sleep(5e3);continue}}catch(i){let e=i instanceof Error?i.message:String(i);if(this.verbose&&console.error(`查询任务状态失败,任务ID: ${a}, 错误: ${e}`),e.toLowerCase().includes("not found")||e.includes("404"))throw new eC(`任务不存在或已过期,任务ID: ${a}`,404);if(Date.now()-o>=n)throw i;await this.sleep(5e3);continue}}let s=Math.floor((Date.now()-o)/1e3);throw this.verbose&&console.error(`视频生成超时,任务ID: ${a}, 已等待: ${s}秒`),new eC(`视频生成超时,已等待 ${s} 秒,任务ID: ${a}`,408)}async videoGenerationAsync(e,i){return this.videoGeneration(e,i)}}class eM{static DEFAULT_URL_EXPIRE=86400;static MAX_URL_EXPIRE=2592e3;static MIN_URL_EXPIRE=1;static MIN_AUDIO_URL_EXPIRE=3600;static DEFAULT_FONT_TYPE="1525745";static DEFAULT_FONT_SIZE=36;static DEFAULT_FONT_COLOR="#FFFFFFFF";static DEFAULT_BACKGROUND_COLOR="#00000000";static DEFAULT_BACKGROUND_BORDER_WIDTH=0;static DEFAULT_FONT_POS_HEIGHT="10%";static DEFAULT_FONT_POS_X="0";static DEFAULT_FONT_POS_Y="90%";static DEFAULT_FONT_POS_WIDTH="100%";static DEFAULT_SYNC_METHOD="trim";static DEFAULT_SYNC_MODE="video";static DEFAULT_SUBTITLE_TYPE="srt";static DEFAULT_AUDIO_FORMAT="m4a"}class eJ extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}async extractByKeyFrame(e){let i=await this.request("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=frame_extractor_by_key_frame`,{url:e});if(0!==i.code)throw new eC(`Key frame extraction failed: ${i.msg||"Unknown error"}`,i.code);return i}async extractByInterval(e,i){let n=await this.request("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=frame_extractor_by_interval`,{url:e,interval_ms:i});if(0!==n.code)throw new eC(`Interval frame extraction failed: ${n.msg||"Unknown error"}`,n.code);return n}async extractByCount(e,i){let n=await this.request("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=frame_extractor_by_count`,{url:e,count:i});if(0!==n.code)throw new eC(`Count-based frame extraction failed: ${n.msg||"Unknown error"}`,n.code);return n}}class ek extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}validateUrlExpire(e,i=eM.MIN_URL_EXPIRE){if(void 0===e)return eM.DEFAULT_URL_EXPIRE;if(e<i||e>eM.MAX_URL_EXPIRE)throw new eC(`url_expire must be between ${i} and ${eM.MAX_URL_EXPIRE} seconds`,400);return e}async addSubtitles(e,i,n){let t=this.validateUrlExpire(n?.urlExpire),a={video:e,subtitle_config:{background_border_width:i.background_border_width??eM.DEFAULT_BACKGROUND_BORDER_WIDTH,font_type:i.font_type??eM.DEFAULT_FONT_TYPE,font_pos_config:{height:i.font_pos_config.height??eM.DEFAULT_FONT_POS_HEIGHT,pos_x:i.font_pos_config.pos_x??eM.DEFAULT_FONT_POS_X,pos_y:i.font_pos_config.pos_y??eM.DEFAULT_FONT_POS_Y,width:i.font_pos_config.width??eM.DEFAULT_FONT_POS_WIDTH}},url_expire:t};void 0!==i.border_width&&(a.subtitle_config.border_width=i.border_width),void 0!==i.font_color&&(a.subtitle_config.font_color=i.font_color),void 0!==i.font_size&&(a.subtitle_config.font_size=i.font_size),void 0!==i.background_color&&(a.subtitle_config.background_color=i.background_color),void 0!==i.border_color&&(a.subtitle_config.border_color=i.border_color),n?.subtitleUrl&&(a.subtitle_url=n.subtitleUrl),n?.textList&&n.textList.length>0&&(a.text_list=n.textList.map(e=>({end_time:e.end_time,start_time:e.start_time,text:e.text})));let r=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=add_subtitles`,a),o=r.headers["x-api-status-code"]||"0",u=r.headers["x-api-message"]||"";if("0"!==o)throw new eC(`Add subtitles failed, status code: ${o}, error: ${u}`,parseInt(o)||500);if(!r.data.url)throw new eC("Add subtitles failed: returned URL is empty",500);return r.data}async concatVideos(e,i){if(!e||0===e.length)throw new eC("videos list cannot be empty",400);let n={videos:e,url_expire:this.validateUrlExpire(i?.urlExpire)};i?.transitions&&i.transitions.length>0&&(n.transitions=i.transitions);let t=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=concat_videos`,n),a=t.headers["x-api-status-code"]||"0",r=t.headers["x-api-message"]||"";if("0"!==a)throw new eC(`Concat videos failed, status code: ${a}, error: ${r}`,parseInt(a)||500);if(!t.data.url)throw new eC("Concat videos failed: returned URL is empty",500);return t.data}async compileVideoAudio(e,i,n){let t={video:e,audio:i,url_expire:this.validateUrlExpire(n?.urlExpire)};n?.isVideoAudioSync!==void 0&&(t.is_video_audio_sync=n.isVideoAudioSync),n?.outputSync&&(t.output_sync={sync_method:n.outputSync.sync_method??eM.DEFAULT_SYNC_METHOD,sync_mode:n.outputSync.sync_mode??eM.DEFAULT_SYNC_MODE}),n?.isAudioReserve!==void 0&&(t.is_audio_reserve=n.isAudioReserve);let a=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=compile_video_audio`,t),r=a.headers["x-api-status-code"]||"0",o=a.headers["x-api-message"]||"";if("0"!==r)throw new eC(`Compile video audio failed, status code: ${r}, error: ${o}`,parseInt(r)||500);if(!a.data.url)throw new eC("Compile video audio failed: returned URL is empty",500);return a.data}async audioToSubtitle(e,i){let n={source:e,url_expire:this.validateUrlExpire(i?.urlExpire)};i?.subtitleType&&(n.subtitle_type=i.subtitleType);let t=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=audio_to_subtitle`,n),a=t.headers["x-api-status-code"]||"0",r=t.headers["x-api-message"]||"";if("0"!==a)throw new eC(`Audio to subtitle failed, status code: ${a}, error: ${r}`,parseInt(a)||500);if(!t.data.url)throw new eC("Audio to subtitle failed: returned URL is empty",500);return t.data}async extractAudio(e,i){let n={video:e,url_expire:this.validateUrlExpire(i?.urlExpire,eM.MIN_AUDIO_URL_EXPIRE)};i?.format&&(n.format=i.format);let t=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=audio_extract`,n),a=t.headers["x-api-status-code"]||"0",r=t.headers["x-api-message"]||"";if("0"!==a)throw new eC(`Extract audio failed, status code: ${a}, error: ${r}`,parseInt(a)||500);if(!t.data.url)throw new eC("Extract audio failed: returned URL is empty",500);return t.data}async videoTrim(e,i){let n=this.validateUrlExpire(i?.urlExpire);if(i?.startTime!==void 0&&i.startTime<0)throw new eC("start_time must be greater than or equal to 0",400);if(i?.endTime!==void 0&&i.endTime<0)throw new eC("end_time must be greater than or equal to 0",400);let t={video:e,url_expire:n};i?.startTime!==void 0&&(t.start_time=i.startTime),i?.endTime!==void 0&&(t.end_time=i.endTime);let a=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=video_trim`,t),r=a.headers["x-api-status-code"]||"0",o=a.headers["x-api-message"]||"";if("0"!==r)throw new eC(`Video trim failed, status code: ${r}, error: ${o}`,parseInt(r)||500);if(!a.data.url)throw new eC("Video trim failed: returned URL is empty",500);return a.data}}let eB={MODEL:"doubao-seed-1-8-251228",THINKING:"disabled",CACHING:"disabled",TEMPERATURE:1,STREAMING:!0};class eH{config;customHeaders;constructor(e,i){this.config=e||new eS,this.customHeaders=i}createLLM(e,i,n){let t={};t.thinking={type:e.thinking??eB.THINKING},e.caching&&"disabled"!==e.caching&&(t.caching={type:e.caching});let a={Authorization:`Bearer ${this.config.apiKey}`,"X-Client-Sdk":"coze-coding-dev-sdk-typescript/0.3.0",...this.customHeaders,...n};return i&&(a["X-Previous-Response-Id"]=i),new Y({model:e.model||eB.MODEL,apiKey:this.config.apiKey,configuration:{baseURL:this.config.modelBaseUrl,defaultHeaders:a},streaming:void 0!==e.streaming?e.streaming:eB.STREAMING,temperature:void 0!==e.temperature?e.temperature:eB.TEMPERATURE,modelKwargs:Object.keys(t).length>0?t:void 0})}convertMessages(e){return e.map(e=>{let i=this.convertContent(e.content);switch(e.role){case"system":return new A(i);case"user":return new v(i);case"assistant":return new D(i);default:throw Error(`Unknown message role: ${e.role}`)}})}convertContent(e){return"string"==typeof e?e:e.map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("image_url"===e.type){let i={url:e.image_url.url};return e.image_url.detail&&(i.detail=e.image_url.detail),{type:"image_url",image_url:i}}if("video_url"===e.type){let i={url:e.video_url.url};return void 0!==e.video_url.fps&&(i.fps=e.video_url.fps),{type:"video_url",video_url:i}}return e})}async *stream(e,i={},n,t){let a=this.createLLM(i,n,t),r=this.convertMessages(e);for await(let e of(await a.stream(r)))yield e}async invoke(e,i={},n,t){let a="";for await(let r of this.stream(e,i,n,t))r.content&&(a+=r.content.toString());return{content:a}}}var eF=((F={})[F.TEXT=0]="TEXT",F[F.URL=1]="URL",F[F.URI=2]="URI",F);class eX extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}async search(e,i,n=5,t=0,a){let r={query:e,top_k:n,min_score:t};i&&(r.dataset=i);let o=`${this.baseUrl}/v1/knowledge_base/recall`,u={...a};this.config.apiKey&&(u["x-coze-token"]=`Bearer ${this.config.apiKey}`);let s=await this.request("POST",o,r,{headers:u});return{chunks:(s.data||[]).map(e=>({content:e.slice||"",score:e.score||0,chunk_id:e.chunk_id,doc_id:e.doc_id})),code:s.code||0,msg:s.msg||""}}async addDocuments(e,i,n,t){let a={dataset:i,data:e};n&&(a.chunk_config=Object.fromEntries(Object.entries(n).filter(([e,i])=>void 0!==i)));let r=`${this.baseUrl}/v1/knowledge_base/batch_import`,o={...t};this.config.apiKey&&(o["x-coze-token"]=`Bearer ${this.config.apiKey}`);let u=await this.request("POST",r,a,{headers:o}),s=u.msg||"";return 0===u.code&&(s="成功!文档正在异步导入中,请稍候。您可以查看数据库中的 'knowledge' schema 来验证导入状态。"),{doc_ids:u.doc_ids,code:u.code||0,msg:s}}}let eI=Symbol.for("drizzle:entityKind");function entity_is(e,i){if(!e||"object"!=typeof e)return!1;if(e instanceof i)return!0;if(!Object.prototype.hasOwnProperty.call(i,eI))throw Error(`Class "${i.name??"<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let n=Object.getPrototypeOf(e).constructor;if(n)for(;n;){if(eI in n&&n[eI]===i[eI])return!0;n=Object.getPrototypeOf(n)}return!1}Symbol.for("drizzle:hasOwnEntityKind");class eO{static [eI]="ConsoleLogWriter";write(e){console.log(e)}}class eQ{static [eI]="DefaultLogger";writer;constructor(e){this.writer=e?.writer??new eO}logQuery(e,i){let n=i.map(e=>{try{return JSON.stringify(e)}catch{return String(e)}}),t=n.length?` -- params: [${n.join(", ")}]`:"";this.writer.write(`Query: ${e}${t}`)}}class eG{static [eI]="NoopLogger";logQuery(){}}class eU{constructor(e,i){this.table=e,this.config=i,this.name=i.name,this.keyAsName=i.keyAsName,this.notNull=i.notNull,this.default=i.default,this.defaultFn=i.defaultFn,this.onUpdateFn=i.onUpdateFn,this.hasDefault=i.hasDefault,this.primary=i.primaryKey,this.isUnique=i.isUnique,this.uniqueName=i.uniqueName,this.uniqueType=i.uniqueType,this.dataType=i.dataType,this.columnType=i.columnType,this.generated=i.generated,this.generatedIdentity=i.generatedIdentity}static [eI]="Column";name;keyAsName;primary;notNull;default;defaultFn;onUpdateFn;hasDefault;isUnique;uniqueName;uniqueType;dataType;columnType;enumValues=void 0;generated=void 0;generatedIdentity=void 0;config;mapFromDriverValue(e){return e}mapToDriverValue(e){return e}shouldDisableInsert(){return void 0!==this.config.generated&&"byDefault"!==this.config.generated.type}}class eK{static [eI]="ColumnBuilder";config;constructor(e,i,n){this.config={name:e,keyAsName:""===e,notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:i,columnType:n,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default(e){return this.config.default=e,this.config.hasDefault=!0,this}$defaultFn(e){return this.config.defaultFn=e,this.config.hasDefault=!0,this}$default=this.$defaultFn;$onUpdateFn(e){return this.config.onUpdateFn=e,this.config.hasDefault=!0,this}$onUpdate=this.$onUpdateFn;primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName(e){""===this.config.name&&(this.config.name=e)}}let e$=Symbol.for("drizzle:Name");class ez{static [eI]="PgForeignKeyBuilder";reference;_onUpdate="no action";_onDelete="no action";constructor(e,i){this.reference=()=>{let{name:i,columns:n,foreignColumns:t}=e();return{name:i,columns:n,foreignTable:t[0].table,foreignColumns:t}},i&&(this._onUpdate=i.onUpdate,this._onDelete=i.onDelete)}onUpdate(e){return this._onUpdate=void 0===e?"no action":e,this}onDelete(e){return this._onDelete=void 0===e?"no action":e,this}build(e){return new eW(e,this)}}class eW{constructor(e,i){this.table=e,this.reference=i.reference,this.onUpdate=i._onUpdate,this.onDelete=i._onDelete}static [eI]="PgForeignKey";reference;onUpdate;onDelete;getName(){let{name:e,columns:i,foreignColumns:n}=this.reference(),t=i.map(e=>e.name),a=n.map(e=>e.name),r=[this.table[e$],...t,n[0].table[e$],...a];return e??`${r.join("_")}_fk`}}function iife(e,...i){return e(...i)}function uniqueKeyName(e,i){return`${e[e$]}_${i.join("_")}_unique`}class ej{constructor(e,i){this.name=i,this.columns=e}static [eI]=null;columns;nullsNotDistinctConfig=!1;nullsNotDistinct(){return this.nullsNotDistinctConfig=!0,this}build(e){return new e0(e,this.columns,this.nullsNotDistinctConfig,this.name)}}class eV{static [eI]=null;name;constructor(e){this.name=e}on(...e){return new ej(e,this.name)}}class e0{constructor(e,i,n,t){this.table=e,this.columns=i,this.name=t??uniqueKeyName(this.table,this.columns.map(e=>e.name)),this.nullsNotDistinct=n}static [eI]=null;columns;name;nullsNotDistinct=!1;getName(){return this.name}}function parsePgArrayValue(e,i,n){for(let t=i;t<e.length;t++){let a=e[t];if("\\"===a){t++;continue}if('"'===a)return[e.slice(i,t).replace(/\\/g,""),t+1];if(!n&&(","===a||"}"===a))return[e.slice(i,t).replace(/\\/g,""),t]}return[e.slice(i).replace(/\\/g,""),e.length]}function parsePgNestedArray(e,i=0){let n=[],t=i,a=!1;for(;t<e.length;){let r=e[t];if(","===r){(a||t===i)&&n.push(""),a=!0,t++;continue}if(a=!1,"\\"===r){t+=2;continue}if('"'===r){let[i,a]=parsePgArrayValue(e,t+1,!0);n.push(i),t=a;continue}if("}"===r)return[n,t+1];if("{"===r){let[i,a]=parsePgNestedArray(e,t+1);n.push(i),t=a;continue}let[o,u]=parsePgArrayValue(e,t,!1);n.push(o),t=u}return[n,t]}function parsePgArray(e){let[i]=parsePgNestedArray(e,1);return i}function makePgArray(e){return`{${e.map(e=>Array.isArray(e)?makePgArray(e):"string"==typeof e?`"${e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`:`${e}`).join(",")}}`}class e1 extends eK{foreignKeyConfigs=[];static [eI]="PgColumnBuilder";array(e){return new e8(this.config.name,this,e)}references(e,i={}){return this.foreignKeyConfigs.push({ref:e,actions:i}),this}unique(e,i){return this.config.isUnique=!0,this.config.uniqueName=e,this.config.uniqueType=i?.nulls,this}generatedAlwaysAs(e){return this.config.generated={as:e,type:"always",mode:"stored"},this}buildForeignKeys(e,i){return this.foreignKeyConfigs.map(({ref:n,actions:t})=>iife((n,t)=>{let a=new ez(()=>({columns:[e],foreignColumns:[n()]}));return t.onUpdate&&a.onUpdate(t.onUpdate),t.onDelete&&a.onDelete(t.onDelete),a.build(i)},n,t))}buildExtraConfigColumn(e){return new e2(e,this.config)}}class e3 extends eU{constructor(e,i){i.uniqueName||(i.uniqueName=uniqueKeyName(e,[i.name])),super(e,i),this.table=e}static [eI]="PgColumn"}class e2 extends e3{static [eI]="ExtraConfigColumn";getSQLType(){return this.getSQLType()}indexConfig={order:this.config.order??"asc",nulls:this.config.nulls??"last",opClass:this.config.opClass};defaultConfig={order:"asc",nulls:"last",opClass:void 0};asc(){return this.indexConfig.order="asc",this}desc(){return this.indexConfig.order="desc",this}nullsFirst(){return this.indexConfig.nulls="first",this}nullsLast(){return this.indexConfig.nulls="last",this}op(e){return this.indexConfig.opClass=e,this}}class e4{static [eI]=null;constructor(e,i,n,t){this.name=e,this.keyAsName=i,this.type=n,this.indexConfig=t}name;keyAsName;type;indexConfig}class e8 extends e1{static [eI]="PgArrayBuilder";constructor(e,i,n){super(e,"array","PgArray"),this.config.baseBuilder=i,this.config.size=n}build(e){let i=this.config.baseBuilder.build(e);return new e6(e,this.config,i)}}class e6 extends e3{constructor(e,i,n,t){super(e,i),this.baseColumn=n,this.range=t,this.size=i.size}size;static [eI]="PgArray";getSQLType(){return`${this.baseColumn.getSQLType()}[${"number"==typeof this.size?this.size:""}]`}mapFromDriverValue(e){return"string"==typeof e&&(e=parsePgArray(e)),e.map(e=>this.baseColumn.mapFromDriverValue(e))}mapToDriverValue(e,i=!1){let n=e.map(e=>null===e?null:entity_is(this.baseColumn,e6)?this.baseColumn.mapToDriverValue(e,!0):this.baseColumn.mapToDriverValue(e));return i?n:makePgArray(n)}}class e5 extends e1{static [eI]="PgEnumObjectColumnBuilder";constructor(e,i){super(e,"string","PgEnumObjectColumn"),this.config.enum=i}build(e){return new e7(e,this.config)}}class e7 extends e3{static [eI]="PgEnumObjectColumn";enum;enumValues=this.config.enum.enumValues;constructor(e,i){super(e,i),this.enum=i.enum}getSQLType(){return this.enum.enumName}}let e9=Symbol.for("drizzle:isPgEnum");function isPgEnum(e){return!!e&&"function"==typeof e&&e9 in e&&!0===e[e9]}class ie extends e1{static [eI]="PgEnumColumnBuilder";constructor(e,i){super(e,"string","PgEnumColumn"),this.config.enum=i}build(e){return new it(e,this.config)}}class it extends e3{static [eI]="PgEnumColumn";enum=this.config.enum;enumValues=this.config.enum.enumValues;constructor(e,i){super(e,i),this.enum=i.enum}getSQLType(){return this.enum.enumName}}class ia{static [eI]="Subquery";constructor(e,i,n,t=!1,a=[]){this._={brand:"Subquery",sql:e,selectedFields:i,alias:n,isWith:t,usedTables:a}}}class ir extends ia{static [eI]="WithSubquery"}let io=(n,t)=>e?(i||(i=e.trace.getTracer("drizzle-orm","0.45.1")),iife((e,i)=>i.startActiveSpan(n,i=>{try{return t(i)}catch(n){throw i.setStatus({code:e.SpanStatusCode.ERROR,message:n instanceof Error?n.message:"Unknown error"}),n}finally{i.end()}}),e,i)):t(),iu=Symbol.for("drizzle:ViewBaseConfig"),is=Symbol.for("drizzle:Schema"),il=Symbol.for("drizzle:Columns"),ih=Symbol.for("drizzle:ExtraConfigColumns"),ig=Symbol.for("drizzle:OriginalName"),ic=Symbol.for("drizzle:BaseName"),id=Symbol.for("drizzle:IsAlias"),ip=Symbol.for("drizzle:ExtraConfigBuilder"),im=Symbol.for("drizzle:IsDrizzleTable");class iy{static [eI]="Table";static Symbol={Name:e$,Schema:is,OriginalName:ig,Columns:il,ExtraConfigColumns:ih,BaseName:ic,IsAlias:id,ExtraConfigBuilder:ip};[e$];[ig];[is];[il];[ih];[ic];[id]=!1;[im]=!0;[ip]=void 0;constructor(e,i,n){this[e$]=this[ig]=e,this[is]=i,this[ic]=n}}function getTableUniqueName(e){return`${e[is]??"public"}.${e[e$]}`}class iS{static [eI]=null}function isSQLWrapper(e){return null!=e&&"function"==typeof e.getSQL}function mergeQueries(e){let i={sql:"",params:[]};for(let n of e)i.sql+=n.sql,i.params.push(...n.params),n.typings?.length&&(i.typings||(i.typings=[]),i.typings.push(...n.typings));return i}class ib{static [eI]="StringChunk";value;constructor(e){this.value=Array.isArray(e)?e:[e]}getSQL(){return new iC([this])}}class iC{constructor(e){for(let i of(this.queryChunks=e,e))if(entity_is(i,iy)){let e=i[iy.Symbol.Schema];this.usedTables.push(void 0===e?i[iy.Symbol.Name]:e+"."+i[iy.Symbol.Name])}}static [eI]="SQL";decoder=iw;shouldInlineParams=!1;usedTables=[];append(e){return this.queryChunks.push(...e.queryChunks),this}toQuery(e){return io("drizzle.buildSQL",i=>{let n=this.buildQueryFromSourceParams(this.queryChunks,e);return i?.setAttributes({"drizzle.query.text":n.sql,"drizzle.query.params":JSON.stringify(n.params)}),n})}buildQueryFromSourceParams(e,i){let n=Object.assign({},i,{inlineParams:i.inlineParams||this.shouldInlineParams,paramStartIndex:i.paramStartIndex||{value:0}}),{casing:t,escapeName:a,escapeParam:r,prepareTyping:o,inlineParams:u,paramStartIndex:s}=n;return mergeQueries(e.map(e=>{if(entity_is(e,ib))return{sql:e.value.join(""),params:[]};if(entity_is(e,iT))return{sql:a(e.value),params:[]};if(void 0===e)return{sql:"",params:[]};if(Array.isArray(e)){let i=[new ib("(")];for(let[n,t]of e.entries())i.push(t),n<e.length-1&&i.push(new ib(", "));return i.push(new ib(")")),this.buildQueryFromSourceParams(i,n)}if(entity_is(e,iC))return this.buildQueryFromSourceParams(e.queryChunks,{...n,inlineParams:u||e.shouldInlineParams});if(entity_is(e,iy)){let i=e[iy.Symbol.Schema],n=e[iy.Symbol.Name];return{sql:void 0===i||e[id]?a(n):a(i)+"."+a(n),params:[]}}if(entity_is(e,eU)){let n=t.getColumnCasing(e);if("indexes"===i.invokeSource)return{sql:a(n),params:[]};let r=e.table[iy.Symbol.Schema];return{sql:e.table[id]||void 0===r?a(e.table[iy.Symbol.Name])+"."+a(n):a(r)+"."+a(e.table[iy.Symbol.Name])+"."+a(n),params:[]}}if(entity_is(e,iv)){let i=e[iu].schema,n=e[iu].name;return{sql:void 0===i||e[iu].isAlias?a(n):a(i)+"."+a(n),params:[]}}if(entity_is(e,iE)){if(entity_is(e.value,iY))return{sql:r(s.value++,e),params:[e],typings:["none"]};let i=null===e.value?null:e.encoder.mapToDriverValue(e.value);if(entity_is(i,iC))return this.buildQueryFromSourceParams([i],n);if(u)return{sql:this.mapInlineParam(i,n),params:[]};let t=["none"];return o&&(t=[o(e.encoder)]),{sql:r(s.value++,i),params:[i],typings:t}}return entity_is(e,iY)?{sql:r(s.value++,e),params:[e],typings:["none"]}:entity_is(e,iC.Aliased)&&void 0!==e.fieldAlias?{sql:a(e.fieldAlias),params:[]}:entity_is(e,ia)?e._.isWith?{sql:a(e._.alias),params:[]}:this.buildQueryFromSourceParams([new ib("("),e._.sql,new ib(") "),new iT(e._.alias)],n):isPgEnum(e)?e.schema?{sql:a(e.schema)+"."+a(e.enumName),params:[]}:{sql:a(e.enumName),params:[]}:isSQLWrapper(e)?e.shouldOmitSQLParens?.()?this.buildQueryFromSourceParams([e.getSQL()],n):this.buildQueryFromSourceParams([new ib("("),e.getSQL(),new ib(")")],n):u?{sql:this.mapInlineParam(e,n),params:[]}:{sql:r(s.value++,e),params:[e],typings:["none"]}}))}mapInlineParam(e,{escapeString:i}){if(null===e)return"null";if("number"==typeof e||"boolean"==typeof e)return e.toString();if("string"==typeof e)return i(e);if("object"==typeof e){let n=e.toString();return"[object Object]"===n?i(JSON.stringify(e)):i(n)}throw Error("Unexpected param value: "+e)}getSQL(){return this}as(e){return void 0===e?this:new iC.Aliased(this,e)}mapWith(e){return this.decoder="function"==typeof e?{mapFromDriverValue:e}:e,this}inlineParams(){return this.shouldInlineParams=!0,this}if(e){return e?this:void 0}}class iT{constructor(e){this.value=e}static [eI]="Name";brand;getSQL(){return new iC([this])}}function isDriverValueEncoder(e){return"object"==typeof e&&null!==e&&"mapToDriverValue"in e&&"function"==typeof e.mapToDriverValue}let iw={mapFromDriverValue:e=>e},ix={mapToDriverValue:e=>e};({...iw,...ix});class iE{constructor(e,i=ix){this.value=e,this.encoder=i}static [eI]="Param";brand;getSQL(){return new iC([this])}}function sql_sql(e,...i){let n=[];for(let[t,a]of((i.length>0||e.length>0&&""!==e[0])&&n.push(new ib(e[0])),i.entries()))n.push(a,new ib(e[t+1]));return new iC(n)}(X=sql_sql||(sql_sql={})).empty=function(){return new iC([])},X.fromList=function(e){return new iC(e)},X.raw=function(e){return new iC([new ib(e)])},X.join=function(e,i){let n=[];for(let[t,a]of e.entries())t>0&&void 0!==i&&n.push(i),n.push(a);return new iC(n)},X.identifier=function(e){return new iT(e)},X.placeholder=function(e){return new iY(e)},X.param=function(e,i){return new iE(e,i)};var iL=iC||(iC={});class i_{constructor(e,i){this.sql=e,this.fieldAlias=i}static [eI]="SQL.Aliased";isSelectionField=!1;getSQL(){return this.sql}clone(){return new i_(this.sql,this.fieldAlias)}}iL.Aliased=i_;class iY{constructor(e){this.name=e}static [eI]="Placeholder";getSQL(){return new iC([this])}}function fillPlaceholders(e,i){return e.map(e=>{if(entity_is(e,iY)){if(!(e.name in i))throw Error(`No value for placeholder "${e.name}" was provided`);return i[e.name]}if(entity_is(e,iE)&&entity_is(e.value,iY)){if(!(e.value.name in i))throw Error(`No value for placeholder "${e.value.name}" was provided`);return e.encoder.mapToDriverValue(i[e.value.name])}return e})}let iD=Symbol.for("drizzle:IsDrizzleView");class iv{static [eI]="View";[iu];[iD]=!0;constructor({name:e,schema:i,selectedFields:n,query:t}){this[iu]={name:e,originalName:e,schema:i,selectedFields:n,query:t,isExisting:!t,isAlias:!1}}getSQL(){return new iC([this])}}eU.prototype.getSQL=function(){return new iC([this])},iy.prototype.getSQL=function(){return new iC([this])},ia.prototype.getSQL=function(){return new iC([this])};class iA{constructor(e){this.table=e}static [eI]="ColumnAliasProxyHandler";get(e,i){return"table"===i?this.table:e[i]}}class iN{constructor(e,i){this.alias=e,this.replaceOriginalName=i}static [eI]="TableAliasProxyHandler";get(e,i){if(i===iy.Symbol.IsAlias)return!0;if(i===iy.Symbol.Name||this.replaceOriginalName&&i===iy.Symbol.OriginalName)return this.alias;if(i===iu)return{...e[iu],name:this.alias,isAlias:!0};if(i===iy.Symbol.Columns){let i=e[iy.Symbol.Columns];if(!i)return i;let n={};return Object.keys(i).map(t=>{n[t]=new Proxy(i[t],new iA(new Proxy(e,this)))}),n}let n=e[i];return entity_is(n,eU)?new Proxy(n,new iA(new Proxy(e,this))):n}}class iP{constructor(e){this.alias=e}static [eI]=null;get(e,i){return"sourceTable"===i?aliasedTable(e.sourceTable,this.alias):e[i]}}function aliasedTable(e,i){return new Proxy(e,new iN(i,!1))}function aliasedTableColumn(e,i){return new Proxy(e,new iA(new Proxy(e.table,new iN(i,!1))))}function mapColumnsInAliasedSQLToAlias(e,i){return new iC.Aliased(mapColumnsInSQLToAlias(e.sql,i),e.fieldAlias)}function mapColumnsInSQLToAlias(e,i){return sql_sql.join(e.queryChunks.map(e=>entity_is(e,eU)?aliasedTableColumn(e,i):entity_is(e,iC)?mapColumnsInSQLToAlias(e,i):entity_is(e,iC.Aliased)?mapColumnsInAliasedSQLToAlias(e,i):e))}function toSnakeCase(e){return(e.replace(/['\u2019]/g,"").match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[]).map(e=>e.toLowerCase()).join("_")}function toCamelCase(e){return(e.replace(/['\u2019]/g,"").match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[]).reduce((e,i,n)=>e+(0===n?i.toLowerCase():`${i[0].toUpperCase()}${i.slice(1)}`),"")}function noopCase(e){return e}class iZ{static [eI]="CasingCache";cache={};cachedTables={};convert;constructor(e){this.convert="snake_case"===e?toSnakeCase:"camelCase"===e?toCamelCase:noopCase}getColumnCasing(e){if(!e.keyAsName)return e.name;let i=e.table[iy.Symbol.Schema]??"public",n=e.table[iy.Symbol.OriginalName],t=`${i}.${n}.${e.name}`;return this.cache[t]||this.cacheTable(e.table),this.cache[t]}cacheTable(e){let i=e[iy.Symbol.Schema]??"public",n=e[iy.Symbol.OriginalName],t=`${i}.${n}`;if(!this.cachedTables[t]){for(let i of Object.values(e[iy.Symbol.Columns])){let e=`${t}.${i.name}`;this.cache[e]=this.convert(i.name)}this.cachedTables[t]=!0}}clearCache(){this.cache={},this.cachedTables={}}}class iR extends Error{static [eI]="DrizzleError";constructor({message:e,cause:i}){super(e),this.name="DrizzleError",this.cause=i}}class iM extends Error{constructor(e,i,n){super(`Failed query: ${e}
|
|
1
|
+
let e,i,n,t,a,r,o,u,s,l,h,g,c,d;import*as p from"buffer";import*as f from"crypto";import*as m from"events";import*as y from"fs";import*as S from"node:fs";import*as b from"node:fs/promises";import*as C from"node:stream";import*as T from"os";import*as w from"path";import*as x from"stream";import*as E from"zlib";import{__webpack_require__ as L}from"./rslib-runtime.mjs";import _ from"axios";import{ChatOpenAI as Y}from"@langchain/openai";import{AIMessage as D,HumanMessage as v,SystemMessage as A}from"@langchain/core/messages";import N from"pg";import{exec as P,execSync as Z}from"child_process";import{env as R,versions as M}from"process";import{Agent as J,request as k}from"http";import{Agent as B,request as H}from"https";L.add({"./node_modules/dotenv/lib/main.js"(e,i,n){let t=n("fs"),a=n("path"),r=n("os"),o=n("crypto"),u=n("./node_modules/dotenv/package.json").version,s=["\uD83D\uDD10 encrypt with Dotenvx: https://dotenvx.com","\uD83D\uDD10 prevent committing .env to code: https://dotenvx.com/precommit","\uD83D\uDD10 prevent building .env in docker: https://dotenvx.com/prebuild","\uD83D\uDCE1 add observability to secrets: https://dotenvx.com/ops","\uD83D\uDC65 sync secrets across teammates & machines: https://dotenvx.com/ops","\uD83D\uDDC2️ backup and recover secrets: https://dotenvx.com/ops","✅ audit secrets and track compliance: https://dotenvx.com/ops","\uD83D\uDD04 add secrets lifecycle management: https://dotenvx.com/ops","\uD83D\uDD11 add access controls to secrets: https://dotenvx.com/ops","\uD83D\uDEE0️ run anywhere with `dotenvx run -- yourcommand`","⚙️ specify custom .env file path with { path: '/custom/path/.env' }","⚙️ enable debug logging with { debug: true }","⚙️ override existing env vars with { override: true }","⚙️ suppress all logs with { quiet: true }","⚙️ write to custom object with { processEnv: myObject }","⚙️ load multiple .env files with { path: ['.env.local', '.env'] }"];function _getRandomTip(){return s[Math.floor(Math.random()*s.length)]}function parseBoolean(e){return"string"==typeof e?!["false","0","no","off",""].includes(e.toLowerCase()):!!e}function supportsAnsi(){return process.stdout.isTTY}function dim(e){return supportsAnsi()?`\x1b[2m${e}\x1b[0m`:e}let l=/(?:^|^)\s*(?:export\s+)?([\w.-]+)(?:\s*=\s*?|:\s+?)(\s*'(?:\\'|[^'])*'|\s*"(?:\\"|[^"])*"|\s*`(?:\\`|[^`])*`|[^#\r\n]+)?\s*(?:#.*)?(?:$|$)/mg;function _warn(e){console.error(`[dotenv@${u}][WARN] ${e}`)}function _debug(e){console.log(`[dotenv@${u}][DEBUG] ${e}`)}function _log(e){console.log(`[dotenv@${u}] ${e}`)}function _dotenvKey(e){return e&&e.DOTENV_KEY&&e.DOTENV_KEY.length>0?e.DOTENV_KEY:process.env.DOTENV_KEY&&process.env.DOTENV_KEY.length>0?process.env.DOTENV_KEY:""}function _instructions(e,i){let n;try{n=new URL(i)}catch(e){if("ERR_INVALID_URL"===e.code){let e=Error("INVALID_DOTENV_KEY: Wrong format. Must be in valid uri format like dotenv://:key_1234@dotenvx.com/vault/.env.vault?environment=development");throw e.code="INVALID_DOTENV_KEY",e}throw e}let t=n.password;if(!t){let e=Error("INVALID_DOTENV_KEY: Missing key part");throw e.code="INVALID_DOTENV_KEY",e}let a=n.searchParams.get("environment");if(!a){let e=Error("INVALID_DOTENV_KEY: Missing environment part");throw e.code="INVALID_DOTENV_KEY",e}let r=`DOTENV_VAULT_${a.toUpperCase()}`,o=e.parsed[r];if(!o){let e=Error(`NOT_FOUND_DOTENV_ENVIRONMENT: Cannot locate environment ${r} in your .env.vault file.`);throw e.code="NOT_FOUND_DOTENV_ENVIRONMENT",e}return{ciphertext:o,key:t}}function _vaultPath(e){let i=null;if(e&&e.path&&e.path.length>0)if(Array.isArray(e.path))for(let n of e.path)t.existsSync(n)&&(i=n.endsWith(".vault")?n:`${n}.vault`);else i=e.path.endsWith(".vault")?e.path:`${e.path}.vault`;else i=a.resolve(process.cwd(),".env.vault");return t.existsSync(i)?i:null}function _resolveHome(e){return"~"===e[0]?a.join(r.homedir(),e.slice(1)):e}let h={configDotenv:function(e){let i,n=a.resolve(process.cwd(),".env"),r="utf8",o=process.env;e&&null!=e.processEnv&&(o=e.processEnv);let u=parseBoolean(o.DOTENV_CONFIG_DEBUG||e&&e.debug),s=parseBoolean(o.DOTENV_CONFIG_QUIET||e&&e.quiet);e&&e.encoding?r=e.encoding:u&&_debug("No encoding is specified. UTF-8 is used by default");let l=[n];if(e&&e.path)if(Array.isArray(e.path))for(let i of(l=[],e.path))l.push(_resolveHome(i));else l=[_resolveHome(e.path)];let g={};for(let n of l)try{let i=h.parse(t.readFileSync(n,{encoding:r}));h.populate(g,i,e)}catch(e){u&&_debug(`Failed to load ${n} ${e.message}`),i=e}let c=h.populate(o,g,e);if(u=parseBoolean(o.DOTENV_CONFIG_DEBUG||u),s=parseBoolean(o.DOTENV_CONFIG_QUIET||s),u||!s){let e=Object.keys(c).length,n=[];for(let e of l)try{let i=a.relative(process.cwd(),e);n.push(i)}catch(n){u&&_debug(`Failed to load ${e} ${n.message}`),i=n}_log(`injecting env (${e}) from ${n.join(",")} ${dim(`-- tip: ${_getRandomTip()}`)}`)}return i?{parsed:g,error:i}:{parsed:g}},_configVault:function(e){let i=parseBoolean(process.env.DOTENV_CONFIG_DEBUG||e&&e.debug),n=parseBoolean(process.env.DOTENV_CONFIG_QUIET||e&&e.quiet);(i||!n)&&_log("Loading env from encrypted .env.vault");let t=h._parseVault(e),a=process.env;return e&&null!=e.processEnv&&(a=e.processEnv),h.populate(a,t,e),{parsed:t}},_parseVault:function(e){let i,n=_vaultPath(e=e||{});e.path=n;let t=h.configDotenv(e);if(!t.parsed){let e=Error(`MISSING_DATA: Cannot parse ${n} for an unknown reason`);throw e.code="MISSING_DATA",e}let a=_dotenvKey(e).split(","),r=a.length;for(let e=0;e<r;e++)try{let n=a[e].trim(),r=_instructions(t,n);i=h.decrypt(r.ciphertext,r.key);break}catch(i){if(e+1>=r)throw i}return h.parse(i)},config:function(e){if(0===_dotenvKey(e).length)return h.configDotenv(e);let i=_vaultPath(e);return i?h._configVault(e):(_warn(`You set DOTENV_KEY but you are missing a .env.vault file at ${i}. Did you forget to build it?`),h.configDotenv(e))},decrypt:function(e,i){let n=Buffer.from(i.slice(-64),"hex"),t=Buffer.from(e,"base64"),a=t.subarray(0,12),r=t.subarray(-16);t=t.subarray(12,-16);try{let e=o.createDecipheriv("aes-256-gcm",n,a);return e.setAuthTag(r),`${e.update(t)}${e.final()}`}catch(t){let e=t instanceof RangeError,i="Invalid key length"===t.message,n="Unsupported state or unable to authenticate data"===t.message;if(e||i){let e=Error("INVALID_DOTENV_KEY: It must be 64 characters long (or more)");throw e.code="INVALID_DOTENV_KEY",e}if(n){let e=Error("DECRYPTION_FAILED: Please check your DOTENV_KEY");throw e.code="DECRYPTION_FAILED",e}throw t}},parse:function(e){let i,n={},t=e.toString();for(t=t.replace(/\r\n?/mg,"\n");null!=(i=l.exec(t));){let e=i[1],t=i[2]||"",a=(t=t.trim())[0];t=t.replace(/^(['"`])([\s\S]*)\1$/mg,"$2"),'"'===a&&(t=(t=t.replace(/\\n/g,"\n")).replace(/\\r/g,"\r")),n[e]=t}return n},populate:function(e,i,n={}){let t=!!(n&&n.debug),a=!!(n&&n.override),r={};if("object"!=typeof i){let e=Error("OBJECT_REQUIRED: Please check the processEnv argument being passed to populate");throw e.code="OBJECT_REQUIRED",e}for(let n of Object.keys(i))Object.prototype.hasOwnProperty.call(e,n)?(!0===a&&(e[n]=i[n],r[n]=i[n]),t&&(!0===a?_debug(`"${n}" is already defined and WAS overwritten`):_debug(`"${n}" is already defined and was NOT overwritten`))):(e[n]=i[n],r[n]=i[n]);return r}};e.exports.configDotenv=h.configDotenv,e.exports._configVault=h._configVault,e.exports._parseVault=h._parseVault,e.exports.config=h.config,e.exports.decrypt=h.decrypt,e.exports.parse=h.parse,e.exports.populate=h.populate,e.exports=h},buffer(e){e.exports=p},crypto(e){e.exports=f},events(e){e.exports=m},fs(e){e.exports=y},"node:fs"(e){e.exports=S},"node:fs/promises"(e){e.exports=b},"node:stream"(e){e.exports=C},os(e){e.exports=T},path(e){e.exports=w},stream(e){e.exports=x},zlib(e){e.exports=E},"./node_modules/dotenv/package.json"(e){e.exports=JSON.parse('{"name":"dotenv","version":"17.2.3","description":"Loads environment variables from .env file","main":"lib/main.js","types":"lib/main.d.ts","exports":{".":{"types":"./lib/main.d.ts","require":"./lib/main.js","default":"./lib/main.js"},"./config":"./config.js","./config.js":"./config.js","./lib/env-options":"./lib/env-options.js","./lib/env-options.js":"./lib/env-options.js","./lib/cli-options":"./lib/cli-options.js","./lib/cli-options.js":"./lib/cli-options.js","./package.json":"./package.json"},"scripts":{"dts-check":"tsc --project tests/types/tsconfig.json","lint":"standard","pretest":"npm run lint && npm run dts-check","test":"tap run tests/**/*.js --allow-empty-coverage --disable-coverage --timeout=60000","test:coverage":"tap run tests/**/*.js --show-full-coverage --timeout=60000 --coverage-report=text --coverage-report=lcov","prerelease":"npm test","release":"standard-version"},"repository":{"type":"git","url":"git://github.com/motdotla/dotenv.git"},"homepage":"https://github.com/motdotla/dotenv#readme","funding":"https://dotenvx.com","keywords":["dotenv","env",".env","environment","variables","config","settings"],"readmeFilename":"README.md","license":"BSD-2-Clause","devDependencies":{"@types/node":"^18.11.3","decache":"^4.6.2","sinon":"^14.0.1","standard":"^17.0.0","standard-version":"^9.5.0","tap":"^19.2.0","typescript":"^4.8.4"},"engines":{"node":">=12"},"browser":{"fs":false}}')}});var F,X,I,O,Q,G,U,q,K,$,z,W,j,V,ee,ei,en,et,ea,er,eo,eu,es,el,eh,eg,ec,ed,ep={};L.r(ep),L.d(ep,{T:()=>eS});var ef={};L.r(ef),L.d(ef,{n:()=>eE,p:()=>eL});var em={};L.r(em),L.d(em,{F:()=>mH});var ey={};L.r(ey),L.d(ey,{c:()=>eB});class eS{apiKey;baseUrl;modelBaseUrl;retryTimes;retryDelay;timeout;constructor(e){this.apiKey=e?.apiKey||process.env.COZE_WORKLOAD_IDENTITY_API_KEY||"",this.baseUrl=e?.baseUrl||process.env.COZE_INTEGRATION_BASE_URL||"",this.modelBaseUrl=e?.modelBaseUrl||process.env.COZE_INTEGRATION_MODEL_BASE_URL||"",this.retryTimes=e?.retryTimes??3,this.retryDelay=e?.retryDelay??1,this.timeout=e?.timeout??9e5}validate(){if(!this.apiKey)throw Error("API key is required. Set COZE_WORKLOAD_IDENTITY_API_KEY or provide apiKey in config.")}getHeaders(){if(!this.apiKey)throw Error("API key is required. Set COZE_WORKLOAD_IDENTITY_API_KEY or provide apiKey in config.");return{Authorization:`Bearer ${this.apiKey}`,"Content-Type":"application/json"}}}class eb extends Error{constructor(e){super(e),this.name="ConfigurationError"}}class eC extends Error{statusCode;response;constructor(e,i,n){super(e),this.name="APIError",this.statusCode=i,this.response=n}}class eT extends Error{originalError;constructor(e,i){super(e),this.originalError=i,this.name="NetworkError"}}class ew extends Error{constructor(e){super(e),this.name="ValidationError"}}class ex{config;axiosInstance;verbose;constructor(e,i,n=!1){this.config=e||new eS,this.verbose=n,this.axiosInstance=_.create({timeout:this.config.timeout,headers:{Authorization:`Bearer ${this.config.apiKey}`,"Content-Type":"application/json","X-Client-Sdk":"coze-coding-dev-sdk-typescript/0.3.0",...i}})}async request(e,i,n,t){let a=null;for(let r=0;r<=this.config.retryTimes;r++)try{0===r&&this.verbose&&this.logRequest(e,i,n,t);let a=await this.axiosInstance.request({method:e,url:i,data:n,...t});return 0===r&&this.verbose&&this.logResponse(a),a.data}catch(e){if(a=e,e.response){let i=e.response.status;if(i>=400&&i<500&&429!==i)throw new eC(e.response.data?.message||e.message,i,e.response.data)}r<this.config.retryTimes&&await this.sleep(1e3*this.config.retryDelay*(r+1))}if(a)if(_.isAxiosError(a)&&a.response)throw new eC(a.response.data?.message||a.message,a.response.status,a.response.data);else throw new eT(a.message);throw new eT("Request failed after retries")}async requestWithResponse(e,i,n,t){let a=null;for(let r=0;r<=this.config.retryTimes;r++)try{0===r&&this.verbose&&this.logRequest(e,i,n,t);let a=await this.axiosInstance.request({method:e,url:i,data:n,...t});return 0===r&&this.verbose&&this.logResponse(a),a}catch(e){if(a=e,e.response){let i=e.response.status;if(i>=400&&i<500&&429!==i)throw new eC(e.response.data?.message||e.message,i,e.response.data)}r<this.config.retryTimes&&await this.sleep(1e3*this.config.retryDelay*(r+1))}if(a)if(_.isAxiosError(a)&&a.response)throw new eC(a.response.data?.message||a.message,a.response.status,a.response.data);else throw new eT(a.message);throw new eT("Request failed after retries")}sanitizeHeaders(e){let i=["authorization","auth","api-key","apikey","api_key","x-api-key","x-auth-token","token","secret","password","passwd","pwd"],n={};for(let[t,a]of Object.entries(e)){let e=t.toLowerCase();i.some(i=>e.includes(i))?n[t]="***":n[t]=a}return n}logRequest(e,i,n,t){console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log("\uD83D\uDCE4 HTTP Request"),console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log(`Method: ${e}`),console.log(`URL: ${i}`);let a={};Object.assign(a,this.axiosInstance.defaults.headers.common||{},this.axiosInstance.defaults.headers[e.toLowerCase()]||{},t?.headers||{});let r=this.sanitizeHeaders(a);for(let[e,i]of(console.log("\nHeaders:"),Object.entries(r)))console.log(` ${e}: ${i}`);n&&(console.log("\nBody:"),console.log(JSON.stringify(n,null,2))),console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n")}logResponse(e){if(console.log("\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log("\uD83D\uDCE5 HTTP Response"),console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"),console.log(`Status: ${e.status} ${e.statusText}`),e.headers)for(let[i,n]of(console.log("\nHeaders:"),Object.entries(e.headers)))console.log(` ${i}: ${n}`);if(e.data){console.log("\nBody:");let i="string"==typeof e.data?e.data:JSON.stringify(e.data,null,2);console.log(i.length>1e3?i.substring(0,1e3)+"\n... (truncated)":i)}console.log("━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n")}sleep(e){return new Promise(i=>setTimeout(i,e))}}let eE=["x-tt-logid","x-tt-env","x-use-ppe","x-tt-env-fe","x-run-mode","rpc-persist-res-rec-biz-scene","rpc-persist-coze-record-root-id","rpc-persist-res-rec-root-entity-type","rpc-persist-res-rec-root-entity-id","rpc-persist-res-rec-ext-info"];class eL{static extractForwardHeaders(e){let i={};return e instanceof Headers?eE.forEach(n=>{let t=e.get(n);t&&(i[n]=t)}):eE.forEach(n=>{let t=e[n]||e[n.toLowerCase()];t&&(i[n]=t)}),i}}class e_{static DEFAULT_MODEL="doubao-seedream-5-0-260128";static DEFAULT_SIZE="2K";static DEFAULT_CUSTOM_SIZE="2048x2048";static DEFAULT_WATERMARK=!0;static DEFAULT_RESPONSE_FORMAT="url";static DEFAULT_OPTIMIZE_PROMPT_MODE="standard";static DEFAULT_SEQUENTIAL_IMAGE_GENERATION="disabled";static DEFAULT_SEQUENTIAL_IMAGE_GENERATION_MAX_IMAGES=15;static MIN_TOTAL_PIXELS=3686400;static MAX_TOTAL_PIXELS=0x1000000;static MIN_ASPECT_RATIO=1/16;static MAX_ASPECT_RATIO=16;static PRESET_SIZES=["2K","4K"]}function validateImageSize(e){if(e_.PRESET_SIZES.includes(e))return e;let i=e.match(/^(\d+)x(\d+)$/);if(!i)throw Error(`Invalid size format. Must be ${JSON.stringify(e_.PRESET_SIZES)} or 'WIDTHxHEIGHT' format (e.g., 2048x2048). Got: ${e}`);let n=parseInt(i[1],10),t=parseInt(i[2],10);if(n<=0||t<=0)throw Error(`Width and height must be positive integers. Got: ${e}`);let a=n*t;if(a<e_.MIN_TOTAL_PIXELS||a>e_.MAX_TOTAL_PIXELS)throw Error(`Total pixels must be between ${e_.MIN_TOTAL_PIXELS.toLocaleString()} and ${e_.MAX_TOTAL_PIXELS.toLocaleString()}. Got: ${a.toLocaleString()} (${n}x${t})`);let r=n/t;if(r<e_.MIN_ASPECT_RATIO||r>e_.MAX_ASPECT_RATIO)throw Error(`Aspect ratio must be between 1:16 and 16:1. Got: ${n}:${t} (${r.toFixed(2)})`);return e}function validateImageSizeOrDefault(e){try{return validateImageSize(e)}catch{return e_.DEFAULT_SIZE}}class eY{response;constructor(e){this.response=e}get success(){return!this.response.error&&this.response.data.every(e=>!e.error)}get imageUrls(){return this.response.data.filter(e=>e.url).map(e=>e.url)}get imageB64List(){return this.response.data.filter(e=>e.b64_json).map(e=>e.b64_json)}get errorMessages(){let e=[];for(let i of(this.response.error&&e.push(`API Error: ${this.response.error.message||"Unknown error"}`),this.response.data))i.error&&e.push(`Image generation error: ${i.error.message||"Unknown error"}`);return e}}function buildImageGenerationApiRequest(e,i){let n=validateImageSizeOrDefault(e.size||e_.DEFAULT_SIZE);return{model:i,prompt:e.prompt,size:n,watermark:e.watermark??e_.DEFAULT_WATERMARK,image:e.image,response_format:e.responseFormat||e_.DEFAULT_RESPONSE_FORMAT,optimize_prompt_options:{mode:e.optimizePromptMode||e_.DEFAULT_OPTIMIZE_PROMPT_MODE},sequential_image_generation:e.sequentialImageGeneration||e_.DEFAULT_SEQUENTIAL_IMAGE_GENERATION,sequential_image_generation_options:{max_images:e.sequentialImageGenerationMaxImages||e_.DEFAULT_SEQUENTIAL_IMAGE_GENERATION_MAX_IMAGES}}}class eD extends ex{constructor(e,i,n=!1){super(e,i,n)}async generate(e){let i=e.model||e_.DEFAULT_MODEL,n=buildImageGenerationApiRequest(e,i),t=await this.request("POST",`${this.config.baseUrl}/api/v3/images/generations`,n);if(t.error)throw new eC(`API returned error: ${t.error.message||"Unknown error"}`,t.error.code?parseInt(t.error.code):500,t.error);for(let e of t.data)if(e.error)throw new eC(`Image generation failed: ${e.error.message||"Unknown error"}`,e.error.code?parseInt(e.error.code):500,e.error);return t}async batchGenerate(e){return Promise.all(e.map(e=>this.generate(e)))}getResponseHelper(e){return new eY(e)}}function convertToApiFormat(e){let i={};return e.query&&(i.Query=e.query),e.search_type&&(i.SearchType=e.search_type),void 0!==e.count&&(i.Count=e.count),void 0!==e.need_summary&&(i.NeedSummary=e.need_summary),e.time_range&&(i.TimeRange=e.time_range),e.filter&&(i.Filter={NeedContent:e.filter.need_content||!1,NeedUrl:e.filter.need_url||!1,Sites:e.filter.sites,BlockHosts:e.filter.block_hosts}),i}function convertFromApiFormat(e){let i={};return void 0!==e.Id&&(i.id=e.Id),void 0!==e.SortId&&(i.sort_id=e.SortId),void 0!==e.Title&&(i.title=e.Title),void 0!==e.SiteName&&(i.site_name=e.SiteName),void 0!==e.Url&&(i.url=e.Url),void 0!==e.Snippet&&(i.snippet=e.Snippet),void 0!==e.Summary&&(i.summary=e.Summary),void 0!==e.Content&&(i.content=e.Content),void 0!==e.PublishTime&&(i.publish_time=e.PublishTime),void 0!==e.LogoUrl&&(i.logo_url=e.LogoUrl),void 0!==e.RankScore&&(i.rank_score=e.RankScore),void 0!==e.AuthInfoDes&&(i.auth_info_des=e.AuthInfoDes),void 0!==e.AuthInfoLevel&&(i.auth_info_level=e.AuthInfoLevel),e.Image&&(i.image={url:e.Image.Url,width:e.Image.Width,height:e.Image.Height,shape:e.Image.Shape}),i}class ev extends ex{constructor(e,i,n=!1){super(e,i,n)}async search(e){let i,n=convertToApiFormat(e),t=await this.request("POST",`${this.config.baseUrl}/api/search_api/web_search`,n),a=t.ResponseMetadata||{};if(a.Error)throw new eC(`Search failed: ${a.Error}`,500,a.Error);let r=t.Result||{},o=[];if(r.WebResults)for(let e of r.WebResults)o.push(convertFromApiFormat(e));let u=[];if(r.ImageResults)for(let e of r.ImageResults)u.push(convertFromApiFormat(e));return r.Choices&&r.Choices.length>0&&(i=r.Choices[0].Message?.Content),{web_items:o,image_items:u,summary:i}}async webSearch(e,i=10,n=!0){return this.search({query:e,search_type:"web",count:i,need_summary:n})}async webSearchWithSummary(e,i=10){return this.search({query:e,search_type:"web_summary",count:i,need_summary:!0})}async imageSearch(e,i=10){return this.search({query:e,search_type:"image",count:i,need_summary:!1})}async advancedSearch(e,i={}){let n={need_content:i.needContent,need_url:i.needUrl,sites:i.sites,block_hosts:i.blockHosts};return this.search({query:e,search_type:i.searchType||"web",count:i.count||10,filter:n,need_summary:void 0===i.needSummary||i.needSummary,time_range:i.timeRange})}}class eA{static DEFAULT_SPEAKER="zh_female_xiaohe_uranus_bigtts";static DEFAULT_AUDIO_FORMAT="mp3";static DEFAULT_SAMPLE_RATE=24e3;static DEFAULT_SPEECH_RATE=0;static DEFAULT_LOUDNESS_RATE=0}function buildTTSApiRequest(e){let i={user:{uid:e.uid},req_params:{speaker:e.speaker||eA.DEFAULT_SPEAKER,audio_params:{format:e.audioFormat||eA.DEFAULT_AUDIO_FORMAT,sample_rate:e.sampleRate||eA.DEFAULT_SAMPLE_RATE,speech_rate:e.speechRate??eA.DEFAULT_SPEECH_RATE,loudness_rate:e.loudnessRate??eA.DEFAULT_LOUDNESS_RATE}}};return e.text?i.req_params.text=e.text:e.ssml&&(i.req_params.ssml=e.ssml),i}function buildASRApiRequest(e){let i={};return e.url?i.url=e.url:e.base64Data&&(i.data=e.base64Data),{user:{uid:e.uid},audio:i}}class eN extends ex{constructor(e,i,n=!1){super(e,i,n)}async synthesize(e){if(!e.text&&!e.ssml)throw new ew("必须提供 text 或 ssml 其中之一");let i=buildTTSApiRequest(e),n={...this.config.getHeaders(),Connection:"keep-alive"};try{let e=await _.post(`${this.config.baseUrl}/api/v3/tts/unidirectional`,i,{headers:n,responseType:"stream",timeout:this.config.timeout});return await this.processStreamResponse(e)}catch(e){if(e.response)throw new eC(`TTS 请求失败: ${e.message}`,e.response.status,e.response.data);throw new eC(`TTS 请求异常: ${e.message}`,500)}}async processStreamResponse(e){return new Promise((i,n)=>{let t="",a=0,r="";e.data.on("data",e=>{let o=(r+=e.toString("utf-8")).split("\n");for(let e of(r=o.pop()||"",o))if(e.trim()&&e.startsWith("data:"))try{let r=e.replace("data:","").trim();if(!r)continue;let o=JSON.parse(r);if(0===o.code&&o.data){let e=Buffer.from(o.data,"base64");a+=e.length}else if(2e7===o.code){o.url&&(t=o.url),i({audioUri:t,audioSize:a});return}else if(o.code>0)return void n(new eC(`合成音频失败: ${o.message||""}`,o.code))}catch(e){n(new eC(`响应解析失败: ${e.message}`,500));return}}),e.data.on("end",()=>{t||0!==a?i({audioUri:t,audioSize:a}):n(new eC("未收到完整的音频数据",500))}),e.data.on("error",e=>{n(new eC(`流处理错误: ${e.message}`,500))})})}}class eP extends ex{constructor(e,i,n=!1){super(e,i,n)}async recognize(e){if(!e.url&&!e.base64Data)throw new ew("必须提供 url 或 base64Data 其中之一");let i=buildASRApiRequest(e);try{let e=await this.requestWithResponse("POST",`${this.config.baseUrl}/api/v3/auc/bigmodel/recognize/flash`,i),n=e.headers["x-api-status-code"]||"0",t=e.headers["x-api-message"]||"";if("20000000"!==n)throw new eC(`ASR 识别失败,状态码: ${n}, 错误信息: ${t}`,e.status,{code:n,message:t});let a=e.data.result||{};return{text:a.text||"",duration:a.duration,utterances:a.utterances,rawData:e.data}}catch(e){if(e instanceof eC)throw e;throw new eC(`ASR 请求异常: ${e.message}`,500)}}}class eZ{static DEFAULT_MODEL="doubao-seedance-1-5-pro-251215";static DEFAULT_RESOLUTION="720p";static DEFAULT_RATIO="16:9";static DEFAULT_DURATION=5;static DEFAULT_WATERMARK=!0;static DEFAULT_CAMERA_FIXED=!1;static DEFAULT_GENERATE_AUDIO=!0}class eR extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}async videoGeneration(e,i){let n=(i?.maxWaitTime??900)*1e3,t={model:i?.model||eZ.DEFAULT_MODEL,content:e};i?.callbackUrl&&(t.callback_url=i.callbackUrl),i?.returnLastFrame&&(t.return_last_frame=i.returnLastFrame),t.resolution=i?.resolution??eZ.DEFAULT_RESOLUTION,t.ratio=i?.ratio??eZ.DEFAULT_RATIO,t.duration=i?.duration??eZ.DEFAULT_DURATION,t.watermark=i?.watermark??eZ.DEFAULT_WATERMARK,i?.seed!==void 0&&(t.seed=i.seed),t.camerafixed=i?.camerafixed??eZ.DEFAULT_CAMERA_FIXED,t.generate_audio=i?.generateAudio??eZ.DEFAULT_GENERATE_AUDIO;let a=null,r=0;for(;r<3;)try{if(!(a=(await this.request("POST",`${this.baseUrl}/api/v3/contents/generations/tasks`,t)).id))throw new eC("创建视频生成任务失败:响应中缺少任务ID",500);this.verbose&&console.log(`视频生成任务创建成功,任务ID: ${a}`);break}catch(i){r++;let e=i instanceof Error?i.message:String(i);if(this.verbose&&console.error(`创建视频生成任务失败(尝试 ${r}/3): ${e}`),r>=3)throw new eC(`创建视频生成任务失败,已重试3次: ${e}`,500);if(e.toLowerCase().includes("rate limit")||e.includes("429")){let e=Math.min(2**r*1e3,1e4);this.verbose&&console.warn(`遇到速率限制,等待 ${e/1e3} 秒后重试...`),await this.sleep(e)}else if(e.toLowerCase().includes("timeout"))this.verbose&&console.warn("请求超时,等待 2 秒后重试..."),await this.sleep(2e3);else throw i}let o=Date.now(),u=0;for(;Date.now()-o<n;){u++;try{let e=await this.request("GET",`${this.baseUrl}/api/v3/contents/generations/tasks/${a}`),i=e.status;if(this.verbose&&console.log(`任务 ${a} 状态检查 #${u}: ${i}`),"succeeded"===i){let i=e.content?.video_url||null,n=e.content?.last_frame_url||"";if(!i)throw new eC(`视频生成成功但响应中缺少视频URL,任务ID: ${a}`,500);return this.verbose&&console.log(`视频生成成功,任务ID: ${a}, 视频URL: ${i}`),{videoUrl:i,response:e,lastFrameUrl:n}}if("failed"===i){let i=e.error_message||"未知错误";throw this.verbose&&console.error(`视频生成失败,任务ID: ${a}, 错误: ${i}`),new eC(`视频生成失败: ${i}`,500)}if("cancelled"===i)return this.verbose&&console.warn(`视频生成任务被取消,任务ID: ${a}`),{videoUrl:null,response:e,lastFrameUrl:""};else if("queued"===i||"running"===i){await this.sleep(5e3);continue}else{this.verbose&&console.warn(`未知的任务状态: ${i},任务ID: ${a}`),await this.sleep(5e3);continue}}catch(i){let e=i instanceof Error?i.message:String(i);if(this.verbose&&console.error(`查询任务状态失败,任务ID: ${a}, 错误: ${e}`),e.toLowerCase().includes("not found")||e.includes("404"))throw new eC(`任务不存在或已过期,任务ID: ${a}`,404);if(Date.now()-o>=n)throw i;await this.sleep(5e3);continue}}let s=Math.floor((Date.now()-o)/1e3);throw this.verbose&&console.error(`视频生成超时,任务ID: ${a}, 已等待: ${s}秒`),new eC(`视频生成超时,已等待 ${s} 秒,任务ID: ${a}`,408)}async videoGenerationAsync(e,i){return this.videoGeneration(e,i)}}class eM{static DEFAULT_URL_EXPIRE=86400;static MAX_URL_EXPIRE=2592e3;static MIN_URL_EXPIRE=1;static MIN_AUDIO_URL_EXPIRE=3600;static DEFAULT_FONT_TYPE="1525745";static DEFAULT_FONT_SIZE=36;static DEFAULT_FONT_COLOR="#FFFFFFFF";static DEFAULT_BACKGROUND_COLOR="#00000000";static DEFAULT_BACKGROUND_BORDER_WIDTH=0;static DEFAULT_FONT_POS_HEIGHT="10%";static DEFAULT_FONT_POS_X="0";static DEFAULT_FONT_POS_Y="90%";static DEFAULT_FONT_POS_WIDTH="100%";static DEFAULT_SYNC_METHOD="trim";static DEFAULT_SYNC_MODE="video";static DEFAULT_SUBTITLE_TYPE="srt";static DEFAULT_AUDIO_FORMAT="m4a"}class eJ extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}async extractByKeyFrame(e){let i=await this.request("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=frame_extractor_by_key_frame`,{url:e});if(0!==i.code)throw new eC(`Key frame extraction failed: ${i.msg||"Unknown error"}`,i.code);return i}async extractByInterval(e,i){let n=await this.request("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=frame_extractor_by_interval`,{url:e,interval_ms:i});if(0!==n.code)throw new eC(`Interval frame extraction failed: ${n.msg||"Unknown error"}`,n.code);return n}async extractByCount(e,i){let n=await this.request("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=frame_extractor_by_count`,{url:e,count:i});if(0!==n.code)throw new eC(`Count-based frame extraction failed: ${n.msg||"Unknown error"}`,n.code);return n}}class ek extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}validateUrlExpire(e,i=eM.MIN_URL_EXPIRE){if(void 0===e)return eM.DEFAULT_URL_EXPIRE;if(e<i||e>eM.MAX_URL_EXPIRE)throw new eC(`url_expire must be between ${i} and ${eM.MAX_URL_EXPIRE} seconds`,400);return e}async addSubtitles(e,i,n){let t=this.validateUrlExpire(n?.urlExpire),a={video:e,subtitle_config:{background_border_width:i.background_border_width??eM.DEFAULT_BACKGROUND_BORDER_WIDTH,font_type:i.font_type??eM.DEFAULT_FONT_TYPE,font_pos_config:{height:i.font_pos_config.height??eM.DEFAULT_FONT_POS_HEIGHT,pos_x:i.font_pos_config.pos_x??eM.DEFAULT_FONT_POS_X,pos_y:i.font_pos_config.pos_y??eM.DEFAULT_FONT_POS_Y,width:i.font_pos_config.width??eM.DEFAULT_FONT_POS_WIDTH}},url_expire:t};void 0!==i.border_width&&(a.subtitle_config.border_width=i.border_width),void 0!==i.font_color&&(a.subtitle_config.font_color=i.font_color),void 0!==i.font_size&&(a.subtitle_config.font_size=i.font_size),void 0!==i.background_color&&(a.subtitle_config.background_color=i.background_color),void 0!==i.border_color&&(a.subtitle_config.border_color=i.border_color),n?.subtitleUrl&&(a.subtitle_url=n.subtitleUrl),n?.textList&&n.textList.length>0&&(a.text_list=n.textList.map(e=>({end_time:e.end_time,start_time:e.start_time,text:e.text})));let r=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=add_subtitles`,a),o=r.headers["x-api-status-code"]||"0",u=r.headers["x-api-message"]||"";if("0"!==o)throw new eC(`Add subtitles failed, status code: ${o}, error: ${u}`,parseInt(o)||500);if(!r.data.url)throw new eC("Add subtitles failed: returned URL is empty",500);return r.data}async concatVideos(e,i){if(!e||0===e.length)throw new eC("videos list cannot be empty",400);let n={videos:e,url_expire:this.validateUrlExpire(i?.urlExpire)};i?.transitions&&i.transitions.length>0&&(n.transitions=i.transitions);let t=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=concat_videos`,n),a=t.headers["x-api-status-code"]||"0",r=t.headers["x-api-message"]||"";if("0"!==a)throw new eC(`Concat videos failed, status code: ${a}, error: ${r}`,parseInt(a)||500);if(!t.data.url)throw new eC("Concat videos failed: returned URL is empty",500);return t.data}async compileVideoAudio(e,i,n){let t={video:e,audio:i,url_expire:this.validateUrlExpire(n?.urlExpire)};n?.isVideoAudioSync!==void 0&&(t.is_video_audio_sync=n.isVideoAudioSync),n?.outputSync&&(t.output_sync={sync_method:n.outputSync.sync_method??eM.DEFAULT_SYNC_METHOD,sync_mode:n.outputSync.sync_mode??eM.DEFAULT_SYNC_MODE}),n?.isAudioReserve!==void 0&&(t.is_audio_reserve=n.isAudioReserve);let a=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=compile_video_audio`,t),r=a.headers["x-api-status-code"]||"0",o=a.headers["x-api-message"]||"";if("0"!==r)throw new eC(`Compile video audio failed, status code: ${r}, error: ${o}`,parseInt(r)||500);if(!a.data.url)throw new eC("Compile video audio failed: returned URL is empty",500);return a.data}async audioToSubtitle(e,i){let n={source:e,url_expire:this.validateUrlExpire(i?.urlExpire)};i?.subtitleType&&(n.subtitle_type=i.subtitleType);let t=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=audio_to_subtitle`,n),a=t.headers["x-api-status-code"]||"0",r=t.headers["x-api-message"]||"";if("0"!==a)throw new eC(`Audio to subtitle failed, status code: ${a}, error: ${r}`,parseInt(a)||500);if(!t.data.url)throw new eC("Audio to subtitle failed: returned URL is empty",500);return t.data}async extractAudio(e,i){let n={video:e,url_expire:this.validateUrlExpire(i?.urlExpire,eM.MIN_AUDIO_URL_EXPIRE)};i?.format&&(n.format=i.format);let t=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=audio_extract`,n),a=t.headers["x-api-status-code"]||"0",r=t.headers["x-api-message"]||"";if("0"!==a)throw new eC(`Extract audio failed, status code: ${a}, error: ${r}`,parseInt(a)||500);if(!t.data.url)throw new eC("Extract audio failed: returned URL is empty",500);return t.data}async videoTrim(e,i){let n=this.validateUrlExpire(i?.urlExpire);if(i?.startTime!==void 0&&i.startTime<0)throw new eC("start_time must be greater than or equal to 0",400);if(i?.endTime!==void 0&&i.endTime<0)throw new eC("end_time must be greater than or equal to 0",400);let t={video:e,url_expire:n};i?.startTime!==void 0&&(t.start_time=i.startTime),i?.endTime!==void 0&&(t.end_time=i.endTime);let a=await this.requestWithResponse("POST",`${this.baseUrl}/api/v1/integration/video_editing_utils?tool_name=video_trim`,t),r=a.headers["x-api-status-code"]||"0",o=a.headers["x-api-message"]||"";if("0"!==r)throw new eC(`Video trim failed, status code: ${r}, error: ${o}`,parseInt(r)||500);if(!a.data.url)throw new eC("Video trim failed: returned URL is empty",500);return a.data}}let eB={MODEL:"doubao-seed-1-8-251228",THINKING:"disabled",CACHING:"disabled",TEMPERATURE:1,STREAMING:!0};class eH{config;customHeaders;constructor(e,i){this.config=e||new eS,this.customHeaders=i}createLLM(e,i,n){let t={};t.thinking={type:e.thinking??eB.THINKING},e.caching&&"disabled"!==e.caching&&(t.caching={type:e.caching});let a={Authorization:`Bearer ${this.config.apiKey}`,"X-Client-Sdk":"coze-coding-dev-sdk-typescript/0.3.0",...this.customHeaders,...n};return i&&(a["X-Previous-Response-Id"]=i),new Y({model:e.model||eB.MODEL,apiKey:this.config.apiKey,configuration:{baseURL:this.config.modelBaseUrl,defaultHeaders:a},streaming:void 0!==e.streaming?e.streaming:eB.STREAMING,temperature:void 0!==e.temperature?e.temperature:eB.TEMPERATURE,modelKwargs:Object.keys(t).length>0?t:void 0})}convertMessages(e){return e.map(e=>{let i=this.convertContent(e.content);switch(e.role){case"system":return new A(i);case"user":return new v(i);case"assistant":return new D(i);default:throw Error(`Unknown message role: ${e.role}`)}})}convertContent(e){return"string"==typeof e?e:e.map(e=>{if("text"===e.type)return{type:"text",text:e.text};if("image_url"===e.type){let i={url:e.image_url.url};return e.image_url.detail&&(i.detail=e.image_url.detail),{type:"image_url",image_url:i}}if("video_url"===e.type){let i={url:e.video_url.url};return void 0!==e.video_url.fps&&(i.fps=e.video_url.fps),{type:"video_url",video_url:i}}return e})}async *stream(e,i={},n,t){if(!e.some(e=>"user"===e.role))throw Error('messages must contain at least one message with role: "user", otherwise the API request will fail validation.');let a=this.createLLM(i,n,t),r=this.convertMessages(e);for await(let e of(await a.stream(r)))yield e}async invoke(e,i={},n,t){let a="";for await(let r of this.stream(e,i,n,t))r.content&&(a+=r.content.toString());return{content:a}}}var eF=((F={})[F.TEXT=0]="TEXT",F[F.URL=1]="URL",F[F.URI=2]="URI",F);class eX extends ex{baseUrl;constructor(e,i,n=!1){super(e,i,n),this.baseUrl=this.config.baseUrl}async search(e,i,n=5,t=0,a){let r={query:e,top_k:n,min_score:t};i&&(r.dataset=i);let o=`${this.baseUrl}/v1/knowledge_base/recall`,u={...a};this.config.apiKey&&(u["x-coze-token"]=`Bearer ${this.config.apiKey}`);let s=await this.request("POST",o,r,{headers:u});return{chunks:(s.data||[]).map(e=>({content:e.slice||"",score:e.score||0,chunk_id:e.chunk_id,doc_id:e.doc_id})),code:s.code||0,msg:s.msg||""}}async addDocuments(e,i,n,t){let a={dataset:i,data:e};n&&(a.chunk_config=Object.fromEntries(Object.entries(n).filter(([e,i])=>void 0!==i)));let r=`${this.baseUrl}/v1/knowledge_base/batch_import`,o={...t};this.config.apiKey&&(o["x-coze-token"]=`Bearer ${this.config.apiKey}`);let u=await this.request("POST",r,a,{headers:o}),s=u.msg||"";return 0===u.code&&(s="成功!文档正在异步导入中,请稍候。您可以查看数据库中的 'knowledge' schema 来验证导入状态。"),{doc_ids:u.doc_ids,code:u.code||0,msg:s}}}let eI=Symbol.for("drizzle:entityKind");function entity_is(e,i){if(!e||"object"!=typeof e)return!1;if(e instanceof i)return!0;if(!Object.prototype.hasOwnProperty.call(i,eI))throw Error(`Class "${i.name??"<unknown>"}" doesn't look like a Drizzle entity. If this is incorrect and the class is provided by Drizzle, please report this as a bug.`);let n=Object.getPrototypeOf(e).constructor;if(n)for(;n;){if(eI in n&&n[eI]===i[eI])return!0;n=Object.getPrototypeOf(n)}return!1}Symbol.for("drizzle:hasOwnEntityKind");class eO{static [eI]="ConsoleLogWriter";write(e){console.log(e)}}class eQ{static [eI]="DefaultLogger";writer;constructor(e){this.writer=e?.writer??new eO}logQuery(e,i){let n=i.map(e=>{try{return JSON.stringify(e)}catch{return String(e)}}),t=n.length?` -- params: [${n.join(", ")}]`:"";this.writer.write(`Query: ${e}${t}`)}}class eG{static [eI]="NoopLogger";logQuery(){}}class eU{constructor(e,i){this.table=e,this.config=i,this.name=i.name,this.keyAsName=i.keyAsName,this.notNull=i.notNull,this.default=i.default,this.defaultFn=i.defaultFn,this.onUpdateFn=i.onUpdateFn,this.hasDefault=i.hasDefault,this.primary=i.primaryKey,this.isUnique=i.isUnique,this.uniqueName=i.uniqueName,this.uniqueType=i.uniqueType,this.dataType=i.dataType,this.columnType=i.columnType,this.generated=i.generated,this.generatedIdentity=i.generatedIdentity}static [eI]="Column";name;keyAsName;primary;notNull;default;defaultFn;onUpdateFn;hasDefault;isUnique;uniqueName;uniqueType;dataType;columnType;enumValues=void 0;generated=void 0;generatedIdentity=void 0;config;mapFromDriverValue(e){return e}mapToDriverValue(e){return e}shouldDisableInsert(){return void 0!==this.config.generated&&"byDefault"!==this.config.generated.type}}class eK{static [eI]="ColumnBuilder";config;constructor(e,i,n){this.config={name:e,keyAsName:""===e,notNull:!1,default:void 0,hasDefault:!1,primaryKey:!1,isUnique:!1,uniqueName:void 0,uniqueType:void 0,dataType:i,columnType:n,generated:void 0}}$type(){return this}notNull(){return this.config.notNull=!0,this}default(e){return this.config.default=e,this.config.hasDefault=!0,this}$defaultFn(e){return this.config.defaultFn=e,this.config.hasDefault=!0,this}$default=this.$defaultFn;$onUpdateFn(e){return this.config.onUpdateFn=e,this.config.hasDefault=!0,this}$onUpdate=this.$onUpdateFn;primaryKey(){return this.config.primaryKey=!0,this.config.notNull=!0,this}setName(e){""===this.config.name&&(this.config.name=e)}}let e$=Symbol.for("drizzle:Name");class ez{static [eI]="PgForeignKeyBuilder";reference;_onUpdate="no action";_onDelete="no action";constructor(e,i){this.reference=()=>{let{name:i,columns:n,foreignColumns:t}=e();return{name:i,columns:n,foreignTable:t[0].table,foreignColumns:t}},i&&(this._onUpdate=i.onUpdate,this._onDelete=i.onDelete)}onUpdate(e){return this._onUpdate=void 0===e?"no action":e,this}onDelete(e){return this._onDelete=void 0===e?"no action":e,this}build(e){return new eW(e,this)}}class eW{constructor(e,i){this.table=e,this.reference=i.reference,this.onUpdate=i._onUpdate,this.onDelete=i._onDelete}static [eI]="PgForeignKey";reference;onUpdate;onDelete;getName(){let{name:e,columns:i,foreignColumns:n}=this.reference(),t=i.map(e=>e.name),a=n.map(e=>e.name),r=[this.table[e$],...t,n[0].table[e$],...a];return e??`${r.join("_")}_fk`}}function iife(e,...i){return e(...i)}function uniqueKeyName(e,i){return`${e[e$]}_${i.join("_")}_unique`}class ej{constructor(e,i){this.name=i,this.columns=e}static [eI]=null;columns;nullsNotDistinctConfig=!1;nullsNotDistinct(){return this.nullsNotDistinctConfig=!0,this}build(e){return new e0(e,this.columns,this.nullsNotDistinctConfig,this.name)}}class eV{static [eI]=null;name;constructor(e){this.name=e}on(...e){return new ej(e,this.name)}}class e0{constructor(e,i,n,t){this.table=e,this.columns=i,this.name=t??uniqueKeyName(this.table,this.columns.map(e=>e.name)),this.nullsNotDistinct=n}static [eI]=null;columns;name;nullsNotDistinct=!1;getName(){return this.name}}function parsePgArrayValue(e,i,n){for(let t=i;t<e.length;t++){let a=e[t];if("\\"===a){t++;continue}if('"'===a)return[e.slice(i,t).replace(/\\/g,""),t+1];if(!n&&(","===a||"}"===a))return[e.slice(i,t).replace(/\\/g,""),t]}return[e.slice(i).replace(/\\/g,""),e.length]}function parsePgNestedArray(e,i=0){let n=[],t=i,a=!1;for(;t<e.length;){let r=e[t];if(","===r){(a||t===i)&&n.push(""),a=!0,t++;continue}if(a=!1,"\\"===r){t+=2;continue}if('"'===r){let[i,a]=parsePgArrayValue(e,t+1,!0);n.push(i),t=a;continue}if("}"===r)return[n,t+1];if("{"===r){let[i,a]=parsePgNestedArray(e,t+1);n.push(i),t=a;continue}let[o,u]=parsePgArrayValue(e,t,!1);n.push(o),t=u}return[n,t]}function parsePgArray(e){let[i]=parsePgNestedArray(e,1);return i}function makePgArray(e){return`{${e.map(e=>Array.isArray(e)?makePgArray(e):"string"==typeof e?`"${e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`:`${e}`).join(",")}}`}class e1 extends eK{foreignKeyConfigs=[];static [eI]="PgColumnBuilder";array(e){return new e8(this.config.name,this,e)}references(e,i={}){return this.foreignKeyConfigs.push({ref:e,actions:i}),this}unique(e,i){return this.config.isUnique=!0,this.config.uniqueName=e,this.config.uniqueType=i?.nulls,this}generatedAlwaysAs(e){return this.config.generated={as:e,type:"always",mode:"stored"},this}buildForeignKeys(e,i){return this.foreignKeyConfigs.map(({ref:n,actions:t})=>iife((n,t)=>{let a=new ez(()=>({columns:[e],foreignColumns:[n()]}));return t.onUpdate&&a.onUpdate(t.onUpdate),t.onDelete&&a.onDelete(t.onDelete),a.build(i)},n,t))}buildExtraConfigColumn(e){return new e2(e,this.config)}}class e3 extends eU{constructor(e,i){i.uniqueName||(i.uniqueName=uniqueKeyName(e,[i.name])),super(e,i),this.table=e}static [eI]="PgColumn"}class e2 extends e3{static [eI]="ExtraConfigColumn";getSQLType(){return this.getSQLType()}indexConfig={order:this.config.order??"asc",nulls:this.config.nulls??"last",opClass:this.config.opClass};defaultConfig={order:"asc",nulls:"last",opClass:void 0};asc(){return this.indexConfig.order="asc",this}desc(){return this.indexConfig.order="desc",this}nullsFirst(){return this.indexConfig.nulls="first",this}nullsLast(){return this.indexConfig.nulls="last",this}op(e){return this.indexConfig.opClass=e,this}}class e4{static [eI]=null;constructor(e,i,n,t){this.name=e,this.keyAsName=i,this.type=n,this.indexConfig=t}name;keyAsName;type;indexConfig}class e8 extends e1{static [eI]="PgArrayBuilder";constructor(e,i,n){super(e,"array","PgArray"),this.config.baseBuilder=i,this.config.size=n}build(e){let i=this.config.baseBuilder.build(e);return new e6(e,this.config,i)}}class e6 extends e3{constructor(e,i,n,t){super(e,i),this.baseColumn=n,this.range=t,this.size=i.size}size;static [eI]="PgArray";getSQLType(){return`${this.baseColumn.getSQLType()}[${"number"==typeof this.size?this.size:""}]`}mapFromDriverValue(e){return"string"==typeof e&&(e=parsePgArray(e)),e.map(e=>this.baseColumn.mapFromDriverValue(e))}mapToDriverValue(e,i=!1){let n=e.map(e=>null===e?null:entity_is(this.baseColumn,e6)?this.baseColumn.mapToDriverValue(e,!0):this.baseColumn.mapToDriverValue(e));return i?n:makePgArray(n)}}class e5 extends e1{static [eI]="PgEnumObjectColumnBuilder";constructor(e,i){super(e,"string","PgEnumObjectColumn"),this.config.enum=i}build(e){return new e7(e,this.config)}}class e7 extends e3{static [eI]="PgEnumObjectColumn";enum;enumValues=this.config.enum.enumValues;constructor(e,i){super(e,i),this.enum=i.enum}getSQLType(){return this.enum.enumName}}let e9=Symbol.for("drizzle:isPgEnum");function isPgEnum(e){return!!e&&"function"==typeof e&&e9 in e&&!0===e[e9]}class ie extends e1{static [eI]="PgEnumColumnBuilder";constructor(e,i){super(e,"string","PgEnumColumn"),this.config.enum=i}build(e){return new it(e,this.config)}}class it extends e3{static [eI]="PgEnumColumn";enum=this.config.enum;enumValues=this.config.enum.enumValues;constructor(e,i){super(e,i),this.enum=i.enum}getSQLType(){return this.enum.enumName}}class ia{static [eI]="Subquery";constructor(e,i,n,t=!1,a=[]){this._={brand:"Subquery",sql:e,selectedFields:i,alias:n,isWith:t,usedTables:a}}}class ir extends ia{static [eI]="WithSubquery"}let io=(n,t)=>e?(i||(i=e.trace.getTracer("drizzle-orm","0.45.1")),iife((e,i)=>i.startActiveSpan(n,i=>{try{return t(i)}catch(n){throw i.setStatus({code:e.SpanStatusCode.ERROR,message:n instanceof Error?n.message:"Unknown error"}),n}finally{i.end()}}),e,i)):t(),iu=Symbol.for("drizzle:ViewBaseConfig"),is=Symbol.for("drizzle:Schema"),il=Symbol.for("drizzle:Columns"),ih=Symbol.for("drizzle:ExtraConfigColumns"),ig=Symbol.for("drizzle:OriginalName"),ic=Symbol.for("drizzle:BaseName"),id=Symbol.for("drizzle:IsAlias"),ip=Symbol.for("drizzle:ExtraConfigBuilder"),im=Symbol.for("drizzle:IsDrizzleTable");class iy{static [eI]="Table";static Symbol={Name:e$,Schema:is,OriginalName:ig,Columns:il,ExtraConfigColumns:ih,BaseName:ic,IsAlias:id,ExtraConfigBuilder:ip};[e$];[ig];[is];[il];[ih];[ic];[id]=!1;[im]=!0;[ip]=void 0;constructor(e,i,n){this[e$]=this[ig]=e,this[is]=i,this[ic]=n}}function getTableUniqueName(e){return`${e[is]??"public"}.${e[e$]}`}class iS{static [eI]=null}function isSQLWrapper(e){return null!=e&&"function"==typeof e.getSQL}function mergeQueries(e){let i={sql:"",params:[]};for(let n of e)i.sql+=n.sql,i.params.push(...n.params),n.typings?.length&&(i.typings||(i.typings=[]),i.typings.push(...n.typings));return i}class ib{static [eI]="StringChunk";value;constructor(e){this.value=Array.isArray(e)?e:[e]}getSQL(){return new iC([this])}}class iC{constructor(e){for(let i of(this.queryChunks=e,e))if(entity_is(i,iy)){let e=i[iy.Symbol.Schema];this.usedTables.push(void 0===e?i[iy.Symbol.Name]:e+"."+i[iy.Symbol.Name])}}static [eI]="SQL";decoder=iw;shouldInlineParams=!1;usedTables=[];append(e){return this.queryChunks.push(...e.queryChunks),this}toQuery(e){return io("drizzle.buildSQL",i=>{let n=this.buildQueryFromSourceParams(this.queryChunks,e);return i?.setAttributes({"drizzle.query.text":n.sql,"drizzle.query.params":JSON.stringify(n.params)}),n})}buildQueryFromSourceParams(e,i){let n=Object.assign({},i,{inlineParams:i.inlineParams||this.shouldInlineParams,paramStartIndex:i.paramStartIndex||{value:0}}),{casing:t,escapeName:a,escapeParam:r,prepareTyping:o,inlineParams:u,paramStartIndex:s}=n;return mergeQueries(e.map(e=>{if(entity_is(e,ib))return{sql:e.value.join(""),params:[]};if(entity_is(e,iT))return{sql:a(e.value),params:[]};if(void 0===e)return{sql:"",params:[]};if(Array.isArray(e)){let i=[new ib("(")];for(let[n,t]of e.entries())i.push(t),n<e.length-1&&i.push(new ib(", "));return i.push(new ib(")")),this.buildQueryFromSourceParams(i,n)}if(entity_is(e,iC))return this.buildQueryFromSourceParams(e.queryChunks,{...n,inlineParams:u||e.shouldInlineParams});if(entity_is(e,iy)){let i=e[iy.Symbol.Schema],n=e[iy.Symbol.Name];return{sql:void 0===i||e[id]?a(n):a(i)+"."+a(n),params:[]}}if(entity_is(e,eU)){let n=t.getColumnCasing(e);if("indexes"===i.invokeSource)return{sql:a(n),params:[]};let r=e.table[iy.Symbol.Schema];return{sql:e.table[id]||void 0===r?a(e.table[iy.Symbol.Name])+"."+a(n):a(r)+"."+a(e.table[iy.Symbol.Name])+"."+a(n),params:[]}}if(entity_is(e,iv)){let i=e[iu].schema,n=e[iu].name;return{sql:void 0===i||e[iu].isAlias?a(n):a(i)+"."+a(n),params:[]}}if(entity_is(e,iE)){if(entity_is(e.value,iY))return{sql:r(s.value++,e),params:[e],typings:["none"]};let i=null===e.value?null:e.encoder.mapToDriverValue(e.value);if(entity_is(i,iC))return this.buildQueryFromSourceParams([i],n);if(u)return{sql:this.mapInlineParam(i,n),params:[]};let t=["none"];return o&&(t=[o(e.encoder)]),{sql:r(s.value++,i),params:[i],typings:t}}return entity_is(e,iY)?{sql:r(s.value++,e),params:[e],typings:["none"]}:entity_is(e,iC.Aliased)&&void 0!==e.fieldAlias?{sql:a(e.fieldAlias),params:[]}:entity_is(e,ia)?e._.isWith?{sql:a(e._.alias),params:[]}:this.buildQueryFromSourceParams([new ib("("),e._.sql,new ib(") "),new iT(e._.alias)],n):isPgEnum(e)?e.schema?{sql:a(e.schema)+"."+a(e.enumName),params:[]}:{sql:a(e.enumName),params:[]}:isSQLWrapper(e)?e.shouldOmitSQLParens?.()?this.buildQueryFromSourceParams([e.getSQL()],n):this.buildQueryFromSourceParams([new ib("("),e.getSQL(),new ib(")")],n):u?{sql:this.mapInlineParam(e,n),params:[]}:{sql:r(s.value++,e),params:[e],typings:["none"]}}))}mapInlineParam(e,{escapeString:i}){if(null===e)return"null";if("number"==typeof e||"boolean"==typeof e)return e.toString();if("string"==typeof e)return i(e);if("object"==typeof e){let n=e.toString();return"[object Object]"===n?i(JSON.stringify(e)):i(n)}throw Error("Unexpected param value: "+e)}getSQL(){return this}as(e){return void 0===e?this:new iC.Aliased(this,e)}mapWith(e){return this.decoder="function"==typeof e?{mapFromDriverValue:e}:e,this}inlineParams(){return this.shouldInlineParams=!0,this}if(e){return e?this:void 0}}class iT{constructor(e){this.value=e}static [eI]="Name";brand;getSQL(){return new iC([this])}}function isDriverValueEncoder(e){return"object"==typeof e&&null!==e&&"mapToDriverValue"in e&&"function"==typeof e.mapToDriverValue}let iw={mapFromDriverValue:e=>e},ix={mapToDriverValue:e=>e};({...iw,...ix});class iE{constructor(e,i=ix){this.value=e,this.encoder=i}static [eI]="Param";brand;getSQL(){return new iC([this])}}function sql_sql(e,...i){let n=[];for(let[t,a]of((i.length>0||e.length>0&&""!==e[0])&&n.push(new ib(e[0])),i.entries()))n.push(a,new ib(e[t+1]));return new iC(n)}(X=sql_sql||(sql_sql={})).empty=function(){return new iC([])},X.fromList=function(e){return new iC(e)},X.raw=function(e){return new iC([new ib(e)])},X.join=function(e,i){let n=[];for(let[t,a]of e.entries())t>0&&void 0!==i&&n.push(i),n.push(a);return new iC(n)},X.identifier=function(e){return new iT(e)},X.placeholder=function(e){return new iY(e)},X.param=function(e,i){return new iE(e,i)};var iL=iC||(iC={});class i_{constructor(e,i){this.sql=e,this.fieldAlias=i}static [eI]="SQL.Aliased";isSelectionField=!1;getSQL(){return this.sql}clone(){return new i_(this.sql,this.fieldAlias)}}iL.Aliased=i_;class iY{constructor(e){this.name=e}static [eI]="Placeholder";getSQL(){return new iC([this])}}function fillPlaceholders(e,i){return e.map(e=>{if(entity_is(e,iY)){if(!(e.name in i))throw Error(`No value for placeholder "${e.name}" was provided`);return i[e.name]}if(entity_is(e,iE)&&entity_is(e.value,iY)){if(!(e.value.name in i))throw Error(`No value for placeholder "${e.value.name}" was provided`);return e.encoder.mapToDriverValue(i[e.value.name])}return e})}let iD=Symbol.for("drizzle:IsDrizzleView");class iv{static [eI]="View";[iu];[iD]=!0;constructor({name:e,schema:i,selectedFields:n,query:t}){this[iu]={name:e,originalName:e,schema:i,selectedFields:n,query:t,isExisting:!t,isAlias:!1}}getSQL(){return new iC([this])}}eU.prototype.getSQL=function(){return new iC([this])},iy.prototype.getSQL=function(){return new iC([this])},ia.prototype.getSQL=function(){return new iC([this])};class iA{constructor(e){this.table=e}static [eI]="ColumnAliasProxyHandler";get(e,i){return"table"===i?this.table:e[i]}}class iN{constructor(e,i){this.alias=e,this.replaceOriginalName=i}static [eI]="TableAliasProxyHandler";get(e,i){if(i===iy.Symbol.IsAlias)return!0;if(i===iy.Symbol.Name||this.replaceOriginalName&&i===iy.Symbol.OriginalName)return this.alias;if(i===iu)return{...e[iu],name:this.alias,isAlias:!0};if(i===iy.Symbol.Columns){let i=e[iy.Symbol.Columns];if(!i)return i;let n={};return Object.keys(i).map(t=>{n[t]=new Proxy(i[t],new iA(new Proxy(e,this)))}),n}let n=e[i];return entity_is(n,eU)?new Proxy(n,new iA(new Proxy(e,this))):n}}class iP{constructor(e){this.alias=e}static [eI]=null;get(e,i){return"sourceTable"===i?aliasedTable(e.sourceTable,this.alias):e[i]}}function aliasedTable(e,i){return new Proxy(e,new iN(i,!1))}function aliasedTableColumn(e,i){return new Proxy(e,new iA(new Proxy(e.table,new iN(i,!1))))}function mapColumnsInAliasedSQLToAlias(e,i){return new iC.Aliased(mapColumnsInSQLToAlias(e.sql,i),e.fieldAlias)}function mapColumnsInSQLToAlias(e,i){return sql_sql.join(e.queryChunks.map(e=>entity_is(e,eU)?aliasedTableColumn(e,i):entity_is(e,iC)?mapColumnsInSQLToAlias(e,i):entity_is(e,iC.Aliased)?mapColumnsInAliasedSQLToAlias(e,i):e))}function toSnakeCase(e){return(e.replace(/['\u2019]/g,"").match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[]).map(e=>e.toLowerCase()).join("_")}function toCamelCase(e){return(e.replace(/['\u2019]/g,"").match(/[\da-z]+|[A-Z]+(?![a-z])|[A-Z][\da-z]+/g)??[]).reduce((e,i,n)=>e+(0===n?i.toLowerCase():`${i[0].toUpperCase()}${i.slice(1)}`),"")}function noopCase(e){return e}class iZ{static [eI]="CasingCache";cache={};cachedTables={};convert;constructor(e){this.convert="snake_case"===e?toSnakeCase:"camelCase"===e?toCamelCase:noopCase}getColumnCasing(e){if(!e.keyAsName)return e.name;let i=e.table[iy.Symbol.Schema]??"public",n=e.table[iy.Symbol.OriginalName],t=`${i}.${n}.${e.name}`;return this.cache[t]||this.cacheTable(e.table),this.cache[t]}cacheTable(e){let i=e[iy.Symbol.Schema]??"public",n=e[iy.Symbol.OriginalName],t=`${i}.${n}`;if(!this.cachedTables[t]){for(let i of Object.values(e[iy.Symbol.Columns])){let e=`${t}.${i.name}`;this.cache[e]=this.convert(i.name)}this.cachedTables[t]=!0}}clearCache(){this.cache={},this.cachedTables={}}}class iR extends Error{static [eI]="DrizzleError";constructor({message:e,cause:i}){super(e),this.name="DrizzleError",this.cause=i}}class iM extends Error{constructor(e,i,n){super(`Failed query: ${e}
|
|
2
2
|
params: ${i}`),this.query=e,this.params=i,this.cause=n,Error.captureStackTrace(this,iM),n&&(this.cause=n)}}class iJ extends iR{static [eI]="TransactionRollbackError";constructor(){super({message:"Rollback"})}}class ik extends e1{static [eI]="PgJsonbBuilder";constructor(e){super(e,"json","PgJsonb")}build(e){return new iB(e,this.config)}}class iB extends e3{static [eI]="PgJsonb";constructor(e,i){super(e,i)}getSQLType(){return"jsonb"}mapToDriverValue(e){return JSON.stringify(e)}mapFromDriverValue(e){if("string"==typeof e)try{return JSON.parse(e)}catch{}return e}}class iH extends e1{static [eI]="PgJsonBuilder";constructor(e){super(e,"json","PgJson")}build(e){return new iF(e,this.config)}}class iF extends e3{static [eI]="PgJson";constructor(e,i){super(e,i)}getSQLType(){return"json"}mapToDriverValue(e){return JSON.stringify(e)}mapFromDriverValue(e){if("string"==typeof e)try{return JSON.parse(e)}catch{}return e}}class iX extends e1{static [eI]="PgNumericBuilder";constructor(e,i,n){super(e,"string","PgNumeric"),this.config.precision=i,this.config.scale=n}build(e){return new iI(e,this.config)}}class iI extends e3{static [eI]="PgNumeric";precision;scale;constructor(e,i){super(e,i),this.precision=i.precision,this.scale=i.scale}mapFromDriverValue(e){return"string"==typeof e?e:String(e)}getSQLType(){return void 0!==this.precision&&void 0!==this.scale?`numeric(${this.precision}, ${this.scale})`:void 0===this.precision?"numeric":`numeric(${this.precision})`}}class iO extends e1{static [eI]="PgNumericNumberBuilder";constructor(e,i,n){super(e,"number","PgNumericNumber"),this.config.precision=i,this.config.scale=n}build(e){return new iQ(e,this.config)}}class iQ extends e3{static [eI]="PgNumericNumber";precision;scale;constructor(e,i){super(e,i),this.precision=i.precision,this.scale=i.scale}mapFromDriverValue(e){return"number"==typeof e?e:Number(e)}mapToDriverValue=String;getSQLType(){return void 0!==this.precision&&void 0!==this.scale?`numeric(${this.precision}, ${this.scale})`:void 0===this.precision?"numeric":`numeric(${this.precision})`}}class iG extends e1{static [eI]="PgNumericBigIntBuilder";constructor(e,i,n){super(e,"bigint","PgNumericBigInt"),this.config.precision=i,this.config.scale=n}build(e){return new iU(e,this.config)}}class iU extends e3{static [eI]="PgNumericBigInt";precision;scale;constructor(e,i){super(e,i),this.precision=i.precision,this.scale=i.scale}mapFromDriverValue=BigInt;mapToDriverValue=String;getSQLType(){return void 0!==this.precision&&void 0!==this.scale?`numeric(${this.precision}, ${this.scale})`:void 0===this.precision?"numeric":`numeric(${this.precision})`}}class iq extends e1{static [eI]="PgDateColumnBaseBuilder";defaultNow(){return this.default(sql_sql`now()`)}}class iK extends iq{constructor(e,i,n){super(e,"string","PgTime"),this.withTimezone=i,this.precision=n,this.config.withTimezone=i,this.config.precision=n}static [eI]="PgTimeBuilder";build(e){return new i$(e,this.config)}}class i$ extends e3{static [eI]="PgTime";withTimezone;precision;constructor(e,i){super(e,i),this.withTimezone=i.withTimezone,this.precision=i.precision}getSQLType(){let e=void 0===this.precision?"":`(${this.precision})`;return`time${e}${this.withTimezone?" with time zone":""}`}}class iz extends iq{static [eI]="PgTimestampBuilder";constructor(e,i,n){super(e,"date","PgTimestamp"),this.config.withTimezone=i,this.config.precision=n}build(e){return new iW(e,this.config)}}class iW extends e3{static [eI]="PgTimestamp";withTimezone;precision;constructor(e,i){super(e,i),this.withTimezone=i.withTimezone,this.precision=i.precision}getSQLType(){let e=void 0===this.precision?"":` (${this.precision})`;return`timestamp${e}${this.withTimezone?" with time zone":""}`}mapFromDriverValue(e){return"string"==typeof e?new Date(this.withTimezone?e:e+"+0000"):e}mapToDriverValue=e=>e.toISOString()}class ij extends iq{static [eI]="PgTimestampStringBuilder";constructor(e,i,n){super(e,"string","PgTimestampString"),this.config.withTimezone=i,this.config.precision=n}build(e){return new iV(e,this.config)}}class iV extends e3{static [eI]="PgTimestampString";withTimezone;precision;constructor(e,i){super(e,i),this.withTimezone=i.withTimezone,this.precision=i.precision}getSQLType(){let e=void 0===this.precision?"":`(${this.precision})`;return`timestamp${e}${this.withTimezone?" with time zone":""}`}mapFromDriverValue(e){if("string"==typeof e)return e;let i=e.toISOString().slice(0,-1).replace("T"," ");if(this.withTimezone){let n=e.getTimezoneOffset();return`${i}${n<=0?"+":"-"}${Math.floor(Math.abs(n)/60).toString().padStart(2,"0")}`}return i}}class i0 extends iq{static [eI]="PgDateBuilder";constructor(e){super(e,"date","PgDate")}build(e){return new i1(e,this.config)}}class i1 extends e3{static [eI]="PgDate";getSQLType(){return"date"}mapFromDriverValue(e){return"string"==typeof e?new Date(e):e}mapToDriverValue(e){return e.toISOString()}}class i3 extends iq{static [eI]="PgDateStringBuilder";constructor(e){super(e,"string","PgDateString")}build(e){return new i2(e,this.config)}}class i2 extends e3{static [eI]="PgDateString";getSQLType(){return"date"}mapFromDriverValue(e){return"string"==typeof e?e:e.toISOString().slice(0,-14)}}class i4 extends e1{static [eI]="PgUUIDBuilder";constructor(e){super(e,"string","PgUUID")}defaultRandom(){return this.default(sql_sql`gen_random_uuid()`)}build(e){return new i8(e,this.config)}}class i8 extends e3{static [eI]="PgUUID";getSQLType(){return"uuid"}}let i6=Symbol.for("drizzle:PgInlineForeignKeys"),i5=Symbol.for("drizzle:EnableRLS");class i7 extends iy{static [eI]="PgTable";static Symbol=Object.assign({},iy.Symbol,{InlineForeignKeys:i6,EnableRLS:i5});[i6]=[];[i5]=!1;[iy.Symbol.ExtraConfigBuilder]=void 0;[iy.Symbol.ExtraConfigColumns]={}}class i9{static [eI]="PgPrimaryKeyBuilder";columns;name;constructor(e,i){this.columns=e,this.name=i}build(e){return new ni(e,this.columns,this.name)}}class ni{constructor(e,i,n){this.table=e,this.columns=i,this.name=n}static [eI]="PgPrimaryKey";columns;name;getName(){return this.name??`${this.table[i7.Symbol.Name]}_${this.columns.map(e=>e.name).join("_")}_pk`}}function bindIfParam(e,i){return!isDriverValueEncoder(i)||isSQLWrapper(e)||entity_is(e,iE)||entity_is(e,iY)||entity_is(e,eU)||entity_is(e,iy)||entity_is(e,iv)?e:new iE(e,i)}let eq=(e,i)=>sql_sql`${e} = ${bindIfParam(i,e)}`,ne=(e,i)=>sql_sql`${e} <> ${bindIfParam(i,e)}`;function and(...e){let i=e.filter(e=>void 0!==e);if(0!==i.length)return new iC(1===i.length?i:[new ib("("),sql_sql.join(i,new ib(" and ")),new ib(")")])}function or(...e){let i=e.filter(e=>void 0!==e);if(0!==i.length)return new iC(1===i.length?i:[new ib("("),sql_sql.join(i,new ib(" or ")),new ib(")")])}function not(e){return sql_sql`not ${e}`}let gt=(e,i)=>sql_sql`${e} > ${bindIfParam(i,e)}`,gte=(e,i)=>sql_sql`${e} >= ${bindIfParam(i,e)}`,lt=(e,i)=>sql_sql`${e} < ${bindIfParam(i,e)}`,lte=(e,i)=>sql_sql`${e} <= ${bindIfParam(i,e)}`;function inArray(e,i){return Array.isArray(i)?0===i.length?sql_sql`false`:sql_sql`${e} in ${i.map(i=>bindIfParam(i,e))}`:sql_sql`${e} in ${bindIfParam(i,e)}`}function notInArray(e,i){return Array.isArray(i)?0===i.length?sql_sql`true`:sql_sql`${e} not in ${i.map(i=>bindIfParam(i,e))}`:sql_sql`${e} not in ${bindIfParam(i,e)}`}function isNull(e){return sql_sql`${e} is null`}function isNotNull(e){return sql_sql`${e} is not null`}function exists(e){return sql_sql`exists ${e}`}function notExists(e){return sql_sql`not exists ${e}`}function between(e,i,n){return sql_sql`${e} between ${bindIfParam(i,e)} and ${bindIfParam(n,e)}`}function notBetween(e,i,n){return sql_sql`${e} not between ${bindIfParam(i,e)} and ${bindIfParam(n,e)}`}function like(e,i){return sql_sql`${e} like ${i}`}function notLike(e,i){return sql_sql`${e} not like ${i}`}function ilike(e,i){return sql_sql`${e} ilike ${i}`}function notIlike(e,i){return sql_sql`${e} not ilike ${i}`}function asc(e){return sql_sql`${e} asc`}function select_desc(e){return sql_sql`${e} desc`}class nn{constructor(e,i,n){this.sourceTable=e,this.referencedTable=i,this.relationName=n,this.referencedTableName=i[iy.Symbol.Name]}static [eI]="Relation";referencedTableName;fieldName}class nt{constructor(e,i){this.table=e,this.config=i}static [eI]="Relations"}class na extends nn{constructor(e,i,n,t){super(e,i,n?.relationName),this.config=n,this.isNullable=t}static [eI]="One";withFieldName(e){let i=new na(this.sourceTable,this.referencedTable,this.config,this.isNullable);return i.fieldName=e,i}}class nr extends nn{constructor(e,i,n){super(e,i,n?.relationName),this.config=n}static [eI]="Many";withFieldName(e){let i=new nr(this.sourceTable,this.referencedTable,this.config);return i.fieldName=e,i}}function getOperators(){return{and:and,between:between,eq:eq,exists:exists,gt:gt,gte:gte,ilike:ilike,inArray:inArray,isNull:isNull,isNotNull:isNotNull,like:like,lt:lt,lte:lte,ne:ne,not:not,notBetween:notBetween,notExists:notExists,notLike:notLike,notIlike:notIlike,notInArray:notInArray,or:or,sql:sql_sql}}function getOrderByOperators(){return{sql:sql_sql,asc:asc,desc:select_desc}}function extractTablesRelationalConfig(e,i){1===Object.keys(e).length&&"default"in e&&!entity_is(e.default,iy)&&(e=e.default);let n={},t={},a={};for(let[r,o]of Object.entries(e))if(entity_is(o,iy)){let e=getTableUniqueName(o),i=t[e];for(let t of(n[e]=r,a[r]={tsName:r,dbName:o[iy.Symbol.Name],schema:o[iy.Symbol.Schema],columns:o[iy.Symbol.Columns],relations:i?.relations??{},primaryKey:i?.primaryKey??[]},Object.values(o[iy.Symbol.Columns])))t.primary&&a[r].primaryKey.push(t);let u=o[iy.Symbol.ExtraConfigBuilder]?.(o[iy.Symbol.ExtraConfigColumns]);if(u)for(let e of Object.values(u))entity_is(e,i9)&&a[r].primaryKey.push(...e.columns)}else if(entity_is(o,nt)){let e,r=getTableUniqueName(o.table),u=n[r];for(let[n,s]of Object.entries(o.config(i(o.table))))if(u){let i=a[u];i.relations[n]=s,e&&i.primaryKey.push(...e)}else r in t||(t[r]={relations:{},primaryKey:e}),t[r].relations[n]=s}return{tables:a,tableNamesMap:n}}function createOne(e){return function(i,n){return new na(e,i,n,n?.fields.reduce((e,i)=>e&&i.notNull,!0)??!1)}}function createMany(e){return function(i,n){return new nr(e,i,n)}}function normalizeRelation(e,i,n){if(entity_is(n,na)&&n.config)return{fields:n.config.fields,references:n.config.references};let t=i[getTableUniqueName(n.referencedTable)];if(!t)throw Error(`Table "${n.referencedTable[iy.Symbol.Name]}" not found in schema`);let a=e[t];if(!a)throw Error(`Table "${t}" not found in schema`);let r=n.sourceTable,o=i[getTableUniqueName(r)];if(!o)throw Error(`Table "${r[iy.Symbol.Name]}" not found in schema`);let u=[];for(let e of Object.values(a.relations))(n.relationName&&n!==e&&e.relationName===n.relationName||!n.relationName&&e.referencedTable===n.sourceTable)&&u.push(e);if(u.length>1)throw n.relationName?Error(`There are multiple relations with name "${n.relationName}" in table "${t}"`):Error(`There are multiple relations between "${t}" and "${n.sourceTable[iy.Symbol.Name]}". Please specify relation name`);if(u[0]&&entity_is(u[0],na)&&u[0].config)return{fields:u[0].config.references,references:u[0].config.fields};throw Error(`There is not enough information to infer relation "${o}.${n.fieldName}"`)}function createTableRelationsHelpers(e){return{one:createOne(e),many:createMany(e)}}function mapRelationalRow(e,i,n,t,a=e=>e){let r={};for(let[o,u]of t.entries())if(u.isJson){let t=i.relations[u.tsKey],s=n[o],l="string"==typeof s?JSON.parse(s):s;r[u.tsKey]=entity_is(t,na)?l&&mapRelationalRow(e,e[u.relationTableTsKey],l,u.selection,a):l.map(i=>mapRelationalRow(e,e[u.relationTableTsKey],i,u.selection,a))}else{let e,i=a(n[o]),t=u.field;e=entity_is(t,eU)?t:entity_is(t,iC)?t.decoder:t.sql.decoder,r[u.tsKey]=null===i?null:e.mapFromDriverValue(i)}return r}function mapResultRow(e,i,n){let t={},a=e.reduce((e,{path:a,field:r},o)=>{let u;u=entity_is(r,eU)?r:entity_is(r,iC)?r.decoder:entity_is(r,ia)?r._.sql.decoder:r.sql.decoder;let s=e;for(let[e,l]of a.entries())if(e<a.length-1)l in s||(s[l]={}),s=s[l];else{let e=i[o],h=s[l]=null===e?null:u.mapFromDriverValue(e);if(n&&entity_is(r,eU)&&2===a.length){let e=a[0];e in t?"string"==typeof t[e]&&t[e]!==r.table[e$]&&(t[e]=!1):t[e]=null===h&&r.table[e$]}}return e},{});if(n&&Object.keys(t).length>0)for(let[e,i]of Object.entries(t))"string"!=typeof i||n[i]||(a[e]=null);return a}function orderSelectedFields(e,i){return Object.entries(e).reduce((e,[n,t])=>{if("string"!=typeof n)return e;let a=i?[...i,n]:[n];return entity_is(t,eU)||entity_is(t,iC)||entity_is(t,iC.Aliased)||entity_is(t,ia)?e.push({path:a,field:t}):entity_is(t,iy)?e.push(...orderSelectedFields(t[iy.Symbol.Columns],a)):e.push(...orderSelectedFields(t,a)),e},[])}function haveSameKeys(e,i){let n=Object.keys(e),t=Object.keys(i);if(n.length!==t.length)return!1;for(let[e,i]of n.entries())if(i!==t[e])return!1;return!0}function mapUpdateSet(e,i){let n=Object.entries(i).filter(([,e])=>void 0!==e).map(([i,n])=>entity_is(n,iC)||entity_is(n,eU)?[i,n]:[i,new iE(n,e[iy.Symbol.Columns][i])]);if(0===n.length)throw Error("No values to set");return Object.fromEntries(n)}function applyMixins(e,i){for(let n of i)for(let i of Object.getOwnPropertyNames(n.prototype))"constructor"!==i&&Object.defineProperty(e.prototype,i,Object.getOwnPropertyDescriptor(n.prototype,i)||Object.create(null))}function getTableColumns(e){return e[iy.Symbol.Columns]}function getTableLikeName(e){return entity_is(e,ia)?e._.alias:entity_is(e,iv)?e[iu].name:entity_is(e,iC)?void 0:e[iy.Symbol.IsAlias]?e[iy.Symbol.Name]:e[iy.Symbol.BaseName]}function isConfig(e){if("object"!=typeof e||null===e||"Object"!==e.constructor.name)return!1;if("logger"in e){let i=typeof e.logger;return"boolean"===i||"object"===i&&"function"==typeof e.logger.logQuery||"undefined"===i}if("schema"in e){let i=typeof e.schema;return"object"===i||"undefined"===i}if("casing"in e){let i=typeof e.casing;return"string"===i||"undefined"===i}if("mode"in e)return"default"===e.mode&&"planetscale"===e.mode&&void 0===e.mode;if("connection"in e){let i=typeof e.connection;return"string"===i||"object"===i||"undefined"===i}if("client"in e){let i=typeof e.client;return"object"===i||"function"===i||"undefined"===i}return 0===Object.keys(e).length}"u"<typeof TextDecoder||new TextDecoder;class no extends iv{static [eI]="PgViewBase"}class nu{static [eI]="PgDialect";casing;constructor(e){this.casing=new iZ(e?.casing)}async migrate(e,i,n){let t="string"==typeof n?"__drizzle_migrations":n.migrationsTable??"__drizzle_migrations",a="string"==typeof n?"drizzle":n.migrationsSchema??"drizzle",r=sql_sql`
|
|
3
3
|
CREATE TABLE IF NOT EXISTS ${sql_sql.identifier(a)}.${sql_sql.identifier(t)} (
|
|
4
4
|
id SERIAL PRIMARY KEY,
|
|
@@ -91,4 +91,4 @@ try:
|
|
|
91
91
|
print(f"{env_var.key}={env_var.value}")
|
|
92
92
|
except Exception as e:
|
|
93
93
|
print(f"# Error: {e}", file=sys.stderr)
|
|
94
|
-
`;for(let t of Z(`python3 -c '${n.replace(/'/g,"'\"'\"'")}'`,{encoding:"utf-8",timeout:1e4,stdio:["pipe","pipe","pipe"]}).trim().split("\n")){if(t.startsWith("#"))continue;let n=t.indexOf("=");if(n>0){let a=t.substring(0,n),r=t.substring(n+1);(r.startsWith("'")&&r.endsWith("'")||r.startsWith('"')&&r.endsWith('"'))&&(r=r.slice(1,-1)),"COZE_INTEGRATION_BASE_URL"===a?e=r:"COZE_WORKLOAD_IDENTITY_API_KEY"===a&&(i=r)}}}catch{}return mP=!0,mZ={baseUrl:e,apiKey:i}}class mR{baseUrl;apiKey;configured;constructor(){try{let e=loadReportEnv();if(this.baseUrl=e.baseUrl,this.apiKey=e.apiKey,this.configured=!!(this.baseUrl&&this.apiKey),!this.configured){let e=[];this.baseUrl||e.push("COZE_INTEGRATION_BASE_URL"),this.apiKey||e.push("COZE_WORKLOAD_IDENTITY_API_KEY"),console.error(`[report] ReportClient not configured: ${e.join(", ")} is missing`)}}catch(e){this.baseUrl="",this.apiKey="",this.configured=!1,console.error("[report] ReportClient config failed:",e)}}async batchReport(e){if(!e.length)return;if(!this.configured)return void console.error(`[report] batchReport skipped: ReportClient is not configured. Set COZE_INTEGRATION_BASE_URL and COZE_WORKLOAD_IDENTITY_API_KEY environment variables. Dropping ${e.length} entries.`);let i=`${this.baseUrl}/v1/memory_report/batch_report`,n=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json","x-coze-token":this.apiKey},body:JSON.stringify({entries:e}),signal:AbortSignal.timeout(1e4)});if(!n.ok)throw Error(`batchReport failed: ${n.status} ${n.statusText}`)}}class mM{buffer=[];timer=null;projectId;env;client;destroyed=!1;flushing=!1;pendingFlush=!1;onExitHandler;constructor(e){this.client=e,this.projectId=process.env.COZELOOP_WORKSPACE_ID||null,this.env=process.env.COZE_PROJECT_ENV||null,this.timer=setInterval(()=>this.flush(),6e4),this.timer.unref&&this.timer.unref(),this.onExitHandler=()=>{this.destroy()},process.on("beforeExit",()=>this.destroy()),process.on("SIGTERM",this.onExitHandler),process.on("SIGINT",this.onExitHandler)}add(e){if(!this.destroyed)try{this.buffer.length>=6e4&&this.buffer.shift(),e.project_id=this.projectId,e.env=this.env,this.buffer.push(e),this.buffer.length>=100&&this.flush().catch(()=>{})}catch(e){console.error("[report] buffer.add failed:",e)}}async flush(){if(this.flushing){this.pendingFlush=!0;return}if(!this.buffer.length)return;this.flushing=!0;let e=0;try{for(;;){let i=this.buffer.splice(0,100);if(!i.length)break;try{await this.client.batchReport(i),e=0}catch(t){if(e++,this.buffer.unshift(...i),this.buffer.length>6e4&&(this.buffer.length=6e4),e>=3){console.error(`[report] flush failed ${e} times, giving up until next cycle:`,t);break}let n=1e3*2**(e-1);console.error(`[report] flush failed (attempt ${e}/3), retrying in ${n}ms:`,t),await new Promise(e=>setTimeout(e,n));continue}if(!this.pendingFlush&&this.buffer.length<100)break;this.pendingFlush=!1}}finally{this.flushing=!1,this.pendingFlush=!1}}destroy(){this.destroyed||(this.destroyed=!0,this.timer&&(clearInterval(this.timer),this.timer=null),process.removeListener("SIGTERM",this.onExitHandler),process.removeListener("SIGINT",this.onExitHandler),this.flush().catch(()=>{}))}}let mJ=null;function getReportBuffer(){if(mJ)return mJ;try{let e=new mR;return mJ=new mM(e)}catch(e){return console.error("[report] failed to create singleton buffer:",e),null}}let mk=/((?:apikey|api_key|access_key|secret_key|access_token|token|secret|password|authorization|credential|X-Amz-Signature|X-Amz-Credential|X-Amz-Security-Token)=)[^&]*/gi;function truncate(e,i=1024){return null==e?null:e.length<=i?e:e.substring(0,i)+"...[truncated]"}function redactUrl(e){return e.replace(mk,"$1***")}function createWrappedFetch(e,i="supabase"){return async(n,t)=>{let a=Date.now();try{let r=await fetch(n,t);return safeRecordLog(e,i,n,t,r,null,a),r}catch(r){throw safeRecordLog(e,i,n,t,null,r,a),r}}}function safeRecordLog(e,i,n,t,a,r,o){try{let u=Date.now()-o,s="string"==typeof n?n:n instanceof URL?n.toString():n.url||"",l=t?.method||(n instanceof Request?n.method:"GET"),h=a?.status??null,g=null;if(t?.body)try{g=truncate("string"==typeof t.body?t.body:JSON.stringify(t.body))}catch{g=null}let c={source:i,project_id:null,env:null,method:l.toUpperCase(),url:redactUrl(s),request_body:g,response_body:null,status_code:h,error:r?.message??null,duration_ms:u,timestamp:o,success:null!==h&&h>=200&&h<300};if(a){let i=a.clone().body?.getReader();i?i.read().then(({value:n})=>{if(n){let e=new TextDecoder().decode(n.slice(0,2048));c.response_body=truncate(e)}i.cancel().catch(()=>{}),e.add(c)}).catch(()=>{e.add(c)}):e.add(c)}else e.add(c)}catch(e){console.error("[report] safeRecordLog error:",e)}}function createS3ReportMiddleware(e){return e?{middleware:(i,n)=>async n=>{let t=Date.now(),{request:a}=n;try{let r=await i(n);return safeRecordS3Log(e,a,r,null,t),r}catch(i){throw safeRecordS3Log(e,a,null,i,t),i}},options:{step:"deserialize",name:"reportLogger",override:!0}}:null}function safeRecordS3Log(e,i,n,t,a){try{let r=Date.now()-a,o=i?.method||"UNKNOWN",u=i?.hostname?`${i.protocol||"https:"}//${i.hostname}${i.path||""}`:"",s=n?.response?.statusCode??null,l=null;if(i?.body)try{let e=i.body;"string"==typeof e?l=truncate(e):Buffer.isBuffer(e)&&(l=truncate(`[Binary ${e.length} bytes]`))}catch{l=null}let h={source:"s3",project_id:null,env:null,method:o.toUpperCase(),url:redactUrl(u),request_body:l,response_body:null,status_code:s,error:t?.message??null,duration_ms:r,timestamp:a,success:null!==s&&s>=200&&s<300};if(n?.output)try{let{Body:e,...i}=n.output;Object.keys(i).length>0&&(h.response_body=truncate(JSON.stringify(i)))}catch{}e.add(h)}catch{}}function getStorageToken(){return process.env.COZE_WORKLOAD_IDENTITY_API_KEY||null}class mB{endpointUrl;accessKey;secretKey;bucketName;region;client=null;constructor(e={}){this.endpointUrl=process.env.COZE_BUCKET_ENDPOINT_URL||e.endpointUrl||"",this.accessKey=e.accessKey||"",this.secretKey=e.secretKey||"",this.bucketName=process.env.COZE_BUCKET_NAME||e.bucketName||"",this.region=e.region||mA.DEFAULT_REGION}getClient(){if(!this.client){if(!this.endpointUrl)throw Error("Storage endpoint not configured: Set COZE_BUCKET_ENDPOINT_URL");this.client=new fB({endpoint:this.endpointUrl,region:this.region,credentials:{accessKeyId:this.accessKey,secretAccessKey:this.secretKey},forcePathStyle:!0}),this.client.middlewareStack.add(e=>async i=>{let n=getStorageToken();return n&&i.request?.headers&&(i.request.headers["x-storage-token"]=n),e(i)},{step:"build",name:"injectStorageToken"}),this.installReportMiddleware(this.client)}return this.client}installReportMiddleware(e){try{let i=getReportBuffer(),n=createS3ReportMiddleware(i);n&&e.middlewareStack.add(n.middleware,n.options)}catch{}}generateObjectKey(e){let i=n$.default.extname(e).toLowerCase(),n=n$.default.basename(e,i),t=(0,t7.randomUUID)().replace(/-/g,"").slice(0,8);return n$.default.join(n$.default.dirname(e),`${n}_${t}${i}`)}resolveBucket(e){let i=e||process.env.COZE_BUCKET_NAME||this.bucketName;if(!i)throw Error("Bucket not configured: Provide bucket or set COZE_BUCKET_NAME");return i}sanitizeFileName(e){if(!e||!e.trim())return"file";let i=e.split("/").filter(e=>e.trim()).map(e=>{let i=e.lastIndexOf("."),n=i>0,t=n?e.slice(i):"",a=mY(n?e.slice(0,i):e);return((a=a.replace(/\s+/g,"_").replace(/[^A-Za-z0-9._-]/g,"_").replace(/_{2,}/g,"_").replace(/^[._-]+|[._-]+$/g,""))||"file")+t.replace(/[^A-Za-z0-9._-]/g,"")}).join("/");return Buffer.byteLength(i,"utf-8")>1024&&(i=i.slice(0,1e3)),i}async uploadFile(e){let{fileContent:i,fileName:n,contentType:t="application/octet-stream",bucket:a}=e,r=this.sanitizeFileName(n),o=this.getClient(),u=this.generateObjectKey(r),s=this.resolveBucket(a);return await o.send(new f2({Bucket:s,Key:u,Body:i,ContentType:t})),u}async readFile(e){let{fileKey:i,bucket:n}=e,t=this.getClient(),a=this.resolveBucket(n),r=await t.send(new f8({Bucket:a,Key:i}));if(!r.Body)throw Error("S3 GetObject returned no Body");let o=[];for await(let e of r.Body)o.push(Buffer.from(e));return Buffer.concat(o)}async deleteFile(e){let{fileKey:i,bucket:n}=e,t=this.getClient(),a=this.resolveBucket(n);return await t.send(new f6({Bucket:a,Key:i})),!0}async fileExists(e){let{fileKey:i,bucket:n}=e,t=this.getClient(),a=this.resolveBucket(n);try{return await t.send(new f5({Bucket:a,Key:i})),!0}catch(e){if("NotFound"===e.name||e.$metadata?.httpStatusCode===404)return!1;return console.error("Error checking file existence:",e),!1}}async listFiles(e={}){let{prefix:i,bucket:n,maxKeys:t=mA.DEFAULT_MAX_KEYS,continuationToken:a}=e;if(t<=0||t>1e3)throw Error("maxKeys must be between 1 and 1000");let r=this.getClient(),o=this.resolveBucket(n),u=await r.send(new f7({Bucket:o,MaxKeys:t,Prefix:i,ContinuationToken:a}));return{keys:(u.Contents||[]).filter(e=>e.Key).map(e=>e.Key),isTruncated:u.IsTruncated||!1,nextContinuationToken:u.NextContinuationToken}}async generatePresignedUrl(e){let{key:i,bucket:n,expireTime:t=mA.DEFAULT_PRESIGNED_EXPIRE_TIME}=e,a=getStorageToken();if(!a)throw Error("Failed to get x-storage-token: Set COZE_WORKLOAD_IDENTITY_API_KEY");let r=process.env.COZE_BUCKET_ENDPOINT_URL||this.endpointUrl;if(!r)throw Error("Sign endpoint not configured: Set COZE_BUCKET_ENDPOINT_URL");let o=r.replace(/\/$/,"")+"/sign-url",u=this.resolveBucket(n),s=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json","x-storage-token":a},body:JSON.stringify({bucket_name:u,path:i,expire_time:t})});if(!s.ok)throw Error(`Failed to generate presigned URL: ${s.status}`);let l=await s.text();if((s.headers.get("content-type")||"").includes("application/json")||l.trim().startsWith("{"))try{let e=JSON.parse(l);if(e.data?.url)return e.data.url;if(e.url||e.signed_url||e.presigned_url)return e.url||e.signed_url||e.presigned_url;throw Error("Sign service response missing url field")}catch{}return l}async streamUploadFile(e){let{stream:i,fileName:n,contentType:t="application/octet-stream",bucket:a}=e,r=this.sanitizeFileName(n),o=this.getClient(),u=this.generateObjectKey(r),s=new ms({client:o,params:{Bucket:this.resolveBucket(a),Key:u,Body:i,ContentType:t}});return await s.done(),u}async uploadFromUrl(e){let{url:i,bucket:n,timeout:t=mA.DEFAULT_UPLOAD_TIMEOUT}=e,a=new AbortController,r=setTimeout(()=>a.abort(),t);try{let e=await fetch(i,{signal:a.signal});if(!e.ok)throw Error(`Failed to fetch URL: ${e.status}`);let t=new URL(i),r=n$.default.basename(decodeURIComponent(t.pathname))||"file",o=e.headers.get("content-type")||"application/octet-stream",u=Buffer.from(await e.arrayBuffer());return this.uploadFile({fileContent:u,fileName:r,contentType:o,bucket:n})}finally{clearTimeout(r)}}async chunkUploadFile(e){let{chunks:i,fileName:n,contentType:t="application/octet-stream",bucket:a}=e,r=this.sanitizeFileName(n),o=this.getClient(),u=this.generateObjectKey(r),s=new ms({client:o,params:{Bucket:this.resolveBucket(a),Key:u,Body:ai.Readable.from(i),ContentType:t}});return await s.done(),u}}let mH={defaultModel:"doubao-embedding-vision-251215",defaultEncodingFormat:"float",maxBatchSize:100};class mF extends ex{model;constructor(e,i,n=!1){super(e,i,n),this.model=mH.defaultModel}validateInputs(e,i,n){let t=e&&e.length>0,a=i&&i.length>0,r=n&&n.length>0;if(!t&&!a&&!r)throw new ew("At least one of texts, imageUrls, or videoUrls must be provided");let o=(e?.length||0)+(i?.length||0)+(n?.length||0);if(o>mH.maxBatchSize)throw new ew(`Total inputs (${o}) exceed maximum batch size of ${mH.maxBatchSize}`)}buildInputItems(e,i,n){let t=[];if(e)for(let i of e)i&&i.trim()&&t.push({type:"text",text:i});if(i)for(let e of i)e&&e.trim()&&t.push({type:"image_url",image_url:{url:e}});if(n)for(let e of n)e&&e.trim()&&t.push({type:"video_url",video_url:{url:e}});return t}async embed(e,i,n,t){this.validateInputs(e,i,n);let a=this.buildInputItems(e,i,n);if(0===a.length)throw new ew("No valid input provided");let r={model:t?.model||this.model,input:a};t?.dimensions!==void 0&&(r.dimensions=t.dimensions),t?.encodingFormat&&(r.encoding_format=t.encodingFormat),t?.instructions&&(r.instructions=t.instructions),t?.multiEmbedding&&(r.multi_embedding={type:"enabled"}),t?.sparseEmbedding&&(r.sparse_embedding={type:"enabled"});let o=await this.request("POST",`${this.config.baseUrl}/api/v3/embeddings/multimodal`,r);if(o.error)throw new eC(o.error.message||"Unknown error",void 0,o.error);return o}async embedText(e,i){let n=await this.embed([e],void 0,void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedTexts(e,i){let n=await this.embed(e,void 0,void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedImage(e,i){let n=await this.embed(void 0,[e],void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedImages(e,i){let n=await this.embed(void 0,e,void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedVideo(e,i){let n=await this.embed(void 0,void 0,[e],i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedVideos(e,i){let n=await this.embed(void 0,void 0,e,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedMultimodal(e,i,n,t){return this.embed(e,i,n,t)}async embedWithMultiVectors(e,i,n,t){let a=await this.embed(e,i,n,{...t,multiEmbedding:!0});return a.data?.multi_embedding}async embedWithSparse(e,i,n,t){let a=await this.embed(e,i,n,{...t,sparseEmbedding:!0});return a.data?.sparse_embedding}async batchEmbed(e,i,n=5){let t=[],a=[...e];for(;a.length>0;){let e=a.splice(0,n).map(e=>this.embed(e,void 0,void 0,i)),r=await Promise.all(e);t.push(...r)}return t}}function convertContentItem(e){let i;return e.image&&(i={image_url:e.image.image_url,display_url:e.image.display_url,width:e.image.width,height:e.image.height,thumbnail_display_url:e.image.thumbnail_display_url}),{type:e.type||"text",text:e.text,url:e.url,image:i}}function convertDisplayInfo(e){return{no_display:e.no_display,no_display_reason:e.no_display_reason}}class mX extends ex{constructor(e,i,n=!1){super(e,i,n)}async fetch(e){let i,n=await this.request("POST",`${this.config.baseUrl}/api/v1/integration/fetch_tool`,{url:e});if(n.code&&0!==n.code)throw new eC(`Fetch failed: ${n.message||"Unknown error"}`,n.code,n.message);let t=n.data||n,a=[];if(t.content)for(let e of t.content)a.push(convertContentItem(e));return t.display_info&&(i=convertDisplayInfo(t.display_info)),{fetch_id:t.fetch_id,status_code:t.status_code,status_message:t.status_message,url:t.url,doc_id:t.doc_id,title:t.title,publish_time:t.publish_time,filetype:t.filetype,content:a,display_info:i}}}class mI{config;axiosInstance;constructor(e,i){this.config=e,this.axiosInstance=_.create({timeout:this.config.timeout,headers:{Authorization:`Bearer ${this.config.apiKey}`,"Content-Type":"application/json","X-Client-Sdk":"coze-coding-dev-sdk-typescript/0.3.0","x-coze-token":this.config.apiKey,...i}})}async request(e,i,n){return(await this.axiosInstance.request({method:e,url:i,data:n})).data}async listFunctions(){let e=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/list`,{});return{functions:(e.functions||[]).map(e=>({id:e.id||"",slug:e.slug||"",name:e.name||"",status:e.status||"",version:e.version||0,verify_jwt:e.verify_jwt||!1,entrypoint_path:e.entrypoint_path,created_at:e.created_at,updated_at:e.updated_at})),code:e.code||0,msg:e.msg||""}}async getFunction(e){let i,n=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/get`,{slug:e});if(n.function){let e=n.function;i={id:e.id||"",slug:e.slug||"",name:e.name||"",status:e.status||"",version:e.version||0,verify_jwt:e.verify_jwt||!1,entrypoint_path:e.entrypoint_path,created_at:e.created_at,updated_at:e.updated_at}}return{function:i,files:(n.files||[]).map(e=>({name:e.name||"",content:e.content||""})),code:n.code||0,msg:n.msg||""}}async deployFunction(e,i){let n={slug:e};i?.code!==void 0&&(n.code=i.code),i?.files!==void 0&&(n.files=i.files),i?.name!==void 0&&(n.name=i.name),i?.entrypoint!==void 0&&(n.entrypoint=i.entrypoint),i?.verify_jwt!==void 0&&(n.verify_jwt=i.verify_jwt);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/deploy`,n);return{success:t.success||!1,slug:t.slug,version:t.version,code:t.code||0,msg:t.msg||""}}async deleteFunction(e){let i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/delete`,{slug:e});return{success:i.success||!1,code:i.code||0,msg:i.msg||""}}async listBuckets(){let e=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/list`,{});return{buckets:(e.buckets||[]).map(e=>({id:e.id||"",name:e.name||"",public:e.public||!1,owner:e.owner,file_size_limit:e.file_size_limit,allowed_mime_types:e.allowed_mime_types,created_at:e.created_at,updated_at:e.updated_at})),code:e.code||0,msg:e.msg||""}}async getBucket(e){let i,n=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/get`,{bucket_id:e});if(n.bucket){let e=n.bucket;i={id:e.id||"",name:e.name||"",public:e.public||!1,owner:e.owner,file_size_limit:e.file_size_limit,allowed_mime_types:e.allowed_mime_types,created_at:e.created_at,updated_at:e.updated_at}}return{bucket:i,code:n.code||0,msg:n.msg||""}}async createBucket(e,i){let n={bucket_id:e};i?.name!==void 0&&(n.name=i.name),i?.public!==void 0&&(n.public=i.public),i?.file_size_limit!==void 0&&(n.file_size_limit=i.file_size_limit),i?.allowed_mime_types!==void 0&&(n.allowed_mime_types=i.allowed_mime_types);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/create`,n);return{success:t.success||!1,bucket_id:t.bucket_id,code:t.code||0,msg:t.msg||""}}async updateBucket(e,i){let n={bucket_id:e};i?.public!==void 0&&(n.public=i.public),i?.file_size_limit!==void 0&&(n.file_size_limit=i.file_size_limit),i?.allowed_mime_types!==void 0&&(n.allowed_mime_types=i.allowed_mime_types);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/update`,n);return{success:t.success||!1,code:t.code||0,msg:t.msg||""}}async deleteBucket(e){let i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/delete`,{bucket_id:e});return{success:i.success||!1,code:i.code||0,msg:i.msg||""}}async getAuthConfig(){let e,i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/auth/config/get`,{});if(i.config){let n=i.config;e={external_email_enabled:n.external_email_enabled,disable_signup:n.disable_signup,mailer_autoconfirm:n.mailer_autoconfirm,double_confirm_changes:n.double_confirm_changes,mailer_secure_email_change_enabled:n.mailer_secure_email_change_enabled,mailer_otp_exp:n.mailer_otp_exp,password_min_length:n.password_min_length,password_required_characters:n.password_required_characters,site_url:n.site_url,smtp_host:n.smtp_host,smtp_port:n.smtp_port,smtp_user:n.smtp_user,smtp_pass:n.smtp_pass,smtp_admin_email:n.smtp_admin_email,smtp_sender_name:n.smtp_sender_name,smtp_max_frequency:n.smtp_max_frequency}}return{config:e,code:i.code||0,msg:i.msg||""}}async updateAuthConfig(e){let i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/auth/config/update`,{config:e});return{success:i.success||!1,code:i.code||0,msg:i.msg||""}}async diagnoseDatabase(e){let i,n={};void 0!==e&&(n.env=e);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/database/diagnose`,n);if(t.report){let e=t.report;i={database_type:e.database_type??0,pg_metrics:e.pg_metrics||{},supabase_metrics:e.supabase_metrics}}return{report:i,code:t.code||0,msg:t.msg||""}}}var mO=ey.ContentPart,mQ=ep.CozeConfig,mG=em.EmbedOptions,mU=em.EmbeddingConfig,mq=em.EmbeddingData,mK=em.EmbeddingInputImageURL,m$=em.EmbeddingInputItem,mz=em.EmbeddingInputVideoURL,mW=em.EmbeddingRequest,mj=em.EmbeddingResponse,mV=em.EmbeddingUsage,m0=ef.ForwardHeaderKey,m1=ey.LLMConfig,m3=ey.LLMResponse,m2=ey.Message,m4=em.MultiEmbeddingConfig,m8=em.PromptTokensDetails,m6=em.SparseEmbeddingConfig,m5=em.SparseEmbeddingItem;export{eC as APIError,eP as ASRClient,pI as AwsSdkSigV4Signer,ex as BaseClient,ar as Client,eS as Config,eb as ConfigurationError,mO as ContentPart,mQ as CozeConfig,tB as CredentialsProviderError,mH as DEFAULT_EMBEDDING_CONFIG,tK as DEFAULT_RETRY_MODE,nQ as DatabaseConfig,tN as DefaultIdentityProviderConfig,mG as EmbedOptions,mF as EmbeddingClient,mU as EmbeddingConfig,mq as EmbeddingData,mK as EmbeddingInputImageURL,m$ as EmbeddingInputItem,mz as EmbeddingInputVideoURL,mW as EmbeddingRequest,mj as EmbeddingResponse,mV as EmbeddingUsage,aJ as EndpointCache,mN as FILE_NAME_ALLOWED_RE,eE as FORWARD_HEADER_KEYS,mX as FetchClient,m0 as ForwardHeaderKey,eJ as FrameExtractorClient,pv as Hash,eL as HeaderUtils,pz as HttpBindingProtocol,fp as HttpInterceptingShapeDeserializer,p9 as HttpInterceptingShapeSerializer,p$ as HttpProtocol,nj as HttpRequest,e_ as ImageConfig,eD as ImageGenerationClient,eY as ImageGenerationResponseHelper,eX as KnowledgeClient,eH as LLMClient,m1 as LLMConfig,eB as LLMDefaults,m3 as LLMResponse,m2 as Message,m4 as MultiEmbeddingConfig,pe as NODE_APP_ID_CONFIG_OPTIONS,d3 as NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,t8 as NODE_MAX_ATTEMPT_CONFIG_OPTIONS,pn as NODE_REGION_CONFIG_FILE_OPTIONS,pi as NODE_REGION_CONFIG_OPTIONS,t6 as NODE_RETRY_MODE_CONFIG_OPTIONS,pt as NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,pa as NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,eT as NetworkError,t5 as NoOpLogger,pR as NodeHttpHandler,uM as NormalizedSchema,fc as NumericValue,m8 as PromptTokensDetails,ff as ProtocolLib,tk as ProviderError,f2 as PutObjectCommand,mM as ReportBuffer,mR as ReportClient,mA as S3Config,mB as S3Storage,ev as SearchClient,fm as SerdeContextConfig,uX as ServiceException,m6 as SparseEmbeddingConfig,m5 as SparseEmbeddingItem,mI as SupabaseClient,eN as TTSClient,eA as TTSConfig,uF as TypeRegistry,fN as UnionSerde,ms as Upload,ew as ValidationError,eZ as VideoConfig,ek as VideoEditClient,eM as VideoEditConfig,eR as VideoGenerationClient,fP as XmlShapeDeserializer,tw as awsEndpointFunctions,_ as axios,buildASRApiRequest,buildImageGenerationApiRequest,buildTTSApiRequest,calculateBodyLength,chain_chain,closePool,collect_stream_body_collectBody,uk as command_Command,convertContentItem,convertDisplayInfo,convertFromApiFormat,convertToApiFormat,createDefaultUserAgentProvider,createS3ReportMiddleware,createWrappedFetch,tS as customEndpointFunctions,dateToUtcString,deref,deserializingStructIterator,determineTimestampFormat,dist_es_parseUrl,dist_es_toUtf8_toUtf8,emitWarningIfUnsupportedVersion,emitWarningIfUnsupportedVersion_emitWarningIfUnsupportedVersion,P as exec,extendedEncodeURIComponent,k as external_http_request,tG as fileIntercept,fromBase64,fromEnv_fromEnv,fromUtf8_fromUtf8,generateModels,getAwsRegionExtensionConfiguration,getClient,getConfigFilepath,getContentLengthPlugin,getDb,getDbUrl,getDefaultExtensionConfiguration,getEndpointPlugin,getHomeDir,getHostHeaderPlugin,getHttpAuthSchemeEndpointRuleSetPlugin,getHttpHandlerExtensionConfiguration,getHttpSigningPlugin,getLoggerPlugin,getPool,getProfileName,getRecursionDetectionPlugin,getReportBuffer,getRetryPlugin,getSchemaSerdePlugin,getSmithyContext,getUserAgentPlugin,lazy_json_LazyJsonString,loadConfig,loadConfigsForDefaultMode,loadEnv,loadSharedConfigFiles,eF as DataSourceType,normalizeProvider,parseEpochTimestamp,parseIni,parseRfc3339DateTime,parseRfc3339DateTimeWithOffset,parseRfc7231DateTime,eo as profile_IniSectionType,readFile,redactUrl,resolveAwsRegionExtensionConfiguration,resolveAwsSdkSigV4Config,resolveDefaultRuntimeConfig,resolveDefaultsModeConfig,resolveEndpoint,resolveEndpointConfig,resolveHostHeaderConfig,resolveHttpHandlerRuntimeConfig,resolveRegionConfig,resolveRetryConfig,resolveUserAgentConfig,sdk_stream_mixin_sdkStreamMixin,serializingStructIterator,setCredentialFeature,streamCollector,toBase64,truncate,upgrade,v4,validateImageSize,validateImageSizeOrDefault};
|
|
94
|
+
`;for(let t of Z(`python3 -c '${n.replace(/'/g,"'\"'\"'")}'`,{encoding:"utf-8",timeout:1e4,stdio:["pipe","pipe","pipe"]}).trim().split("\n")){if(t.startsWith("#"))continue;let n=t.indexOf("=");if(n>0){let a=t.substring(0,n),r=t.substring(n+1);(r.startsWith("'")&&r.endsWith("'")||r.startsWith('"')&&r.endsWith('"'))&&(r=r.slice(1,-1)),"COZE_INTEGRATION_BASE_URL"===a?e=r:"COZE_WORKLOAD_IDENTITY_API_KEY"===a&&(i=r)}}}catch{}return mP=!0,mZ={baseUrl:e,apiKey:i}}class mR{baseUrl;apiKey;configured;constructor(){try{let e=loadReportEnv();if(this.baseUrl=e.baseUrl,this.apiKey=e.apiKey,this.configured=!!(this.baseUrl&&this.apiKey),!this.configured){let e=[];this.baseUrl||e.push("COZE_INTEGRATION_BASE_URL"),this.apiKey||e.push("COZE_WORKLOAD_IDENTITY_API_KEY"),console.error(`[report] ReportClient not configured: ${e.join(", ")} is missing`)}}catch(e){this.baseUrl="",this.apiKey="",this.configured=!1,console.error("[report] ReportClient config failed:",e)}}async batchReport(e){if(!e.length)return;if(!this.configured)return void console.error(`[report] batchReport skipped: ReportClient is not configured. Set COZE_INTEGRATION_BASE_URL and COZE_WORKLOAD_IDENTITY_API_KEY environment variables. Dropping ${e.length} entries.`);let i=`${this.baseUrl}/v1/memory_report/batch_report`,n=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json","x-coze-token":this.apiKey},body:JSON.stringify({entries:e}),signal:AbortSignal.timeout(1e4)});if(!n.ok)throw Error(`batchReport failed: ${n.status} ${n.statusText}`)}}class mM{buffer=[];timer=null;projectId;env;client;destroyed=!1;flushing=!1;pendingFlush=!1;onExitHandler;constructor(e){this.client=e,this.projectId=process.env.COZELOOP_WORKSPACE_ID||null,this.env=process.env.COZE_PROJECT_ENV||null,this.timer=setInterval(()=>this.flush(),6e4),this.timer.unref&&this.timer.unref(),this.onExitHandler=()=>{this.destroy()},process.on("beforeExit",()=>this.destroy()),process.on("SIGTERM",this.onExitHandler),process.on("SIGINT",this.onExitHandler)}add(e){if(!this.destroyed)try{this.buffer.length>=6e4&&this.buffer.shift(),e.project_id=this.projectId,e.env=this.env,this.buffer.push(e),this.buffer.length>=100&&this.flush().catch(()=>{})}catch(e){console.error("[report] buffer.add failed:",e)}}async flush(){if(this.flushing){this.pendingFlush=!0;return}if(!this.buffer.length)return;this.flushing=!0;let e=0;try{for(;;){let i=this.buffer.splice(0,100);if(!i.length)break;try{await this.client.batchReport(i),e=0}catch(t){if(e++,this.buffer.unshift(...i),this.buffer.length>6e4&&(this.buffer.length=6e4),e>=3){console.error(`[report] flush failed ${e} times, giving up until next cycle:`,t);break}let n=1e3*2**(e-1);console.error(`[report] flush failed (attempt ${e}/3), retrying in ${n}ms:`,t),await new Promise(e=>setTimeout(e,n));continue}if(!this.pendingFlush&&this.buffer.length<100)break;this.pendingFlush=!1}}finally{this.flushing=!1,this.pendingFlush=!1}}destroy(){this.destroyed||(this.destroyed=!0,this.timer&&(clearInterval(this.timer),this.timer=null),process.removeListener("SIGTERM",this.onExitHandler),process.removeListener("SIGINT",this.onExitHandler),this.flush().catch(()=>{}))}}let mJ=null;function getReportBuffer(){if(mJ)return mJ;try{let e=new mR;return mJ=new mM(e)}catch(e){return console.error("[report] failed to create singleton buffer:",e),null}}let mk=/((?:apikey|api_key|access_key|secret_key|access_token|token|secret|password|authorization|credential|X-Amz-Signature|X-Amz-Credential|X-Amz-Security-Token)=)[^&]*/gi;function truncate(e,i=1024){return null==e?null:e.length<=i?e:e.substring(0,i)+"...[truncated]"}function redactUrl(e){return e.replace(mk,"$1***")}function createWrappedFetch(e,i="supabase"){return async(n,t)=>{let a=Date.now();try{let r=await fetch(n,t);return safeRecordLog(e,i,n,t,r,null,a),r}catch(r){throw safeRecordLog(e,i,n,t,null,r,a),r}}}function safeRecordLog(e,i,n,t,a,r,o){try{let u=Date.now()-o,s="string"==typeof n?n:n instanceof URL?n.toString():n.url||"",l=t?.method||(n instanceof Request?n.method:"GET"),h=a?.status??null,g=null;if(t?.body)try{g=truncate("string"==typeof t.body?t.body:JSON.stringify(t.body))}catch{g=null}let c={source:i,project_id:null,env:null,method:l.toUpperCase(),url:redactUrl(s),request_body:g,response_body:null,status_code:h,error:r?.message??null,duration_ms:u,timestamp:o,success:null!==h&&h>=200&&h<300};if(a){let i=a.clone().body?.getReader();i?i.read().then(({value:n})=>{if(n){let e=new TextDecoder().decode(n.slice(0,2048));c.response_body=truncate(e)}i.cancel().catch(()=>{}),e.add(c)}).catch(()=>{e.add(c)}):e.add(c)}else e.add(c)}catch(e){console.error("[report] safeRecordLog error:",e)}}function createS3ReportMiddleware(e){return e?{middleware:(i,n)=>async n=>{let t=Date.now(),{request:a}=n;try{let r=await i(n);return safeRecordS3Log(e,a,r,null,t),r}catch(i){throw safeRecordS3Log(e,a,null,i,t),i}},options:{step:"deserialize",name:"reportLogger",override:!0}}:null}function safeRecordS3Log(e,i,n,t,a){try{let r=Date.now()-a,o=i?.method||"UNKNOWN",u=i?.hostname?`${i.protocol||"https:"}//${i.hostname}${i.path||""}`:"",s=n?.response?.statusCode??null,l=null;if(i?.body)try{let e=i.body;"string"==typeof e?l=truncate(e):Buffer.isBuffer(e)&&(l=truncate(`[Binary ${e.length} bytes]`))}catch{l=null}let h={source:"s3",project_id:null,env:null,method:o.toUpperCase(),url:redactUrl(u),request_body:l,response_body:null,status_code:s,error:t?.message??null,duration_ms:r,timestamp:a,success:null!==s&&s>=200&&s<300};if(n?.output)try{let{Body:e,...i}=n.output;Object.keys(i).length>0&&(h.response_body=truncate(JSON.stringify(i)))}catch{}e.add(h)}catch{}}function getStorageToken(){return process.env.COZE_WORKLOAD_IDENTITY_API_KEY||null}class mB{endpointUrl;accessKey;secretKey;bucketName;region;client=null;constructor(e={}){this.endpointUrl=process.env.COZE_BUCKET_ENDPOINT_URL||e.endpointUrl||"",this.accessKey=e.accessKey||"",this.secretKey=e.secretKey||"",this.bucketName=process.env.COZE_BUCKET_NAME||e.bucketName||"",this.region=e.region||mA.DEFAULT_REGION}getClient(){if(!this.client){if(!this.endpointUrl)throw Error("Storage endpoint not configured: Set COZE_BUCKET_ENDPOINT_URL");this.client=new fB({endpoint:this.endpointUrl,region:this.region,credentials:{accessKeyId:this.accessKey,secretAccessKey:this.secretKey},forcePathStyle:!0}),this.client.middlewareStack.add(e=>async i=>{let n=getStorageToken();return n&&i.request?.headers&&(i.request.headers["x-storage-token"]=n),e(i)},{step:"build",name:"injectStorageToken"}),this.installReportMiddleware(this.client)}return this.client}installReportMiddleware(e){try{let i=getReportBuffer(),n=createS3ReportMiddleware(i);n&&e.middlewareStack.add(n.middleware,n.options)}catch{}}generateObjectKey(e){let i=n$.default.extname(e).toLowerCase(),n=n$.default.basename(e,i),t=(0,t7.randomUUID)().replace(/-/g,"").slice(0,8);return n$.default.join(n$.default.dirname(e),`${n}_${t}${i}`)}resolveBucket(e){let i=e||process.env.COZE_BUCKET_NAME||this.bucketName;if(!i)throw Error("Bucket not configured: Provide bucket or set COZE_BUCKET_NAME");return i}sanitizeFileName(e){if(!e||!e.trim())return"file";let i=e.split("/").filter(e=>e.trim()).map(e=>{let i=e.lastIndexOf("."),n=i>0,t=n?e.slice(i):"",a=mY(n?e.slice(0,i):e);return((a=a.replace(/\s+/g,"_").replace(/[^A-Za-z0-9._-]/g,"_").replace(/_{2,}/g,"_").replace(/^[._-]+|[._-]+$/g,""))||"file")+t.replace(/[^A-Za-z0-9._-]/g,"")}).join("/");return Buffer.byteLength(i,"utf-8")>1024&&(i=i.slice(0,1e3)),i}async uploadFile(e){let{fileContent:i,fileName:n,contentType:t="application/octet-stream",bucket:a}=e,r=this.sanitizeFileName(n),o=this.getClient(),u=this.generateObjectKey(r),s=this.resolveBucket(a);return await o.send(new f2({Bucket:s,Key:u,Body:i,ContentType:t})),u}async readFile(e){let{fileKey:i,bucket:n}=e,t=this.getClient(),a=this.resolveBucket(n),r=await t.send(new f8({Bucket:a,Key:i}));if(!r.Body)throw Error("S3 GetObject returned no Body");let o=[];for await(let e of r.Body)o.push(Buffer.from(e));return Buffer.concat(o)}async deleteFile(e){let{fileKey:i,bucket:n}=e,t=this.getClient(),a=this.resolveBucket(n);return await t.send(new f6({Bucket:a,Key:i})),!0}async fileExists(e){let{fileKey:i,bucket:n}=e,t=this.getClient(),a=this.resolveBucket(n);try{return await t.send(new f5({Bucket:a,Key:i})),!0}catch(e){if("NotFound"===e.name||e.$metadata?.httpStatusCode===404)return!1;return console.error("Error checking file existence:",e),!1}}async listFiles(e={}){let{prefix:i,bucket:n,maxKeys:t=mA.DEFAULT_MAX_KEYS,continuationToken:a}=e;if(t<=0||t>1e3)throw Error("maxKeys must be between 1 and 1000");let r=this.getClient(),o=this.resolveBucket(n),u=await r.send(new f7({Bucket:o,MaxKeys:t,Prefix:i,ContinuationToken:a}));return{keys:(u.Contents||[]).filter(e=>e.Key).map(e=>e.Key),isTruncated:u.IsTruncated||!1,nextContinuationToken:u.NextContinuationToken}}async generatePresignedUrl(e){let{key:i,bucket:n,expireTime:t=mA.DEFAULT_PRESIGNED_EXPIRE_TIME}=e,a=getStorageToken();if(!a)throw Error("Failed to get x-storage-token: Set COZE_WORKLOAD_IDENTITY_API_KEY");let r=process.env.COZE_BUCKET_ENDPOINT_URL||this.endpointUrl;if(!r)throw Error("Sign endpoint not configured: Set COZE_BUCKET_ENDPOINT_URL");let o=r.replace(/\/$/,"")+"/sign-url",u=this.resolveBucket(n),s=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json","x-storage-token":a},body:JSON.stringify({bucket_name:u,path:i,expire_time:t})});if(!s.ok)throw Error(`Failed to generate presigned URL: ${s.status}`);let l=await s.text();if((s.headers.get("content-type")||"").includes("application/json")||l.trim().startsWith("{"))try{let e=JSON.parse(l);if(e.data?.url)return e.data.url;if(e.url||e.signed_url||e.presigned_url)return e.url||e.signed_url||e.presigned_url;throw Error("Sign service response missing url field")}catch{}return l}async streamUploadFile(e){let{stream:i,fileName:n,contentType:t="application/octet-stream",bucket:a}=e,r=this.sanitizeFileName(n),o=this.getClient(),u=this.generateObjectKey(r),s=new ms({client:o,params:{Bucket:this.resolveBucket(a),Key:u,Body:i,ContentType:t}});return await s.done(),u}async uploadFromUrl(e){let{url:i,bucket:n,timeout:t=mA.DEFAULT_UPLOAD_TIMEOUT}=e,a=new AbortController,r=setTimeout(()=>a.abort(),t);try{let e=await fetch(i,{signal:a.signal});if(!e.ok)throw Error(`Failed to fetch URL: ${e.status}`);let t=new URL(i),r=n$.default.basename(decodeURIComponent(t.pathname))||"file",o=e.headers.get("content-type")||"application/octet-stream",u=Buffer.from(await e.arrayBuffer());return this.uploadFile({fileContent:u,fileName:r,contentType:o,bucket:n})}finally{clearTimeout(r)}}async chunkUploadFile(e){let{chunks:i,fileName:n,contentType:t="application/octet-stream",bucket:a}=e,r=this.sanitizeFileName(n),o=this.getClient(),u=this.generateObjectKey(r),s=new ms({client:o,params:{Bucket:this.resolveBucket(a),Key:u,Body:ai.Readable.from(i),ContentType:t}});return await s.done(),u}}let mH={defaultModel:"doubao-embedding-vision-251215",defaultEncodingFormat:"float",maxBatchSize:100};class mF extends ex{model;constructor(e,i,n=!1){super(e,i,n),this.model=mH.defaultModel}validateInputs(e,i,n){let t=e&&e.length>0,a=i&&i.length>0,r=n&&n.length>0;if(!t&&!a&&!r)throw new ew("At least one of texts, imageUrls, or videoUrls must be provided");let o=(e?.length||0)+(i?.length||0)+(n?.length||0);if(o>mH.maxBatchSize)throw new ew(`Total inputs (${o}) exceed maximum batch size of ${mH.maxBatchSize}`)}buildInputItems(e,i,n){let t=[];if(e)for(let i of e)i&&i.trim()&&t.push({type:"text",text:i});if(i)for(let e of i)e&&e.trim()&&t.push({type:"image_url",image_url:{url:e}});if(n)for(let e of n)e&&e.trim()&&t.push({type:"video_url",video_url:{url:e}});return t}async embed(e,i,n,t){this.validateInputs(e,i,n);let a=this.buildInputItems(e,i,n);if(0===a.length)throw new ew("No valid input provided");let r={model:t?.model||this.model,input:a};t?.dimensions!==void 0&&(r.dimensions=t.dimensions),t?.encodingFormat&&(r.encoding_format=t.encodingFormat),t?.instructions&&(r.instructions=t.instructions),t?.multiEmbedding&&(r.multi_embedding={type:"enabled"}),t?.sparseEmbedding&&(r.sparse_embedding={type:"enabled"});let o=await this.request("POST",`${this.config.baseUrl}/api/v3/embeddings/multimodal`,r);if(o.error)throw new eC(o.error.message||"Unknown error",void 0,o.error);return o}async embedText(e,i){let n=await this.embed([e],void 0,void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedTexts(e,i){let n=await this.embed(e,void 0,void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedImage(e,i){let n=await this.embed(void 0,[e],void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedImages(e,i){let n=await this.embed(void 0,e,void 0,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedVideo(e,i){let n=await this.embed(void 0,void 0,[e],i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedVideos(e,i){let n=await this.embed(void 0,void 0,e,i);if(n.data?.embedding)return n.data.embedding;throw new eC("No embedding returned")}async embedMultimodal(e,i,n,t){return this.embed(e,i,n,t)}async embedWithMultiVectors(e,i,n,t){let a=await this.embed(e,i,n,{...t,multiEmbedding:!0});return a.data?.multi_embedding}async embedWithSparse(e,i,n,t){let a=await this.embed(e,i,n,{...t,sparseEmbedding:!0});return a.data?.sparse_embedding}async batchEmbed(e,i,n=5){let t=[],a=[...e];for(;a.length>0;){let e=a.splice(0,n).map(e=>this.embed(e,void 0,void 0,i)),r=await Promise.all(e);t.push(...r)}return t}}function convertContentItem(e){let i;return e.image&&(i={image_url:e.image.image_url,display_url:e.image.display_url,width:e.image.width,height:e.image.height,thumbnail_display_url:e.image.thumbnail_display_url}),{type:e.type||"text",text:e.text,url:e.url,image:i}}function convertDisplayInfo(e){return{no_display:e.no_display,no_display_reason:e.no_display_reason}}class mX extends ex{constructor(e,i,n=!1){super(e,i,n)}async fetch(e){let i,n=await this.request("POST",`${this.config.baseUrl}/api/v1/integration/fetch_tool`,{url:e});if(n.code&&0!==n.code)throw new eC(`Fetch failed: ${n.message||"Unknown error"}`,n.code,n.message);let t=n.data||n,a=[];if(t.content)for(let e of t.content)a.push(convertContentItem(e));return t.display_info&&(i=convertDisplayInfo(t.display_info)),{fetch_id:t.fetch_id,status_code:t.status_code,status_message:t.status_message,url:t.url,doc_id:t.doc_id,title:t.title,publish_time:t.publish_time,filetype:t.filetype,content:a,display_info:i}}}class mI{config;axiosInstance;constructor(e,i){this.config=e,this.axiosInstance=_.create({timeout:this.config.timeout,headers:{Authorization:`Bearer ${this.config.apiKey}`,"Content-Type":"application/json","X-Client-Sdk":"coze-coding-dev-sdk-typescript/0.3.0","x-coze-token":this.config.apiKey,...i}})}async request(e,i,n){return(await this.axiosInstance.request({method:e,url:i,data:n})).data}async listFunctions(){let e=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/list`,{});return{functions:(e.functions||[]).map(e=>({id:e.id||"",slug:e.slug||"",name:e.name||"",status:e.status||"",version:e.version||0,verify_jwt:e.verify_jwt||!1,entrypoint_path:e.entrypoint_path,created_at:e.created_at,updated_at:e.updated_at})),code:e.code||0,msg:e.msg||""}}async getFunction(e){let i,n=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/get`,{slug:e});if(n.function){let e=n.function;i={id:e.id||"",slug:e.slug||"",name:e.name||"",status:e.status||"",version:e.version||0,verify_jwt:e.verify_jwt||!1,entrypoint_path:e.entrypoint_path,created_at:e.created_at,updated_at:e.updated_at}}return{function:i,files:(n.files||[]).map(e=>({name:e.name||"",content:e.content||""})),code:n.code||0,msg:n.msg||""}}async deployFunction(e,i){let n={slug:e};i?.code!==void 0&&(n.code=i.code),i?.files!==void 0&&(n.files=i.files),i?.name!==void 0&&(n.name=i.name),i?.entrypoint!==void 0&&(n.entrypoint=i.entrypoint),i?.verify_jwt!==void 0&&(n.verify_jwt=i.verify_jwt);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/deploy`,n);return{success:t.success||!1,slug:t.slug,version:t.version,code:t.code||0,msg:t.msg||""}}async deleteFunction(e){let i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/functions/delete`,{slug:e});return{success:i.success||!1,code:i.code||0,msg:i.msg||""}}async listBuckets(){let e=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/list`,{});return{buckets:(e.buckets||[]).map(e=>({id:e.id||"",name:e.name||"",public:e.public||!1,owner:e.owner,file_size_limit:e.file_size_limit,allowed_mime_types:e.allowed_mime_types,created_at:e.created_at,updated_at:e.updated_at})),code:e.code||0,msg:e.msg||""}}async getBucket(e){let i,n=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/get`,{bucket_id:e});if(n.bucket){let e=n.bucket;i={id:e.id||"",name:e.name||"",public:e.public||!1,owner:e.owner,file_size_limit:e.file_size_limit,allowed_mime_types:e.allowed_mime_types,created_at:e.created_at,updated_at:e.updated_at}}return{bucket:i,code:n.code||0,msg:n.msg||""}}async createBucket(e,i){let n={bucket_id:e};i?.name!==void 0&&(n.name=i.name),i?.public!==void 0&&(n.public=i.public),i?.file_size_limit!==void 0&&(n.file_size_limit=i.file_size_limit),i?.allowed_mime_types!==void 0&&(n.allowed_mime_types=i.allowed_mime_types);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/create`,n);return{success:t.success||!1,bucket_id:t.bucket_id,code:t.code||0,msg:t.msg||""}}async updateBucket(e,i){let n={bucket_id:e};i?.public!==void 0&&(n.public=i.public),i?.file_size_limit!==void 0&&(n.file_size_limit=i.file_size_limit),i?.allowed_mime_types!==void 0&&(n.allowed_mime_types=i.allowed_mime_types);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/update`,n);return{success:t.success||!1,code:t.code||0,msg:t.msg||""}}async deleteBucket(e){let i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/buckets/delete`,{bucket_id:e});return{success:i.success||!1,code:i.code||0,msg:i.msg||""}}async getAuthConfig(){let e,i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/auth/config/get`,{});if(i.config){let n=i.config;e={external_email_enabled:n.external_email_enabled,disable_signup:n.disable_signup,mailer_auto_confirm:n.mailer_auto_confirm,double_confirm_changes:n.double_confirm_changes,mailer_secure_email_change_enabled:n.mailer_secure_email_change_enabled,mailer_otp_exp:n.mailer_otp_exp,password_min_length:n.password_min_length,password_required_characters:n.password_required_characters,site_url:n.site_url,smtp_host:n.smtp_host,smtp_port:n.smtp_port,smtp_user:n.smtp_user,smtp_pass:n.smtp_pass,smtp_admin_email:n.smtp_admin_email,smtp_sender_name:n.smtp_sender_name,smtp_max_frequency:n.smtp_max_frequency}}return{config:e,code:i.code||0,msg:i.msg||""}}async updateAuthConfig(e){let i=await this.request("POST",`${this.config.baseUrl}/v1/supabase/auth/config/update`,{config:e});return{success:i.success||!1,code:i.code||0,msg:i.msg||""}}async getAuthConfigV2(){let e,i=await this.request("POST",`${this.config.baseUrl}/v2/supabase/auth/config/get`,{}),n=i.code||0,t=i.msg||"",a=i.Status||0,r=i.Config;if(r){let i,n,t=r.EmailConfig;t&&(i={external_email_enabled:t.external_email_enabled,disable_signup:t.disable_signup,mailer_auto_confirm:t.mailer_auto_confirm,double_confirm_changes:t.double_confirm_changes,mailer_secure_email_change_enabled:t.mailer_secure_email_change_enabled,mailer_otp_exp:t.mailer_otp_exp,password_min_length:t.password_min_length,password_required_characters:t.password_required_characters,site_url:t.site_url,smtp_host:t.smtp_host,smtp_port:t.smtp_port,smtp_user:t.smtp_user,smtp_pass:t.smtp_pass,smtp_admin_email:t.smtp_admin_email,smtp_sender_name:t.smtp_sender_name,smtp_max_frequency:t.smtp_max_frequency});let a=r.PhoneConfig;a&&(n={external_phone_enabled:a.external_phone_enabled}),e={project_id:r.ProjectID||0,icon_uri:r.IconURI||"",icon_url:r.IconURL||"",name:r.Name||"",email_config:i,phone_config:n}}return{status:a,config:e,code:n,msg:t}}async updateAuthConfigV2(e){let i=await this.request("POST",`${this.config.baseUrl}/v2/supabase/auth/config/update`,e);return{should_update_ui:i.should_update_ui||!1,success:i.success||!1,code:i.code||0,msg:i.msg||""}}async diagnoseDatabase(e){let i,n={};void 0!==e&&(n.env=e);let t=await this.request("POST",`${this.config.baseUrl}/v1/supabase/database/diagnose`,n);if(t.report){let e=t.report;i={database_type:e.database_type??0,pg_metrics:e.pg_metrics||{},supabase_metrics:e.supabase_metrics}}return{report:i,code:t.code||0,msg:t.msg||""}}}var mO=ey.ContentPart,mQ=ep.CozeConfig,mG=em.EmbedOptions,mU=em.EmbeddingConfig,mq=em.EmbeddingData,mK=em.EmbeddingInputImageURL,m$=em.EmbeddingInputItem,mz=em.EmbeddingInputVideoURL,mW=em.EmbeddingRequest,mj=em.EmbeddingResponse,mV=em.EmbeddingUsage,m0=ef.ForwardHeaderKey,m1=ey.LLMConfig,m3=ey.LLMResponse,m2=ey.Message,m4=em.MultiEmbeddingConfig,m8=em.PromptTokensDetails,m6=em.SparseEmbeddingConfig,m5=em.SparseEmbeddingItem;export{eC as APIError,eP as ASRClient,pI as AwsSdkSigV4Signer,ex as BaseClient,ar as Client,eS as Config,eb as ConfigurationError,mO as ContentPart,mQ as CozeConfig,tB as CredentialsProviderError,mH as DEFAULT_EMBEDDING_CONFIG,tK as DEFAULT_RETRY_MODE,nQ as DatabaseConfig,tN as DefaultIdentityProviderConfig,mG as EmbedOptions,mF as EmbeddingClient,mU as EmbeddingConfig,mq as EmbeddingData,mK as EmbeddingInputImageURL,m$ as EmbeddingInputItem,mz as EmbeddingInputVideoURL,mW as EmbeddingRequest,mj as EmbeddingResponse,mV as EmbeddingUsage,aJ as EndpointCache,mN as FILE_NAME_ALLOWED_RE,eE as FORWARD_HEADER_KEYS,mX as FetchClient,m0 as ForwardHeaderKey,eJ as FrameExtractorClient,pv as Hash,eL as HeaderUtils,pz as HttpBindingProtocol,fp as HttpInterceptingShapeDeserializer,p9 as HttpInterceptingShapeSerializer,p$ as HttpProtocol,nj as HttpRequest,e_ as ImageConfig,eD as ImageGenerationClient,eY as ImageGenerationResponseHelper,eX as KnowledgeClient,eH as LLMClient,m1 as LLMConfig,eB as LLMDefaults,m3 as LLMResponse,m2 as Message,m4 as MultiEmbeddingConfig,pe as NODE_APP_ID_CONFIG_OPTIONS,d3 as NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,t8 as NODE_MAX_ATTEMPT_CONFIG_OPTIONS,pn as NODE_REGION_CONFIG_FILE_OPTIONS,pi as NODE_REGION_CONFIG_OPTIONS,t6 as NODE_RETRY_MODE_CONFIG_OPTIONS,pt as NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,pa as NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,eT as NetworkError,t5 as NoOpLogger,pR as NodeHttpHandler,uM as NormalizedSchema,fc as NumericValue,m8 as PromptTokensDetails,ff as ProtocolLib,tk as ProviderError,f2 as PutObjectCommand,mM as ReportBuffer,mR as ReportClient,mA as S3Config,mB as S3Storage,ev as SearchClient,fm as SerdeContextConfig,uX as ServiceException,m6 as SparseEmbeddingConfig,m5 as SparseEmbeddingItem,mI as SupabaseClient,eN as TTSClient,eA as TTSConfig,uF as TypeRegistry,fN as UnionSerde,ms as Upload,ew as ValidationError,eZ as VideoConfig,ek as VideoEditClient,eM as VideoEditConfig,eR as VideoGenerationClient,fP as XmlShapeDeserializer,tw as awsEndpointFunctions,_ as axios,buildASRApiRequest,buildImageGenerationApiRequest,buildTTSApiRequest,calculateBodyLength,chain_chain,closePool,collect_stream_body_collectBody,uk as command_Command,convertContentItem,convertDisplayInfo,convertFromApiFormat,convertToApiFormat,createDefaultUserAgentProvider,createS3ReportMiddleware,createWrappedFetch,tS as customEndpointFunctions,dateToUtcString,deref,deserializingStructIterator,determineTimestampFormat,dist_es_parseUrl,dist_es_toUtf8_toUtf8,emitWarningIfUnsupportedVersion,emitWarningIfUnsupportedVersion_emitWarningIfUnsupportedVersion,P as exec,extendedEncodeURIComponent,k as external_http_request,tG as fileIntercept,fromBase64,fromEnv_fromEnv,fromUtf8_fromUtf8,generateModels,getAwsRegionExtensionConfiguration,getClient,getConfigFilepath,getContentLengthPlugin,getDb,getDbUrl,getDefaultExtensionConfiguration,getEndpointPlugin,getHomeDir,getHostHeaderPlugin,getHttpAuthSchemeEndpointRuleSetPlugin,getHttpHandlerExtensionConfiguration,getHttpSigningPlugin,getLoggerPlugin,getPool,getProfileName,getRecursionDetectionPlugin,getReportBuffer,getRetryPlugin,getSchemaSerdePlugin,getSmithyContext,getUserAgentPlugin,lazy_json_LazyJsonString,loadConfig,loadConfigsForDefaultMode,loadEnv,loadSharedConfigFiles,eF as DataSourceType,normalizeProvider,parseEpochTimestamp,parseIni,parseRfc3339DateTime,parseRfc3339DateTimeWithOffset,parseRfc7231DateTime,eo as profile_IniSectionType,readFile,redactUrl,resolveAwsRegionExtensionConfiguration,resolveAwsSdkSigV4Config,resolveDefaultRuntimeConfig,resolveDefaultsModeConfig,resolveEndpoint,resolveEndpointConfig,resolveHostHeaderConfig,resolveHttpHandlerRuntimeConfig,resolveRegionConfig,resolveRetryConfig,resolveUserAgentConfig,sdk_stream_mixin_sdkStreamMixin,serializingStructIterator,setCredentialFeature,streamCollector,toBase64,truncate,upgrade,v4,validateImageSize,validateImageSizeOrDefault};
|