@fanvue/builder-sdk 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +77 -1
- package/dist/bridge/index.d.ts +2 -0
- package/dist/bridge/index.js +3 -0
- package/dist/bridge-CGVtI3hr.js +336 -0
- package/dist/bridge-CGVtI3hr.js.map +1 -0
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.js +2 -1
- package/dist/core-BqdYUMrJ.js +1653 -0
- package/dist/core-BqdYUMrJ.js.map +1 -0
- package/dist/index-BRDYLBlc.d.ts +223 -0
- package/dist/index-BRDYLBlc.d.ts.map +1 -0
- package/dist/{index-CweVyIKX.d.ts → index-C4ewLil3.d.ts} +2 -2
- package/dist/{index-CweVyIKX.d.ts.map → index-C4ewLil3.d.ts.map} +1 -1
- package/dist/index-ClbZoV_Z.d.ts +420 -0
- package/dist/index-ClbZoV_Z.d.ts.map +1 -0
- package/dist/{index-pS9wR5yg.d.ts → index-Dr-mZ0qP.d.ts} +500 -901
- package/dist/index-Dr-mZ0qP.d.ts.map +1 -0
- package/dist/nextjs/embedded-app/index.d.ts +2 -2
- package/dist/nextjs/embedded-app/index.js +3 -2
- package/dist/nextjs/embedded-app/index.js.map +1 -1
- package/dist/nextjs/off-platform/index.d.ts +2 -2
- package/dist/nextjs/off-platform/index.js +3 -2
- package/dist/nextjs/off-platform/index.js.map +1 -1
- package/dist/{nextjs-CESI_EiU.js → nextjs-B5Tqgt_n.js} +2 -2
- package/dist/{nextjs-CESI_EiU.js.map → nextjs-B5Tqgt_n.js.map} +1 -1
- package/dist/react/index.d.ts +37 -2
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +61 -2
- package/dist/react/index.js.map +1 -1
- package/dist/{core-CvVOMyqr.js → schemas-DbyHF7Xi.js} +261 -1662
- package/dist/schemas-DbyHF7Xi.js.map +1 -0
- package/package.json +20 -16
- package/dist/core-CvVOMyqr.js.map +0 -1
- package/dist/index-pS9wR5yg.d.ts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-Dr-mZ0qP.d.ts","names":["Schema","ObjectSchema","ArraySchema","StringSchema","NumberSchema","IntegerSchema","BooleanSchema","NullSchema","_JSONSchema","JSONSchema","Record","Array","k","$schema","$id","$anchor","$ref","$dynamicRef","$dynamicAnchor","$vocabulary","$comment","$defs","type","additionalItems","unevaluatedItems","prefixItems","items","contains","additionalProperties","unevaluatedProperties","properties","patternProperties","dependentSchemas","propertyNames","if","then","else","allOf","anyOf","oneOf","not","multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","maxItems","minItems","uniqueItems","maxContains","minContains","maxProperties","minProperties","required","dependentRequired","enum","const","id","title","description","default","deprecated","readOnly","writeOnly","nullable","examples","format","contentMediaType","contentEncoding","contentSchema","_prefault","BaseSchema","StandardTypedV1","Input","Output","Props","Schema","Types","NonNullable","version","vendor","types","input","output","InferInput","InferOutput","StandardSchemaV1","Options","Result","Promise","SuccessResult","FailureResult","Record","Issue","ReadonlyArray","PropertyKey","PathSegment","validate","value","options","issues","libraryOptions","message","path","key","StandardJSONSchemaV1","Converter","Target","jsonSchema","target","StandardSchemaWithJSONProps","StandardSchemaWithJSON","core","$ZodType","$output","$input","$replace","Meta","S","output","input","M","P","K","R","args","MetadataType","$ZodRegistry","Schema","WeakMap","Map","_meta","_schema","_map","_idmap","add","schema","clear","remove","get","has","JSONSchemaMeta","id","title","description","deprecated","k","GlobalMeta","registry","T","globalRegistry","core","JSONSchema","$ZodRegistry","schemas","StandardJSONSchemaV1","StandardSchemaWithJSONProps","Processor","T","$ZodType","ToJSONSchemaContext","BaseSchema","ProcessParams","schema","ctx","json","params","JSONSchemaGeneratorParams","Record","$ZodTypes","processors","metadata","target","unrepresentable","override","zodSchema","jsonSchema","path","io","cycles","reused","external","registry","id","uri","defs","ToJSONSchemaParams","Omit","RegistryToJSONSchemaParams","schemaPath","Seen","def","defId","count","cycle","isParent","ref","Map","metadataRegistry","counter","seen","initializeContext","process","_params","extractDefs","finalize","ZodStandardJSONSchemaPayload","ZodStandardSchemaWithJSON","input","output","createToJSONSchemaMethod","StandardJSONSchemaMethodParams","Parameters","createStandardJSONSchemaMethod","checks","$ZodConfig","errors","schemas","JSONType","key","JWTAlgorithm","HashAlgorithm","HashEncoding","HashFormat","IPVersion","MimeTypes","ParsedTypes","AssertEqual","V","T","U","AssertNotEqual","AssertExtends","IsAny","Omit","K","Exclude","Pick","OmitKeys","MakePartial","InexactPartial","MakeRequired","Required","Exactly","X","Record","NoUndefined","Whatever","LoosePartial","k","Mask","Keys","PropertyKey","Writeable","P","EmptyObject","BuiltIn","Symbol","toStringTag","Date","Error","Generator","Promise","RegExp","args","MakeReadonly","Map","ReadonlyMap","Set","ReadonlySet","Head","Tail","Array","ReadonlyArray","Readonly","SomeObject","Identity","Flatten","Mapped","Prettify","NoNeverKeys","NoNever","Extend","A","B","TupleItems","SomeType","AnyFunc","IsProp","MaybeAsync","KeyOf","OmitIndexSignature","ExtractIndexSignature","SchemaClass","def","EnumValue","EnumLike","ToEnum","KeysEnum","KeysArray","Literal","LiteralArray","Primitive","PrimitiveArray","HasSize","size","HasLength","length","Numeric","SafeParseResult","SafeParseSuccess","SafeParseError","success","data","error","$ZodError","PropValues","PrimitiveSet","assertEqual","val","assertNotEqual","assertIs","_arg","assertNever","_x","assert","_","getEnumValues","entries","joinValues","array","separator","jsonStringifyReplacer","value","cached","getter","nullish","input","cleanRegex","source","floatSafeRemainder","step","defineLazy","object","objectClone","obj","assignProp","target","prop","mergeDefs","defs","cloneDef","$ZodType","schema","getElementAtPath","path","promiseAllObject","Awaited","promisesObj","randomString","esc","str","slugify","captureStackTrace","Function","targetObject","constructorOpt","isObject","allowsEval","isPlainObject","o","shallowClone","numKeys","getParsedType","propertyKeyTypes","primitiveTypes","escapeRegex","clone","inst","parent","params","EmptyToNever","Normalize","normalizeParams","_params","createTransparentProxy","stringifyPrimitive","optionalKeys","$ZodShape","shape","CleanKey","ToCleanMap","$ZodLooseShape","FromCleanMap","NUMBER_FORMAT_RANGES","$ZodNumberFormats","BIGINT_FORMAT_RANGES","$ZodBigIntFormats","pick","$ZodObject","mask","omit","extend","safeExtend","merge","a","b","partial","$ZodOptional","Class","required","$ZodNonOptional","Constructor","Def","aborted","ParsePayload","x","startIndex","prefixIssues","$ZodRawIssue","issues","unwrapMessage","message","finalizeIssue","ParseContextInternal","$ZodIssue","iss","ctx","config","getSizableOrigin","getLengthableOrigin","parsedType","$ZodInvalidTypeExpected","issue","_iss","cleanEnum","base64ToUint8Array","Uint8Array","InstanceType","base64","uint8ArrayToBase64","bytes","base64urlToUint8Array","base64url","uint8ArrayToBase64url","hexToUint8Array","hex","uint8ArrayToHex","constructor","_args","version","major","minor","patch","checks","core","errors","JSONSchema","StandardSchemaV1","ProcessParams","ToJSONSchemaContext","util","version","ParseContext","T","$ZodIssueBase","$ZodErrorMap","error","reportInput","jitless","ParseContextInternal","async","direction","skipChecks","ParsePayload","$ZodRawIssue","value","issues","aborted","CheckFn","MaybeAsync","input","$ZodTypeDef","$ZodCheck","type","_$ZodTypeInternals","AnyFunc","Set","PrimitiveSet","PropValues","RegExp","$ZodType","Record","BaseSchema","def","deferred","run","payload","ctx","parse","traits","optin","optout","values","propValues","pattern","constr","bag","isst","processJSONSchema","json","params","toJSONSchema","parent","$ZodTypeInternals","O","I","output","$ZodStandardSchema","Props","SomeType","_zod","Internals","_$ZodType","$constructor","clone","$ZodStringDef","coerce","$ZodStringInternals","Input","$ZodIssueInvalidType","LoosePartial","minimum","maximum","patterns","format","contentEncoding","$ZodString","$ZodStringFormatDef","Format","$ZodCheckStringFormatDef","$ZodStringFormatInternals","$ZodCheckStringFormatInternals","$ZodStringFormat","$ZodGUIDDef","$ZodGUIDInternals","$ZodGUID","$ZodUUIDDef","$ZodUUIDInternals","$ZodUUID","$ZodEmailDef","$ZodEmailInternals","$ZodEmail","$ZodURLDef","hostname","protocol","normalize","$ZodURLInternals","$ZodURL","$ZodEmojiDef","$ZodEmojiInternals","$ZodEmoji","$ZodNanoIDDef","$ZodNanoIDInternals","$ZodNanoID","$ZodCUIDDef","$ZodCUIDInternals","$ZodCUID","$ZodCUID2Def","$ZodCUID2Internals","$ZodCUID2","$ZodULIDDef","$ZodULIDInternals","$ZodULID","$ZodXIDDef","$ZodXIDInternals","$ZodXID","$ZodKSUIDDef","$ZodKSUIDInternals","$ZodKSUID","$ZodISODateTimeDef","precision","offset","local","$ZodISODateTimeInternals","$ZodISODateTime","$ZodISODateDef","$ZodISODateInternals","$ZodISODate","$ZodISOTimeDef","$ZodISOTimeInternals","$ZodISOTime","$ZodISODurationDef","$ZodISODurationInternals","$ZodISODuration","$ZodIPv4Def","$ZodIPv4Internals","$ZodIPv4","$ZodIPv6Def","$ZodIPv6Internals","$ZodIPv6","$ZodMACDef","delimiter","$ZodMACInternals","$ZodMAC","$ZodCIDRv4Def","$ZodCIDRv4Internals","$ZodCIDRv4","$ZodCIDRv6Def","$ZodCIDRv6Internals","$ZodCIDRv6","isValidBase64","data","$ZodBase64Def","$ZodBase64Internals","$ZodBase64","isValidBase64URL","$ZodBase64URLDef","$ZodBase64URLInternals","$ZodBase64URL","$ZodE164Def","$ZodE164Internals","$ZodE164","isValidJWT","JWTAlgorithm","token","algorithm","$ZodJWTDef","alg","$ZodJWTInternals","$ZodJWT","$ZodCustomStringFormatDef","fn","val","$ZodCustomStringFormatInternals","$ZodCustomStringFormat","$ZodNumberDef","$ZodNumberInternals","exclusiveMinimum","exclusiveMaximum","$ZodNumber","$ZodNumberFormatDef","$ZodCheckNumberFormatDef","$ZodNumberFormatInternals","$ZodCheckNumberFormatInternals","$ZodNumberFormat","$ZodBooleanDef","$ZodBooleanInternals","$ZodBoolean","$ZodBigIntDef","$ZodBigIntInternals","$ZodBigInt","$ZodBigIntFormatDef","$ZodCheckBigIntFormatDef","check","$ZodBigIntFormatInternals","$ZodCheckBigIntFormatInternals","$ZodBigIntFormat","$ZodSymbolDef","$ZodSymbolInternals","$ZodSymbol","$ZodUndefinedDef","$ZodUndefinedInternals","$ZodUndefined","$ZodNullDef","$ZodNullInternals","$ZodNull","$ZodAnyDef","$ZodAnyInternals","$ZodAny","$ZodUnknownDef","$ZodUnknownInternals","$ZodUnknown","$ZodNeverDef","$ZodNeverInternals","$ZodNever","$ZodVoidDef","$ZodVoidInternals","$ZodVoid","$ZodDateDef","$ZodDateInternals","Date","$ZodDate","$ZodArrayDef","element","$ZodArrayInternals","$ZodArray","OptionalOutSchema","OptionalInSchema","$InferObjectOutput","Extra","$ZodLooseShape","IsAny","k","Prettify","$InferObjectInput","$ZodObjectConfig","out","in","$loose","$strict","$strip","$catchall","$ZodShape","Readonly","$ZodObjectDef","Shape","shape","catchall","$ZodObjectInternals","Config","$ZodIssueUnrecognizedKeys","config","$ZodObject","Params","$ZodObjectJIT","$InferUnionOutput","$InferUnionInput","$ZodUnionDef","Options","options","inclusive","IsOptionalIn","IsOptionalOut","$ZodUnionInternals","$ZodIssueInvalidUnion","$ZodUnion","$ZodXorInternals","$ZodXor","$ZodDiscriminatedUnionDef","Disc","discriminator","unionFallback","$ZodDiscriminatedUnionInternals","$ZodDiscriminatedUnion","$ZodIntersectionDef","Left","Right","left","right","$ZodIntersectionInternals","A","B","$ZodIntersection","$ZodTupleDef","Rest","TupleItems","items","rest","$InferTupleInputType","TupleInputTypeWithOptionals","TupleInputTypeNoOptionals","Tail","Prefix","$InferTupleOutputType","TupleOutputTypeWithOptionals","TupleOutputTypeNoOptionals","$ZodTupleInternals","$ZodIssueTooBig","$ZodIssueTooSmall","$ZodTuple","$ZodRecordKey","$ZodRecordDef","Key","Value","keyType","valueType","mode","$InferZodRecordOutput","$partial","Partial","$InferZodRecordInput","PropertyKey","$ZodRecordInternals","$ZodIssueInvalidKey","$ZodRecord","$ZodMapDef","$ZodMapInternals","Map","$ZodIssueInvalidElement","$ZodMap","$ZodSetDef","$ZodSetInternals","$ZodSet","$InferEnumOutput","EnumLike","$InferEnumInput","$ZodEnumDef","entries","$ZodEnumInternals","$ZodIssueInvalidValue","$ZodEnum","$ZodLiteralDef","Literal","$ZodLiteralInternals","$ZodLiteral","_File","globalThis","F","InstanceType","File","args","size","$ZodFileDef","$ZodFileInternals","MimeTypes","mime","$ZodFile","$ZodTransformDef","transform","$ZodTransformInternals","$ZodTransform","$ZodOptionalDef","innerType","$ZodOptionalInternals","$ZodOptional","$ZodExactOptionalDef","$ZodExactOptionalInternals","$ZodExactOptional","$ZodNullableDef","$ZodNullableInternals","$ZodNullable","$ZodDefaultDef","NoUndefined","defaultValue","$ZodDefaultInternals","$ZodDefault","$ZodPrefaultDef","$ZodPrefaultInternals","$ZodPrefault","$ZodNonOptionalDef","$ZodNonOptionalInternals","$ZodNonOptional","$ZodSuccessDef","$ZodSuccessInternals","$ZodSuccess","$ZodCatchCtx","$ZodIssue","$ZodCatchDef","catchValue","$ZodCatchInternals","$ZodCatch","$ZodNaNDef","$ZodNaNInternals","$ZodNaN","$ZodPipeDef","reverseTransform","$ZodPipeInternals","$ZodPipe","$ZodCodecDef","$ZodCodecInternals","$ZodCodec","$ZodReadonlyDef","$ZodReadonlyInternals","MakeReadonly","$ZodReadonly","$ZodTemplateLiteralDef","$ZodTemplateLiteralPart","parts","$ZodTemplateLiteralInternals","Template","$ZodTemplateLiteral","LiteralPart","Exclude","SchemaPartInternals","SchemaPart","UndefinedToEmptyString","AppendToTemplateLiteral","Suffix","ConcatenateTupleOfStrings","First","ConvertPartsToStringTuple","Parts","K","ToTemplateLiteral","$PartsToTemplateLiteral","Last","$ZodFunctionArgs","$ZodFunctionIn","$ZodFunctionOut","$InferInnerFunctionType","Args","Returns","$InferInnerFunctionTypeAsync","$InferOuterFunctionType","$InferOuterFunctionTypeAsync","Promise","$ZodFunctionDef","In","Out","$ZodFunctionInternals","$ZodFunction","Items","NewArgs","NewReturns","Parameters","ReturnType","_def","_input","_output","implement","func","implementAsync","$ZodFunctionParams","$ZodPromiseDef","$ZodPromiseInternals","$ZodPromise","$ZodLazyDef","getter","$ZodLazyInternals","$ZodLazy","$ZodCustomDef","$ZodCheckDef","path","arg","$ZodCustomInternals","Class","$ZodCheckInternals","issc","$ZodCustom","$ZodTypes","$ZodStringFormatTypes","HashFormat","core","errors","schemas","util","$ZodCheckDef","$ZodErrorMap","ParsePayload","check","error","abort","when","payload","$ZodCheckInternals","T","$ZodIssueBase","MaybeAsync","$ZodType","def","issc","onattach","schema","$ZodCheck","_zod","$constructor","$ZodCheckLessThanDef","Numeric","value","inclusive","$ZodCheckLessThanInternals","$ZodIssueTooBig","$ZodCheckLessThan","$ZodCheckGreaterThanDef","$ZodCheckGreaterThanInternals","$ZodIssueTooSmall","$ZodCheckGreaterThan","$ZodCheckMultipleOfDef","$ZodCheckMultipleOfInternals","$ZodIssueNotMultipleOf","$ZodCheckMultipleOf","$ZodNumberFormats","$ZodCheckNumberFormatDef","format","$ZodCheckNumberFormatInternals","$ZodIssueInvalidType","$ZodCheckNumberFormat","$ZodBigIntFormats","$ZodCheckBigIntFormatDef","$ZodCheckBigIntFormatInternals","$ZodCheckBigIntFormat","$ZodCheckMaxSizeDef","maximum","$ZodCheckMaxSizeInternals","HasSize","$ZodCheckMaxSize","$ZodCheckMinSizeDef","minimum","$ZodCheckMinSizeInternals","$ZodCheckMinSize","$ZodCheckSizeEqualsDef","size","$ZodCheckSizeEqualsInternals","$ZodCheckSizeEquals","$ZodCheckMaxLengthDef","$ZodCheckMaxLengthInternals","HasLength","$ZodCheckMaxLength","$ZodCheckMinLengthDef","$ZodCheckMinLengthInternals","$ZodCheckMinLength","$ZodCheckLengthEqualsDef","length","$ZodCheckLengthEqualsInternals","$ZodCheckLengthEquals","$ZodStringFormats","$ZodCheckStringFormatDef","Format","RegExp","pattern","$ZodCheckStringFormatInternals","$ZodIssueInvalidStringFormat","$ZodCheckStringFormat","$ZodCheckRegexDef","$ZodCheckRegexInternals","$ZodCheckRegex","$ZodCheckLowerCaseDef","$ZodCheckLowerCaseInternals","$ZodCheckLowerCase","$ZodCheckUpperCaseDef","$ZodCheckUpperCaseInternals","$ZodCheckUpperCase","$ZodCheckIncludesDef","includes","position","$ZodCheckIncludesInternals","$ZodCheckIncludes","$ZodCheckStartsWithDef","prefix","$ZodCheckStartsWithInternals","$ZodCheckStartsWith","$ZodCheckEndsWithDef","suffix","$ZodCheckEndsWithInternals","$ZodCheckEndsWith","$ZodCheckPropertyDef","property","$ZodCheckPropertyInternals","$ZodIssue","$ZodCheckProperty","$ZodCheckMimeTypeDef","MimeTypes","mime","$ZodCheckMimeTypeInternals","File","$ZodIssueInvalidValue","$ZodCheckMimeType","$ZodCheckOverwriteDef","tx","$ZodCheckOverwriteInternals","$ZodCheckOverwrite","$ZodChecks","$ZodStringFormatChecks","$ZodStringFormatTypes","$ZodCheck","$ZodStringFormats","$constructor","$ZodType","StandardSchemaV1","util","$ZodIssueBase","PropertyKey","code","input","path","message","$ZodInvalidTypeExpected","$ZodIssueInvalidType","Input","expected","$ZodIssueTooBig","origin","maximum","inclusive","exact","$ZodIssueTooSmall","minimum","$ZodIssueInvalidStringFormat","format","pattern","$ZodIssueNotMultipleOf","divisor","$ZodIssueUnrecognizedKeys","Record","keys","$ZodIssueInvalidUnionNoMatch","$ZodIssue","errors","discriminator","$ZodIssueInvalidUnionMultipleMatch","$ZodIssueInvalidUnion","$ZodIssueInvalidKey","issues","$ZodIssueInvalidElement","key","$ZodIssueInvalidValue","Primitive","values","$ZodIssueCustom","params","$ZodIssueStringCommonFormats","Exclude","$ZodIssueStringInvalidRegex","$ZodIssueStringInvalidJWT","algorithm","$ZodIssueStringStartsWith","prefix","$ZodIssueStringEndsWith","suffix","$ZodIssueStringIncludes","includes","$ZodStringFormatIssues","$ZodIssueCode","$ZodInternalIssue","T","RawIssue","MakePartial","Flatten","inst","continue","$ZodRawIssue","$ZodErrorMap","issue","$ZodError","Error","type","_zod","output","def","stack","name","$ZodRealError","$ZodFlattenedError","U","_FlattenedError","formErrors","fieldErrors","P","flattenError","error","mapper","_ZodFormattedError","K","$ZodFormattedError","k","_errors","formatError","$ZodErrorTree","Array","items","properties","treeifyError","toDotPath","PathSegment","_path","prettifyError","FailureResult","errors","schemas","Class","ZodTrait","_zod","def","k","$constructor","T","D","init","inst","NEVER","name","initializer","Parent","params","$brand","$ZodBranded","Brand","Dir","SomeType","input","output","$ZodNarrow","Out","$ZodAsyncError","Error","constructor","$ZodEncodeError","infer","$ZodConfig","$ZodErrorMap","customError","localeError","jitless","globalConfig","config","Partial","newConfig","checks","core","errors","registries","schemas","util","Params","T","IssueTypes","OmitKeys","$ZodType","$ZodCheck","$ZodIssueBase","Omit","$ZodErrorMap","EmptyToNever","Partial","Flatten","error","message","TypeParams","AlsoOmit","Exclude","NonNullable","_isst","CheckParams","StringFormatParams","$ZodStringFormat","CheckStringFormatParams","CheckTypeParams","$ZodStringParams","$ZodString","_string","SchemaClass","Class","params","_coercedString","$ZodStringFormatParams","$ZodCheckStringFormatParams","$ZodCheckStringFormat","$ZodEmailParams","$ZodEmail","$ZodCheckEmailParams","_email","$ZodGUIDParams","$ZodGUID","$ZodCheckGUIDParams","_guid","$ZodUUIDParams","$ZodUUID","$ZodCheckUUIDParams","_uuid","$ZodUUIDv4Params","$ZodCheckUUIDv4Params","_uuidv4","$ZodUUIDv6Params","$ZodCheckUUIDv6Params","_uuidv6","$ZodUUIDv7Params","$ZodCheckUUIDv7Params","_uuidv7","$ZodURLParams","$ZodURL","$ZodCheckURLParams","_url","$ZodEmojiParams","$ZodEmoji","$ZodCheckEmojiParams","_emoji","$ZodNanoIDParams","$ZodNanoID","$ZodCheckNanoIDParams","_nanoid","$ZodCUIDParams","$ZodCUID","$ZodCheckCUIDParams","_cuid","$ZodCUID2Params","$ZodCUID2","$ZodCheckCUID2Params","_cuid2","$ZodULIDParams","$ZodULID","$ZodCheckULIDParams","_ulid","$ZodXIDParams","$ZodXID","$ZodCheckXIDParams","_xid","$ZodKSUIDParams","$ZodKSUID","$ZodCheckKSUIDParams","_ksuid","$ZodIPv4Params","$ZodIPv4","$ZodCheckIPv4Params","_ipv4","$ZodIPv6Params","$ZodIPv6","$ZodCheckIPv6Params","_ipv6","$ZodMACParams","$ZodMAC","$ZodCheckMACParams","_mac","$ZodCIDRv4Params","$ZodCIDRv4","$ZodCheckCIDRv4Params","_cidrv4","$ZodCIDRv6Params","$ZodCIDRv6","$ZodCheckCIDRv6Params","_cidrv6","$ZodBase64Params","$ZodBase64","$ZodCheckBase64Params","_base64","$ZodBase64URLParams","$ZodBase64URL","$ZodCheckBase64URLParams","_base64url","$ZodE164Params","$ZodE164","$ZodCheckE164Params","_e164","$ZodJWTParams","$ZodJWT","$ZodCheckJWTParams","_jwt","TimePrecision","Any","Minute","Second","Millisecond","Microsecond","$ZodISODateTimeParams","$ZodISODateTime","$ZodCheckISODateTimeParams","_isoDateTime","$ZodISODateParams","$ZodISODate","$ZodCheckISODateParams","_isoDate","$ZodISOTimeParams","$ZodISOTime","$ZodCheckISOTimeParams","_isoTime","$ZodISODurationParams","$ZodISODuration","$ZodCheckISODurationParams","_isoDuration","$ZodNumberParams","$ZodNumber","$ZodNumberFormatParams","$ZodNumberFormat","$ZodCheckNumberFormatParams","$ZodCheckNumberFormat","_number","_coercedNumber","_int","_float32","_float64","_int32","_uint32","$ZodBooleanParams","$ZodBoolean","_boolean","_coercedBoolean","$ZodBigIntParams","$ZodBigInt","$ZodBigIntFormatParams","$ZodBigIntFormat","$ZodCheckBigIntFormatParams","$ZodCheckBigIntFormat","_bigint","_coercedBigint","_int64","_uint64","$ZodSymbolParams","$ZodSymbol","_symbol","$ZodUndefinedParams","$ZodUndefined","_undefined","$ZodNullParams","$ZodNull","_null","$ZodAnyParams","$ZodAny","_any","$ZodUnknownParams","$ZodUnknown","_unknown","$ZodNeverParams","$ZodNever","_never","$ZodVoidParams","$ZodVoid","_void","$ZodDateParams","$ZodDate","_date","_coercedDate","$ZodNaNParams","$ZodNaN","_nan","$ZodCheckLessThanParams","$ZodCheckLessThan","_lt","Numeric","value","_lte","_max","$ZodCheckGreaterThanParams","$ZodCheckGreaterThan","_gt","_gte","_min","_positive","_negative","_nonpositive","_nonnegative","$ZodCheckMultipleOfParams","$ZodCheckMultipleOf","_multipleOf","$ZodCheckMaxSizeParams","$ZodCheckMaxSize","_maxSize","HasSize","maximum","$ZodCheckMinSizeParams","$ZodCheckMinSize","_minSize","minimum","$ZodCheckSizeEqualsParams","$ZodCheckSizeEquals","_size","size","$ZodCheckMaxLengthParams","$ZodCheckMaxLength","_maxLength","HasLength","$ZodCheckMinLengthParams","$ZodCheckMinLength","_minLength","$ZodCheckLengthEqualsParams","$ZodCheckLengthEquals","_length","length","$ZodCheckRegexParams","$ZodCheckRegex","_regex","RegExp","pattern","$ZodCheckLowerCaseParams","$ZodCheckLowerCase","_lowercase","$ZodCheckUpperCaseParams","$ZodCheckUpperCase","_uppercase","$ZodCheckIncludesParams","$ZodCheckIncludes","_includes","includes","$ZodCheckStartsWithParams","$ZodCheckStartsWith","_startsWith","prefix","$ZodCheckEndsWithParams","$ZodCheckEndsWith","_endsWith","suffix","$ZodCheckPropertyParams","$ZodCheckProperty","_property","K","output","property","schema","k","$ZodCheckMimeTypeParams","$ZodCheckMimeType","_mime","MimeTypes","types","_overwrite","$ZodCheckOverwrite","input","tx","_normalize","form","_trim","_toLowerCase","_toUpperCase","_slugify","$ZodArrayParams","$ZodArray","_array","element","$ZodObjectParams","$ZodObject","$ZodUnionParams","$ZodUnion","_union","options","$ZodXorParams","$ZodXor","_xor","$ZodTypeDiscriminableInternals","PropValues","$ZodTypeInternals","propValues","$ZodTypeDiscriminable","_zod","$ZodDiscriminatedUnionParams","$ZodDiscriminatedUnion","_discriminatedUnion","Types","Disc","discriminator","$ZodIntersectionParams","$ZodIntersection","_intersection","U","left","right","$ZodTupleParams","$ZodTuple","_tuple","items","Rest","rest","$ZodRecordParams","$ZodRecord","_record","Key","Value","$ZodRecordKey","keyType","valueType","$ZodMapParams","$ZodMap","_map","$ZodSetParams","$ZodSet","_set","$ZodEnumParams","$ZodEnum","_enum","ToEnum","values","EnumLike","entries","_nativeEnum","$ZodLiteralParams","$ZodLiteral","_literal","Literal","Array","$ZodFileParams","$ZodFile","_file","$ZodTransformParams","$ZodTransform","_transform","I","O","ParsePayload","Awaited","ctx","fn","$ZodOptionalParams","$ZodOptional","_optional","innerType","$ZodNullableParams","$ZodNullable","_nullable","$ZodDefaultParams","$ZodDefault","_default","NoUndefined","defaultValue","$ZodNonOptionalParams","$ZodNonOptional","_nonoptional","$ZodSuccessParams","$ZodSuccess","_success","$ZodCatchParams","$ZodCatch","_catch","$ZodCatchCtx","catchValue","$ZodPipeParams","$ZodPipe","_pipe","A","B","in_","out","$ZodReadonlyParams","$ZodReadonly","_readonly","$ZodTemplateLiteralParams","$ZodTemplateLiteral","_templateLiteral","Parts","$ZodTemplateLiteralPart","$PartsToTemplateLiteral","parts","$ZodLazyParams","$ZodLazy","_lazy","getter","$ZodPromiseParams","$ZodPromise","_promise","$ZodCustomParams","$ZodCustom","_custom","data","_params","_refine","$ZodSuperRefineIssue","$ZodIssue","RawIssue","MakePartial","Record","inst","continue","$RefinementCtx","addIssue","arg","_superRefine","Promise","payload","_check","CheckFn","describe","description","meta","GlobalMeta","metadata","$ZodStringBoolParams","truthy","falsy","case","_stringbool","$ZodCodec","Codec","Boolean","String","Classes","_stringFormat","Format","$ZodCustomStringFormat","MaybeAsync","format","fnOrRegex","core","$ZodError","ZodIssue","$ZodIssue","ZodError","U","T","$ZodFormattedError","$ZodFlattenedError","format","issue","mapper","flatten","addIssue","addIssues","issues","isEmpty","$constructor","ZodRealError","ZodFlattenedError","ZodFormattedError","$ZodErrorMap","ZodErrorMap","IssueData","$ZodRawIssue","core","ZodError","ZodSafeParseResult","T","ZodSafeParseSuccess","ZodSafeParseError","success","data","error","parse","$ZodType","$ZodIssue","ParseContext","util","AnyFunc","$ZodErrorClass","output","schema","value","_ctx","callee","Err","_params","parseAsync","Promise","safeParse","safeParseAsync","encode","input","decode","encodeAsync","decodeAsync","safeEncode","safeDecode","safeEncodeAsync","safeDecodeAsync","core","util","StandardSchemaWithJSONProps","parse","ZodStandardSchemaWithJSON","T","input","output","ZodType","R","Dir","Ch","NewOut","Output","Input","Internals","$ZodTypeInternals","ToJSONSchemaParams","ZodStandardJSONSchemaPayload","CheckFn","$ZodCheck","$ZodRegistry","$replace","PropertyKey","$ZodBranded","$ZodIssue","ParseContext","ZodSafeParseResult","Promise","$ZodCustomParams","$RefinementCtx","ZodOptional","ZodExactOptional","$ZodNonOptionalParams","ZodNonOptional","ZodNullable","NoUndefined","ZodDefault","ZodPrefault","ZodArray","SomeType","ZodUnion","ZodIntersection","Awaited","ZodTransform","ZodPipe","ZodCatch","$ZodCatchCtx","$ZodType","ZodReadonly","GlobalMeta","def","type","_def","_output","_input","toJSONSchema","params","check","checks","with","clone","parent","register","registry","meta","brand","value","data","safeParse","parseAsync","safeParseAsync","spa","encode","decode","encodeAsync","decodeAsync","safeEncode","safeDecode","safeEncodeAsync","safeDecodeAsync","refine","arg","superRefine","ctx","refinement","overwrite","x","fn","optional","exactOptional","nonoptional","nullable","nullish","default","prefault","array","or","option","and","incoming","transform","catch","pipe","target","readonly","describe","description","isOptional","isNullable","apply","schema","_ZodType","$constructor","_ZodString","$ZodStringInternals","RegExp","$ZodCheckRegexParams","$ZodCheckIncludesParams","$ZodCheckStartsWithParams","$ZodCheckEndsWithParams","$ZodCheckMinLengthParams","$ZodCheckMaxLengthParams","$ZodCheckLengthEqualsParams","$ZodCheckLowerCaseParams","$ZodCheckUpperCaseParams","format","minLength","maxLength","regex","includes","startsWith","endsWith","min","max","length","len","nonempty","lowercase","uppercase","trim","normalize","form","toLowerCase","toUpperCase","slugify","ZodString","$ZodCheckEmailParams","$ZodCheckURLParams","$ZodCheckJWTParams","$ZodCheckEmojiParams","$ZodCheckGUIDParams","$ZodCheckUUIDParams","$ZodCheckNanoIDParams","$ZodCheckCUIDParams","$ZodCheckCUID2Params","$ZodCheckULIDParams","$ZodCheckBase64Params","$ZodCheckBase64URLParams","$ZodCheckXIDParams","$ZodCheckKSUIDParams","$ZodCheckIPv4Params","$ZodCheckIPv6Params","$ZodCheckCIDRv4Params","$ZodCheckCIDRv6Params","$ZodCheckE164Params","$ZodCheckISODateTimeParams","$ZodCheckISODateParams","$ZodCheckISOTimeParams","$ZodCheckISODurationParams","email","url","jwt","emoji","guid","uuid","uuidv4","uuidv6","uuidv7","nanoid","cuid","cuid2","ulid","base64","base64url","xid","ksuid","ipv4","ipv6","cidrv4","cidrv6","e164","datetime","date","time","duration","string","$ZodStringParams","ZodStringFormat","Format","$ZodStringFormatInternals","ZodEmail","$ZodEmailInternals","_zod","$ZodEmailParams","ZodGUID","$ZodGUIDInternals","$ZodGUIDParams","ZodUUID","$ZodUUIDInternals","$ZodUUIDParams","$ZodUUIDv4Params","$ZodUUIDv6Params","$ZodUUIDv7Params","ZodURL","$ZodURLInternals","$ZodURLParams","httpUrl","Omit","ZodEmoji","$ZodEmojiInternals","$ZodEmojiParams","ZodNanoID","$ZodNanoIDInternals","$ZodNanoIDParams","ZodCUID","$ZodCUIDInternals","$ZodCUIDParams","ZodCUID2","$ZodCUID2Internals","$ZodCUID2Params","ZodULID","$ZodULIDInternals","$ZodULIDParams","ZodXID","$ZodXIDInternals","$ZodXIDParams","ZodKSUID","$ZodKSUIDInternals","$ZodKSUIDParams","ZodIPv4","$ZodIPv4Internals","$ZodIPv4Params","ZodMAC","$ZodMACInternals","mac","$ZodMACParams","ZodIPv6","$ZodIPv6Internals","$ZodIPv6Params","ZodCIDRv4","$ZodCIDRv4Internals","$ZodCIDRv4Params","ZodCIDRv6","$ZodCIDRv6Internals","$ZodCIDRv6Params","ZodBase64","$ZodBase64Internals","$ZodBase64Params","ZodBase64URL","$ZodBase64URLInternals","$ZodBase64URLParams","ZodE164","$ZodE164Internals","$ZodE164Params","ZodJWT","$ZodJWTInternals","$ZodJWTParams","ZodCustomStringFormat","$ZodCustomStringFormatInternals","$ZodCustomStringFormat","stringFormat","MaybeAsync","$ZodStringFormatParams","fnOrRegex","_params","hostname","hex","hash","Alg","Enc","HashAlgorithm","HashEncoding","alg","enc","_ZodNumber","$ZodNumberInternals","$ZodCheckGreaterThanParams","$ZodCheckLessThanParams","$ZodCheckNumberFormatParams","$ZodCheckMultipleOfParams","gt","gte","lt","lte","int","safe","positive","nonnegative","negative","nonpositive","multipleOf","step","finite","minValue","maxValue","isInt","isFinite","ZodNumber","number","$ZodNumberParams","ZodNumberFormat","$ZodNumberFormatInternals","ZodInt","ZodFloat32","float32","ZodFloat64","float64","ZodInt32","int32","ZodUInt32","uint32","_ZodBoolean","$ZodBooleanInternals","ZodBoolean","boolean","$ZodBooleanParams","_ZodBigInt","$ZodBigIntInternals","ZodBigInt","bigint","$ZodBigIntParams","ZodBigIntFormat","$ZodBigIntFormatInternals","int64","$ZodBigIntFormatParams","uint64","ZodSymbol","$ZodSymbolInternals","symbol","$ZodSymbolParams","ZodUndefined","$ZodUndefinedInternals","_undefined","$ZodUndefinedParams","undefined","ZodNull","$ZodNullInternals","_null","$ZodNullParams","null","ZodAny","$ZodAnyInternals","any","ZodUnknown","$ZodUnknownInternals","unknown","ZodNever","$ZodNeverInternals","never","$ZodNeverParams","ZodVoid","$ZodVoidInternals","_void","$ZodVoidParams","void","_ZodDate","$ZodDateInternals","Date","minDate","maxDate","ZodDate","$ZodDateParams","$ZodArrayInternals","$ZodArray","element","unwrap","$ZodArrayParams","keyof","ZodObject","KeysEnum","ZodEnum","SafeExtendShape","Base","Ext","$ZodShape","$ZodLooseShape","K","U","M","Shape","Config","$ZodObjectConfig","$strip","$ZodObjectInternals","ToEnum","$catchall","$loose","$strict","Extend","Record","Partial","Mask","Exclude","Extract","Pick","Flatten","k","$ZodObject","shape","catchall","passthrough","loose","strict","strip","extend","safeExtend","merge","other","pick","mask","omit","partial","required","object","$ZodObjectParams","Writeable","strictObject","looseObject","$ZodUnionInternals","$ZodUnion","options","union","$ZodUnionParams","ZodXor","$ZodXorInternals","$ZodXor","xor","$ZodXorParams","ZodDiscriminatedUnion","Options","Disc","$ZodDiscriminatedUnionInternals","$ZodDiscriminatedUnionDef","$ZodDiscriminatedUnion","discriminatedUnion","Types","$ZodTypeDiscriminable","$ZodDiscriminatedUnionParams","discriminator","A","B","$ZodIntersectionInternals","$ZodIntersection","intersection","left","right","ZodTuple","Rest","TupleItems","$ZodTupleInternals","$ZodTuple","rest","tuple","$ZodTupleParams","items","ZodRecord","Key","Value","$ZodRecordKey","$ZodRecordInternals","$ZodRecord","keyType","valueType","record","$ZodRecordParams","partialRecord","$partial","looseRecord","ZodMap","$ZodMapInternals","$ZodCheckMinSizeParams","$ZodCheckMaxSizeParams","$ZodCheckSizeEqualsParams","$ZodMap","minSize","maxSize","size","map","$ZodMapParams","ZodSet","$ZodSetInternals","$ZodSet","set","$ZodSetParams","EnumLike","$ZodEnumInternals","Array","$ZodEnumParams","$ZodEnum","enum","extract","values","exclude","_enum","entries","nativeEnum","ZodLiteral","Literal","$ZodLiteralInternals","Set","$ZodLiteral","literal","ReadonlyArray","$ZodLiteralParams","ZodFile","$ZodFileInternals","MimeTypes","$ZodCheckMimeTypeParams","$ZodFile","mime","types","file","$ZodFileParams","O","I","$ZodTransformInternals","$ZodTransform","ParsePayload","$ZodOptionalInternals","$ZodOptional","innerType","$ZodExactOptionalInternals","$ZodExactOptional","$ZodNullableInternals","$ZodNullable","$ZodDefaultInternals","$ZodDefault","removeDefault","_default","defaultValue","$ZodPrefaultInternals","$ZodPrefault","$ZodNonOptionalInternals","$ZodNonOptional","ZodSuccess","$ZodSuccessInternals","$ZodSuccess","success","$ZodCatchInternals","$ZodCatch","removeCatch","_catch","catchValue","ZodNaN","$ZodNaNInternals","$ZodNaN","nan","$ZodNaNParams","$ZodPipeInternals","$ZodPipe","in","out","in_","ZodCodec","$ZodCodecInternals","$ZodCodecDef","$ZodCodec","codec","payload","$ZodReadonlyInternals","$ZodReadonly","ZodTemplateLiteral","Template","$ZodTemplateLiteralInternals","$ZodTemplateLiteral","templateLiteral","Parts","$ZodTemplateLiteralPart","$ZodTemplateLiteralParams","$PartsToTemplateLiteral","parts","ZodLazy","$ZodLazyInternals","$ZodLazy","lazy","getter","ZodPromise","$ZodPromiseInternals","$ZodPromise","promise","ZodFunction","Items","NewArgs","NewReturns","Args","Returns","$ZodFunctionIn","$ZodFunctionOut","$ZodFunctionInternals","$ZodFunctionDef","$InferInnerFunctionType","$InferOuterFunctionType","$ZodFunction","args","_function","In","Out","function","ZodCustom","$ZodCustomInternals","$ZodCustom","custom","NoInfer","ZodInstanceOfParams","$ZodIssueCustom","Params","_instanceof","Class","InstanceType","cls","instanceof","stringbool","$ZodStringBoolParams","_ZodJSONSchema","ZodJSONSchema","_ZodJSONSchemaInternals","ZodJSONSchemaInternals","JSONType","json","preprocess","ErrorConfig","withStackTrace","ResultAsync","T","E","A","R","F","U","B","Result","Promise","PromiseLike","CombineResultAsyncs","CombineResultsWithAllErrorsArrayAsync","InferOkTypes","InferErrTypes","InferAsyncOkTypes","InferAsyncErrTypes","Err","AsyncGenerator","Symbol","asyncIterator","_promise","constructor","res","fromSafePromise","promise","fromPromise","e","errorFn","fromThrowable","args","fn","err","combine","asyncResultList","combineWithAllErrors","map","t","f","andThrough","andTee","orTee","mapErr","andThen","orElse","match","ok","_err","unwrapOr","safeUnwrap","then","successCallback","reason","failureCallback","okAsync","value","errAsync","fromAsyncThrowable","IsLiteralArray","UnwrapAsync","TraverseAsync","ExtractOkAsyncTypes","ExtractErrAsyncTypes","TraverseWithAllErrorsAsync","Writable","HI","Dedup","Rest","Array","L","Ok","H","Depth","Combine","Oks","EmptyArrayToNever","Errs","MembersToUnion","I","MemberListOf","ReadonlyArray","ExtractOkTypes","idx","ExtractErrTypes","Fn","Parameters","ReturnType","CombineResults","CombineResultsWithAllErrorsArray","resultList","safeTry","Generator","body","YieldErr","GeneratorReturnResult","IResult","isOk","isErr","asyncAndThen","asyncMap","v","_unsafeUnwrap","config","_unsafeUnwrapErr","iterator","_f","asyncAndThrough","_v","_","error","_ok","Prev","CollectResults","Collected","Transpose","Transposed","PL","PR","UnknownMembersToNever","RL","RR","W","Exclude","u","V","NeverArrayToNever","length","Traverse","TraverseWithAllErrors"],"sources":["../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/json-schema.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/standard-schema.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/registries.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/to-json-schema.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/util.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/versions.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/schemas.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/checks.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/errors.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/core.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/core/api.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/errors.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/parse.d.cts","../node_modules/.pnpm/zod@4.3.6/node_modules/zod/v4/classic/schemas.d.cts","../node_modules/.pnpm/neverthrow@8.2.0/node_modules/neverthrow/dist/index.d.ts"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as OAuthConfig, D as TokenResponse, T as SessionPayload, t as FanvueClient, u as getSessionTokenFromUrl, x as FanvueUser, y as EmbeddedAuthConfig } from "../../index-
|
|
2
|
-
import { n as ResolvedConfig, t as FanvueAuthOptions } from "../../index-
|
|
1
|
+
import { C as OAuthConfig, D as TokenResponse, T as SessionPayload, t as FanvueClient, u as getSessionTokenFromUrl, x as FanvueUser, y as EmbeddedAuthConfig } from "../../index-ClbZoV_Z.js";
|
|
2
|
+
import { n as ResolvedConfig, t as FanvueAuthOptions } from "../../index-C4ewLil3.js";
|
|
3
3
|
import { NextResponse } from "next/server";
|
|
4
4
|
|
|
5
5
|
//#region src/nextjs/bearer-session.d.ts
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as
|
|
1
|
+
import { c as string, o as object } from "../../schemas-DbyHF7Xi.js";
|
|
2
|
+
import { S as BEARER_PREFIX, n as exchangeSessionToken, o as createSessionJwt, r as getSessionTokenFromUrl, s as verifySessionJwt, t as createFanvueClient, u as refreshAccessToken } from "../../core-BqdYUMrJ.js";
|
|
3
|
+
import { n as fetchUserProfile, o as LOG_PREFIX, t as createConfig$1 } from "../../nextjs-B5Tqgt_n.js";
|
|
3
4
|
import { NextResponse } from "next/server";
|
|
4
5
|
import { headers } from "next/headers";
|
|
5
6
|
//#region src/nextjs/bearer-session.ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["createSharedConfig","z.object","z.string"],"sources":["../../../src/nextjs/bearer-session.ts","../../../src/nextjs/embedded-app/index.ts"],"sourcesContent":["import { headers } from 'next/headers';\n\nimport {\n BEARER_PREFIX,\n verifySessionJwt,\n createSessionJwt,\n createFanvueClient,\n refreshAccessToken,\n type FanvueClient,\n type OAuthConfig,\n type SessionPayload,\n} from '../core/index.js';\n\nimport { LOG_PREFIX } from './constants.js';\n\nconst TOKEN_REFRESH_THRESHOLD_MS = 30_000;\n\n/**\n * Reads and verifies the session JWT from the `Authorization: Bearer` header.\n *\n * Used by embedded apps, which hold the session JWT client-side and send it\n * with each request, instead of using cookies.\n *\n * @param secret - The secret used to verify the JWT.\n * @returns The verified {@link SessionPayload}, or `null` if missing/invalid.\n */\nexport async function getSession(secret: string): Promise<SessionPayload | null> {\n const hdrs = await headers();\n const auth = hdrs.get('authorization');\n if (!auth?.startsWith(BEARER_PREFIX)) return null;\n const token = auth.slice(BEARER_PREFIX.length);\n const result = await verifySessionJwt(secret, token);\n if (result.isErr()) {\n console.warn(`${LOG_PREFIX} session verify failed:`, result.error);\n return null;\n }\n return result.value;\n}\n\n/**\n * Returns an authenticated {@link FanvueClient} for the current\n * `Authorization: Bearer` session.\n *\n * If the access token is close to expiring and a refresh token is available,\n * the token is refreshed transparently. Because the session lives client-side\n * (not in a cookie), the refreshed JWT is returned as `refreshedJwt` — set it\n * on the response as the `X-Updated-Session` header so the client can store\n * it (the React `authFetch` helper picks it up automatically).\n *\n * @param opts - Session secret and OAuth config.\n * @returns The client and (when a refresh happened) the new session JWT, or\n * `null` if no valid session exists or token refresh fails.\n */\nexport async function getAuthenticatedClient(opts: {\n sessionSecret: string;\n config: OAuthConfig;\n}): Promise<{ client: FanvueClient; refreshedJwt: string | null } | null> {\n let session = await getSession(opts.sessionSecret);\n if (!session) return null;\n\n let refreshedJwt: string | null = null;\n if (Date.now() >= session.expiresAt - TOKEN_REFRESH_THRESHOLD_MS && session.refreshToken) {\n const refreshResult = await refreshAccessToken(opts.config, session.refreshToken);\n\n if (refreshResult.isErr()) {\n console.warn(`${LOG_PREFIX} token refresh failed:`, refreshResult.error);\n return null;\n }\n\n const refreshed = refreshResult.value;\n // When the refresh response omits optional fields (parsed as null by the schema),\n // preserve the existing session values. Per RFC 6749 §6, a refresh response MAY\n // include a new refresh_token; when absent, the existing one remains valid.\n session = {\n ...session,\n accessToken: refreshed.access_token,\n refreshToken: refreshed.refresh_token ?? session.refreshToken,\n tokenType: refreshed.token_type ?? session.tokenType,\n scope: refreshed.scope ?? session.scope,\n idToken: refreshed.id_token ?? session.idToken,\n expiresAt: Date.now() + refreshed.expires_in * 1000,\n };\n refreshedJwt = await createSessionJwt(opts.sessionSecret, session);\n }\n\n return {\n client: createFanvueClient(session.accessToken, opts.config.apiBaseUrl),\n refreshedJwt,\n };\n}\n","import { NextResponse } from 'next/server';\nimport { z } from 'zod';\n\nimport {\n exchangeSessionToken,\n createSessionJwt,\n type EmbeddedAuthConfig,\n type FanvueUser,\n type SessionPayload,\n type TokenResponse,\n} from '../../core/index.js';\nimport { LOG_PREFIX } from '../constants.js';\nimport { createConfig as createSharedConfig } from '../index.js';\nimport { fetchUserProfile } from '../utils.js';\n\nimport type { FanvueAuthOptions, ResolvedConfig } from '../index.js';\n\nexport { getSession, getAuthenticatedClient } from '../bearer-session.js';\nexport { getSessionTokenFromUrl } from '../../core/index.js';\nexport { type FanvueAuthOptions } from '../index.js';\n\n/**\n * User-facing configuration options for an embedded Fanvue app.\n *\n * Extends {@link FanvueAuthOptions} with the Fanvue platform base URL. All\n * fields are optional — when omitted, values are read from environment\n * variables (`platformUrl` reads `FANVUE_PLATFORM_URL`).\n */\nexport type EmbeddedAppAuthOptions = FanvueAuthOptions & {\n platformUrl?: string;\n};\n\n/**\n * Fully-resolved configuration for the embedded-app handlers, produced by\n * {@link createConfig}.\n */\nexport type EmbeddedAppConfig = ResolvedConfig & EmbeddedAuthConfig;\n\n/**\n * Resolves a complete {@link EmbeddedAppConfig} from the supplied options,\n * falling back to environment variables for any values not provided.\n *\n * @param opts - Optional overrides for the OAuth, session, and platform configuration.\n * @returns A fully-resolved configuration object.\n * @throws If any required value (`clientId`, `clientSecret`, `redirectUri`,\n * `sessionSecret`) is missing from both `opts` and the environment.\n */\nexport function createConfig(opts?: EmbeddedAppAuthOptions): EmbeddedAppConfig {\n const shared = createSharedConfig(opts);\n const platformUrl = opts?.platformUrl ?? process.env['FANVUE_PLATFORM_URL'];\n return { ...shared, platformUrl: platformUrl ?? null };\n}\n\nconst ExchangeRequestSchema = z.object({\n token: z.string().min(1),\n});\n\n/**\n * Callback invoked after a successful session-token exchange, before the\n * response is sent. Use it to persist the refresh token per creator so your\n * app can act on their behalf later, without the iframe open.\n */\nexport type OnTokensCallback = (input: {\n tokens: TokenResponse;\n user: FanvueUser;\n}) => void | Promise<void>;\n\n/**\n * Creates a Next.js route handler that exchanges an embedded session token\n * for a Fanvue session.\n *\n * The embedded page reads the `?token=` query parameter that Fanvue appends\n * to the iframe URL and POSTs it here as JSON (`{ \"token\": \"...\" }`). The\n * handler runs the delegated authorize-on-behalf flow, fetches the user's\n * profile, and responds with a signed session JWT (`{ \"jwt\": \"...\" }`) that\n * the client sends back as an `Authorization: Bearer` header — the React\n * `useEmbeddedAuth` hook does all of this for you.\n *\n * Error responses mirror the platform's semantics:\n * - `400 { error: \"invalid_request\" }` — malformed body.\n * - `401 { error: \"invalid_session_token\" }` — the session token was\n * rejected (they expire after ~60 seconds; reopening the surface mints a\n * fresh one).\n * - `403 { error: \"consent_required\" }` — the creator has not approved (or\n * has revoked) consent for this app in the Fanvue UI.\n * - `502 { error: \"exchange_failed\" }` — any other failure.\n *\n * @param config - The embedded-app configuration.\n * @param hooks - Optional `onTokens` callback for persisting tokens (e.g.\n * the refresh token, keyed by `user.uuid`, for offline/background work).\n * @returns A route handler object with a `POST` method.\n */\nexport function createSessionExchangeHandler(\n config: EmbeddedAppConfig,\n hooks?: { onTokens?: OnTokensCallback },\n): {\n POST(request: Request): Promise<NextResponse>;\n} {\n return {\n async POST(request: Request): Promise<NextResponse> {\n let body: unknown;\n try {\n body = await request.json();\n } catch {\n return NextResponse.json({ error: 'invalid_request' }, { status: 400 });\n }\n\n const parsed = ExchangeRequestSchema.safeParse(body);\n if (!parsed.success) {\n return NextResponse.json({ error: 'invalid_request' }, { status: 400 });\n }\n\n const tokenResult = await exchangeSessionToken(config, parsed.data.token);\n if (tokenResult.isErr()) {\n const error = tokenResult.error;\n if (error.code === 'SESSION_TOKEN_REJECTED') {\n return NextResponse.json({ error: 'invalid_session_token' }, { status: 401 });\n }\n if (error.code === 'CONSENT_REQUIRED') {\n return NextResponse.json({ error: 'consent_required' }, { status: 403 });\n }\n console.error(`${LOG_PREFIX} session token exchange failed:`, error);\n return NextResponse.json({ error: 'exchange_failed' }, { status: 502 });\n }\n\n const tokens = tokenResult.value;\n const user = await fetchUserProfile(tokens.access_token, config.apiBaseUrl);\n if (!user) {\n return NextResponse.json({ error: 'exchange_failed' }, { status: 502 });\n }\n\n if (hooks?.onTokens) {\n try {\n await hooks.onTokens({ tokens, user });\n } catch (error) {\n console.error(`${LOG_PREFIX} onTokens callback failed:`, error);\n return NextResponse.json({ error: 'exchange_failed' }, { status: 502 });\n }\n }\n\n const sessionPayload: SessionPayload = {\n accessToken: tokens.access_token,\n refreshToken: tokens.refresh_token,\n tokenType: tokens.token_type,\n scope: tokens.scope,\n idToken: tokens.id_token,\n expiresAt: Date.now() + tokens.expires_in * 1000,\n userUuid: user.uuid,\n handle: user.handle,\n displayName: user.displayName,\n isCreator: user.isCreator,\n avatarUrl: user.avatarUrl,\n };\n\n const jwt = await createSessionJwt(config.sessionSecret, sessionPayload);\n return NextResponse.json({ jwt });\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["createSharedConfig","z.object","z.string"],"sources":["../../../src/nextjs/bearer-session.ts","../../../src/nextjs/embedded-app/index.ts"],"sourcesContent":["import { headers } from 'next/headers';\n\nimport {\n BEARER_PREFIX,\n verifySessionJwt,\n createSessionJwt,\n createFanvueClient,\n refreshAccessToken,\n type FanvueClient,\n type OAuthConfig,\n type SessionPayload,\n} from '../core/index.js';\n\nimport { LOG_PREFIX } from './constants.js';\n\nconst TOKEN_REFRESH_THRESHOLD_MS = 30_000;\n\n/**\n * Reads and verifies the session JWT from the `Authorization: Bearer` header.\n *\n * Used by embedded apps, which hold the session JWT client-side and send it\n * with each request, instead of using cookies.\n *\n * @param secret - The secret used to verify the JWT.\n * @returns The verified {@link SessionPayload}, or `null` if missing/invalid.\n */\nexport async function getSession(secret: string): Promise<SessionPayload | null> {\n const hdrs = await headers();\n const auth = hdrs.get('authorization');\n if (!auth?.startsWith(BEARER_PREFIX)) return null;\n const token = auth.slice(BEARER_PREFIX.length);\n const result = await verifySessionJwt(secret, token);\n if (result.isErr()) {\n console.warn(`${LOG_PREFIX} session verify failed:`, result.error);\n return null;\n }\n return result.value;\n}\n\n/**\n * Returns an authenticated {@link FanvueClient} for the current\n * `Authorization: Bearer` session.\n *\n * If the access token is close to expiring and a refresh token is available,\n * the token is refreshed transparently. Because the session lives client-side\n * (not in a cookie), the refreshed JWT is returned as `refreshedJwt` — set it\n * on the response as the `X-Updated-Session` header so the client can store\n * it (the React `authFetch` helper picks it up automatically).\n *\n * @param opts - Session secret and OAuth config.\n * @returns The client and (when a refresh happened) the new session JWT, or\n * `null` if no valid session exists or token refresh fails.\n */\nexport async function getAuthenticatedClient(opts: {\n sessionSecret: string;\n config: OAuthConfig;\n}): Promise<{ client: FanvueClient; refreshedJwt: string | null } | null> {\n let session = await getSession(opts.sessionSecret);\n if (!session) return null;\n\n let refreshedJwt: string | null = null;\n if (Date.now() >= session.expiresAt - TOKEN_REFRESH_THRESHOLD_MS && session.refreshToken) {\n const refreshResult = await refreshAccessToken(opts.config, session.refreshToken);\n\n if (refreshResult.isErr()) {\n console.warn(`${LOG_PREFIX} token refresh failed:`, refreshResult.error);\n return null;\n }\n\n const refreshed = refreshResult.value;\n // When the refresh response omits optional fields (parsed as null by the schema),\n // preserve the existing session values. Per RFC 6749 §6, a refresh response MAY\n // include a new refresh_token; when absent, the existing one remains valid.\n session = {\n ...session,\n accessToken: refreshed.access_token,\n refreshToken: refreshed.refresh_token ?? session.refreshToken,\n tokenType: refreshed.token_type ?? session.tokenType,\n scope: refreshed.scope ?? session.scope,\n idToken: refreshed.id_token ?? session.idToken,\n expiresAt: Date.now() + refreshed.expires_in * 1000,\n };\n refreshedJwt = await createSessionJwt(opts.sessionSecret, session);\n }\n\n return {\n client: createFanvueClient(session.accessToken, opts.config.apiBaseUrl),\n refreshedJwt,\n };\n}\n","import { NextResponse } from 'next/server';\nimport { z } from 'zod';\n\nimport {\n exchangeSessionToken,\n createSessionJwt,\n type EmbeddedAuthConfig,\n type FanvueUser,\n type SessionPayload,\n type TokenResponse,\n} from '../../core/index.js';\nimport { LOG_PREFIX } from '../constants.js';\nimport { createConfig as createSharedConfig } from '../index.js';\nimport { fetchUserProfile } from '../utils.js';\n\nimport type { FanvueAuthOptions, ResolvedConfig } from '../index.js';\n\nexport { getSession, getAuthenticatedClient } from '../bearer-session.js';\nexport { getSessionTokenFromUrl } from '../../core/index.js';\nexport { type FanvueAuthOptions } from '../index.js';\n\n/**\n * User-facing configuration options for an embedded Fanvue app.\n *\n * Extends {@link FanvueAuthOptions} with the Fanvue platform base URL. All\n * fields are optional — when omitted, values are read from environment\n * variables (`platformUrl` reads `FANVUE_PLATFORM_URL`).\n */\nexport type EmbeddedAppAuthOptions = FanvueAuthOptions & {\n platformUrl?: string;\n};\n\n/**\n * Fully-resolved configuration for the embedded-app handlers, produced by\n * {@link createConfig}.\n */\nexport type EmbeddedAppConfig = ResolvedConfig & EmbeddedAuthConfig;\n\n/**\n * Resolves a complete {@link EmbeddedAppConfig} from the supplied options,\n * falling back to environment variables for any values not provided.\n *\n * @param opts - Optional overrides for the OAuth, session, and platform configuration.\n * @returns A fully-resolved configuration object.\n * @throws If any required value (`clientId`, `clientSecret`, `redirectUri`,\n * `sessionSecret`) is missing from both `opts` and the environment.\n */\nexport function createConfig(opts?: EmbeddedAppAuthOptions): EmbeddedAppConfig {\n const shared = createSharedConfig(opts);\n const platformUrl = opts?.platformUrl ?? process.env['FANVUE_PLATFORM_URL'];\n return { ...shared, platformUrl: platformUrl ?? null };\n}\n\nconst ExchangeRequestSchema = z.object({\n token: z.string().min(1),\n});\n\n/**\n * Callback invoked after a successful session-token exchange, before the\n * response is sent. Use it to persist the refresh token per creator so your\n * app can act on their behalf later, without the iframe open.\n */\nexport type OnTokensCallback = (input: {\n tokens: TokenResponse;\n user: FanvueUser;\n}) => void | Promise<void>;\n\n/**\n * Creates a Next.js route handler that exchanges an embedded session token\n * for a Fanvue session.\n *\n * The embedded page reads the `?token=` query parameter that Fanvue appends\n * to the iframe URL and POSTs it here as JSON (`{ \"token\": \"...\" }`). The\n * handler runs the delegated authorize-on-behalf flow, fetches the user's\n * profile, and responds with a signed session JWT (`{ \"jwt\": \"...\" }`) that\n * the client sends back as an `Authorization: Bearer` header — the React\n * `useEmbeddedAuth` hook does all of this for you.\n *\n * Error responses mirror the platform's semantics:\n * - `400 { error: \"invalid_request\" }` — malformed body.\n * - `401 { error: \"invalid_session_token\" }` — the session token was\n * rejected (they expire after ~60 seconds; reopening the surface mints a\n * fresh one).\n * - `403 { error: \"consent_required\" }` — the creator has not approved (or\n * has revoked) consent for this app in the Fanvue UI.\n * - `502 { error: \"exchange_failed\" }` — any other failure.\n *\n * @param config - The embedded-app configuration.\n * @param hooks - Optional `onTokens` callback for persisting tokens (e.g.\n * the refresh token, keyed by `user.uuid`, for offline/background work).\n * @returns A route handler object with a `POST` method.\n */\nexport function createSessionExchangeHandler(\n config: EmbeddedAppConfig,\n hooks?: { onTokens?: OnTokensCallback },\n): {\n POST(request: Request): Promise<NextResponse>;\n} {\n return {\n async POST(request: Request): Promise<NextResponse> {\n let body: unknown;\n try {\n body = await request.json();\n } catch {\n return NextResponse.json({ error: 'invalid_request' }, { status: 400 });\n }\n\n const parsed = ExchangeRequestSchema.safeParse(body);\n if (!parsed.success) {\n return NextResponse.json({ error: 'invalid_request' }, { status: 400 });\n }\n\n const tokenResult = await exchangeSessionToken(config, parsed.data.token);\n if (tokenResult.isErr()) {\n const error = tokenResult.error;\n if (error.code === 'SESSION_TOKEN_REJECTED') {\n return NextResponse.json({ error: 'invalid_session_token' }, { status: 401 });\n }\n if (error.code === 'CONSENT_REQUIRED') {\n return NextResponse.json({ error: 'consent_required' }, { status: 403 });\n }\n console.error(`${LOG_PREFIX} session token exchange failed:`, error);\n return NextResponse.json({ error: 'exchange_failed' }, { status: 502 });\n }\n\n const tokens = tokenResult.value;\n const user = await fetchUserProfile(tokens.access_token, config.apiBaseUrl);\n if (!user) {\n return NextResponse.json({ error: 'exchange_failed' }, { status: 502 });\n }\n\n if (hooks?.onTokens) {\n try {\n await hooks.onTokens({ tokens, user });\n } catch (error) {\n console.error(`${LOG_PREFIX} onTokens callback failed:`, error);\n return NextResponse.json({ error: 'exchange_failed' }, { status: 502 });\n }\n }\n\n const sessionPayload: SessionPayload = {\n accessToken: tokens.access_token,\n refreshToken: tokens.refresh_token,\n tokenType: tokens.token_type,\n scope: tokens.scope,\n idToken: tokens.id_token,\n expiresAt: Date.now() + tokens.expires_in * 1000,\n userUuid: user.uuid,\n handle: user.handle,\n displayName: user.displayName,\n isCreator: user.isCreator,\n avatarUrl: user.avatarUrl,\n };\n\n const jwt = await createSessionJwt(config.sessionSecret, sessionPayload);\n return NextResponse.json({ jwt });\n },\n };\n}\n"],"mappings":";;;;;;AAeA,MAAM,6BAA6B;;;;;;;;;;AAWnC,eAAsB,WAAW,QAAgD;CAE/E,MAAM,QADO,MAAM,SAAS,EACV,IAAI,gBAAgB;AACtC,KAAI,CAAC,MAAM,WAAA,UAAyB,CAAE,QAAO;CAE7C,MAAM,SAAS,MAAM,iBAAiB,QADxB,KAAK,MAAM,cAAc,OAAO,CACM;AACpD,KAAI,OAAO,OAAO,EAAE;AAClB,UAAQ,KAAK,GAAG,WAAW,0BAA0B,OAAO,MAAM;AAClE,SAAO;;AAET,QAAO,OAAO;;;;;;;;;;;;;;;;AAiBhB,eAAsB,uBAAuB,MAG6B;CACxE,IAAI,UAAU,MAAM,WAAW,KAAK,cAAc;AAClD,KAAI,CAAC,QAAS,QAAO;CAErB,IAAI,eAA8B;AAClC,KAAI,KAAK,KAAK,IAAI,QAAQ,YAAY,8BAA8B,QAAQ,cAAc;EACxF,MAAM,gBAAgB,MAAM,mBAAmB,KAAK,QAAQ,QAAQ,aAAa;AAEjF,MAAI,cAAc,OAAO,EAAE;AACzB,WAAQ,KAAK,GAAG,WAAW,yBAAyB,cAAc,MAAM;AACxE,UAAO;;EAGT,MAAM,YAAY,cAAc;AAIhC,YAAU;GACR,GAAG;GACH,aAAa,UAAU;GACvB,cAAc,UAAU,iBAAiB,QAAQ;GACjD,WAAW,UAAU,cAAc,QAAQ;GAC3C,OAAO,UAAU,SAAS,QAAQ;GAClC,SAAS,UAAU,YAAY,QAAQ;GACvC,WAAW,KAAK,KAAK,GAAG,UAAU,aAAa;GAChD;AACD,iBAAe,MAAM,iBAAiB,KAAK,eAAe,QAAQ;;AAGpE,QAAO;EACL,QAAQ,mBAAmB,QAAQ,aAAa,KAAK,OAAO,WAAW;EACvE;EACD;;;;;;;;;;;;;ACzCH,SAAgB,aAAa,MAAkD;CAC7E,MAAM,SAASA,eAAmB,KAAK;CACvC,MAAM,cAAc,MAAM,eAAe,QAAQ,IAAI;AACrD,QAAO;EAAE,GAAG;EAAQ,aAAa,eAAe;EAAM;;AAGxD,MAAM,wBAAwBC,OAAS,EACrC,OAAOC,QAAU,CAAC,IAAI,EAAE,EACzB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCF,SAAgB,6BACd,QACA,OAGA;AACA,QAAO,EACL,MAAM,KAAK,SAAyC;EAClD,IAAI;AACJ,MAAI;AACF,UAAO,MAAM,QAAQ,MAAM;UACrB;AACN,UAAO,aAAa,KAAK,EAAE,OAAO,mBAAmB,EAAE,EAAE,QAAQ,KAAK,CAAC;;EAGzE,MAAM,SAAS,sBAAsB,UAAU,KAAK;AACpD,MAAI,CAAC,OAAO,QACV,QAAO,aAAa,KAAK,EAAE,OAAO,mBAAmB,EAAE,EAAE,QAAQ,KAAK,CAAC;EAGzE,MAAM,cAAc,MAAM,qBAAqB,QAAQ,OAAO,KAAK,MAAM;AACzE,MAAI,YAAY,OAAO,EAAE;GACvB,MAAM,QAAQ,YAAY;AAC1B,OAAI,MAAM,SAAS,yBACjB,QAAO,aAAa,KAAK,EAAE,OAAO,yBAAyB,EAAE,EAAE,QAAQ,KAAK,CAAC;AAE/E,OAAI,MAAM,SAAS,mBACjB,QAAO,aAAa,KAAK,EAAE,OAAO,oBAAoB,EAAE,EAAE,QAAQ,KAAK,CAAC;AAE1E,WAAQ,MAAM,GAAG,WAAW,kCAAkC,MAAM;AACpE,UAAO,aAAa,KAAK,EAAE,OAAO,mBAAmB,EAAE,EAAE,QAAQ,KAAK,CAAC;;EAGzE,MAAM,SAAS,YAAY;EAC3B,MAAM,OAAO,MAAM,iBAAiB,OAAO,cAAc,OAAO,WAAW;AAC3E,MAAI,CAAC,KACH,QAAO,aAAa,KAAK,EAAE,OAAO,mBAAmB,EAAE,EAAE,QAAQ,KAAK,CAAC;AAGzE,MAAI,OAAO,SACT,KAAI;AACF,SAAM,MAAM,SAAS;IAAE;IAAQ;IAAM,CAAC;WAC/B,OAAO;AACd,WAAQ,MAAM,GAAG,WAAW,6BAA6B,MAAM;AAC/D,UAAO,aAAa,KAAK,EAAE,OAAO,mBAAmB,EAAE,EAAE,QAAQ,KAAK,CAAC;;EAI3E,MAAM,iBAAiC;GACrC,aAAa,OAAO;GACpB,cAAc,OAAO;GACrB,WAAW,OAAO;GAClB,OAAO,OAAO;GACd,SAAS,OAAO;GAChB,WAAW,KAAK,KAAK,GAAG,OAAO,aAAa;GAC5C,UAAU,KAAK;GACf,QAAQ,KAAK;GACb,aAAa,KAAK;GAClB,WAAW,KAAK;GAChB,WAAW,KAAK;GACjB;EAED,MAAM,MAAM,MAAM,iBAAiB,OAAO,eAAe,eAAe;AACxE,SAAO,aAAa,KAAK,EAAE,KAAK,CAAC;IAEpC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { C as OAuthConfig, T as SessionPayload, t as FanvueClient } from "../../index-
|
|
2
|
-
import { n as ResolvedConfig, r as createConfig, t as FanvueAuthOptions } from "../../index-
|
|
1
|
+
import { C as OAuthConfig, T as SessionPayload, t as FanvueClient } from "../../index-ClbZoV_Z.js";
|
|
2
|
+
import { n as ResolvedConfig, r as createConfig, t as FanvueAuthOptions } from "../../index-C4ewLil3.js";
|
|
3
3
|
import { NextResponse } from "next/server";
|
|
4
4
|
|
|
5
5
|
//#region src/nextjs/off-platform/session.d.ts
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import "../../schemas-DbyHF7Xi.js";
|
|
2
|
+
import { c as createAuthorizationUrl, l as exchangeCodeForToken, o as createSessionJwt, s as verifySessionJwt, t as createFanvueClient, u as refreshAccessToken } from "../../core-BqdYUMrJ.js";
|
|
3
|
+
import { i as getFormString, n as fetchUserProfile, o as LOG_PREFIX, r as getBaseUrl, s as SESSION_COOKIE_MAX_AGE_SECONDS, t as createConfig } from "../../nextjs-B5Tqgt_n.js";
|
|
3
4
|
import { NextResponse } from "next/server";
|
|
4
5
|
import { cookies } from "next/headers";
|
|
5
6
|
//#region src/nextjs/callback.ts
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["createLoginHandler","createSharedLoginHandler"],"sources":["../../../src/nextjs/callback.ts","../../../src/nextjs/off-platform/session.ts","../../../src/nextjs/off-platform/index.ts"],"sourcesContent":["import { cookies } from 'next/headers';\nimport { NextResponse } from 'next/server';\n\nimport {\n createAuthorizationUrl,\n exchangeCodeForToken,\n createSessionJwt,\n type SessionPayload,\n} from '../core/index.js';\n\nimport { LOG_PREFIX, COOKIE_SAME_SITE } from './constants.js';\nimport { fetchUserProfile, getBaseUrl } from './utils.js';\n\nimport type { ResolvedConfig } from './index.js';\n\nconst COOKIE_OAUTH_STATE = 'oauth_state';\nconst COOKIE_OAUTH_VERIFIER = 'oauth_verifier';\nconst OAUTH_COOKIE_MAX_AGE_SECONDS = 600;\nconst ERROR_STATE_MISMATCH = 'oauth_state_mismatch';\nconst ERROR_TOKEN_EXCHANGE_FAILED = 'oauth_token_exchange_failed';\nconst ERROR_USER_PROFILE_FAILED = 'oauth_user_profile_failed';\n\n/** Parameters extracted from the OAuth callback request. */\nexport type CallbackParams =\n | { kind: 'success'; code: string; state: string }\n | { kind: 'error'; error: string; errorDescription: string | null }\n | { kind: 'empty' };\n\n/** Strategy for completing the OAuth callback — how the JWT is delivered to the client. */\nexport interface CallbackStrategy {\n complete(request: Request, jwt: string, baseUrl: string): NextResponse;\n}\n\n/** Options required by the shared callback handler. */\nexport type CallbackHandlerOptions = ResolvedConfig;\n\n/**\n * Shared callback handler that validates the OAuth state, exchanges the\n * authorization code for tokens, fetches the user profile, creates a session\n * JWT, and delegates to the strategy for final response.\n */\nexport async function handleOAuthCallback(\n request: Request,\n opts: CallbackHandlerOptions,\n getParams: (request: Request) => Promise<CallbackParams>,\n strategy: CallbackStrategy,\n): Promise<NextResponse> {\n const baseUrl = getBaseUrl(opts, request.url);\n const params = await getParams(request);\n\n const cookieStore = await cookies();\n const storedState = cookieStore.get(COOKIE_OAUTH_STATE)?.value;\n const verifier = cookieStore.get(COOKIE_OAUTH_VERIFIER)?.value;\n\n cookieStore.delete(COOKIE_OAUTH_STATE);\n cookieStore.delete(COOKIE_OAUTH_VERIFIER);\n\n if (params.kind === 'error') {\n const search = new URLSearchParams();\n search.set('error', params.error);\n if (params.errorDescription) search.set('error_description', params.errorDescription);\n return NextResponse.redirect(new URL(`${baseUrl}/?${search.toString()}`, request.url));\n }\n\n if (params.kind === 'empty' || !storedState || !verifier || params.state !== storedState) {\n return NextResponse.redirect(new URL(`${baseUrl}/?error=${ERROR_STATE_MISMATCH}`, request.url));\n }\n\n const { code } = params;\n\n const tokenResult = await exchangeCodeForToken(opts, {\n code,\n codeVerifier: verifier,\n redirectUri: null,\n });\n\n if (tokenResult.isErr()) {\n console.error(`${LOG_PREFIX} token exchange failed:`, tokenResult.error);\n return NextResponse.redirect(\n new URL(`${baseUrl}/?error=${ERROR_TOKEN_EXCHANGE_FAILED}`, request.url),\n );\n }\n\n const token = tokenResult.value;\n const user = await fetchUserProfile(token.access_token, opts.apiBaseUrl);\n\n if (!user) {\n return NextResponse.redirect(\n new URL(`${baseUrl}/?error=${ERROR_USER_PROFILE_FAILED}`, request.url),\n );\n }\n\n const sessionPayload: SessionPayload = {\n accessToken: token.access_token,\n refreshToken: token.refresh_token,\n tokenType: token.token_type,\n scope: token.scope,\n idToken: token.id_token,\n expiresAt: Date.now() + token.expires_in * 1000,\n userUuid: user.uuid,\n handle: user.handle,\n displayName: user.displayName,\n isCreator: user.isCreator,\n avatarUrl: user.avatarUrl,\n };\n\n const jwt = await createSessionJwt(opts.sessionSecret, sessionPayload);\n\n return strategy.complete(request, jwt, baseUrl);\n}\n\n/**\n * Creates a Next.js route handler that initiates the OAuth login flow.\n * Used by the off-platform module.\n */\nexport function createLoginHandler(opts: CallbackHandlerOptions): {\n GET(request: Request): Promise<NextResponse>;\n} {\n return {\n async GET(request: Request): Promise<NextResponse> {\n const { url, codeVerifier, state } = await createAuthorizationUrl(opts);\n\n const cookieStore = await cookies();\n const reqUrl = new URL(request.url);\n const secure = reqUrl.protocol === 'https:';\n\n cookieStore.set(COOKIE_OAUTH_STATE, state, {\n httpOnly: true,\n path: '/',\n sameSite: COOKIE_SAME_SITE,\n secure,\n maxAge: OAUTH_COOKIE_MAX_AGE_SECONDS,\n });\n cookieStore.set(COOKIE_OAUTH_VERIFIER, codeVerifier, {\n httpOnly: true,\n path: '/',\n sameSite: COOKIE_SAME_SITE,\n secure,\n maxAge: OAUTH_COOKIE_MAX_AGE_SECONDS,\n });\n\n return NextResponse.redirect(url);\n },\n };\n}\n\n/** Extracts callback params from a GET request's query string. */\nexport function getParamsFromQuery(request: Request): Promise<CallbackParams> {\n const url = new URL(request.url);\n const error = url.searchParams.get('error');\n if (error) {\n return Promise.resolve({\n kind: 'error',\n error,\n errorDescription: url.searchParams.get('error_description'),\n });\n }\n const code = url.searchParams.get('code');\n const state = url.searchParams.get('state');\n if (code && state) {\n return Promise.resolve({ kind: 'success', code, state });\n }\n return Promise.resolve({ kind: 'empty' });\n}\n\n/** Extracts callback params from a POST request's form body. */\nexport async function getParamsFromForm(\n request: Request,\n getFormString: (form: FormData, key: string) => string | null,\n): Promise<CallbackParams> {\n const form = await request.formData();\n const error = getFormString(form, 'error');\n if (error) {\n return {\n kind: 'error',\n error,\n errorDescription: getFormString(form, 'error_description'),\n };\n }\n const code = getFormString(form, 'code');\n const state = getFormString(form, 'state');\n if (code && state) {\n return { kind: 'success', code, state };\n }\n return { kind: 'empty' };\n}\n","import { cookies } from 'next/headers';\n\nimport {\n verifySessionJwt,\n createSessionJwt,\n createFanvueClient,\n refreshAccessToken,\n type FanvueClient,\n type OAuthConfig,\n type SessionPayload,\n} from '../../core/index.js';\nimport {\n DEFAULT_SESSION_COOKIE_NAME,\n SESSION_COOKIE_MAX_AGE_SECONDS,\n COOKIE_SAME_SITE,\n LOG_PREFIX,\n} from '../constants.js';\n\nconst TOKEN_REFRESH_THRESHOLD_MS = 30_000;\n\n/**\n * Reads and verifies the session JWT from the cookie store.\n *\n * @param secret - The secret used to verify the JWT.\n * @param cookieName - The cookie name to read. Defaults to {@link DEFAULT_SESSION_COOKIE_NAME}.\n * @returns The verified {@link SessionPayload}, or `null` if missing/invalid.\n */\nexport async function getSession(\n secret: string,\n cookieName: string | null = null,\n): Promise<SessionPayload | null> {\n const cookieStore = await cookies();\n const token = cookieStore.get(cookieName ?? DEFAULT_SESSION_COOKIE_NAME)?.value;\n if (!token) return null;\n const result = await verifySessionJwt(secret, token);\n if (result.isErr()) {\n console.warn(`${LOG_PREFIX} session verify failed:`, result.error);\n return null;\n }\n return result.value;\n}\n\n/**\n * Creates or updates the session cookie with a fresh JWT.\n *\n * @param secret - The secret used to sign the JWT.\n * @param cookieName - The cookie name to set.\n * @param payload - The session data to encode into the JWT.\n */\nexport async function setSession(\n secret: string,\n cookieName: string,\n payload: SessionPayload,\n): Promise<void> {\n const jwt = await createSessionJwt(secret, payload);\n const cookieStore = await cookies();\n cookieStore.set(cookieName, jwt, {\n httpOnly: true,\n secure: process.env['NODE_ENV'] === 'production',\n sameSite: COOKIE_SAME_SITE,\n path: '/',\n maxAge: SESSION_COOKIE_MAX_AGE_SECONDS,\n });\n}\n\n/**\n * Deletes the session cookie.\n *\n * @param cookieName - The cookie name to delete.\n */\nexport async function clearSession(cookieName: string): Promise<void> {\n const cookieStore = await cookies();\n cookieStore.delete(cookieName);\n}\n\n/**\n * Returns an authenticated {@link FanvueClient} for the current session.\n *\n * If the access token is close to expiring and a refresh token is available,\n * the token is refreshed transparently and the session cookie is updated.\n *\n * @param opts - Session secret, cookie name, and OAuth config.\n * @returns A {@link FanvueClient} instance, or `null` if no valid session exists\n * or token refresh fails.\n */\nexport async function getAuthenticatedClient(opts: {\n sessionSecret: string;\n sessionCookieName: string | null;\n config: OAuthConfig;\n}): Promise<FanvueClient | null> {\n const cookieName = opts.sessionCookieName ?? DEFAULT_SESSION_COOKIE_NAME;\n let session = await getSession(opts.sessionSecret, cookieName);\n if (!session) return null;\n\n if (Date.now() >= session.expiresAt - TOKEN_REFRESH_THRESHOLD_MS && session.refreshToken) {\n const refreshResult = await refreshAccessToken(opts.config, session.refreshToken);\n\n if (refreshResult.isErr()) {\n console.warn(`${LOG_PREFIX} token refresh failed:`, refreshResult.error);\n return null;\n }\n\n const refreshed = refreshResult.value;\n // When the refresh response omits optional fields (parsed as null by the schema),\n // preserve the existing session values. Per RFC 6749 §6, a refresh response MAY\n // include a new refresh_token; when absent, the existing one remains valid.\n session = {\n ...session,\n accessToken: refreshed.access_token,\n refreshToken: refreshed.refresh_token ?? session.refreshToken,\n tokenType: refreshed.token_type ?? session.tokenType,\n scope: refreshed.scope ?? session.scope,\n idToken: refreshed.id_token ?? session.idToken,\n expiresAt: Date.now() + refreshed.expires_in * 1000,\n };\n try {\n await setSession(opts.sessionSecret, cookieName, session);\n } catch (error) {\n console.warn(`${LOG_PREFIX} failed to persist refreshed session:`, error);\n }\n }\n\n return createFanvueClient(session.accessToken, opts.config.apiBaseUrl);\n}\n","import { NextResponse } from 'next/server';\n\nimport {\n handleOAuthCallback,\n createLoginHandler as createSharedLoginHandler,\n getParamsFromQuery,\n getParamsFromForm,\n} from '../callback.js';\nimport { COOKIE_SAME_SITE, SESSION_COOKIE_MAX_AGE_SECONDS } from '../constants.js';\nimport { type ResolvedConfig } from '../index.js';\nimport { getBaseUrl, getFormString } from '../utils.js';\n\nimport type { CallbackStrategy } from '../callback.js';\n\nexport { getSession, getAuthenticatedClient } from './session.js';\nexport { createConfig, type FanvueAuthOptions, type ResolvedConfig } from '../index.js';\n\n/**\n * Configuration for the off-platform OAuth handlers.\n *\n * Extends {@link ResolvedConfig} with optional routing overrides.\n */\nexport type OffPlatformOptions = ResolvedConfig & {\n afterLoginPath: string | null;\n afterLogoutPath: string | null;\n};\n\n/**\n * Creates a Next.js route handler that initiates the OAuth login flow.\n *\n * @param opts - The off-platform configuration.\n * @returns A route handler object with a `GET` method.\n */\nexport function createLoginHandler(opts: OffPlatformOptions): {\n GET(request: Request): Promise<NextResponse>;\n} {\n return createSharedLoginHandler(opts);\n}\n\n/**\n * Creates a Next.js route handler that processes the OAuth callback.\n *\n * Supports both `GET` (query-string params) and `POST` (form-encoded body)\n * response modes.\n *\n * @param opts - The off-platform configuration.\n * @returns A route handler object with `GET` and `POST` methods.\n */\nexport function createCallbackHandler(opts: OffPlatformOptions): {\n GET(request: Request): Promise<NextResponse>;\n POST(request: Request): Promise<NextResponse>;\n} {\n const strategy: CallbackStrategy = {\n complete(request: Request, jwt: string, baseUrl: string): NextResponse {\n const res = NextResponse.redirect(\n new URL(`${baseUrl}${opts.afterLoginPath ?? '/'}`, request.url),\n );\n res.cookies.set(opts.sessionCookieName, jwt, {\n httpOnly: true,\n secure: new URL(request.url).protocol === 'https:',\n sameSite: COOKIE_SAME_SITE,\n path: '/',\n maxAge: SESSION_COOKIE_MAX_AGE_SECONDS,\n });\n return res;\n },\n };\n\n return {\n async GET(request: Request): Promise<NextResponse> {\n return handleOAuthCallback(request, opts, getParamsFromQuery, strategy);\n },\n async POST(request: Request): Promise<NextResponse> {\n return handleOAuthCallback(\n request,\n opts,\n (req) => getParamsFromForm(req, getFormString),\n strategy,\n );\n },\n };\n}\n\n/**\n * Creates a Next.js route handler that logs the user out by deleting the\n * session cookie and redirecting.\n *\n * @param opts - The off-platform configuration.\n * @returns A route handler object with a `POST` method.\n */\nexport function createLogoutHandler(opts: OffPlatformOptions): {\n POST(request: Request): NextResponse;\n} {\n return {\n POST(request: Request): NextResponse {\n const baseUrl = getBaseUrl(opts, request.url);\n const res = NextResponse.redirect(\n new URL(`${baseUrl}${opts.afterLogoutPath ?? '/'}`, request.url),\n );\n res.cookies.delete(opts.sessionCookieName);\n return res;\n },\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["createLoginHandler","createSharedLoginHandler"],"sources":["../../../src/nextjs/callback.ts","../../../src/nextjs/off-platform/session.ts","../../../src/nextjs/off-platform/index.ts"],"sourcesContent":["import { cookies } from 'next/headers';\nimport { NextResponse } from 'next/server';\n\nimport {\n createAuthorizationUrl,\n exchangeCodeForToken,\n createSessionJwt,\n type SessionPayload,\n} from '../core/index.js';\n\nimport { LOG_PREFIX, COOKIE_SAME_SITE } from './constants.js';\nimport { fetchUserProfile, getBaseUrl } from './utils.js';\n\nimport type { ResolvedConfig } from './index.js';\n\nconst COOKIE_OAUTH_STATE = 'oauth_state';\nconst COOKIE_OAUTH_VERIFIER = 'oauth_verifier';\nconst OAUTH_COOKIE_MAX_AGE_SECONDS = 600;\nconst ERROR_STATE_MISMATCH = 'oauth_state_mismatch';\nconst ERROR_TOKEN_EXCHANGE_FAILED = 'oauth_token_exchange_failed';\nconst ERROR_USER_PROFILE_FAILED = 'oauth_user_profile_failed';\n\n/** Parameters extracted from the OAuth callback request. */\nexport type CallbackParams =\n | { kind: 'success'; code: string; state: string }\n | { kind: 'error'; error: string; errorDescription: string | null }\n | { kind: 'empty' };\n\n/** Strategy for completing the OAuth callback — how the JWT is delivered to the client. */\nexport interface CallbackStrategy {\n complete(request: Request, jwt: string, baseUrl: string): NextResponse;\n}\n\n/** Options required by the shared callback handler. */\nexport type CallbackHandlerOptions = ResolvedConfig;\n\n/**\n * Shared callback handler that validates the OAuth state, exchanges the\n * authorization code for tokens, fetches the user profile, creates a session\n * JWT, and delegates to the strategy for final response.\n */\nexport async function handleOAuthCallback(\n request: Request,\n opts: CallbackHandlerOptions,\n getParams: (request: Request) => Promise<CallbackParams>,\n strategy: CallbackStrategy,\n): Promise<NextResponse> {\n const baseUrl = getBaseUrl(opts, request.url);\n const params = await getParams(request);\n\n const cookieStore = await cookies();\n const storedState = cookieStore.get(COOKIE_OAUTH_STATE)?.value;\n const verifier = cookieStore.get(COOKIE_OAUTH_VERIFIER)?.value;\n\n cookieStore.delete(COOKIE_OAUTH_STATE);\n cookieStore.delete(COOKIE_OAUTH_VERIFIER);\n\n if (params.kind === 'error') {\n const search = new URLSearchParams();\n search.set('error', params.error);\n if (params.errorDescription) search.set('error_description', params.errorDescription);\n return NextResponse.redirect(new URL(`${baseUrl}/?${search.toString()}`, request.url));\n }\n\n if (params.kind === 'empty' || !storedState || !verifier || params.state !== storedState) {\n return NextResponse.redirect(new URL(`${baseUrl}/?error=${ERROR_STATE_MISMATCH}`, request.url));\n }\n\n const { code } = params;\n\n const tokenResult = await exchangeCodeForToken(opts, {\n code,\n codeVerifier: verifier,\n redirectUri: null,\n });\n\n if (tokenResult.isErr()) {\n console.error(`${LOG_PREFIX} token exchange failed:`, tokenResult.error);\n return NextResponse.redirect(\n new URL(`${baseUrl}/?error=${ERROR_TOKEN_EXCHANGE_FAILED}`, request.url),\n );\n }\n\n const token = tokenResult.value;\n const user = await fetchUserProfile(token.access_token, opts.apiBaseUrl);\n\n if (!user) {\n return NextResponse.redirect(\n new URL(`${baseUrl}/?error=${ERROR_USER_PROFILE_FAILED}`, request.url),\n );\n }\n\n const sessionPayload: SessionPayload = {\n accessToken: token.access_token,\n refreshToken: token.refresh_token,\n tokenType: token.token_type,\n scope: token.scope,\n idToken: token.id_token,\n expiresAt: Date.now() + token.expires_in * 1000,\n userUuid: user.uuid,\n handle: user.handle,\n displayName: user.displayName,\n isCreator: user.isCreator,\n avatarUrl: user.avatarUrl,\n };\n\n const jwt = await createSessionJwt(opts.sessionSecret, sessionPayload);\n\n return strategy.complete(request, jwt, baseUrl);\n}\n\n/**\n * Creates a Next.js route handler that initiates the OAuth login flow.\n * Used by the off-platform module.\n */\nexport function createLoginHandler(opts: CallbackHandlerOptions): {\n GET(request: Request): Promise<NextResponse>;\n} {\n return {\n async GET(request: Request): Promise<NextResponse> {\n const { url, codeVerifier, state } = await createAuthorizationUrl(opts);\n\n const cookieStore = await cookies();\n const reqUrl = new URL(request.url);\n const secure = reqUrl.protocol === 'https:';\n\n cookieStore.set(COOKIE_OAUTH_STATE, state, {\n httpOnly: true,\n path: '/',\n sameSite: COOKIE_SAME_SITE,\n secure,\n maxAge: OAUTH_COOKIE_MAX_AGE_SECONDS,\n });\n cookieStore.set(COOKIE_OAUTH_VERIFIER, codeVerifier, {\n httpOnly: true,\n path: '/',\n sameSite: COOKIE_SAME_SITE,\n secure,\n maxAge: OAUTH_COOKIE_MAX_AGE_SECONDS,\n });\n\n return NextResponse.redirect(url);\n },\n };\n}\n\n/** Extracts callback params from a GET request's query string. */\nexport function getParamsFromQuery(request: Request): Promise<CallbackParams> {\n const url = new URL(request.url);\n const error = url.searchParams.get('error');\n if (error) {\n return Promise.resolve({\n kind: 'error',\n error,\n errorDescription: url.searchParams.get('error_description'),\n });\n }\n const code = url.searchParams.get('code');\n const state = url.searchParams.get('state');\n if (code && state) {\n return Promise.resolve({ kind: 'success', code, state });\n }\n return Promise.resolve({ kind: 'empty' });\n}\n\n/** Extracts callback params from a POST request's form body. */\nexport async function getParamsFromForm(\n request: Request,\n getFormString: (form: FormData, key: string) => string | null,\n): Promise<CallbackParams> {\n const form = await request.formData();\n const error = getFormString(form, 'error');\n if (error) {\n return {\n kind: 'error',\n error,\n errorDescription: getFormString(form, 'error_description'),\n };\n }\n const code = getFormString(form, 'code');\n const state = getFormString(form, 'state');\n if (code && state) {\n return { kind: 'success', code, state };\n }\n return { kind: 'empty' };\n}\n","import { cookies } from 'next/headers';\n\nimport {\n verifySessionJwt,\n createSessionJwt,\n createFanvueClient,\n refreshAccessToken,\n type FanvueClient,\n type OAuthConfig,\n type SessionPayload,\n} from '../../core/index.js';\nimport {\n DEFAULT_SESSION_COOKIE_NAME,\n SESSION_COOKIE_MAX_AGE_SECONDS,\n COOKIE_SAME_SITE,\n LOG_PREFIX,\n} from '../constants.js';\n\nconst TOKEN_REFRESH_THRESHOLD_MS = 30_000;\n\n/**\n * Reads and verifies the session JWT from the cookie store.\n *\n * @param secret - The secret used to verify the JWT.\n * @param cookieName - The cookie name to read. Defaults to {@link DEFAULT_SESSION_COOKIE_NAME}.\n * @returns The verified {@link SessionPayload}, or `null` if missing/invalid.\n */\nexport async function getSession(\n secret: string,\n cookieName: string | null = null,\n): Promise<SessionPayload | null> {\n const cookieStore = await cookies();\n const token = cookieStore.get(cookieName ?? DEFAULT_SESSION_COOKIE_NAME)?.value;\n if (!token) return null;\n const result = await verifySessionJwt(secret, token);\n if (result.isErr()) {\n console.warn(`${LOG_PREFIX} session verify failed:`, result.error);\n return null;\n }\n return result.value;\n}\n\n/**\n * Creates or updates the session cookie with a fresh JWT.\n *\n * @param secret - The secret used to sign the JWT.\n * @param cookieName - The cookie name to set.\n * @param payload - The session data to encode into the JWT.\n */\nexport async function setSession(\n secret: string,\n cookieName: string,\n payload: SessionPayload,\n): Promise<void> {\n const jwt = await createSessionJwt(secret, payload);\n const cookieStore = await cookies();\n cookieStore.set(cookieName, jwt, {\n httpOnly: true,\n secure: process.env['NODE_ENV'] === 'production',\n sameSite: COOKIE_SAME_SITE,\n path: '/',\n maxAge: SESSION_COOKIE_MAX_AGE_SECONDS,\n });\n}\n\n/**\n * Deletes the session cookie.\n *\n * @param cookieName - The cookie name to delete.\n */\nexport async function clearSession(cookieName: string): Promise<void> {\n const cookieStore = await cookies();\n cookieStore.delete(cookieName);\n}\n\n/**\n * Returns an authenticated {@link FanvueClient} for the current session.\n *\n * If the access token is close to expiring and a refresh token is available,\n * the token is refreshed transparently and the session cookie is updated.\n *\n * @param opts - Session secret, cookie name, and OAuth config.\n * @returns A {@link FanvueClient} instance, or `null` if no valid session exists\n * or token refresh fails.\n */\nexport async function getAuthenticatedClient(opts: {\n sessionSecret: string;\n sessionCookieName: string | null;\n config: OAuthConfig;\n}): Promise<FanvueClient | null> {\n const cookieName = opts.sessionCookieName ?? DEFAULT_SESSION_COOKIE_NAME;\n let session = await getSession(opts.sessionSecret, cookieName);\n if (!session) return null;\n\n if (Date.now() >= session.expiresAt - TOKEN_REFRESH_THRESHOLD_MS && session.refreshToken) {\n const refreshResult = await refreshAccessToken(opts.config, session.refreshToken);\n\n if (refreshResult.isErr()) {\n console.warn(`${LOG_PREFIX} token refresh failed:`, refreshResult.error);\n return null;\n }\n\n const refreshed = refreshResult.value;\n // When the refresh response omits optional fields (parsed as null by the schema),\n // preserve the existing session values. Per RFC 6749 §6, a refresh response MAY\n // include a new refresh_token; when absent, the existing one remains valid.\n session = {\n ...session,\n accessToken: refreshed.access_token,\n refreshToken: refreshed.refresh_token ?? session.refreshToken,\n tokenType: refreshed.token_type ?? session.tokenType,\n scope: refreshed.scope ?? session.scope,\n idToken: refreshed.id_token ?? session.idToken,\n expiresAt: Date.now() + refreshed.expires_in * 1000,\n };\n try {\n await setSession(opts.sessionSecret, cookieName, session);\n } catch (error) {\n console.warn(`${LOG_PREFIX} failed to persist refreshed session:`, error);\n }\n }\n\n return createFanvueClient(session.accessToken, opts.config.apiBaseUrl);\n}\n","import { NextResponse } from 'next/server';\n\nimport {\n handleOAuthCallback,\n createLoginHandler as createSharedLoginHandler,\n getParamsFromQuery,\n getParamsFromForm,\n} from '../callback.js';\nimport { COOKIE_SAME_SITE, SESSION_COOKIE_MAX_AGE_SECONDS } from '../constants.js';\nimport { type ResolvedConfig } from '../index.js';\nimport { getBaseUrl, getFormString } from '../utils.js';\n\nimport type { CallbackStrategy } from '../callback.js';\n\nexport { getSession, getAuthenticatedClient } from './session.js';\nexport { createConfig, type FanvueAuthOptions, type ResolvedConfig } from '../index.js';\n\n/**\n * Configuration for the off-platform OAuth handlers.\n *\n * Extends {@link ResolvedConfig} with optional routing overrides.\n */\nexport type OffPlatformOptions = ResolvedConfig & {\n afterLoginPath: string | null;\n afterLogoutPath: string | null;\n};\n\n/**\n * Creates a Next.js route handler that initiates the OAuth login flow.\n *\n * @param opts - The off-platform configuration.\n * @returns A route handler object with a `GET` method.\n */\nexport function createLoginHandler(opts: OffPlatformOptions): {\n GET(request: Request): Promise<NextResponse>;\n} {\n return createSharedLoginHandler(opts);\n}\n\n/**\n * Creates a Next.js route handler that processes the OAuth callback.\n *\n * Supports both `GET` (query-string params) and `POST` (form-encoded body)\n * response modes.\n *\n * @param opts - The off-platform configuration.\n * @returns A route handler object with `GET` and `POST` methods.\n */\nexport function createCallbackHandler(opts: OffPlatformOptions): {\n GET(request: Request): Promise<NextResponse>;\n POST(request: Request): Promise<NextResponse>;\n} {\n const strategy: CallbackStrategy = {\n complete(request: Request, jwt: string, baseUrl: string): NextResponse {\n const res = NextResponse.redirect(\n new URL(`${baseUrl}${opts.afterLoginPath ?? '/'}`, request.url),\n );\n res.cookies.set(opts.sessionCookieName, jwt, {\n httpOnly: true,\n secure: new URL(request.url).protocol === 'https:',\n sameSite: COOKIE_SAME_SITE,\n path: '/',\n maxAge: SESSION_COOKIE_MAX_AGE_SECONDS,\n });\n return res;\n },\n };\n\n return {\n async GET(request: Request): Promise<NextResponse> {\n return handleOAuthCallback(request, opts, getParamsFromQuery, strategy);\n },\n async POST(request: Request): Promise<NextResponse> {\n return handleOAuthCallback(\n request,\n opts,\n (req) => getParamsFromForm(req, getFormString),\n strategy,\n );\n },\n };\n}\n\n/**\n * Creates a Next.js route handler that logs the user out by deleting the\n * session cookie and redirecting.\n *\n * @param opts - The off-platform configuration.\n * @returns A route handler object with a `POST` method.\n */\nexport function createLogoutHandler(opts: OffPlatformOptions): {\n POST(request: Request): NextResponse;\n} {\n return {\n POST(request: Request): NextResponse {\n const baseUrl = getBaseUrl(opts, request.url);\n const res = NextResponse.redirect(\n new URL(`${baseUrl}${opts.afterLogoutPath ?? '/'}`, request.url),\n );\n res.cookies.delete(opts.sessionCookieName);\n return res;\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { t as createFanvueClient, x as assertFanvueDomain } from "./core-BqdYUMrJ.js";
|
|
2
2
|
//#region src/nextjs/constants.ts
|
|
3
3
|
/** Default name for the session cookie. */
|
|
4
4
|
const DEFAULT_SESSION_COOKIE_NAME = "fanvue_session";
|
|
@@ -77,4 +77,4 @@ function createConfig(opts) {
|
|
|
77
77
|
//#endregion
|
|
78
78
|
export { DEFAULT_SESSION_COOKIE_NAME as a, getFormString as i, fetchUserProfile as n, LOG_PREFIX as o, getBaseUrl as r, SESSION_COOKIE_MAX_AGE_SECONDS as s, createConfig as t };
|
|
79
79
|
|
|
80
|
-
//# sourceMappingURL=nextjs-
|
|
80
|
+
//# sourceMappingURL=nextjs-B5Tqgt_n.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nextjs-
|
|
1
|
+
{"version":3,"file":"nextjs-B5Tqgt_n.js","names":[],"sources":["../src/nextjs/constants.ts","../src/nextjs/utils.ts","../src/nextjs/index.ts"],"sourcesContent":["/** Default name for the session cookie. */\nexport const DEFAULT_SESSION_COOKIE_NAME = 'fanvue_session' as const;\n\n/** Session cookie max-age in seconds (30 days). */\nexport const SESSION_COOKIE_MAX_AGE_SECONDS = 60 * 60 * 24 * 30;\n\n/** SameSite attribute for cookies. */\nexport const COOKIE_SAME_SITE = 'lax' as const;\n\n/** Log prefix for all library log messages. */\nexport const LOG_PREFIX = '[fanvue/auth]' as const;\n","import { createFanvueClient } from '../core/index.js';\n\nimport { LOG_PREFIX } from './constants.js';\n\nimport type { FanvueUser } from '../core/index.js';\n\n/**\n * Fetches the authenticated user's profile from the Fanvue API.\n *\n * @returns The user profile on success, or `null` on failure.\n */\nexport async function fetchUserProfile(\n accessToken: string,\n apiBaseUrl: string | null,\n): Promise<FanvueUser | null> {\n const client = createFanvueClient(accessToken, apiBaseUrl);\n const result = await client.getCurrentUser();\n if (result.isErr()) {\n console.warn(`${LOG_PREFIX} user profile fetch failed:`, result.error);\n return null;\n }\n return result.value;\n}\n\n/**\n * Extracts a string value from `FormData`, returning `null` when the value\n * is missing or is not a string (e.g. a `File`).\n */\nexport function getFormString(form: FormData, key: string): string | null {\n const value = form.get(key);\n return typeof value === 'string' ? value : null;\n}\n\n/**\n * Derives the application base URL from the options or falls back to the\n * request's origin.\n */\nexport function getBaseUrl(opts: { baseUrl: string | null }, requestUrl: string): string {\n return opts.baseUrl ?? new URL(requestUrl).origin;\n}\n","import { assertFanvueDomain } from '../core/index.js';\n\nimport { DEFAULT_SESSION_COOKIE_NAME } from './constants.js';\n\nimport type { OAuthConfig } from '../core/index.js';\n\n/**\n * User-facing configuration options for Fanvue OAuth.\n *\n * All fields are optional — when omitted, values are read from the\n * corresponding environment variables at runtime. This type uses optional\n * properties (`?`) rather than nullable fields because every value has an\n * env-var fallback, so `undefined` genuinely means \"use the default.\"\n */\nexport type FanvueAuthOptions = {\n clientId?: string;\n clientSecret?: string;\n redirectUri?: string;\n issuerUrl?: string;\n apiBaseUrl?: string;\n scopes?: string;\n sessionSecret?: string;\n sessionCookieName?: string;\n responseMode?: string;\n prompt?: string;\n baseUrl?: string;\n};\n\n/**\n * Fully-resolved configuration produced by {@link createConfig}.\n *\n * Extends the core {@link OAuthConfig} with session-specific settings that\n * are guaranteed to be present.\n */\nexport type ResolvedConfig = OAuthConfig & {\n sessionSecret: string;\n sessionCookieName: string;\n baseUrl: string | null;\n};\n\n/**\n * Resolves a complete {@link ResolvedConfig} from the supplied options,\n * falling back to environment variables for any values not provided.\n *\n * @param opts - Optional overrides for the OAuth and session configuration.\n * @returns A fully-resolved configuration object.\n * @throws If any required value (`clientId`, `clientSecret`, `redirectUri`,\n * `sessionSecret`) is missing from both `opts` and the environment.\n */\nexport function createConfig(opts?: FanvueAuthOptions): ResolvedConfig {\n const clientId = opts?.clientId ?? process.env['OAUTH_CLIENT_ID'];\n const clientSecret = opts?.clientSecret ?? process.env['OAUTH_CLIENT_SECRET'];\n const redirectUri = opts?.redirectUri ?? process.env['OAUTH_REDIRECT_URI'];\n const sessionSecret = opts?.sessionSecret ?? process.env['SESSION_SECRET'];\n\n if (!clientId || !clientSecret || !redirectUri || !sessionSecret) {\n throw new Error(\n 'Missing required OAuth configuration. Provide via options or env vars: OAUTH_CLIENT_ID, OAUTH_CLIENT_SECRET, OAUTH_REDIRECT_URI, SESSION_SECRET',\n );\n }\n\n const issuerUrl = opts?.issuerUrl ?? process.env['OAUTH_ISSUER_BASE_URL'];\n const apiBaseUrl = opts?.apiBaseUrl ?? process.env['API_BASE_URL'];\n if (apiBaseUrl != null) assertFanvueDomain(apiBaseUrl);\n const scopes = opts?.scopes ?? process.env['OAUTH_SCOPES'];\n const responseMode = opts?.responseMode ?? process.env['OAUTH_RESPONSE_MODE'];\n const prompt = opts?.prompt ?? process.env['OAUTH_PROMPT'];\n const baseUrl = opts?.baseUrl ?? process.env['BASE_URL'];\n\n return {\n clientId,\n clientSecret,\n redirectUri,\n issuerUrl: issuerUrl ?? null,\n apiBaseUrl: apiBaseUrl ?? null,\n scopes: scopes ?? null,\n responseMode: responseMode ?? null,\n prompt: prompt ?? null,\n baseUrl: baseUrl ?? null,\n sessionSecret,\n sessionCookieName:\n opts?.sessionCookieName ?? process.env['SESSION_COOKIE_NAME'] ?? DEFAULT_SESSION_COOKIE_NAME,\n };\n}\n"],"mappings":";;;AACA,MAAa,8BAA8B;;AAG3C,MAAa,iCAAiC,OAAU,KAAK;;AAM7D,MAAa,aAAa;;;;;;;;ACC1B,eAAsB,iBACpB,aACA,YAC4B;CAE5B,MAAM,SAAS,MADA,mBAAmB,aAAa,WAAW,CAC9B,gBAAgB;AAC5C,KAAI,OAAO,OAAO,EAAE;AAClB,UAAQ,KAAK,GAAG,WAAW,8BAA8B,OAAO,MAAM;AACtE,SAAO;;AAET,QAAO,OAAO;;;;;;AAOhB,SAAgB,cAAc,MAAgB,KAA4B;CACxE,MAAM,QAAQ,KAAK,IAAI,IAAI;AAC3B,QAAO,OAAO,UAAU,WAAW,QAAQ;;;;;;AAO7C,SAAgB,WAAW,MAAkC,YAA4B;AACvF,QAAO,KAAK,WAAW,IAAI,IAAI,WAAW,CAAC;;;;;;;;;;;;;ACW7C,SAAgB,aAAa,MAA0C;CACrE,MAAM,WAAW,MAAM,YAAY,QAAQ,IAAI;CAC/C,MAAM,eAAe,MAAM,gBAAgB,QAAQ,IAAI;CACvD,MAAM,cAAc,MAAM,eAAe,QAAQ,IAAI;CACrD,MAAM,gBAAgB,MAAM,iBAAiB,QAAQ,IAAI;AAEzD,KAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,eAAe,CAAC,cACjD,OAAM,IAAI,MACR,kJACD;CAGH,MAAM,YAAY,MAAM,aAAa,QAAQ,IAAI;CACjD,MAAM,aAAa,MAAM,cAAc,QAAQ,IAAI;AACnD,KAAI,cAAc,KAAM,oBAAmB,WAAW;CACtD,MAAM,SAAS,MAAM,UAAU,QAAQ,IAAI;CAC3C,MAAM,eAAe,MAAM,gBAAgB,QAAQ,IAAI;CACvD,MAAM,SAAS,MAAM,UAAU,QAAQ,IAAI;CAC3C,MAAM,UAAU,MAAM,WAAW,QAAQ,IAAI;AAE7C,QAAO;EACL;EACA;EACA;EACA,WAAW,aAAa;EACxB,YAAY,cAAc;EAC1B,QAAQ,UAAU;EAClB,cAAc,gBAAgB;EAC9B,QAAQ,UAAU;EAClB,SAAS,WAAW;EACpB;EACA,mBACE,MAAM,qBAAqB,QAAQ,IAAI,0BAAA;EAC1C"}
|