@superbuilders/primer-tives 1.2.0 → 2.2.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 +744 -533
- package/dist/client/choice-state.d.ts +2 -1
- package/dist/client/choice-state.d.ts.map +1 -1
- package/dist/client/create.d.ts +23 -7
- package/dist/client/create.d.ts.map +1 -1
- package/dist/client/extended-text-state.d.ts +2 -1
- package/dist/client/extended-text-state.d.ts.map +1 -1
- package/dist/client/feedback-state.d.ts +2 -2
- package/dist/client/feedback-state.d.ts.map +1 -1
- package/dist/client/index.js +226 -109
- package/dist/client/index.js.map +21 -17
- package/dist/client/match-state.d.ts +2 -1
- package/dist/client/match-state.d.ts.map +1 -1
- package/dist/client/observation-state.d.ts +2 -1
- package/dist/client/observation-state.d.ts.map +1 -1
- package/dist/client/order-state.d.ts +2 -1
- package/dist/client/order-state.d.ts.map +1 -1
- package/dist/client/pci-state.d.ts +2 -1
- package/dist/client/pci-state.d.ts.map +1 -1
- package/dist/client/session-context.d.ts +1 -1
- package/dist/client/session-context.d.ts.map +1 -1
- package/dist/client/session.d.ts +2 -2
- package/dist/client/session.d.ts.map +1 -1
- package/dist/client/text-entry-state.d.ts +2 -1
- package/dist/client/text-entry-state.d.ts.map +1 -1
- package/dist/client/transport.d.ts +13 -11
- package/dist/client/transport.d.ts.map +1 -1
- package/dist/client/types.d.ts +10 -1
- package/dist/client/types.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +4 -3
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +42 -36
- package/dist/contracts/index.js.map +6 -5
- package/dist/contracts/pci-schemas.d.ts +24 -20
- package/dist/contracts/pci-schemas.d.ts.map +1 -1
- package/dist/contracts/pci.d.ts +26 -27
- package/dist/contracts/pci.d.ts.map +1 -1
- package/dist/contracts/types.d.ts +5 -9
- package/dist/contracts/types.d.ts.map +1 -1
- package/dist/contracts/validation.d.ts +34 -23
- package/dist/contracts/validation.d.ts.map +1 -1
- package/dist/errors.d.ts +3 -6
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +5 -11
- package/dist/errors.js.map +3 -3
- package/dist/server/create-server.d.ts +3 -33
- package/dist/server/create-server.d.ts.map +1 -1
- package/dist/server/exchange.d.ts +7 -14
- package/dist/server/exchange.d.ts.map +1 -1
- package/dist/server/index.d.ts +1 -3
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +32 -407
- package/dist/server/index.js.map +6 -9
- package/dist/subject-pcis.d.ts +13 -0
- package/dist/subject-pcis.d.ts.map +1 -0
- package/dist/version.d.ts +4 -0
- package/dist/version.d.ts.map +1 -0
- package/package.json +5 -1
- package/dist/server/hints.d.ts +0 -25
- package/dist/server/hints.d.ts.map +0 -1
- package/dist/server/students.d.ts +0 -12
- package/dist/server/students.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pci.d.ts","sourceRoot":"","sources":["../../src/contracts/pci.ts"],"names":[],"mappings":"AAAA,UAAU,
|
|
1
|
+
{"version":3,"file":"pci.d.ts","sourceRoot":"","sources":["../../src/contracts/pci.ts"],"names":[],"mappings":"AAAA,KAAK,iBAAiB,GAAG,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAA;AAElE,UAAU,kBAAkB;IAC3B,IAAI,EAAE,iBAAiB,CAAA;IACvB,iBAAiB,EAAE,OAAO,CAAA;CAC1B;AAED,KAAK,uBAAuB,GACzB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAA;AAE3E,KAAK,MAAM,GAAG,kBAAkB,MAAM,EAAE,CAAA;AAExC,QAAA,MAAM,OAAO,4CAA6C,CAAA;AAE1D,UAAU,WAAW;IACpB,+BAA+B,EAAE;QAChC,KAAK,EAAE,kBAAkB,CAAA;QACzB,KAAK,EAAE,uBAAuB,CAAA;KAC9B,CAAA;CACD;AAMD,KAAK,KAAK,GAAG,MAAM,WAAW,GAAG,MAAM,CAAA;AACvC,KAAK,QAAQ,CAAC,CAAC,SAAS,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;AACxD,KAAK,QAAQ,CAAC,CAAC,SAAS,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;AAExD,iBAAS,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,KAAK,CAO9C;AAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA;AAE3B,YAAY,EACX,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,KAAK,EACL,QAAQ,EACR,WAAW,EACX,MAAM,EACN,QAAQ,EACR,CAAA"}
|
|
@@ -1,19 +1,15 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ContentInline } from "./content";
|
|
2
2
|
import type { PciId, PciProps, PciValue } from "./pci";
|
|
3
3
|
interface MatchPair {
|
|
4
4
|
source: string;
|
|
5
5
|
target: string;
|
|
6
6
|
}
|
|
7
|
-
interface BodyStimulus {
|
|
8
|
-
type: "body";
|
|
9
|
-
body: ContentBlock[];
|
|
10
|
-
}
|
|
11
7
|
interface ImageStimulus {
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
kind: "image";
|
|
9
|
+
alt: ContentInline[];
|
|
14
10
|
src: string;
|
|
15
11
|
}
|
|
16
|
-
type RendererStimulus =
|
|
12
|
+
type RendererStimulus = ImageStimulus;
|
|
17
13
|
interface RendererChoice {
|
|
18
14
|
identifier: string;
|
|
19
15
|
content: ContentInline[];
|
|
@@ -114,5 +110,5 @@ type RendererSubmission<Pcis extends PciId = PciId> = {
|
|
|
114
110
|
type: "match";
|
|
115
111
|
pairs: MatchPair[];
|
|
116
112
|
} | PciSubmission<Pcis>;
|
|
117
|
-
export type {
|
|
113
|
+
export type { ImageStimulus, MatchPair, PciInteraction, PciSubmission, RendererChoice, RendererInteraction, RendererMatchChoice, RendererStimulus, RendererSubmission, StandardRendererInteraction };
|
|
118
114
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contracts/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/contracts/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,21 +27,26 @@ declare const MatchSubmissionSchema: z.ZodObject<{
|
|
|
27
27
|
target: z.ZodString;
|
|
28
28
|
}, z.core.$strip>>;
|
|
29
29
|
}, z.core.$strip>;
|
|
30
|
-
declare const
|
|
30
|
+
declare const FractionInputPciSubmissionSchema: z.ZodObject<{
|
|
31
31
|
type: z.ZodLiteral<"portable-custom">;
|
|
32
|
-
pciId: z.ZodLiteral<"urn:primer:pci:
|
|
33
|
-
value: z.ZodObject<{
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}, z.core.$strip
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
32
|
+
pciId: z.ZodLiteral<"urn:primer:pci:fraction-input">;
|
|
33
|
+
value: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
34
|
+
form: z.ZodLiteral<"whole">;
|
|
35
|
+
whole: z.ZodString;
|
|
36
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
37
|
+
form: z.ZodLiteral<"proper">;
|
|
38
|
+
numerator: z.ZodString;
|
|
39
|
+
denominator: z.ZodString;
|
|
40
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
41
|
+
form: z.ZodLiteral<"improper">;
|
|
42
|
+
numerator: z.ZodString;
|
|
43
|
+
denominator: z.ZodString;
|
|
44
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
45
|
+
form: z.ZodLiteral<"mixed">;
|
|
46
|
+
whole: z.ZodString;
|
|
42
47
|
numerator: z.ZodString;
|
|
43
48
|
denominator: z.ZodString;
|
|
44
|
-
}, z.core.$strip>;
|
|
49
|
+
}, z.core.$strip>], "form">;
|
|
45
50
|
}, z.core.$strip>;
|
|
46
51
|
declare const RendererSubmissionSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
47
52
|
type: z.ZodLiteral<"choice">;
|
|
@@ -63,18 +68,24 @@ declare const RendererSubmissionSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
63
68
|
}, z.core.$strip>>;
|
|
64
69
|
}, z.core.$strip>, z.ZodObject<{
|
|
65
70
|
type: z.ZodLiteral<"portable-custom">;
|
|
66
|
-
pciId: z.ZodLiteral<"urn:primer:pci:
|
|
67
|
-
value: z.ZodObject<{
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}, z.core.$strip
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
71
|
+
pciId: z.ZodLiteral<"urn:primer:pci:fraction-input">;
|
|
72
|
+
value: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
73
|
+
form: z.ZodLiteral<"whole">;
|
|
74
|
+
whole: z.ZodString;
|
|
75
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
76
|
+
form: z.ZodLiteral<"proper">;
|
|
77
|
+
numerator: z.ZodString;
|
|
78
|
+
denominator: z.ZodString;
|
|
79
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
80
|
+
form: z.ZodLiteral<"improper">;
|
|
81
|
+
numerator: z.ZodString;
|
|
82
|
+
denominator: z.ZodString;
|
|
83
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
84
|
+
form: z.ZodLiteral<"mixed">;
|
|
85
|
+
whole: z.ZodString;
|
|
75
86
|
numerator: z.ZodString;
|
|
76
87
|
denominator: z.ZodString;
|
|
77
|
-
}, z.core.$strip>;
|
|
88
|
+
}, z.core.$strip>], "form">;
|
|
78
89
|
}, z.core.$strip>]>;
|
|
79
90
|
type SubmissionValidationSuccess = {
|
|
80
91
|
ok: true;
|
|
@@ -87,6 +98,6 @@ type SubmissionValidationFailure = {
|
|
|
87
98
|
type SubmissionValidationResult = SubmissionValidationSuccess | SubmissionValidationFailure;
|
|
88
99
|
declare function validateSubmissionForInteraction(interaction: RendererInteraction, submission: RendererSubmission): SubmissionValidationResult;
|
|
89
100
|
declare function submissionValidationMessage(result: SubmissionValidationFailure): string;
|
|
90
|
-
export { ChoiceSubmissionSchema,
|
|
101
|
+
export { ChoiceSubmissionSchema, ExtendedTextSubmissionSchema, FractionInputPciSubmissionSchema, MatchPairSchema, MatchSubmissionSchema, OrderSubmissionSchema, RendererSubmissionSchema, TextEntrySubmissionSchema, submissionValidationMessage, validateSubmissionForInteraction };
|
|
91
102
|
export type { SubmissionValidationFailure, SubmissionValidationResult, SubmissionValidationSuccess };
|
|
92
103
|
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/contracts/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/contracts/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,KAAK,EAGX,mBAAmB,EAEnB,kBAAkB,EAClB,MAAM,6CAA6C,CAAA;AAEpD,QAAA,MAAM,eAAe;;;iBAGnB,CAAA;AAEF,QAAA,MAAM,sBAAsB;;;iBAG1B,CAAA;AAEF,QAAA,MAAM,yBAAyB;;;iBAG7B,CAAA;AAEF,QAAA,MAAM,4BAA4B;;;iBAGhC,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;iBAGzB,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;;;;iBAGzB,CAAA;AAEF,QAAA,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;iBAIpC,CAAA;AAEF,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAO5B,CAAA;AAqEF,KAAK,2BAA2B,GAAG;IAClC,EAAE,EAAE,IAAI,CAAA;IACR,KAAK,EAAE,kBAAkB,CAAA;CACzB,CAAA;AAED,KAAK,2BAA2B,GAAG;IAClC,EAAE,EAAE,KAAK,CAAA;IACT,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,KAAK,0BAA0B,GAAG,2BAA2B,GAAG,2BAA2B,CAAA;AAuJ3F,iBAAS,gCAAgC,CACxC,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,kBAAkB,GAC5B,0BAA0B,CAiC5B;AAED,iBAAS,2BAA2B,CAAC,MAAM,EAAE,2BAA2B,GAAG,MAAM,CAEhF;AAED,OAAO,EACN,sBAAsB,EACtB,4BAA4B,EAC5B,gCAAgC,EAChC,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,gCAAgC,EAChC,CAAA;AACD,YAAY,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,CAAA"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
declare const ErrNetwork: Error;
|
|
2
2
|
declare const ErrJsonParse: Error;
|
|
3
3
|
declare const ErrUnsupportedPci: Error;
|
|
4
|
+
declare const ErrMissingRequiredPci: Error;
|
|
4
5
|
declare const ErrInvalidAccessToken: Error;
|
|
5
6
|
declare const ErrMalformedAccessToken: Error;
|
|
6
7
|
declare const ErrTokenExpired: Error;
|
|
@@ -10,15 +11,11 @@ declare const ErrTimeout: Error;
|
|
|
10
11
|
declare const ErrForbidden: Error;
|
|
11
12
|
declare const ErrNotFound: Error;
|
|
12
13
|
declare const ErrConflict: Error;
|
|
13
|
-
declare const ErrExternalAuthorityRequired: Error;
|
|
14
14
|
declare const ErrRateLimited: Error;
|
|
15
15
|
declare const ErrServiceUnavailable: Error;
|
|
16
16
|
declare const ErrNotSerializable: Error;
|
|
17
17
|
declare const ErrInvalidSubmission: Error;
|
|
18
18
|
declare const ErrInvalidSecretKey: Error;
|
|
19
|
-
declare const
|
|
20
|
-
|
|
21
|
-
declare const ErrTimebackUnavailable: Error;
|
|
22
|
-
declare const ErrNeedsHints: Error;
|
|
23
|
-
export { ErrBadRequest, ErrConflict, ErrExternalAuthorityRequired, ErrForbidden, ErrInvalidAccessToken, ErrInvalidSecretKey, ErrInvalidSubmission, ErrJsonParse, ErrMalformedAccessToken, ErrNeedsHints, ErrNetwork, ErrNotFound, ErrNotSerializable, ErrRateLimited, ErrServerError, ErrServiceUnavailable, ErrStudentNotFound, ErrTimebackUnavailable, ErrTimeout, ErrTokenExpired, ErrUnsupportedGrade, ErrUnsupportedPci };
|
|
19
|
+
declare const ErrSdkUpgradeRequired: Error;
|
|
20
|
+
export { ErrBadRequest, ErrConflict, ErrForbidden, ErrInvalidAccessToken, ErrInvalidSecretKey, ErrInvalidSubmission, ErrJsonParse, ErrMalformedAccessToken, ErrMissingRequiredPci, ErrNetwork, ErrNotFound, ErrNotSerializable, ErrRateLimited, ErrSdkUpgradeRequired, ErrServerError, ErrServiceUnavailable, ErrTimeout, ErrTokenExpired, ErrUnsupportedPci };
|
|
24
21
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU,OAAwB,CAAA;AACxC,QAAA,MAAM,YAAY,OAA2B,CAAA;AAC7C,QAAA,MAAM,iBAAiB,OAAgC,CAAA;AACvD,QAAA,MAAM,qBAAqB,OAAqC,CAAA;AAChE,QAAA,MAAM,uBAAuB,OAAuC,CAAA;AACpE,QAAA,MAAM,eAAe,OAAqC,CAAA;AAC1D,QAAA,MAAM,aAAa,OAA4B,CAAA;AAC/C,QAAA,MAAM,cAAc,OAA6B,CAAA;AACjD,QAAA,MAAM,UAAU,OAAwB,CAAA;AACxC,QAAA,MAAM,YAAY,OAA0B,CAAA;AAC5C,QAAA,MAAM,WAAW,OAA0B,CAAA;AAC3C,QAAA,MAAM,WAAW,OAAyB,CAAA;AAC1C,QAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU,OAAwB,CAAA;AACxC,QAAA,MAAM,YAAY,OAA2B,CAAA;AAC7C,QAAA,MAAM,iBAAiB,OAAgC,CAAA;AACvD,QAAA,MAAM,qBAAqB,OAAqC,CAAA;AAChE,QAAA,MAAM,qBAAqB,OAAqC,CAAA;AAChE,QAAA,MAAM,uBAAuB,OAAuC,CAAA;AACpE,QAAA,MAAM,eAAe,OAAqC,CAAA;AAC1D,QAAA,MAAM,aAAa,OAA4B,CAAA;AAC/C,QAAA,MAAM,cAAc,OAA6B,CAAA;AACjD,QAAA,MAAM,UAAU,OAAwB,CAAA;AACxC,QAAA,MAAM,YAAY,OAA0B,CAAA;AAC5C,QAAA,MAAM,WAAW,OAA0B,CAAA;AAC3C,QAAA,MAAM,WAAW,OAAyB,CAAA;AAC1C,QAAA,MAAM,cAAc,OAA6B,CAAA;AACjD,QAAA,MAAM,qBAAqB,OAAoC,CAAA;AAC/D,QAAA,MAAM,kBAAkB,OAEvB,CAAA;AACD,QAAA,MAAM,oBAAoB,OAAmC,CAAA;AAE7D,QAAA,MAAM,mBAAmB,OAAmC,CAAA;AAC5D,QAAA,MAAM,qBAAqB,OAAqC,CAAA;AAEhE,OAAO,EACN,aAAa,EACb,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,uBAAuB,EACvB,qBAAqB,EACrB,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,CAAA"}
|
package/dist/errors.js
CHANGED
|
@@ -3,6 +3,7 @@ import * as errors from "@superbuilders/errors";
|
|
|
3
3
|
var ErrNetwork = errors.new("network");
|
|
4
4
|
var ErrJsonParse = errors.new("json parse");
|
|
5
5
|
var ErrUnsupportedPci = errors.new("unsupported pci");
|
|
6
|
+
var ErrMissingRequiredPci = errors.new("missing required pci");
|
|
6
7
|
var ErrInvalidAccessToken = errors.new("invalid access token");
|
|
7
8
|
var ErrMalformedAccessToken = errors.new("malformed access token");
|
|
8
9
|
var ErrTokenExpired = errors.new("access token expired");
|
|
@@ -12,39 +13,32 @@ var ErrTimeout = errors.new("timeout");
|
|
|
12
13
|
var ErrForbidden = errors.new("forbidden");
|
|
13
14
|
var ErrNotFound = errors.new("not found");
|
|
14
15
|
var ErrConflict = errors.new("conflict");
|
|
15
|
-
var ErrExternalAuthorityRequired = errors.new("external authority required");
|
|
16
16
|
var ErrRateLimited = errors.new("rate limited");
|
|
17
17
|
var ErrServiceUnavailable = errors.new("service unavailable");
|
|
18
18
|
var ErrNotSerializable = errors.new("PrimerState is live in-memory state and must not be serialized or stored");
|
|
19
19
|
var ErrInvalidSubmission = errors.new("invalid submission");
|
|
20
20
|
var ErrInvalidSecretKey = errors.new("invalid secret key");
|
|
21
|
-
var
|
|
22
|
-
var ErrUnsupportedGrade = errors.new("unsupported grade");
|
|
23
|
-
var ErrTimebackUnavailable = errors.new("timeback unavailable");
|
|
24
|
-
var ErrNeedsHints = errors.new("student needs hints set before /advance");
|
|
21
|
+
var ErrSdkUpgradeRequired = errors.new("sdk upgrade required");
|
|
25
22
|
export {
|
|
26
23
|
ErrUnsupportedPci,
|
|
27
|
-
ErrUnsupportedGrade,
|
|
28
24
|
ErrTokenExpired,
|
|
29
25
|
ErrTimeout,
|
|
30
|
-
ErrTimebackUnavailable,
|
|
31
|
-
ErrStudentNotFound,
|
|
32
26
|
ErrServiceUnavailable,
|
|
33
27
|
ErrServerError,
|
|
28
|
+
ErrSdkUpgradeRequired,
|
|
34
29
|
ErrRateLimited,
|
|
35
30
|
ErrNotSerializable,
|
|
36
31
|
ErrNotFound,
|
|
37
32
|
ErrNetwork,
|
|
38
|
-
|
|
33
|
+
ErrMissingRequiredPci,
|
|
39
34
|
ErrMalformedAccessToken,
|
|
40
35
|
ErrJsonParse,
|
|
41
36
|
ErrInvalidSubmission,
|
|
42
37
|
ErrInvalidSecretKey,
|
|
43
38
|
ErrInvalidAccessToken,
|
|
44
39
|
ErrForbidden,
|
|
45
|
-
ErrExternalAuthorityRequired,
|
|
46
40
|
ErrConflict,
|
|
47
41
|
ErrBadRequest
|
|
48
42
|
};
|
|
49
43
|
|
|
50
|
-
//# debugId=
|
|
44
|
+
//# debugId=D51B1F012B867B6764756E2164756E21
|
package/dist/errors.js.map
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/errors.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import * as errors from \"@superbuilders/errors\"\n\nconst ErrNetwork = errors.new(\"network\")\nconst ErrJsonParse = errors.new(\"json parse\")\nconst ErrUnsupportedPci = errors.new(\"unsupported pci\")\nconst ErrInvalidAccessToken = errors.new(\"invalid access token\")\nconst ErrMalformedAccessToken = errors.new(\"malformed access token\")\nconst ErrTokenExpired = errors.new(\"access token expired\")\nconst ErrBadRequest = errors.new(\"bad request\")\nconst ErrServerError = errors.new(\"server error\")\nconst ErrTimeout = errors.new(\"timeout\")\nconst ErrForbidden = errors.new(\"forbidden\")\nconst ErrNotFound = errors.new(\"not found\")\nconst ErrConflict = errors.new(\"conflict\")\nconst
|
|
5
|
+
"import * as errors from \"@superbuilders/errors\"\n\nconst ErrNetwork = errors.new(\"network\")\nconst ErrJsonParse = errors.new(\"json parse\")\nconst ErrUnsupportedPci = errors.new(\"unsupported pci\")\nconst ErrMissingRequiredPci = errors.new(\"missing required pci\")\nconst ErrInvalidAccessToken = errors.new(\"invalid access token\")\nconst ErrMalformedAccessToken = errors.new(\"malformed access token\")\nconst ErrTokenExpired = errors.new(\"access token expired\")\nconst ErrBadRequest = errors.new(\"bad request\")\nconst ErrServerError = errors.new(\"server error\")\nconst ErrTimeout = errors.new(\"timeout\")\nconst ErrForbidden = errors.new(\"forbidden\")\nconst ErrNotFound = errors.new(\"not found\")\nconst ErrConflict = errors.new(\"conflict\")\nconst ErrRateLimited = errors.new(\"rate limited\")\nconst ErrServiceUnavailable = errors.new(\"service unavailable\")\nconst ErrNotSerializable = errors.new(\n\t\"PrimerState is live in-memory state and must not be serialized or stored\"\n)\nconst ErrInvalidSubmission = errors.new(\"invalid submission\")\n\nconst ErrInvalidSecretKey = errors.new(\"invalid secret key\")\nconst ErrSdkUpgradeRequired = errors.new(\"sdk upgrade required\")\n\nexport {\n\tErrBadRequest,\n\tErrConflict,\n\tErrForbidden,\n\tErrInvalidAccessToken,\n\tErrInvalidSecretKey,\n\tErrInvalidSubmission,\n\tErrJsonParse,\n\tErrMalformedAccessToken,\n\tErrMissingRequiredPci,\n\tErrNetwork,\n\tErrNotFound,\n\tErrNotSerializable,\n\tErrRateLimited,\n\tErrSdkUpgradeRequired,\n\tErrServerError,\n\tErrServiceUnavailable,\n\tErrTimeout,\n\tErrTokenExpired,\n\tErrUnsupportedPci\n}\n"
|
|
6
6
|
],
|
|
7
|
-
"mappings": ";AAAA;AAEA,IAAM,aAAoB,WAAI,SAAS;AACvC,IAAM,eAAsB,WAAI,YAAY;AAC5C,IAAM,oBAA2B,WAAI,iBAAiB;AACtD,IAAM,wBAA+B,WAAI,sBAAsB;AAC/D,IAAM,0BAAiC,WAAI,wBAAwB;AACnE,IAAM,kBAAyB,WAAI,sBAAsB;AACzD,IAAM,gBAAuB,WAAI,aAAa;AAC9C,IAAM,iBAAwB,WAAI,cAAc;AAChD,IAAM,aAAoB,WAAI,SAAS;AACvC,IAAM,eAAsB,WAAI,WAAW;AAC3C,IAAM,cAAqB,WAAI,WAAW;AAC1C,IAAM,cAAqB,WAAI,UAAU;AACzC,IAAM
|
|
8
|
-
"debugId": "
|
|
7
|
+
"mappings": ";AAAA;AAEA,IAAM,aAAoB,WAAI,SAAS;AACvC,IAAM,eAAsB,WAAI,YAAY;AAC5C,IAAM,oBAA2B,WAAI,iBAAiB;AACtD,IAAM,wBAA+B,WAAI,sBAAsB;AAC/D,IAAM,wBAA+B,WAAI,sBAAsB;AAC/D,IAAM,0BAAiC,WAAI,wBAAwB;AACnE,IAAM,kBAAyB,WAAI,sBAAsB;AACzD,IAAM,gBAAuB,WAAI,aAAa;AAC9C,IAAM,iBAAwB,WAAI,cAAc;AAChD,IAAM,aAAoB,WAAI,SAAS;AACvC,IAAM,eAAsB,WAAI,WAAW;AAC3C,IAAM,cAAqB,WAAI,WAAW;AAC1C,IAAM,cAAqB,WAAI,UAAU;AACzC,IAAM,iBAAwB,WAAI,cAAc;AAChD,IAAM,wBAA+B,WAAI,qBAAqB;AAC9D,IAAM,qBAA4B,WACjC,0EACD;AACA,IAAM,uBAA8B,WAAI,oBAAoB;AAE5D,IAAM,sBAA6B,WAAI,oBAAoB;AAC3D,IAAM,wBAA+B,WAAI,sBAAsB;",
|
|
8
|
+
"debugId": "D51B1F012B867B6764756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { PrimerLogger } from "../logger";
|
|
2
|
-
import { type
|
|
3
|
-
import { type PlacementHints, type PlacementHintsResult } from "./hints";
|
|
2
|
+
import { type GetTokenInput } from "./exchange";
|
|
4
3
|
interface PrimerServerConfig {
|
|
5
4
|
readonly origin: string;
|
|
6
5
|
readonly secretKey: string;
|
|
@@ -9,38 +8,9 @@ interface PrimerServerConfig {
|
|
|
9
8
|
readonly logger: PrimerLogger;
|
|
10
9
|
}
|
|
11
10
|
interface PrimerServer {
|
|
12
|
-
|
|
13
|
-
* Provisions a frontend-owned Primer student and returns the stable
|
|
14
|
-
* student id you persist in your own DB keyed by your user. Pure
|
|
15
|
-
* identity — the student has no hints and no placements yet. Call
|
|
16
|
-
* `setStudentHints(studentId, { gradeLevel })` before the student's
|
|
17
|
-
* first `/advance`. If a session calls `/advance` without hints set,
|
|
18
|
-
* the server returns 412 `needs_hints` (surfaced as `ErrNeedsHints`
|
|
19
|
-
* in the browser SDK).
|
|
20
|
-
*/
|
|
21
|
-
createStudent(): Promise<string>;
|
|
22
|
-
/**
|
|
23
|
-
* Partial update of a student's placement-routing hints. Pass only
|
|
24
|
-
* the fields you want to set; omitted fields are left untouched.
|
|
25
|
-
* Returns the persisted state after upsert. Today the only hint is
|
|
26
|
-
* `gradeLevel`; future hint kinds (raw context, interests, etc.)
|
|
27
|
-
* will appear as additional optional fields.
|
|
28
|
-
*/
|
|
29
|
-
setStudentHints(studentId: string, hints: PlacementHints): Promise<PlacementHintsResult>;
|
|
30
|
-
/**
|
|
31
|
-
* Exchanges a frontend-owned native/manual student id for a short-lived
|
|
32
|
-
* access token. Pass `accessToken` from the returned `SessionToken` to
|
|
33
|
-
* `create()` on the browser SDK.
|
|
34
|
-
*/
|
|
35
|
-
exchangeStudentForAccessToken(studentId: string): Promise<SessionToken>;
|
|
36
|
-
/**
|
|
37
|
-
* Verifies the learner against live Timeback authority, resolves or
|
|
38
|
-
* provisions the corresponding frontend-owned Primer student, and
|
|
39
|
-
* returns both the stable student id and a short-lived access token.
|
|
40
|
-
*/
|
|
41
|
-
exchangeTimebackStudentForAccessToken(sourcedId: string): Promise<TimebackSession>;
|
|
11
|
+
getToken(input: GetTokenInput): Promise<string>;
|
|
42
12
|
}
|
|
43
13
|
declare function createPrimerServer(config: PrimerServerConfig): PrimerServer;
|
|
44
|
-
export type { PrimerServer, PrimerServerConfig };
|
|
14
|
+
export type { GetTokenInput, PrimerServer, PrimerServerConfig };
|
|
45
15
|
export { createPrimerServer };
|
|
46
16
|
//# sourceMappingURL=create-server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-server.d.ts","sourceRoot":"","sources":["../../src/server/create-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,
|
|
1
|
+
{"version":3,"file":"create-server.d.ts","sourceRoot":"","sources":["../../src/server/create-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,EAAE,KAAK,aAAa,EAAY,MAAM,6CAA6C,CAAA;AAE1F,UAAU,kBAAkB;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAC7B;AAED,UAAU,YAAY;IACrB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;CAC/C;AAED,iBAAS,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CAMpE;AAED,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,kBAAkB,EAAE,CAAA;AAC/D,OAAO,EAAE,kBAAkB,EAAE,CAAA"}
|
|
@@ -1,22 +1,15 @@
|
|
|
1
1
|
import type { PrimerLogger } from "../logger";
|
|
2
|
-
interface
|
|
2
|
+
interface TokenConfig {
|
|
3
3
|
readonly origin: string;
|
|
4
4
|
readonly secretKey: string;
|
|
5
5
|
readonly fetch?: typeof globalThis.fetch;
|
|
6
6
|
readonly abort?: AbortController;
|
|
7
7
|
readonly logger: PrimerLogger;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
readonly
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
readonly accessToken: string;
|
|
16
|
-
readonly expiresInSeconds: number;
|
|
17
|
-
}
|
|
18
|
-
declare function exchangeStudent(config: ExchangeConfig, studentId: string): Promise<SessionToken>;
|
|
19
|
-
declare function exchangeTimebackStudent(config: ExchangeConfig, sourcedId: string): Promise<TimebackSession>;
|
|
20
|
-
export type { ExchangeConfig, SessionToken, TimebackSession };
|
|
21
|
-
export { exchangeStudent, exchangeTimebackStudent };
|
|
9
|
+
type GetTokenInput = {
|
|
10
|
+
readonly verifiedEmail: string;
|
|
11
|
+
};
|
|
12
|
+
declare function getToken(config: TokenConfig, input: GetTokenInput): Promise<string>;
|
|
13
|
+
export type { GetTokenInput, TokenConfig };
|
|
14
|
+
export { getToken };
|
|
22
15
|
//# sourceMappingURL=exchange.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../../src/server/exchange.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exchange.d.ts","sourceRoot":"","sources":["../../src/server/exchange.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AAItE,UAAU,WAAW;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;CAC7B;AAED,KAAK,aAAa,GAAG;IACpB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAC9B,CAAA;AA4HD,iBAAe,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAclF;AAED,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,CAAA"}
|
package/dist/server/index.d.ts
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
1
|
export { createPrimerServer } from "./create-server";
|
|
2
|
-
export type { PrimerServer, PrimerServerConfig } from "./create-server";
|
|
3
|
-
export type { SessionToken, TimebackSession } from "./exchange";
|
|
4
|
-
export type { PlacementHints, PlacementHintsResult } from "./hints";
|
|
2
|
+
export type { GetTokenInput, PrimerServer, PrimerServerConfig } from "./create-server";
|
|
5
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAA;AACrF,YAAY,EACX,YAAY,EACZ,kBAAkB,EAClB,MAAM,kDAAkD,CAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kDAAkD,CAAA;AACrF,YAAY,EACX,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,MAAM,kDAAkD,CAAA"}
|