@endorr/core-sdk 0.1.1 → 0.2.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,qBAAa,cAAe,SAAQ,KAAK;aAErB,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;aAC9C,SAAS,CAAC,EAAE,MAAM;gBAJlB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,YAAA,EAC9C,SAAS,CAAC,EAAE,MAAM,YAAA;IAKpC,6CAA6C;IAC7C,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAG5C,IAAI,cAAc,YAAkC;IACpD,IAAI,WAAW,YAAkC;IACjD,IAAI,UAAU,YAAkC;CACjD;AAED,0EAA0E;AAC1E,qBAAa,gBAAiB,SAAQ,KAAK;aACb,KAAK,EAAE,MAAM;aAAkB,WAAW,CAAC,EAAE,MAAM;aAAkB,MAAM,CAAC,EAAE,MAAM;gBAApF,KAAK,EAAE,MAAM,EAAkB,WAAW,CAAC,EAAE,MAAM,YAAA,EAAkB,MAAM,CAAC,EAAE,MAAM,YAAA;CAIjH;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAKpE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,+GAA+G;AAC/G,qBAAa,cAAe,SAAQ,KAAK;aAErB,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,MAAM;aAEZ,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;aAC9C,SAAS,CAAC,EAAE,MAAM;gBAJlB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,YAAA,EAC9C,SAAS,CAAC,EAAE,MAAM,YAAA;IAKpC,6CAA6C;IAC7C,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAG5C,IAAI,cAAc,YAAkC;IACpD,IAAI,iBAAiB,YAAkC;IACvD,IAAI,WAAW,YAAkC;IACjD,IAAI,UAAU,YAAkC;CACjD;AAED;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,cAAc;aACmC,KAAK,EAAE,WAAW;gBAAjG,IAAI,EAAE,cAAc,GAAG,qBAAqB,EAAE,OAAO,EAAE,MAAM,EAAkB,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM;IAIjI,IAAI,MAAM,mCAAgC;IAC1C,IAAI,OAAO;;;;aAAiC;CAC7C;AAED,0EAA0E;AAC1E,qBAAa,gBAAiB,SAAQ,KAAK;aACb,KAAK,EAAE,MAAM;aAAkB,WAAW,CAAC,EAAE,MAAM;aAAkB,MAAM,CAAC,EAAE,MAAM;gBAApF,KAAK,EAAE,MAAM,EAAkB,WAAW,CAAC,EAAE,MAAM,YAAA,EAAkB,MAAM,CAAC,EAAE,MAAM,YAAA;CAIjH;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CASpE"}
package/dist/errors.js CHANGED
@@ -17,9 +17,24 @@ export class EndorrApiError extends Error {
17
17
  return this.details?.find((d) => d.path === path)?.message;
18
18
  }
19
19
  get isUnauthorized() { return this.status === 401; }
20
+ get isPaymentRequired() { return this.status === 402; }
20
21
  get isForbidden() { return this.status === 403; }
21
22
  get isNotFound() { return this.status === 404; }
22
23
  }
24
+ /**
25
+ * 402 from Core: the organisation may not use the product or feature (`not_entitled`), or cannot
26
+ * afford the action (`insufficient_tokens`). `check` carries what fixes it: `addon`, `upgrade`, `top_up`.
27
+ */
28
+ export class EndorrEntitlementError extends EndorrApiError {
29
+ check;
30
+ constructor(code, message, check, requestId) {
31
+ super(402, code, message, undefined, requestId);
32
+ this.check = check;
33
+ this.name = 'EndorrEntitlementError';
34
+ }
35
+ get reason() { return this.check.reason; }
36
+ get upgrade() { return this.check.upgrade; }
37
+ }
23
38
  /** Error from the OAuth token/authorization endpoints (RFC 6749 §5.2). */
24
39
  export class EndorrOAuthError extends Error {
25
40
  error;
@@ -40,6 +55,10 @@ export async function throwForResponse(res) {
40
55
  }
41
56
  catch { /* not json */ }
42
57
  const e = body?.error;
43
- throw new EndorrApiError(res.status, e?.code ?? 'http_error', e?.message ?? `Endorr Core answered ${res.status}`, e?.details, e?.request_id ?? res.headers.get('x-request-id') ?? undefined);
58
+ const requestId = e?.request_id ?? res.headers.get('x-request-id') ?? undefined;
59
+ if (res.status === 402 && (e?.code === 'not_entitled' || e?.code === 'insufficient_tokens') && e.details && typeof e.details === 'object') {
60
+ throw new EndorrEntitlementError(e.code, e.message ?? 'Not included in the current plan.', e.details, requestId);
61
+ }
62
+ throw new EndorrApiError(res.status, e?.code ?? 'http_error', e?.message ?? `Endorr Core answered ${res.status}`, e?.details, requestId);
44
63
  }
