@commercelayer/sdk-utils
Version:
Commerce Layer Javascript SDK Utils library
1 lines • 4.96 kB
Source Map (JSON)
{"version":3,"sources":["../src/init.ts"],"names":["CommerceLayerStatic"],"mappings":"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","file":"chunk-MLE76YHX.cjs","sourcesContent":["import { CommerceLayerStatic, type ApiResource, type CommerceLayerClient, type Resource, type ResourceTypeLock } from \"@commercelayer/sdk\"\n\n\nclass CommerceLayerUtilsConfig {\n\n\treadonly #sdk?: CommerceLayerClient\n\t#api: Partial<Record<ResourceTypeLock, ApiResource<Resource>>> = {}\n\n\n\n\tconstructor(cl: CommerceLayerClient, resources?: Array<ApiResource<Resource>>) {\n\t\t\n\t\tif ((cl === undefined) || (cl === null)) throw Error('Invalid Commerce Layer client provided')\n\t\tthis.#sdk = cl\n\n\t\tif (resources && (resources.length > 0)) this.addApiResources(...resources)\n\n\t}\n\n\n\tget sdk(): CommerceLayerClient {\n\t\tif (!this.#sdk) throw Error('CommerceLayer Utils not initialized')\n\t\treturn this.#sdk\n\t}\n\n\taddApiResources(...resources: Array<ApiResource<Resource>>): this {\n\t\tif (!resources || (resources.length === 0)) throw Error('Invalid resources array provided')\n\t\tresources.forEach(r => {\n\t\t\tthis.addApiResource(r)\n\t\t})\n\t\treturn this\n\t}\n\n\taddApiResource(resource: ApiResource<Resource>): this {\n\t\tconst type = resource.type()\n\t\tif (CommerceLayerStatic.resources().includes(type)) this.#api[type] = resource\n\t\telse throw Error(`Invalid resource: [${type}]`)\n\t\treturn this\n\t}\n\n\tapi<A extends ApiResource<Resource>>(resourceType: ResourceTypeLock): A {\n\t\tif (!this.#api) throw Error('CommerceLayer Utils API resources not initialized')\n\t\tconst res = this.#api[resourceType]\n\t\tif (!res) throw Error(`Resource [${resourceType}] not available`)\n\t\treturn res as A\n\t}\n\n}\n\n\nlet clUtilsConfig: CommerceLayerUtilsConfig\n\n\nfunction CommerceLayerUtils(cl?: CommerceLayerClient, resources?: Array<ApiResource<Resource>>): CommerceLayerUtilsConfig {\n\n\tif (cl) {\n\n\t\tconst resList: Array<ApiResource<Resource>> = resources || []\n\t\tif (resList.length === 0) {\n\t\t\tfor (const res of cl.resources()) {\n\t\t\t\tconst resField = CommerceLayerStatic.isSingleton(res as ResourceTypeLock)? res.slice(0, -1) : res\n\t\t\t\tconst resApi = (cl as any)[resField] as ApiResource<Resource>\n\t\t\t\tif (resApi?.type && CommerceLayerStatic.resources().includes(resApi.type())) resList.push(resApi)\n\t\t\t}\n\t\t}\n\t\t\n\t\tclUtilsConfig = new CommerceLayerUtilsConfig(cl, resList)\n\t\t\n\t} else if (resources) throw new Error('CommerceLayer SDK is required to initialize resources')\n\t\n\treturn clUtilsConfig\n\n}\n\n\nfunction ApiResourceClient<A extends ApiResource<Resource>>(resourceType: ResourceTypeLock): A {\n\treturn CommerceLayerUtils().api<A>(resourceType)\n}\n\nfunction ApiSdkUtils(): CommerceLayerClient {\n\treturn CommerceLayerUtils().sdk\n}\n\n\n\nexport default CommerceLayerUtils\n\nexport { CommerceLayerUtils, ApiResourceClient, ApiSdkUtils, type CommerceLayerUtilsConfig }\n"]}