@superbuilders/primer-tives 5.1.0 → 6.1.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/README.md CHANGED
@@ -19,7 +19,7 @@ bun add @superbuilders/primer-tives
19
19
 
20
20
  ## Version
21
21
 
22
- The current SDK version is `5.1.0`.
22
+ The current SDK version is `6.0.0`.
23
23
 
24
24
  ## Entrypoints
25
25
 
@@ -50,6 +50,7 @@ import {
50
50
  const options = {
51
51
  publishableKey: "pk_...",
52
52
  subject: "math",
53
+ mode: "drill",
53
54
  supportedPcis: ["urn:primer:pci:fraction-input"],
54
55
  logger
55
56
  } satisfies PrimerOptionsWithManagedAuth<"math", readonly ["urn:primer:pci:fraction-input"]>
@@ -57,6 +58,19 @@ const options = {
57
58
  let state = await start(options)
58
59
  ```
59
60
 
61
+ Primer exposes drill and curriculum as separate product surfaces behind the same SDK state machine. Version 6 callers must pass `mode: "drill"` for practice drill progression or `mode: "curriculum"` for curriculum DAG progression. Older clients that omit mode continue to enter drill behavior on the server.
62
+
63
+ ```ts
64
+ const options = {
65
+ publishableKey: "pk_...",
66
+ subject: "science",
67
+ mode: "curriculum",
68
+ logger
69
+ } satisfies PrimerOptionsWithManagedAuth<"science">
70
+
71
+ let state = await start(options)
72
+ ```
73
+
60
74
  If your application already has a learner access token, pass it directly. `start` uses that token for the learning runtime.
61
75
 
62
76
  ```ts
@@ -64,6 +78,7 @@ const options = {
64
78
  publishableKey: "pk_...",
65
79
  accessToken,
66
80
  subject: "math",
81
+ mode: "drill",
67
82
  supportedPcis: ["urn:primer:pci:fraction-input"],
68
83
  logger
69
84
  } satisfies PrimerOptionsWithAccessToken<"math", readonly ["urn:primer:pci:fraction-input"]>
@@ -98,6 +113,7 @@ Vocabulary and science currently have no required PCI capabilities, so `supporte
98
113
  const options = {
99
114
  publishableKey: "pk_...",
100
115
  subject: "vocabulary",
116
+ mode: "drill",
101
117
  logger
102
118
  } satisfies PrimerOptionsWithManagedAuth<"vocabulary">
103
119
 
@@ -109,6 +125,7 @@ Omitting `subject` means the SDK asks Primer for the all-subject runtime scope.
109
125
  ```ts
110
126
  const options = {
111
127
  publishableKey: "pk_...",
128
+ mode: "drill",
112
129
  supportedPcis: ["urn:primer:pci:fraction-input"],
113
130
  logger
114
131
  } satisfies PrimerOptionsWithManagedAuth<undefined, readonly ["urn:primer:pci:fraction-input"]>
@@ -159,6 +176,7 @@ const options = {
159
176
  publishableKey,
160
177
  accessToken,
161
178
  subject: "math",
179
+ mode: "drill",
162
180
  supportedPcis: ["urn:primer:pci:fraction-input"],
163
181
  logger
164
182
  } satisfies PrimerOptionsWithAccessToken<"math", readonly ["urn:primer:pci:fraction-input"]>
@@ -180,6 +198,7 @@ if (state.phase === "fatal") {
180
198
  type PrimerOptions<S extends Subject | undefined = undefined, Supported extends readonly PciId[] = []> = {
181
199
  readonly publishableKey: string
182
200
  readonly origin?: string
201
+ readonly mode: "drill" | "curriculum"
183
202
  readonly subject?: S
184
203
  readonly supportedPcis: subject-dependent
185
204
  readonly fetch?: typeof globalThis.fetch
@@ -200,6 +219,7 @@ type PrimerOptionsWithManagedAuth<S, Supported> = PrimerOptions<S, Supported> &
200
219
  | --- | --- | --- |
201
220
  | `publishableKey` | Yes | Public key identifying the Primer frontend your runtime belongs to. |
202
221
  | `origin` | No | Primer origin. Defaults to `https://primerlearn.dev`. |
222
+ | `mode` | Yes | Product surface. Use `"drill"` for practice drill progression or `"curriculum"` for curriculum DAG progression and generated support behavior. |
203
223
  | `accessToken` | Mode-dependent | Learner access token. When present, `start` uses access-token mode. When absent, `start` uses managed hosted-auth mode. |
204
224
  | `subject` | No | Public content scope: `"math"`, `"vocabulary"`, or `"science"`. Omitted means all-subject scope. |
205
225
  | `supportedPcis` | Subject-dependent | Renderer capabilities for Portable Custom Interactions. Required when the chosen scope can emit required PCIs. |
@@ -230,7 +250,7 @@ sessionStorage["primer:access-token:<publishableKey>"]
230
250
 
231
251
  This is intentionally zero config. There is no storage selector and no persistence flag. Managed-auth mode always uses `globalThis.sessionStorage`; if `sessionStorage` is unavailable, `start` returns `AuthUnavailableState`.
232
252
 
233
- The cache stores only the final Primer access token returned by hosted Timeback sign-in. OAuth transaction state, nonce, verifier, and callback validation state are not stored in browser storage; those remain server-managed by Primer.
253
+ The cache stores only the final Primer access token returned by hosted sign-in. OAuth transaction state, nonce, verifier, and callback validation state are not stored in browser storage; those remain server-managed by Primer.
234
254
 
235
255
  Managed-auth startup behavior is:
236
256
 
@@ -246,8 +266,6 @@ Access-token mode bypasses this cache entirely. If `accessToken` is present in `
246
266
 
247
267
  The cached value is a bearer credential. Browser-only consumers get reload convenience from this default, but any script that can read the page can read the token. Host applications must maintain normal XSS protections and should use access-token mode if they need to own token storage themselves.
248
268
 
249
- The canonical managed sign-in endpoint is `/api/auth/timeback/start`. Legacy `/auth/timeback` URLs are not part of the PrimerTives 4.0.5 contract.
250
-
251
269
  ## Auth Semantics
252
270
 
253
271
  An access token is expected to be JWS-shaped: it starts with `eyJ` and contains exactly two dots. If a provided token does not match that shape, `start` returns `FatalState` with `ErrMalformedAccessToken`.
@@ -341,6 +359,7 @@ This fails at compile time because math can emit a required PCI:
341
359
  await start({
342
360
  publishableKey,
343
361
  subject: "math",
362
+ mode: "drill",
344
363
  logger
345
364
  })
346
365
  ```
@@ -351,6 +370,7 @@ This passes:
351
370
  const options = {
352
371
  publishableKey,
353
372
  subject: "math",
373
+ mode: "drill",
354
374
  supportedPcis: ["urn:primer:pci:fraction-input"],
355
375
  logger
356
376
  } satisfies PrimerOptionsWithManagedAuth<"math", readonly ["urn:primer:pci:fraction-input"]>
@@ -611,6 +631,73 @@ Concurrent interaction operations are guarded:
611
631
  | Timeout while submit is pending | Returns `ErroredState` with `ErrConflict`. |
612
632
  | Repeated timeout while timeout is pending | Returns the same pending result. |
613
633
 
634
+ ## Interaction Calibration And Accuracy
635
+
636
+ Every interaction object carries aggregate calibration and accuracy data:
637
+
638
+ ```ts
639
+ type InteractionCalibration = {
640
+ readonly p0: number
641
+ readonly p25: number
642
+ readonly p50: number
643
+ readonly p75: number
644
+ readonly p100: number
645
+ }
646
+
647
+ type InteractionAccuracy =
648
+ | { readonly correct: number; readonly total: number }
649
+ | { readonly correct: 0; readonly total: 0 }
650
+ ```
651
+
652
+ Access these fields from the interaction contract object:
653
+
654
+ ```ts
655
+ state.interaction.calibration
656
+ state.interaction.accuracy
657
+ ```
658
+
659
+ `interaction.calibration` is nullable. If Primer has no terminal samples for an interaction, calibration is `null`.
660
+
661
+ ```ts
662
+ if (state.interaction.calibration !== null) {
663
+ const medianMs = state.interaction.calibration.p50
664
+ }
665
+ ```
666
+
667
+ `interaction.accuracy` is never nullable. If Primer has no terminal samples, accuracy is `{ correct: 0, total: 0 }`.
668
+
669
+ ```ts
670
+ const { correct, total } = state.interaction.accuracy
671
+ const observedAccuracy = total === 0 ? undefined : correct / total
672
+ ```
673
+
674
+ Calibration is aggregate historical timing data for this interaction. It measures elapsed time from frame open to the first terminal green/red submitted response. All calibration values are milliseconds. Yellow-path recoverable responses are not terminal and are excluded. Timeouts are excluded. `p100` is the literal maximum observed terminal duration.
675
+
676
+ Accuracy is aggregate correctness over the same terminal submitted response set. `correct` is the number of terminal responses graded correct. `total` is the number of terminal responses. Primer exposes counts rather than a ratio so hosts can choose their own smoothing and display rules.
677
+
678
+ Primer uses UUIDv7 event ids as the timing source for calibration. No timestamp fields are exposed through the SDK.
679
+
680
+ Observation states do not expose interaction calibration or accuracy because they have no interaction object.
681
+
682
+ Example game-feedback usage:
683
+
684
+ ```ts
685
+ if (state.phase === "interaction") {
686
+ const calibration = state.interaction.calibration
687
+ const accuracy = state.interaction.accuracy
688
+
689
+ if (calibration !== null) {
690
+ const fastTarget = calibration.p25
691
+ const typicalTarget = calibration.p50
692
+ const slowTarget = calibration.p75
693
+ configureRewardTiming({ fastTarget, typicalTarget, slowTarget })
694
+ }
695
+
696
+ const observedAccuracy = accuracy.total === 0 ? undefined : accuracy.correct / accuracy.total
697
+ configureRewardRules({ observedAccuracy })
698
+ }
699
+ ```
700
+
614
701
  ## `ChoiceState`
615
702
 
616
703
  ```ts
@@ -806,7 +893,7 @@ if (state.phase === "interaction" && state.kind === "portable-custom") {
806
893
  ## `FeedbackState`
807
894
 
808
895
  ```ts
809
- type AssessmentOutcomeValue = "correct" | "incorrect" | "revisionRequested"
896
+ type AssessmentOutcomeValue = "correct" | "incorrect"
810
897
 
811
898
  type AssessmentOutcome = {
812
899
  cardinality: "single"
@@ -1433,6 +1520,7 @@ import { start, type PrimerOptionsWithManagedAuth } from "@superbuilders/primer-
1433
1520
  const options = {
1434
1521
  publishableKey,
1435
1522
  subject: "vocabulary",
1523
+ mode: "drill",
1436
1524
  logger
1437
1525
  } satisfies PrimerOptionsWithManagedAuth<"vocabulary">
1438
1526
 
@@ -1489,6 +1577,7 @@ const options = {
1489
1577
  publishableKey: "pk_test",
1490
1578
  accessToken: "eyJ.test.token",
1491
1579
  subject: "vocabulary",
1580
+ mode: "drill",
1492
1581
  fetch: fetchMock,
1493
1582
  logger
1494
1583
  } satisfies PrimerOptionsWithAccessToken<"vocabulary">
@@ -3,8 +3,13 @@ import type { InteractionFeedback, Journey, PrimerState } from "./types";
3
3
  import type { ContentBlock } from "../contracts/content";
4
4
  import type { PciId } from "../contracts/pci";
5
5
  import type { RendererStimulus, StandardRendererInteraction } from "../contracts/types";
6
+ interface ExtendedTextStateOptions {
7
+ readonly initialValue?: string;
8
+ readonly initialValues?: string[];
9
+ readonly nextSubmissionRole?: "revision";
10
+ }
6
11
  declare function extendedTextState<Pcis extends PciId>(ctx: SessionContext<Pcis>, journey: Journey, body: ContentBlock[], stimulus: RendererStimulus | null, interaction: Extract<StandardRendererInteraction, {
7
12
  type: "extended-text";
8
- }>, feedback: InteractionFeedback | null): PrimerState<Pcis>;
13
+ }>, feedback: InteractionFeedback | null, options?: ExtendedTextStateOptions): PrimerState<Pcis>;
9
14
  export { extendedTextState };
10
15
  //# sourceMappingURL=extended-text-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extended-text-state.d.ts","sourceRoot":"","sources":["../../src/client/extended-text-state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,KAAK,EACX,mBAAmB,EACnB,OAAO,EACP,WAAW,EACX,MAAM,0CAA0C,CAAA;AAKjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAA;AACjF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EACX,gBAAgB,EAChB,2BAA2B,EAC3B,MAAM,6CAA6C,CAAA;AAGpD,iBAAS,iBAAiB,CAAC,IAAI,SAAS,KAAK,EAC5C,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,WAAW,EAAE,OAAO,CAAC,2BAA2B,EAAE;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC,EAC5E,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAClC,WAAW,CAAC,IAAI,CAAC,CA2KnB;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"extended-text-state.d.ts","sourceRoot":"","sources":["../../src/client/extended-text-state.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,oDAAoD,CAAA;AACpG,OAAO,KAAK,EACX,mBAAmB,EACnB,OAAO,EACP,WAAW,EACX,MAAM,0CAA0C,CAAA;AAKjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAA;AACjF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAEX,gBAAgB,EAChB,2BAA2B,EAC3B,MAAM,6CAA6C,CAAA;AAGpD,UAAU,wBAAwB;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACjC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,UAAU,CAAA;CACxC;AAYD,iBAAS,iBAAiB,CAAC,IAAI,SAAS,KAAK,EAC5C,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,WAAW,EAAE,OAAO,CAAC,2BAA2B,EAAE;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC,EAC5E,QAAQ,EAAE,mBAAmB,GAAG,IAAI,EACpC,OAAO,GAAE,wBAA6B,GACpC,WAAW,CAAC,IAAI,CAAC,CAiLnB;AAED,OAAO,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1,10 +1,10 @@
1
1
  import type { SessionContext } from "./session-context";
2
- import type { AssessmentOutcome, Journey, PrimerState } from "./types";
2
+ import type { Journey, PrimerState } from "./types";
3
3
  import type { ContentBlock, ContentInline } from "../contracts/content";
4
4
  import type { PciId } from "../contracts/pci";
5
5
  import type { InteractionReview } from "../contracts/review";
6
6
  import type { RendererInteraction, RendererStimulus, RendererSubmission } from "../contracts/types";
7
- declare function submittedFeedbackState<Pcis extends PciId>(ctx: SessionContext<Pcis>, journey: Journey, body: ContentBlock[], stimulus: RendererStimulus | null, interaction: RendererInteraction<Pcis>, submission: RendererSubmission<Pcis>, assessmentOutcome: AssessmentOutcome, feedbackContent: ContentInline[], review: InteractionReview<Pcis> | null): PrimerState<Pcis>;
7
+ declare function submittedFeedbackState<Pcis extends PciId>(ctx: SessionContext<Pcis>, journey: Journey, body: ContentBlock[], stimulus: RendererStimulus | null, interaction: RendererInteraction<Pcis>, submission: RendererSubmission<Pcis>, isCorrect: boolean, feedbackContent: ContentInline[], review: InteractionReview<Pcis> | null): PrimerState<Pcis>;
8
8
  declare function timedOutFeedbackState<Pcis extends PciId>(ctx: SessionContext<Pcis>, journey: Journey, body: ContentBlock[], stimulus: RendererStimulus | null, interaction: RendererInteraction<Pcis>, feedbackContent: ContentInline[]): PrimerState<Pcis>;
9
9
  export { submittedFeedbackState, timedOutFeedbackState };
10
10
  //# sourceMappingURL=feedback-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"feedback-state.d.ts","sourceRoot":"","sources":["../../src/client/feedback-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,KAAK,EACX,iBAAiB,EACjB,OAAO,EACP,WAAW,EACX,MAAM,0CAA0C,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAChG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AACrF,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,MAAM,6CAA6C,CAAA;AAapD,iBAAS,sBAAsB,CAAC,IAAI,SAAS,KAAK,EACjD,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,EACtC,UAAU,EAAE,kBAAkB,CAAC,IAAI,CAAC,EACpC,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,EAAE,aAAa,EAAE,EAChC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,IAAI,GACpC,WAAW,CAAC,IAAI,CAAC,CAenB;AAED,iBAAS,qBAAqB,CAAC,IAAI,SAAS,KAAK,EAChD,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,EACtC,eAAe,EAAE,aAAa,EAAE,GAC9B,WAAW,CAAC,IAAI,CAAC,CAYnB;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAA"}
1
+ {"version":3,"file":"feedback-state.d.ts","sourceRoot":"","sources":["../../src/client/feedback-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAChG,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AACrF,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,MAAM,6CAA6C,CAAA;AAapD,iBAAS,sBAAsB,CAAC,IAAI,SAAS,KAAK,EACjD,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,EACtC,UAAU,EAAE,kBAAkB,CAAC,IAAI,CAAC,EACpC,SAAS,EAAE,OAAO,EAClB,eAAe,EAAE,aAAa,EAAE,EAChC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,IAAI,GACpC,WAAW,CAAC,IAAI,CAAC,CAenB;AAED,iBAAS,qBAAqB,CAAC,IAAI,SAAS,KAAK,EAChD,GAAG,EAAE,cAAc,CAAC,IAAI,CAAC,EACzB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,YAAY,EAAE,EACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,EACjC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,EACtC,eAAe,EAAE,aAAa,EAAE,GAC9B,WAAW,CAAC,IAAI,CAAC,CAYnB;AAED,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAA"}
@@ -1,4 +1,4 @@
1
- export type { PrimerOptions, PrimerOptionsWithAccessToken, PrimerOptionsWithManagedAuth } from "./start";
1
+ export type { AdvanceMode, PrimerOptions, PrimerOptionsWithAccessToken, PrimerOptionsWithManagedAuth } from "./start";
2
2
  export { start } from "./start";
3
- export type { AccessTokenStartState, AssessmentOutcome, AssessmentOutcomeValue, AuthConfigInvalidState, AuthUnavailableState, ChoiceState, CompletedState, ErroredState, ExtendedTextMultipleState, ExtendedTextSingleState, ExtendedTextState, FatalState, FeedbackKind, FeedbackState, InteractionFeedback, InteractionState, ManagedStartState, MatchState, NonRetriableErroredState, NonSerializable, ObservationState, OrderState, PciInteractionState, PciPendingRenderProps, PciRenderProps, PciSubmittedRenderProps, Journey, JourneyProgress, PrimerState, RetriableErroredState, RuntimeState, SignInFailedState, SignInRequiredState, SubmittedFeedbackState, TextEntryState, TimedOutFeedbackState } from "./types";
3
+ export type { AccessTokenStartState, AuthConfigInvalidState, AuthUnavailableState, ChoiceState, CompletedState, ErroredState, ExtendedTextMultipleState, ExtendedTextSingleState, ExtendedTextState, FatalState, FeedbackKind, FeedbackState, InteractionFeedback, InteractionState, ManagedStartState, MatchState, NonRetriableErroredState, NonSerializable, ObservationState, OrderState, PciInteractionState, PciPendingRenderProps, PciRenderProps, PciSubmittedRenderProps, Journey, JourneyProgress, PrimerState, RetriableErroredState, RuntimeState, SignInFailedState, SignInRequiredState, SubmittedFeedbackState, TextEntryState, TimedOutFeedbackState } from "./types";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,aAAa,EACb,4BAA4B,EAC5B,4BAA4B,EAC5B,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAA;AAEhE,YAAY,EACX,qBAAqB,EACrB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,yBAAyB,EACzB,uBAAuB,EACvB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EACvB,OAAO,EACP,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,MAAM,0CAA0C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,WAAW,EACX,aAAa,EACb,4BAA4B,EAC5B,4BAA4B,EAC5B,MAAM,0CAA0C,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,0CAA0C,CAAA;AAEhE,YAAY,EACX,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACpB,WAAW,EACX,cAAc,EACd,YAAY,EACZ,yBAAyB,EACzB,uBAAuB,EACvB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,mBAAmB,EACnB,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EACvB,OAAO,EACP,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,MAAM,0CAA0C,CAAA"}