45
64
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,MAAM,OAAO,cAAe,SAAQ,KAAK;IAErB;IACA;IAEA;IACA;IALlB,YACkB,MAAc,EACd,IAAY,EAC5B,OAAe,EACC,OAA8C,EAC9C,SAAkB;QAElC,KAAK,CAAC,OAAO,CAAC,CAAC;QANC,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAQ;QAEZ,YAAO,GAAP,OAAO,CAAuC;QAC9C,cAAS,GAAT,SAAS,CAAS;QAGlC,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAC;IAC/B,CAAC;IACD,6CAA6C;IAC7C,UAAU,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,OAAO,CAAC;IAC7D,CAAC;IACD,IAAI,cAAc,KAAK,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC;IACpD,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC;IACjD,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC;CACjD;AAED,0EAA0E;AAC1E,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACb;IAA+B;IAAsC;IAAjG,YAA4B,KAAa,EAAkB,WAAoB,EAAkB,MAAe;QAC9G,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAD9B,UAAK,GAAL,KAAK,CAAQ;QAAkB,gBAAW,GAAX,WAAW,CAAS;QAAkB,WAAM,GAAN,MAAM,CAAS;QAE9G,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAa;IAClD,IAAI,IAAI,GAAY,IAAI,CAAC;IACzB,IAAI,CAAC;QAAC,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IACzD,MAAM,CAAC,GAAI,IAAoI,EAAE,KAAK,CAAC;IACvJ,MAAM,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,IAAI,YAAY,EAAE,CAAC,EAAE,OAAO,IAAI,wBAAwB,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,CAAC;AAC/L,CAAC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,12 @@
1
1
  export { EndorrOAuth, generatePkce, randomState, DEFAULT_SCOPES } from './oauth';
2
2
  export type { OAuthConfig, AuthorizationUrlOptions } from './oauth';
3
3
  export { EndorrClient } from './client';
4
- export type { ClientConfig } from './client';
4
+ export type { ClientConfig, AccessQuery } from './client';
5
+ export { hasProduct, hasFeature, describeDenial, assertAllowed, PRODUCT_NAMES, FEATURE_NAMES } from './entitlements';
5
6
  export { uploadFile } from './upload';
7
+ export { EndorrBillingSync } from './billing-sync';
8
+ export type { BillingSyncConfig } from './billing-sync';
6
9
  export type { UploadOptions } from './upload';
7
- export { EndorrApiError, EndorrOAuthError } from './errors';
10
+ export { EndorrApiError, EndorrOAuthError, EndorrEntitlementError } from './errors';
8
11
  export * from './types';
9
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5D,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACjF,YAAY,EAAE,WAAW,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACpF,cAAc,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,8 @@
1
1
  export { EndorrOAuth, generatePkce, randomState, DEFAULT_SCOPES } from './oauth';
2
2
  export { EndorrClient } from './client';
3
+ export { hasProduct, hasFeature, describeDenial, assertAllowed, PRODUCT_NAMES, FEATURE_NAMES } from './entitlements';
3
4
  export { uploadFile } from './upload';
4
- export { EndorrApiError, EndorrOAuthError } from './errors';
5
+ export { EndorrBillingSync } from './billing-sync';
6
+ export { EndorrApiError, EndorrOAuthError, EndorrEntitlementError } from './errors';
5
7
  export * from './types';
