@superbuilders/primer-tives 3.6.0 → 3.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -13
- package/dist/client/auth/browser.d.ts +1 -4
- package/dist/client/auth/browser.d.ts.map +1 -1
- package/dist/client/auth/hosted-popup.d.ts.map +1 -1
- package/dist/client/auth/provider.d.ts.map +1 -1
- package/dist/client/index.js +175 -163
- package/dist/client/index.js.map +9 -10
- package/dist/client/start.d.ts +1 -1
- package/dist/client/start.d.ts.map +1 -1
- package/dist/client/transport.d.ts.map +1 -1
- package/dist/contracts/index.js +39 -1
- package/dist/contracts/index.js.map +2 -2
- package/dist/errors.js +39 -1
- package/dist/errors.js.map +2 -2
- package/dist/grade-level.js +39 -1
- package/dist/grade-level.js.map +2 -2
- package/dist/subject-pcis.js +39 -1
- package/dist/subject-pcis.js.map +2 -2
- package/dist/subject.js +39 -1
- package/dist/subject.js.map +2 -2
- package/dist/version.d.ts +1 -1
- package/package.json +1 -1
package/dist/client/index.js.map
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../src/errors.ts", "../src/contracts/content.ts", "../src/contracts/pci.ts", "../src/contracts/validation.ts", "../src/contracts/pci-schemas.ts", "../src/client/transport.ts", "../src/version.ts", "../src/client/session.ts", "../src/client/consumed.ts", "../src/client/choice-state.ts", "../src/client/extended-text-state.ts", "../src/client/feedback-state.ts", "../src/client/match-state.ts", "../src/client/observation-state.ts", "../src/client/order-state.ts", "../src/client/pci-state.ts", "../src/client/text-entry-state.ts", "../src/client/auth/provider.ts", "../src/client/auth/browser.ts", "../src/client/auth/
|
|
3
|
+
"sources": ["../src/errors.ts", "../src/contracts/content.ts", "../src/contracts/pci.ts", "../src/contracts/validation.ts", "../src/contracts/pci-schemas.ts", "../src/client/transport.ts", "../src/version.ts", "../src/client/session.ts", "../src/client/consumed.ts", "../src/client/choice-state.ts", "../src/client/extended-text-state.ts", "../src/client/feedback-state.ts", "../src/client/match-state.ts", "../src/client/observation-state.ts", "../src/client/order-state.ts", "../src/client/pci-state.ts", "../src/client/text-entry-state.ts", "../src/client/auth/provider.ts", "../src/client/auth/browser.ts", "../src/client/auth/hosted-popup.ts", "../src/client/auth/access-token.ts", "../src/client/auth/storage.ts", "../src/client/unauthenticated-state.ts", "../src/client/start.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
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 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\")\nconst ErrAuthUnavailable = errors.new(\"auth unavailable\")\nconst ErrAuthConfigInvalid = errors.new(\"auth config invalid\")\nconst ErrAuthCallbackInvalid = errors.new(\"auth callback invalid\")\nconst ErrAuthStateMismatch = errors.new(\"auth state mismatch\")\nconst ErrAuthPopupBlocked = errors.new(\"auth popup blocked\")\nconst ErrAuthCancelled = errors.new(\"auth cancelled\")\n\nconst ErrSdkUpgradeRequired = errors.new(\"sdk upgrade required\")\n\nexport {\n\tErrAuthCallbackInvalid,\n\tErrAuthCancelled,\n\tErrAuthConfigInvalid,\n\tErrAuthPopupBlocked,\n\tErrAuthStateMismatch,\n\tErrAuthUnavailable,\n\tErrBadRequest,\n\tErrConflict,\n\tErrForbidden,\n\tErrInvalidAccessToken,\n\tErrInvalidSubmission,\n\tErrJsonParse,\n\tErrMalformedAccessToken,\n\tErrNetwork,\n\tErrNotFound,\n\tErrNotSerializable,\n\tErrRateLimited,\n\tErrSdkUpgradeRequired,\n\tErrServerError,\n\tErrServiceUnavailable,\n\tErrTimeout,\n\tErrTokenExpired,\n\tErrUnsupportedPci\n}\n",
|
|
6
6
|
"type ContentSpan = { type: \"text\"; value: string } | { type: \"italic\"; value: string }\n\ntype ContentInline = ContentSpan | { type: \"latex\"; value: string }\n\ntype ContentBlock = { type: \"paragraph\"; children: ContentInline[] }\n\nfunction inlinesToPlainText(nodes: ContentInline[]): string {\n\tconst parts: string[] = []\n\tfor (const node of nodes) {\n\t\tswitch (node.type) {\n\t\t\tcase \"text\":\n\t\t\t\tparts.push(node.value)\n\t\t\t\tbreak\n\t\t\tcase \"italic\":\n\t\t\t\tparts.push(node.value)\n\t\t\t\tbreak\n\t\t\tcase \"latex\":\n\t\t\t\tparts.push(node.value)\n\t\t\t\tbreak\n\t\t}\n\t}\n\treturn parts.join(\"\")\n}\n\nfunction blocksToPlainText(blocks: ContentBlock[]): string {\n\treturn blocks\n\t\t.map(function blockText(block) {\n\t\t\treturn inlinesToPlainText(block.children)\n\t\t})\n\t\t.join(\"\\n\")\n}\n\nexport type { ContentBlock, ContentInline, ContentSpan }\nexport { blocksToPlainText, inlinesToPlainText }\n",
|
|
7
7
|
"type FractionInputForm = \"whole\" | \"proper\" | \"improper\" | \"mixed\"\n\ninterface FractionInputProps {\n\tform: FractionInputForm\n\trequireSimplified: boolean\n}\n\ntype FractionInputSubmission =\n\t| { form: \"whole\"; whole: string }\n\t| { form: \"proper\"; numerator: string; denominator: string }\n\t| { form: \"improper\"; numerator: string; denominator: string }\n\t| { form: \"mixed\"; whole: string; numerator: string; denominator: string }\n\ntype PciUrn = `urn:primer:pci:${string}`\n\nconst PCI_IDS = [\"urn:primer:pci:fraction-input\"] as const\n\ninterface PciRegistry {\n\t\"urn:primer:pci:fraction-input\": {\n\t\tprops: FractionInputProps\n\t\tvalue: FractionInputSubmission\n\t}\n}\n\ntype AssertAllPciUrns = keyof PciRegistry extends PciUrn ? true : never\nconst urnCheck: AssertAllPciUrns = true\nvoid urnCheck\n\ntype PciId = keyof PciRegistry & string\ntype PciProps<K extends PciId> = PciRegistry[K][\"props\"]\ntype PciValue<K extends PciId> = PciRegistry[K][\"value\"]\n\nfunction isPciId(value: string): value is PciId {\n\tfor (const id of PCI_IDS) {\n\t\tif (id === value) {\n\t\t\treturn true\n\t\t}\n\t}\n\treturn false\n}\n\nexport { PCI_IDS, isPciId }\n\nexport type {\n\tFractionInputForm,\n\tFractionInputProps,\n\tFractionInputSubmission,\n\tPciId,\n\tPciProps,\n\tPciRegistry,\n\tPciUrn,\n\tPciValue\n}\n",
|
|
8
8
|
"import { z } from \"zod\"\n\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\n\nimport { FractionInputSubmissionSchema } from \"@superbuilders/primer-tives/contracts/pci-schemas\"\nimport type {\n\tMatchPair,\n\tRendererChoice,\n\tRendererInteraction,\n\tRendererMatchChoice,\n\tRendererSubmission\n} from \"@superbuilders/primer-tives/contracts/types\"\n\nconst MatchPairSchema = z.object({\n\tsource: z.string(),\n\ttarget: z.string()\n})\n\nconst ChoiceSubmissionSchema = z.object({\n\ttype: z.literal(\"choice\"),\n\tselectedKeys: z.array(z.string())\n})\n\nconst TextEntrySubmissionSchema = z.object({\n\ttype: z.literal(\"text-entry\"),\n\tvalue: z.string()\n})\n\nconst ExtendedTextSubmissionSchema = z.object({\n\ttype: z.literal(\"extended-text\"),\n\tvalues: z.array(z.string()).min(1)\n})\n\nconst OrderSubmissionSchema = z.object({\n\ttype: z.literal(\"order\"),\n\torderedKeys: z.array(z.string())\n})\n\nconst MatchSubmissionSchema = z.object({\n\ttype: z.literal(\"match\"),\n\tpairs: z.array(MatchPairSchema)\n})\n\nconst FractionInputPciSubmissionSchema = z.object({\n\ttype: z.literal(\"portable-custom\"),\n\tpciId: z.literal(\"urn:primer:pci:fraction-input\"),\n\tvalue: FractionInputSubmissionSchema\n})\n\nconst RendererSubmissionSchema = z.union([\n\tChoiceSubmissionSchema,\n\tTextEntrySubmissionSchema,\n\tExtendedTextSubmissionSchema,\n\tOrderSubmissionSchema,\n\tMatchSubmissionSchema,\n\tFractionInputPciSubmissionSchema\n])\n\nfunction duplicates<T>(values: readonly T[], keyOf: (value: T) => string): string[] {\n\tconst seen = new Set<string>()\n\tconst duplicated = new Set<string>()\n\tfor (const value of values) {\n\t\tconst key = keyOf(value)\n\t\tif (seen.has(key)) {\n\t\t\tduplicated.add(key)\n\t\t\tcontinue\n\t\t}\n\t\tseen.add(key)\n\t}\n\treturn [...duplicated]\n}\n\nfunction findUnknownIds(values: readonly string[], choices: RendererChoice[]): string[] {\n\tconst ids = new Set(\n\t\tchoices.map(function getId(choice) {\n\t\t\treturn choice.identifier\n\t\t})\n\t)\n\treturn values.filter(function isUnknown(value) {\n\t\treturn !ids.has(value)\n\t})\n}\n\nfunction countByIdentifier(pairs: MatchPair[], side: \"source\" | \"target\"): Map<string, number> {\n\tconst counts = new Map<string, number>()\n\tfor (const pair of pairs) {\n\t\tconst key = pair[side]\n\t\tconst currentCount = counts.get(key)\n\t\tif (currentCount === undefined) {\n\t\t\tcounts.set(key, 1)\n\t\t\tcontinue\n\t\t}\n\t\tcounts.set(key, currentCount + 1)\n\t}\n\treturn counts\n}\n\nfunction validateUsageBounds(\n\tchoices: RendererMatchChoice[],\n\tcounts: Map<string, number>,\n\tside: \"source\" | \"target\"\n): string[] {\n\tconst issues: string[] = []\n\tfor (const choice of choices) {\n\t\tconst maybeCount = counts.get(choice.identifier)\n\t\tconst count = maybeCount === undefined ? 0 : maybeCount\n\t\tif (choice.matchMax !== 0 && count > choice.matchMax) {\n\t\t\tissues.push(`${side} '${choice.identifier}' used ${count} times, max ${choice.matchMax}`)\n\t\t}\n\t\tif (count < choice.matchMin) {\n\t\t\tissues.push(`${side} '${choice.identifier}' used ${count} times, min ${choice.matchMin}`)\n\t\t}\n\t}\n\treturn issues\n}\n\nfunction pciSubmissionSchema(pciId: PciId) {\n\tswitch (pciId) {\n\t\tcase \"urn:primer:pci:fraction-input\":\n\t\t\treturn FractionInputSubmissionSchema\n\t}\n\tconst exhaustiveCheck: never = pciId\n\treturn exhaustiveCheck\n}\n\ntype SubmissionValidationSuccess = {\n\tok: true\n\tvalue: RendererSubmission\n}\n\ntype SubmissionValidationFailure = {\n\tok: false\n\tissues: readonly string[]\n}\n\ntype SubmissionValidationResult = SubmissionValidationSuccess | SubmissionValidationFailure\n\nfunction typeMismatch(interactionType: string, submissionType: string): string {\n\treturn `submission type '${submissionType}' does not match interaction type '${interactionType}'`\n}\n\nfunction buildResult(\n\tsubmission: RendererSubmission,\n\tissues: readonly string[]\n): SubmissionValidationResult {\n\tif (issues.length > 0) {\n\t\treturn { ok: false, issues }\n\t}\n\treturn { ok: true, value: submission }\n}\n\nfunction validateChoice(\n\tinteraction: Extract<RendererInteraction, { type: \"choice\" }>,\n\tsubmission: Extract<RendererSubmission, { type: \"choice\" }>\n): readonly string[] {\n\tconst issues: string[] = []\n\tif (submission.selectedKeys.length < interaction.minChoices) {\n\t\tissues.push(`need at least ${interaction.minChoices} selections`)\n\t}\n\tif (submission.selectedKeys.length > interaction.maxChoices) {\n\t\tissues.push(`at most ${interaction.maxChoices} selections`)\n\t}\n\tconst duplicateKeys = duplicates(submission.selectedKeys, function keyOf(value) {\n\t\treturn value\n\t})\n\tif (duplicateKeys.length > 0) {\n\t\tissues.push(\"duplicate selections\")\n\t}\n\tconst unknownKeys = findUnknownIds(submission.selectedKeys, interaction.options)\n\tif (unknownKeys.length > 0) {\n\t\tissues.push(`unknown options: ${unknownKeys.join(\", \")}`)\n\t}\n\treturn issues\n}\n\nfunction validateExtendedText(\n\tinteraction: Extract<RendererInteraction, { type: \"extended-text\" }>,\n\tsubmission: Extract<RendererSubmission, { type: \"extended-text\" }>\n): readonly string[] {\n\tconst issues: string[] = []\n\tif (interaction.cardinality === \"single\") {\n\t\tif (submission.values.length !== 1) {\n\t\t\tissues.push(\"single-cardinality extended-text requires exactly one value\")\n\t\t}\n\t\treturn issues\n\t}\n\tif (submission.values.length < interaction.minStrings) {\n\t\tissues.push(`need at least ${interaction.minStrings} values`)\n\t}\n\tif (submission.values.length > interaction.maxStrings) {\n\t\tissues.push(`at most ${interaction.maxStrings} values`)\n\t}\n\tconst duplicateValues = duplicates(submission.values, function keyOf(value) {\n\t\treturn value\n\t})\n\tif (duplicateValues.length > 0) {\n\t\tissues.push(\"duplicate values are not allowed for multiple-cardinality extended-text\")\n\t}\n\treturn issues\n}\n\nfunction validateOrder(\n\tinteraction: Extract<RendererInteraction, { type: \"order\" }>,\n\tsubmission: Extract<RendererSubmission, { type: \"order\" }>\n): readonly string[] {\n\tconst issues: string[] = []\n\tif (submission.orderedKeys.length < interaction.minChoices) {\n\t\tissues.push(`need at least ${interaction.minChoices} selections`)\n\t}\n\tif (submission.orderedKeys.length > interaction.maxChoices) {\n\t\tissues.push(`at most ${interaction.maxChoices} selections`)\n\t}\n\tconst duplicateKeys = duplicates(submission.orderedKeys, function keyOf(value) {\n\t\treturn value\n\t})\n\tif (duplicateKeys.length > 0) {\n\t\tissues.push(\"duplicate selections\")\n\t}\n\tconst unknownKeys = findUnknownIds(submission.orderedKeys, interaction.choices)\n\tif (unknownKeys.length > 0) {\n\t\tissues.push(`unknown choices: ${unknownKeys.join(\", \")}`)\n\t}\n\treturn issues\n}\n\nfunction validateMatch(\n\tinteraction: Extract<RendererInteraction, { type: \"match\" }>,\n\tsubmission: Extract<RendererSubmission, { type: \"match\" }>\n): readonly string[] {\n\tconst issues: string[] = []\n\tif (submission.pairs.length < interaction.minAssociations) {\n\t\tissues.push(`need at least ${interaction.minAssociations} associations`)\n\t}\n\tif (submission.pairs.length > interaction.maxAssociations) {\n\t\tissues.push(`at most ${interaction.maxAssociations} associations`)\n\t}\n\tconst duplicatePairs = duplicates(submission.pairs, function keyOf(pair) {\n\t\treturn `${pair.source}->${pair.target}`\n\t})\n\tif (duplicatePairs.length > 0) {\n\t\tissues.push(\"duplicate associations are not allowed\")\n\t}\n\tconst sourceIds = new Set(\n\t\tinteraction.sourceChoices.map(function getId(choice) {\n\t\t\treturn choice.identifier\n\t\t})\n\t)\n\tconst targetIds = new Set(\n\t\tinteraction.targetChoices.map(function getId(choice) {\n\t\t\treturn choice.identifier\n\t\t})\n\t)\n\tfor (const pair of submission.pairs) {\n\t\tif (!sourceIds.has(pair.source)) {\n\t\t\tissues.push(`unknown source '${pair.source}'`)\n\t\t}\n\t\tif (!targetIds.has(pair.target)) {\n\t\t\tissues.push(`unknown target '${pair.target}'`)\n\t\t}\n\t}\n\tconst sourceCounts = countByIdentifier(submission.pairs, \"source\")\n\tconst targetCounts = countByIdentifier(submission.pairs, \"target\")\n\tissues.push(...validateUsageBounds(interaction.sourceChoices, sourceCounts, \"source\"))\n\tissues.push(...validateUsageBounds(interaction.targetChoices, targetCounts, \"target\"))\n\treturn issues\n}\n\nfunction validatePortableCustom(\n\tinteraction: Extract<RendererInteraction, { type: \"portable-custom\" }>,\n\tsubmission: Extract<RendererSubmission, { type: \"portable-custom\" }>\n): readonly string[] {\n\tif (submission.pciId !== interaction.pciId) {\n\t\treturn [\n\t\t\t`submission PCI '${submission.pciId}' does not match interaction PCI '${interaction.pciId}'`\n\t\t]\n\t}\n\tconst schema = pciSubmissionSchema(interaction.pciId)\n\tconst result = schema.safeParse(submission.value)\n\tif (!result.success) {\n\t\treturn result.error.issues.map(function toIssue(issue) {\n\t\t\treturn issue.message\n\t\t})\n\t}\n\treturn []\n}\n\nfunction validateSubmissionForInteraction(\n\tinteraction: RendererInteraction,\n\tsubmission: RendererSubmission\n): SubmissionValidationResult {\n\tswitch (interaction.type) {\n\t\tcase \"choice\":\n\t\t\tif (submission.type !== \"choice\") {\n\t\t\t\treturn { ok: false, issues: [typeMismatch(interaction.type, submission.type)] }\n\t\t\t}\n\t\t\treturn buildResult(submission, validateChoice(interaction, submission))\n\t\tcase \"text-entry\":\n\t\t\tif (submission.type !== \"text-entry\") {\n\t\t\t\treturn { ok: false, issues: [typeMismatch(interaction.type, submission.type)] }\n\t\t\t}\n\t\t\treturn { ok: true, value: submission }\n\t\tcase \"extended-text\":\n\t\t\tif (submission.type !== \"extended-text\") {\n\t\t\t\treturn { ok: false, issues: [typeMismatch(interaction.type, submission.type)] }\n\t\t\t}\n\t\t\treturn buildResult(submission, validateExtendedText(interaction, submission))\n\t\tcase \"order\":\n\t\t\tif (submission.type !== \"order\") {\n\t\t\t\treturn { ok: false, issues: [typeMismatch(interaction.type, submission.type)] }\n\t\t\t}\n\t\t\treturn buildResult(submission, validateOrder(interaction, submission))\n\t\tcase \"match\":\n\t\t\tif (submission.type !== \"match\") {\n\t\t\t\treturn { ok: false, issues: [typeMismatch(interaction.type, submission.type)] }\n\t\t\t}\n\t\t\treturn buildResult(submission, validateMatch(interaction, submission))\n\t\tcase \"portable-custom\":\n\t\t\tif (submission.type !== \"portable-custom\") {\n\t\t\t\treturn { ok: false, issues: [typeMismatch(interaction.type, submission.type)] }\n\t\t\t}\n\t\t\treturn buildResult(submission, validatePortableCustom(interaction, submission))\n\t}\n}\n\nfunction submissionValidationMessage(result: SubmissionValidationFailure): string {\n\treturn result.issues.join(\"; \")\n}\n\nexport {\n\tChoiceSubmissionSchema,\n\tExtendedTextSubmissionSchema,\n\tFractionInputPciSubmissionSchema,\n\tMatchPairSchema,\n\tMatchSubmissionSchema,\n\tOrderSubmissionSchema,\n\tRendererSubmissionSchema,\n\tTextEntrySubmissionSchema,\n\tsubmissionValidationMessage,\n\tvalidateSubmissionForInteraction\n}\nexport type { SubmissionValidationFailure, SubmissionValidationResult, SubmissionValidationSuccess }\n",
|
|
9
9
|
"import { z } from \"zod\"\n\nconst FractionInputPropsSchema = z.object({\n\tform: z.enum([\"whole\", \"proper\", \"improper\", \"mixed\"]),\n\trequireSimplified: z.boolean()\n})\n\nconst FractionInputSubmissionSchema = z.discriminatedUnion(\"form\", [\n\tz.object({ form: z.literal(\"whole\"), whole: z.string() }),\n\tz.object({\n\t\tform: z.literal(\"proper\"),\n\t\tnumerator: z.string(),\n\t\tdenominator: z.string()\n\t}),\n\tz.object({\n\t\tform: z.literal(\"improper\"),\n\t\tnumerator: z.string(),\n\t\tdenominator: z.string()\n\t}),\n\tz.object({\n\t\tform: z.literal(\"mixed\"),\n\t\twhole: z.string(),\n\t\tnumerator: z.string(),\n\t\tdenominator: z.string()\n\t})\n])\n\nexport { FractionInputPropsSchema, FractionInputSubmissionSchema }\n",
|
|
10
|
-
"import * as errors from \"@superbuilders/errors\"\nimport {\n\tErrBadRequest,\n\tErrConflict,\n\tErrForbidden,\n\tErrInvalidAccessToken,\n\tErrJsonParse,\n\tErrNetwork,\n\tErrNotFound,\n\tErrRateLimited,\n\tErrSdkUpgradeRequired,\n\tErrServerError,\n\tErrServiceUnavailable,\n\tErrTimeout,\n\tErrTokenExpired\n} from \"@superbuilders/primer-tives/errors\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type { SessionContext, WireIntent } from \"@superbuilders/primer-tives/client/session-context\"\nimport type { RuntimeSubjectScope } from \"@superbuilders/primer-tives/client/runtime-subject\"\nimport type { ContentBlock, ContentInline } from \"@superbuilders/primer-tives/contracts/content\"\nimport type {\n\tRendererInteraction,\n\tRendererStimulus,\n\tRendererSubmission\n} from \"@superbuilders/primer-tives/contracts/types\"\nimport type { InteractionReview } from \"@superbuilders/primer-tives/contracts/review\"\nimport { NPM_PACKAGE_URL, SDK_VERSION } from \"@superbuilders/primer-tives/version\"\nimport type { ResolvedAccessToken } from \"@superbuilders/primer-tives/client/auth/access-token\"\n\nconst ADVANCE_PATH = \"/api/v0/advance\"\n\ninterface WireFrame<Pcis extends PciId = PciId> {\n\tbody: ContentBlock[]\n\tstimulus: RendererStimulus | null\n\tinteraction: RendererInteraction<Pcis> | null\n}\n\ntype WireResult<Pcis extends PciId = PciId> =\n\t| {\n\t\t\toutcome: \"advanced\"\n\t\t\tframe: WireFrame<Pcis>\n\t }\n\t| {\n\t\t\toutcome: \"submitted\"\n\t\t\tframe: WireFrame<Pcis>\n\t\t\tsubmission: RendererSubmission<Pcis>\n\t\t\tisCorrect: boolean\n\t\t\tfeedbackContent: ContentInline[]\n\t\t\treview: InteractionReview<Pcis> | null\n\t }\n\t| { outcome: \"completed\" }\n\ninterface WireRequestBody<Pcis extends PciId = PciId> {\n\tsubject: RuntimeSubjectScope\n\tintent: WireIntent<Pcis>\n}\n\ntype TransportResult<Pcis extends PciId = PciId> =\n\t| { ok: true; data: WireResult<Pcis> }\n\t| { ok: false; error: Error }\n\ninterface TransportConfig {\n\treadonly accessToken: ResolvedAccessToken\n\treadonly publishableKey: string\n\treadonly subject: RuntimeSubjectScope\n\treadonly origin: string\n\treadonly fetch?: typeof globalThis.fetch\n\treadonly abort?: AbortController\n\treadonly logger: SessionContext[\"logger\"]\n}\n\ntype AdvanceErrorBody = {\n\terror?: string\n\tdetail?: string\n\tminimumSdkVersion?: string\n\treceivedSdkVersion?: string\n\tupgradeUrl?: string\n}\n\nfunction readStringField(value: object, key: string): string | undefined {\n\tif (!(key in value)) {\n\t\treturn undefined\n\t}\n\tconst v: unknown = Reflect.get(value, key)\n\tif (typeof v !== \"string\") {\n\t\treturn undefined\n\t}\n\treturn v\n}\n\nfunction parseAdvanceErrorBody(body: string): AdvanceErrorBody | null {\n\tif (body.length === 0) {\n\t\treturn null\n\t}\n\tconst parsed = errors.trySync(function parseJson() {\n\t\treturn JSON.parse(body)\n\t})\n\tif (parsed.error) {\n\t\treturn null\n\t}\n\tconst raw: unknown = parsed.data\n\tif (typeof raw !== \"object\" || raw === null) {\n\t\treturn null\n\t}\n\tconst result: AdvanceErrorBody = {}\n\tconst error = readStringField(raw, \"error\")\n\tif (error !== undefined) {\n\t\tresult.error = error\n\t}\n\tconst detail = readStringField(raw, \"detail\")\n\tif (detail !== undefined) {\n\t\tresult.detail = detail\n\t}\n\tconst minimumSdkVersion = readStringField(raw, \"minimumSdkVersion\")\n\tif (minimumSdkVersion !== undefined) {\n\t\tresult.minimumSdkVersion = minimumSdkVersion\n\t}\n\tconst receivedSdkVersion = readStringField(raw, \"receivedSdkVersion\")\n\tif (receivedSdkVersion !== undefined) {\n\t\tresult.receivedSdkVersion = receivedSdkVersion\n\t}\n\tconst upgradeUrl = readStringField(raw, \"upgradeUrl\")\n\tif (upgradeUrl !== undefined) {\n\t\tresult.upgradeUrl = upgradeUrl\n\t}\n\treturn result\n}\n\nfunction httpSentinel(status: number, body: string): Error {\n\tif (status === 400) {\n\t\tconst parsed = parseAdvanceErrorBody(body)\n\t\tif (parsed?.error === \"sdk_upgrade_required\") {\n\t\t\treturn ErrSdkUpgradeRequired\n\t\t}\n\t\treturn ErrBadRequest\n\t}\n\tif (status === 401) {\n\t\tconst parsed = parseAdvanceErrorBody(body)\n\t\tif (parsed?.detail === \"token_expired\") {\n\t\t\treturn ErrTokenExpired\n\t\t}\n\t\treturn ErrInvalidAccessToken\n\t}\n\tif (status === 403) {\n\t\treturn ErrForbidden\n\t}\n\tif (status === 404) {\n\t\treturn ErrNotFound\n\t}\n\tif (status === 409) {\n\t\treturn ErrConflict\n\t}\n\tif (status === 429) {\n\t\treturn ErrRateLimited\n\t}\n\tif (status === 502 || status === 503 || status === 504) {\n\t\treturn ErrServiceUnavailable\n\t}\n\treturn ErrServerError\n}\n\nfunction buildSdkUpgradeRequiredError(\n\tsentinel: Error,\n\ttext: string,\n\tlogger: SessionContext[\"logger\"]\n): Error {\n\tconst parsed = parseAdvanceErrorBody(text)\n\tif (parsed === null) {\n\t\tlogger.error(\"sdk upgrade required\", {\n\t\t\treceivedSdkVersion: null,\n\t\t\tminimumSdkVersion: \"<unknown>\",\n\t\t\tupgradeUrl: NPM_PACKAGE_URL\n\t\t})\n\t\tconst message = `<missing> < <unknown>; bump @superbuilders/primer-tives at ${NPM_PACKAGE_URL}`\n\t\treturn errors.wrap(sentinel, message)\n\t}\n\tconst minimumSdkVersion =\n\t\tparsed.minimumSdkVersion === undefined ? \"<unknown>\" : parsed.minimumSdkVersion\n\tconst receivedSdkVersion =\n\t\tparsed.receivedSdkVersion === undefined ? null : parsed.receivedSdkVersion\n\tconst receivedDisplay = receivedSdkVersion === null ? \"<missing>\" : receivedSdkVersion\n\tconst upgradeUrl = parsed.upgradeUrl === undefined ? NPM_PACKAGE_URL : parsed.upgradeUrl\n\tlogger.error(\"sdk upgrade required\", {\n\t\treceivedSdkVersion,\n\t\tminimumSdkVersion,\n\t\tupgradeUrl\n\t})\n\tconst message = `${receivedDisplay} < ${minimumSdkVersion}; bump @superbuilders/primer-tives at ${upgradeUrl}`\n\treturn errors.wrap(sentinel, message)\n}\n\nfunction isAbortError(err: unknown): boolean {\n\tif (err instanceof DOMException && err.name === \"AbortError\") {\n\t\treturn true\n\t}\n\tif (err instanceof DOMException && err.name === \"TimeoutError\") {\n\t\treturn true\n\t}\n\treturn false\n}\n\nfunction createTransport<Pcis extends PciId>(tc: TransportConfig) {\n\tconst fetchFn = tc.fetch ? tc.fetch : globalThis.fetch\n\tconst logger = tc.logger\n\n\tfunction transportSignal(): AbortSignal | undefined {\n\t\tif (tc.abort) {\n\t\t\treturn tc.abort.signal\n\t\t}\n\t\treturn undefined\n\t}\n\n\tasync function transport(body: WireRequestBody<Pcis>): Promise<TransportResult<Pcis>> {\n\t\tlogger.debug(\"transport request\", {\n\t\t\tintentKind: body.intent.kind,\n\t\t\tsubject: body.subject\n\t\t})\n\n\t\tconst url = `${tc.origin}${ADVANCE_PATH}`\n\t\tconst fetchResult = await fetchFn(url, {\n\t\t\tmethod: \"POST\",\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\tAuthorization: `Bearer ${tc.accessToken.value}`,\n\t\t\t\t\"X-Primer-Publishable-Key\": tc.publishableKey,\n\t\t\t\t\"X-Primer-SDK-Version\": SDK_VERSION\n\t\t\t},\n\t\t\tbody: JSON.stringify(body),\n\t\t\tsignal: transportSignal()\n\t\t}).then(\n\t\t\tfunction ok(r: Response) {\n\t\t\t\treturn { ok: true, response: r } as const\n\t\t\t},\n\t\t\tfunction fail(err: Error) {\n\t\t\t\treturn { ok: false, error: err } as const\n\t\t\t}\n\t\t)\n\n\t\tif (!fetchResult.ok) {\n\t\t\tif (isAbortError(fetchResult.error)) {\n\t\t\t\tlogger.error(\"transport timeout\", {\n\t\t\t\t\tintentKind: body.intent.kind\n\t\t\t\t})\n\t\t\t\treturn { ok: false, error: errors.wrap(ErrTimeout, fetchResult.error.message) }\n\t\t\t}\n\t\t\tlogger.error(\"transport network error\", {\n\t\t\t\terror: fetchResult.error\n\t\t\t})\n\t\t\treturn { ok: false, error: errors.wrap(ErrNetwork, fetchResult.error.message) }\n\t\t}\n\n\t\tconst res = fetchResult.response\n\n\t\tif (!res.ok) {\n\t\t\tconst text = await res.text().catch(function fallback() {\n\t\t\t\treturn \"\"\n\t\t\t})\n\t\t\tconst sentinel = httpSentinel(res.status, text)\n\t\t\tif (errors.is(sentinel, ErrSdkUpgradeRequired)) {\n\t\t\t\treturn { ok: false, error: buildSdkUpgradeRequiredError(sentinel, text, logger) }\n\t\t\t}\n\t\t\tlogger.error(\"transport http error\", {\n\t\t\t\tstatus: res.status,\n\t\t\t\tbody: text,\n\t\t\t\tintentKind: body.intent.kind,\n\t\t\t\tsubject: body.subject\n\t\t\t})\n\t\t\treturn { ok: false, error: errors.wrap(sentinel, text) }\n\t\t}\n\n\t\tconst jsonResult = await res.json().then(\n\t\t\tfunction ok(data: WireResult<Pcis>) {\n\t\t\t\treturn { ok: true, data } as const\n\t\t\t},\n\t\t\tfunction fail(err: Error) {\n\t\t\t\treturn { ok: false, error: err } as const\n\t\t\t}\n\t\t)\n\n\t\tif (!jsonResult.ok) {\n\t\t\tlogger.error(\"transport json parse failed\", {\n\t\t\t\terror: jsonResult.error\n\t\t\t})\n\t\t\treturn { ok: false, error: errors.wrap(ErrJsonParse, jsonResult.error.message) }\n\t\t}\n\n\t\tlogger.debug(\"transport success\", {\n\t\t\tintentKind: body.intent.kind\n\t\t})\n\n\t\treturn { ok: true, data: jsonResult.data }\n\t}\n\n\treturn transport\n}\n\nexport { createTransport, httpSentinel, isAbortError }\nexport type { TransportConfig, TransportResult, WireRequestBody, WireResult }\n",
|
|
11
|
-
"const SDK_VERSION = \"3.
|
|
10
|
+
"import * as errors from \"@superbuilders/errors\"\nimport {\n\tErrBadRequest,\n\tErrConflict,\n\tErrForbidden,\n\tErrInvalidAccessToken,\n\tErrJsonParse,\n\tErrNetwork,\n\tErrNotFound,\n\tErrRateLimited,\n\tErrSdkUpgradeRequired,\n\tErrServerError,\n\tErrServiceUnavailable,\n\tErrTimeout,\n\tErrTokenExpired\n} from \"@superbuilders/primer-tives/errors\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type { SessionContext, WireIntent } from \"@superbuilders/primer-tives/client/session-context\"\nimport type { RuntimeSubjectScope } from \"@superbuilders/primer-tives/client/runtime-subject\"\nimport type { ContentBlock, ContentInline } from \"@superbuilders/primer-tives/contracts/content\"\nimport type {\n\tRendererInteraction,\n\tRendererStimulus,\n\tRendererSubmission\n} from \"@superbuilders/primer-tives/contracts/types\"\nimport type { InteractionReview } from \"@superbuilders/primer-tives/contracts/review\"\nimport { NPM_PACKAGE_URL, SDK_VERSION } from \"@superbuilders/primer-tives/version\"\nimport type { ResolvedAccessToken } from \"@superbuilders/primer-tives/client/auth/access-token\"\n\nconst ADVANCE_PATH = \"/api/v0/advance\"\n\ninterface WireFrame<Pcis extends PciId = PciId> {\n\tbody: ContentBlock[]\n\tstimulus: RendererStimulus | null\n\tinteraction: RendererInteraction<Pcis> | null\n}\n\ntype WireResult<Pcis extends PciId = PciId> =\n\t| {\n\t\t\toutcome: \"advanced\"\n\t\t\tframe: WireFrame<Pcis>\n\t }\n\t| {\n\t\t\toutcome: \"submitted\"\n\t\t\tframe: WireFrame<Pcis>\n\t\t\tsubmission: RendererSubmission<Pcis>\n\t\t\tisCorrect: boolean\n\t\t\tfeedbackContent: ContentInline[]\n\t\t\treview: InteractionReview<Pcis> | null\n\t }\n\t| { outcome: \"completed\" }\n\ninterface WireRequestBody<Pcis extends PciId = PciId> {\n\tsubject: RuntimeSubjectScope\n\tintent: WireIntent<Pcis>\n}\n\ntype TransportResult<Pcis extends PciId = PciId> =\n\t| { ok: true; data: WireResult<Pcis> }\n\t| { ok: false; error: Error }\n\ninterface TransportConfig {\n\treadonly accessToken: ResolvedAccessToken\n\treadonly publishableKey: string\n\treadonly subject: RuntimeSubjectScope\n\treadonly origin: string\n\treadonly fetch?: typeof globalThis.fetch\n\treadonly abort?: AbortController\n\treadonly logger: SessionContext[\"logger\"]\n}\n\ntype AdvanceErrorBody = {\n\terror?: string\n\tdetail?: string\n\tminimumSdkVersion?: string\n\treceivedSdkVersion?: string\n\tupgradeUrl?: string\n}\n\nfunction readStringField(value: object, key: string): string | undefined {\n\tif (!(key in value)) {\n\t\treturn undefined\n\t}\n\tconst v: unknown = Reflect.get(value, key)\n\tif (typeof v !== \"string\") {\n\t\treturn undefined\n\t}\n\treturn v\n}\n\nfunction parseAdvanceErrorBody(body: string): AdvanceErrorBody | null {\n\tif (body.length === 0) {\n\t\treturn null\n\t}\n\tconst parsed = errors.trySync(function parseJson() {\n\t\treturn JSON.parse(body)\n\t})\n\tif (parsed.error) {\n\t\treturn null\n\t}\n\tconst raw: unknown = parsed.data\n\tif (typeof raw !== \"object\" || raw === null) {\n\t\treturn null\n\t}\n\tconst result: AdvanceErrorBody = {}\n\tconst error = readStringField(raw, \"error\")\n\tif (error !== undefined) {\n\t\tresult.error = error\n\t}\n\tconst detail = readStringField(raw, \"detail\")\n\tif (detail !== undefined) {\n\t\tresult.detail = detail\n\t}\n\tconst minimumSdkVersion = readStringField(raw, \"minimumSdkVersion\")\n\tif (minimumSdkVersion !== undefined) {\n\t\tresult.minimumSdkVersion = minimumSdkVersion\n\t}\n\tconst receivedSdkVersion = readStringField(raw, \"receivedSdkVersion\")\n\tif (receivedSdkVersion !== undefined) {\n\t\tresult.receivedSdkVersion = receivedSdkVersion\n\t}\n\tconst upgradeUrl = readStringField(raw, \"upgradeUrl\")\n\tif (upgradeUrl !== undefined) {\n\t\tresult.upgradeUrl = upgradeUrl\n\t}\n\treturn result\n}\n\nfunction httpSentinel(status: number, body: string): Error {\n\tif (status === 400) {\n\t\tconst parsed = parseAdvanceErrorBody(body)\n\t\tif (parsed?.error === \"sdk_upgrade_required\") {\n\t\t\treturn ErrSdkUpgradeRequired\n\t\t}\n\t\treturn ErrBadRequest\n\t}\n\tif (status === 401) {\n\t\tconst parsed = parseAdvanceErrorBody(body)\n\t\tif (parsed?.detail === \"token_expired\") {\n\t\t\treturn ErrTokenExpired\n\t\t}\n\t\treturn ErrInvalidAccessToken\n\t}\n\tif (status === 403) {\n\t\treturn ErrForbidden\n\t}\n\tif (status === 404) {\n\t\treturn ErrNotFound\n\t}\n\tif (status === 409) {\n\t\treturn ErrConflict\n\t}\n\tif (status === 429) {\n\t\treturn ErrRateLimited\n\t}\n\tif (status === 502 || status === 503 || status === 504) {\n\t\treturn ErrServiceUnavailable\n\t}\n\treturn ErrServerError\n}\n\nfunction buildSdkUpgradeRequiredError(\n\tsentinel: Error,\n\ttext: string,\n\tlogger: SessionContext[\"logger\"]\n): Error {\n\tconst parsed = parseAdvanceErrorBody(text)\n\tif (parsed === null) {\n\t\tlogger.error(\"sdk upgrade required\", {\n\t\t\treceivedSdkVersion: null,\n\t\t\tminimumSdkVersion: \"<unknown>\",\n\t\t\tupgradeUrl: NPM_PACKAGE_URL\n\t\t})\n\t\tconst message = `<missing> < <unknown>; bump @superbuilders/primer-tives at ${NPM_PACKAGE_URL}`\n\t\treturn errors.wrap(sentinel, message)\n\t}\n\tconst minimumSdkVersion =\n\t\tparsed.minimumSdkVersion === undefined ? \"<unknown>\" : parsed.minimumSdkVersion\n\tconst receivedSdkVersion =\n\t\tparsed.receivedSdkVersion === undefined ? null : parsed.receivedSdkVersion\n\tconst receivedDisplay = receivedSdkVersion === null ? \"<missing>\" : receivedSdkVersion\n\tconst upgradeUrl = parsed.upgradeUrl === undefined ? NPM_PACKAGE_URL : parsed.upgradeUrl\n\tlogger.error(\"sdk upgrade required\", {\n\t\treceivedSdkVersion,\n\t\tminimumSdkVersion,\n\t\tupgradeUrl\n\t})\n\tconst message = `${receivedDisplay} < ${minimumSdkVersion}; bump @superbuilders/primer-tives at ${upgradeUrl}`\n\treturn errors.wrap(sentinel, message)\n}\n\nfunction isAbortError(err: unknown): boolean {\n\tif (err instanceof DOMException && err.name === \"AbortError\") {\n\t\treturn true\n\t}\n\tif (err instanceof DOMException && err.name === \"TimeoutError\") {\n\t\treturn true\n\t}\n\treturn false\n}\n\nfunction createTransport<Pcis extends PciId>(tc: TransportConfig) {\n\tconst fetchFn = tc.fetch ? tc.fetch : globalThis.fetch\n\tconst logger = tc.logger\n\n\tfunction transportSignal(): AbortSignal | undefined {\n\t\tif (tc.abort) {\n\t\t\treturn tc.abort.signal\n\t\t}\n\t\treturn undefined\n\t}\n\n\tasync function transport(body: WireRequestBody<Pcis>): Promise<TransportResult<Pcis>> {\n\t\tlogger.debug(\"transport request\", {\n\t\t\tintentKind: body.intent.kind,\n\t\t\tsubject: body.subject\n\t\t})\n\n\t\tconst url = `${tc.origin}${ADVANCE_PATH}`\n\t\tconst fetchResult = await fetchFn(url, {\n\t\t\tmethod: \"POST\",\n\t\t\tmode: \"cors\",\n\t\t\tcredentials: \"omit\",\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\tAuthorization: `Bearer ${tc.accessToken.value}`,\n\t\t\t\t\"X-Primer-Publishable-Key\": tc.publishableKey,\n\t\t\t\t\"X-Primer-SDK-Version\": SDK_VERSION\n\t\t\t},\n\t\t\tbody: JSON.stringify(body),\n\t\t\tsignal: transportSignal()\n\t\t}).then(\n\t\t\tfunction ok(r: Response) {\n\t\t\t\treturn { ok: true, response: r } as const\n\t\t\t},\n\t\t\tfunction fail(err: Error) {\n\t\t\t\treturn { ok: false, error: err } as const\n\t\t\t}\n\t\t)\n\n\t\tif (!fetchResult.ok) {\n\t\t\tif (isAbortError(fetchResult.error)) {\n\t\t\t\tlogger.error(\"transport timeout\", {\n\t\t\t\t\tintentKind: body.intent.kind\n\t\t\t\t})\n\t\t\t\treturn { ok: false, error: errors.wrap(ErrTimeout, fetchResult.error.message) }\n\t\t\t}\n\t\t\tlogger.error(\"transport network error\", {\n\t\t\t\terror: fetchResult.error\n\t\t\t})\n\t\t\treturn { ok: false, error: errors.wrap(ErrNetwork, fetchResult.error.message) }\n\t\t}\n\n\t\tconst res = fetchResult.response\n\n\t\tif (!res.ok) {\n\t\t\tconst text = await res.text().catch(function fallback() {\n\t\t\t\treturn \"\"\n\t\t\t})\n\t\t\tconst sentinel = httpSentinel(res.status, text)\n\t\t\tif (errors.is(sentinel, ErrSdkUpgradeRequired)) {\n\t\t\t\treturn { ok: false, error: buildSdkUpgradeRequiredError(sentinel, text, logger) }\n\t\t\t}\n\t\t\tlogger.error(\"transport http error\", {\n\t\t\t\tstatus: res.status,\n\t\t\t\tbody: text,\n\t\t\t\tintentKind: body.intent.kind,\n\t\t\t\tsubject: body.subject\n\t\t\t})\n\t\t\treturn { ok: false, error: errors.wrap(sentinel, text) }\n\t\t}\n\n\t\tconst jsonResult = await res.json().then(\n\t\t\tfunction ok(data: WireResult<Pcis>) {\n\t\t\t\treturn { ok: true, data } as const\n\t\t\t},\n\t\t\tfunction fail(err: Error) {\n\t\t\t\treturn { ok: false, error: err } as const\n\t\t\t}\n\t\t)\n\n\t\tif (!jsonResult.ok) {\n\t\t\tlogger.error(\"transport json parse failed\", {\n\t\t\t\terror: jsonResult.error\n\t\t\t})\n\t\t\treturn { ok: false, error: errors.wrap(ErrJsonParse, jsonResult.error.message) }\n\t\t}\n\n\t\tlogger.debug(\"transport success\", {\n\t\t\tintentKind: body.intent.kind\n\t\t})\n\n\t\treturn { ok: true, data: jsonResult.data }\n\t}\n\n\treturn transport\n}\n\nexport { createTransport, httpSentinel, isAbortError }\nexport type { TransportConfig, TransportResult, WireRequestBody, WireResult }\n",
|
|
11
|
+
"const SDK_VERSION = \"3.7.1\"\nconst NPM_PACKAGE_URL = \"https://www.npmjs.com/package/@superbuilders/primer-tives\"\n\nexport { NPM_PACKAGE_URL, SDK_VERSION }\n",
|
|
12
12
|
"import * as errors from \"@superbuilders/errors\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport {\n\tErrBadRequest,\n\tErrForbidden,\n\tErrInvalidAccessToken,\n\tErrInvalidSubmission,\n\tErrNotFound,\n\tErrSdkUpgradeRequired,\n\tErrTokenExpired,\n\tErrUnsupportedPci\n} from \"@superbuilders/primer-tives/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type {\n\tSessionContext,\n\tTransitionPhase,\n\tWireIntent\n} from \"@superbuilders/primer-tives/client/session-context\"\nimport type {\n\tTransportResult,\n\tWireRequestBody,\n\tWireResult\n} from \"@superbuilders/primer-tives/client/transport\"\nimport type { RuntimeSubjectScope } from \"@superbuilders/primer-tives/client/runtime-subject\"\n\nimport type { ContentBlock } from \"@superbuilders/primer-tives/contracts/content\"\nimport type {\n\tRendererInteraction,\n\tRendererStimulus\n} from \"@superbuilders/primer-tives/contracts/types\"\nimport type { ErroredState, PrimerState } from \"@superbuilders/primer-tives/client/types\"\nimport { choiceState } from \"@superbuilders/primer-tives/client/choice-state\"\nimport { extendedTextState } from \"@superbuilders/primer-tives/client/extended-text-state\"\nimport { feedbackState } from \"@superbuilders/primer-tives/client/feedback-state\"\nimport { matchState } from \"@superbuilders/primer-tives/client/match-state\"\nimport { observationState } from \"@superbuilders/primer-tives/client/observation-state\"\nimport { orderState } from \"@superbuilders/primer-tives/client/order-state\"\nimport { pciInteractionState } from \"@superbuilders/primer-tives/client/pci-state\"\nimport { textEntryState } from \"@superbuilders/primer-tives/client/text-entry-state\"\n\ninterface SessionConfig<Pcis extends PciId = PciId> {\n\treadonly supportedPcis: readonly Pcis[]\n\treadonly subject: RuntimeSubjectScope\n\treadonly logger: PrimerLogger\n\treadonly transport: (body: WireRequestBody<Pcis>) => Promise<TransportResult<Pcis>>\n}\n\nconst FATAL_SENTINELS = [\n\tErrBadRequest,\n\tErrInvalidAccessToken,\n\tErrTokenExpired,\n\tErrForbidden,\n\tErrNotFound,\n\tErrSdkUpgradeRequired,\n\tErrUnsupportedPci\n]\n\nfunction isFatalError(err: Error): boolean {\n\tfor (const sentinel of FATAL_SENTINELS) {\n\t\tif (errors.is(err, sentinel)) {\n\t\t\treturn true\n\t\t}\n\t}\n\treturn false\n}\n\nfunction isRetriableError(err: Error): boolean {\n\treturn !errors.is(err, ErrInvalidSubmission)\n}\n\nfunction makeSession<Pcis extends PciId>(sc: SessionConfig<Pcis>) {\n\tconst logger = sc.logger\n\n\tfunction resolve(result: WireResult<Pcis>): PrimerState<Pcis> {\n\t\tswitch (result.outcome) {\n\t\t\tcase \"advanced\":\n\t\t\t\treturn fromAdvanced(result.frame.body, result.frame.stimulus, result.frame.interaction)\n\t\t\tcase \"submitted\": {\n\t\t\t\tconst interaction = result.frame.interaction\n\t\t\t\tif (interaction === null) {\n\t\t\t\t\tlogger.error(\"submitted result without interaction\")\n\t\t\t\t\treturn {\n\t\t\t\t\t\tphase: \"fatal\",\n\t\t\t\t\t\terror: errors.wrap(ErrBadRequest, \"submitted result missing interaction\"),\n\t\t\t\t\t\tretriable: false,\n\t\t\t\t\t\ttoJSON: poisonToJSON\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn feedbackState(\n\t\t\t\t\tctx,\n\t\t\t\t\tresult.frame.body,\n\t\t\t\t\tresult.frame.stimulus,\n\t\t\t\t\tinteraction,\n\t\t\t\t\tresult.submission,\n\t\t\t\t\tresult.isCorrect,\n\t\t\t\t\tresult.feedbackContent,\n\t\t\t\t\tresult.review\n\t\t\t\t)\n\t\t\t}\n\t\t\tcase \"completed\":\n\t\t\t\treturn { phase: \"completed\", toJSON: poisonToJSON }\n\t\t}\n\t}\n\n\tfunction errored(\n\t\terror: Error,\n\t\tfailedPhase: TransitionPhase,\n\t\tintent: WireIntent<Pcis>\n\t): ErroredState<Pcis> {\n\t\tlet pending: Promise<PrimerState<Pcis>> | undefined\n\t\tconst retriable = isRetriableError(error)\n\t\tconst state: ErroredState<Pcis> = {\n\t\t\tphase: \"errored\",\n\t\t\terror,\n\t\t\tretriable,\n\t\t\tretry: function retry() {\n\t\t\t\tif (!retriable) {\n\t\t\t\t\tlogger.debug(\"retry ignored for non-retriable error\", { failedPhase })\n\t\t\t\t\treturn Promise.resolve(state)\n\t\t\t\t}\n\t\t\t\tif (pending) {\n\t\t\t\t\treturn pending\n\t\t\t\t}\n\t\t\t\tlogger.debug(\"retrying from errored state\", { failedPhase })\n\t\t\t\tpending = execute(intent, failedPhase)\n\t\t\t\treturn pending\n\t\t\t},\n\t\t\ttoJSON: poisonToJSON\n\t\t}\n\t\treturn state\n\t}\n\n\tasync function execute(\n\t\tintent: WireIntent<Pcis>,\n\t\tphase: TransitionPhase\n\t): Promise<PrimerState<Pcis>> {\n\t\tlogger.debug(\"session execute\", {\n\t\t\tphase,\n\t\t\tintentKind: intent.kind,\n\t\t\tsubject: sc.subject\n\t\t})\n\t\tconst body: WireRequestBody<Pcis> = {\n\t\t\tsubject: sc.subject,\n\t\t\tintent\n\t\t}\n\n\t\tconst result = await sc.transport(body)\n\t\tif (!result.ok) {\n\t\t\tif (isFatalError(result.error)) {\n\t\t\t\tlogger.error(\"fatal transport error\", {\n\t\t\t\t\terror: result.error,\n\t\t\t\t\tphase,\n\t\t\t\t\tintentKind: intent.kind\n\t\t\t\t})\n\t\t\t\treturn {\n\t\t\t\t\tphase: \"fatal\",\n\t\t\t\t\terror: result.error,\n\t\t\t\t\tretriable: false,\n\t\t\t\t\ttoJSON: poisonToJSON\n\t\t\t\t}\n\t\t\t}\n\t\t\tlogger.warn(\"retriable transport error\", {\n\t\t\t\terror: result.error,\n\t\t\t\tphase,\n\t\t\t\tintentKind: intent.kind\n\t\t\t})\n\t\t\treturn errored(result.error, phase, intent)\n\t\t}\n\n\t\tconst next = resolve(result.data)\n\t\tlogger.debug(\"session execute resolved\", {\n\t\t\tphase,\n\t\t\tintentKind: intent.kind,\n\t\t\toutcome: result.data.outcome,\n\t\t\tnextPhase: next.phase\n\t\t})\n\t\treturn next\n\t}\n\n\tfunction isPciSupported(pciId: string): boolean {\n\t\tfor (const id of sc.supportedPcis) {\n\t\t\tif (id === pciId) {\n\t\t\t\treturn true\n\t\t\t}\n\t\t}\n\t\treturn false\n\t}\n\n\tfunction fromAdvanced(\n\t\tbody: ContentBlock[],\n\t\tstimulus: RendererStimulus | null,\n\t\tinteraction: RendererInteraction<Pcis> | null\n\t): PrimerState<Pcis> {\n\t\tif (interaction === null) {\n\t\t\treturn observationState(ctx, body, stimulus)\n\t\t}\n\t\tif (interaction.type === \"portable-custom\") {\n\t\t\tif (!isPciSupported(interaction.pciId)) {\n\t\t\t\tlogger.error(\"unsupported pci in frame\", { pciId: interaction.pciId })\n\t\t\t\treturn {\n\t\t\t\t\tphase: \"fatal\",\n\t\t\t\t\terror: errors.wrap(ErrUnsupportedPci, `pci '${interaction.pciId}'`),\n\t\t\t\t\tretriable: false,\n\t\t\t\t\ttoJSON: poisonToJSON\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn pendingInteractionState(body, stimulus, interaction)\n\t}\n\n\tfunction pendingInteractionState(\n\t\tbody: ContentBlock[],\n\t\tstimulus: RendererStimulus | null,\n\t\tinteraction: RendererInteraction<Pcis>\n\t): PrimerState<Pcis> {\n\t\tswitch (interaction.type) {\n\t\t\tcase \"choice\":\n\t\t\t\treturn choiceState(\n\t\t\t\t\tctx,\n\t\t\t\t\tbody,\n\t\t\t\t\tstimulus,\n\t\t\t\t\tinteraction,\n\t\t\t\t\tinteraction.options,\n\t\t\t\t\tinteraction.maxChoices,\n\t\t\t\t\tinteraction.minChoices\n\t\t\t\t)\n\t\t\tcase \"text-entry\":\n\t\t\t\treturn textEntryState(ctx, body, stimulus, interaction)\n\t\t\tcase \"extended-text\":\n\t\t\t\treturn extendedTextState(ctx, body, stimulus, interaction)\n\t\t\tcase \"order\":\n\t\t\t\treturn orderState(ctx, body, stimulus, interaction)\n\t\t\tcase \"match\":\n\t\t\t\treturn matchState(ctx, body, stimulus, interaction)\n\t\t\tcase \"portable-custom\":\n\t\t\t\treturn pciInteractionState(ctx, body, stimulus, interaction)\n\t\t}\n\t}\n\n\tconst ctx: SessionContext<Pcis> = { logger, execute, errored }\n\n\treturn { execute }\n}\n\nexport { makeSession }\nexport type { SessionConfig }\n",
|
|
13
13
|
"import { ErrNotSerializable } from \"@superbuilders/primer-tives/errors\"\n\nfunction poisonToJSON(): never {\n\t// biome-ignore lint/plugin: intentional toJSON trap — logging here would spam on every accidental serialize attempt\n\tthrow ErrNotSerializable\n}\n\nexport { poisonToJSON }\n",
|
|
14
14
|
"import type { ContentBlock } from \"@superbuilders/primer-tives/contracts/content\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport {\n\tsubmissionValidationMessage,\n\tvalidateSubmissionForInteraction\n} from \"@superbuilders/primer-tives/contracts\"\nimport { ErrConflict, ErrInvalidSubmission } from \"@superbuilders/primer-tives/errors\"\nimport type { SessionContext } from \"@superbuilders/primer-tives/client/session-context\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type {\n\tRendererChoice,\n\tRendererInteraction,\n\tRendererStimulus\n} from \"@superbuilders/primer-tives/contracts/types\"\nimport type { PrimerState } from \"@superbuilders/primer-tives/client/types\"\nimport * as errors from \"@superbuilders/errors\"\n\nfunction choiceState<Pcis extends PciId>(\n\tctx: SessionContext<Pcis>,\n\tbody: ContentBlock[],\n\tstimulus: RendererStimulus | null,\n\tinteraction: Extract<RendererInteraction<Pcis>, { type: \"choice\" }>,\n\toptions: RendererChoice[],\n\tmaxChoices: number,\n\tminChoices: number\n): PrimerState<Pcis> {\n\tlet submitPending: Promise<PrimerState<Pcis>> | undefined\n\tlet submitKey: string | undefined\n\tlet timeoutPending: Promise<PrimerState<Pcis>> | undefined\n\n\tfunction beginSubmit(selectedKeys: string[]): Promise<PrimerState<Pcis>> {\n\t\tconst submission = { type: \"choice\" as const, selectedKeys }\n\t\tconst key = JSON.stringify(submission)\n\t\tif (timeoutPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot submit while timeout is in flight\"),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (submitPending) {\n\t\t\tif (submitKey === key) {\n\t\t\t\treturn submitPending\n\t\t\t}\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(\n\t\t\t\t\t\tErrConflict,\n\t\t\t\t\t\t\"cannot submit a different choice payload while submit is in flight\"\n\t\t\t\t\t),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tconst validation = validateSubmissionForInteraction(interaction, submission)\n\t\tif (!validation.ok) {\n\t\t\tctx.logger.error(\"choice submit invalid\", { selectedKeys, issues: validation.issues })\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrInvalidSubmission, submissionValidationMessage(validation)),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tsubmitKey = key\n\t\tsubmitPending = ctx\n\t\t\t.execute({ kind: \"interaction\", submission }, \"interaction\")\n\t\t\t.finally(function clearPending() {\n\t\t\t\tsubmitPending = undefined\n\t\t\t\tsubmitKey = undefined\n\t\t\t})\n\t\treturn submitPending\n\t}\n\n\tfunction beginTimeout(): Promise<PrimerState<Pcis>> {\n\t\tconst intent = { kind: \"timeout\" as const }\n\t\tif (submitPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot timeout while submission is in flight\"),\n\t\t\t\t\t\"timeout\",\n\t\t\t\t\tintent\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (timeoutPending) {\n\t\t\treturn timeoutPending\n\t\t}\n\t\ttimeoutPending = ctx.execute(intent, \"timeout\").finally(function clearPending() {\n\t\t\ttimeoutPending = undefined\n\t\t})\n\t\treturn timeoutPending\n\t}\n\n\treturn {\n\t\tphase: \"interaction\",\n\t\tkind: \"choice\",\n\t\tbody,\n\t\tstimulus,\n\t\tinteraction,\n\t\toptions,\n\t\tmaxChoices,\n\t\tminChoices,\n\t\tsubmitChoice: beginSubmit,\n\t\ttimeout: beginTimeout,\n\t\ttoJSON: poisonToJSON\n\t}\n}\n\nexport { choiceState }\n",
|
|
@@ -19,16 +19,15 @@
|
|
|
19
19
|
"import type { ContentBlock } from \"@superbuilders/primer-tives/contracts/content\"\nimport * as errors from \"@superbuilders/errors\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport {\n\tsubmissionValidationMessage,\n\tvalidateSubmissionForInteraction\n} from \"@superbuilders/primer-tives/contracts\"\nimport { ErrConflict, ErrInvalidSubmission } from \"@superbuilders/primer-tives/errors\"\nimport type { SessionContext } from \"@superbuilders/primer-tives/client/session-context\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type {\n\tRendererStimulus,\n\tStandardRendererInteraction\n} from \"@superbuilders/primer-tives/contracts/types\"\nimport type { PrimerState } from \"@superbuilders/primer-tives/client/types\"\n\nfunction orderState<Pcis extends PciId>(\n\tctx: SessionContext<Pcis>,\n\tbody: ContentBlock[],\n\tstimulus: RendererStimulus | null,\n\tinteraction: Extract<StandardRendererInteraction, { type: \"order\" }>\n): PrimerState<Pcis> {\n\tlet submitPending: Promise<PrimerState<Pcis>> | undefined\n\tlet submitKey: string | undefined\n\tlet timeoutPending: Promise<PrimerState<Pcis>> | undefined\n\n\tfunction submitOrder(orderedKeys: string[]): Promise<PrimerState<Pcis>> {\n\t\tconst submission = { type: \"order\" as const, orderedKeys }\n\t\tconst key = JSON.stringify(submission)\n\t\tif (timeoutPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot submit while timeout is in flight\"),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (submitPending) {\n\t\t\tif (submitKey === key) {\n\t\t\t\treturn submitPending\n\t\t\t}\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(\n\t\t\t\t\t\tErrConflict,\n\t\t\t\t\t\t\"cannot submit a different order payload while submit is in flight\"\n\t\t\t\t\t),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tconst validation = validateSubmissionForInteraction(interaction, submission)\n\t\tif (!validation.ok) {\n\t\t\tctx.logger.error(\"order submit invalid\", { orderedKeys, issues: validation.issues })\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrInvalidSubmission, submissionValidationMessage(validation)),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tsubmitKey = key\n\t\tsubmitPending = ctx\n\t\t\t.execute({ kind: \"interaction\", submission }, \"interaction\")\n\t\t\t.finally(function clearPending() {\n\t\t\t\tsubmitPending = undefined\n\t\t\t\tsubmitKey = undefined\n\t\t\t})\n\t\treturn submitPending\n\t}\n\n\tfunction timeout(): Promise<PrimerState<Pcis>> {\n\t\tconst intent = { kind: \"timeout\" as const }\n\t\tif (submitPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot timeout while submission is in flight\"),\n\t\t\t\t\t\"timeout\",\n\t\t\t\t\tintent\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (timeoutPending) {\n\t\t\treturn timeoutPending\n\t\t}\n\t\ttimeoutPending = ctx.execute(intent, \"timeout\").finally(function clearPending() {\n\t\t\ttimeoutPending = undefined\n\t\t})\n\t\treturn timeoutPending\n\t}\n\n\treturn {\n\t\tphase: \"interaction\",\n\t\tkind: \"order\",\n\t\tbody,\n\t\tstimulus,\n\t\tinteraction,\n\t\tchoices: interaction.choices,\n\t\tminChoices: interaction.minChoices,\n\t\tmaxChoices: interaction.maxChoices,\n\t\tsubmitOrder,\n\t\ttimeout,\n\t\ttoJSON: poisonToJSON\n\t}\n}\n\nexport { orderState }\n",
|
|
20
20
|
"import type { ContentBlock } from \"@superbuilders/primer-tives/contracts/content\"\nimport * as errors from \"@superbuilders/errors\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport { ErrConflict } from \"@superbuilders/primer-tives/errors\"\nimport type { PciId, PciValue } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type { SessionContext } from \"@superbuilders/primer-tives/client/session-context\"\nimport type { PciInteraction, RendererStimulus } from \"@superbuilders/primer-tives/contracts/types\"\nimport type { PciInteractionState, PrimerState } from \"@superbuilders/primer-tives/client/types\"\n\nfunction pciInteractionState<Pcis extends PciId>(\n\tctx: SessionContext<Pcis>,\n\tbody: ContentBlock[],\n\tstimulus: RendererStimulus | null,\n\tinteraction: PciInteraction<Pcis>\n): PciInteractionState<Pcis> {\n\tlet submitPending: Promise<PrimerState<Pcis>> | undefined\n\tlet submitKey: string | undefined\n\tlet timeoutPending: Promise<PrimerState<Pcis>> | undefined\n\tconst { pciId, properties } = interaction\n\n\tfunction submit(value: PciValue<typeof pciId>): Promise<PrimerState<Pcis>> {\n\t\tconst submission = { type: \"portable-custom\" as const, pciId, value }\n\t\tconst key = JSON.stringify(submission)\n\t\tif (timeoutPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot submit while timeout is in flight\"),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (submitPending) {\n\t\t\tif (submitKey === key) {\n\t\t\t\treturn submitPending\n\t\t\t}\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(\n\t\t\t\t\t\tErrConflict,\n\t\t\t\t\t\t\"cannot submit a different pci payload while submit is in flight\"\n\t\t\t\t\t),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tctx.logger.debug(\"pci submit\", { pciId })\n\t\tsubmitKey = key\n\t\tsubmitPending = ctx\n\t\t\t.execute({ kind: \"interaction\", submission }, \"interaction\")\n\t\t\t.finally(function clearPending() {\n\t\t\t\tsubmitPending = undefined\n\t\t\t\tsubmitKey = undefined\n\t\t\t})\n\t\treturn submitPending\n\t}\n\n\tfunction timeout(): Promise<PrimerState<Pcis>> {\n\t\tconst intent = { kind: \"timeout\" as const }\n\t\tif (submitPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot timeout while submission is in flight\"),\n\t\t\t\t\t\"timeout\",\n\t\t\t\t\tintent\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (timeoutPending) {\n\t\t\treturn timeoutPending\n\t\t}\n\t\tctx.logger.debug(\"pci timeout\", { pciId })\n\t\ttimeoutPending = ctx.execute(intent, \"timeout\").finally(function clearPending() {\n\t\t\ttimeoutPending = undefined\n\t\t})\n\t\treturn timeoutPending\n\t}\n\n\t// biome-ignore lint/plugin: TS cannot verify mapped-union construction from generic Pcis — pciId↔properties correlation preserved by input\n\treturn {\n\t\tphase: \"interaction\",\n\t\tkind: \"portable-custom\",\n\t\tbody,\n\t\tstimulus,\n\t\tinteraction,\n\t\tpciId,\n\t\tproperties,\n\t\tsubmit,\n\t\ttimeout,\n\t\ttoJSON: poisonToJSON\n\t} as PciInteractionState<Pcis>\n}\n\nexport { pciInteractionState }\n",
|
|
21
21
|
"import type { ContentBlock } from \"@superbuilders/primer-tives/contracts/content\"\nimport * as errors from \"@superbuilders/errors\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport {\n\tsubmissionValidationMessage,\n\tvalidateSubmissionForInteraction\n} from \"@superbuilders/primer-tives/contracts\"\nimport { ErrConflict, ErrInvalidSubmission } from \"@superbuilders/primer-tives/errors\"\nimport type { SessionContext } from \"@superbuilders/primer-tives/client/session-context\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type {\n\tRendererInteraction,\n\tRendererStimulus\n} from \"@superbuilders/primer-tives/contracts/types\"\nimport type { PrimerState } from \"@superbuilders/primer-tives/client/types\"\n\nfunction textEntryState<Pcis extends PciId>(\n\tctx: SessionContext<Pcis>,\n\tbody: ContentBlock[],\n\tstimulus: RendererStimulus | null,\n\tinteraction: Extract<RendererInteraction<Pcis>, { type: \"text-entry\" }>\n): PrimerState<Pcis> {\n\tlet submitPending: Promise<PrimerState<Pcis>> | undefined\n\tlet submitKey: string | undefined\n\tlet timeoutPending: Promise<PrimerState<Pcis>> | undefined\n\n\tfunction submitText(value: string): Promise<PrimerState<Pcis>> {\n\t\tconst submission = { type: \"text-entry\" as const, value }\n\t\tconst key = JSON.stringify(submission)\n\t\tif (timeoutPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot submit while timeout is in flight\"),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (submitPending) {\n\t\t\tif (submitKey === key) {\n\t\t\t\treturn submitPending\n\t\t\t}\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(\n\t\t\t\t\t\tErrConflict,\n\t\t\t\t\t\t\"cannot submit a different text payload while submit is in flight\"\n\t\t\t\t\t),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tconst validation = validateSubmissionForInteraction(interaction, submission)\n\t\tif (!validation.ok) {\n\t\t\tctx.logger.error(\"text-entry submit invalid\", { value, issues: validation.issues })\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrInvalidSubmission, submissionValidationMessage(validation)),\n\t\t\t\t\t\"interaction\",\n\t\t\t\t\t{ kind: \"interaction\", submission }\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tsubmitKey = key\n\t\tsubmitPending = ctx\n\t\t\t.execute({ kind: \"interaction\", submission }, \"interaction\")\n\t\t\t.finally(function clearPending() {\n\t\t\t\tsubmitPending = undefined\n\t\t\t\tsubmitKey = undefined\n\t\t\t})\n\t\treturn submitPending\n\t}\n\n\tfunction timeout(): Promise<PrimerState<Pcis>> {\n\t\tconst intent = { kind: \"timeout\" as const }\n\t\tif (submitPending) {\n\t\t\treturn Promise.resolve(\n\t\t\t\tctx.errored(\n\t\t\t\t\terrors.wrap(ErrConflict, \"cannot timeout while submission is in flight\"),\n\t\t\t\t\t\"timeout\",\n\t\t\t\t\tintent\n\t\t\t\t)\n\t\t\t)\n\t\t}\n\t\tif (timeoutPending) {\n\t\t\treturn timeoutPending\n\t\t}\n\t\ttimeoutPending = ctx.execute(intent, \"timeout\").finally(function clearPending() {\n\t\t\ttimeoutPending = undefined\n\t\t})\n\t\treturn timeoutPending\n\t}\n\n\treturn {\n\t\tphase: \"interaction\",\n\t\tkind: \"text-entry\",\n\t\tbody,\n\t\tstimulus,\n\t\tinteraction,\n\t\tsubmitText,\n\t\ttimeout,\n\t\ttoJSON: poisonToJSON\n\t}\n}\n\nexport { textEntryState }\n",
|
|
22
|
-
"import * as errors from \"@superbuilders/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport {\n\tbrowserStorage,\n\
|
|
23
|
-
"import
|
|
24
|
-
"import {
|
|
25
|
-
"import * as errors from \"@superbuilders/errors\"\nimport {\n\tErrAuthCallbackInvalid,\n\tErrAuthCancelled,\n\tErrAuthStateMismatch\n} from \"@superbuilders/primer-tives/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport {\n\topenAuthPopup,\n\treadablePopupUrl,\n\tredirectUri,\n\tsleep,\n\ttype HostedAuthOptions\n} from \"@superbuilders/primer-tives/client/auth/browser\"\nimport { readAuthCallback } from \"@superbuilders/primer-tives/client/auth/callback\"\n\nconst DEFAULT_POPUP_TIMEOUT_MS = 10 * 60 * 1000\nconst POPUP_POLL_MS = 250\n\ntype HostedPopupConfig = {\n\treadonly origin: string\n\treadonly publishableKey: string\n\treadonly currentUrl: URL\n\treadonly clientState: string\n\treadonly options?: HostedAuthOptions\n\treadonly logger: PrimerLogger\n}\n\nfunction hostedAuthUrl(config: HostedPopupConfig): string {\n\tconst logger = config.logger\n\tif (!URL.canParse(config.origin)) {\n\t\tlogger.error(\"hosted auth origin invalid\", { origin: config.origin })\n\t\tthrow ErrAuthCallbackInvalid\n\t}\n\tconst authUrl = new URL(\"/auth/timeback\", config.origin)\n\tauthUrl.searchParams.set(\"publishableKey\", config.publishableKey)\n\tauthUrl.searchParams.set(\"redirectUri\", redirectUri(config.options, config.currentUrl, logger))\n\tauthUrl.searchParams.set(\"state\", config.clientState)\n\treturn authUrl.toString()\n}\n\nfunction popupTimeoutMs(options: HostedAuthOptions | undefined): number {\n\tif (options !== undefined && options.popupTimeoutMs !== undefined) {\n\t\treturn options.popupTimeoutMs\n\t}\n\treturn DEFAULT_POPUP_TIMEOUT_MS\n}\n\nfunction readPopupCallback(href: string, config: HostedPopupConfig): string | null {\n\tconst logger = config.logger\n\tif (!URL.canParse(href)) {\n\t\treturn null\n\t}\n\tconst callbackResult = errors.trySync(function readCallback() {\n\t\treturn readAuthCallback(new URL(href), logger)\n\t})\n\tif (callbackResult.error) {\n\t\tlogger.error(\"hosted auth popup callback invalid\", { error: callbackResult.error })\n\t\tthrow callbackResult.error\n\t}\n\tconst callback = callbackResult.data\n\tif (callback === null) {\n\t\treturn null\n\t}\n\tif (callback.state !== config.clientState) {\n\t\tlogger.error(\"hosted auth popup state mismatch\")\n\t\tthrow ErrAuthStateMismatch\n\t}\n\treturn callback.accessToken\n}\n\nasync function beginHostedPopup(config: HostedPopupConfig): Promise<string> {\n\tconst logger = config.logger\n\tconst popup = openAuthPopup(hostedAuthUrl(config), config.options, logger)\n\tconst expiresAt = Date.now() + popupTimeoutMs(config.options)\n\twhile (Date.now() < expiresAt) {\n\t\tif (popup.closed) {\n\t\t\tlogger.error(\"hosted auth popup closed\")\n\t\t\tthrow ErrAuthCancelled\n\t\t}\n\t\tconst href = readablePopupUrl(popup)\n\t\tif (href !== null) {\n\t\t\tconst accessTokenResult = errors.trySync(function readAccessToken() {\n\t\t\t\treturn readPopupCallback(href, config)\n\t\t\t})\n\t\t\tif (accessTokenResult.error) {\n\t\t\t\tpopup.close()\n\t\t\t\tlogger.error(\"hosted auth popup failed\", { error: accessTokenResult.error })\n\t\t\t\tthrow accessTokenResult.error\n\t\t\t}\n\t\t\tif (accessTokenResult.data !== null) {\n\t\t\t\tpopup.close()\n\t\t\t\tlogger.debug(\"hosted auth popup completed\")\n\t\t\t\treturn accessTokenResult.data\n\t\t\t}\n\t\t}\n\t\tawait sleep(POPUP_POLL_MS)\n\t}\n\tpopup.close()\n\tlogger.error(\"hosted auth popup timed out\")\n\tthrow ErrAuthCancelled\n}\n\nexport { beginHostedPopup }\nexport type { HostedPopupConfig }\n",
|
|
22
|
+
"import * as errors from \"@superbuilders/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport {\n\tbrowserStorage,\n\tcurrentUrl,\n\trandomClientState,\n\ttype HostedAuthOptions\n} from \"@superbuilders/primer-tives/client/auth/browser\"\nimport { beginHostedPopup } from \"@superbuilders/primer-tives/client/auth/hosted-popup\"\nimport {\n\tresolveAccessToken,\n\ttype ResolvedAccessToken\n} from \"@superbuilders/primer-tives/client/auth/access-token\"\nimport {\n\tclearAuthState,\n\tclearStoredAccessToken,\n\tloadStoredAccessToken,\n\tstoreAccessToken,\n\tstoreAuthState\n} from \"@superbuilders/primer-tives/client/auth/storage\"\n\ntype AccessTokenResolverOptions = {\n\treadonly origin: string\n\treadonly publishableKey: string\n\treadonly accessToken?: string\n\treadonly hostedAuth?: HostedAuthOptions\n\treadonly logger: PrimerLogger\n}\n\ntype ResolvedAccessTokenResult = {\n\treadonly kind: \"resolved\"\n\treadonly accessToken: ResolvedAccessToken\n}\n\ntype UnauthenticatedAccessTokenResult = {\n\treadonly kind: \"unauthenticated\"\n\treadonly error: Error | null\n}\n\ntype FatalAccessTokenResult = {\n\treadonly kind: \"fatal\"\n\treadonly error: Error\n}\n\ntype ExistingAccessTokenResult =\n\t| ResolvedAccessTokenResult\n\t| UnauthenticatedAccessTokenResult\n\t| FatalAccessTokenResult\n\ntype HostedLoginResult = ResolvedAccessTokenResult | UnauthenticatedAccessTokenResult\n\ntype BrowserAuthContext = {\n\treadonly storage: Storage\n\treadonly url: URL\n}\n\nfunction resolveProvidedAccessToken(\n\ttoken: string,\n\tlogger: PrimerLogger\n): ResolvedAccessTokenResult | FatalAccessTokenResult {\n\tconst result = errors.trySync(function resolveProvidedToken() {\n\t\treturn resolveAccessToken(token, logger)\n\t})\n\tif (result.error) {\n\t\treturn { kind: \"fatal\", error: result.error }\n\t}\n\treturn { kind: \"resolved\", accessToken: result.data }\n}\n\nfunction resolveManagedAccessToken(token: string, logger: PrimerLogger): HostedLoginResult {\n\tconst result = errors.trySync(function resolveManagedToken() {\n\t\treturn resolveAccessToken(token, logger)\n\t})\n\tif (result.error) {\n\t\treturn { kind: \"unauthenticated\", error: result.error }\n\t}\n\treturn { kind: \"resolved\", accessToken: result.data }\n}\n\nfunction readBrowserAuthContext(\n\toptions: AccessTokenResolverOptions\n): BrowserAuthContext | UnauthenticatedAccessTokenResult {\n\tconst logger = options.logger\n\tconst contextResult = errors.trySync(function readContext() {\n\t\tconst storage = browserStorage(options.hostedAuth, logger)\n\t\tconst url = currentUrl(options.hostedAuth, logger)\n\t\treturn { storage, url }\n\t})\n\tif (contextResult.error) {\n\t\treturn { kind: \"unauthenticated\", error: contextResult.error }\n\t}\n\treturn contextResult.data\n}\n\nfunction resolveStoredAccessToken(\n\tcontext: BrowserAuthContext,\n\toptions: AccessTokenResolverOptions\n): HostedLoginResult | null {\n\tconst stored = loadStoredAccessToken(context.storage, options.publishableKey)\n\tif (stored === null) {\n\t\treturn null\n\t}\n\tconst resolved = resolveManagedAccessToken(stored, options.logger)\n\tif (resolved.kind === \"unauthenticated\") {\n\t\tclearStoredAccessToken(context.storage, options.publishableKey)\n\t}\n\treturn resolved\n}\n\nfunction resolveExistingAccessToken(\n\toptions: AccessTokenResolverOptions\n): ExistingAccessTokenResult {\n\tif (options.accessToken !== undefined) {\n\t\treturn resolveProvidedAccessToken(options.accessToken, options.logger)\n\t}\n\n\tconst context = readBrowserAuthContext(options)\n\tif (\"kind\" in context) {\n\t\treturn context\n\t}\n\tconst stored = resolveStoredAccessToken(context, options)\n\tif (stored !== null) {\n\t\treturn stored\n\t}\n\n\treturn { kind: \"unauthenticated\", error: null }\n}\n\nasync function beginHostedLogin(options: AccessTokenResolverOptions): Promise<HostedLoginResult> {\n\tconst logger = options.logger\n\tconst context = readBrowserAuthContext(options)\n\tif (\"kind\" in context) {\n\t\treturn context\n\t}\n\tconst clientStateResult = errors.trySync(function prepareHostedLogin() {\n\t\tconst clientState = randomClientState(logger)\n\t\tstoreAuthState(context.storage, options.publishableKey, clientState)\n\t\treturn clientState\n\t})\n\tif (clientStateResult.error) {\n\t\treturn { kind: \"unauthenticated\", error: clientStateResult.error }\n\t}\n\tconst clientState = clientStateResult.data\n\tconst accessTokenResult = await errors.try(\n\t\tbeginHostedPopup({\n\t\t\torigin: options.origin,\n\t\t\tpublishableKey: options.publishableKey,\n\t\t\tcurrentUrl: context.url,\n\t\t\tclientState,\n\t\t\toptions: options.hostedAuth,\n\t\t\tlogger\n\t\t})\n\t)\n\tif (accessTokenResult.error) {\n\t\tclearAuthState(context.storage, options.publishableKey)\n\t\treturn { kind: \"unauthenticated\", error: accessTokenResult.error }\n\t}\n\tconst resolved = resolveManagedAccessToken(accessTokenResult.data, logger)\n\tif (resolved.kind === \"unauthenticated\") {\n\t\tclearAuthState(context.storage, options.publishableKey)\n\t\treturn resolved\n\t}\n\tstoreAccessToken(context.storage, options.publishableKey, accessTokenResult.data)\n\tclearAuthState(context.storage, options.publishableKey)\n\treturn resolved\n}\n\nexport { beginHostedLogin, resolveExistingAccessToken }\nexport type { AccessTokenResolverOptions, ExistingAccessTokenResult, HostedLoginResult }\n",
|
|
23
|
+
"import {\n\tErrAuthConfigInvalid,\n\tErrAuthPopupBlocked,\n\tErrAuthUnavailable\n} from \"@superbuilders/primer-tives/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\n\ntype HostedAuthOptions = {\n\treadonly redirectUri?: string\n\treadonly storage?: Storage\n\treadonly currentUrl?: string\n\treadonly popupTarget?: string\n\treadonly popupFeatures?: string\n\treadonly popupTimeoutMs?: number\n}\n\nfunction browserStorage(options: HostedAuthOptions | undefined, logger: PrimerLogger): Storage {\n\tif (options !== undefined && options.storage !== undefined) {\n\t\treturn options.storage\n\t}\n\tif (typeof globalThis.sessionStorage === \"undefined\") {\n\t\tlogger.error(\"auth storage unavailable\")\n\t\tthrow ErrAuthUnavailable\n\t}\n\treturn globalThis.sessionStorage\n}\n\nfunction currentUrl(options: HostedAuthOptions | undefined, logger: PrimerLogger): URL {\n\tif (options !== undefined && options.currentUrl !== undefined) {\n\t\tif (!URL.canParse(options.currentUrl)) {\n\t\t\tlogger.error(\"auth current url invalid\", { currentUrl: options.currentUrl })\n\t\t\tthrow ErrAuthConfigInvalid\n\t\t}\n\t\treturn new URL(options.currentUrl)\n\t}\n\tif (typeof globalThis.location === \"undefined\") {\n\t\tlogger.error(\"auth location unavailable\")\n\t\tthrow ErrAuthUnavailable\n\t}\n\treturn new URL(globalThis.location.href)\n}\n\nfunction redirectUri(\n\toptions: HostedAuthOptions | undefined,\n\turl: URL,\n\tlogger: PrimerLogger\n): string {\n\tif (options !== undefined && options.redirectUri !== undefined) {\n\t\tif (!URL.canParse(options.redirectUri)) {\n\t\t\tlogger.error(\"auth redirect uri invalid\", { redirectUri: options.redirectUri })\n\t\t\tthrow ErrAuthConfigInvalid\n\t\t}\n\t\treturn options.redirectUri\n\t}\n\treturn `${url.origin}${url.pathname}${url.search}`\n}\n\nfunction randomClientState(logger: PrimerLogger): string {\n\tif (typeof globalThis.crypto === \"undefined\") {\n\t\tlogger.error(\"auth crypto unavailable\")\n\t\tthrow ErrAuthUnavailable\n\t}\n\tconst bytes = new Uint8Array(24)\n\tglobalThis.crypto.getRandomValues(bytes)\n\tlet result = \"\"\n\tfor (const byte of bytes) {\n\t\tresult += byte.toString(16).padStart(2, \"0\")\n\t}\n\treturn result\n}\n\nfunction openAuthPopup(\n\turl: string,\n\toptions: HostedAuthOptions | undefined,\n\tlogger: PrimerLogger\n): Window {\n\tif (typeof globalThis.open === \"undefined\") {\n\t\tlogger.error(\"auth popup api unavailable\")\n\t\tthrow ErrAuthUnavailable\n\t}\n\tlet target = \"primer-auth\"\n\tif (options !== undefined && options.popupTarget !== undefined) {\n\t\ttarget = options.popupTarget\n\t}\n\tlet features = \"popup,width=480,height=720\"\n\tif (options !== undefined && options.popupFeatures !== undefined) {\n\t\tfeatures = options.popupFeatures\n\t}\n\tconst popup = globalThis.open(url, target, features)\n\tif (popup === null) {\n\t\tlogger.error(\"auth popup blocked\")\n\t\tthrow ErrAuthPopupBlocked\n\t}\n\treturn popup\n}\n\nexport { browserStorage, currentUrl, openAuthPopup, randomClientState, redirectUri }\nexport type { HostedAuthOptions }\n",
|
|
24
|
+
"import {\n\tErrAuthCallbackInvalid,\n\tErrAuthCancelled,\n\tErrAuthStateMismatch\n} from \"@superbuilders/primer-tives/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport {\n\topenAuthPopup,\n\tredirectUri,\n\ttype HostedAuthOptions\n} from \"@superbuilders/primer-tives/client/auth/browser\"\n\nconst DEFAULT_POPUP_TIMEOUT_MS = 10 * 60 * 1000\nconst POPUP_POLL_MS = 250\nconst AUTH_MESSAGE_TYPE = \"primer-tives.auth.result.v1\"\nconst AUTH_RESPONSE_MODE = \"web_message\"\n\ntype HostedPopupConfig = {\n\treadonly origin: string\n\treadonly publishableKey: string\n\treadonly currentUrl: URL\n\treadonly clientState: string\n\treadonly options?: HostedAuthOptions\n\treadonly logger: PrimerLogger\n}\n\nfunction hostedAuthUrl(config: HostedPopupConfig): string {\n\tconst logger = config.logger\n\tif (!URL.canParse(config.origin)) {\n\t\tlogger.error(\"hosted auth origin invalid\", { origin: config.origin })\n\t\tthrow ErrAuthCallbackInvalid\n\t}\n\tconst authUrl = new URL(\"/auth/timeback\", config.origin)\n\tauthUrl.searchParams.set(\"publishableKey\", config.publishableKey)\n\tauthUrl.searchParams.set(\"redirectUri\", redirectUri(config.options, config.currentUrl, logger))\n\tauthUrl.searchParams.set(\"state\", config.clientState)\n\tauthUrl.searchParams.set(\"responseMode\", AUTH_RESPONSE_MODE)\n\treturn authUrl.toString()\n}\n\nfunction popupTimeoutMs(options: HostedAuthOptions | undefined): number {\n\tif (options !== undefined && options.popupTimeoutMs !== undefined) {\n\t\treturn options.popupTimeoutMs\n\t}\n\treturn DEFAULT_POPUP_TIMEOUT_MS\n}\n\ntype PopupMessageResult =\n\t| { readonly kind: \"ignore\" }\n\t| { readonly kind: \"success\"; readonly accessToken: string }\n\t| { readonly kind: \"error\"; readonly error: Error }\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n\treturn typeof value === \"object\" && value !== null\n}\n\nfunction stringField(value: Record<string, unknown>, key: string): string | null {\n\tconst field = value[key]\n\tif (typeof field !== \"string\" || field.length === 0) {\n\t\treturn null\n\t}\n\treturn field\n}\n\nfunction readPopupMessage(\n\tevent: MessageEvent,\n\tpopup: Window,\n\tconfig: HostedPopupConfig,\n\texpectedOrigin: string\n): PopupMessageResult {\n\tif (event.source !== popup) {\n\t\treturn { kind: \"ignore\" }\n\t}\n\tif (event.origin !== expectedOrigin) {\n\t\treturn { kind: \"ignore\" }\n\t}\n\tconst data: unknown = event.data\n\tif (!isRecord(data)) {\n\t\treturn { kind: \"ignore\" }\n\t}\n\tconst messageType = stringField(data, \"type\")\n\tif (messageType !== AUTH_MESSAGE_TYPE) {\n\t\treturn { kind: \"ignore\" }\n\t}\n\tconst state = stringField(data, \"state\")\n\tif (state === null) {\n\t\treturn { kind: \"error\", error: ErrAuthCallbackInvalid }\n\t}\n\tif (state !== config.clientState) {\n\t\treturn { kind: \"error\", error: ErrAuthStateMismatch }\n\t}\n\tconst status = stringField(data, \"status\")\n\tif (status === \"error\") {\n\t\treturn { kind: \"error\", error: ErrAuthCallbackInvalid }\n\t}\n\tif (status !== \"success\") {\n\t\treturn { kind: \"error\", error: ErrAuthCallbackInvalid }\n\t}\n\tconst accessToken = stringField(data, \"accessToken\")\n\tif (accessToken === null) {\n\t\treturn { kind: \"error\", error: ErrAuthCallbackInvalid }\n\t}\n\treturn { kind: \"success\", accessToken }\n}\n\nasync function waitForPopupMessage(\n\tpopup: Window,\n\tconfig: HostedPopupConfig,\n\texpectedOrigin: string\n): Promise<string> {\n\tconst logger = config.logger\n\tawait using stack = new AsyncDisposableStack()\n\tstack.defer(function closePopup() {\n\t\tpopup.close()\n\t})\n\n\tconst result = await new Promise<string>(function waitForMessage(resolve, reject) {\n\t\tlet settled = false\n\n\t\tfunction finishWithError(error: Error): void {\n\t\t\tif (settled) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsettled = true\n\t\t\treject(error)\n\t\t}\n\n\t\tfunction finishWithToken(token: string): void {\n\t\t\tif (settled) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tsettled = true\n\t\t\tlogger.debug(\"hosted auth popup completed\")\n\t\t\tresolve(token)\n\t\t}\n\n\t\tconst timeoutId = globalThis.setTimeout(function timeout() {\n\t\t\tlogger.error(\"hosted auth popup timed out\")\n\t\t\tfinishWithError(ErrAuthCancelled)\n\t\t}, popupTimeoutMs(config.options))\n\t\tstack.defer(function clearPopupTimeout() {\n\t\t\tglobalThis.clearTimeout(timeoutId)\n\t\t})\n\n\t\tconst closedPollId = globalThis.setInterval(function checkClosed() {\n\t\t\tif (!popup.closed) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tlogger.error(\"hosted auth popup closed\")\n\t\t\tfinishWithError(ErrAuthCancelled)\n\t\t}, POPUP_POLL_MS)\n\t\tstack.defer(function clearClosedPoll() {\n\t\t\tglobalThis.clearInterval(closedPollId)\n\t\t})\n\n\t\tfunction handleMessage(event: MessageEvent): void {\n\t\t\tconst result = readPopupMessage(event, popup, config, expectedOrigin)\n\t\t\tif (result.kind === \"ignore\") {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tif (result.kind === \"error\") {\n\t\t\t\tlogger.error(\"hosted auth popup failed\", { error: result.error })\n\t\t\t\tfinishWithError(result.error)\n\t\t\t\treturn\n\t\t\t}\n\t\t\tfinishWithToken(result.accessToken)\n\t\t}\n\n\t\tglobalThis.addEventListener(\"message\", handleMessage)\n\t\tstack.defer(function removeMessageListener() {\n\t\t\tglobalThis.removeEventListener(\"message\", handleMessage)\n\t\t})\n\t})\n\treturn result\n}\n\nasync function beginHostedPopup(config: HostedPopupConfig): Promise<string> {\n\tconst logger = config.logger\n\tconst url = hostedAuthUrl(config)\n\tif (!URL.canParse(config.origin)) {\n\t\tlogger.error(\"hosted auth origin invalid\", { origin: config.origin })\n\t\tthrow ErrAuthCallbackInvalid\n\t}\n\tconst expectedOrigin = new URL(config.origin).origin\n\tconst popup = openAuthPopup(url, config.options, logger)\n\treturn waitForPopupMessage(popup, config, expectedOrigin)\n}\n\nexport { beginHostedPopup }\nexport type { HostedPopupConfig }\n",
|
|
26
25
|
"import * as errors from \"@superbuilders/errors\"\nimport { ErrMalformedAccessToken } from \"@superbuilders/primer-tives/errors\"\nimport type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\n\nconst ACCESS_TOKEN_PREFIX = \"eyJ\"\nconst resolvedAccessTokenBrand: unique symbol = Symbol(\"primer resolved access token\")\n\ntype ResolvedAccessToken = {\n\treadonly value: string\n\treadonly [resolvedAccessTokenBrand]: true\n}\n\nfunction isMalformedJws(token: string): boolean {\n\tif (!token.startsWith(ACCESS_TOKEN_PREFIX)) {\n\t\treturn true\n\t}\n\tconst dotCount = token.split(\".\").length - 1\n\treturn dotCount !== 2\n}\n\nfunction resolveAccessToken(token: string, logger: PrimerLogger): ResolvedAccessToken {\n\tif (isMalformedJws(token)) {\n\t\tlogger.error(\"malformed access token\", { prefix: ACCESS_TOKEN_PREFIX })\n\t\tthrow errors.wrap(\n\t\t\tErrMalformedAccessToken,\n\t\t\t`token must start with '${ACCESS_TOKEN_PREFIX}' and contain two dots`\n\t\t)\n\t}\n\treturn { value: token, [resolvedAccessTokenBrand]: true }\n}\n\nexport { resolveAccessToken }\nexport type { ResolvedAccessToken }\n",
|
|
27
26
|
"const ACCESS_TOKEN_KEY_PREFIX = \"primer:access-token\"\nconst AUTH_STATE_KEY_PREFIX = \"primer:auth-state\"\n\nfunction accessTokenStorageKey(publishableKey: string): string {\n\treturn `${ACCESS_TOKEN_KEY_PREFIX}:${publishableKey}`\n}\n\nfunction authStateStorageKey(publishableKey: string): string {\n\treturn `${AUTH_STATE_KEY_PREFIX}:${publishableKey}`\n}\n\nfunction loadStoredAccessToken(storage: Storage, publishableKey: string): string | null {\n\tconst token = storage.getItem(accessTokenStorageKey(publishableKey))\n\tif (token === null || token.length === 0) {\n\t\treturn null\n\t}\n\treturn token\n}\n\nfunction storeAccessToken(storage: Storage, publishableKey: string, accessToken: string): void {\n\tstorage.setItem(accessTokenStorageKey(publishableKey), accessToken)\n}\n\nfunction clearStoredAccessToken(storage: Storage, publishableKey: string): void {\n\tstorage.removeItem(accessTokenStorageKey(publishableKey))\n}\n\nfunction loadAuthState(storage: Storage, publishableKey: string): string | null {\n\tconst state = storage.getItem(authStateStorageKey(publishableKey))\n\tif (state === null || state.length === 0) {\n\t\treturn null\n\t}\n\treturn state\n}\n\nfunction storeAuthState(storage: Storage, publishableKey: string, state: string): void {\n\tstorage.setItem(authStateStorageKey(publishableKey), state)\n}\n\nfunction clearAuthState(storage: Storage, publishableKey: string): void {\n\tstorage.removeItem(authStateStorageKey(publishableKey))\n}\n\nexport {\n\taccessTokenStorageKey,\n\tauthStateStorageKey,\n\tclearAuthState,\n\tclearStoredAccessToken,\n\tloadAuthState,\n\tloadStoredAccessToken,\n\tstoreAccessToken,\n\tstoreAuthState\n}\n",
|
|
28
27
|
"import { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type { PrimerState, UnauthenticatedState } from \"@superbuilders/primer-tives/client/types\"\n\ntype UnauthenticatedStateConfig<Pcis extends PciId = PciId> = {\n\treadonly error: Error | null\n\tlogin(): Promise<PrimerState<Pcis>>\n}\n\nfunction unauthenticatedState<Pcis extends PciId>(\n\tconfig: UnauthenticatedStateConfig<Pcis>\n): UnauthenticatedState<Pcis> {\n\tlet pending: Promise<PrimerState<Pcis>> | undefined\n\n\tfunction login(): Promise<PrimerState<Pcis>> {\n\t\tif (pending) {\n\t\t\treturn pending\n\t\t}\n\t\tpending = config.login().finally(function clearPending() {\n\t\t\tpending = undefined\n\t\t})\n\t\treturn pending\n\t}\n\n\treturn {\n\t\tphase: \"unauthenticated\",\n\t\terror: config.error,\n\t\tlogin,\n\t\ttoJSON: poisonToJSON\n\t}\n}\n\nexport { unauthenticatedState }\nexport type { UnauthenticatedStateConfig }\n",
|
|
29
|
-
"import type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type { PrimerState } from \"@superbuilders/primer-tives/client/types\"\nimport { createTransport } from \"@superbuilders/primer-tives/client/transport\"\nimport { makeSession } from \"@superbuilders/primer-tives/client/session\"\nimport type { Subject } from \"@superbuilders/primer-tives/subject\"\nimport type { RuntimeSubjectScope } from \"@superbuilders/primer-tives/client/runtime-subject\"\nimport {\n\tbeginHostedLogin,\n\tresolveExistingAccessToken\n} from \"@superbuilders/primer-tives/client/auth/provider\"\nimport type { ResolvedAccessToken } from \"@superbuilders/primer-tives/client/auth/access-token\"\nimport { unauthenticatedState } from \"@superbuilders/primer-tives/client/unauthenticated-state\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport type {\n\tHasRequiredPcis,\n\tRequiredPciForSubject\n} from \"@superbuilders/primer-tives/subject-pcis\"\n\ntype SubjectSelection = Subject | undefined\n\ntype IsUnion<T, U = T> = T extends unknown ? ([U] extends [T] ? false : true) : false\n\ntype LiteralSubject<S extends SubjectSelection> = [S] extends [undefined]\n\t? undefined\n\t: IsUnion<S> extends true\n\t\t? never\n\t\t: S\n\ntype SubjectOption<S extends SubjectSelection> = [S] extends [undefined]\n\t? { readonly subject?: undefined }\n\t: { readonly subject: LiteralSubject<S> }\n\ntype PciOptionsForSubject<S extends SubjectSelection, Supported extends readonly PciId[]> = [\n\tRequiredPciForSubject<S>\n] extends [never]\n\t? { readonly supportedPcis?: Supported }\n\t: HasRequiredPcis<RequiredPciForSubject<S>, Supported> extends true\n\t\t? { readonly supportedPcis: Supported }\n\t\t: { readonly supportedPcis: never }\n\ntype RuntimePci<S extends SubjectSelection, Supported extends readonly PciId[]> =\n\t| Supported[number]\n\t| RequiredPciForSubject<S>\n\ntype PrimerOptions<\n\tS extends SubjectSelection = undefined,\n\tSupported extends readonly PciId[] = []\n> = {\n\treadonly publishableKey: string\n\treadonly origin
|
|
28
|
+
"import type { PrimerLogger } from \"@superbuilders/primer-tives/logger\"\nimport type { PciId } from \"@superbuilders/primer-tives/contracts/pci\"\nimport type { PrimerState } from \"@superbuilders/primer-tives/client/types\"\nimport { createTransport } from \"@superbuilders/primer-tives/client/transport\"\nimport { makeSession } from \"@superbuilders/primer-tives/client/session\"\nimport type { Subject } from \"@superbuilders/primer-tives/subject\"\nimport type { RuntimeSubjectScope } from \"@superbuilders/primer-tives/client/runtime-subject\"\nimport {\n\tbeginHostedLogin,\n\tresolveExistingAccessToken\n} from \"@superbuilders/primer-tives/client/auth/provider\"\nimport type { ResolvedAccessToken } from \"@superbuilders/primer-tives/client/auth/access-token\"\nimport { unauthenticatedState } from \"@superbuilders/primer-tives/client/unauthenticated-state\"\nimport { poisonToJSON } from \"@superbuilders/primer-tives/client/consumed\"\nimport type {\n\tHasRequiredPcis,\n\tRequiredPciForSubject\n} from \"@superbuilders/primer-tives/subject-pcis\"\n\ntype SubjectSelection = Subject | undefined\n\ntype IsUnion<T, U = T> = T extends unknown ? ([U] extends [T] ? false : true) : false\n\ntype LiteralSubject<S extends SubjectSelection> = [S] extends [undefined]\n\t? undefined\n\t: IsUnion<S> extends true\n\t\t? never\n\t\t: S\n\ntype SubjectOption<S extends SubjectSelection> = [S] extends [undefined]\n\t? { readonly subject?: undefined }\n\t: { readonly subject: LiteralSubject<S> }\n\ntype PciOptionsForSubject<S extends SubjectSelection, Supported extends readonly PciId[]> = [\n\tRequiredPciForSubject<S>\n] extends [never]\n\t? { readonly supportedPcis?: Supported }\n\t: HasRequiredPcis<RequiredPciForSubject<S>, Supported> extends true\n\t\t? { readonly supportedPcis: Supported }\n\t\t: { readonly supportedPcis: never }\n\ntype RuntimePci<S extends SubjectSelection, Supported extends readonly PciId[]> =\n\t| Supported[number]\n\t| RequiredPciForSubject<S>\n\nconst DEFAULT_PRIMER_ORIGIN = \"https://primerlearn.dev\"\n\ntype PrimerOptions<\n\tS extends SubjectSelection = undefined,\n\tSupported extends readonly PciId[] = []\n> = {\n\treadonly publishableKey: string\n\treadonly origin?: string\n\treadonly accessToken?: string\n\treadonly fetch?: typeof globalThis.fetch\n\treadonly abort?: AbortController\n\treadonly logger: PrimerLogger\n} & SubjectOption<S> &\n\tPciOptionsForSubject<S, Supported>\n\ntype RuntimeStartConfig<Pcis extends PciId = PciId> = {\n\treadonly publishableKey: string\n\treadonly origin: string\n\treadonly fetch?: typeof globalThis.fetch\n\treadonly abort?: AbortController\n\treadonly logger: PrimerLogger\n\treadonly subject: RuntimeSubjectScope\n\treadonly supportedPcis: readonly Pcis[]\n}\n\nfunction supportedPcisOrEmpty<Supported extends readonly PciId[]>(\n\tsupportedPcis: Supported | undefined\n): Supported | [] {\n\tif (supportedPcis !== undefined) {\n\t\treturn supportedPcis\n\t}\n\treturn []\n}\n\nfunction runtimeSubject(subject: Subject | undefined): RuntimeSubjectScope {\n\tif (subject === undefined) {\n\t\treturn \"all\"\n\t}\n\treturn subject\n}\n\nfunction primerOrigin(origin: string | undefined): string {\n\tif (origin !== undefined) {\n\t\treturn origin\n\t}\n\treturn DEFAULT_PRIMER_ORIGIN\n}\n\nasync function startRuntime<Pcis extends PciId>(\n\tconfig: RuntimeStartConfig<Pcis>,\n\taccessToken: ResolvedAccessToken\n): Promise<PrimerState<Pcis>> {\n\tconst transport = createTransport<Pcis>({\n\t\taccessToken,\n\t\tpublishableKey: config.publishableKey,\n\t\tsubject: config.subject,\n\t\torigin: config.origin,\n\t\tfetch: config.fetch,\n\t\tabort: config.abort,\n\t\tlogger: config.logger\n\t})\n\tconst session = makeSession<Pcis>({\n\t\tsubject: config.subject,\n\t\tsupportedPcis: config.supportedPcis,\n\t\tlogger: config.logger,\n\t\ttransport\n\t})\n\treturn session.execute({ kind: \"observation\" }, \"start\")\n}\n\nfunction makeUnauthenticatedState<Pcis extends PciId>(\n\tconfig: RuntimeStartConfig<Pcis>,\n\terror: Error | null\n): PrimerState<Pcis> {\n\treturn unauthenticatedState({\n\t\terror,\n\t\tlogin: function login() {\n\t\t\treturn loginAndStart(config)\n\t\t}\n\t})\n}\n\nasync function loginAndStart<Pcis extends PciId>(\n\tconfig: RuntimeStartConfig<Pcis>\n): Promise<PrimerState<Pcis>> {\n\tconst result = await beginHostedLogin({\n\t\torigin: config.origin,\n\t\tpublishableKey: config.publishableKey,\n\t\tlogger: config.logger\n\t})\n\tif (result.kind === \"unauthenticated\") {\n\t\treturn makeUnauthenticatedState(config, result.error)\n\t}\n\treturn startRuntime(config, result.accessToken)\n}\n\nasync function start<\n\tconst S extends SubjectSelection = undefined,\n\tconst Supported extends readonly PciId[] = []\n>(options: PrimerOptions<S, Supported>): Promise<PrimerState<RuntimePci<S, Supported>>> {\n\tconst logger = options.logger\n\tlogger.debug(\"start\")\n\tconst origin = primerOrigin(options.origin)\n\tconst config: RuntimeStartConfig<RuntimePci<S, Supported>> = {\n\t\tpublishableKey: options.publishableKey,\n\t\torigin,\n\t\tfetch: options.fetch,\n\t\tabort: options.abort,\n\t\tlogger,\n\t\tsubject: runtimeSubject(options.subject),\n\t\tsupportedPcis: supportedPcisOrEmpty(options.supportedPcis)\n\t}\n\tconst accessToken = resolveExistingAccessToken({\n\t\taccessToken: options.accessToken,\n\t\tpublishableKey: options.publishableKey,\n\t\torigin,\n\t\tlogger\n\t})\n\tif (accessToken.kind === \"fatal\") {\n\t\treturn {\n\t\t\tphase: \"fatal\",\n\t\t\terror: accessToken.error,\n\t\t\tretriable: false,\n\t\t\ttoJSON: poisonToJSON\n\t\t}\n\t}\n\tif (accessToken.kind === \"unauthenticated\") {\n\t\treturn makeUnauthenticatedState(config, accessToken.error)\n\t}\n\treturn startRuntime(config, accessToken.accessToken)\n}\n\nexport { start }\nexport type { PrimerOptions }\n"
|
|
30
29
|
],
|
|
31
|
-
"mappings": "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",
|
|
32
|
-
"debugId": "
|
|
30
|
+
"mappings": "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",
|
|
31
|
+
"debugId": "F2A9711D50B754AA64756E2164756E21",
|
|
33
32
|
"names": []
|
|
34
33
|
}
|
package/dist/client/start.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ type PciOptionsForSubject<S extends SubjectSelection, Supported extends readonly
|
|
|
23
23
|
type RuntimePci<S extends SubjectSelection, Supported extends readonly PciId[]> = Supported[number] | RequiredPciForSubject<S>;
|
|
24
24
|
type PrimerOptions<S extends SubjectSelection = undefined, Supported extends readonly PciId[] = []> = {
|
|
25
25
|
readonly publishableKey: string;
|
|
26
|
-
readonly origin
|
|
26
|
+
readonly origin?: string;
|
|
27
27
|
readonly accessToken?: string;
|
|
28
28
|
readonly fetch?: typeof globalThis.fetch;
|
|
29
29
|
readonly abort?: AbortController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/client/start.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAG3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAA;AASlE,OAAO,KAAK,EACX,eAAe,EACf,qBAAqB,EACrB,MAAM,0CAA0C,CAAA;AAEjD,KAAK,gBAAgB,GAAG,OAAO,GAAG,SAAS,CAAA;AAE3C,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,CAAA;AAErF,KAAK,cAAc,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACtE,SAAS,GACT,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACtB,KAAK,GACL,CAAC,CAAA;AAEL,KAAK,aAAa,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACrE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAChC;IAAE,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;CAAE,CAAA;AAE1C,KAAK,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,EAAE,SAAS,SAAS,SAAS,KAAK,EAAE,IAAI;IAC3F,qBAAqB,CAAC,CAAC,CAAC;CACxB,SAAS,CAAC,KAAK,CAAC,GACd;IAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,CAAA;CAAE,GACtC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,SAAS,IAAI,GAChE;IAAE,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAA;CAAE,GACrC;IAAE,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAA;CAAE,CAAA;AAErC,KAAK,UAAU,CAAC,CAAC,SAAS,gBAAgB,EAAE,SAAS,SAAS,SAAS,KAAK,EAAE,IAC3E,SAAS,CAAC,MAAM,CAAC,GACjB,qBAAqB,CAAC,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/client/start.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAA;AAG3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qCAAqC,CAAA;AASlE,OAAO,KAAK,EACX,eAAe,EACf,qBAAqB,EACrB,MAAM,0CAA0C,CAAA;AAEjD,KAAK,gBAAgB,GAAG,OAAO,GAAG,SAAS,CAAA;AAE3C,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,CAAA;AAErF,KAAK,cAAc,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACtE,SAAS,GACT,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACtB,KAAK,GACL,CAAC,CAAA;AAEL,KAAK,aAAa,CAAC,CAAC,SAAS,gBAAgB,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,GACrE;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAChC;IAAE,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;CAAE,CAAA;AAE1C,KAAK,oBAAoB,CAAC,CAAC,SAAS,gBAAgB,EAAE,SAAS,SAAS,SAAS,KAAK,EAAE,IAAI;IAC3F,qBAAqB,CAAC,CAAC,CAAC;CACxB,SAAS,CAAC,KAAK,CAAC,GACd;IAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,CAAA;CAAE,GACtC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,SAAS,IAAI,GAChE;IAAE,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAA;CAAE,GACrC;IAAE,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAA;CAAE,CAAA;AAErC,KAAK,UAAU,CAAC,CAAC,SAAS,gBAAgB,EAAE,SAAS,SAAS,SAAS,KAAK,EAAE,IAC3E,SAAS,CAAC,MAAM,CAAC,GACjB,qBAAqB,CAAC,CAAC,CAAC,CAAA;AAI3B,KAAK,aAAa,CACjB,CAAC,SAAS,gBAAgB,GAAG,SAAS,EACtC,SAAS,SAAS,SAAS,KAAK,EAAE,GAAG,EAAE,IACpC;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,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,GAAG,aAAa,CAAC,CAAC,CAAC,GACnB,oBAAoB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;AAmFnC,iBAAe,KAAK,CACnB,KAAK,CAAC,CAAC,SAAS,gBAAgB,GAAG,SAAS,EAC5C,KAAK,CAAC,SAAS,SAAS,SAAS,KAAK,EAAE,GAAG,EAAE,EAC5C,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CA+BtF;AAED,OAAO,EAAE,KAAK,EAAE,CAAA;AAChB,YAAY,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/client/transport.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAA;AACpG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AAC7F,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAChG,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,MAAM,6CAA6C,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAErF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAA;AAI/F,UAAU,SAAS,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK;IAC7C,IAAI,EAAE,YAAY,EAAE,CAAA;IACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACjC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC7C;AAED,KAAK,UAAU,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK,IACvC;IACA,OAAO,EAAE,UAAU,CAAA;IACnB,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;CACrB,GACD;IACA,OAAO,EAAE,WAAW,CAAA;IACpB,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;IACtB,UAAU,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACpC,SAAS,EAAE,OAAO,CAAA;IAClB,eAAe,EAAE,aAAa,EAAE,CAAA;IAChC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACrC,GACD;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,CAAA;AAE3B,UAAU,eAAe,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK;IACnD,OAAO,EAAE,mBAAmB,CAAA;IAC5B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;CACxB;AAED,KAAK,eAAe,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK,IAC5C;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;CAAE,GACpC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAA;AAE9B,UAAU,eAAe;IACxB,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAA;IACzC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAA;CACzC;AA2DD,iBAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CA+BzD;AAgCD,iBAAS,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAQ3C;AAED,iBAAS,eAAe,CAAC,IAAI,SAAS,KAAK,EAAE,EAAE,EAAE,eAAe,UAWhC,eAAe,CAAC,IAAI,CAAC,KAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/client/transport.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAA;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oDAAoD,CAAA;AACpG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AAC7F,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAA;AAChG,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,MAAM,6CAA6C,CAAA;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8CAA8C,CAAA;AAErF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAA;AAI/F,UAAU,SAAS,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK;IAC7C,IAAI,EAAE,YAAY,EAAE,CAAA;IACpB,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACjC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC7C;AAED,KAAK,UAAU,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK,IACvC;IACA,OAAO,EAAE,UAAU,CAAA;IACnB,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;CACrB,GACD;IACA,OAAO,EAAE,WAAW,CAAA;IACpB,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;IACtB,UAAU,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACpC,SAAS,EAAE,OAAO,CAAA;IAClB,eAAe,EAAE,aAAa,EAAE,CAAA;IAChC,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACrC,GACD;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,CAAA;AAE3B,UAAU,eAAe,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK;IACnD,OAAO,EAAE,mBAAmB,CAAA;IAC5B,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;CACxB;AAED,KAAK,eAAe,CAAC,IAAI,SAAS,KAAK,GAAG,KAAK,IAC5C;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAA;CAAE,GACpC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAA;AAE9B,UAAU,eAAe;IACxB,QAAQ,CAAC,WAAW,EAAE,mBAAmB,CAAA;IACzC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAA;CACzC;AA2DD,iBAAS,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CA+BzD;AAgCD,iBAAS,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAQ3C;AAED,iBAAS,eAAe,CAAC,IAAI,SAAS,KAAK,EAAE,EAAE,EAAE,eAAe,UAWhC,eAAe,CAAC,IAAI,CAAC,KAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAoFrF;AAED,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,CAAA;AACtD,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,UAAU,EAAE,CAAA"}
|
package/dist/contracts/index.js
CHANGED
|
@@ -1,3 +1,41 @@
|
|
|
1
|
+
var __dispose = Symbol.dispose || /* @__PURE__ */ Symbol.for("Symbol.dispose");
|
|
2
|
+
var __asyncDispose = Symbol.asyncDispose || /* @__PURE__ */ Symbol.for("Symbol.asyncDispose");
|
|
3
|
+
var __using = (stack, value, async) => {
|
|
4
|
+
if (value != null) {
|
|
5
|
+
if (typeof value !== "object" && typeof value !== "function")
|
|
6
|
+
throw TypeError('Object expected to be assigned to "using" declaration');
|
|
7
|
+
var dispose;
|
|
8
|
+
if (async)
|
|
9
|
+
dispose = value[__asyncDispose];
|
|
10
|
+
if (dispose === undefined)
|
|
11
|
+
dispose = value[__dispose];
|
|
12
|
+
if (typeof dispose !== "function")
|
|
13
|
+
throw TypeError("Object not disposable");
|
|
14
|
+
stack.push([async, dispose, value]);
|
|
15
|
+
} else if (async) {
|
|
16
|
+
stack.push([async]);
|
|
17
|
+
}
|
|
18
|
+
return value;
|
|
19
|
+
};
|
|
20
|
+
var __callDispose = (stack, error, hasError) => {
|
|
21
|
+
var E = typeof SuppressedError === "function" ? SuppressedError : function(e, s, m, _) {
|
|
22
|
+
return _ = Error(m), _.name = "SuppressedError", _.error = e, _.suppressed = s, _;
|
|
23
|
+
}, fail = (e) => error = hasError ? new E(e, error, "An error was suppressed during disposal") : (hasError = true, e), next = (it) => {
|
|
24
|
+
while (it = stack.pop()) {
|
|
25
|
+
try {
|
|
26
|
+
var result = it[1] && it[1].call(it[2]);
|
|
27
|
+
if (it[0])
|
|
28
|
+
return Promise.resolve(result).then(next, (e) => (fail(e), next()));
|
|
29
|
+
} catch (e) {
|
|
30
|
+
fail(e);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
if (hasError)
|
|
34
|
+
throw error;
|
|
35
|
+
};
|
|
36
|
+
return next();
|
|
37
|
+
};
|
|
38
|
+
|
|
1
39
|
// src/contracts/content.ts
|
|
2
40
|
function inlinesToPlainText(nodes) {
|
|
3
41
|
const parts = [];
|
|
@@ -329,4 +367,4 @@ export {
|
|
|
329
367
|
ChoiceSubmissionSchema
|
|
330
368
|
};
|
|
331
369
|
|
|
332
|
-
//# debugId=
|
|
370
|
+
//# debugId=4EE9F17079BED67664756E2164756E21
|