quickbase-js 2.0.0-alpha.3 → 2.0.0-alpha.5
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/client/request.d.ts.map +1 -1
- package/dist/client/request.js +12 -3
- package/dist/client/request.js.map +1 -1
- package/dist/core/config.js +1 -1
- package/dist/core/config.js.map +1 -1
- package/dist/quickbase.esm.js +2 -2
- package/dist/quickbase.esm.js.map +3 -3
- package/dist/quickbase.min.js +2 -2
- package/dist/quickbase.min.js.map +3 -3
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/client/request.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAkB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAY9C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAC9D,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/client/request.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAkB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAY9C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAC9D,sCAAsC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAyCvE;AA2ID;;GAEG;AACH,wBAAsB,cAAc,CAAC,CAAC,GAAG,OAAO,EAC9C,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,CAAC,CAAC,CA8EZ;AAcD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB;cAEvD,CAAC,4BAA4B,cAAc;EAGxD"}
|
package/dist/client/request.js
CHANGED
|
@@ -24,18 +24,27 @@ export function extractDbid(options) {
|
|
|
24
24
|
if (options.query?.tableId) {
|
|
25
25
|
return String(options.query.tableId);
|
|
26
26
|
}
|
|
27
|
-
// 3. Check
|
|
27
|
+
// 3. Check query params for appId (for app-level operations)
|
|
28
|
+
if (options.query?.appId) {
|
|
29
|
+
return String(options.query.appId);
|
|
30
|
+
}
|
|
31
|
+
// 4. Check path for tableId (e.g., /v1/tables/{tableId}/...)
|
|
28
32
|
const tableIdMatch = options.path.match(/\/tables\/([^/?]+)/);
|
|
29
33
|
if (tableIdMatch) {
|
|
30
34
|
return tableIdMatch[1];
|
|
31
35
|
}
|
|
32
|
-
//
|
|
36
|
+
// 5. Check path for appId (e.g., /v1/apps/{appId}/...)
|
|
37
|
+
const appIdMatch = options.path.match(/\/apps\/([^/?]+)/);
|
|
38
|
+
if (appIdMatch) {
|
|
39
|
+
return appIdMatch[1];
|
|
40
|
+
}
|
|
41
|
+
// 6. Check request body for 'from' field (runQuery, deleteRecords)
|
|
33
42
|
if (options.body && typeof options.body === 'object') {
|
|
34
43
|
const body = options.body;
|
|
35
44
|
if (typeof body.from === 'string') {
|
|
36
45
|
return body.from;
|
|
37
46
|
}
|
|
38
|
-
//
|
|
47
|
+
// 7. Check request body for 'to' field (upsert)
|
|
39
48
|
if (typeof body.to === 'string') {
|
|
40
49
|
return body.to;
|
|
41
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/client/request.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/client/request.ts"],"names":[],"mappings":"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"}
|
package/dist/core/config.js
CHANGED
|
@@ -23,7 +23,7 @@ export function resolveConfig(config) {
|
|
|
23
23
|
baseUrl: config.baseUrl ?? DEFAULT_CONFIG.baseUrl,
|
|
24
24
|
timeout: config.timeout ?? DEFAULT_CONFIG.timeout,
|
|
25
25
|
debug: config.debug ?? DEFAULT_CONFIG.debug,
|
|
26
|
-
fetchApi: config.fetchApi ?? globalThis.fetch,
|
|
26
|
+
fetchApi: config.fetchApi ?? globalThis.fetch.bind(globalThis),
|
|
27
27
|
auth: config.auth,
|
|
28
28
|
retry,
|
|
29
29
|
proactiveThrottle,
|
package/dist/core/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAuB;IACnD,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,MAAM,KAAK,GAA0B;QACnC,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,IAAI,cAAc,CAAC,KAAK,CAAC,WAAW;QACrF,cAAc,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,IAAI,cAAc,CAAC,KAAK,CAAC,cAAc;QAC9F,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,IAAI,cAAc,CAAC,KAAK,CAAC,UAAU;QAClF,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,IAAI,cAAc,CAAC,KAAK,CAAC,UAAU;KACnF,CAAC;IAEF,MAAM,iBAAiB,GAAG;QACxB,OAAO,EAAE,MAAM,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,IAAI,cAAc,CAAC,iBAAiB,CAAC,OAAO;QACjG,oBAAoB,EAClB,MAAM,CAAC,SAAS,EAAE,iBAAiB,EAAE,oBAAoB;YACzD,cAAc,CAAC,iBAAiB,CAAC,oBAAoB;KACxD,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO;QACjD,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO;QACjD,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK;QAC3C,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,UAAU,CAAC,KAAK;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
|
package/dist/quickbase.esm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* QuickBase JS SDK v2.0.0-alpha.
|
|
2
|
+
* QuickBase JS SDK v2.0.0-alpha.5
|
|
3
3
|
* https://github.com/DrewBradfordXYZ/quickbase-js#readme
|
|
4
4
|
* @license MIT
|
|
5
5
|
*/
|
|
6
|
-
var te=Object.defineProperty;var re=(t,r,e)=>r in t?te(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e;var i=(t,r,e)=>re(t,typeof r!="symbol"?r+"":r,e);var l={baseUrl:"https://api.quickbase.com/v1",timeout:3e4,debug:!1,retry:{maxAttempts:3,initialDelayMs:1e3,maxDelayMs:3e4,multiplier:2},proactiveThrottle:{enabled:!1,requestsPer10Seconds:100},tempTokenLifespanMs:29e4,autoPaginate:!1,convertDates:!0};var h=class t extends Error{constructor(e,o,n){super(e,{cause:n?.cause});i(this,"statusCode");i(this,"description");i(this,"rayId");this.name="QuickbaseError",this.statusCode=o,this.description=n?.description,this.rayId=n?.rayId,Error.captureStackTrace&&Error.captureStackTrace(this,t)}toJSON(){return{name:this.name,message:this.message,statusCode:this.statusCode,description:this.description,rayId:this.rayId}}},y=class extends h{constructor(e,o){super(o||`Rate limited. Retry after ${e.retryAfter??"unknown"} seconds`,429,{rayId:e.qbApiRay||e.cfRay});i(this,"retryAfter");i(this,"rateLimitInfo");this.name="RateLimitError",this.retryAfter=e.retryAfter,this.rateLimitInfo=e}toJSON(){return{...super.toJSON(),retryAfter:this.retryAfter,rateLimitInfo:this.rateLimitInfo}}},R=class extends h{constructor(r,e){super(r,401,e),this.name="AuthenticationError"}},I=class extends h{constructor(r,e){super(r,403,e),this.name="AuthorizationError"}},C=class extends h{constructor(r,e){super(r,404,e),this.name="NotFoundError"}},D=class extends h{constructor(e,o){super(e,400,o);i(this,"errors");this.name="ValidationError",this.errors=o?.errors}toJSON(){return{...super.toJSON(),errors:this.errors}}},b=class extends h{constructor(e,o){super(`Request timed out after ${e}ms`,0,o);i(this,"timeoutMs");this.name="TimeoutError",this.timeoutMs=e}toJSON(){return{...super.toJSON(),timeoutMs:this.timeoutMs}}},x=class extends h{constructor(r,e,o){super(e,r,o),this.name="ServerError"}};async function $(t,r){let e=t.headers.get("qb-api-ray")||t.headers.get("cf-ray")||void 0,o=null;try{o=await t.json()}catch{}let n=o?.message||t.statusText||"Unknown error",a=o?.description;switch(t.status){case 400:return new D(n,{description:a,rayId:e,errors:o?.errors});case 401:return new R(n,{rayId:e});case 403:return new I(n,{rayId:e});case 404:return new C(n,{rayId:e});case 429:{let s=t.headers.get("Retry-After"),u={timestamp:new Date,requestUrl:r,httpStatus:429,retryAfter:s?parseInt(s,10):void 0,cfRay:t.headers.get("cf-ray")||void 0,tid:t.headers.get("tid")||void 0,qbApiRay:t.headers.get("qb-api-ray")||void 0,attempt:1};return new y(u,n)}default:return t.status>=500?new x(t.status,n,{description:a,rayId:e}):new h(n,t.status,{description:a,rayId:e})}}function q(t){return t instanceof y||t instanceof x||t instanceof b}var F=class{constructor(r=!1,e="quickbase-js"){i(this,"enabled");i(this,"prefix");this.enabled=r,this.prefix=e}formatMessage(r,e){return`[${new Date().toISOString()}] [${this.prefix}] [${r}] ${e}`}debug(r,e){this.enabled&&(e!==void 0?console.log(this.formatMessage("DEBUG",r),e):console.log(this.formatMessage("DEBUG",r)))}info(r,e){this.enabled&&(e!==void 0?console.info(this.formatMessage("INFO",r),e):console.info(this.formatMessage("INFO",r)))}warn(r,e){e!==void 0?console.warn(this.formatMessage("WARN",r),e):console.warn(this.formatMessage("WARN",r))}error(r,e){e!==void 0?console.error(this.formatMessage("ERROR",r),e):console.error(this.formatMessage("ERROR",r))}rateLimit(r){this.enabled&&this.debug(`Rate limited (attempt ${r.attempt}): ${r.url} - Status ${r.status}, Retry-After: ${r.retryAfter??"not specified"}s`+(r.rayId?`, Ray: ${r.rayId}`:""))}timing(r,e,o){this.enabled&&this.debug(`${r} ${e} completed in ${o}ms`)}retry(r,e,o,n){this.enabled&&this.debug(`Retry ${r}/${e} in ${o}ms: ${n}`)}token(r,e){if(this.enabled){let o=e?` for dbid: ${e}`:"";this.debug(`Token ${r}${o}`)}}};function O(t){return new F(t)}function j(t){oe(t);let r={maxAttempts:t.rateLimit?.retry?.maxAttempts??l.retry.maxAttempts,initialDelayMs:t.rateLimit?.retry?.initialDelayMs??l.retry.initialDelayMs,maxDelayMs:t.rateLimit?.retry?.maxDelayMs??l.retry.maxDelayMs,multiplier:t.rateLimit?.retry?.multiplier??l.retry.multiplier},e={enabled:t.rateLimit?.proactiveThrottle?.enabled??l.proactiveThrottle.enabled,requestsPer10Seconds:t.rateLimit?.proactiveThrottle?.requestsPer10Seconds??l.proactiveThrottle.requestsPer10Seconds};return{realm:t.realm,baseUrl:t.baseUrl??l.baseUrl,timeout:t.timeout??l.timeout,debug:t.debug??l.debug,fetchApi:t.fetchApi??globalThis.fetch,auth:t.auth,retry:r,proactiveThrottle:e,onRateLimit:t.rateLimit?.onRateLimit,autoPaginate:t.autoPaginate??l.autoPaginate,convertDates:t.convertDates??l.convertDates}}function oe(t){if(!t.realm)throw new Error("QuickBase realm is required");if(typeof t.realm!="string")throw new Error("QuickBase realm must be a string");if(t.realm.includes("."))throw new Error('Realm should be just the subdomain (e.g., "mycompany" not "mycompany.quickbase.com")');if(!t.auth)throw new Error("Authentication configuration is required");if(ne(t.auth),t.timeout!==void 0&&(typeof t.timeout!="number"||t.timeout<=0))throw new Error("Timeout must be a positive number");t.rateLimit?.retry&&se(t.rateLimit.retry),t.rateLimit?.proactiveThrottle&&ae(t.rateLimit.proactiveThrottle)}function ne(t){switch(t.type){case"user-token":if(!t.userToken)throw new Error("User token is required for user-token auth");break;case"temp-token":break;case"sso":if(!t.samlToken)throw new Error("SAML token is required for SSO auth");break;default:throw new Error(`Unknown auth type: ${t.type}`)}}function se(t){if(t.maxAttempts!==void 0&&(typeof t.maxAttempts!="number"||t.maxAttempts<0))throw new Error("maxAttempts must be a non-negative number");if(t.initialDelayMs!==void 0&&(typeof t.initialDelayMs!="number"||t.initialDelayMs<0))throw new Error("initialDelayMs must be a non-negative number");if(t.maxDelayMs!==void 0&&(typeof t.maxDelayMs!="number"||t.maxDelayMs<0))throw new Error("maxDelayMs must be a non-negative number");if(t.multiplier!==void 0&&(typeof t.multiplier!="number"||t.multiplier<1))throw new Error("multiplier must be a number >= 1")}function ae(t){if(t.requestsPer10Seconds!==void 0&&(typeof t.requestsPer10Seconds!="number"||t.requestsPer10Seconds<=0))throw new Error("requestsPer10Seconds must be a positive number")}function Q(t){return`${t}.quickbase.com`}var ie=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-]\d{2}:?\d{2})?)?$/;function K(t){return ie.test(t)}function v(t,r){if(!r||t===null||t===void 0||typeof t!="object")return t;if(Array.isArray(t))return t.map(o=>v(o,r));if(t instanceof Date)return t;let e={};for(let[o,n]of Object.entries(t))typeof n=="string"&&K(n)?e[o]=new Date(n):n instanceof Date?e[o]=n:typeof n=="object"&&n!==null?e[o]=v(n,r):e[o]=n;return e}var A=class{constructor(r,e){i(this,"userToken");i(this,"logger");this.userToken=r,this.logger=e.logger}async getToken(r){return this.userToken}getAuthorizationHeader(r){return`QB-USER-TOKEN ${r}`}async handleAuthError(r){return this.logger.debug("Auth error with user token - cannot refresh"),!1}invalidate(r){}};var P=class{constructor(r){i(this,"cache",new Map);i(this,"defaultLifespanMs");this.defaultLifespanMs=r}get(r){let e=this.cache.get(r);return e?Date.now()>=e.expiresAt-1e4?(this.cache.delete(r),null):e.token:null}set(r,e,o){let n=Date.now()+(o??this.defaultLifespanMs);this.cache.set(r,{token:e,expiresAt:n})}delete(r){return this.cache.delete(r)}clear(){this.cache.clear()}has(r){return this.get(r)!==null}getTimeToExpiry(r){let e=this.cache.get(r);if(!e)return null;let o=e.expiresAt-Date.now();return o>0?o:null}get size(){return this.cleanup(),this.cache.size}cleanup(){let r=Date.now();for(let[e,o]of this.cache)r>=o.expiresAt&&this.cache.delete(e)}};var E=class{constructor(r,e,o){i(this,"userToken");i(this,"appToken");i(this,"realm");i(this,"baseUrl");i(this,"fetchApi");i(this,"logger");i(this,"cache");i(this,"pendingFetches",new Map);this.userToken=r,this.appToken=o?.appToken,this.realm=e.realm,this.baseUrl=e.baseUrl,this.fetchApi=e.fetchApi,this.logger=e.logger,this.cache=new P(o?.tokenLifespanMs??l.tempTokenLifespanMs)}async getToken(r){if(!r)throw new Error("Database ID (dbid) is required for temporary token authentication");let e=this.cache.get(r);if(e)return this.logger.token("cache-hit",r),e;this.logger.token("cache-miss",r);let o=this.pendingFetches.get(r);if(o)return this.logger.debug(`Waiting for existing token fetch for dbid: ${r}`),o;let n=this.fetchToken(r);this.pendingFetches.set(r,n);try{return await n}finally{this.pendingFetches.delete(r)}}async fetchToken(r){this.logger.token("fetch",r);let e=`${this.baseUrl}/auth/temporary/${r}`,o={"QB-Realm-Hostname":`${this.realm}.quickbase.com`,Authorization:`QB-USER-TOKEN ${this.userToken}`,"Content-Type":"application/json"};this.appToken&&(o["QB-App-Token"]=this.appToken);let n=await this.fetchApi(e,{method:"GET",headers:o});if(!n.ok){let u=await n.text();throw new R(`Failed to fetch temporary token for ${r}: ${n.status} ${u}`,{rayId:n.headers.get("qb-api-ray")||void 0})}let s=(await n.json()).temporaryAuthorization;if(!s)throw new R(`No temporary token in response for ${r}`);return this.cache.set(r,s),this.logger.debug(`Cached new token for dbid: ${r}`),s}getAuthorizationHeader(r){return`QB-TEMP-TOKEN ${r}`}async handleAuthError(r){if(!r)return this.logger.debug("Auth error without dbid - cannot refresh temp token"),!1;this.invalidate(r);try{return this.logger.token("refresh",r),await this.getToken(r),!0}catch(e){return this.logger.error(`Failed to refresh temp token for ${r}`,e),!1}}invalidate(r){r?(this.logger.token("expire",r),this.cache.delete(r)):this.cache.clear()}};var S=class{constructor(r,e,o){i(this,"samlToken");i(this,"realm");i(this,"baseUrl");i(this,"fetchApi");i(this,"logger");i(this,"cache");i(this,"pendingExchange",null);this.samlToken=r,this.realm=e.realm,this.baseUrl=e.baseUrl,this.fetchApi=e.fetchApi,this.logger=e.logger,this.cache=new P(o?.tokenLifespanMs??l.tempTokenLifespanMs)}get cacheKey(){return"__sso__"}async getToken(r){let e=this.cache.get(this.cacheKey);if(e)return this.logger.token("cache-hit"),e;if(this.logger.token("cache-miss"),this.pendingExchange)return this.logger.debug("Waiting for existing SSO token exchange"),this.pendingExchange;let o=this.exchangeToken();this.pendingExchange=o;try{return await o}finally{this.pendingExchange=null}}async exchangeToken(){this.logger.token("fetch");let r=`${this.baseUrl}/auth/oauth/token`,e=new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:token-exchange",requested_token_type:"urn:quickbase:params:oauth:token-type:temp_token",subject_token:this.samlToken,subject_token_type:"urn:ietf:params:oauth:token-type:saml2"}),o=await this.fetchApi(r,{method:"POST",headers:{"QB-Realm-Hostname":`${this.realm}.quickbase.com`,"Content-Type":"application/x-www-form-urlencoded"},body:e.toString()});if(!o.ok){let s=await o.text();throw new R(`SSO token exchange failed: ${o.status} ${s}`,{rayId:o.headers.get("qb-api-ray")||void 0})}let a=(await o.json()).access_token;if(!a)throw new R("No access_token in SSO exchange response");return this.cache.set(this.cacheKey,a),this.logger.debug("Cached new SSO token"),a}getAuthorizationHeader(r){return`QB-TEMP-TOKEN ${r}`}async handleAuthError(r){this.invalidate();try{return this.logger.token("refresh"),await this.getToken(),!0}catch(e){return this.logger.error("Failed to refresh SSO token",e),!1}}invalidate(r){this.logger.token("expire"),this.cache.clear()}};function N(t,r){switch(t.type){case"user-token":return new A(t.userToken,r);case"temp-token":return new E(t.userToken,r,{appToken:t.appToken,tokenLifespanMs:t.tokenLifespanMs});case"sso":return new S(t.samlToken,r);default:throw new Error(`Unknown auth type: ${t.type}`)}}function _(t,r,e){let o=t.headers.get("Retry-After");return{timestamp:new Date,requestUrl:r,httpStatus:t.status,retryAfter:o?parseInt(o,10):void 0,cfRay:t.headers.get("cf-ray")||void 0,tid:t.headers.get("tid")||void 0,qbApiRay:t.headers.get("qb-api-ray")||void 0,attempt:e}}function B(t){return new Promise(r=>setTimeout(r,t))}function ue(t){if(t.dbid)return t.dbid;if(t.query?.tableId)return String(t.query.tableId);let r=t.path.match(/\/tables\/([^/?]+)/);if(r)return r[1];if(t.body&&typeof t.body=="object"){let e=t.body;if(typeof e.from=="string")return e.from;if(typeof e.to=="string")return e.to}}function J(t,r,e){let o=t.endsWith("/")?t:`${t}/`,n=r.startsWith("/")?r.slice(1):r,a=new URL(n,o);if(e)for(let[s,u]of Object.entries(e))u!==void 0&&a.searchParams.set(s,String(u));return a.toString()}async function pe(t,r,e,o){let n=await t.getToken(e),a=t.getAuthorizationHeader(n);return{"Content-Type":"application/json","QB-Realm-Hostname":r,Authorization:a,...o}}async function de(t,r,e){let{config:o,auth:n,throttle:a,logger:s}=r,u=J(o.baseUrl,t.path,t.query),m=Q(o.realm),d=await pe(n,m,e.dbid,t.headers);await a.acquire();let p={method:t.method,headers:d};t.body!==void 0&&(p.body=JSON.stringify(t.body));let c=new AbortController,g=setTimeout(()=>c.abort(),o.timeout);p.signal=c.signal;let T=Date.now();try{let f=await o.fetchApi(u,p),w=Date.now()-T;return s.timing(t.method,t.path,w),f}catch(f){throw f instanceof Error&&f.name==="AbortError"?new b(o.timeout):f}finally{clearTimeout(g)}}async function le(t,r,e,o){let{config:n,logger:a}=o;if(t.ok)return t;if(t.status===429){let s=_(t,r,e.attempt);throw a.rateLimit({url:r,status:429,retryAfter:s.retryAfter,attempt:e.attempt,rayId:s.qbApiRay||s.cfRay}),n.onRateLimit&&n.onRateLimit(s),new y(s)}throw await $(t,r)}async function V(t,r){let{config:e,auth:o,logger:n}=r,a=e.retry.maxAttempts,s=ue(t),u={methodName:`${t.method} ${t.path}`,attempt:1,maxAttempts:a,dbid:s,startTime:Date.now()},m=null;for(let d=1;d<=a;d++){u.attempt=d;try{let p=await de(t,r,u),c=J(e.baseUrl,t.path,t.query);await le(p,c,u,r);let g=await p.json();return v(g,e.convertDates)}catch(p){if(m=p,!q(p)||d>=a)throw p;if(p instanceof h&&p.statusCode===401){if(!await o.handleAuthError(s))throw p;n.debug("Token refreshed, retrying request");continue}let c,g;p instanceof y?(c=p.retryAfter?p.retryAfter*1e3:M(d,e.retry),g="Rate limited (429)"):p instanceof b?(c=M(d,e.retry),g="Timeout"):p instanceof h&&p.statusCode>=500?(c=M(d,e.retry),g=`Server error (${p.statusCode})`):(c=M(d,e.retry),g="Retryable error"),n.retry(d,a,c,g),await B(c)}}throw m||new Error("Request failed")}function M(t,r){let e=r.initialDelayMs*Math.pow(r.multiplier,t-1),o=e*.1*(Math.random()*2-1);return Math.min(e+o,r.maxDelayMs)}function z(t){return{execute:r=>V(r,t)}}var U=class{constructor(r=100){i(this,"requestsPer10Seconds");i(this,"timestamps",[]);this.requestsPer10Seconds=r}async acquire(){let r=Date.now(),e=r-1e4;for(;this.timestamps.length>0&&this.timestamps[0]<e;)this.timestamps.shift();if(this.timestamps.length>=this.requestsPer10Seconds){let n=this.timestamps[0]+1e4-r;if(n>0)return await this.sleep(n),this.acquire()}this.timestamps.push(Date.now())}getWindowCount(){let r=Date.now()-1e4;return this.timestamps.filter(e=>e>=r).length}getRemaining(){return Math.max(0,this.requestsPer10Seconds-this.getWindowCount())}reset(){this.timestamps.length=0}sleep(r){return new Promise(e=>setTimeout(e,r))}},G=class{async acquire(){}getWindowCount(){return 0}getRemaining(){return 1/0}reset(){}};function H(t){return t.enabled?new U(t.requestsPer10Seconds):new G}function Z(t){return t.totalRecords!==void 0&&t.skip!==void 0?"skip":t.nextPageToken!==void 0||t.nextToken!==void 0?"token":"none"}function X(t,r,e){let{metadata:o}=t;if(r==="skip")return o.totalRecords!==void 0&&e<o.totalRecords;if(r==="token"){let n=o.nextPageToken??o.nextToken;return n!==void 0&&n!==""}return!1}function Y(t){for(let r of Object.keys(t))if(Array.isArray(t[r]))return r;return"data"}function ee(t){if(!t||typeof t!="object")return!1;let r=t;if(!r.metadata||typeof r.metadata!="object"||!Object.values(r).some(Array.isArray))return!1;let o=r.metadata;return o.totalRecords!==void 0||o.numRecords!==void 0||o.nextPageToken!==void 0||o.nextToken!==void 0}var L=class{constructor(r,e){i(this,"executor");i(this,"paginatedExecutor");i(this,"defaultAutoPaginate");this.executor=r,this.paginatedExecutor=e?.paginatedExecutor,this.defaultAutoPaginate=e?.autoPaginate??!1}then(r,e){return(this.defaultAutoPaginate?this.all():this.executor()).then(r,e)}async all(){return this.paginate({})}async paginate(r={}){if(!this.paginatedExecutor)return this.executor();let{limit:e,skip:o=0}=r,n=[],a=null,s="none",u=o,m,d=await this.paginatedExecutor({skip:o});if(!ee(d))return d;a=d,s=Z(d.metadata);let p=Y(d),c=d[p]||[];for(e!==void 0&&c.length>e?n=c.slice(0,e):n=[...c],s==="skip"?u=o+c.length:s==="token"&&(m=d.metadata.nextPageToken??d.metadata.nextToken);X(a,s,n.length)&&!(e!==void 0&&n.length>=e);){let T;if(s==="skip")T=await this.paginatedExecutor({skip:u});else if(s==="token"&&m){let w=a.metadata.nextPageToken!==void 0?"nextPageToken":"nextToken";T=await this.paginatedExecutor({[w]:m})}else break;a=T;let f=T[p]||[];if(f.length===0)break;if(e!==void 0){let w=e-n.length;n=n.concat(f.slice(0,w))}else n=n.concat(f);if(s==="skip")u+=f.length;else if(s==="token"&&(m=T.metadata.nextPageToken??T.metadata.nextToken,!m))break}let g={...a,[p]:n,metadata:{...a.metadata,numRecords:n.length,skip:o}};return s==="token"&&(delete g.metadata.nextPageToken,delete g.metadata.nextToken),g}async noPaginate(){return this.executor()}toPromise(){return this.then()}};function k(t,r){return new L(t,r)}function W(t,r=!1){return{createApp(e){return t({method:"POST",path:"/apps",body:e})},getApp(e){return t({method:"GET",path:`/apps/${e.appId}`})},updateApp(e,o){return t({method:"POST",path:`/apps/${e.appId}`,body:o})},deleteApp(e,o){return t({method:"DELETE",path:`/apps/${e.appId}`,body:o})},getAppEvents(e){return t({method:"GET",path:`/apps/${e.appId}/events`})},copyApp(e,o){return t({method:"POST",path:`/apps/${e.appId}/copy`,body:o})},getAppTables(e){return t({method:"GET",path:"/tables",query:{appId:e.appId}})},createTable(e,o){return t({method:"POST",path:"/tables",query:{appId:e.appId},body:o})},getTable(e){return t({method:"GET",path:`/tables/${e.tableId}`,query:{appId:e.appId}})},updateTable(e,o){return t({method:"POST",path:`/tables/${e.tableId}`,query:{appId:e.appId},body:o})},deleteTable(e){return t({method:"DELETE",path:`/tables/${e.tableId}`,query:{appId:e.appId}})},getRelationships(e){return k(()=>t({method:"GET",path:`/tables/${e.tableId}/relationships`,query:{skip:e.skip}}),{paginatedExecutor:a=>t({method:"GET",path:`/tables/${e.tableId}/relationships`,query:{skip:e.skip,...a}}),autoPaginate:r})},createRelationship(e,o){return t({method:"POST",path:`/tables/${e.tableId}/relationship`,body:o})},updateRelationship(e,o){return t({method:"POST",path:`/tables/${e.tableId}/relationship/${e.relationshipId}`,body:o})},deleteRelationship(e){return t({method:"DELETE",path:`/tables/${e.tableId}/relationship/${e.relationshipId}`})},getTableReports(e){return t({method:"GET",path:"/reports",query:{tableId:e.tableId}})},getReport(e){return t({method:"GET",path:`/reports/${e.reportId}`,query:{tableId:e.tableId}})},runReport(e,o){return k(()=>t({method:"POST",path:`/reports/${e.reportId}/run`,query:{tableId:e.tableId,skip:e.skip,top:e.top},body:o}),{paginatedExecutor:s=>{let u=o,m=s.skip!==void 0||s.nextPageToken||s.nextToken?{...u||{},options:{...u?.options||{},...s.skip!==void 0?{skip:s.skip}:{}},...s.nextPageToken?{nextPageToken:s.nextPageToken}:{},...s.nextToken?{nextToken:s.nextToken}:{}}:o;return t({method:"POST",path:`/reports/${e.reportId}/run`,query:{tableId:e.tableId,skip:e.skip,top:e.top},body:m})},autoPaginate:r})},getFields(e){return t({method:"GET",path:"/fields",query:{tableId:e.tableId,includeFieldPerms:e.includeFieldPerms}})},createField(e,o){return t({method:"POST",path:"/fields",query:{tableId:e.tableId},body:o})},deleteFields(e,o){return t({method:"DELETE",path:"/fields",query:{tableId:e.tableId},body:o})},getField(e){return t({method:"GET",path:`/fields/${e.fieldId}`,query:{tableId:e.tableId,includeFieldPerms:e.includeFieldPerms}})},updateField(e,o){return t({method:"POST",path:`/fields/${e.fieldId}`,query:{tableId:e.tableId},body:o})},getFieldsUsage(e){return t({method:"GET",path:"/fields/usage",query:{tableId:e.tableId,skip:e.skip,top:e.top}})},getFieldUsage(e){return t({method:"GET",path:`/fields/usage/${e.fieldId}`,query:{tableId:e.tableId}})},runFormula(e){return t({method:"POST",path:"/formula/run",body:e})},upsert(e){return k(()=>t({method:"POST",path:"/records",body:e}),{paginatedExecutor:a=>{let s=e,u=a.skip!==void 0||a.nextPageToken||a.nextToken?{...s||{},options:{...s?.options||{},...a.skip!==void 0?{skip:a.skip}:{}},...a.nextPageToken?{nextPageToken:a.nextPageToken}:{},...a.nextToken?{nextToken:a.nextToken}:{}}:e;return t({method:"POST",path:"/records",body:u})},autoPaginate:r})},deleteRecords(e){return t({method:"DELETE",path:"/records",body:e})},runQuery(e){return k(()=>t({method:"POST",path:"/records/query",body:e}),{paginatedExecutor:a=>{let s=e,u=a.skip!==void 0||a.nextPageToken||a.nextToken?{...s||{},options:{...s?.options||{},...a.skip!==void 0?{skip:a.skip}:{}},...a.nextPageToken?{nextPageToken:a.nextPageToken}:{},...a.nextToken?{nextToken:a.nextToken}:{}}:e;return t({method:"POST",path:"/records/query",body:u})},autoPaginate:r})},getTempTokenDBID(e){return t({method:"GET",path:`/auth/temporary/${e.dbid}`})},exchangeSsoToken(e){return t({method:"POST",path:"/auth/oauth/token",body:e})},cloneUserToken(e){return t({method:"POST",path:"/usertoken/clone",body:e})},transferUserToken(e){return t({method:"POST",path:"/usertoken/transfer",body:e})},deactivateUserToken(){return t({method:"POST",path:"/usertoken/deactivate"})},deleteUserToken(){return t({method:"DELETE",path:"/usertoken"})},downloadFile(e){return t({method:"GET",path:`/files/${e.tableId}/${e.recordId}/${e.fieldId}/${e.versionNumber}`})},deleteFile(e){return t({method:"DELETE",path:`/files/${e.tableId}/${e.recordId}/${e.fieldId}/${e.versionNumber}`})},getUsers(e,o){return k(()=>t({method:"POST",path:"/users",query:{accountId:e.accountId},body:o}),{paginatedExecutor:s=>{let u=o,m=s.skip!==void 0||s.nextPageToken||s.nextToken?{...u||{},options:{...u?.options||{},...s.skip!==void 0?{skip:s.skip}:{}},...s.nextPageToken?{nextPageToken:s.nextPageToken}:{},...s.nextToken?{nextToken:s.nextToken}:{}}:o;return t({method:"POST",path:"/users",query:{accountId:e.accountId},body:m})},autoPaginate:r})},denyUsers(e,o){return t({method:"PUT",path:"/users/deny",query:{accountId:e.accountId},body:o})},denyUsersAndGroups(e,o){return t({method:"PUT",path:`/users/deny/${e.shouldDeleteFromGroups}`,query:{accountId:e.accountId},body:o})},undenyUsers(e,o){return t({method:"PUT",path:"/users/undeny",query:{accountId:e.accountId},body:o})},addMembersToGroup(e,o){return t({method:"POST",path:`/groups/${e.gid}/members`,body:o})},removeMembersFromGroup(e,o){return t({method:"DELETE",path:`/groups/${e.gid}/members`,body:o})},addManagersToGroup(e,o){return t({method:"POST",path:`/groups/${e.gid}/managers`,body:o})},removeManagersFromGroup(e,o){return t({method:"DELETE",path:`/groups/${e.gid}/managers`,body:o})},addSubgroupsToGroup(e,o){return t({method:"POST",path:`/groups/${e.gid}/subgroups`,body:o})},removeSubgroupsFromGroup(e,o){return t({method:"DELETE",path:`/groups/${e.gid}/subgroups`,body:o})},audit(e){return t({method:"POST",path:"/audit",body:e})},platformAnalyticReads(e){return t({method:"GET",path:"/analytics/reads",query:{day:e.day}})},platformAnalyticEventSummaries(e,o){return k(()=>t({method:"POST",path:"/analytics/events/summaries",query:{accountId:e.accountId},body:o}),{paginatedExecutor:s=>{let u=o,m=s.skip!==void 0||s.nextPageToken||s.nextToken?{...u||{},options:{...u?.options||{},...s.skip!==void 0?{skip:s.skip}:{}},...s.nextPageToken?{nextPageToken:s.nextPageToken}:{},...s.nextToken?{nextToken:s.nextToken}:{}}:o;return t({method:"POST",path:"/analytics/events/summaries",query:{accountId:e.accountId},body:m})},autoPaginate:r})},exportSolution(e){return t({method:"GET",path:`/solutions/${e.solutionId}`})},updateSolution(e,o){return t({method:"PUT",path:`/solutions/${e.solutionId}`,body:o})},createSolution(e){return t({method:"POST",path:"/solutions",body:e})},exportSolutionToRecord(e){return t({method:"GET",path:`/solutions/${e.solutionId}/torecord`,query:{tableId:e.tableId,fieldId:e.fieldId}})},createSolutionFromRecord(e){return t({method:"GET",path:"/solutions/fromrecord",query:{tableId:e.tableId,fieldId:e.fieldId,recordId:e.recordId}})},updateSolutionToRecord(e){return t({method:"GET",path:`/solutions/${e.solutionId}/fromrecord`,query:{tableId:e.tableId,fieldId:e.fieldId,recordId:e.recordId}})},changesetSolution(e,o){return t({method:"PUT",path:`/solutions/${e.solutionId}/changeset`,body:o})},changesetSolutionFromRecord(e){return t({method:"GET",path:`/solutions/${e.solutionId}/changeset/fromrecord`,query:{tableId:e.tableId,fieldId:e.fieldId,recordId:e.recordId}})},generateDocument(e){return t({method:"GET",path:`/docTemplates/${e.templateId}/generate`,query:{tableId:e.tableId,recordId:e.recordId,filename:e.filename,format:e.format,margin:e.margin,unit:e.unit,pageSize:e.pageSize,orientation:e.orientation,realm:e.realm}})}}}function me(t){let r=j(t),e=O(r.debug),o={realm:r.realm,baseUrl:r.baseUrl,fetchApi:r.fetchApi,logger:e},n=N(r.auth,o),a=H(r.proactiveThrottle),s=z({config:r,auth:n,throttle:a,logger:e});return{...W(s.execute,r.autoPaginate),request:s.execute,getConfig:()=>r}}var Et=me;export{R as AuthenticationError,I as AuthorizationError,G as NoOpThrottle,C as NotFoundError,h as QuickbaseError,y as RateLimitError,x as ServerError,U as SlidingWindowThrottle,S as SsoTokenStrategy,E as TempTokenStrategy,b as TimeoutError,A as UserTokenStrategy,D as ValidationError,W as createApiMethods,N as createAuthStrategy,me as createClient,Et as default};
|
|
6
|
+
var te=Object.defineProperty;var re=(t,r,e)=>r in t?te(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e;var i=(t,r,e)=>re(t,typeof r!="symbol"?r+"":r,e);var l={baseUrl:"https://api.quickbase.com/v1",timeout:3e4,debug:!1,retry:{maxAttempts:3,initialDelayMs:1e3,maxDelayMs:3e4,multiplier:2},proactiveThrottle:{enabled:!1,requestsPer10Seconds:100},tempTokenLifespanMs:29e4,autoPaginate:!1,convertDates:!0};var h=class t extends Error{constructor(e,o,n){super(e,{cause:n?.cause});i(this,"statusCode");i(this,"description");i(this,"rayId");this.name="QuickbaseError",this.statusCode=o,this.description=n?.description,this.rayId=n?.rayId,Error.captureStackTrace&&Error.captureStackTrace(this,t)}toJSON(){return{name:this.name,message:this.message,statusCode:this.statusCode,description:this.description,rayId:this.rayId}}},y=class extends h{constructor(e,o){super(o||`Rate limited. Retry after ${e.retryAfter??"unknown"} seconds`,429,{rayId:e.qbApiRay||e.cfRay});i(this,"retryAfter");i(this,"rateLimitInfo");this.name="RateLimitError",this.retryAfter=e.retryAfter,this.rateLimitInfo=e}toJSON(){return{...super.toJSON(),retryAfter:this.retryAfter,rateLimitInfo:this.rateLimitInfo}}},R=class extends h{constructor(r,e){super(r,401,e),this.name="AuthenticationError"}},I=class extends h{constructor(r,e){super(r,403,e),this.name="AuthorizationError"}},C=class extends h{constructor(r,e){super(r,404,e),this.name="NotFoundError"}},D=class extends h{constructor(e,o){super(e,400,o);i(this,"errors");this.name="ValidationError",this.errors=o?.errors}toJSON(){return{...super.toJSON(),errors:this.errors}}},b=class extends h{constructor(e,o){super(`Request timed out after ${e}ms`,0,o);i(this,"timeoutMs");this.name="TimeoutError",this.timeoutMs=e}toJSON(){return{...super.toJSON(),timeoutMs:this.timeoutMs}}},x=class extends h{constructor(r,e,o){super(e,r,o),this.name="ServerError"}};async function $(t,r){let e=t.headers.get("qb-api-ray")||t.headers.get("cf-ray")||void 0,o=null;try{o=await t.json()}catch{}let n=o?.message||t.statusText||"Unknown error",a=o?.description;switch(t.status){case 400:return new D(n,{description:a,rayId:e,errors:o?.errors});case 401:return new R(n,{rayId:e});case 403:return new I(n,{rayId:e});case 404:return new C(n,{rayId:e});case 429:{let s=t.headers.get("Retry-After"),u={timestamp:new Date,requestUrl:r,httpStatus:429,retryAfter:s?parseInt(s,10):void 0,cfRay:t.headers.get("cf-ray")||void 0,tid:t.headers.get("tid")||void 0,qbApiRay:t.headers.get("qb-api-ray")||void 0,attempt:1};return new y(u,n)}default:return t.status>=500?new x(t.status,n,{description:a,rayId:e}):new h(n,t.status,{description:a,rayId:e})}}function q(t){return t instanceof y||t instanceof x||t instanceof b}var F=class{constructor(r=!1,e="quickbase-js"){i(this,"enabled");i(this,"prefix");this.enabled=r,this.prefix=e}formatMessage(r,e){return`[${new Date().toISOString()}] [${this.prefix}] [${r}] ${e}`}debug(r,e){this.enabled&&(e!==void 0?console.log(this.formatMessage("DEBUG",r),e):console.log(this.formatMessage("DEBUG",r)))}info(r,e){this.enabled&&(e!==void 0?console.info(this.formatMessage("INFO",r),e):console.info(this.formatMessage("INFO",r)))}warn(r,e){e!==void 0?console.warn(this.formatMessage("WARN",r),e):console.warn(this.formatMessage("WARN",r))}error(r,e){e!==void 0?console.error(this.formatMessage("ERROR",r),e):console.error(this.formatMessage("ERROR",r))}rateLimit(r){this.enabled&&this.debug(`Rate limited (attempt ${r.attempt}): ${r.url} - Status ${r.status}, Retry-After: ${r.retryAfter??"not specified"}s`+(r.rayId?`, Ray: ${r.rayId}`:""))}timing(r,e,o){this.enabled&&this.debug(`${r} ${e} completed in ${o}ms`)}retry(r,e,o,n){this.enabled&&this.debug(`Retry ${r}/${e} in ${o}ms: ${n}`)}token(r,e){if(this.enabled){let o=e?` for dbid: ${e}`:"";this.debug(`Token ${r}${o}`)}}};function O(t){return new F(t)}function j(t){oe(t);let r={maxAttempts:t.rateLimit?.retry?.maxAttempts??l.retry.maxAttempts,initialDelayMs:t.rateLimit?.retry?.initialDelayMs??l.retry.initialDelayMs,maxDelayMs:t.rateLimit?.retry?.maxDelayMs??l.retry.maxDelayMs,multiplier:t.rateLimit?.retry?.multiplier??l.retry.multiplier},e={enabled:t.rateLimit?.proactiveThrottle?.enabled??l.proactiveThrottle.enabled,requestsPer10Seconds:t.rateLimit?.proactiveThrottle?.requestsPer10Seconds??l.proactiveThrottle.requestsPer10Seconds};return{realm:t.realm,baseUrl:t.baseUrl??l.baseUrl,timeout:t.timeout??l.timeout,debug:t.debug??l.debug,fetchApi:t.fetchApi??globalThis.fetch.bind(globalThis),auth:t.auth,retry:r,proactiveThrottle:e,onRateLimit:t.rateLimit?.onRateLimit,autoPaginate:t.autoPaginate??l.autoPaginate,convertDates:t.convertDates??l.convertDates}}function oe(t){if(!t.realm)throw new Error("QuickBase realm is required");if(typeof t.realm!="string")throw new Error("QuickBase realm must be a string");if(t.realm.includes("."))throw new Error('Realm should be just the subdomain (e.g., "mycompany" not "mycompany.quickbase.com")');if(!t.auth)throw new Error("Authentication configuration is required");if(ne(t.auth),t.timeout!==void 0&&(typeof t.timeout!="number"||t.timeout<=0))throw new Error("Timeout must be a positive number");t.rateLimit?.retry&&se(t.rateLimit.retry),t.rateLimit?.proactiveThrottle&&ae(t.rateLimit.proactiveThrottle)}function ne(t){switch(t.type){case"user-token":if(!t.userToken)throw new Error("User token is required for user-token auth");break;case"temp-token":break;case"sso":if(!t.samlToken)throw new Error("SAML token is required for SSO auth");break;default:throw new Error(`Unknown auth type: ${t.type}`)}}function se(t){if(t.maxAttempts!==void 0&&(typeof t.maxAttempts!="number"||t.maxAttempts<0))throw new Error("maxAttempts must be a non-negative number");if(t.initialDelayMs!==void 0&&(typeof t.initialDelayMs!="number"||t.initialDelayMs<0))throw new Error("initialDelayMs must be a non-negative number");if(t.maxDelayMs!==void 0&&(typeof t.maxDelayMs!="number"||t.maxDelayMs<0))throw new Error("maxDelayMs must be a non-negative number");if(t.multiplier!==void 0&&(typeof t.multiplier!="number"||t.multiplier<1))throw new Error("multiplier must be a number >= 1")}function ae(t){if(t.requestsPer10Seconds!==void 0&&(typeof t.requestsPer10Seconds!="number"||t.requestsPer10Seconds<=0))throw new Error("requestsPer10Seconds must be a positive number")}function Q(t){return`${t}.quickbase.com`}var ie=/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-]\d{2}:?\d{2})?)?$/;function K(t){return ie.test(t)}function v(t,r){if(!r||t===null||t===void 0||typeof t!="object")return t;if(Array.isArray(t))return t.map(o=>v(o,r));if(t instanceof Date)return t;let e={};for(let[o,n]of Object.entries(t))typeof n=="string"&&K(n)?e[o]=new Date(n):n instanceof Date?e[o]=n:typeof n=="object"&&n!==null?e[o]=v(n,r):e[o]=n;return e}var A=class{constructor(r,e){i(this,"userToken");i(this,"logger");this.userToken=r,this.logger=e.logger}async getToken(r){return this.userToken}getAuthorizationHeader(r){return`QB-USER-TOKEN ${r}`}async handleAuthError(r){return this.logger.debug("Auth error with user token - cannot refresh"),!1}invalidate(r){}};var P=class{constructor(r){i(this,"cache",new Map);i(this,"defaultLifespanMs");this.defaultLifespanMs=r}get(r){let e=this.cache.get(r);return e?Date.now()>=e.expiresAt-1e4?(this.cache.delete(r),null):e.token:null}set(r,e,o){let n=Date.now()+(o??this.defaultLifespanMs);this.cache.set(r,{token:e,expiresAt:n})}delete(r){return this.cache.delete(r)}clear(){this.cache.clear()}has(r){return this.get(r)!==null}getTimeToExpiry(r){let e=this.cache.get(r);if(!e)return null;let o=e.expiresAt-Date.now();return o>0?o:null}get size(){return this.cleanup(),this.cache.size}cleanup(){let r=Date.now();for(let[e,o]of this.cache)r>=o.expiresAt&&this.cache.delete(e)}};var E=class{constructor(r,e,o){i(this,"userToken");i(this,"appToken");i(this,"realm");i(this,"baseUrl");i(this,"fetchApi");i(this,"logger");i(this,"cache");i(this,"pendingFetches",new Map);this.userToken=r,this.appToken=o?.appToken,this.realm=e.realm,this.baseUrl=e.baseUrl,this.fetchApi=e.fetchApi,this.logger=e.logger,this.cache=new P(o?.tokenLifespanMs??l.tempTokenLifespanMs)}async getToken(r){if(!r)throw new Error("Database ID (dbid) is required for temporary token authentication");let e=this.cache.get(r);if(e)return this.logger.token("cache-hit",r),e;this.logger.token("cache-miss",r);let o=this.pendingFetches.get(r);if(o)return this.logger.debug(`Waiting for existing token fetch for dbid: ${r}`),o;let n=this.fetchToken(r);this.pendingFetches.set(r,n);try{return await n}finally{this.pendingFetches.delete(r)}}async fetchToken(r){this.logger.token("fetch",r);let e=`${this.baseUrl}/auth/temporary/${r}`,o={"QB-Realm-Hostname":`${this.realm}.quickbase.com`,Authorization:`QB-USER-TOKEN ${this.userToken}`,"Content-Type":"application/json"};this.appToken&&(o["QB-App-Token"]=this.appToken);let n=await this.fetchApi(e,{method:"GET",headers:o});if(!n.ok){let u=await n.text();throw new R(`Failed to fetch temporary token for ${r}: ${n.status} ${u}`,{rayId:n.headers.get("qb-api-ray")||void 0})}let s=(await n.json()).temporaryAuthorization;if(!s)throw new R(`No temporary token in response for ${r}`);return this.cache.set(r,s),this.logger.debug(`Cached new token for dbid: ${r}`),s}getAuthorizationHeader(r){return`QB-TEMP-TOKEN ${r}`}async handleAuthError(r){if(!r)return this.logger.debug("Auth error without dbid - cannot refresh temp token"),!1;this.invalidate(r);try{return this.logger.token("refresh",r),await this.getToken(r),!0}catch(e){return this.logger.error(`Failed to refresh temp token for ${r}`,e),!1}}invalidate(r){r?(this.logger.token("expire",r),this.cache.delete(r)):this.cache.clear()}};var S=class{constructor(r,e,o){i(this,"samlToken");i(this,"realm");i(this,"baseUrl");i(this,"fetchApi");i(this,"logger");i(this,"cache");i(this,"pendingExchange",null);this.samlToken=r,this.realm=e.realm,this.baseUrl=e.baseUrl,this.fetchApi=e.fetchApi,this.logger=e.logger,this.cache=new P(o?.tokenLifespanMs??l.tempTokenLifespanMs)}get cacheKey(){return"__sso__"}async getToken(r){let e=this.cache.get(this.cacheKey);if(e)return this.logger.token("cache-hit"),e;if(this.logger.token("cache-miss"),this.pendingExchange)return this.logger.debug("Waiting for existing SSO token exchange"),this.pendingExchange;let o=this.exchangeToken();this.pendingExchange=o;try{return await o}finally{this.pendingExchange=null}}async exchangeToken(){this.logger.token("fetch");let r=`${this.baseUrl}/auth/oauth/token`,e=new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:token-exchange",requested_token_type:"urn:quickbase:params:oauth:token-type:temp_token",subject_token:this.samlToken,subject_token_type:"urn:ietf:params:oauth:token-type:saml2"}),o=await this.fetchApi(r,{method:"POST",headers:{"QB-Realm-Hostname":`${this.realm}.quickbase.com`,"Content-Type":"application/x-www-form-urlencoded"},body:e.toString()});if(!o.ok){let s=await o.text();throw new R(`SSO token exchange failed: ${o.status} ${s}`,{rayId:o.headers.get("qb-api-ray")||void 0})}let a=(await o.json()).access_token;if(!a)throw new R("No access_token in SSO exchange response");return this.cache.set(this.cacheKey,a),this.logger.debug("Cached new SSO token"),a}getAuthorizationHeader(r){return`QB-TEMP-TOKEN ${r}`}async handleAuthError(r){this.invalidate();try{return this.logger.token("refresh"),await this.getToken(),!0}catch(e){return this.logger.error("Failed to refresh SSO token",e),!1}}invalidate(r){this.logger.token("expire"),this.cache.clear()}};function N(t,r){switch(t.type){case"user-token":return new A(t.userToken,r);case"temp-token":return new E(t.userToken,r,{appToken:t.appToken,tokenLifespanMs:t.tokenLifespanMs});case"sso":return new S(t.samlToken,r);default:throw new Error(`Unknown auth type: ${t.type}`)}}function _(t,r,e){let o=t.headers.get("Retry-After");return{timestamp:new Date,requestUrl:r,httpStatus:t.status,retryAfter:o?parseInt(o,10):void 0,cfRay:t.headers.get("cf-ray")||void 0,tid:t.headers.get("tid")||void 0,qbApiRay:t.headers.get("qb-api-ray")||void 0,attempt:e}}function B(t){return new Promise(r=>setTimeout(r,t))}function ue(t){if(t.dbid)return t.dbid;if(t.query?.tableId)return String(t.query.tableId);if(t.query?.appId)return String(t.query.appId);let r=t.path.match(/\/tables\/([^/?]+)/);if(r)return r[1];let e=t.path.match(/\/apps\/([^/?]+)/);if(e)return e[1];if(t.body&&typeof t.body=="object"){let o=t.body;if(typeof o.from=="string")return o.from;if(typeof o.to=="string")return o.to}}function J(t,r,e){let o=t.endsWith("/")?t:`${t}/`,n=r.startsWith("/")?r.slice(1):r,a=new URL(n,o);if(e)for(let[s,u]of Object.entries(e))u!==void 0&&a.searchParams.set(s,String(u));return a.toString()}async function pe(t,r,e,o){let n=await t.getToken(e),a=t.getAuthorizationHeader(n);return{"Content-Type":"application/json","QB-Realm-Hostname":r,Authorization:a,...o}}async function de(t,r,e){let{config:o,auth:n,throttle:a,logger:s}=r,u=J(o.baseUrl,t.path,t.query),m=Q(o.realm),d=await pe(n,m,e.dbid,t.headers);await a.acquire();let p={method:t.method,headers:d};t.body!==void 0&&(p.body=JSON.stringify(t.body));let c=new AbortController,g=setTimeout(()=>c.abort(),o.timeout);p.signal=c.signal;let T=Date.now();try{let f=await o.fetchApi(u,p),w=Date.now()-T;return s.timing(t.method,t.path,w),f}catch(f){throw f instanceof Error&&f.name==="AbortError"?new b(o.timeout):f}finally{clearTimeout(g)}}async function le(t,r,e,o){let{config:n,logger:a}=o;if(t.ok)return t;if(t.status===429){let s=_(t,r,e.attempt);throw a.rateLimit({url:r,status:429,retryAfter:s.retryAfter,attempt:e.attempt,rayId:s.qbApiRay||s.cfRay}),n.onRateLimit&&n.onRateLimit(s),new y(s)}throw await $(t,r)}async function V(t,r){let{config:e,auth:o,logger:n}=r,a=e.retry.maxAttempts,s=ue(t),u={methodName:`${t.method} ${t.path}`,attempt:1,maxAttempts:a,dbid:s,startTime:Date.now()},m=null;for(let d=1;d<=a;d++){u.attempt=d;try{let p=await de(t,r,u),c=J(e.baseUrl,t.path,t.query);await le(p,c,u,r);let g=await p.json();return v(g,e.convertDates)}catch(p){if(m=p,!q(p)||d>=a)throw p;if(p instanceof h&&p.statusCode===401){if(!await o.handleAuthError(s))throw p;n.debug("Token refreshed, retrying request");continue}let c,g;p instanceof y?(c=p.retryAfter?p.retryAfter*1e3:M(d,e.retry),g="Rate limited (429)"):p instanceof b?(c=M(d,e.retry),g="Timeout"):p instanceof h&&p.statusCode>=500?(c=M(d,e.retry),g=`Server error (${p.statusCode})`):(c=M(d,e.retry),g="Retryable error"),n.retry(d,a,c,g),await B(c)}}throw m||new Error("Request failed")}function M(t,r){let e=r.initialDelayMs*Math.pow(r.multiplier,t-1),o=e*.1*(Math.random()*2-1);return Math.min(e+o,r.maxDelayMs)}function z(t){return{execute:r=>V(r,t)}}var U=class{constructor(r=100){i(this,"requestsPer10Seconds");i(this,"timestamps",[]);this.requestsPer10Seconds=r}async acquire(){let r=Date.now(),e=r-1e4;for(;this.timestamps.length>0&&this.timestamps[0]<e;)this.timestamps.shift();if(this.timestamps.length>=this.requestsPer10Seconds){let n=this.timestamps[0]+1e4-r;if(n>0)return await this.sleep(n),this.acquire()}this.timestamps.push(Date.now())}getWindowCount(){let r=Date.now()-1e4;return this.timestamps.filter(e=>e>=r).length}getRemaining(){return Math.max(0,this.requestsPer10Seconds-this.getWindowCount())}reset(){this.timestamps.length=0}sleep(r){return new Promise(e=>setTimeout(e,r))}},G=class{async acquire(){}getWindowCount(){return 0}getRemaining(){return 1/0}reset(){}};function H(t){return t.enabled?new U(t.requestsPer10Seconds):new G}function Z(t){return t.totalRecords!==void 0&&t.skip!==void 0?"skip":t.nextPageToken!==void 0||t.nextToken!==void 0?"token":"none"}function X(t,r,e){let{metadata:o}=t;if(r==="skip")return o.totalRecords!==void 0&&e<o.totalRecords;if(r==="token"){let n=o.nextPageToken??o.nextToken;return n!==void 0&&n!==""}return!1}function Y(t){for(let r of Object.keys(t))if(Array.isArray(t[r]))return r;return"data"}function ee(t){if(!t||typeof t!="object")return!1;let r=t;if(!r.metadata||typeof r.metadata!="object"||!Object.values(r).some(Array.isArray))return!1;let o=r.metadata;return o.totalRecords!==void 0||o.numRecords!==void 0||o.nextPageToken!==void 0||o.nextToken!==void 0}var L=class{constructor(r,e){i(this,"executor");i(this,"paginatedExecutor");i(this,"defaultAutoPaginate");this.executor=r,this.paginatedExecutor=e?.paginatedExecutor,this.defaultAutoPaginate=e?.autoPaginate??!1}then(r,e){return(this.defaultAutoPaginate?this.all():this.executor()).then(r,e)}async all(){return this.paginate({})}async paginate(r={}){if(!this.paginatedExecutor)return this.executor();let{limit:e,skip:o=0}=r,n=[],a=null,s="none",u=o,m,d=await this.paginatedExecutor({skip:o});if(!ee(d))return d;a=d,s=Z(d.metadata);let p=Y(d),c=d[p]||[];for(e!==void 0&&c.length>e?n=c.slice(0,e):n=[...c],s==="skip"?u=o+c.length:s==="token"&&(m=d.metadata.nextPageToken??d.metadata.nextToken);X(a,s,n.length)&&!(e!==void 0&&n.length>=e);){let T;if(s==="skip")T=await this.paginatedExecutor({skip:u});else if(s==="token"&&m){let w=a.metadata.nextPageToken!==void 0?"nextPageToken":"nextToken";T=await this.paginatedExecutor({[w]:m})}else break;a=T;let f=T[p]||[];if(f.length===0)break;if(e!==void 0){let w=e-n.length;n=n.concat(f.slice(0,w))}else n=n.concat(f);if(s==="skip")u+=f.length;else if(s==="token"&&(m=T.metadata.nextPageToken??T.metadata.nextToken,!m))break}let g={...a,[p]:n,metadata:{...a.metadata,numRecords:n.length,skip:o}};return s==="token"&&(delete g.metadata.nextPageToken,delete g.metadata.nextToken),g}async noPaginate(){return this.executor()}toPromise(){return this.then()}};function k(t,r){return new L(t,r)}function W(t,r=!1){return{createApp(e){return t({method:"POST",path:"/apps",body:e})},getApp(e){return t({method:"GET",path:`/apps/${e.appId}`})},updateApp(e,o){return t({method:"POST",path:`/apps/${e.appId}`,body:o})},deleteApp(e,o){return t({method:"DELETE",path:`/apps/${e.appId}`,body:o})},getAppEvents(e){return t({method:"GET",path:`/apps/${e.appId}/events`})},copyApp(e,o){return t({method:"POST",path:`/apps/${e.appId}/copy`,body:o})},getAppTables(e){return t({method:"GET",path:"/tables",query:{appId:e.appId}})},createTable(e,o){return t({method:"POST",path:"/tables",query:{appId:e.appId},body:o})},getTable(e){return t({method:"GET",path:`/tables/${e.tableId}`,query:{appId:e.appId}})},updateTable(e,o){return t({method:"POST",path:`/tables/${e.tableId}`,query:{appId:e.appId},body:o})},deleteTable(e){return t({method:"DELETE",path:`/tables/${e.tableId}`,query:{appId:e.appId}})},getRelationships(e){return k(()=>t({method:"GET",path:`/tables/${e.tableId}/relationships`,query:{skip:e.skip}}),{paginatedExecutor:a=>t({method:"GET",path:`/tables/${e.tableId}/relationships`,query:{skip:e.skip,...a}}),autoPaginate:r})},createRelationship(e,o){return t({method:"POST",path:`/tables/${e.tableId}/relationship`,body:o})},updateRelationship(e,o){return t({method:"POST",path:`/tables/${e.tableId}/relationship/${e.relationshipId}`,body:o})},deleteRelationship(e){return t({method:"DELETE",path:`/tables/${e.tableId}/relationship/${e.relationshipId}`})},getTableReports(e){return t({method:"GET",path:"/reports",query:{tableId:e.tableId}})},getReport(e){return t({method:"GET",path:`/reports/${e.reportId}`,query:{tableId:e.tableId}})},runReport(e,o){return k(()=>t({method:"POST",path:`/reports/${e.reportId}/run`,query:{tableId:e.tableId,skip:e.skip,top:e.top},body:o}),{paginatedExecutor:s=>{let u=o,m=s.skip!==void 0||s.nextPageToken||s.nextToken?{...u||{},options:{...u?.options||{},...s.skip!==void 0?{skip:s.skip}:{}},...s.nextPageToken?{nextPageToken:s.nextPageToken}:{},...s.nextToken?{nextToken:s.nextToken}:{}}:o;return t({method:"POST",path:`/reports/${e.reportId}/run`,query:{tableId:e.tableId,skip:e.skip,top:e.top},body:m})},autoPaginate:r})},getFields(e){return t({method:"GET",path:"/fields",query:{tableId:e.tableId,includeFieldPerms:e.includeFieldPerms}})},createField(e,o){return t({method:"POST",path:"/fields",query:{tableId:e.tableId},body:o})},deleteFields(e,o){return t({method:"DELETE",path:"/fields",query:{tableId:e.tableId},body:o})},getField(e){return t({method:"GET",path:`/fields/${e.fieldId}`,query:{tableId:e.tableId,includeFieldPerms:e.includeFieldPerms}})},updateField(e,o){return t({method:"POST",path:`/fields/${e.fieldId}`,query:{tableId:e.tableId},body:o})},getFieldsUsage(e){return t({method:"GET",path:"/fields/usage",query:{tableId:e.tableId,skip:e.skip,top:e.top}})},getFieldUsage(e){return t({method:"GET",path:`/fields/usage/${e.fieldId}`,query:{tableId:e.tableId}})},runFormula(e){return t({method:"POST",path:"/formula/run",body:e})},upsert(e){return k(()=>t({method:"POST",path:"/records",body:e}),{paginatedExecutor:a=>{let s=e,u=a.skip!==void 0||a.nextPageToken||a.nextToken?{...s||{},options:{...s?.options||{},...a.skip!==void 0?{skip:a.skip}:{}},...a.nextPageToken?{nextPageToken:a.nextPageToken}:{},...a.nextToken?{nextToken:a.nextToken}:{}}:e;return t({method:"POST",path:"/records",body:u})},autoPaginate:r})},deleteRecords(e){return t({method:"DELETE",path:"/records",body:e})},runQuery(e){return k(()=>t({method:"POST",path:"/records/query",body:e}),{paginatedExecutor:a=>{let s=e,u=a.skip!==void 0||a.nextPageToken||a.nextToken?{...s||{},options:{...s?.options||{},...a.skip!==void 0?{skip:a.skip}:{}},...a.nextPageToken?{nextPageToken:a.nextPageToken}:{},...a.nextToken?{nextToken:a.nextToken}:{}}:e;return t({method:"POST",path:"/records/query",body:u})},autoPaginate:r})},getTempTokenDBID(e){return t({method:"GET",path:`/auth/temporary/${e.dbid}`})},exchangeSsoToken(e){return t({method:"POST",path:"/auth/oauth/token",body:e})},cloneUserToken(e){return t({method:"POST",path:"/usertoken/clone",body:e})},transferUserToken(e){return t({method:"POST",path:"/usertoken/transfer",body:e})},deactivateUserToken(){return t({method:"POST",path:"/usertoken/deactivate"})},deleteUserToken(){return t({method:"DELETE",path:"/usertoken"})},downloadFile(e){return t({method:"GET",path:`/files/${e.tableId}/${e.recordId}/${e.fieldId}/${e.versionNumber}`})},deleteFile(e){return t({method:"DELETE",path:`/files/${e.tableId}/${e.recordId}/${e.fieldId}/${e.versionNumber}`})},getUsers(e,o){return k(()=>t({method:"POST",path:"/users",query:{accountId:e.accountId},body:o}),{paginatedExecutor:s=>{let u=o,m=s.skip!==void 0||s.nextPageToken||s.nextToken?{...u||{},options:{...u?.options||{},...s.skip!==void 0?{skip:s.skip}:{}},...s.nextPageToken?{nextPageToken:s.nextPageToken}:{},...s.nextToken?{nextToken:s.nextToken}:{}}:o;return t({method:"POST",path:"/users",query:{accountId:e.accountId},body:m})},autoPaginate:r})},denyUsers(e,o){return t({method:"PUT",path:"/users/deny",query:{accountId:e.accountId},body:o})},denyUsersAndGroups(e,o){return t({method:"PUT",path:`/users/deny/${e.shouldDeleteFromGroups}`,query:{accountId:e.accountId},body:o})},undenyUsers(e,o){return t({method:"PUT",path:"/users/undeny",query:{accountId:e.accountId},body:o})},addMembersToGroup(e,o){return t({method:"POST",path:`/groups/${e.gid}/members`,body:o})},removeMembersFromGroup(e,o){return t({method:"DELETE",path:`/groups/${e.gid}/members`,body:o})},addManagersToGroup(e,o){return t({method:"POST",path:`/groups/${e.gid}/managers`,body:o})},removeManagersFromGroup(e,o){return t({method:"DELETE",path:`/groups/${e.gid}/managers`,body:o})},addSubgroupsToGroup(e,o){return t({method:"POST",path:`/groups/${e.gid}/subgroups`,body:o})},removeSubgroupsFromGroup(e,o){return t({method:"DELETE",path:`/groups/${e.gid}/subgroups`,body:o})},audit(e){return t({method:"POST",path:"/audit",body:e})},platformAnalyticReads(e){return t({method:"GET",path:"/analytics/reads",query:{day:e.day}})},platformAnalyticEventSummaries(e,o){return k(()=>t({method:"POST",path:"/analytics/events/summaries",query:{accountId:e.accountId},body:o}),{paginatedExecutor:s=>{let u=o,m=s.skip!==void 0||s.nextPageToken||s.nextToken?{...u||{},options:{...u?.options||{},...s.skip!==void 0?{skip:s.skip}:{}},...s.nextPageToken?{nextPageToken:s.nextPageToken}:{},...s.nextToken?{nextToken:s.nextToken}:{}}:o;return t({method:"POST",path:"/analytics/events/summaries",query:{accountId:e.accountId},body:m})},autoPaginate:r})},exportSolution(e){return t({method:"GET",path:`/solutions/${e.solutionId}`})},updateSolution(e,o){return t({method:"PUT",path:`/solutions/${e.solutionId}`,body:o})},createSolution(e){return t({method:"POST",path:"/solutions",body:e})},exportSolutionToRecord(e){return t({method:"GET",path:`/solutions/${e.solutionId}/torecord`,query:{tableId:e.tableId,fieldId:e.fieldId}})},createSolutionFromRecord(e){return t({method:"GET",path:"/solutions/fromrecord",query:{tableId:e.tableId,fieldId:e.fieldId,recordId:e.recordId}})},updateSolutionToRecord(e){return t({method:"GET",path:`/solutions/${e.solutionId}/fromrecord`,query:{tableId:e.tableId,fieldId:e.fieldId,recordId:e.recordId}})},changesetSolution(e,o){return t({method:"PUT",path:`/solutions/${e.solutionId}/changeset`,body:o})},changesetSolutionFromRecord(e){return t({method:"GET",path:`/solutions/${e.solutionId}/changeset/fromrecord`,query:{tableId:e.tableId,fieldId:e.fieldId,recordId:e.recordId}})},generateDocument(e){return t({method:"GET",path:`/docTemplates/${e.templateId}/generate`,query:{tableId:e.tableId,recordId:e.recordId,filename:e.filename,format:e.format,margin:e.margin,unit:e.unit,pageSize:e.pageSize,orientation:e.orientation,realm:e.realm}})}}}function me(t){let r=j(t),e=O(r.debug),o={realm:r.realm,baseUrl:r.baseUrl,fetchApi:r.fetchApi,logger:e},n=N(r.auth,o),a=H(r.proactiveThrottle),s=z({config:r,auth:n,throttle:a,logger:e});return{...W(s.execute,r.autoPaginate),request:s.execute,getConfig:()=>r}}var Et=me;export{R as AuthenticationError,I as AuthorizationError,G as NoOpThrottle,C as NotFoundError,h as QuickbaseError,y as RateLimitError,x as ServerError,U as SlidingWindowThrottle,S as SsoTokenStrategy,E as TempTokenStrategy,b as TimeoutError,A as UserTokenStrategy,D as ValidationError,W as createApiMethods,N as createAuthStrategy,me as createClient,Et as default};
|
|
7
7
|
//# sourceMappingURL=quickbase.esm.js.map
|