6
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5D,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACpF,cAAc,SAAS,CAAC"}
package/dist/nextjs.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { EndorrOAuth, type OAuthConfig } from './oauth';
2
- import type { IdTokenClaims, TokenSet } from './types';
2
+ import type { AccessCheck, IdTokenClaims, TokenSet } from './types';
3
+ import type { AccessQuery, EndorrClient } from './client';
3
4
  /**
4
5
  * Next.js (App Router) helpers for the Login with Endorr dance.
5
6
  *
@@ -41,4 +42,18 @@ export declare function endorrLoginHandler(auth: EndorrAuth): {
41
42
  export declare function endorrCallbackHandler(auth: EndorrAuth, handlers: CallbackHandlers): {
42
43
  GET: (req: Request) => Promise<Response>;
43
44
  };
45
+ /**
46
+ * Gate a server action, page or handler: `await requireEntitlement(core, { product: 'printreadysheets' })`.
47
+ * Throws EndorrEntitlementError when denied; `entitlementErrorResponse` turns it into a 402.
48
+ */
49
+ export declare function requireEntitlement(client: EndorrClient, q: AccessQuery): Promise<AccessCheck>;
50
+ /** 402 JSON carrying the check (reason, usage, upgrade), or null when `err` is not an entitlement error. */
51
+ export declare function entitlementErrorResponse(err: unknown): Response | null;
52
+ /**
53
+ * Route-handler wrapper: runs `handler` only when the organisation may, answers 402 otherwise
54
+ * (also when the handler's own `recordUsage` hits the limit).
55
+ *
56
+ * export const POST = withEntitlement((req) => coreFor(req), { metric: 'filefixer_fixes' }, async (req, access) => { … });
57
+ */
58
+ export declare function withEntitlement<Ctx = unknown>(clientFor: (req: Request) => EndorrClient | Promise<EndorrClient>, q: AccessQuery, handler: (req: Request, access: AccessCheck, ctx: Ctx) => Promise<Response> | Response): (req: Request, ctx: Ctx) => Promise<Response>;
44
59
  //# sourceMappingURL=nextjs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nextjs.d.ts","sourceRoot":"","sources":["../src/nextjs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA6B,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAwCD,MAAM,WAAW,eAAe;IAAG,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE;AAChH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;IAClE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;CAC5E;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,cAAc;;iBAKxB,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC;oBAkBxB,OAAO,YAAY,gBAAgB,KAAG,OAAO,CAAC,QAAQ,CAAC;EAqBrF;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7D,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU;eAC7B,OAAO;EAC5B;AACD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB;eAC5D,OAAO;EAC5B"}
