@adminiumjs/public-client 0.3.5 → 0.3.6
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/index.d.ts +297 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +213 -15
- package/dist/index.js.map +1 -1
- package/dist/qr.d.ts +19 -0
- package/dist/qr.d.ts.map +1 -0
- package/dist/qr.js +58 -0
- package/dist/qr.js.map +1 -0
- package/package.json +9 -2
package/dist/index.d.ts
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
* resource and a forbidden one answer identically — so do not build UI that
|
|
32
32
|
* tries to tell those apart.
|
|
33
33
|
*/
|
|
34
|
-
export declare const PUBLIC_ERROR_CODES: readonly ["PUBLIC_API_DISABLED", "PUBLIC_KEY_INVALID", "PUBLIC_REF_NOT_FOUND", "PUBLIC_ACTION_NOT_ALLOWED", "PUBLIC_QUERY_REFUSED", "PUBLIC_RATE_LIMITED", "PUBLIC_ORIGIN_REFUSED", "PUBLIC_CLAIM_NO_MATCH", "PUBLIC_CLAIM_UNAVAILABLE", "PUBLIC_WRITE_REFUSED", "PUBLIC_WRITE_REJECTED", "PUBLIC_SLOT_FULL", "PUBLIC_SLOT_BUSY", "PUBLIC_TOO_LATE", "PUBLIC_TOO_EARLY", "PUBLIC_CLAIM_LEVEL", "PUBLIC_LIMIT_REACHED", "PUBLIC_SWITCHED_OFF", "PUBLIC_STAFF_REQUIRED", "PUBLIC_KEY_OFF", "PUBLIC_CLAIM_NO_EMAIL", "PUBLIC_CLAIM_LOCKED", "PUBLIC_CODE_TOO_SOON", "PUBLIC_CODE_LIMIT", "PUBLIC_CODE_LOCKED", "PUBLIC_CODE_WRONG", "PUBLIC_CODE_EXPIRED", "PUBLIC_CODE_UNAVAILABLE", "PUBLIC_CODE_STEP_UP", "PUBLIC_EMAIL_CHANGE_LIMIT", "PUBLIC_PROOF_REQUIRED", "PUBLIC_UPSTREAM_UNAVAILABLE", "APP_DISABLED", "SURFACE_OFF", "LINK_EXPIRED", "PUBLIC_NETWORK_UNAVAILABLE"];
|
|
34
|
+
export declare const PUBLIC_ERROR_CODES: readonly ["PUBLIC_API_DISABLED", "PUBLIC_KEY_INVALID", "PUBLIC_REF_NOT_FOUND", "PUBLIC_ACTION_NOT_ALLOWED", "PUBLIC_QUERY_REFUSED", "PUBLIC_RATE_LIMITED", "PUBLIC_ORIGIN_REFUSED", "PUBLIC_CLAIM_NO_MATCH", "PUBLIC_CLAIM_UNAVAILABLE", "PUBLIC_WRITE_REFUSED", "PUBLIC_WRITE_REJECTED", "PUBLIC_SLOT_FULL", "PUBLIC_SLOT_BUSY", "PUBLIC_SOLD_OUT", "PUBLIC_NO_ROOM", "PUBLIC_TOO_LATE", "PUBLIC_PRICE_CHANGED", "PUBLIC_TOO_EARLY", "PUBLIC_CLAIM_LEVEL", "PUBLIC_LIMIT_REACHED", "PUBLIC_SWITCHED_OFF", "PUBLIC_STAFF_REQUIRED", "PUBLIC_KEY_OFF", "PUBLIC_CLAIM_NO_EMAIL", "PUBLIC_CLAIM_LOCKED", "PUBLIC_CODE_TOO_SOON", "PUBLIC_CODE_LIMIT", "PUBLIC_CODE_LOCKED", "PUBLIC_CODE_WRONG", "PUBLIC_CODE_EXPIRED", "PUBLIC_CODE_UNAVAILABLE", "PUBLIC_CODE_STEP_UP", "PUBLIC_EMAIL_CHANGE_LIMIT", "PUBLIC_PROOF_REQUIRED", "PUBLIC_UPSTREAM_UNAVAILABLE", "APP_DISABLED", "SURFACE_OFF", "LINK_EXPIRED", "PUBLIC_NETWORK_UNAVAILABLE"];
|
|
35
35
|
export type PublicErrorCode = (typeof PUBLIC_ERROR_CODES)[number];
|
|
36
36
|
/**
|
|
37
37
|
* What a `PUBLIC_TOO_EARLY` refusal carries, as instants (ISO strings): the
|
|
@@ -76,9 +76,114 @@ export declare class PublicApiError extends Error {
|
|
|
76
76
|
* by link — sign in again by link.
|
|
77
77
|
*/
|
|
78
78
|
get needsVerifiedSession(): boolean;
|
|
79
|
+
/** On a `PUBLIC_SOLD_OUT` refusal, which line it names; null on any other. */
|
|
80
|
+
get soldOut(): PublicSoldOut | null;
|
|
79
81
|
/** On a `PUBLIC_TOO_EARLY` refusal, the times it carries; null on any other. */
|
|
80
82
|
get tooEarly(): PublicTooEarly | null;
|
|
83
|
+
/**
|
|
84
|
+
* On a `PUBLIC_WRITE_REFUSED`, which row and why, as far as the server
|
|
85
|
+
* says: `child` and `index` name the row (the deepest list), `path` its
|
|
86
|
+
* whole place (`['order_items', 3, 'order_item_modifiers', 1]`), `column`
|
|
87
|
+
* and `reason` the value. Null on any other code.
|
|
88
|
+
*/
|
|
89
|
+
get refused(): TreeRefusal | null;
|
|
90
|
+
/** On a `PUBLIC_PRICE_CHANGED`, the total it would have saved and each line's figures; null on any other. */
|
|
91
|
+
get priceChanged(): PriceChanged | null;
|
|
92
|
+
}
|
|
93
|
+
/** Where in a create with child rows a refusal is about, and why. */
|
|
94
|
+
export interface TreeRefusal {
|
|
95
|
+
child: string | null;
|
|
96
|
+
index: number | null;
|
|
97
|
+
path: (string | number)[] | null;
|
|
98
|
+
column: string | null;
|
|
99
|
+
reason: string | null;
|
|
100
|
+
/** A group of choices out of bounds (a size left out): the group row's key. */
|
|
101
|
+
group: string | number | null;
|
|
102
|
+
}
|
|
103
|
+
/** What a `PUBLIC_PRICE_CHANGED` says: the total the order came to, and its lines' figures. */
|
|
104
|
+
export interface PriceChanged {
|
|
105
|
+
total: string | null;
|
|
106
|
+
lines: Record<string, TreeReplyRow[]>;
|
|
107
|
+
}
|
|
108
|
+
/** The rows a create carries below it, by the list name the entry declares; one more level below each. */
|
|
109
|
+
export type TreeRows = Record<string, {
|
|
110
|
+
values: Row;
|
|
111
|
+
children?: Record<string, {
|
|
112
|
+
values: Row;
|
|
113
|
+
}[]>;
|
|
114
|
+
}[]>;
|
|
115
|
+
/** One row of a create's reply below the created one: its shown columns, and its own rows. */
|
|
116
|
+
export interface TreeReplyRow<T = Row> {
|
|
117
|
+
data: T;
|
|
118
|
+
children?: Record<string, {
|
|
119
|
+
data: Row;
|
|
120
|
+
}[]>;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* A new row's own link, answered once by the create that made it: the key
|
|
124
|
+
* (by the purpose the app names it) that opens it, the code the page keeps in
|
|
125
|
+
* its URL fragment (`/o#<token>`), and a session already open on the row
|
|
126
|
+
* through that key — hand it to a client of that key with `adoptSession`, so
|
|
127
|
+
* the confirmation page needs no claim. Keep the session: sent back as
|
|
128
|
+
* `replaces` with the next hold, it lets this one go.
|
|
129
|
+
*/
|
|
130
|
+
export interface CreatedLink {
|
|
131
|
+
key: string;
|
|
132
|
+
token: string;
|
|
133
|
+
session: string | null;
|
|
134
|
+
expiresAt: number | null;
|
|
135
|
+
}
|
|
136
|
+
/** A created row with the rows written below it. */
|
|
137
|
+
export interface TreeCreated<T = Row> {
|
|
138
|
+
data: T;
|
|
139
|
+
children: Record<string, TreeReplyRow[]>;
|
|
140
|
+
/** Null when the endpoint does not rank. */
|
|
141
|
+
rank: number | null;
|
|
142
|
+
/** A retry of an order already made (the same retry key): nothing new was written. */
|
|
143
|
+
replayed: boolean;
|
|
144
|
+
/** The new row's own link; null on a replay (the email carries it) and where the entry answers none. */
|
|
145
|
+
link: CreatedLink | null;
|
|
146
|
+
}
|
|
147
|
+
/** What a dry run answers: every figure the save would write, and how the places it takes stand. Nothing is kept. */
|
|
148
|
+
export interface Quote<T = Row> {
|
|
149
|
+
data: T;
|
|
150
|
+
children: Record<string, TreeReplyRow[]>;
|
|
151
|
+
capacity: {
|
|
152
|
+
pool: string;
|
|
153
|
+
state: 'available' | 'full';
|
|
154
|
+
at?: string;
|
|
155
|
+
}[];
|
|
156
|
+
/** False when the app runs its own code on a table of the order: the save may come out otherwise. */
|
|
157
|
+
exact: boolean;
|
|
158
|
+
/** A row priced by the night (a stay): each night, its rate, and the names of what was added to it. Empty otherwise. */
|
|
159
|
+
nights: QuoteNight[];
|
|
81
160
|
}
|
|
161
|
+
/** One night of a row priced by the night, as a quote answers it. */
|
|
162
|
+
export interface QuoteNight {
|
|
163
|
+
date: string;
|
|
164
|
+
rate: string;
|
|
165
|
+
/** The night's rate before what was added to it (a weekend's raise): "was" beside a raised night. */
|
|
166
|
+
base: string;
|
|
167
|
+
tags: string[];
|
|
168
|
+
}
|
|
169
|
+
/** What a dry run of a change answers: the row as the change would leave it. Nothing is kept. */
|
|
170
|
+
export interface ChangeQuote<T = Row> {
|
|
171
|
+
data: T;
|
|
172
|
+
/** False when the app runs its own code on the change: the save may come out otherwise. */
|
|
173
|
+
exact: boolean;
|
|
174
|
+
/** A row priced by the night: the nights the change would leave it with. Empty otherwise. */
|
|
175
|
+
nights: QuoteNight[];
|
|
176
|
+
/** The rows below it the change moves (extras that follow a stay's nights), as it would leave them, by the ref each is read through. Empty otherwise. */
|
|
177
|
+
children: Record<string, {
|
|
178
|
+
data: Row;
|
|
179
|
+
}[]>;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* A retry key for one order — mint one per cart and keep it until the order
|
|
183
|
+
* is made: a save sent again with it (a reply lost to the network) answers
|
|
184
|
+
* the order already made. 32 random bytes, base64url; never a cart id.
|
|
185
|
+
*/
|
|
186
|
+
export declare function newClientKey(): string;
|
|
82
187
|
export type PublicSide = 'staff' | 'customer';
|
|
83
188
|
/**
|
|
84
189
|
* What a key may do to a ref. `replace`, `delete` and `batch` arrived with
|
|
@@ -107,12 +212,28 @@ export interface PublicRefConfig {
|
|
|
107
212
|
};
|
|
108
213
|
/** Present on an availability ref: ask `availability` or `bookingTimes`, never `list`. */
|
|
109
214
|
kind?: 'availability';
|
|
215
|
+
/**
|
|
216
|
+
* On an availability ref over a limit, which kind it answers: `slot` (ask
|
|
217
|
+
* `availability` or `slotDays`), `parent` (`parentAvailability`) or `night`
|
|
218
|
+
* (`nightAvailability`). Absent on a booking ref, and from an older server.
|
|
219
|
+
*/
|
|
220
|
+
capacity?: 'slot' | 'parent' | 'night';
|
|
221
|
+
/** Rows listed only with the code that unlocks them: pass `code` to `list`, `get` or `parentAvailability`. */
|
|
222
|
+
unlock?: true;
|
|
223
|
+
/** Image columns any visitor may see: `pictureUrl` builds each one's address. */
|
|
224
|
+
pictures?: string[];
|
|
110
225
|
}
|
|
111
226
|
export interface PublicConfig {
|
|
112
227
|
version: 1;
|
|
113
228
|
side: PublicSide;
|
|
114
229
|
/** IANA zone. Build every day and time from this, never from the browser. */
|
|
115
230
|
timezone: string;
|
|
231
|
+
/**
|
|
232
|
+
* The server's clock when the config was answered (ISO). The config is
|
|
233
|
+
* fetched once, so read the time now with `now()`, which keeps the
|
|
234
|
+
* difference. Absent from servers up to 0.3.4.
|
|
235
|
+
*/
|
|
236
|
+
now?: string;
|
|
116
237
|
/**
|
|
117
238
|
* ISO-4217, or null when this scope serves no money.
|
|
118
239
|
*
|
|
@@ -120,6 +241,8 @@ export interface PublicConfig {
|
|
|
120
241
|
* currency attached, so formatting one without this is a guess.
|
|
121
242
|
*/
|
|
122
243
|
currency: string | null;
|
|
244
|
+
/** Where this key's pictures are asked for (`pictureUrl` builds each one's address); absent when it shows none. */
|
|
245
|
+
pictures?: string;
|
|
123
246
|
claim: {
|
|
124
247
|
/**
|
|
125
248
|
* `email-link`: the person asks for a link by address (`requestLink`), and
|
|
@@ -181,6 +304,12 @@ export interface ListOptions {
|
|
|
181
304
|
offset?: number;
|
|
182
305
|
cursor?: string;
|
|
183
306
|
signal?: AbortSignal;
|
|
307
|
+
/**
|
|
308
|
+
* A code the guest typed, for a ref shown only with one (`unlock` in its
|
|
309
|
+
* config): sent in a header, never the URL. A code that unlocks nothing
|
|
310
|
+
* lists nothing, and counts as one of the visitor's few guesses a minute.
|
|
311
|
+
*/
|
|
312
|
+
code?: string;
|
|
184
313
|
}
|
|
185
314
|
export interface PublicClientOptions {
|
|
186
315
|
baseUrl: string;
|
|
@@ -214,6 +343,24 @@ export interface PublicClientOptions {
|
|
|
214
343
|
* sends by default: this client never sets `credentials`, and must not.
|
|
215
344
|
*/
|
|
216
345
|
csrfToken?: string | (() => string | null | undefined);
|
|
346
|
+
/**
|
|
347
|
+
* Called when the server says the session held was ended — signed out on
|
|
348
|
+
* another device (`elsewhere`), or the person's details deleted
|
|
349
|
+
* (`forgotten`). The client has already dropped it; the page says so.
|
|
350
|
+
*/
|
|
351
|
+
onSessionEnded?: (reason: SessionEnded) => void;
|
|
352
|
+
/**
|
|
353
|
+
* A session this page kept from before a reload (what `session()` handed
|
|
354
|
+
* it), held from the start as if it had just been opened. One already past
|
|
355
|
+
* its `expiresAt` is not held. `signOut()` ends it on the server too.
|
|
356
|
+
*/
|
|
357
|
+
session?: HeldSession;
|
|
358
|
+
/**
|
|
359
|
+
* Called whenever the session held changes — opened, adopted, raised,
|
|
360
|
+
* ended or dropped (then with null) — so a page can keep it across a
|
|
361
|
+
* reload (in `sessionStorage`, say) and hand it back as `session`.
|
|
362
|
+
*/
|
|
363
|
+
onSessionChange?: (session: HeldSession | null) => void;
|
|
217
364
|
}
|
|
218
365
|
/** How far a claim session reaches: `lookup` found the person, `verified` proved their mailbox. */
|
|
219
366
|
export type ClaimLevel = 'lookup' | 'verified';
|
|
@@ -223,6 +370,10 @@ export interface PublicSession {
|
|
|
223
370
|
/** Epoch ms. */
|
|
224
371
|
expiresAt: number;
|
|
225
372
|
}
|
|
373
|
+
/** The claim session a client holds, with the token that carries it: what a page keeps across a reload. */
|
|
374
|
+
export interface HeldSession extends PublicSession {
|
|
375
|
+
token: string;
|
|
376
|
+
}
|
|
226
377
|
/** A day of a strip of days, as a booking availability ref answers it. */
|
|
227
378
|
export interface DayAvailability {
|
|
228
379
|
/** `YYYY-MM-DD` on the tenant's calendar. */
|
|
@@ -287,7 +438,11 @@ export interface Created<T = Row> {
|
|
|
287
438
|
data: T;
|
|
288
439
|
/** Null when the endpoint does not rank. */
|
|
289
440
|
rank: number | null;
|
|
441
|
+
/** The new row's own link, when the entry answers one. */
|
|
442
|
+
link: CreatedLink | null;
|
|
290
443
|
}
|
|
444
|
+
/** Why a session was ended before it lapsed: signed out from another device, or the person's details deleted. */
|
|
445
|
+
export type SessionEnded = 'elsewhere' | 'forgotten';
|
|
291
446
|
/** One drawn document, as a claimed visitor may see it. */
|
|
292
447
|
export interface PublicDocument {
|
|
293
448
|
id: string;
|
|
@@ -381,7 +536,60 @@ export interface PublicDocuments {
|
|
|
381
536
|
export interface SlotAvailability {
|
|
382
537
|
/** `HH:mm` on the tenant's clock; {@link fromTenantLocal} turns it into the instant to book. */
|
|
383
538
|
time: string;
|
|
384
|
-
|
|
539
|
+
/** `paused`: the venue paused the slot (a busy kitchen). A released slot limit never says it. */
|
|
540
|
+
state: 'free' | 'full' | 'paused';
|
|
541
|
+
}
|
|
542
|
+
/** One row a parent limit is held on (a ticket type, a dish), as its availability ref answers it. */
|
|
543
|
+
export interface ParentAvailability {
|
|
544
|
+
id: string;
|
|
545
|
+
/** `soon` before its sales open, `ended` after they close, `soldout` when fewer are left than asked. */
|
|
546
|
+
state: 'on' | 'soon' | 'ended' | 'soldout';
|
|
547
|
+
/** How many are left — only when few are, and the ref says so. */
|
|
548
|
+
left?: number;
|
|
549
|
+
}
|
|
550
|
+
/** What a parent limit's availability asks. */
|
|
551
|
+
export interface ParentQuery {
|
|
552
|
+
/** The value of the ref's `under` column the rows share (an event's id). */
|
|
553
|
+
under?: string;
|
|
554
|
+
/** `YYYY-MM-DD`: the venue day asked (a dish's portions); today when absent. */
|
|
555
|
+
date?: string;
|
|
556
|
+
/** How many the page wants; answered sold out when fewer are left. */
|
|
557
|
+
qty?: number;
|
|
558
|
+
/** A row of this session's own (its held order), left out of the count. */
|
|
559
|
+
exclude?: string;
|
|
560
|
+
/** A code the guest typed: the rows it unlocks are counted too (sent in a header, never the URL). */
|
|
561
|
+
code?: string;
|
|
562
|
+
}
|
|
563
|
+
/** One pool of a night limit (a room type), over the nights asked. */
|
|
564
|
+
export interface NightPoolAvailability {
|
|
565
|
+
pool: string;
|
|
566
|
+
/** `closed`: the dates are not a stay the venue sells; `full`: a night has no room left. */
|
|
567
|
+
state: 'open' | 'full' | 'closed';
|
|
568
|
+
left?: number;
|
|
569
|
+
/** The first arrival after `from`, of the same length, when this pool is open (asked with `earliest`). */
|
|
570
|
+
earliest?: string | null;
|
|
571
|
+
}
|
|
572
|
+
/** What a night limit's availability asks. */
|
|
573
|
+
export interface NightQuery {
|
|
574
|
+
from: string;
|
|
575
|
+
to: string;
|
|
576
|
+
/** Leaves out the pools that sleep fewer. */
|
|
577
|
+
guests?: number;
|
|
578
|
+
/** Search this many days after `from` for the first arrival of the same length with room. */
|
|
579
|
+
earliest?: number;
|
|
580
|
+
exclude?: string;
|
|
581
|
+
}
|
|
582
|
+
export interface NightAvailability {
|
|
583
|
+
pools: NightPoolAvailability[];
|
|
584
|
+
/** With `earliest`: the first arrival of the same length where any fitting pool is open, or null. */
|
|
585
|
+
earliest: string | null;
|
|
586
|
+
}
|
|
587
|
+
/** Which line of a create was sold out: `column`, and — on a create with child rows — its child, index and path. */
|
|
588
|
+
export interface PublicSoldOut {
|
|
589
|
+
child?: string;
|
|
590
|
+
index?: number;
|
|
591
|
+
path?: (string | number)[];
|
|
592
|
+
column?: string;
|
|
385
593
|
}
|
|
386
594
|
/** A sign-in link's email is on its way — to the address typed, if it is anyone's. */
|
|
387
595
|
export interface LinkRequested {
|
|
@@ -407,14 +615,44 @@ export interface PublicClient {
|
|
|
407
615
|
/** The scope, fetched once and cached. */
|
|
408
616
|
config: () => Promise<PublicConfig>;
|
|
409
617
|
list: <T = Row>(ref: string, options?: ListOptions) => Promise<ListResult<T>>;
|
|
410
|
-
get: <T = Row>(ref: string, id: string, signal?: AbortSignal
|
|
618
|
+
get: <T = Row>(ref: string, id: string, signal?: AbortSignal, options?: {
|
|
619
|
+
code?: string;
|
|
620
|
+
}) => Promise<T>;
|
|
411
621
|
create: <T = Row>(ref: string, values: Row) => Promise<T>;
|
|
412
622
|
/**
|
|
413
623
|
* `create`, with where the new row stands. Its own verb so that `create`
|
|
414
624
|
* keeps answering the bare row every app already reads.
|
|
415
625
|
*/
|
|
416
626
|
createWithRank: <T = Row>(ref: string, values: Row) => Promise<Created<T>>;
|
|
417
|
-
|
|
627
|
+
/**
|
|
628
|
+
* Change a row. With `expect`, the change is saved only at that price: a
|
|
629
|
+
* different one is refused (`PUBLIC_PRICE_CHANGED`) and nothing changes.
|
|
630
|
+
*/
|
|
631
|
+
update: <T = Row>(ref: string, id: string, values: Row, options?: {
|
|
632
|
+
expect?: {
|
|
633
|
+
total: string;
|
|
634
|
+
};
|
|
635
|
+
}) => Promise<T>;
|
|
636
|
+
/**
|
|
637
|
+
* A create with the rows below it — an order, its lines, each line's
|
|
638
|
+
* options — as one write: every row or none. With `expect`, only at that
|
|
639
|
+
* total. Proves a person is there when the entry asks, as `create` does.
|
|
640
|
+
*/
|
|
641
|
+
createTree: <T = Row>(ref: string, write: {
|
|
642
|
+
values: Row;
|
|
643
|
+
children?: TreeRows;
|
|
644
|
+
expect?: {
|
|
645
|
+
total: string;
|
|
646
|
+
};
|
|
647
|
+
replaces?: string;
|
|
648
|
+
}) => Promise<TreeCreated<T>>;
|
|
649
|
+
/** The same create tried without writing: every figure it would come to. Costs a read; no human check. */
|
|
650
|
+
quote: <T = Row>(ref: string, write: {
|
|
651
|
+
values: Row;
|
|
652
|
+
children?: TreeRows;
|
|
653
|
+
}) => Promise<Quote<T>>;
|
|
654
|
+
/** A change to a row tried without writing: the row as the change would leave it. */
|
|
655
|
+
quoteChange: <T = Row>(ref: string, id: string, values: Row) => Promise<ChangeQuote<T>>;
|
|
418
656
|
/**
|
|
419
657
|
* Replace the row's writable columns — every one of them must be present (a
|
|
420
658
|
* nullable one may be `null`). PUT, where `update` is PATCH.
|
|
@@ -442,6 +680,16 @@ export interface PublicClient {
|
|
|
442
680
|
bookingTimes: (ref: string, query: BookingQuery & {
|
|
443
681
|
date: string;
|
|
444
682
|
}, signal?: AbortSignal) => Promise<SlotAvailability[]>;
|
|
683
|
+
/** A strip of up to 31 days from `from` under a slot limit: each open, full or closed, and how many times are free. */
|
|
684
|
+
slotDays: (ref: string, query: {
|
|
685
|
+
from: string;
|
|
686
|
+
days: number;
|
|
687
|
+
party?: number;
|
|
688
|
+
}, signal?: AbortSignal) => Promise<DayAvailability[]>;
|
|
689
|
+
/** The rows a parent limit is held on (ticket types of an event), each on sale, sold out, soon or ended. */
|
|
690
|
+
parentAvailability: (ref: string, query?: ParentQuery, signal?: AbortSignal) => Promise<ParentAvailability[]>;
|
|
691
|
+
/** The pools of a night limit (room types) over a stay's nights, and the earliest arrival with room. */
|
|
692
|
+
nightAvailability: (ref: string, query: NightQuery, signal?: AbortSignal) => Promise<NightAvailability>;
|
|
445
693
|
/** A strip of up to 31 days from `from`, each open, full or closed, from the same ref. */
|
|
446
694
|
bookingDays: (ref: string, query: BookingQuery & {
|
|
447
695
|
from: string;
|
|
@@ -509,10 +757,48 @@ export interface PublicClient {
|
|
|
509
757
|
*/
|
|
510
758
|
addOnSettings: (key: string, signal?: AbortSignal) => Promise<Record<string, unknown>>;
|
|
511
759
|
signOut: () => Promise<void>;
|
|
760
|
+
/**
|
|
761
|
+
* Sign the person out on every device, this one too, and take back any
|
|
762
|
+
* sign-in link still open to their address. Needs a verified session of
|
|
763
|
+
* the person (not a row's own link).
|
|
764
|
+
*/
|
|
765
|
+
signOutEverywhere: () => Promise<void>;
|
|
766
|
+
/**
|
|
767
|
+
* Delete the person's details: their own row is emptied (their bookings
|
|
768
|
+
* and tickets stay, and still open by their links), every session ends and
|
|
769
|
+
* the old address gets one last email. Needs a mailbox proved minutes ago:
|
|
770
|
+
* `PUBLIC_CODE_STEP_UP` asks for a fresh sign-in link first.
|
|
771
|
+
*/
|
|
772
|
+
forgetMe: () => Promise<void>;
|
|
773
|
+
/**
|
|
774
|
+
* "Make a new link" for one of the signed-in person's rows (a verified
|
|
775
|
+
* session, never a row's own link): the row's own link stops opening it —
|
|
776
|
+
* every session it opened too — and the new link is emailed to the person.
|
|
777
|
+
* The new link never comes back here. `PUBLIC_LIMIT_REACHED` after so many
|
|
778
|
+
* a day for one row.
|
|
779
|
+
*/
|
|
780
|
+
newLink: (ref: string, id: string | number) => Promise<void>;
|
|
781
|
+
/** Take a session a reply handed over — a new row's own link (`link.session`), for a client of that link's key. */
|
|
782
|
+
adoptSession: (session: {
|
|
783
|
+
token: string;
|
|
784
|
+
expiresAt: number;
|
|
785
|
+
level?: ClaimLevel;
|
|
786
|
+
}) => void;
|
|
787
|
+
/** Why the server last ended the session this client held, or null. */
|
|
788
|
+
sessionEnded: () => SessionEnded | null;
|
|
512
789
|
/** Is a claim session currently held? */
|
|
513
790
|
isClaimed: () => boolean;
|
|
514
|
-
/**
|
|
515
|
-
|
|
791
|
+
/**
|
|
792
|
+
* The claim session held, or null — with its token, so a page can keep it
|
|
793
|
+
* across a reload and hand it back as the `session` option.
|
|
794
|
+
*/
|
|
795
|
+
session: () => HeldSession | null;
|
|
796
|
+
/**
|
|
797
|
+
* The server's clock now: the device's clock set right by the difference
|
|
798
|
+
* `config()` saw (the config says the server's time). The device's own clock
|
|
799
|
+
* when the server did not say.
|
|
800
|
+
*/
|
|
801
|
+
now: () => Promise<Date>;
|
|
516
802
|
/**
|
|
517
803
|
* The documents this visitor may see and ask for.
|
|
518
804
|
*
|
|
@@ -533,12 +819,12 @@ export interface PublicClient {
|
|
|
533
819
|
assertRefs: (required: Record<string, string[]>) => Promise<void>;
|
|
534
820
|
}
|
|
535
821
|
/**
|
|
536
|
-
*
|
|
537
|
-
*
|
|
538
|
-
*
|
|
539
|
-
*
|
|
540
|
-
* Null when the fragment holds no token.
|
|
822
|
+
* The address of a picture anyone may see — for an `<img src>`, with no key
|
|
823
|
+
* and no session — or null when the ref shows no picture in that column, or
|
|
824
|
+
* the value names no file Adminium keeps (a link elsewhere, nothing): show
|
|
825
|
+
* the page's own tile then.
|
|
541
826
|
*/
|
|
827
|
+
export declare function pictureUrl(baseUrl: string, config: Pick<PublicConfig, 'pictures' | 'refs'>, ref: string, rowId: string | number, column: string, value: unknown): string | null;
|
|
542
828
|
export declare function linkFromFragment(hash: string): LinkFragment | null;
|
|
543
829
|
/**
|
|
544
830
|
* Build a client, or `null` when this build has no server to talk to.
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -55,12 +55,30 @@ export const PUBLIC_ERROR_CODES = [
|
|
|
55
55
|
*/
|
|
56
56
|
'PUBLIC_SLOT_FULL',
|
|
57
57
|
'PUBLIC_SLOT_BUSY',
|
|
58
|
-
/**
|
|
58
|
+
/**
|
|
59
|
+
* What a line asks for is sold out: tickets of a type, today's portions of
|
|
60
|
+
* a dish (409). `error.params.column` names the line's column; on a create
|
|
61
|
+
* with child rows, `error.soldOut` says which line.
|
|
62
|
+
*/
|
|
63
|
+
'PUBLIC_SOLD_OUT',
|
|
64
|
+
/** No room of the type asked for is free on one of the nights (409). */
|
|
65
|
+
'PUBLIC_NO_ROOM',
|
|
66
|
+
/**
|
|
67
|
+
* Too late for this change online — a cancellation, a refund, a check-in
|
|
68
|
+
* past its window (409); the venue still can. `error.params.at`, when
|
|
69
|
+
* present, is when the window closed.
|
|
70
|
+
*/
|
|
59
71
|
'PUBLIC_TOO_LATE',
|
|
72
|
+
/**
|
|
73
|
+
* The order came to another price than the one shown (409): nothing was
|
|
74
|
+
* saved; `error.priceChanged` holds the new total and each line's figures.
|
|
75
|
+
*/
|
|
76
|
+
'PUBLIC_PRICE_CHANGED',
|
|
60
77
|
/**
|
|
61
78
|
* Too early for this change — a kiosk check-in more than an hour before the
|
|
62
|
-
* visit (409). `error.tooEarly` holds the
|
|
63
|
-
*
|
|
79
|
+
* visit, a door scan before the doors open (409). `error.tooEarly` holds the
|
|
80
|
+
* time the window is counted from (the visit, the doors) and when it opens;
|
|
81
|
+
* say them in the venue's zone (`toTenantMinutes`).
|
|
64
82
|
*/
|
|
65
83
|
'PUBLIC_TOO_EARLY',
|
|
66
84
|
/**
|
|
@@ -173,6 +191,18 @@ export class PublicApiError extends Error {
|
|
|
173
191
|
get needsVerifiedSession() {
|
|
174
192
|
return this.code === 'PUBLIC_CLAIM_LEVEL';
|
|
175
193
|
}
|
|
194
|
+
/** On a `PUBLIC_SOLD_OUT` refusal, which line it names; null on any other. */
|
|
195
|
+
get soldOut() {
|
|
196
|
+
if (this.code !== 'PUBLIC_SOLD_OUT')
|
|
197
|
+
return null;
|
|
198
|
+
const { child, index, path, column } = this.params;
|
|
199
|
+
return {
|
|
200
|
+
...(typeof child === 'string' ? { child } : {}),
|
|
201
|
+
...(typeof index === 'number' ? { index } : {}),
|
|
202
|
+
...(Array.isArray(path) ? { path: path } : {}),
|
|
203
|
+
...(typeof column === 'string' ? { column } : {}),
|
|
204
|
+
};
|
|
205
|
+
}
|
|
176
206
|
/** On a `PUBLIC_TOO_EARLY` refusal, the times it carries; null on any other. */
|
|
177
207
|
get tooEarly() {
|
|
178
208
|
if (this.code !== 'PUBLIC_TOO_EARLY')
|
|
@@ -180,9 +210,61 @@ export class PublicApiError extends Error {
|
|
|
180
210
|
const { at, from } = this.params;
|
|
181
211
|
return typeof at === 'string' && typeof from === 'string' ? { at, from } : null;
|
|
182
212
|
}
|
|
213
|
+
/*
|
|
214
|
+
* ── A create with its child rows ────────────────────────────────────────
|
|
215
|
+
*/
|
|
216
|
+
/**
|
|
217
|
+
* On a `PUBLIC_WRITE_REFUSED`, which row and why, as far as the server
|
|
218
|
+
* says: `child` and `index` name the row (the deepest list), `path` its
|
|
219
|
+
* whole place (`['order_items', 3, 'order_item_modifiers', 1]`), `column`
|
|
220
|
+
* and `reason` the value. Null on any other code.
|
|
221
|
+
*/
|
|
222
|
+
get refused() {
|
|
223
|
+
if (this.code !== 'PUBLIC_WRITE_REFUSED')
|
|
224
|
+
return null;
|
|
225
|
+
return treeRefusalOf(this.params);
|
|
226
|
+
}
|
|
227
|
+
/** On a `PUBLIC_PRICE_CHANGED`, the total it would have saved and each line's figures; null on any other. */
|
|
228
|
+
get priceChanged() {
|
|
229
|
+
if (this.code !== 'PUBLIC_PRICE_CHANGED')
|
|
230
|
+
return null;
|
|
231
|
+
const { total, lines } = this.params;
|
|
232
|
+
return {
|
|
233
|
+
total: typeof total === 'string' ? total : null,
|
|
234
|
+
lines: typeof lines === 'object' && lines !== null ? lines : {},
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
function treeRefusalOf(params) {
|
|
239
|
+
const { child, index, path, column, reason, group } = params;
|
|
240
|
+
return {
|
|
241
|
+
child: typeof child === 'string' ? child : null,
|
|
242
|
+
index: typeof index === 'number' ? index : null,
|
|
243
|
+
path: Array.isArray(path) ? path : null,
|
|
244
|
+
column: typeof column === 'string' ? column : null,
|
|
245
|
+
reason: typeof reason === 'string' ? reason : null,
|
|
246
|
+
group: typeof group === 'string' || typeof group === 'number' ? group : null,
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* A retry key for one order — mint one per cart and keep it until the order
|
|
251
|
+
* is made: a save sent again with it (a reply lost to the network) answers
|
|
252
|
+
* the order already made. 32 random bytes, base64url; never a cart id.
|
|
253
|
+
*/
|
|
254
|
+
export function newClientKey() {
|
|
255
|
+
const bytes = new Uint8Array(32);
|
|
256
|
+
globalThis.crypto.getRandomValues(bytes);
|
|
257
|
+
let text = '';
|
|
258
|
+
for (const byte of bytes)
|
|
259
|
+
text += String.fromCharCode(byte);
|
|
260
|
+
return btoa(text).replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
|
|
183
261
|
}
|
|
184
262
|
/* --------------------------------------------------------------- client */
|
|
185
263
|
const SESSION_HEADER = 'x-adminium-public-session';
|
|
264
|
+
/** The reply header that says the session sent was ended, and why. */
|
|
265
|
+
const SESSION_ENDED_HEADER = 'x-adminium-session-ended';
|
|
266
|
+
/** The header a typed code travels in: a URL is kept by every log and proxy on its way. */
|
|
267
|
+
const CODE_HEADER = 'x-adminium-code';
|
|
186
268
|
const PROOF_HEADER = 'x-adminium-proof';
|
|
187
269
|
/** The staff member's token on a kiosk's writes — the dashboard's own CSRF header. */
|
|
188
270
|
const CSRF_HEADER = 'x-adminium-csrf';
|
|
@@ -190,6 +272,11 @@ const SAFE_METHODS = new Set(['GET', 'HEAD', 'OPTIONS']);
|
|
|
190
272
|
/** Where a claim that asked for a proof is remembered — a symbol, so no ref name can be it. */
|
|
191
273
|
const CLAIM = Symbol('claim');
|
|
192
274
|
const WRAPPED_KEYS = new Set(['data', 'page', 'cursor']);
|
|
275
|
+
function linkOf(link) {
|
|
276
|
+
if (link === undefined || typeof link.token !== 'string')
|
|
277
|
+
return null;
|
|
278
|
+
return { key: link.key, token: link.token, session: link.session ?? null, expiresAt: link.expiresAt ?? null };
|
|
279
|
+
}
|
|
193
280
|
/** An AbortSignal rather than options — the older form of `documents.list`. */
|
|
194
281
|
function isSignal(value) {
|
|
195
282
|
return typeof value.aborted === 'boolean' && typeof value.addEventListener === 'function';
|
|
@@ -201,6 +288,23 @@ function isSignal(value) {
|
|
|
201
288
|
* URL: a page must not send a person off-site from a link it did not make.
|
|
202
289
|
* Null when the fragment holds no token.
|
|
203
290
|
*/
|
|
291
|
+
/** The Adminium file a column's value names: a bare id, or a content address from any origin. */
|
|
292
|
+
const PICTURE_FILE = /^(?:file_[0-9ABCDEFGHJKMNPQRSTVWXYZ]{26}$|.*\/api\/v1\/files\/(file_[0-9ABCDEFGHJKMNPQRSTVWXYZ]{26})\/content\/?(?:\?.*)?$)/;
|
|
293
|
+
/**
|
|
294
|
+
* The address of a picture anyone may see — for an `<img src>`, with no key
|
|
295
|
+
* and no session — or null when the ref shows no picture in that column, or
|
|
296
|
+
* the value names no file Adminium keeps (a link elsewhere, nothing): show
|
|
297
|
+
* the page's own tile then.
|
|
298
|
+
*/
|
|
299
|
+
export function pictureUrl(baseUrl, config, ref, rowId, column, value) {
|
|
300
|
+
if (config.pictures === undefined || !(config.refs[ref]?.pictures ?? []).includes(column) || typeof value !== 'string')
|
|
301
|
+
return null;
|
|
302
|
+
const match = PICTURE_FILE.exec(value.trim());
|
|
303
|
+
if (match === null)
|
|
304
|
+
return null;
|
|
305
|
+
const fileId = match[1] ?? value.trim();
|
|
306
|
+
return `${baseUrl.replace(/\/+$/, '')}${config.pictures}/${encodeURIComponent(ref)}/${encodeURIComponent(String(rowId))}/${encodeURIComponent(column)}/${fileId}`;
|
|
307
|
+
}
|
|
204
308
|
export function linkFromFragment(hash) {
|
|
205
309
|
const [token = '', ...rest] = hash.replace(/^#/, '').split('&');
|
|
206
310
|
if (!/^[A-Za-z0-9_-]{8,64}$/.test(token))
|
|
@@ -243,7 +347,15 @@ export function createPublicClient(options) {
|
|
|
243
347
|
const doFetch = options?.fetch ?? globalThis.fetch.bind(globalThis);
|
|
244
348
|
const humanCheck = options?.humanCheck;
|
|
245
349
|
const csrfToken = options?.csrfToken;
|
|
246
|
-
|
|
350
|
+
const onSessionEnded = options?.onSessionEnded;
|
|
351
|
+
const onSessionChange = options?.onSessionChange;
|
|
352
|
+
const seeded = options?.session;
|
|
353
|
+
let session = seeded !== undefined && typeof seeded.token === 'string' && seeded.token !== '' && Number(seeded.expiresAt) > Date.now()
|
|
354
|
+
? { token: seeded.token, level: seeded.level === 'lookup' ? 'lookup' : 'verified', expiresAt: Number(seeded.expiresAt) }
|
|
355
|
+
: null;
|
|
356
|
+
/** How far the server's clock is ahead of this device's, in ms, as the config said; 0 until then. */
|
|
357
|
+
let clockSkew = 0;
|
|
358
|
+
let ended = null;
|
|
247
359
|
let cachedConfig = null;
|
|
248
360
|
/** Refs that asked for a proof under the session held now, and {@link CLAIM} when a claim did. */
|
|
249
361
|
const asked = new Set();
|
|
@@ -253,8 +365,11 @@ export function createPublicClient(options) {
|
|
|
253
365
|
* they hold, so what asked of a stranger need not ask of them.
|
|
254
366
|
*/
|
|
255
367
|
const holdSession = (next) => {
|
|
368
|
+
const changed = session !== next;
|
|
256
369
|
session = next;
|
|
257
370
|
asked.clear();
|
|
371
|
+
if (changed)
|
|
372
|
+
onSessionChange?.(next === null ? null : { ...next });
|
|
258
373
|
};
|
|
259
374
|
/** The error a refused reply carries, as the client throws it. */
|
|
260
375
|
const errorOf = async (res) => {
|
|
@@ -300,6 +415,13 @@ export function createPublicClient(options) {
|
|
|
300
415
|
// said nothing, so there is no code to read — supply one.
|
|
301
416
|
throw new PublicApiError('PUBLIC_NETWORK_UNAVAILABLE', 0, `could not reach ${baseUrl}: ${cause instanceof Error ? cause.message : String(cause)}`);
|
|
302
417
|
}
|
|
418
|
+
// The session this client held was ended elsewhere: dropped, and the page told why — on any reply.
|
|
419
|
+
const why = res.headers.get(SESSION_ENDED_HEADER);
|
|
420
|
+
if ((why === 'elsewhere' || why === 'forgotten') && session !== null) {
|
|
421
|
+
holdSession(null);
|
|
422
|
+
ended = why;
|
|
423
|
+
onSessionEnded?.(why);
|
|
424
|
+
}
|
|
303
425
|
if (!res.ok)
|
|
304
426
|
throw await errorOf(res);
|
|
305
427
|
return { body: (await res.json()), headers: res.headers, status: res.status };
|
|
@@ -353,7 +475,7 @@ export function createPublicClient(options) {
|
|
|
353
475
|
};
|
|
354
476
|
const insert = (ref, values) => withProof('write', ref, (proof) => request(`/api/v1/public/records/${ref}`, { method: 'POST', body: JSON.stringify({ values }) }, proof));
|
|
355
477
|
/** A booking availability read, in either form. */
|
|
356
|
-
const booking = async (ref, query, signal) => {
|
|
478
|
+
const booking = async (ref, query, signal, code) => {
|
|
357
479
|
const init = {};
|
|
358
480
|
if (signal !== undefined)
|
|
359
481
|
init.signal = signal;
|
|
@@ -361,9 +483,11 @@ export function createPublicClient(options) {
|
|
|
361
483
|
for (const [name, value] of Object.entries(query))
|
|
362
484
|
if (value !== undefined)
|
|
363
485
|
p.set(name, String(value));
|
|
364
|
-
const out = await request(`/api/v1/public/availability/${ref}?${p.toString()}`, init);
|
|
486
|
+
const out = await request(`/api/v1/public/availability/${ref}?${p.toString()}`, init, codeHeader(code));
|
|
365
487
|
return out.data;
|
|
366
488
|
};
|
|
489
|
+
/** A code a guest typed, as the header that carries it; nothing when there is none. */
|
|
490
|
+
const codeHeader = (code) => (code === undefined || code.trim() === '' ? {} : { [CODE_HEADER]: code.trim() });
|
|
367
491
|
/**
|
|
368
492
|
* Query-string encoder.
|
|
369
493
|
*
|
|
@@ -394,14 +518,30 @@ export function createPublicClient(options) {
|
|
|
394
518
|
config() {
|
|
395
519
|
// One fetch per client, shared by every concurrent caller — a boot that
|
|
396
520
|
// renders six components must not make six identical requests.
|
|
397
|
-
cachedConfig ??=
|
|
521
|
+
cachedConfig ??= (async () => {
|
|
522
|
+
const sentAt = Date.now();
|
|
523
|
+
const out = await request('/api/v1/public/config');
|
|
524
|
+
const told = typeof out.data.now === 'string' ? Date.parse(out.data.now) : Number.NaN;
|
|
525
|
+
// Measured against the middle of the round trip: the server answered somewhere inside it.
|
|
526
|
+
if (Number.isFinite(told))
|
|
527
|
+
clockSkew = told - (sentAt + Date.now()) / 2;
|
|
528
|
+
return out.data;
|
|
529
|
+
})();
|
|
530
|
+
// A failed fetch is not kept: the next caller asks again.
|
|
531
|
+
cachedConfig.catch(() => {
|
|
532
|
+
cachedConfig = null;
|
|
533
|
+
});
|
|
398
534
|
return cachedConfig;
|
|
399
535
|
},
|
|
536
|
+
async now() {
|
|
537
|
+
await client.config().catch(() => undefined);
|
|
538
|
+
return new Date(Date.now() + clockSkew);
|
|
539
|
+
},
|
|
400
540
|
async list(ref, options) {
|
|
401
541
|
const init = {};
|
|
402
542
|
if (options?.signal !== undefined)
|
|
403
543
|
init.signal = options.signal;
|
|
404
|
-
const reply = await send(`/api/v1/public/records/${ref}${encode(options)}`, init);
|
|
544
|
+
const reply = await send(`/api/v1/public/records/${ref}${encode(options)}`, init, codeHeader(options?.code));
|
|
405
545
|
return asListResult(reply.body, reply.headers);
|
|
406
546
|
},
|
|
407
547
|
async availability(ref, day, party, signal) {
|
|
@@ -422,11 +562,32 @@ export function createPublicClient(options) {
|
|
|
422
562
|
const { kind, resource, exclude, from, days } = query;
|
|
423
563
|
return booking(ref, { kind, resource, from, days, exclude }, signal);
|
|
424
564
|
},
|
|
425
|
-
|
|
565
|
+
slotDays(ref, query, signal) {
|
|
566
|
+
const { from, days, party } = query;
|
|
567
|
+
return booking(ref, { from, days, party }, signal);
|
|
568
|
+
},
|
|
569
|
+
parentAvailability(ref, query = {}, signal) {
|
|
570
|
+
const { under, date, qty, exclude, code } = query;
|
|
571
|
+
return booking(ref, { under, date, qty, exclude }, signal, code);
|
|
572
|
+
},
|
|
573
|
+
async nightAvailability(ref, query, signal) {
|
|
426
574
|
const init = {};
|
|
427
575
|
if (signal !== undefined)
|
|
428
576
|
init.signal = signal;
|
|
429
|
-
const
|
|
577
|
+
const p = new URLSearchParams();
|
|
578
|
+
const { from, to, guests, earliest, exclude } = query;
|
|
579
|
+
for (const [name, value] of Object.entries({ from, to, guests, earliest, exclude }))
|
|
580
|
+
if (value !== undefined)
|
|
581
|
+
p.set(name, String(value));
|
|
582
|
+
// The whole answer: the pools, and the earliest arrival beside them.
|
|
583
|
+
const out = await request(`/api/v1/public/availability/${ref}?${p.toString()}`, init);
|
|
584
|
+
return { pools: out.data, earliest: out.earliest ?? null };
|
|
585
|
+
},
|
|
586
|
+
async get(ref, id, signal, options) {
|
|
587
|
+
const init = {};
|
|
588
|
+
if (signal !== undefined)
|
|
589
|
+
init.signal = signal;
|
|
590
|
+
const out = await request(`/api/v1/public/records/${ref}/${encodeURIComponent(id)}`, init, codeHeader(options?.code));
|
|
430
591
|
return out.data;
|
|
431
592
|
},
|
|
432
593
|
async create(ref, values) {
|
|
@@ -434,12 +595,30 @@ export function createPublicClient(options) {
|
|
|
434
595
|
},
|
|
435
596
|
async createWithRank(ref, values) {
|
|
436
597
|
const out = await insert(ref, values);
|
|
437
|
-
return { data: out.data, rank: typeof out.rank === 'number' ? out.rank : null };
|
|
598
|
+
return { data: out.data, rank: typeof out.rank === 'number' ? out.rank : null, link: linkOf(out.link) };
|
|
438
599
|
},
|
|
439
|
-
async update(ref, id, values) {
|
|
440
|
-
const out = await request(`/api/v1/public/records/${ref}/${encodeURIComponent(id)}`, { method: 'PATCH', body: JSON.stringify({ values }) });
|
|
600
|
+
async update(ref, id, values, options) {
|
|
601
|
+
const out = await request(`/api/v1/public/records/${ref}/${encodeURIComponent(id)}`, { method: 'PATCH', body: JSON.stringify(options?.expect === undefined ? { values } : { values, expect: options.expect }) });
|
|
441
602
|
return out.data;
|
|
442
603
|
},
|
|
604
|
+
async createTree(ref, write) {
|
|
605
|
+
const out = await withProof('write', ref, (proof) => request(`/api/v1/public/records/${ref}`, { method: 'POST', body: JSON.stringify(write) }, proof));
|
|
606
|
+
return {
|
|
607
|
+
data: out.data,
|
|
608
|
+
children: out.children ?? {},
|
|
609
|
+
rank: typeof out.rank === 'number' ? out.rank : null,
|
|
610
|
+
replayed: out.replayed === true,
|
|
611
|
+
link: linkOf(out.link),
|
|
612
|
+
};
|
|
613
|
+
},
|
|
614
|
+
async quote(ref, write) {
|
|
615
|
+
const out = await request(`/api/v1/public/records/${ref}/dry-run`, { method: 'POST', body: JSON.stringify(write) });
|
|
616
|
+
return { data: out.data, children: out.children ?? {}, capacity: out.capacity ?? [], exact: out.exact !== false, nights: out.nights ?? [] };
|
|
617
|
+
},
|
|
618
|
+
async quoteChange(ref, id, values) {
|
|
619
|
+
const out = await request(`/api/v1/public/records/${ref}/${encodeURIComponent(id)}/dry-run`, { method: 'POST', body: JSON.stringify({ values }) });
|
|
620
|
+
return { data: out.data, exact: out.exact !== false, nights: out.nights ?? [], children: out.children ?? {} };
|
|
621
|
+
},
|
|
443
622
|
async replace(ref, id, values) {
|
|
444
623
|
const out = await request(`/api/v1/public/records/${ref}/${encodeURIComponent(id)}`, { method: 'PUT', body: JSON.stringify({ values }) });
|
|
445
624
|
return out.data;
|
|
@@ -578,7 +757,8 @@ export function createPublicClient(options) {
|
|
|
578
757
|
method: 'POST',
|
|
579
758
|
body: JSON.stringify({ token }),
|
|
580
759
|
});
|
|
581
|
-
|
|
760
|
+
// A row's own link opens a verified session; a shared one a lookup.
|
|
761
|
+
holdSession({ token: out.data.session, level: out.data.level === 'verified' ? 'verified' : 'lookup', expiresAt: out.data.expiresAt });
|
|
582
762
|
return 'opened';
|
|
583
763
|
}
|
|
584
764
|
catch (error) {
|
|
@@ -631,11 +811,29 @@ export function createPublicClient(options) {
|
|
|
631
811
|
holdSession(null);
|
|
632
812
|
}
|
|
633
813
|
},
|
|
814
|
+
async signOutEverywhere() {
|
|
815
|
+
await request('/api/v1/public/session/revoke-all', { method: 'POST', body: JSON.stringify({}) });
|
|
816
|
+
holdSession(null);
|
|
817
|
+
},
|
|
818
|
+
async forgetMe() {
|
|
819
|
+
await request('/api/v1/public/account', { method: 'DELETE' });
|
|
820
|
+
holdSession(null);
|
|
821
|
+
},
|
|
822
|
+
async newLink(ref, id) {
|
|
823
|
+
await request(`/api/v1/public/records/${ref}/${encodeURIComponent(String(id))}/new-link`, { method: 'POST', body: JSON.stringify({}) });
|
|
824
|
+
},
|
|
825
|
+
adoptSession(next) {
|
|
826
|
+
ended = null;
|
|
827
|
+
holdSession({ token: next.token, level: next.level ?? 'verified', expiresAt: next.expiresAt });
|
|
828
|
+
},
|
|
829
|
+
sessionEnded() {
|
|
830
|
+
return ended;
|
|
831
|
+
},
|
|
634
832
|
isClaimed() {
|
|
635
833
|
return session !== null;
|
|
636
834
|
},
|
|
637
835
|
session() {
|
|
638
|
-
return session === null ? null : { level: session.level, expiresAt: session.expiresAt };
|
|
836
|
+
return session === null ? null : { token: session.token, level: session.level, expiresAt: session.expiresAt };
|
|
639
837
|
},
|
|
640
838
|
async assertRefs(required) {
|
|
641
839
|
const config = await client.config();
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/qr.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** The longest text a code carries: a ticket code or a share token, never a page's address. */
|
|
2
|
+
export declare const QR_MAX_BYTES = 64;
|
|
3
|
+
/** Modules of white around the code. */
|
|
4
|
+
export declare const QR_QUIET = 4;
|
|
5
|
+
/**
|
|
6
|
+
* The modules of the QR code of `text`, row by row, `true` for a dark one,
|
|
7
|
+
* with no quiet zone. Throws for an empty text or one longer than
|
|
8
|
+
* {@link QR_MAX_BYTES} bytes.
|
|
9
|
+
*/
|
|
10
|
+
export declare function qrMatrix(text: string): boolean[][];
|
|
11
|
+
/**
|
|
12
|
+
* The QR code of `text` as an SVG document on a white square (never
|
|
13
|
+
* transparent: a dark page would swallow the quiet zone), `size` pixels
|
|
14
|
+
* across when given. Safe to put in the page: it holds no text of the code.
|
|
15
|
+
*/
|
|
16
|
+
export declare function qrSvg(text: string, opts?: {
|
|
17
|
+
size?: number;
|
|
18
|
+
}): string;
|
|
19
|
+
//# sourceMappingURL=qr.d.ts.map
|
package/dist/qr.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qr.d.ts","sourceRoot":"","sources":["../src/qr.ts"],"names":[],"mappings":"AAiBA,+FAA+F;AAC/F,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B,wCAAwC;AACxC,eAAO,MAAM,QAAQ,IAAI,CAAC;AAE1B;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,EAAE,EAAE,CAMlD;AAED;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAkBxE"}
|
package/dist/qr.js
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
2
|
+
/**
|
|
3
|
+
* `@adminium/public-client/qr` — a ticket's QR code drawn in the browser, the
|
|
4
|
+
* same one Adminium puts in the ticket's email: the same encoder, pinned to
|
|
5
|
+
* the same version, with the same options (medium error correction, a quiet
|
|
6
|
+
* zone of four modules), so the door reads the same code either way. It
|
|
7
|
+
* needs no network: a door or a phone offline still draws the code it
|
|
8
|
+
* already holds. A subpath of its own, so a page that shows no code carries
|
|
9
|
+
* no encoder.
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* import { qrSvg } from '@adminium/public-client/qr';
|
|
13
|
+
* ticketEl.innerHTML = qrSvg(ticket.code, { size: 180 });
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
import { encodeQR } from 'qr';
|
|
17
|
+
/** The longest text a code carries: a ticket code or a share token, never a page's address. */
|
|
18
|
+
export const QR_MAX_BYTES = 64;
|
|
19
|
+
/** Modules of white around the code. */
|
|
20
|
+
export const QR_QUIET = 4;
|
|
21
|
+
/**
|
|
22
|
+
* The modules of the QR code of `text`, row by row, `true` for a dark one,
|
|
23
|
+
* with no quiet zone. Throws for an empty text or one longer than
|
|
24
|
+
* {@link QR_MAX_BYTES} bytes.
|
|
25
|
+
*/
|
|
26
|
+
export function qrMatrix(text) {
|
|
27
|
+
if (typeof text !== 'string' || text === '' || new TextEncoder().encode(text).length > QR_MAX_BYTES) {
|
|
28
|
+
throw new RangeError(`A QR code carries 1 to ${String(QR_MAX_BYTES)} bytes of text.`);
|
|
29
|
+
}
|
|
30
|
+
const framed = encodeQR(text, 'raw', { ecc: 'medium', border: 1 });
|
|
31
|
+
return framed.slice(1, -1).map((row) => row.slice(1, -1));
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* The QR code of `text` as an SVG document on a white square (never
|
|
35
|
+
* transparent: a dark page would swallow the quiet zone), `size` pixels
|
|
36
|
+
* across when given. Safe to put in the page: it holds no text of the code.
|
|
37
|
+
*/
|
|
38
|
+
export function qrSvg(text, opts = {}) {
|
|
39
|
+
const modules = qrMatrix(text);
|
|
40
|
+
const width = modules.length + 2 * QR_QUIET;
|
|
41
|
+
const path = [];
|
|
42
|
+
modules.forEach((row, y) => {
|
|
43
|
+
for (let x = 0; x < row.length;) {
|
|
44
|
+
if (!row[x]) {
|
|
45
|
+
x += 1;
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
let run = 1;
|
|
49
|
+
while (row[x + run] === true)
|
|
50
|
+
run += 1;
|
|
51
|
+
path.push(`M${String(x + QR_QUIET)} ${String(y + QR_QUIET)}h${String(run)}v1h-${String(run)}z`);
|
|
52
|
+
x += run;
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
const size = opts.size === undefined ? '' : ` width="${String(Math.round(opts.size))}" height="${String(Math.round(opts.size))}"`;
|
|
56
|
+
return `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 ${String(width)} ${String(width)}"${size} shape-rendering="crispEdges"><rect width="${String(width)}" height="${String(width)}" fill="#fff"/><path fill="#000" d="${path.join('')}"/></svg>`;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=qr.js.map
|
package/dist/qr.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qr.js","sourceRoot":"","sources":["../src/qr.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAE9B,+FAA+F;AAC/F,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAE/B,wCAAwC;AACxC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC;AAE1B;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY;IACnC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QACpG,MAAM,IAAI,UAAU,CAAC,0BAA0B,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACnE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,OAA0B,EAAE;IAC9D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC;IAC5C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,GAAI,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACZ,CAAC,IAAI,CAAC,CAAC;gBACP,SAAS;YACX,CAAC;YACD,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI;gBAAE,GAAG,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChG,CAAC,IAAI,GAAG,CAAC;QACX,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;IAClI,OAAO,wDAAwD,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,8CAA8C,MAAM,CAAC,KAAK,CAAC,aAAa,MAAM,CAAC,KAAK,CAAC,uCAAuC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;AAC5P,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adminiumjs/public-client",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.6",
|
|
4
4
|
"license": "AGPL-3.0-only",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,10 +17,17 @@
|
|
|
17
17
|
".": {
|
|
18
18
|
"types": "./dist/index.d.ts",
|
|
19
19
|
"default": "./dist/index.js"
|
|
20
|
+
},
|
|
21
|
+
"./qr": {
|
|
22
|
+
"types": "./dist/qr.d.ts",
|
|
23
|
+
"default": "./dist/qr.js"
|
|
20
24
|
}
|
|
21
25
|
},
|
|
22
26
|
"files": [
|
|
23
27
|
"dist"
|
|
24
28
|
],
|
|
25
|
-
"sideEffects": false
|
|
29
|
+
"sideEffects": false,
|
|
30
|
+
"dependencies": {
|
|
31
|
+
"qr": "0.7.0"
|
|
32
|
+
}
|
|
26
33
|
}
|