@arnaudjnn/billing-tools 21.6.1 → 21.7.0
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/bound-api.d.ts +9 -0
- package/dist/bound-api.d.ts.map +1 -1
- package/dist/bound-api.js +8 -6
- package/dist/bound-api.js.map +1 -1
- package/dist/create-billing.d.ts +15 -0
- package/dist/create-billing.d.ts.map +1 -1
- package/dist/create-billing.js +44 -2
- package/dist/create-billing.js.map +1 -1
- package/dist/entries/notifications.d.ts +2 -0
- package/dist/entries/notifications.d.ts.map +1 -0
- package/dist/entries/notifications.js +11 -0
- package/dist/entries/notifications.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/invitations.d.ts +9 -0
- package/dist/invitations.d.ts.map +1 -1
- package/dist/invitations.js +3 -2
- package/dist/invitations.js.map +1 -1
- package/dist/notifications/emit.d.ts +18 -0
- package/dist/notifications/emit.d.ts.map +1 -0
- package/dist/notifications/emit.js +79 -0
- package/dist/notifications/emit.js.map +1 -0
- package/dist/notifications/index.d.ts +171 -0
- package/dist/notifications/index.d.ts.map +1 -0
- package/dist/notifications/index.js +92 -0
- package/dist/notifications/index.js.map +1 -0
- package/dist/plan-model.d.ts +44 -1
- package/dist/plan-model.d.ts.map +1 -1
- package/dist/plan-model.js +14 -13
- package/dist/plan-model.js.map +1 -1
- package/dist/plan-request.d.ts +5 -0
- package/dist/plan-request.d.ts.map +1 -1
- package/dist/plan-request.js +19 -0
- package/dist/plan-request.js.map +1 -1
- package/dist/tools/management.d.ts +3 -0
- package/dist/tools/management.d.ts.map +1 -1
- package/dist/tools/management.js +5 -3
- package/dist/tools/management.js.map +1 -1
- package/dist/tools/register.d.ts +9 -0
- package/dist/tools/register.d.ts.map +1 -1
- package/dist/tools/register.js +2 -2
- package/dist/tools/register.js.map +1 -1
- package/dist/tools/subscription.d.ts +3 -0
- package/dist/tools/subscription.d.ts.map +1 -1
- package/dist/tools/subscription.js +2 -0
- package/dist/tools/subscription.js.map +1 -1
- package/dist/topup.d.ts +9 -4
- package/dist/topup.d.ts.map +1 -1
- package/dist/topup.js +45 -6
- package/dist/topup.js.map +1 -1
- package/dist/usage.d.ts +2 -35
- package/dist/usage.d.ts.map +1 -1
- package/dist/usage.js +5 -16
- package/dist/usage.js.map +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
// Who gets told, and the one place that swallows a failed telling.
|
|
2
|
+
//
|
|
3
|
+
// Kept apart from `./index.ts` so the wire format (the event union, the signature, the
|
|
4
|
+
// transport) stays free of the adapter: a consumer's route imports that half to VERIFY a
|
|
5
|
+
// delivery, and has no business pulling the storage seam in to do it.
|
|
6
|
+
const ADMIN_ROLE = "admin";
|
|
7
|
+
/**
|
|
8
|
+
* Build the fire-and-forget `Notify` every call site inside the library holds.
|
|
9
|
+
*
|
|
10
|
+
* Two things happen here that deliberately do NOT happen at the call sites:
|
|
11
|
+
*
|
|
12
|
+
* 1. **Recipients are resolved.** A call site knows the workspace and, at most, a member id;
|
|
13
|
+
* turning that into addresses is a membership question, and answering it eight times is
|
|
14
|
+
* how eight answers drift. It also has to be async, and a call site that awaited it would
|
|
15
|
+
* be blocking a metered call on a WorkOS round trip to send an email.
|
|
16
|
+
* 2. **Failure is swallowed, once.** Every notification describes something that ALREADY
|
|
17
|
+
* happened — the invitation exists, the credit is granted, the call was metered. A
|
|
18
|
+
* delivery that fails must not undo it. One `.catch()` here beats eight, where the ninth
|
|
19
|
+
* call site is the one that forgets.
|
|
20
|
+
*/
|
|
21
|
+
export function createEmitter(adapter, notifier, onError) {
|
|
22
|
+
if (!notifier)
|
|
23
|
+
return undefined;
|
|
24
|
+
const fail = (e) => {
|
|
25
|
+
try {
|
|
26
|
+
onError?.(e);
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
// A broken error handler is not worth a second failure.
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
return (event) => {
|
|
33
|
+
const audience = event.audience;
|
|
34
|
+
void (async () => {
|
|
35
|
+
const resolved = await withRecipients(adapter, event, audience);
|
|
36
|
+
// Nothing to tell anybody: an adapter that cannot list members, a workspace whose
|
|
37
|
+
// admins have no address on file. Sending to nobody is not an error, but it is not
|
|
38
|
+
// worth a round trip either.
|
|
39
|
+
if (!resolved.to.length)
|
|
40
|
+
return;
|
|
41
|
+
await notifier.deliver({ ...resolved, at: Date.now() });
|
|
42
|
+
})().catch(fail);
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/** Fill `to` (and a member's email, where the event carries one) from the adapter. */
|
|
46
|
+
async function withRecipients(adapter, event, audience) {
|
|
47
|
+
if (!audience)
|
|
48
|
+
return event;
|
|
49
|
+
if (audience.kind === "email")
|
|
50
|
+
return { ...event, to: [audience.email] };
|
|
51
|
+
const members = await listOrgMembers(adapter, event.orgId);
|
|
52
|
+
const to = audience.kind === "admins"
|
|
53
|
+
? members.filter((m) => m.roleSlug === ADMIN_ROLE).map((m) => m.email)
|
|
54
|
+
: members.filter((m) => m.userId === audience.memberId).map((m) => m.email);
|
|
55
|
+
// The member's own address, when the event names one and the caller could not. The same
|
|
56
|
+
// list answers both questions, so it is one lookup, not two.
|
|
57
|
+
const data = event.data;
|
|
58
|
+
const member = data && "member" in data && data.member && !data.member.email
|
|
59
|
+
? members.find((m) => m.userId === data.member.id)
|
|
60
|
+
: null;
|
|
61
|
+
return {
|
|
62
|
+
...event,
|
|
63
|
+
to: to.filter((e) => Boolean(e)),
|
|
64
|
+
...(member ? { data: { ...event.data, member: { ...data.member, email: member.email } } } : {}),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
async function listOrgMembers(adapter, orgId) {
|
|
68
|
+
if (!adapter.listMembers)
|
|
69
|
+
return [];
|
|
70
|
+
try {
|
|
71
|
+
return await adapter.listMembers(orgId);
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
// An unreadable membership means nobody gets told, which is the same outcome as no
|
|
75
|
+
// notifier at all — never a thrown error into the thing that happened.
|
|
76
|
+
return [];
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=emit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/notifications/emit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
/** Which allowance an alert is about, in the consumer's own words where the plan gave any. */
|
|
2
|
+
export interface NotifiedWindow {
|
|
3
|
+
every: string;
|
|
4
|
+
label: string | null;
|
|
5
|
+
used: number;
|
|
6
|
+
limit: number;
|
|
7
|
+
percent: number;
|
|
8
|
+
}
|
|
9
|
+
export interface NotifiedMember {
|
|
10
|
+
id: string;
|
|
11
|
+
email: string | null;
|
|
12
|
+
}
|
|
13
|
+
/** What happened. One variant per thing worth telling somebody about. */
|
|
14
|
+
export type BillingNotification =
|
|
15
|
+
/** A member was invited and the invitation record exists. `to` is the invitee. */
|
|
16
|
+
{
|
|
17
|
+
type: "invitation.created";
|
|
18
|
+
orgId: string;
|
|
19
|
+
to: string[];
|
|
20
|
+
data: {
|
|
21
|
+
invitationId: string;
|
|
22
|
+
email: string;
|
|
23
|
+
roleSlug: string;
|
|
24
|
+
acceptUrl: string;
|
|
25
|
+
organizationId: string;
|
|
26
|
+
inviterUserId?: string;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/** Somebody asked for more than their allowance. `to` is every admin of the workspace. */
|
|
30
|
+
| {
|
|
31
|
+
type: "topup.requested";
|
|
32
|
+
orgId: string;
|
|
33
|
+
to: string[];
|
|
34
|
+
data: {
|
|
35
|
+
requestId: string;
|
|
36
|
+
member: NotifiedMember;
|
|
37
|
+
credits: number;
|
|
38
|
+
/** The window that refused them, when the ask came from one. */
|
|
39
|
+
window: NotifiedWindow | null;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/** An admin answered — or granted unprompted. `to` is the member it is about. */
|
|
43
|
+
| {
|
|
44
|
+
type: "topup.resolved";
|
|
45
|
+
orgId: string;
|
|
46
|
+
to: string[];
|
|
47
|
+
data: {
|
|
48
|
+
requestId: string | null;
|
|
49
|
+
member: NotifiedMember;
|
|
50
|
+
credits: number;
|
|
51
|
+
outcome: "approved" | "denied" | "granted";
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/** Somebody asked to move up a rung the money cannot buy (a seat, a plan). */
|
|
55
|
+
| {
|
|
56
|
+
type: "upgrade.requested";
|
|
57
|
+
orgId: string;
|
|
58
|
+
to: string[];
|
|
59
|
+
data: {
|
|
60
|
+
requestId: string;
|
|
61
|
+
member: NotifiedMember;
|
|
62
|
+
kind: "seat" | "plan";
|
|
63
|
+
/** The seat type or plan key they asked for. */
|
|
64
|
+
target: string;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
/** An allowance crossed a threshold. Fired once per window per threshold per cycle. */
|
|
68
|
+
| {
|
|
69
|
+
type: "usage.threshold";
|
|
70
|
+
orgId: string;
|
|
71
|
+
to: string[];
|
|
72
|
+
data: {
|
|
73
|
+
/** Whose wall it is: one member's pack, or the workspace's own pool/ceiling. */
|
|
74
|
+
scope: "member" | "org";
|
|
75
|
+
member: NotifiedMember | null;
|
|
76
|
+
window: NotifiedWindow;
|
|
77
|
+
/** The threshold crossed (80, 100, …), not the exact percentage. */
|
|
78
|
+
threshold: number;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
/** An event as a consumer receives it: what happened, plus how to not send it twice. */
|
|
82
|
+
export type DeliverableNotification = BillingNotification & {
|
|
83
|
+
/** Stable across retries and re-fires. Dedupe on this. */
|
|
84
|
+
id: string;
|
|
85
|
+
/** Epoch ms the event was emitted. */
|
|
86
|
+
at: number;
|
|
87
|
+
};
|
|
88
|
+
export interface Notifier {
|
|
89
|
+
deliver(notification: DeliverableNotification): Promise<void>;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Who the event is for, stated as a question rather than an answer.
|
|
93
|
+
*
|
|
94
|
+
* A call site knows the workspace and, at most, a member id. Turning that into addresses is
|
|
95
|
+
* a membership question, answered once in `createEmitter` — off the hot path, because a
|
|
96
|
+
* metered call must not wait on a WorkOS round trip to send an email.
|
|
97
|
+
*/
|
|
98
|
+
export type Audience =
|
|
99
|
+
/** Every admin of the workspace. "Somebody is asking you for something." */
|
|
100
|
+
{
|
|
101
|
+
kind: "admins";
|
|
102
|
+
}
|
|
103
|
+
/** One member, by id. "Here is the answer to what you asked." */
|
|
104
|
+
| {
|
|
105
|
+
kind: "member";
|
|
106
|
+
memberId: string;
|
|
107
|
+
}
|
|
108
|
+
/** A literal address — an invitee, who is by definition not a member yet. */
|
|
109
|
+
| {
|
|
110
|
+
kind: "email";
|
|
111
|
+
email: string;
|
|
112
|
+
};
|
|
113
|
+
/**
|
|
114
|
+
* Fire an event. Returns immediately; failures are swallowed.
|
|
115
|
+
*
|
|
116
|
+
* This is the type every call site inside the library holds. `undefined` when no notifier is
|
|
117
|
+
* configured, which is why every site calls it as `notify?.(…)` — a deployment that wants no
|
|
118
|
+
* notifications pays nothing, not even the object.
|
|
119
|
+
*/
|
|
120
|
+
export type Notify = (notification: BillingNotification & {
|
|
121
|
+
id: string;
|
|
122
|
+
audience?: Audience;
|
|
123
|
+
}) => void;
|
|
124
|
+
/** `v1,<base64 hmac>` over `<id>.<timestamp>.<body>` — the Svix scheme, because that is what
|
|
125
|
+
* a consumer's inbound route is most likely to already verify. */
|
|
126
|
+
export declare function signNotification(secret: string, id: string, timestamp: number, body: string): string;
|
|
127
|
+
/**
|
|
128
|
+
* Verify a signature the way a receiver should: constant-time, and inside a replay window.
|
|
129
|
+
*
|
|
130
|
+
* Exported so a consumer's route does not hand-roll it. The one that did (an inbound email
|
|
131
|
+
* webhook) got it right, and the second one to try would be the one that skipped the
|
|
132
|
+
* timestamp check.
|
|
133
|
+
*/
|
|
134
|
+
export declare function verifyNotification(secret: string, headers: {
|
|
135
|
+
id?: string | null;
|
|
136
|
+
timestamp?: string | null;
|
|
137
|
+
signature?: string | null;
|
|
138
|
+
}, body: string, opts?: {
|
|
139
|
+
toleranceSec?: number;
|
|
140
|
+
now?: number;
|
|
141
|
+
}): boolean;
|
|
142
|
+
export interface WebhookNotifierOptions {
|
|
143
|
+
/** Where to POST. The consumer's own route, usually. */
|
|
144
|
+
endpoint: string;
|
|
145
|
+
/** Shared secret for the signature. Without one the POST is unsigned, which is only ever
|
|
146
|
+
* right for a localhost endpoint. */
|
|
147
|
+
secret?: string;
|
|
148
|
+
/** Per attempt. Default 5s — a notification must never hold anything open. */
|
|
149
|
+
timeoutMs?: number;
|
|
150
|
+
/** Attempts after the first. Default 2, backing off 250ms then 500ms. */
|
|
151
|
+
retries?: number;
|
|
152
|
+
/** Extra headers (an auth header for a gateway, say). */
|
|
153
|
+
headers?: Record<string, string>;
|
|
154
|
+
fetchImpl?: typeof fetch;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Deliver over HTTP, signed.
|
|
158
|
+
*
|
|
159
|
+
* Shipped rather than left to each consumer because the interesting parts are not the POST:
|
|
160
|
+
* they are the timeout (a hung endpoint must not hold a metered call open), the retry
|
|
161
|
+
* (a notification is worth one more try and not ten), and the signature (the receiver has to
|
|
162
|
+
* be able to tell the library from anyone else who learned the URL). Two consumers writing
|
|
163
|
+
* that twice is two chances to get the replay window wrong.
|
|
164
|
+
*
|
|
165
|
+
* 4xx is NOT retried: the receiver understood and refused, and repeating it just doubles the
|
|
166
|
+
* refusals. 5xx and network failures are.
|
|
167
|
+
*/
|
|
168
|
+
export declare function webhookNotifier(opts: WebhookNotifierOptions): Notifier;
|
|
169
|
+
/** For a consumer that wants an id and has nothing stable to derive one from. */
|
|
170
|
+
export declare function notificationId(prefix: string): string;
|
|
171
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { createHmac, randomUUID, timingSafeEqual } from "node:crypto";
|
|
2
|
+
// ── The shipped transport ────────────────────────────────────────────────────
|
|
3
|
+
const SIGNATURE_VERSION = "v1";
|
|
4
|
+
/** `v1,<base64 hmac>` over `<id>.<timestamp>.<body>` — the Svix scheme, because that is what
|
|
5
|
+
* a consumer's inbound route is most likely to already verify. */
|
|
6
|
+
export function signNotification(secret, id, timestamp, body) {
|
|
7
|
+
const mac = createHmac("sha256", secret).update(`${id}.${timestamp}.${body}`).digest("base64");
|
|
8
|
+
return `${SIGNATURE_VERSION},${mac}`;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Verify a signature the way a receiver should: constant-time, and inside a replay window.
|
|
12
|
+
*
|
|
13
|
+
* Exported so a consumer's route does not hand-roll it. The one that did (an inbound email
|
|
14
|
+
* webhook) got it right, and the second one to try would be the one that skipped the
|
|
15
|
+
* timestamp check.
|
|
16
|
+
*/
|
|
17
|
+
export function verifyNotification(secret, headers, body, opts = {}) {
|
|
18
|
+
const { id, timestamp, signature } = headers;
|
|
19
|
+
if (!id || !timestamp || !signature)
|
|
20
|
+
return false;
|
|
21
|
+
const ts = Number(timestamp);
|
|
22
|
+
if (!Number.isFinite(ts))
|
|
23
|
+
return false;
|
|
24
|
+
const now = opts.now ?? Date.now();
|
|
25
|
+
// A replay window, because a valid signature is valid for ever without one.
|
|
26
|
+
if (Math.abs(now - ts) > (opts.toleranceSec ?? 300) * 1000)
|
|
27
|
+
return false;
|
|
28
|
+
const expected = signNotification(secret, id, ts, body);
|
|
29
|
+
const a = Buffer.from(expected);
|
|
30
|
+
const b = Buffer.from(signature);
|
|
31
|
+
return a.length === b.length && timingSafeEqual(a, b);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Deliver over HTTP, signed.
|
|
35
|
+
*
|
|
36
|
+
* Shipped rather than left to each consumer because the interesting parts are not the POST:
|
|
37
|
+
* they are the timeout (a hung endpoint must not hold a metered call open), the retry
|
|
38
|
+
* (a notification is worth one more try and not ten), and the signature (the receiver has to
|
|
39
|
+
* be able to tell the library from anyone else who learned the URL). Two consumers writing
|
|
40
|
+
* that twice is two chances to get the replay window wrong.
|
|
41
|
+
*
|
|
42
|
+
* 4xx is NOT retried: the receiver understood and refused, and repeating it just doubles the
|
|
43
|
+
* refusals. 5xx and network failures are.
|
|
44
|
+
*/
|
|
45
|
+
export function webhookNotifier(opts) {
|
|
46
|
+
const doFetch = opts.fetchImpl ?? fetch;
|
|
47
|
+
const retries = opts.retries ?? 2;
|
|
48
|
+
const timeoutMs = opts.timeoutMs ?? 5_000;
|
|
49
|
+
return {
|
|
50
|
+
async deliver(notification) {
|
|
51
|
+
const body = JSON.stringify(notification);
|
|
52
|
+
const at = notification.at;
|
|
53
|
+
const headers = {
|
|
54
|
+
"content-type": "application/json",
|
|
55
|
+
"billing-notification-id": notification.id,
|
|
56
|
+
"billing-notification-timestamp": String(at),
|
|
57
|
+
...(opts.secret ? { "billing-notification-signature": signNotification(opts.secret, notification.id, at, body) } : {}),
|
|
58
|
+
...opts.headers,
|
|
59
|
+
};
|
|
60
|
+
let lastError = null;
|
|
61
|
+
for (let attempt = 0; attempt <= retries; attempt++) {
|
|
62
|
+
if (attempt > 0)
|
|
63
|
+
await new Promise((r) => setTimeout(r, 250 * 2 ** (attempt - 1)));
|
|
64
|
+
try {
|
|
65
|
+
const res = await doFetch(opts.endpoint, {
|
|
66
|
+
method: "POST",
|
|
67
|
+
headers,
|
|
68
|
+
body,
|
|
69
|
+
signal: AbortSignal.timeout(timeoutMs),
|
|
70
|
+
});
|
|
71
|
+
if (res.ok)
|
|
72
|
+
return;
|
|
73
|
+
// The receiver understood and said no. Retrying cannot change its mind.
|
|
74
|
+
if (res.status >= 400 && res.status < 500)
|
|
75
|
+
return;
|
|
76
|
+
lastError = new Error(`notification endpoint answered ${res.status}`);
|
|
77
|
+
}
|
|
78
|
+
catch (e) {
|
|
79
|
+
lastError = e;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// Exhausted. Throwing here is correct — `emitter` below is what swallows it, and a
|
|
83
|
+
// consumer calling `deliver` directly (a test, a custom transport) deserves the error.
|
|
84
|
+
throw lastError ?? new Error("notification delivery failed");
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
/** For a consumer that wants an id and has nothing stable to derive one from. */
|
|
89
|
+
export function notificationId(prefix) {
|
|
90
|
+
return `${prefix}:${randomUUID()}`;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"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"}
|
package/dist/plan-model.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Localized, type LocalizedList, type PartialMessages } from "./i18n.js";
|
|
1
|
+
import { type Localized, type LocaleOptions, type LocalizedList, type PartialMessages } from "./i18n.js";
|
|
2
2
|
export type BillingInterval = "monthly" | "yearly";
|
|
3
3
|
/** Minor units (cents). 1 credit = 1 minor unit, throughout this library. */
|
|
4
4
|
export type Money = number;
|
|
@@ -151,6 +151,49 @@ export type Exhausted =
|
|
|
151
151
|
* actually means. It is the only way to say that: the pack size cannot express it,
|
|
152
152
|
* since the size is a number and the period is the window.
|
|
153
153
|
*/
|
|
154
|
+
/**
|
|
155
|
+
* Which seat the caller holds, and the plan's own words for it.
|
|
156
|
+
*
|
|
157
|
+
* On the PURE module: resolving a seat's name is a lookup in the catalogue plus a locale
|
|
158
|
+
* choice, and it was reachable only through `usage.ts` — which imports the allowance engine,
|
|
159
|
+
* which imports Stripe. So a seat picker or a pricing card, the two screens that most want a
|
|
160
|
+
* seat's name, had to pull the whole engine through the root barrel to get a string. That is
|
|
161
|
+
* the mistake `CREDITS_PER_UNIT` already made once, at the cost of every page in a consumer.
|
|
162
|
+
*/
|
|
163
|
+
export interface UsageSeat {
|
|
164
|
+
/** Seat type key: a sold seat type, the plan's implicit seat, or `api`. */
|
|
165
|
+
type: string;
|
|
166
|
+
/**
|
|
167
|
+
* `display.badge`, else `display.label`, resolved for the requested locale —
|
|
168
|
+
* null when the config gave that seat no display at all. The badge form wins
|
|
169
|
+
* because this is the pill on a usage screen, not a pricing card.
|
|
170
|
+
*/
|
|
171
|
+
label: string | null;
|
|
172
|
+
/**
|
|
173
|
+
* The FULL form on its own — `display.label`, null when the config gave none.
|
|
174
|
+
*
|
|
175
|
+
* `label` above is the PILL value and collapses the two, so a caller writing a sentence
|
|
176
|
+
* ("Passa a Posto Premium") could not get the long name back once a badge existed — one
|
|
177
|
+
* reached into `model.seatTypes.find(...)?.display?.label` itself to recover it, which is a
|
|
178
|
+
* consumer reading the catalogue shape to answer a question the resolver is for.
|
|
179
|
+
*/
|
|
180
|
+
name: string | null;
|
|
181
|
+
/**
|
|
182
|
+
* The SHORT form on its own — `display.badge`, null when the config gave none.
|
|
183
|
+
*
|
|
184
|
+
* `label` collapses the two, which is right for a pill and wrong for everything else: a
|
|
185
|
+
* consumer needing the short word where the long one already carries a noun ("Posto
|
|
186
|
+
* Premium" in a row that says "posto") was reduced to stripping the noun with a regex, in
|
|
187
|
+
* two files. Both forms are the config's, so both are reported and the caller picks.
|
|
188
|
+
*/
|
|
189
|
+
badge: string | null;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* How a plan presents one seat type: a sold seat type first, then the implicit
|
|
193
|
+
* seat of a plan that sells none. Exported because a members list wants the same
|
|
194
|
+
* pill as a usage screen, and reimplementing this lookup is how the two drift.
|
|
195
|
+
*/
|
|
196
|
+
export declare function resolveSeat(model: PlanModel | null, type: string, locale?: LocaleOptions): UsageSeat;
|
|
154
197
|
/**
|
|
155
198
|
* Credits per unit of currency — 100, i.e. one credit per cent.
|
|
156
199
|
*
|
package/dist/plan-model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-model.d.ts","sourceRoot":"","sources":["../src/plan-model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plan-model.d.ts","sourceRoot":"","sources":["../src/plan-model.ts"],"names":[],"mappings":"AAyCA,OAAO,EAIL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,eAAe,EACrB,MAAM,WAAW,CAAC;AAInB,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEnD,6EAA6E;AAC7E,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC;AAE3B,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,KAAK,CAAC;CACf;AAED,eAAO,MAAM,SAAS,EAAE,SAAS,eAAe,EAA0B,CAAC;AAa3E,MAAM,WAAW,eAAe;IAC9B,0DAA0D;IAC1D,KAAK,EAAE,SAAS,CAAC;IACjB,4CAA4C;IAC5C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;;;OAOG;IACH,IAAI,EAAE,SAAS,CAAC;IAChB,mDAAmD;IACnD,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,mFAAmF;IACnF,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,6EAA6E;IAC7E,GAAG,CAAC,EAAE;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,6EAA6E;IAC7E,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,SAAS,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,CAAA;KAAE,CAAC;IAChD,0EAA0E;IAC1E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAID,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC3B,sEAAsE;IACtE,KAAK,EAAE,aAAa,CAAC;IACrB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,kEAAkE;IAClE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,MAAM,KAAK;AACf,4EAA4E;AAC1E;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE;AACrB,yEAAyE;GACvE;IACE,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACxC,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACxC;AACH;;;;;;;GAOG;GACD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,aAAa,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;CAAE,CAAC;AAInF,MAAM,MAAM,KAAK;AACf;;;;GAIG;AACD;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;AAClB,2DAA2D;GACzD;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE;AAC7B,qCAAqC;GACnC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAE;AACxC,+EAA+E;GAC7E;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,KAAK,CAAA;CAAE,CAAC;AAItC,0DAA0D;AAC1D,MAAM,MAAM,SAAS;AACnB;;;;GAIG;AACD,OAAO;AACT,yEAAyE;GACvE,QAAQ,CAAC;AAEb;;;;;;;;;;;;;GAaG;AACH;;;;;;;;GAQG;AACH,MAAM,WAAW,SAAS;IACxB,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;;;;OAOG;IACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;;;;;;;OAOG;IACH,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,aAAa,GACrB,SAAS,CAUX;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,+EAA+E;AAC/E,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAE1C;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,OAAO,CAAC;AAExC,MAAM,MAAM,GAAG;AACb;;;;GAIG;AACD;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE;AACpB,oEAAoE;GAClE;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAAC,WAAW,CAAC,EAAE,SAAS,CAAA;CAAE;AACvF;;;GAGG;GACD;IACE,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,OAAO,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC;IAC7B;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;4EACwE;IACxE,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB,CAAC;AAQN,MAAM,WAAW,SAAS;IACxB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;QAAC,GAAG,CAAC,EAAE,KAAK,CAAC;QAAC,GAAG,CAAC,EAAE,KAAK,CAAA;KAAE,CAAC;IAClE;;;;OAIG;IACH,UAAU,CAAC,EAAE;QAAE,SAAS,EAAE,KAAK,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC/E;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB;;;;;;;WAOG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,+EAA+E;QAC/E,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAC5B,sDAAsD;QACtD,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED;wEACwE;AACxE,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAKpF;AAED,mFAAmF;AACnF,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd,CAQA;AAED;0DAC0D;AAC1D,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,oBAAoB,SAAU,CAAC;AAC5C,wFAAwF;AACxF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,2FAA2F;AAC3F,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,uBAAuB,EAAE,SAAS,MAAM,EAAkB,CAAC;AACxE,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAIvC,MAAM,MAAM,IAAI;AACd,+CAA+C;AAC7C,MAAM;AACR,2BAA2B;GACzB,YAAY;AACd,iFAAiF;GAC/E,OAAO;AACT,4DAA4D;GAC1D,QAAQ,CAAC;AAiBb,+EAA+E;AAC/E,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AAEhE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,KAAK,CAAC;IACb;;;;OAIG;IACH,OAAO,EAAE,KAAK,CAAC;IACf;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IACzB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAC5B;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC;IAC5B,6DAA6D;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;OAIG;IACH,IAAI,CAAC,EAAE,SAAS,SAAS,EAAE,CAAC;CAC7B;AAID,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,KAAK,CAAC;IACb;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;2EACuE;IACvE,GAAG,CAAC,EAAE,GAAG,CAAC;IACV,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB;;;;;;OAMG;IACH,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;;;;;;;;;OAWG;IACH,IAAI,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,eAAe,CAAA;KAAE,CAAC;CACpD;AAED;8DAC8D;AAC9D,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAE3E;AAID,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,aAAa,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,eAAe,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,SAAS,SAAS,EAAE,CAAA;KAAE,CAAC;IAC/D,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B;0EACsE;IACtE,SAAS,EAAE,SAAS,eAAe,EAAE,CAAC;IACtC,mDAAmD;IACnD,SAAS,EAAE,SAAS,cAAc,EAAE,CAAC;IACrC;;;OAGG;IACH,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9D,gCAAgC;IAChC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;CAC7B;AA2BD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,SAAS,CAqBpE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,SAAS,EAAE,CAEvE;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAI9F;AAED;iFACiF;AACjF,wBAAgB,UAAU,CACxB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,GACvC,MAAM,EAAE,CAIV;AAED,0DAA0D;AAC1D,eAAO,MAAM,cAAc,GAAI,OAAO,WAAW,KAAG,MAAM,EACuB,CAAC;AAIlF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yEAAyE;IACzE,QAAQ,EAAE,OAAO,CAAC;IAClB,yEAAyE;IACzE,UAAU,EAAE,OAAO,CAAC;IACpB,+EAA+E;IAC/E,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,KAAK,EAAE,OAAO,CAAC;IACf,gFAAgF;IAChF,SAAS,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,EAAE,gBAOnC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,gBAAgB,CAerE;AAID,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEhD;oFACoF;AACpF,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAW1D;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GACvC;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,QAAQ,EAAE,eAAe,CAAA;CAAE,CAAC;AAEhE;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,WAAW,EAClB,IAAI,EAAE;IACJ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;+BAC2B;IAC3B,GAAG,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CAC9B,GACA,aAAa,EAAE,CAsCjB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,aAAa,EACtB,QAAQ,CAAC,EAAE,eAAe,GACzB,MAAM,CAwBR;AAID;8DAC8D;AAC9D,wBAAgB,QAAQ,CACtB,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,GAAG,EAAE;IAAE,UAAU,CAAC,EAAE,UAAU,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GACrD,MAAM,CAkBR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtC,MAAM,GAAG,IAAI,CA8Bf;AAED;sDACsD;AACtD,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAE9D;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAI/F;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,GACpD,SAAS,CAUX;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,GACpD,OAAO,CAUT;AAID,MAAM,WAAW,WAAW;IAC1B,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,gFAAgF;IAChF,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;CACb;AAOD;;;;;;;;;;;GAWG;AACH;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,KAAK,EACZ,GAAG,GAAE,MAAmB,EACxB,KAAK,CAAC,EAAE,WAAW,GAClB,WAAW,CA4Bb;AAeD;+EAC+E;AAC/E,MAAM,MAAM,cAAc,GAAG;IAC3B;iEAC6D;IAC7D,WAAW,EAAE,OAAO,CAAC;IACrB;uDACmD;IACnD,cAAc,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,cAAc,CAkBjE;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,SAAS,SAAS,EAAE,EAC5B,MAAM,EAAE,cAAc,GACrB;IAAE,GAAG,EAAE,SAAS,EAAE,CAAC;IAAC,MAAM,EAAE,SAAS,EAAE,CAAA;CAAE,CAS3C;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE,GAAG,IAAI,GAC3D,SAAS,SAAS,EAAE,CAYtB;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,GAAG,IAAI,EACvB,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,EAC/E,GAAG,GAAE,MAAmB,GACvB,WAAW,CA6Bb"}
|
package/dist/plan-model.js
CHANGED
|
@@ -38,25 +38,26 @@
|
|
|
38
38
|
// An included allowance is therefore a `cap`: a window that usage is COUNTED
|
|
39
39
|
// against, with no money moving. Credit stays what it is actually for —
|
|
40
40
|
// PURCHASED credits (a top-up), which the customer really can spend.
|
|
41
|
-
import { formatMessage, resolveMessages, } from "./i18n.js";
|
|
41
|
+
import { formatMessage, resolveLocalized, resolveMessages, } from "./i18n.js";
|
|
42
42
|
export const INTERVALS = ["monthly", "yearly"];
|
|
43
43
|
// ── Axis 1: what Stripe SELLS ───────────────────────────────────────────────
|
|
44
44
|
/** The seat type a member is assumed to hold when nothing says otherwise. */
|
|
45
45
|
export const DEFAULT_SEAT_TYPE = "standard";
|
|
46
46
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
50
|
-
* a plan billed annually gets one window a year. That is right for a committed
|
|
51
|
-
* package — a year's worth, bought up front — and wrong for anything a customer
|
|
52
|
-
* is told they get "per month", because an annual subscriber would receive twelve
|
|
53
|
-
* months' allowance on day one and nothing after it ran out.
|
|
54
|
-
*
|
|
55
|
-
* `month` measures the same allowance over the calendar month whatever the
|
|
56
|
-
* billing interval, which is what "1 000 per seat per month, billed annually"
|
|
57
|
-
* actually means. It is the only way to say that: the pack size cannot express it,
|
|
58
|
-
* since the size is a number and the period is the window.
|
|
47
|
+
* How a plan presents one seat type: a sold seat type first, then the implicit
|
|
48
|
+
* seat of a plan that sells none. Exported because a members list wants the same
|
|
49
|
+
* pill as a usage screen, and reimplementing this lookup is how the two drift.
|
|
59
50
|
*/
|
|
51
|
+
export function resolveSeat(model, type, locale) {
|
|
52
|
+
const display = model?.seatTypes.find((s) => s.key === type)?.display ??
|
|
53
|
+
(model?.seat?.key === type ? model.seat.display : null);
|
|
54
|
+
return {
|
|
55
|
+
type,
|
|
56
|
+
label: display ? (resolveLocalized(display.badge ?? display.label, locale) ?? null) : null,
|
|
57
|
+
name: display?.label ? (resolveLocalized(display.label, locale) ?? null) : null,
|
|
58
|
+
badge: display?.badge ? (resolveLocalized(display.badge, locale) ?? null) : null,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
60
61
|
/**
|
|
61
62
|
* Credits per unit of currency — 100, i.e. one credit per cent.
|
|
62
63
|
*
|
package/dist/plan-model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-model.js","sourceRoot":"","sources":["../src/plan-model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plan-model.js","sourceRoot":"","sources":["../src/plan-model.ts"],"names":[],"mappings":"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"}
|
package/dist/plan-request.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type PlanRequest } from "./ladder.js";
|
|
2
|
+
import type { Notify } from "./notifications/index.js";
|
|
2
3
|
import { type PlanCatalog } from "./plan-model.js";
|
|
3
4
|
import type { BillingAdapter } from "./types.js";
|
|
4
5
|
export { defaultSeatOf, isSatisfied, isTopSeat, nextSeatUp, nextUsageAsk, seatLadder, seatRank, seatTypeExists, usageAction, type PlanRequest, type UsageAction, } from "./ladder.js";
|
|
@@ -26,6 +27,8 @@ export declare function pendingPlanRequest(adapter: BillingAdapter, orgId: strin
|
|
|
26
27
|
export declare function requestSeatChange(adapter: BillingAdapter, orgId: string, input: {
|
|
27
28
|
memberId: string;
|
|
28
29
|
plans: PlanCatalog;
|
|
30
|
+
/** Say that they asked. See `notifications/`. */
|
|
31
|
+
notify?: Notify;
|
|
29
32
|
currentPlan?: string | null;
|
|
30
33
|
currentSeatType?: string | null;
|
|
31
34
|
/** Defaults to the next seat up. */
|
|
@@ -50,6 +53,8 @@ export declare function requestSeatChange(adapter: BillingAdapter, orgId: string
|
|
|
50
53
|
export declare function requestPlanChange(adapter: BillingAdapter, orgId: string, input: {
|
|
51
54
|
memberId: string;
|
|
52
55
|
plans: PlanCatalog;
|
|
56
|
+
/** Say that they asked. See `notifications/`. */
|
|
57
|
+
notify?: Notify;
|
|
53
58
|
currentPlan?: string | null;
|
|
54
59
|
/** Defaults to the next plan up. */
|
|
55
60
|
plan?: string;
|