1
+ {"version":3,"file":"nextjs.d.ts","sourceRoot":"","sources":["../src/nextjs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAA6B,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AACnF,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG1D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAwCD,MAAM,WAAW,eAAe;IAAG,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE;AAChH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;IAClE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;CAC5E;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,cAAc;;iBAKxB,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC;oBAkBxB,OAAO,YAAY,gBAAgB,KAAG,OAAO,CAAC,QAAQ,CAAC;EAqBrF;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE7D,2EAA2E;AAC3E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU;eAC7B,OAAO;EAC5B;AACD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB;eAC5D,OAAO;EAC5B;AAID;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAE7F;AAED,4GAA4G;AAC5G,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI,CAKtE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,GAAG,GAAG,OAAO,EAC3C,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,EACjE,CAAC,EAAE,WAAW,EACd,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,IAExE,KAAK,OAAO,EAAE,KAAK,GAAG,KAAG,OAAO,CAAC,QAAQ,CAAC,CAUzD"}
package/dist/nextjs.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { EndorrOAuth, generatePkce, randomState } from './oauth';
2
+ import { EndorrEntitlementError } from './errors';
2
3
  const enc = new TextEncoder();
3
4
  async function hmac(secret, data) {
4
5
  const key = await crypto.subtle.importKey('raw', enc.encode(secret), { name: 'HMAC', hash: 'SHA-256' }, false, ['sign']);
@@ -89,4 +90,40 @@ export function endorrLoginHandler(auth) {
89
90
  export function endorrCallbackHandler(auth, handlers) {
90
91
  return { GET: (req) => auth.callback(req, handlers) };
91
92
  }
93
+ /* ── Entitlements ─────────────────────────────────────────────────────────────── */
94
+ /**
95
+ * Gate a server action, page or handler: `await requireEntitlement(core, { product: 'printreadysheets' })`.
96
+ * Throws EndorrEntitlementError when denied; `entitlementErrorResponse` turns it into a 402.
97
+ */
98
+ export function requireEntitlement(client, q) {
99
+ return client.billing.require(q);
100
+ }
101
+ /** 402 JSON carrying the check (reason, usage, upgrade), or null when `err` is not an entitlement error. */
102
+ export function entitlementErrorResponse(err) {
103
+ if (!(err instanceof EndorrEntitlementError))
104
+ return null;
105
+ return new Response(JSON.stringify({ error: { code: err.code, message: err.message, details: err.check } }), {
106
+ status: 402, headers: { 'content-type': 'application/json' },
107
+ });
108
+ }
109
+ /**
110
+ * Route-handler wrapper: runs `handler` only when the organisation may, answers 402 otherwise
111
+ * (also when the handler's own `recordUsage` hits the limit).
112
+ *
113
+ * export const POST = withEntitlement((req) => coreFor(req), { metric: 'filefixer_fixes' }, async (req, access) => { … });
114
+ */
115
+ export function withEntitlement(clientFor, q, handler) {
116
+ return async (req, ctx) => {
117
+ try {
118
+ const access = await (await clientFor(req)).billing.require(q);
119
+ return await handler(req, access, ctx);
120
+ }
121
+ catch (err) {
122
+ const res = entitlementErrorResponse(err);
123
+ if (res)
124
+ return res;
125
+ throw err;
126
+ }
127
+ };
128
+ }
92
129
  //# sourceMappingURL=nextjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nextjs.js","sourceRoot":"","sources":["../src/nextjs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAoB,MAAM,SAAS,CAAC;AAwBnF,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;AAC9B,KAAK,UAAU,IAAI,CAAC,MAAc,EAAE,IAAY;IAC9C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACzH,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpF,IAAI,CAAC,GAAG,EAAE,CAAC;IAAC,KAAK,MAAM,CAAC,IAAI,GAAG;QAAE,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC5E,CAAC;AACD,SAAS,GAAG,CAAC,CAAS,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACpI,SAAS,KAAK,CAAC,CAAS,IAAI,OAAO,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/G,KAAK,UAAU,IAAI,CAAC,MAAc,EAAE,CAAU;IAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,OAAO,GAAG,IAAI,IAAI,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;AAC/C,CAAC;AACD,KAAK,UAAU,IAAI,CAAC,MAAc,EAAE,KAAyB;IAC3D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACrE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAY,CAAC;IAC7C,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,UAAU,CAAC,GAAY,EAAE,IAAY;IAC5C,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,IAAI;YAAE,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,GAAmB,EAAE,MAAc;IACtD,MAAM,MAAM,GAAG,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC3E,OAAO,2CAA2C,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACxF,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAAC,GAAmB;IAClD,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,gBAAgB,CAAC;IAEtD,oFAAoF;IACpF,KAAK,UAAU,KAAK,CAAC,GAAY;QAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC;QAC1D,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3F,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC;YACpC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS;YACtC,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,SAAS;YAClD,MAAM,EAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAmD,IAAI,SAAS;YACtG,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,SAAS;SAC3D,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/G,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,IAAI,kBAAkB,CAAC,MAAM,CAAC,KAAK,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACnK,CAAC;IAED,+GAA+G;IAC/G,KAAK,UAAU,QAAQ,CAAC,GAAY,EAAE,QAA0B;QAC9D,MAAM,KAAK,GAAG,GAAG,UAAU,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YAChF,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAClE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YACrG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;YAChF,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YAC5F,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO,GAAG,CAAC;QACb,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,6BAA6B,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;YACnL,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAID,2EAA2E;AAC3E,MAAM,UAAU,kBAAkB,CAAC,IAAgB;IACjD,OAAO,EAAE,GAAG,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;AACpD,CAAC;AACD,MAAM,UAAU,qBAAqB,CAAC,IAAgB,EAAE,QAA0B;IAChF,OAAO,EAAE,GAAG,EAAE,CAAC,GAAY,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"nextjs.js","sourceRoot":"","sources":["../src/nextjs.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjE,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED,eAAO,MAAM,cAAc,UAAiG,CAAC;AAc7H,gGAAgG;AAChG,wBAAsB,YAAY,IAAI,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAIrF;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,gBAAgB,CAAC;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAcD;;;GAGG;AACH,qBAAa,WAAW;IAKV,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJhC,OAAO,CAAC,IAAI,CAAsD;IAClE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAe;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEK,GAAG,EAAE,WAAW;IAK7C,gBAAgB,CAAC,CAAC,EAAE,uBAAuB,GAAG,MAAM;IAiBpD,qFAAqF;IACrF,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;YAU3D,KAAK;IAUnB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAInE,2FAA2F;IAC3F,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI5D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnF,sGAAsG;IAChG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAOrF,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAMtD,6GAA6G;IAC7G,aAAa,CAAC,CAAC,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,MAAM;IASnG,sHAAsH;IACtH,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM;;;;;;;CAUxB"}
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjE,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED,eAAO,MAAM,cAAc,UAAiG,CAAC;AAc7H,gGAAgG;AAChG,wBAAsB,YAAY,IAAI,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAIrF;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,uFAAuF;IACvF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,gBAAgB,CAAC;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAcD;;;GAGG;AACH,qBAAa,WAAW;IAKV,OAAO,CAAC,QAAQ,CAAC,GAAG;IAJhC,OAAO,CAAC,IAAI,CAAsD;IAClE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAe;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEK,GAAG,EAAE,WAAW;IAM7C,gBAAgB,CAAC,CAAC,EAAE,uBAAuB,GAAG,MAAM;IAiBpD,qFAAqF;IACrF,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE;YAU3D,KAAK;IAUnB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAInE,2FAA2F;IAC3F,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI5D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnF,sGAAsG;IAChG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAOrF,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAMtD,6GAA6G;IAC7G,aAAa,CAAC,CAAC,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,MAAM;IASnG,sHAAsH;IACtH,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM;;;;;;;CAUxB"}
package/dist/oauth.js CHANGED
@@ -39,7 +39,8 @@ export class EndorrOAuth {
39
39
  constructor(cfg) {
40
40
  this.cfg = cfg;
41
41
  this.issuer = cfg.issuer.replace(/\/$/, '');
42
- this.f = cfg.fetch ?? fetch;
42
+ // Never store the global fetch as a method: calling it as `this.f(...)` throws "Illegal invocation" in browsers.
43
+ this.f = cfg.fetch ?? ((input, init) => fetch(input, init));
43
44
  }
44
45
  authorizationUrl(o) {
45
46
  const u = new URL('/oauth/authorize', this.issuer);
package/dist/oauth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}
package/dist/react.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { type ReactNode } from 'react';
2
- import { EndorrClient, type ClientConfig } from './client';
2
+ import { EndorrClient, type AccessQuery, type ClientConfig } from './client';
3
3
  import { type UploadOptions } from './upload';
4
- import type { EndorrFile, Me } from './types';
4
+ import type { AccessCheck, EndorrFile, Entitlements, Me, Wallet } from './types';
5
5
  export declare function EndorrProvider({ client, config, children }: {
6
6
  client?: EndorrClient;
7
7
  config?: ClientConfig;
@@ -21,6 +21,38 @@ export declare function useEndorrMe(): {
21
21
  loading: boolean;
22
22
  refresh: () => Promise<void>;
23
23
  };
24
+ /** The organisation's plan, products and limits. Call `refresh` after a checkout or plan change. */
25
+ export declare function useEntitlements(organizationId?: string): {
26
+ data: Entitlements | null;
27
+ error: Error | null;
28
+ loading: boolean;
29
+ refresh: () => Promise<void>;
30
+ };
31
+ /** Live access check for a product, feature or action, with what would unlock it (add-on, plan, token pack). */
32
+ export declare function useAccess(q: AccessQuery): {
33
+ data: AccessCheck | null;
34
+ error: Error | null;
35
+ loading: boolean;
36
+ refresh: () => Promise<void>;
37
+ };
38
+ /** The organisation's token wallet. Call `refresh` after a spend or a top-up. */
39
+ export declare function useWallet(organizationId?: string): {
40
+ data: Wallet | null;
41
+ error: Error | null;
42
+ loading: boolean;
43
+ refresh: () => Promise<void>;
44
+ };
45
+ /**
46
+ * Renders children only when the organisation may use the product. `fallback` may be a function of
47
+ * the check, to show the right upgrade prompt. UI gating only: the server must still enforce.
48
+ *
49
+ * <Entitled product="printreadysheets" fallback={(c) => <UpgradeCard plan={c.upgrade} />}>…</Entitled>
50
+ */
51
+ export declare function Entitled({ fallback, loading, children, ...q }: AccessQuery & {
52
+ fallback?: ReactNode | ((check: AccessCheck) => ReactNode);
53
+ loading?: ReactNode;
54
+ children: ReactNode;
55
+ }): import("react").JSX.Element;
24
56
  /** Direct-to-storage upload with progress. */
25
57
  export declare function useEndorrUpload(): {
26
58
  upload: (file: File, opts?: Omit<UploadOptions, "onProgress">) => Promise<EndorrFile | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AACA,OAAO,EAAgF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACrH,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAS9C,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;IAAE,MAAM,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAGjI;AAED,wBAAgB,SAAS,IAAI,YAAY,CAIxC;AAED,oHAAoH;AACpH,wBAAgB,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,OAAO,EAAO;;;;;EAa/F;AAED,wBAAgB,WAAW;;;;;EAE1B;AAED,8CAA8C;AAC9C,wBAAgB,eAAe;mBAKW,IAAI,SAAQ,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,KAAQ,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;;;;EAYxH"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"AACA,OAAO,EAAgF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACrH,OAAO,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7E,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AASjF,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;IAAE,MAAM,CAAC,EAAE,YAAY,CAAC;IAAC,MAAM,CAAC,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAGjI;AAED,wBAAgB,SAAS,IAAI,YAAY,CAIxC;AAED,oHAAoH;AACpH,wBAAgB,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,OAAO,EAAO;;;;;EAa/F;AAED,wBAAgB,WAAW;;;;;EAE1B;AAED,oGAAoG;AACpG,wBAAgB,eAAe,CAAC,cAAc,CAAC,EAAE,MAAM;;;;;EAEtD;AAED,gHAAgH;AAChH,wBAAgB,SAAS,CAAC,CAAC,EAAE,WAAW;;;;;EAEvC;AAED,iFAAiF;AACjF,wBAAgB,SAAS,CAAC,cAAc,CAAC,EAAE,MAAM;;;;;EAEhD;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,EAAE,QAAe,EAAE,OAAc,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,WAAW,GAAG;IAC1F,QAAQ,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,WAAW,KAAK,SAAS,CAAC,CAAC;IAC3D,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;CACrB,+BAMA;AAED,8CAA8C;AAC9C,wBAAgB,eAAe;mBAKW,IAAI,SAAQ,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,KAAQ,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;;;;EAYxH"}
package/dist/react.js CHANGED
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
3
3
  import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
4
4
  import { EndorrClient } from './client';
5
5
  import { uploadFile } from './upload';
@@ -47,6 +47,34 @@ export function useEndorrQuery(fn, deps = []) {
47
47
  export function useEndorrMe() {
48
48
  return useEndorrQuery((c) => c.me.get());
49
49
  }
50
+ /** The organisation's plan, products and limits. Call `refresh` after a checkout or plan change. */
51
+ export function useEntitlements(organizationId) {
52
+ return useEndorrQuery((c) => c.billing.entitlements(organizationId), [organizationId]);
53
+ }
54
+ /** Live access check for a product, feature or action, with what would unlock it (add-on, plan, token pack). */
55
+ export function useAccess(q) {
56
+ return useEndorrQuery((c) => c.billing.check(q), [q.product, q.feature, q.action, q.quantity, q.organizationId]);
57
+ }
58
+ /** The organisation's token wallet. Call `refresh` after a spend or a top-up. */
59
+ export function useWallet(organizationId) {
60
+ return useEndorrQuery((c) => c.billing.wallet(organizationId), [organizationId]);
61
+ }
62
+ /**
63
+ * Renders children only when the organisation may use the product. `fallback` may be a function of
64
+ * the check, to show the right upgrade prompt. UI gating only: the server must still enforce.
65
+ *
66
+ * <Entitled product="printreadysheets" fallback={(c) => <UpgradeCard plan={c.upgrade} />}>…</Entitled>
67
+ */
68
+ export function Entitled({ fallback = null, loading = null, children, ...q }) {
69
+ const { data, loading: busy } = useAccess(q);
70
+ if (busy && !data)
71
+ return _jsx(_Fragment, { children: loading });
72
+ if (data?.allowed)
73
+ return _jsx(_Fragment, { children: children });
74
+ if (typeof fallback === 'function')
75
+ return _jsx(_Fragment, { children: data ? fallback(data) : null });
76
+ return _jsx(_Fragment, { children: fallback });
77
+ }
50
78
  /** Direct-to-storage upload with progress. */
51
79
  export function useEndorrUpload() {
52
80
  const client = useEndorr();
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}