fansunited-data-layer 0.15.1 → 0.15.3
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/fansunited-sdk/loyalty/template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,kBAAkB,MAAM,0DAA0D,CAAC;AAC/F,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/fansunited-sdk/loyalty/template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,kBAAkB,MAAM,0DAA0D,CAAC;AAC/F,OAAO,KAAK,EAA2B,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAExG;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,sBAAsB,CACxC,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;IACN,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B,GACF,OAAO,CAAC,kBAAkB,CAAC,CAuD7B"}
|
|
@@ -41,7 +41,11 @@ async function getLeaderboardTemplate(sdk, templateId, options) {
|
|
|
41
41
|
automaticallyChangeStatus: templateModel.automaticallyChangeStatus || false,
|
|
42
42
|
createdAt: templateModel.createdAt,
|
|
43
43
|
updatedAt: templateModel.updatedAt,
|
|
44
|
-
related: templateModel.related || []
|
|
44
|
+
related: (templateModel.related || []).map((r) => ({
|
|
45
|
+
entityId: r.entityId,
|
|
46
|
+
entityType: r.entityType,
|
|
47
|
+
entityRelationship: r.entityRelationship
|
|
48
|
+
})),
|
|
45
49
|
adContent: templateModel.adContent || ""
|
|
46
50
|
};
|
|
47
51
|
return serialized;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template.js","sources":["../../../../src/lib/api/fansunited-sdk/loyalty/template.ts"],"sourcesContent":["/**\n * SDK-based loyalty/predictor template operations\n *\n * These functions use the FansUnited SDK's loyalty namespace to fetch template data.\n */\n\nimport type FansUnitedSDKModel from \"fansunited-sdk-esm/Core/Global/Models/FansUnitedSDKModel\";\nimport type { SerializedTemplate } from \"../../../providers/leaderboard.types\";\n\n/**\n * Get template/leaderboard by ID\n *\n * Fetches a predictor leaderboard template using the SDK's loyalty.getTemplateById() method.\n * The SDK returns a class instance which needs to be serialized for use in React Server Components.\n *\n * @param sdk - The FansUnited SDK instance\n * @param templateId - The template/leaderboard ID\n * @param options - Optional parameters\n * @param options.disableCache - Whether to disable API cache (default: false)\n * @returns Template data as a serializable plain object\n *\n * @example\n * ```typescript\n * import { useFansUnitedSDK } from 'fansunited-data-layer';\n * import { getLeaderboardTemplate } from 'fansunited-data-layer/client';\n *\n * function MyComponent() {\n * const sdk = useFansUnitedSDK();\n *\n * const fetchTemplate = async () => {\n * if (!sdk) return;\n * const template = await getLeaderboardTemplate(sdk, 'template-123');\n * console.log(template.name); // Template name\n * console.log(template.groups); // Template groups\n * };\n * }\n * ```\n */\nexport async function getLeaderboardTemplate(\n sdk: FansUnitedSDKModel,\n templateId: string,\n options?: {\n disableCache?: boolean;\n }\n): Promise<SerializedTemplate> {\n // Call SDK loyalty.getTemplateById()\n const templateModel = await sdk.loyalty.getTemplateById(templateId, options?.disableCache);\n\n // The SDK returns a TemplateByIdModel class instance\n // We need to serialize it to a plain object for React Server Components\n const serialized: SerializedTemplate = {\n id: templateModel.id,\n name: templateModel.name,\n description: templateModel.description,\n type: templateModel.type,\n fromDate: templateModel.fromDate,\n toDate: templateModel.toDate,\n markets: templateModel.markets || [],\n teamIds: templateModel.teamIds || [],\n matchIds: templateModel.matchIds || [],\n groups: (templateModel.groups || []).map((group) => ({\n groupId: group.groupId,\n label: group.label,\n flags: group.flags || [],\n filters: {\n fromDate: group.filters?.fromDate || \"\",\n toDate: group.filters?.toDate || \"\",\n matchIds: group.filters?.matchIds || [],\n },\n })),\n gameIds: templateModel.gameIds || [],\n gameTypes: templateModel.gameTypes || [],\n competitionIds: templateModel.competitionIds || [],\n excludedProfileIds: templateModel.excludedProfileIds || [],\n rules: templateModel.rules || \"\",\n labels: templateModel.labels || {},\n customFields: templateModel.customFields || {},\n // Convert BrandingModel to plain object\n branding: templateModel.branding ? JSON.parse(JSON.stringify(templateModel.branding)) : {},\n brandingId: null, // brandingId doesn't exist on TemplateByIdModel, using null\n flags: templateModel.flags || [],\n images: {\n main: templateModel.images?.main || null,\n cover: templateModel.images?.cover || null,\n mobile: templateModel.images?.mobile || null,\n },\n status: templateModel.status,\n automaticallyChangeStatus: templateModel.automaticallyChangeStatus || false,\n createdAt: templateModel.createdAt,\n updatedAt: templateModel.updatedAt,\n related: templateModel.related || [],\n adContent: templateModel.adContent || \"\",\n };\n\n return serialized;\n}\n"],"names":[],"mappings":"AAsCA,eAAsB,uBAClB,KACA,YACA,SAG2B;AAE3B,QAAM,gBAAgB,MAAM,IAAI,QAAQ,gBAAgB,YAAY,SAAS,YAAY;AAIzF,QAAM,aAAiC;AAAA,IACnC,IAAI,cAAc;AAAA,IAClB,MAAM,cAAc;AAAA,IACpB,aAAa,cAAc;AAAA,IAC3B,MAAM,cAAc;AAAA,IACpB,UAAU,cAAc;AAAA,IACxB,QAAQ,cAAc;AAAA,IACtB,SAAS,cAAc,WAAW,CAAA;AAAA,IAClC,SAAS,cAAc,WAAW,CAAA;AAAA,IAClC,UAAU,cAAc,YAAY,CAAA;AAAA,IACpC,SAAS,cAAc,UAAU,CAAA,GAAI,IAAI,CAAC,WAAW;AAAA,MACjD,SAAS,MAAM;AAAA,MACf,OAAO,MAAM;AAAA,MACb,OAAO,MAAM,SAAS,CAAA;AAAA,MACtB,SAAS;AAAA,QACL,UAAU,MAAM,SAAS,YAAY;AAAA,QACrC,QAAQ,MAAM,SAAS,UAAU;AAAA,QACjC,UAAU,MAAM,SAAS,YAAY,CAAA;AAAA,MAAC;AAAA,IAC1C,EACF;AAAA,IACF,SAAS,cAAc,WAAW,CAAA;AAAA,IAClC,WAAW,cAAc,aAAa,CAAA;AAAA,IACtC,gBAAgB,cAAc,kBAAkB,CAAA;AAAA,IAChD,oBAAoB,cAAc,sBAAsB,CAAA;AAAA,IACxD,OAAO,cAAc,SAAS;AAAA,IAC9B,QAAQ,cAAc,UAAU,CAAA;AAAA,IAChC,cAAc,cAAc,gBAAgB,CAAA;AAAA;AAAA,IAE5C,UAAU,cAAc,WAAW,KAAK,MAAM,KAAK,UAAU,cAAc,QAAQ,CAAC,IAAI,CAAA;AAAA,IACxF,YAAY;AAAA;AAAA,IACZ,OAAO,cAAc,SAAS,CAAA;AAAA,IAC9B,QAAQ;AAAA,MACJ,MAAM,cAAc,QAAQ,QAAQ;AAAA,MACpC,OAAO,cAAc,QAAQ,SAAS;AAAA,MACtC,QAAQ,cAAc,QAAQ,UAAU;AAAA,IAAA;AAAA,IAE5C,QAAQ,cAAc;AAAA,IACtB,2BAA2B,cAAc,6BAA6B;AAAA,IACtE,WAAW,cAAc;AAAA,IACzB,WAAW,cAAc;AAAA,IACzB,
|
|
1
|
+
{"version":3,"file":"template.js","sources":["../../../../src/lib/api/fansunited-sdk/loyalty/template.ts"],"sourcesContent":["/**\n * SDK-based loyalty/predictor template operations\n *\n * These functions use the FansUnited SDK's loyalty namespace to fetch template data.\n */\n\nimport type FansUnitedSDKModel from \"fansunited-sdk-esm/Core/Global/Models/FansUnitedSDKModel\";\nimport type { SerializedRelatedEntity, SerializedTemplate } from \"../../../providers/leaderboard.types\";\n\n/**\n * Get template/leaderboard by ID\n *\n * Fetches a predictor leaderboard template using the SDK's loyalty.getTemplateById() method.\n * The SDK returns a class instance which needs to be serialized for use in React Server Components.\n *\n * @param sdk - The FansUnited SDK instance\n * @param templateId - The template/leaderboard ID\n * @param options - Optional parameters\n * @param options.disableCache - Whether to disable API cache (default: false)\n * @returns Template data as a serializable plain object\n *\n * @example\n * ```typescript\n * import { useFansUnitedSDK } from 'fansunited-data-layer';\n * import { getLeaderboardTemplate } from 'fansunited-data-layer/client';\n *\n * function MyComponent() {\n * const sdk = useFansUnitedSDK();\n *\n * const fetchTemplate = async () => {\n * if (!sdk) return;\n * const template = await getLeaderboardTemplate(sdk, 'template-123');\n * console.log(template.name); // Template name\n * console.log(template.groups); // Template groups\n * };\n * }\n * ```\n */\nexport async function getLeaderboardTemplate(\n sdk: FansUnitedSDKModel,\n templateId: string,\n options?: {\n disableCache?: boolean;\n }\n): Promise<SerializedTemplate> {\n // Call SDK loyalty.getTemplateById()\n const templateModel = await sdk.loyalty.getTemplateById(templateId, options?.disableCache);\n\n // The SDK returns a TemplateByIdModel class instance\n // We need to serialize it to a plain object for React Server Components\n const serialized: SerializedTemplate = {\n id: templateModel.id,\n name: templateModel.name,\n description: templateModel.description,\n type: templateModel.type,\n fromDate: templateModel.fromDate,\n toDate: templateModel.toDate,\n markets: templateModel.markets || [],\n teamIds: templateModel.teamIds || [],\n matchIds: templateModel.matchIds || [],\n groups: (templateModel.groups || []).map((group) => ({\n groupId: group.groupId,\n label: group.label,\n flags: group.flags || [],\n filters: {\n fromDate: group.filters?.fromDate || \"\",\n toDate: group.filters?.toDate || \"\",\n matchIds: group.filters?.matchIds || [],\n },\n })),\n gameIds: templateModel.gameIds || [],\n gameTypes: templateModel.gameTypes || [],\n competitionIds: templateModel.competitionIds || [],\n excludedProfileIds: templateModel.excludedProfileIds || [],\n rules: templateModel.rules || \"\",\n labels: templateModel.labels || {},\n customFields: templateModel.customFields || {},\n // Convert BrandingModel to plain object\n branding: templateModel.branding ? JSON.parse(JSON.stringify(templateModel.branding)) : {},\n brandingId: null, // brandingId doesn't exist on TemplateByIdModel, using null\n flags: templateModel.flags || [],\n images: {\n main: templateModel.images?.main || null,\n cover: templateModel.images?.cover || null,\n mobile: templateModel.images?.mobile || null,\n },\n status: templateModel.status,\n automaticallyChangeStatus: templateModel.automaticallyChangeStatus || false,\n createdAt: templateModel.createdAt,\n updatedAt: templateModel.updatedAt,\n related: (templateModel.related || []).map((r: SerializedRelatedEntity) => ({\n entityId: r.entityId,\n entityType: r.entityType,\n entityRelationship: r.entityRelationship,\n })),\n adContent: templateModel.adContent || \"\",\n };\n\n return serialized;\n}\n"],"names":[],"mappings":"AAsCA,eAAsB,uBAClB,KACA,YACA,SAG2B;AAE3B,QAAM,gBAAgB,MAAM,IAAI,QAAQ,gBAAgB,YAAY,SAAS,YAAY;AAIzF,QAAM,aAAiC;AAAA,IACnC,IAAI,cAAc;AAAA,IAClB,MAAM,cAAc;AAAA,IACpB,aAAa,cAAc;AAAA,IAC3B,MAAM,cAAc;AAAA,IACpB,UAAU,cAAc;AAAA,IACxB,QAAQ,cAAc;AAAA,IACtB,SAAS,cAAc,WAAW,CAAA;AAAA,IAClC,SAAS,cAAc,WAAW,CAAA;AAAA,IAClC,UAAU,cAAc,YAAY,CAAA;AAAA,IACpC,SAAS,cAAc,UAAU,CAAA,GAAI,IAAI,CAAC,WAAW;AAAA,MACjD,SAAS,MAAM;AAAA,MACf,OAAO,MAAM;AAAA,MACb,OAAO,MAAM,SAAS,CAAA;AAAA,MACtB,SAAS;AAAA,QACL,UAAU,MAAM,SAAS,YAAY;AAAA,QACrC,QAAQ,MAAM,SAAS,UAAU;AAAA,QACjC,UAAU,MAAM,SAAS,YAAY,CAAA;AAAA,MAAC;AAAA,IAC1C,EACF;AAAA,IACF,SAAS,cAAc,WAAW,CAAA;AAAA,IAClC,WAAW,cAAc,aAAa,CAAA;AAAA,IACtC,gBAAgB,cAAc,kBAAkB,CAAA;AAAA,IAChD,oBAAoB,cAAc,sBAAsB,CAAA;AAAA,IACxD,OAAO,cAAc,SAAS;AAAA,IAC9B,QAAQ,cAAc,UAAU,CAAA;AAAA,IAChC,cAAc,cAAc,gBAAgB,CAAA;AAAA;AAAA,IAE5C,UAAU,cAAc,WAAW,KAAK,MAAM,KAAK,UAAU,cAAc,QAAQ,CAAC,IAAI,CAAA;AAAA,IACxF,YAAY;AAAA;AAAA,IACZ,OAAO,cAAc,SAAS,CAAA;AAAA,IAC9B,QAAQ;AAAA,MACJ,MAAM,cAAc,QAAQ,QAAQ;AAAA,MACpC,OAAO,cAAc,QAAQ,SAAS;AAAA,MACtC,QAAQ,cAAc,QAAQ,UAAU;AAAA,IAAA;AAAA,IAE5C,QAAQ,cAAc;AAAA,IACtB,2BAA2B,cAAc,6BAA6B;AAAA,IACtE,WAAW,cAAc;AAAA,IACzB,WAAW,cAAc;AAAA,IACzB,UAAU,cAAc,WAAW,CAAA,GAAI,IAAI,CAAC,OAAgC;AAAA,MACxE,UAAU,EAAE;AAAA,MACZ,YAAY,EAAE;AAAA,MACd,oBAAoB,EAAE;AAAA,IAAA,EACxB;AAAA,IACF,WAAW,cAAc,aAAa;AAAA,EAAA;AAG1C,SAAO;AACX;"}
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"description": "A TypeScript library for fetching and transforming sports data from multiple API providers. Returns clean, canonical types that are provider-agnostic.",
|
|
5
5
|
"homepage": "https://fansunited.com/",
|
|
6
6
|
"private": false,
|
|
7
|
-
"version": "0.15.
|
|
7
|
+
"version": "0.15.3",
|
|
8
8
|
"type": "module",
|
|
9
9
|
"sideEffects": false,
|
|
10
10
|
"module": "./fansunited-data-layer.js",
|
|
@@ -9,6 +9,11 @@ import type { FUSportsMatch } from "../types/canonical";
|
|
|
9
9
|
* which cannot be passed from Server Components to Client Components.
|
|
10
10
|
* These interfaces mirror the class shapes as serializable plain objects.
|
|
11
11
|
*/
|
|
12
|
+
export interface SerializedRelatedEntity {
|
|
13
|
+
entityId: string;
|
|
14
|
+
entityType: string;
|
|
15
|
+
entityRelationship: string;
|
|
16
|
+
}
|
|
12
17
|
export interface SerializedTemplateGroupFilter {
|
|
13
18
|
fromDate: string;
|
|
14
19
|
toDate: string;
|
|
@@ -50,10 +55,7 @@ export interface SerializedTemplate {
|
|
|
50
55
|
automaticallyChangeStatus: boolean;
|
|
51
56
|
createdAt: string;
|
|
52
57
|
updatedAt: string;
|
|
53
|
-
related:
|
|
54
|
-
entityId: string;
|
|
55
|
-
entityType: string;
|
|
56
|
-
}[];
|
|
58
|
+
related: SerializedRelatedEntity[];
|
|
57
59
|
adContent: string;
|
|
58
60
|
}
|
|
59
61
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaderboard.types.d.ts","sourceRoot":"","sources":["../../src/lib/providers/leaderboard.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD;;;;;;GAMG;AAEH,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,6BAA6B,CAAC;CAC1C;AAED,MAAM,WAAW,kBAAkB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,uBAAuB,EAAE,CAAC;IAClC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,yBAAyB,EAAE,OAAO,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE
|
|
1
|
+
{"version":3,"file":"leaderboard.types.d.ts","sourceRoot":"","sources":["../../src/lib/providers/leaderboard.types.ts"],"names":[],"mappings":"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"}
|