@edgebound/bigcommerce 0.3.0 → 0.3.2
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/dist/{chunk-PAXNZ36X.mjs → chunk-V2WZ3SDN.mjs} +10 -3
- package/dist/chunk-V2WZ3SDN.mjs.map +1 -0
- package/dist/companies.d.mts +115 -1
- package/dist/companies.d.ts +115 -1
- package/dist/companies.js +125 -13
- package/dist/companies.js.map +1 -1
- package/dist/companies.mjs +111 -12
- package/dist/companies.mjs.map +1 -1
- package/dist/customers.d.mts +79 -1
- package/dist/customers.d.ts +79 -1
- package/dist/customers.js +143 -45
- package/dist/customers.js.map +1 -1
- package/dist/customers.mjs +131 -44
- package/dist/customers.mjs.map +1 -1
- package/dist/index.js +9 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/orders.d.mts +7 -1254
- package/dist/orders.d.ts +7 -1254
- package/dist/orders.js +14 -9
- package/dist/orders.js.map +1 -1
- package/dist/orders.mjs +6 -8
- package/dist/orders.mjs.map +1 -1
- package/dist/payments.js +9 -2
- package/dist/payments.js.map +1 -1
- package/dist/payments.mjs +1 -1
- package/dist/priceLists.js +9 -2
- package/dist/priceLists.js.map +1 -1
- package/dist/priceLists.mjs +1 -1
- package/dist/products.js +9 -2
- package/dist/products.js.map +1 -1
- package/dist/products.mjs +1 -1
- package/dist/salesStaff.js +9 -2
- package/dist/salesStaff.js.map +1 -1
- package/dist/salesStaff.mjs +1 -1
- package/dist/webhooks.d.mts +6 -4
- package/dist/webhooks.d.ts +6 -4
- package/dist/webhooks.js +5 -3
- package/dist/webhooks.js.map +1 -1
- package/dist/webhooks.mjs +5 -3
- package/dist/webhooks.mjs.map +1 -1
- package/package.json +3 -3
- package/dist/chunk-PAXNZ36X.mjs.map +0 -1
package/dist/companies.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bigcommerce-entities/companies/index.ts","../src/bigcommerce-entities/companies/assign-sales-staff.ts","../src/constants.ts","../src/core/bigcommerce.error.ts","../src/core/bigcommerce.fetcher.ts","../src/core/bigcommerce.fetcher.live.ts","../src/core/config.ts","../src/validation/index.ts","../src/validation/validation.error.ts","../src/bigcommerce-entities/companies/schemas/company.schema.ts","../src/bigcommerce-entities/companies/schemas/credit.schemas.ts","../src/bigcommerce-entities/companies/schemas/extra-fields.schema.ts","../src/bigcommerce-entities/companies/schemas/payment-methods.schema.ts","../src/bigcommerce-entities/companies/schemas/roles.ts","../src/bigcommerce-entities/companies/schemas/sales-staff.schema.ts","../src/bigcommerce-entities/companies/schemas/user.schema.ts","../src/bigcommerce-entities/companies/create-company.ts","../src/bigcommerce-entities/companies/create-company-user.ts","../src/bigcommerce-entities/companies/credit.ts","../src/bigcommerce-entities/companies/get-company-fields.ts","../src/bigcommerce-entities/companies/get-company-roles.ts","../src/bigcommerce-entities/companies/set-payment-methods.ts"],"sourcesContent":["export * from './assign-sales-staff';\nexport * from './create-company';\nexport * from './create-company-user';\nexport * from './credit';\nexport * from './get-company-fields';\nexport * from './get-company-roles';\nexport * from './schemas';\nexport * from './set-payment-methods';\n","import { Chunk, Effect, Stream } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { AssignSalesStaffResponseSchema, AssignSalesStaffSchema } from './schemas';\nconst assignSalesStaffToCompanyBatch = (\n staffId: string,\n assignments: z.input<typeof AssignSalesStaffSchema>['assignments'],\n) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'PUT',\n path: `sales-staffs/${staffId}`,\n version: 'v3',\n body: assignments,\n resultSchema: AssignSalesStaffResponseSchema,\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const assignSalesStaffToCompany = (input: z.input<typeof AssignSalesStaffSchema>) =>\n Effect.gen(function* () {\n const validatedInput = yield* validateInput(AssignSalesStaffSchema, input);\n return yield* Stream.fromIterable(validatedInput.assignments).pipe(\n Stream.grouped(DEFAULTS.companies.salesStaffAssignments.assignBatchSize),\n Stream.mapEffect(\n (chunk) =>\n assignSalesStaffToCompanyBatch(validatedInput.salesStaffId, Chunk.toArray(chunk)),\n { concurrency: DEFAULTS.companies.salesStaffAssignments.concurrency },\n ),\n Stream.runCollect,\n Effect.map(Chunk.toArray),\n );\n });\n","import { Duration, Schedule } from 'effect';\n\nexport const DEFAULTS = {\n retry: {\n policy: Schedule.exponential(Duration.millis(200), 2).pipe(\n Schedule.intersect(Schedule.recurs(3)),\n ),\n },\n timeout: {\n ms: 30000,\n },\n bigcommerceUrls: {\n b2b: 'https://api-b2b.bigcommerce.com/api',\n regular: 'https://api.bigcommerce.com/stores',\n },\n customers: {\n getBatchSize: 250,\n },\n salesStaff: {\n getBatchSize: 250,\n },\n companies: {\n salesStaffAssignments: {\n assignBatchSize: 10,\n concurrency: 2,\n },\n extraFields: {\n getBatchSize: 250,\n },\n roles: {\n getBatchSize: 250,\n },\n },\n products: {\n updateBatchSize: 5,\n updateConcurrency: 2,\n inventory: {\n updateBatchSize: 2000,\n updateConcurrency: 2,\n },\n },\n orders: {\n getAllBatchSize: 250,\n shippingAddresses: {\n getAllBatchSize: 250,\n },\n products: {\n getAllBatchSize: 250,\n },\n },\n priceLists: {\n getAllBatchSize: 250,\n },\n} as const;\n","import { Data } from 'effect';\nimport * as z from 'zod';\nexport class BigCommerceUnprocessableEntityError extends Data.TaggedError(\n 'BigCommerceUnprocessableEntityError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceUnauthorizedError extends Data.TaggedError(\n 'BigCommerceUnauthorizedError',\n) {}\n\nexport class BigCommerceForbiddenError extends Data.TaggedError('BigCommerceForbiddenError') {}\n\nexport class BigCommerceNotFoundError extends Data.TaggedError('BigCommerceNotFoundError') {}\n\nexport class BigCommerceConflictError extends Data.TaggedError('BigCommerceConflictError')<{\n readonly details: unknown;\n}> {}\n\nexport class BigCommerceConnectionError extends Data.TaggedError('BigCommerceConnectionError')<{\n readonly message: string;\n readonly type: 'timeout' | 'internalError' | 'unknown';\n}> {}\n\nexport class BigCommerceUnknownError extends Data.TaggedError('BigCommerceUnknownError')<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidResponseError extends Data.TaggedError(\n 'BigCommerceInvalidResponseError',\n)<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidRequestError extends Data.TaggedError(\n 'BigCommerceInvalidRequestError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceParseResponseError extends Data.TaggedError(\n 'BigCommerceParseResponseError',\n)<{\n readonly error: z.ZodError;\n}> {}\n\nexport type SomeBigCommerceError =\n | BigCommerceUnprocessableEntityError\n | BigCommerceUnauthorizedError\n | BigCommerceForbiddenError\n | BigCommerceNotFoundError\n | BigCommerceConflictError\n | BigCommerceConnectionError\n | BigCommerceUnknownError\n | BigCommerceInvalidResponseError\n | BigCommerceInvalidRequestError\n | BigCommerceParseResponseError;\n","import { Context, Effect } from 'effect';\nimport * as z from 'zod';\nimport { type SomeBigCommerceError } from './bigcommerce.error';\nexport type BigCommerceFetchMethods = 'GET' | 'POST' | 'PUT' | 'DELETE';\nexport interface BigCommerceFetchParams<\n // Always send json for now, maybe later send a Blob\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n> {\n readonly body?: Body;\n readonly query?: Query;\n readonly method: BigCommerceFetchMethods;\n readonly path: string;\n readonly headers?: Record<string, string>;\n readonly isB2B: boolean;\n readonly version: 'v3' | 'v2';\n readonly resultSchema: Result;\n}\n\nexport class BigCommerceFetcher extends Context.Tag('BigCommerceFetcher')<\n BigCommerceFetcher,\n {\n readonly fetch: <\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n >(\n params: BigCommerceFetchParams<Body, Query, Result>,\n ) => Effect.Effect<z.output<Result>, SomeBigCommerceError>;\n }\n>() {}\n","import { Effect, Layer, Match } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../constants';\nimport {\n BigCommerceConflictError,\n BigCommerceConnectionError,\n BigCommerceForbiddenError,\n BigCommerceInvalidRequestError,\n BigCommerceInvalidResponseError,\n BigCommerceNotFoundError,\n BigCommerceParseResponseError,\n BigCommerceUnauthorizedError,\n BigCommerceUnknownError,\n BigCommerceUnprocessableEntityError,\n type SomeBigCommerceError,\n} from './bigcommerce.error';\nimport { BigCommerceFetcher } from './bigcommerce.fetcher';\nimport { BigCommerceConfig, type NoBigCommerceConfigError } from './config';\nconst BigCommerceStatusCodes = {\n UNAUTHORIZED: 401,\n CONFLICT: 409,\n FORBIDDEN: 403,\n NOT_FOUND: 404,\n UNPROCESSABLE_ENTITY: 422,\n INTERNAL_SERVER_ERROR: 500,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n INVALID_REQUEST: 400,\n} as const;\n\nexport const BigCommerceFetcherLive: Layer.Layer<\n BigCommerceFetcher,\n NoBigCommerceConfigError,\n BigCommerceConfig\n> = Layer.effect(\n BigCommerceFetcher,\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const storeHash = yield* config.getStoreHash;\n const accessToken = yield* config.getAccessToken;\n const timeout = yield* config.getTimeout;\n\n return {\n fetch: (params) => {\n const base = getBase(params);\n const headers: Record<string, string> = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n 'x-auth-token': accessToken,\n };\n\n if (params.isB2B) {\n headers['x-store-hash'] = storeHash;\n }\n const url = applyParams(base.replace('[storeHash]', storeHash), params.query);\n\n return Effect.tryPromise({\n try: () =>\n fetch(url, {\n headers,\n signal: AbortSignal.timeout(timeout),\n method: params.method,\n ...(params.body && { body: JSON.stringify(params.body) }),\n }),\n catch: (error) => {\n if (error instanceof Error && error.name === 'TimeoutError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n if (error instanceof Error && error.name === 'AbortError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n return new BigCommerceUnknownError({ cause: error });\n },\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Failed to fetch from BigCommerce API', error.cause),\n ),\n Effect.flatMap((response) => transformResponse(response, params.resultSchema)),\n );\n },\n };\n }),\n);\nconst applyParams = (url: string, params?: Record<string, string | number> | string): URL => {\n const base = new URL(url);\n if (!params) {\n return base;\n }\n if (typeof params === 'string') {\n base.search = params;\n } else {\n for (const [key, value] of Object.entries(params)) {\n base.searchParams.append(key, `${value}`);\n }\n }\n return base;\n};\n\nconst getBase = ({\n isB2B,\n path,\n version,\n}: {\n isB2B: boolean;\n path: string;\n version: 'v3' | 'v2';\n}): string => {\n if (isB2B) {\n return `${DEFAULTS.bigcommerceUrls.b2b}/${version}/io/${path}`;\n }\n return `${DEFAULTS.bigcommerceUrls.regular}/[storeHash]/${version}/${path}`;\n};\nfunction processSuccessResponse<Schema extends z.ZodTypeAny>(response: Response, schema: Schema) {\n return Effect.tryPromise({\n try: () => response.json(),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Error parsing response from BigCommerce API', error.cause),\n ),\n Effect.tryMap({\n try: (json) => schema.parse(json),\n catch: (error) => new BigCommerceParseResponseError({ error: error as z.ZodError }),\n }),\n );\n}\nconst processErrorResponse = (response: Response) => {\n const code = response.status;\n return Effect.tryPromise({\n try: () => response.json(),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) => Effect.logError('Error parsing error response', error.cause)),\n Effect.flatMap((errorDetails) =>\n Effect.fail(\n Match.value(code).pipe(\n Match.when(\n BigCommerceStatusCodes.INVALID_REQUEST,\n () => new BigCommerceInvalidRequestError({ errorDetails }),\n ),\n Match.when(BigCommerceStatusCodes.UNAUTHORIZED, () => new BigCommerceUnauthorizedError()),\n Match.when(BigCommerceStatusCodes.FORBIDDEN, () => new BigCommerceForbiddenError()),\n Match.when(BigCommerceStatusCodes.NOT_FOUND, () => new BigCommerceNotFoundError()),\n Match.when(\n BigCommerceStatusCodes.CONFLICT,\n () => new BigCommerceConflictError({ details: errorDetails }),\n ),\n Match.when(\n BigCommerceStatusCodes.UNPROCESSABLE_ENTITY,\n () => new BigCommerceUnprocessableEntityError({ errorDetails }),\n ),\n Match.when(\n (code) => code >= 500,\n () =>\n new BigCommerceConnectionError({\n message: `Server error: ${code}`,\n type:\n code === BigCommerceStatusCodes.INTERNAL_SERVER_ERROR\n ? 'internalError'\n : code === BigCommerceStatusCodes.BAD_GATEWAY ||\n code === BigCommerceStatusCodes.GATEWAY_TIMEOUT\n ? 'timeout'\n : 'internalError',\n }),\n ),\n Match.orElse(() => new BigCommerceUnknownError({ cause: errorDetails })),\n ),\n ),\n ),\n );\n};\n\nconst transformResponse = <Schema extends z.ZodType>(\n response: Response,\n schema: Schema,\n): Effect.Effect<z.output<Schema>, SomeBigCommerceError> => {\n if (response.ok) {\n return processSuccessResponse(response, schema);\n }\n return processErrorResponse(response);\n};\n\n// type PendingErrors = Exclude<\n// SomeBigCommerceError,\n// Effect.Effect.Error<ReturnType<typeof processErrorResponse>> | BigCommerceParseResponseError\n// >;\n","import { Config, Context, Data, Effect, Layer } from 'effect';\nimport { DEFAULTS } from '../constants';\n\n// Define a custom error type using Data.TaggedError\nexport class NoBigCommerceConfigError extends Data.TaggedError('NoBigCommerceConfigError')<{\n readonly key: string;\n}> {}\n\nexport class BigCommerceConfig extends Context.Tag('BigCommerceConfig')<\n BigCommerceConfig,\n {\n readonly getStoreHash: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientId: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientSecret: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getAccessToken: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getTimeout: Effect.Effect<number, NoBigCommerceConfigError>;\n }\n>() {}\n\nconst getBigCommerceConfig = (key: string) => {\n return Config.nested(Config.string(key), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key })),\n );\n};\n\nconst getBigCommerceTimeout = () => {\n return Config.nested(Config.number('TIMEOUT'), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key: 'TIMEOUT' })),\n // Default to 30 seconds if not configured\n Effect.orElse(() => Effect.succeed(DEFAULTS.timeout.ms)),\n );\n};\n\nexport const BigCommerceConfigLive = Layer.effect(\n BigCommerceConfig,\n Effect.gen(function* () {\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n getBigCommerceConfig('STORE_HASH'),\n getBigCommerceConfig('CLIENT_ID'),\n getBigCommerceConfig('CLIENT_SECRET'),\n getBigCommerceConfig('ACCESS_TOKEN'),\n getBigCommerceTimeout(),\n ]);\n\n return {\n getStoreHash: Effect.succeed(storeHash),\n getClientId: Effect.succeed(clientId),\n getClientSecret: Effect.succeed(clientSecret),\n getAccessToken: Effect.succeed(accessToken),\n getTimeout: Effect.succeed(timeout),\n };\n }),\n);\n\nexport const BigCommerceConfigTest = Layer.succeed(BigCommerceConfig, {\n getAccessToken: Effect.succeed('test'),\n getClientId: Effect.succeed('test'),\n getClientSecret: Effect.succeed('test'),\n getStoreHash: Effect.succeed('test'),\n getTimeout: Effect.succeed(DEFAULTS.timeout.ms),\n});\n\nexport const validateBigCommerceConfig = () =>\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n config.getStoreHash,\n config.getClientId,\n config.getClientSecret,\n config.getAccessToken,\n config.getTimeout,\n ]);\n\n return {\n storeHash,\n clientId,\n clientSecret,\n accessToken,\n timeout,\n };\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { InputValidationError } from './validation.error';\nexport const validateInput = <Schema extends z.ZodType>(schema: Schema, data: z.input<Schema>) => {\n return Effect.try({\n try: () => schema.parse(data),\n catch: (error) => new InputValidationError({ input: data, error: error as z.ZodError }),\n });\n};\n","import { Data } from 'effect';\nimport * as z from 'zod';\nexport class InputValidationError extends Data.TaggedError('InputValidationError')<{\n input: unknown;\n error: z.ZodError;\n}> {}\n","import * as z from 'zod';\nexport const CreateCompanySchema = z.object({\n companyName: z.string(),\n companyPhone: z.string(),\n companyEmail: z.string(),\n addressLine1: z.string(),\n addressLine2: z.string(),\n city: z.string(),\n state: z.string(),\n country: z.string(),\n zipCode: z.string(),\n adminFirstName: z.string(),\n adminLastName: z.string(),\n adminEmail: z.string(),\n adminPhoneNumber: z.string(),\n acceptCreationEmail: z.boolean(),\n uuid: z.string(),\n channelIds: z.array(z.int()),\n originChannelId: z.int(),\n customerGroupId: z.int(),\n extraFields: z.array(\n z.object({\n fieldName: z.string(),\n fieldValue: z.string(),\n }),\n ),\n});\n\nexport const CreateCompanyResponseSchema = z.object({\n data: z.object({\n companyId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import * as z from 'zod';\nexport const SetCompanyCreditSchema = z.object({\n data: z.object({\n creditEnabled: z.boolean(),\n creditCurrency: z.enum(['MXN']),\n availableCredit: z.number(),\n limitPurchases: z.boolean(),\n creditHold: z.boolean(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyCreditResponseSchema = z.object({});\n","import * as z from 'zod';\nimport { DEFAULTS } from '../../../constants';\nexport const GetCompanyExtraFieldsCriteriaSchema = z.object({\n limit: z.int().max(DEFAULTS.companies.extraFields.getBatchSize).optional(),\n offset: z.int().optional(),\n});\nexport const CompanyExtraFieldSchema = z.object({\n fieldName: z.string(),\n labelName: z.string(),\n listOfValue: z.string().array().optional(),\n maximumLength: z.coerce.number().optional(),\n});\nexport const GetCompanyExtraFieldsResponseSchema = z.object({\n data: CompanyExtraFieldSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n totalCount: z.number(),\n offset: z.number(),\n limit: z.number(),\n }),\n }),\n});\n","import * as z from 'zod';\nexport const SetCompanyPaymentMethodsSchema = z.object({\n data: z.object({\n payments: z\n .object({\n code: z.string(),\n isEnabled: z.boolean(),\n })\n .array(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyPaymentMethodsResponseSchema = z.object({});\n","import * as z from 'zod';\nexport const CompanyRoleSchema = z.object({\n id: z.int(),\n name: z.string(),\n roleLevel: z.number(),\n roleType: z.number(),\n});\nexport const GetCompanyRolesCriteriaSchema = z.object({\n limit: z.int().optional(),\n offset: z.int().optional(),\n});\nexport const GetCompanyRolesResponseSchema = z.object({\n data: CompanyRoleSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n limit: z.number(),\n offset: z.number(),\n totalCount: z.number(),\n }),\n }),\n});\nexport type GetCompanyRolesResponse = z.output<typeof GetCompanyRolesResponseSchema>;\n","import * as z from 'zod';\nexport const AssignSalesStaffSchema = z.object({\n assignments: z.array(\n z.object({\n assignStatus: z.boolean(),\n companyId: z.int(),\n }),\n ),\n salesStaffId: z.int().transform(String),\n});\n\nexport const AssignSalesStaffResponseSchema = z.object({\n code: z.int(),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import * as z from 'zod';\nexport const CreateCompanyUserSchema = z.object({\n acceptWelcomeEmail: z.boolean(),\n companyId: z.int(),\n companyRoleId: z.int(),\n email: z.email(),\n firstName: z.string(),\n lastName: z.string(),\n phoneNumber: z.string(),\n});\n\nexport const CreateCompanyUserResponseSchema = z.object({\n code: z.number(),\n data: z.object({\n bcId: z.number(),\n userId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyResponseSchema, CreateCompanySchema } from './schemas/company.schema';\nexport const createCompany = (data: z.input<typeof CreateCompanySchema>) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n const validatedData = yield* validateInput(CreateCompanySchema, data);\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'POST',\n path: 'companies',\n resultSchema: CreateCompanyResponseSchema,\n version: 'v3',\n body: validatedData,\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyUserResponseSchema, CreateCompanyUserSchema } from './schemas/user.schema';\nexport const createCompanyUser = (data: z.input<typeof CreateCompanyUserSchema>) =>\n Effect.gen(function* () {\n const validatedData = yield* validateInput(CreateCompanyUserSchema, data);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: validatedData,\n isB2B: true,\n method: 'POST',\n path: 'users',\n resultSchema: CreateCompanyUserResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { SetCompanyCreditResponseSchema, SetCompanyCreditSchema } from './schemas/credit.schemas';\nexport const setCompanyCredit = (input: z.infer<typeof SetCompanyCreditSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyCreditSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/credit`,\n resultSchema: SetCompanyCreditResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyExtraFieldsCriteriaSchema,\n GetCompanyExtraFieldsResponseSchema,\n} from './schemas/extra-fields.schema';\nexport const findCompanyExtraFields = (\n criteria: z.input<typeof GetCompanyExtraFieldsCriteriaSchema>,\n) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyExtraFieldsCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/extra-fields',\n resultSchema: GetCompanyExtraFieldsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyExtraFieldsBy = (\n criteria?: Omit<z.input<typeof GetCompanyExtraFieldsCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let offset = 0;\n const limit = DEFAULTS.companies.extraFields.getBatchSize;\n let hasMore = true;\n const data: z.infer<typeof GetCompanyExtraFieldsResponseSchema>['data'] = [];\n while (hasMore) {\n const response = yield* findCompanyExtraFields({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n\n return data;\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyRolesCriteriaSchema,\n GetCompanyRolesResponseSchema,\n type GetCompanyRolesResponse,\n} from './schemas/roles';\nexport const findCompanyRoles = (criteria: z.infer<typeof GetCompanyRolesCriteriaSchema>) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyRolesCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/roles',\n resultSchema: GetCompanyRolesResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyRolesBy = (\n criteria?: Omit<z.infer<typeof GetCompanyRolesCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let hasMore = true;\n const data: GetCompanyRolesResponse['data'] = [];\n let offset = 0;\n const limit = DEFAULTS.companies.roles.getBatchSize;\n while (hasMore) {\n const response = yield* findCompanyRoles({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n return data;\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n SetCompanyPaymentMethodsResponseSchema,\n SetCompanyPaymentMethodsSchema,\n} from './schemas/payment-methods.schema';\nexport const setCompanyPaymentMethods = (input: z.infer<typeof SetCompanyPaymentMethodsSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyPaymentMethodsSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/payments`,\n resultSchema: SetCompanyPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n"],"mappings":"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","names":["import_effect","import_effect","import_effect","import_effect","import_effect","code","import_effect","import_effect","z","z","z","z","z","z","import_effect","import_effect","import_effect","import_effect","import_effect","import_node_querystring","import_effect"]}
|
|
1
|
+
{"version":3,"sources":["../src/bigcommerce-entities/companies/index.ts","../src/bigcommerce-entities/companies/assign-sales-staff.ts","../src/constants.ts","../src/core/bigcommerce.error.ts","../src/core/bigcommerce.fetcher.ts","../src/core/bigcommerce.fetcher.live.ts","../src/core/config.ts","../src/validation/index.ts","../src/validation/validation.error.ts","../src/bigcommerce-entities/companies/schemas/company.schema.ts","../src/bigcommerce-entities/companies/schemas/credit.schemas.ts","../src/bigcommerce-entities/companies/schemas/extra-fields.schema.ts","../src/bigcommerce-entities/companies/schemas/payment-methods.schema.ts","../src/bigcommerce-entities/companies/schemas/roles.ts","../src/bigcommerce-entities/companies/schemas/sales-staff.schema.ts","../src/bigcommerce-entities/companies/schemas/user.schema.ts","../src/bigcommerce-entities/companies/create-company.ts","../src/bigcommerce-entities/companies/create-company-user.ts","../src/bigcommerce-entities/companies/credit.ts","../src/bigcommerce-entities/companies/get-company.ts","../src/bigcommerce-entities/companies/get-company-fields.ts","../src/bigcommerce-entities/companies/get-company-roles.ts","../src/bigcommerce-entities/companies/get-user-by-customer-id.ts","../src/bigcommerce-entities/companies/set-payment-methods.ts"],"sourcesContent":["export * from './assign-sales-staff';\nexport * from './create-company';\nexport * from './create-company-user';\nexport * from './credit';\nexport * from './get-company';\nexport * from './get-company-fields';\nexport * from './get-company-roles';\nexport * from './get-user-by-customer-id';\nexport * from './schemas';\nexport * from './set-payment-methods';\n","import { Chunk, Effect, Stream } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { AssignSalesStaffResponseSchema, AssignSalesStaffSchema } from './schemas';\nconst assignSalesStaffToCompanyBatch = (\n staffId: string,\n assignments: z.input<typeof AssignSalesStaffSchema>['assignments'],\n) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'PUT',\n path: `sales-staffs/${staffId}`,\n version: 'v3',\n body: assignments,\n resultSchema: AssignSalesStaffResponseSchema,\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const assignSalesStaffToCompany = (input: z.input<typeof AssignSalesStaffSchema>) =>\n Effect.gen(function* () {\n const validatedInput = yield* validateInput(AssignSalesStaffSchema, input);\n return yield* Stream.fromIterable(validatedInput.assignments).pipe(\n Stream.grouped(DEFAULTS.companies.salesStaffAssignments.assignBatchSize),\n Stream.mapEffect(\n (chunk) =>\n assignSalesStaffToCompanyBatch(validatedInput.salesStaffId, Chunk.toArray(chunk)),\n { concurrency: DEFAULTS.companies.salesStaffAssignments.concurrency },\n ),\n Stream.runCollect,\n Effect.map(Chunk.toArray),\n );\n });\n","import { Duration, Schedule } from 'effect';\n\nexport const DEFAULTS = {\n retry: {\n policy: Schedule.exponential(Duration.millis(200), 2).pipe(\n Schedule.intersect(Schedule.recurs(3)),\n ),\n },\n timeout: {\n ms: 30000,\n },\n bigcommerceUrls: {\n b2b: 'https://api-b2b.bigcommerce.com/api',\n regular: 'https://api.bigcommerce.com/stores',\n },\n customers: {\n getBatchSize: 250,\n },\n salesStaff: {\n getBatchSize: 250,\n },\n companies: {\n salesStaffAssignments: {\n assignBatchSize: 10,\n concurrency: 2,\n },\n extraFields: {\n getBatchSize: 250,\n },\n roles: {\n getBatchSize: 250,\n },\n },\n products: {\n updateBatchSize: 5,\n updateConcurrency: 2,\n inventory: {\n updateBatchSize: 2000,\n updateConcurrency: 2,\n },\n },\n orders: {\n getAllBatchSize: 250,\n shippingAddresses: {\n getAllBatchSize: 250,\n },\n products: {\n getAllBatchSize: 250,\n },\n },\n priceLists: {\n getAllBatchSize: 250,\n },\n} as const;\n","import { Data } from 'effect';\nimport * as z from 'zod';\nexport class BigCommerceUnprocessableEntityError extends Data.TaggedError(\n 'BigCommerceUnprocessableEntityError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceUnauthorizedError extends Data.TaggedError(\n 'BigCommerceUnauthorizedError',\n) {}\n\nexport class BigCommerceForbiddenError extends Data.TaggedError('BigCommerceForbiddenError') {}\n\nexport class BigCommerceNotFoundError extends Data.TaggedError('BigCommerceNotFoundError') {}\n\nexport class BigCommerceConflictError extends Data.TaggedError('BigCommerceConflictError')<{\n readonly details: unknown;\n}> {}\n\nexport class BigCommerceConnectionError extends Data.TaggedError('BigCommerceConnectionError')<{\n readonly message: string;\n readonly type: 'timeout' | 'internalError' | 'unknown';\n}> {}\n\nexport class BigCommerceUnknownError extends Data.TaggedError('BigCommerceUnknownError')<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidResponseError extends Data.TaggedError(\n 'BigCommerceInvalidResponseError',\n)<{\n cause: unknown;\n}> {}\n\nexport class BigCommerceInvalidRequestError extends Data.TaggedError(\n 'BigCommerceInvalidRequestError',\n)<{\n readonly errorDetails: unknown;\n}> {}\n\nexport class BigCommerceParseResponseError extends Data.TaggedError(\n 'BigCommerceParseResponseError',\n)<{\n readonly error: z.ZodError;\n}> {}\n\nexport type SomeBigCommerceError =\n | BigCommerceUnprocessableEntityError\n | BigCommerceUnauthorizedError\n | BigCommerceForbiddenError\n | BigCommerceNotFoundError\n | BigCommerceConflictError\n | BigCommerceConnectionError\n | BigCommerceUnknownError\n | BigCommerceInvalidResponseError\n | BigCommerceInvalidRequestError\n | BigCommerceParseResponseError;\n","import { Context, Effect } from 'effect';\nimport * as z from 'zod';\nimport { type SomeBigCommerceError } from './bigcommerce.error';\nexport type BigCommerceFetchMethods = 'GET' | 'POST' | 'PUT' | 'DELETE';\nexport interface BigCommerceFetchParams<\n // Always send json for now, maybe later send a Blob\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n> {\n readonly body?: Body;\n readonly query?: Query;\n readonly method: BigCommerceFetchMethods;\n readonly path: string;\n readonly headers?: Record<string, string>;\n readonly isB2B: boolean;\n readonly version: 'v3' | 'v2';\n readonly resultSchema: Result;\n}\n\nexport class BigCommerceFetcher extends Context.Tag('BigCommerceFetcher')<\n BigCommerceFetcher,\n {\n readonly fetch: <\n Body extends Record<string, unknown> | Array<Record<string, unknown>>,\n Query extends Record<string, string> | string,\n Result extends z.ZodType,\n >(\n params: BigCommerceFetchParams<Body, Query, Result>,\n ) => Effect.Effect<z.output<Result>, SomeBigCommerceError>;\n }\n>() {}\n","import { Effect, Layer, Match } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../constants';\nimport {\n BigCommerceConflictError,\n BigCommerceConnectionError,\n BigCommerceForbiddenError,\n BigCommerceInvalidRequestError,\n BigCommerceInvalidResponseError,\n BigCommerceNotFoundError,\n BigCommerceParseResponseError,\n BigCommerceUnauthorizedError,\n BigCommerceUnknownError,\n BigCommerceUnprocessableEntityError,\n type SomeBigCommerceError,\n} from './bigcommerce.error';\nimport { BigCommerceFetcher } from './bigcommerce.fetcher';\nimport { BigCommerceConfig, type NoBigCommerceConfigError } from './config';\nconst BigCommerceStatusCodes = {\n UNAUTHORIZED: 401,\n CONFLICT: 409,\n FORBIDDEN: 403,\n NOT_FOUND: 404,\n UNPROCESSABLE_ENTITY: 422,\n INTERNAL_SERVER_ERROR: 500,\n BAD_GATEWAY: 502,\n SERVICE_UNAVAILABLE: 503,\n GATEWAY_TIMEOUT: 504,\n INVALID_REQUEST: 400,\n} as const;\n\nexport const BigCommerceFetcherLive: Layer.Layer<\n BigCommerceFetcher,\n NoBigCommerceConfigError,\n BigCommerceConfig\n> = Layer.effect(\n BigCommerceFetcher,\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const storeHash = yield* config.getStoreHash;\n const accessToken = yield* config.getAccessToken;\n const timeout = yield* config.getTimeout;\n\n return {\n fetch: (params) => {\n const base = getBase(params);\n const headers: Record<string, string> = {\n Accept: 'application/json',\n 'Content-Type': 'application/json',\n 'x-auth-token': accessToken,\n };\n\n if (params.isB2B) {\n headers['x-store-hash'] = storeHash;\n }\n const url = applyParams(base.replace('[storeHash]', storeHash), params.query);\n\n return Effect.tryPromise({\n try: () =>\n fetch(url, {\n headers,\n signal: AbortSignal.timeout(timeout),\n method: params.method,\n ...(params.body && { body: JSON.stringify(params.body) }),\n }),\n catch: (error) => {\n if (error instanceof Error && error.name === 'TimeoutError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n if (error instanceof Error && error.name === 'AbortError') {\n return new BigCommerceConnectionError({\n message: `Request timeout after ${timeout}ms`,\n type: 'timeout',\n });\n }\n return new BigCommerceUnknownError({ cause: error });\n },\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Failed to fetch from BigCommerce API', error.cause),\n ),\n Effect.flatMap((response) => transformResponse(response, params.resultSchema)),\n );\n },\n };\n }),\n);\nconst applyParams = (url: string, params?: Record<string, string | number> | string): URL => {\n const base = new URL(url);\n if (!params) {\n return base;\n }\n if (typeof params === 'string') {\n base.search = params;\n } else {\n for (const [key, value] of Object.entries(params)) {\n base.searchParams.append(key, `${value}`);\n }\n }\n return base;\n};\n\nconst getBase = ({\n isB2B,\n path,\n version,\n}: {\n isB2B: boolean;\n path: string;\n version: 'v3' | 'v2';\n}): string => {\n if (isB2B) {\n return `${DEFAULTS.bigcommerceUrls.b2b}/${version}/io/${path}`;\n }\n return `${DEFAULTS.bigcommerceUrls.regular}/[storeHash]/${version}/${path}`;\n};\n\nasync function safeJson<T>(response: Response): Promise<T | null> {\n const text = await response.text();\n\n if (!text || text.trim() === '') {\n return null;\n }\n\n return JSON.parse(text) as T;\n}\n\nfunction processSuccessResponse<Schema extends z.ZodTypeAny>(response: Response, schema: Schema) {\n return Effect.tryPromise({\n try: () => safeJson(response),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) =>\n Effect.logError('Error parsing response from BigCommerce API', error.cause),\n ),\n Effect.tryMap({\n try: (json) => schema.parse(json),\n catch: (error) => new BigCommerceParseResponseError({ error: error as z.ZodError }),\n }),\n );\n}\nconst processErrorResponse = (response: Response) => {\n const code = response.status;\n return Effect.tryPromise({\n try: () => safeJson(response),\n catch: (error) => new BigCommerceInvalidResponseError({ cause: error }),\n }).pipe(\n Effect.tapError((error) => Effect.logError('Error parsing error response', error.cause)),\n Effect.flatMap((errorDetails) =>\n Effect.fail(\n Match.value(code).pipe(\n Match.when(\n BigCommerceStatusCodes.INVALID_REQUEST,\n () => new BigCommerceInvalidRequestError({ errorDetails }),\n ),\n Match.when(BigCommerceStatusCodes.UNAUTHORIZED, () => new BigCommerceUnauthorizedError()),\n Match.when(BigCommerceStatusCodes.FORBIDDEN, () => new BigCommerceForbiddenError()),\n Match.when(BigCommerceStatusCodes.NOT_FOUND, () => new BigCommerceNotFoundError()),\n Match.when(\n BigCommerceStatusCodes.CONFLICT,\n () => new BigCommerceConflictError({ details: errorDetails }),\n ),\n Match.when(\n BigCommerceStatusCodes.UNPROCESSABLE_ENTITY,\n () => new BigCommerceUnprocessableEntityError({ errorDetails }),\n ),\n Match.when(\n (code) => code >= 500,\n () =>\n new BigCommerceConnectionError({\n message: `Server error: ${code}`,\n type:\n code === BigCommerceStatusCodes.INTERNAL_SERVER_ERROR\n ? 'internalError'\n : code === BigCommerceStatusCodes.BAD_GATEWAY ||\n code === BigCommerceStatusCodes.GATEWAY_TIMEOUT\n ? 'timeout'\n : 'internalError',\n }),\n ),\n Match.orElse(() => new BigCommerceUnknownError({ cause: errorDetails })),\n ),\n ),\n ),\n );\n};\n\nconst transformResponse = <Schema extends z.ZodType>(\n response: Response,\n schema: Schema,\n): Effect.Effect<z.output<Schema>, SomeBigCommerceError> => {\n if (response.ok) {\n return processSuccessResponse(response, schema);\n }\n return processErrorResponse(response);\n};\n\n// type PendingErrors = Exclude<\n// SomeBigCommerceError,\n// Effect.Effect.Error<ReturnType<typeof processErrorResponse>> | BigCommerceParseResponseError\n// >;\n","import { Config, Context, Data, Effect, Layer } from 'effect';\nimport { DEFAULTS } from '../constants';\n\n// Define a custom error type using Data.TaggedError\nexport class NoBigCommerceConfigError extends Data.TaggedError('NoBigCommerceConfigError')<{\n readonly key: string;\n}> {}\n\nexport class BigCommerceConfig extends Context.Tag('BigCommerceConfig')<\n BigCommerceConfig,\n {\n readonly getStoreHash: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientId: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getClientSecret: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getAccessToken: Effect.Effect<string, NoBigCommerceConfigError>;\n readonly getTimeout: Effect.Effect<number, NoBigCommerceConfigError>;\n }\n>() {}\n\nconst getBigCommerceConfig = (key: string) => {\n return Config.nested(Config.string(key), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key })),\n );\n};\n\nconst getBigCommerceTimeout = () => {\n return Config.nested(Config.number('TIMEOUT'), 'BIGCOMMERCE').pipe(\n Effect.mapError(() => new NoBigCommerceConfigError({ key: 'TIMEOUT' })),\n // Default to 30 seconds if not configured\n Effect.orElse(() => Effect.succeed(DEFAULTS.timeout.ms)),\n );\n};\n\nexport const BigCommerceConfigLive = Layer.effect(\n BigCommerceConfig,\n Effect.gen(function* () {\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n getBigCommerceConfig('STORE_HASH'),\n getBigCommerceConfig('CLIENT_ID'),\n getBigCommerceConfig('CLIENT_SECRET'),\n getBigCommerceConfig('ACCESS_TOKEN'),\n getBigCommerceTimeout(),\n ]);\n\n return {\n getStoreHash: Effect.succeed(storeHash),\n getClientId: Effect.succeed(clientId),\n getClientSecret: Effect.succeed(clientSecret),\n getAccessToken: Effect.succeed(accessToken),\n getTimeout: Effect.succeed(timeout),\n };\n }),\n);\n\nexport const BigCommerceConfigTest = Layer.succeed(BigCommerceConfig, {\n getAccessToken: Effect.succeed('test'),\n getClientId: Effect.succeed('test'),\n getClientSecret: Effect.succeed('test'),\n getStoreHash: Effect.succeed('test'),\n getTimeout: Effect.succeed(DEFAULTS.timeout.ms),\n});\n\nexport const validateBigCommerceConfig = () =>\n Effect.gen(function* () {\n const config = yield* BigCommerceConfig;\n const [storeHash, clientId, clientSecret, accessToken, timeout] = yield* Effect.all([\n config.getStoreHash,\n config.getClientId,\n config.getClientSecret,\n config.getAccessToken,\n config.getTimeout,\n ]);\n\n return {\n storeHash,\n clientId,\n clientSecret,\n accessToken,\n timeout,\n };\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { InputValidationError } from './validation.error';\nexport const validateInput = <Schema extends z.ZodType>(schema: Schema, data: z.input<Schema>) => {\n return Effect.try({\n try: () => schema.parse(data),\n catch: (error) => new InputValidationError({ input: data, error: error as z.ZodError }),\n });\n};\n","import { Data } from 'effect';\nimport * as z from 'zod';\nexport class InputValidationError extends Data.TaggedError('InputValidationError')<{\n input: unknown;\n error: z.ZodError;\n}> {}\n","import * as z from 'zod';\nexport const CreateCompanySchema = z.object({\n companyName: z.string(),\n companyPhone: z.string(),\n companyEmail: z.string(),\n addressLine1: z.string(),\n addressLine2: z.string(),\n city: z.string(),\n state: z.string(),\n country: z.string(),\n zipCode: z.string(),\n adminFirstName: z.string(),\n adminLastName: z.string(),\n adminEmail: z.string(),\n adminPhoneNumber: z.string(),\n acceptCreationEmail: z.boolean(),\n uuid: z.string(),\n channelIds: z.array(z.int()),\n originChannelId: z.int(),\n customerGroupId: z.int(),\n extraFields: z.array(\n z.object({\n fieldName: z.string(),\n fieldValue: z.string(),\n }),\n ),\n});\n\nexport const CreateCompanyResponseSchema = z.object({\n data: z.object({\n companyId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n\nexport const GetCompanyResponseSchema = z.object({\n data: z.object({\n companyId: z.number(),\n companyName: z.string(),\n bcGroupName: z.string(),\n companyStatus: z.number(),\n catalogId: z.number(),\n catalogName: z.string(),\n companyEmail: z.string(),\n companyPhone: z.string(),\n addressLine1: z.string(),\n addressLine2: z.string(),\n city: z.string(),\n state: z.string(),\n country: z.string(),\n zipCode: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n uuid: z.string(),\n bcGroupId: z.number().nullable().optional(),\n extraFields: z\n .object({\n fieldName: z.string(),\n fieldValue: z.string(),\n })\n .array(),\n }),\n});\nexport const GetCompanyInputSchema = z.object({\n companyId: z.number(),\n});\n","import * as z from 'zod';\nexport const SetCompanyCreditSchema = z.object({\n data: z.object({\n creditEnabled: z.boolean(),\n creditCurrency: z.enum(['MXN']),\n availableCredit: z.number(),\n limitPurchases: z.boolean(),\n creditHold: z.boolean(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyCreditResponseSchema = z.object({});\n","import * as z from 'zod';\nimport { DEFAULTS } from '../../../constants';\nexport const GetCompanyExtraFieldsCriteriaSchema = z.object({\n limit: z.int().max(DEFAULTS.companies.extraFields.getBatchSize).optional(),\n offset: z.int().optional(),\n});\nexport const CompanyExtraFieldSchema = z.object({\n fieldName: z.string(),\n labelName: z.string(),\n listOfValue: z.string().array().optional(),\n maximumLength: z.coerce.number().optional(),\n});\nexport const GetCompanyExtraFieldsResponseSchema = z.object({\n data: CompanyExtraFieldSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n totalCount: z.number(),\n offset: z.number(),\n limit: z.number(),\n }),\n }),\n});\n","import * as z from 'zod';\nexport const SetCompanyPaymentMethodsSchema = z.object({\n data: z.object({\n payments: z\n .object({\n code: z.string(),\n isEnabled: z.boolean(),\n })\n .array(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyPaymentMethodsResponseSchema = z.object({});\n","import * as z from 'zod';\nexport const CompanyRoleSchema = z.object({\n id: z.int(),\n name: z.string(),\n roleLevel: z.number(),\n roleType: z.number(),\n});\nexport const GetCompanyRolesCriteriaSchema = z.object({\n limit: z.int().optional(),\n offset: z.int().optional(),\n});\nexport const GetCompanyRolesResponseSchema = z.object({\n data: CompanyRoleSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n limit: z.number(),\n offset: z.number(),\n totalCount: z.number(),\n }),\n }),\n});\nexport type GetCompanyRolesResponse = z.output<typeof GetCompanyRolesResponseSchema>;\n","import * as z from 'zod';\nexport const AssignSalesStaffSchema = z.object({\n assignments: z.array(\n z.object({\n assignStatus: z.boolean(),\n companyId: z.int(),\n }),\n ),\n salesStaffId: z.int().transform(String),\n});\n\nexport const AssignSalesStaffResponseSchema = z.object({\n code: z.int(),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import * as z from 'zod';\nexport const CreateCompanyUserSchema = z.object({\n acceptWelcomeEmail: z.boolean(),\n companyId: z.int(),\n companyRoleId: z.int(),\n email: z.email(),\n firstName: z.string(),\n lastName: z.string(),\n phoneNumber: z.string(),\n});\n\nexport const CreateCompanyUserResponseSchema = z.object({\n code: z.number(),\n data: z.object({\n bcId: z.number(),\n userId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n\nexport const GetUserDetailsByCustomerIdResponseSchema = z.object({\n code: z.int(),\n data: z.object({\n firstName: z.string(),\n lastName: z.string(),\n email: z.email(),\n phoneNumber: z.string(),\n role: z.int(),\n companyRoleId: z.int(),\n uuid: z.string().optional().nullable(),\n extraFields: z\n .object({\n fieldName: z.string(),\n fieldValue: z.string(),\n })\n .array(),\n companyId: z.int(),\n customerId: z.int(),\n companyRoleName: z.string(),\n channelList: z\n .object({\n channelId: z.int(),\n channelName: z.string(),\n iconUrl: z.string(),\n })\n .array(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n\nexport const GetUserDetailsByCustomerIdInputSchema = z.object({\n customerId: z.int(),\n});\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyResponseSchema, CreateCompanySchema } from './schemas/company.schema';\nexport const createCompany = (data: z.input<typeof CreateCompanySchema>) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n const validatedData = yield* validateInput(CreateCompanySchema, data);\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'POST',\n path: 'companies',\n resultSchema: CreateCompanyResponseSchema,\n version: 'v3',\n body: validatedData,\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyUserResponseSchema, CreateCompanyUserSchema } from './schemas/user.schema';\nexport const createCompanyUser = (data: z.input<typeof CreateCompanyUserSchema>) =>\n Effect.gen(function* () {\n const validatedData = yield* validateInput(CreateCompanyUserSchema, data);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: validatedData,\n isB2B: true,\n method: 'POST',\n path: 'users',\n resultSchema: CreateCompanyUserResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { SetCompanyCreditResponseSchema, SetCompanyCreditSchema } from './schemas/credit.schemas';\nexport const setCompanyCredit = (input: z.infer<typeof SetCompanyCreditSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyCreditSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/credit`,\n resultSchema: SetCompanyCreditResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { GetCompanyInputSchema, GetCompanyResponseSchema } from './schemas';\nexport const getCompanyDetails = (input: z.input<typeof GetCompanyInputSchema>) =>\n Effect.gen(function* () {\n const { companyId } = yield* validateInput(GetCompanyInputSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n path: `companies/${companyId}`,\n resultSchema: GetCompanyResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyExtraFieldsCriteriaSchema,\n GetCompanyExtraFieldsResponseSchema,\n} from './schemas/extra-fields.schema';\nexport const findCompanyExtraFields = (\n criteria: z.input<typeof GetCompanyExtraFieldsCriteriaSchema>,\n) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyExtraFieldsCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/extra-fields',\n resultSchema: GetCompanyExtraFieldsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyExtraFieldsBy = (\n criteria?: Omit<z.input<typeof GetCompanyExtraFieldsCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let offset = 0;\n const limit = DEFAULTS.companies.extraFields.getBatchSize;\n let hasMore = true;\n const data: z.infer<typeof GetCompanyExtraFieldsResponseSchema>['data'] = [];\n while (hasMore) {\n const response = yield* findCompanyExtraFields({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n\n return data;\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyRolesCriteriaSchema,\n GetCompanyRolesResponseSchema,\n type GetCompanyRolesResponse,\n} from './schemas/roles';\nexport const findCompanyRoles = (criteria: z.infer<typeof GetCompanyRolesCriteriaSchema>) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyRolesCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/roles',\n resultSchema: GetCompanyRolesResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyRolesBy = (\n criteria?: Omit<z.infer<typeof GetCompanyRolesCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let hasMore = true;\n const data: GetCompanyRolesResponse['data'] = [];\n let offset = 0;\n const limit = DEFAULTS.companies.roles.getBatchSize;\n while (hasMore) {\n const response = yield* findCompanyRoles({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n return data;\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetUserDetailsByCustomerIdInputSchema,\n GetUserDetailsByCustomerIdResponseSchema,\n} from './schemas';\nexport const getUserByCustomerId = (input: z.input<typeof GetUserDetailsByCustomerIdInputSchema>) =>\n Effect.gen(function* () {\n const { customerId } = yield* validateInput(GetUserDetailsByCustomerIdInputSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n path: `users/customer/${customerId}`,\n resultSchema: GetUserDetailsByCustomerIdResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n SetCompanyPaymentMethodsResponseSchema,\n SetCompanyPaymentMethodsSchema,\n} from './schemas/payment-methods.schema';\nexport const setCompanyPaymentMethods = (input: z.infer<typeof SetCompanyPaymentMethodsSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyPaymentMethodsSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/payments`,\n resultSchema: SetCompanyPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n"],"mappings":"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","names":["import_effect","import_effect","import_effect","import_effect","import_effect","code","import_effect","import_effect","z","z","z","z","z","z","import_effect","import_effect","import_effect","import_effect","import_effect","import_effect","import_node_querystring","import_effect","import_effect"]}
|
package/dist/companies.mjs
CHANGED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
import {
|
|
5
5
|
BigCommerceFetcher,
|
|
6
6
|
DEFAULTS
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-V2WZ3SDN.mjs";
|
|
8
8
|
|
|
9
9
|
// src/bigcommerce-entities/companies/assign-sales-staff.ts
|
|
10
10
|
import { Chunk, Effect, Stream } from "effect";
|
|
@@ -45,6 +45,35 @@ var CreateCompanyResponseSchema = z.object({
|
|
|
45
45
|
message: z.string()
|
|
46
46
|
})
|
|
47
47
|
});
|
|
48
|
+
var GetCompanyResponseSchema = z.object({
|
|
49
|
+
data: z.object({
|
|
50
|
+
companyId: z.number(),
|
|
51
|
+
companyName: z.string(),
|
|
52
|
+
bcGroupName: z.string(),
|
|
53
|
+
companyStatus: z.number(),
|
|
54
|
+
catalogId: z.number(),
|
|
55
|
+
catalogName: z.string(),
|
|
56
|
+
companyEmail: z.string(),
|
|
57
|
+
companyPhone: z.string(),
|
|
58
|
+
addressLine1: z.string(),
|
|
59
|
+
addressLine2: z.string(),
|
|
60
|
+
city: z.string(),
|
|
61
|
+
state: z.string(),
|
|
62
|
+
country: z.string(),
|
|
63
|
+
zipCode: z.string(),
|
|
64
|
+
createdAt: z.number(),
|
|
65
|
+
updatedAt: z.number(),
|
|
66
|
+
uuid: z.string(),
|
|
67
|
+
bcGroupId: z.number().nullable().optional(),
|
|
68
|
+
extraFields: z.object({
|
|
69
|
+
fieldName: z.string(),
|
|
70
|
+
fieldValue: z.string()
|
|
71
|
+
}).array()
|
|
72
|
+
})
|
|
73
|
+
});
|
|
74
|
+
var GetCompanyInputSchema = z.object({
|
|
75
|
+
companyId: z.number()
|
|
76
|
+
});
|
|
48
77
|
|
|
49
78
|
// src/bigcommerce-entities/companies/schemas/credit.schemas.ts
|
|
50
79
|
import * as z2 from "zod";
|
|
@@ -160,6 +189,36 @@ var CreateCompanyUserResponseSchema = z7.object({
|
|
|
160
189
|
message: z7.string()
|
|
161
190
|
})
|
|
162
191
|
});
|
|
192
|
+
var GetUserDetailsByCustomerIdResponseSchema = z7.object({
|
|
193
|
+
code: z7.int(),
|
|
194
|
+
data: z7.object({
|
|
195
|
+
firstName: z7.string(),
|
|
196
|
+
lastName: z7.string(),
|
|
197
|
+
email: z7.email(),
|
|
198
|
+
phoneNumber: z7.string(),
|
|
199
|
+
role: z7.int(),
|
|
200
|
+
companyRoleId: z7.int(),
|
|
201
|
+
uuid: z7.string().optional().nullable(),
|
|
202
|
+
extraFields: z7.object({
|
|
203
|
+
fieldName: z7.string(),
|
|
204
|
+
fieldValue: z7.string()
|
|
205
|
+
}).array(),
|
|
206
|
+
companyId: z7.int(),
|
|
207
|
+
customerId: z7.int(),
|
|
208
|
+
companyRoleName: z7.string(),
|
|
209
|
+
channelList: z7.object({
|
|
210
|
+
channelId: z7.int(),
|
|
211
|
+
channelName: z7.string(),
|
|
212
|
+
iconUrl: z7.string()
|
|
213
|
+
}).array()
|
|
214
|
+
}),
|
|
215
|
+
meta: z7.object({
|
|
216
|
+
message: z7.string()
|
|
217
|
+
})
|
|
218
|
+
});
|
|
219
|
+
var GetUserDetailsByCustomerIdInputSchema = z7.object({
|
|
220
|
+
customerId: z7.int()
|
|
221
|
+
});
|
|
163
222
|
|
|
164
223
|
// src/bigcommerce-entities/companies/assign-sales-staff.ts
|
|
165
224
|
var assignSalesStaffToCompanyBatch = (staffId, assignments) => Effect.gen(function* () {
|
|
@@ -243,13 +302,30 @@ var setCompanyCredit = (input) => Effect4.gen(function* () {
|
|
|
243
302
|
);
|
|
244
303
|
});
|
|
245
304
|
|
|
246
|
-
// src/bigcommerce-entities/companies/get-company
|
|
305
|
+
// src/bigcommerce-entities/companies/get-company.ts
|
|
247
306
|
import { Effect as Effect5 } from "effect";
|
|
307
|
+
var getCompanyDetails = (input) => Effect5.gen(function* () {
|
|
308
|
+
const { companyId } = yield* validateInput(GetCompanyInputSchema, input);
|
|
309
|
+
const fetcher = yield* BigCommerceFetcher;
|
|
310
|
+
return yield* Effect5.retry(
|
|
311
|
+
fetcher.fetch({
|
|
312
|
+
isB2B: true,
|
|
313
|
+
method: "GET",
|
|
314
|
+
path: `companies/${companyId}`,
|
|
315
|
+
resultSchema: GetCompanyResponseSchema,
|
|
316
|
+
version: "v3"
|
|
317
|
+
}),
|
|
318
|
+
DEFAULTS.retry.policy
|
|
319
|
+
);
|
|
320
|
+
});
|
|
321
|
+
|
|
322
|
+
// src/bigcommerce-entities/companies/get-company-fields.ts
|
|
323
|
+
import { Effect as Effect6 } from "effect";
|
|
248
324
|
import { stringify } from "querystring";
|
|
249
|
-
var findCompanyExtraFields = (criteria) =>
|
|
325
|
+
var findCompanyExtraFields = (criteria) => Effect6.gen(function* () {
|
|
250
326
|
const validatedCriteria = yield* validateInput(GetCompanyExtraFieldsCriteriaSchema, criteria);
|
|
251
327
|
const fetcher = yield* BigCommerceFetcher;
|
|
252
|
-
return yield*
|
|
328
|
+
return yield* Effect6.retry(
|
|
253
329
|
fetcher.fetch({
|
|
254
330
|
isB2B: true,
|
|
255
331
|
method: "GET",
|
|
@@ -261,7 +337,7 @@ var findCompanyExtraFields = (criteria) => Effect5.gen(function* () {
|
|
|
261
337
|
DEFAULTS.retry.policy
|
|
262
338
|
);
|
|
263
339
|
});
|
|
264
|
-
var getAllCompanyExtraFieldsBy = (criteria) =>
|
|
340
|
+
var getAllCompanyExtraFieldsBy = (criteria) => Effect6.gen(function* () {
|
|
265
341
|
let offset = 0;
|
|
266
342
|
const limit = DEFAULTS.companies.extraFields.getBatchSize;
|
|
267
343
|
let hasMore = true;
|
|
@@ -283,12 +359,12 @@ var getAllCompanyExtraFieldsBy = (criteria) => Effect5.gen(function* () {
|
|
|
283
359
|
});
|
|
284
360
|
|
|
285
361
|
// src/bigcommerce-entities/companies/get-company-roles.ts
|
|
286
|
-
import { Effect as
|
|
362
|
+
import { Effect as Effect7 } from "effect";
|
|
287
363
|
import { stringify as stringify2 } from "querystring";
|
|
288
|
-
var findCompanyRoles = (criteria) =>
|
|
364
|
+
var findCompanyRoles = (criteria) => Effect7.gen(function* () {
|
|
289
365
|
const validatedCriteria = yield* validateInput(GetCompanyRolesCriteriaSchema, criteria);
|
|
290
366
|
const fetcher = yield* BigCommerceFetcher;
|
|
291
|
-
return yield*
|
|
367
|
+
return yield* Effect7.retry(
|
|
292
368
|
fetcher.fetch({
|
|
293
369
|
isB2B: true,
|
|
294
370
|
method: "GET",
|
|
@@ -300,7 +376,7 @@ var findCompanyRoles = (criteria) => Effect6.gen(function* () {
|
|
|
300
376
|
DEFAULTS.retry.policy
|
|
301
377
|
);
|
|
302
378
|
});
|
|
303
|
-
var getAllCompanyRolesBy = (criteria) =>
|
|
379
|
+
var getAllCompanyRolesBy = (criteria) => Effect7.gen(function* () {
|
|
304
380
|
let hasMore = true;
|
|
305
381
|
const data = [];
|
|
306
382
|
let offset = 0;
|
|
@@ -321,12 +397,29 @@ var getAllCompanyRolesBy = (criteria) => Effect6.gen(function* () {
|
|
|
321
397
|
return data;
|
|
322
398
|
});
|
|
323
399
|
|
|
400
|
+
// src/bigcommerce-entities/companies/get-user-by-customer-id.ts
|
|
401
|
+
import { Effect as Effect8 } from "effect";
|
|
402
|
+
var getUserByCustomerId = (input) => Effect8.gen(function* () {
|
|
403
|
+
const { customerId } = yield* validateInput(GetUserDetailsByCustomerIdInputSchema, input);
|
|
404
|
+
const fetcher = yield* BigCommerceFetcher;
|
|
405
|
+
return yield* Effect8.retry(
|
|
406
|
+
fetcher.fetch({
|
|
407
|
+
isB2B: true,
|
|
408
|
+
method: "GET",
|
|
409
|
+
path: `users/customer/${customerId}`,
|
|
410
|
+
resultSchema: GetUserDetailsByCustomerIdResponseSchema,
|
|
411
|
+
version: "v3"
|
|
412
|
+
}),
|
|
413
|
+
DEFAULTS.retry.policy
|
|
414
|
+
);
|
|
415
|
+
});
|
|
416
|
+
|
|
324
417
|
// src/bigcommerce-entities/companies/set-payment-methods.ts
|
|
325
|
-
import { Effect as
|
|
326
|
-
var setCompanyPaymentMethods = (input) =>
|
|
418
|
+
import { Effect as Effect9 } from "effect";
|
|
419
|
+
var setCompanyPaymentMethods = (input) => Effect9.gen(function* () {
|
|
327
420
|
const { companyId, data } = yield* validateInput(SetCompanyPaymentMethodsSchema, input);
|
|
328
421
|
const fetcher = yield* BigCommerceFetcher;
|
|
329
|
-
return yield*
|
|
422
|
+
return yield* Effect9.retry(
|
|
330
423
|
fetcher.fetch({
|
|
331
424
|
body: data,
|
|
332
425
|
isB2B: true,
|
|
@@ -349,8 +442,12 @@ export {
|
|
|
349
442
|
CreateCompanyUserSchema,
|
|
350
443
|
GetCompanyExtraFieldsCriteriaSchema,
|
|
351
444
|
GetCompanyExtraFieldsResponseSchema,
|
|
445
|
+
GetCompanyInputSchema,
|
|
446
|
+
GetCompanyResponseSchema,
|
|
352
447
|
GetCompanyRolesCriteriaSchema,
|
|
353
448
|
GetCompanyRolesResponseSchema,
|
|
449
|
+
GetUserDetailsByCustomerIdInputSchema,
|
|
450
|
+
GetUserDetailsByCustomerIdResponseSchema,
|
|
354
451
|
SetCompanyCreditResponseSchema,
|
|
355
452
|
SetCompanyCreditSchema,
|
|
356
453
|
SetCompanyPaymentMethodsResponseSchema,
|
|
@@ -362,6 +459,8 @@ export {
|
|
|
362
459
|
findCompanyRoles,
|
|
363
460
|
getAllCompanyExtraFieldsBy,
|
|
364
461
|
getAllCompanyRolesBy,
|
|
462
|
+
getCompanyDetails,
|
|
463
|
+
getUserByCustomerId,
|
|
365
464
|
setCompanyCredit,
|
|
366
465
|
setCompanyPaymentMethods
|
|
367
466
|
};
|
package/dist/companies.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/bigcommerce-entities/companies/assign-sales-staff.ts","../src/bigcommerce-entities/companies/schemas/company.schema.ts","../src/bigcommerce-entities/companies/schemas/credit.schemas.ts","../src/bigcommerce-entities/companies/schemas/extra-fields.schema.ts","../src/bigcommerce-entities/companies/schemas/payment-methods.schema.ts","../src/bigcommerce-entities/companies/schemas/roles.ts","../src/bigcommerce-entities/companies/schemas/sales-staff.schema.ts","../src/bigcommerce-entities/companies/schemas/user.schema.ts","../src/bigcommerce-entities/companies/create-company.ts","../src/bigcommerce-entities/companies/create-company-user.ts","../src/bigcommerce-entities/companies/credit.ts","../src/bigcommerce-entities/companies/get-company-fields.ts","../src/bigcommerce-entities/companies/get-company-roles.ts","../src/bigcommerce-entities/companies/set-payment-methods.ts"],"sourcesContent":["import { Chunk, Effect, Stream } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { AssignSalesStaffResponseSchema, AssignSalesStaffSchema } from './schemas';\nconst assignSalesStaffToCompanyBatch = (\n staffId: string,\n assignments: z.input<typeof AssignSalesStaffSchema>['assignments'],\n) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'PUT',\n path: `sales-staffs/${staffId}`,\n version: 'v3',\n body: assignments,\n resultSchema: AssignSalesStaffResponseSchema,\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const assignSalesStaffToCompany = (input: z.input<typeof AssignSalesStaffSchema>) =>\n Effect.gen(function* () {\n const validatedInput = yield* validateInput(AssignSalesStaffSchema, input);\n return yield* Stream.fromIterable(validatedInput.assignments).pipe(\n Stream.grouped(DEFAULTS.companies.salesStaffAssignments.assignBatchSize),\n Stream.mapEffect(\n (chunk) =>\n assignSalesStaffToCompanyBatch(validatedInput.salesStaffId, Chunk.toArray(chunk)),\n { concurrency: DEFAULTS.companies.salesStaffAssignments.concurrency },\n ),\n Stream.runCollect,\n Effect.map(Chunk.toArray),\n );\n });\n","import * as z from 'zod';\nexport const CreateCompanySchema = z.object({\n companyName: z.string(),\n companyPhone: z.string(),\n companyEmail: z.string(),\n addressLine1: z.string(),\n addressLine2: z.string(),\n city: z.string(),\n state: z.string(),\n country: z.string(),\n zipCode: z.string(),\n adminFirstName: z.string(),\n adminLastName: z.string(),\n adminEmail: z.string(),\n adminPhoneNumber: z.string(),\n acceptCreationEmail: z.boolean(),\n uuid: z.string(),\n channelIds: z.array(z.int()),\n originChannelId: z.int(),\n customerGroupId: z.int(),\n extraFields: z.array(\n z.object({\n fieldName: z.string(),\n fieldValue: z.string(),\n }),\n ),\n});\n\nexport const CreateCompanyResponseSchema = z.object({\n data: z.object({\n companyId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import * as z from 'zod';\nexport const SetCompanyCreditSchema = z.object({\n data: z.object({\n creditEnabled: z.boolean(),\n creditCurrency: z.enum(['MXN']),\n availableCredit: z.number(),\n limitPurchases: z.boolean(),\n creditHold: z.boolean(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyCreditResponseSchema = z.object({});\n","import * as z from 'zod';\nimport { DEFAULTS } from '../../../constants';\nexport const GetCompanyExtraFieldsCriteriaSchema = z.object({\n limit: z.int().max(DEFAULTS.companies.extraFields.getBatchSize).optional(),\n offset: z.int().optional(),\n});\nexport const CompanyExtraFieldSchema = z.object({\n fieldName: z.string(),\n labelName: z.string(),\n listOfValue: z.string().array().optional(),\n maximumLength: z.coerce.number().optional(),\n});\nexport const GetCompanyExtraFieldsResponseSchema = z.object({\n data: CompanyExtraFieldSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n totalCount: z.number(),\n offset: z.number(),\n limit: z.number(),\n }),\n }),\n});\n","import * as z from 'zod';\nexport const SetCompanyPaymentMethodsSchema = z.object({\n data: z.object({\n payments: z\n .object({\n code: z.string(),\n isEnabled: z.boolean(),\n })\n .array(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyPaymentMethodsResponseSchema = z.object({});\n","import * as z from 'zod';\nexport const CompanyRoleSchema = z.object({\n id: z.int(),\n name: z.string(),\n roleLevel: z.number(),\n roleType: z.number(),\n});\nexport const GetCompanyRolesCriteriaSchema = z.object({\n limit: z.int().optional(),\n offset: z.int().optional(),\n});\nexport const GetCompanyRolesResponseSchema = z.object({\n data: CompanyRoleSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n limit: z.number(),\n offset: z.number(),\n totalCount: z.number(),\n }),\n }),\n});\nexport type GetCompanyRolesResponse = z.output<typeof GetCompanyRolesResponseSchema>;\n","import * as z from 'zod';\nexport const AssignSalesStaffSchema = z.object({\n assignments: z.array(\n z.object({\n assignStatus: z.boolean(),\n companyId: z.int(),\n }),\n ),\n salesStaffId: z.int().transform(String),\n});\n\nexport const AssignSalesStaffResponseSchema = z.object({\n code: z.int(),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import * as z from 'zod';\nexport const CreateCompanyUserSchema = z.object({\n acceptWelcomeEmail: z.boolean(),\n companyId: z.int(),\n companyRoleId: z.int(),\n email: z.email(),\n firstName: z.string(),\n lastName: z.string(),\n phoneNumber: z.string(),\n});\n\nexport const CreateCompanyUserResponseSchema = z.object({\n code: z.number(),\n data: z.object({\n bcId: z.number(),\n userId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyResponseSchema, CreateCompanySchema } from './schemas/company.schema';\nexport const createCompany = (data: z.input<typeof CreateCompanySchema>) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n const validatedData = yield* validateInput(CreateCompanySchema, data);\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'POST',\n path: 'companies',\n resultSchema: CreateCompanyResponseSchema,\n version: 'v3',\n body: validatedData,\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyUserResponseSchema, CreateCompanyUserSchema } from './schemas/user.schema';\nexport const createCompanyUser = (data: z.input<typeof CreateCompanyUserSchema>) =>\n Effect.gen(function* () {\n const validatedData = yield* validateInput(CreateCompanyUserSchema, data);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: validatedData,\n isB2B: true,\n method: 'POST',\n path: 'users',\n resultSchema: CreateCompanyUserResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { SetCompanyCreditResponseSchema, SetCompanyCreditSchema } from './schemas/credit.schemas';\nexport const setCompanyCredit = (input: z.infer<typeof SetCompanyCreditSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyCreditSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/credit`,\n resultSchema: SetCompanyCreditResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyExtraFieldsCriteriaSchema,\n GetCompanyExtraFieldsResponseSchema,\n} from './schemas/extra-fields.schema';\nexport const findCompanyExtraFields = (\n criteria: z.input<typeof GetCompanyExtraFieldsCriteriaSchema>,\n) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyExtraFieldsCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/extra-fields',\n resultSchema: GetCompanyExtraFieldsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyExtraFieldsBy = (\n criteria?: Omit<z.input<typeof GetCompanyExtraFieldsCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let offset = 0;\n const limit = DEFAULTS.companies.extraFields.getBatchSize;\n let hasMore = true;\n const data: z.infer<typeof GetCompanyExtraFieldsResponseSchema>['data'] = [];\n while (hasMore) {\n const response = yield* findCompanyExtraFields({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n\n return data;\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyRolesCriteriaSchema,\n GetCompanyRolesResponseSchema,\n type GetCompanyRolesResponse,\n} from './schemas/roles';\nexport const findCompanyRoles = (criteria: z.infer<typeof GetCompanyRolesCriteriaSchema>) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyRolesCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/roles',\n resultSchema: GetCompanyRolesResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyRolesBy = (\n criteria?: Omit<z.infer<typeof GetCompanyRolesCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let hasMore = true;\n const data: GetCompanyRolesResponse['data'] = [];\n let offset = 0;\n const limit = DEFAULTS.companies.roles.getBatchSize;\n while (hasMore) {\n const response = yield* findCompanyRoles({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n return data;\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n SetCompanyPaymentMethodsResponseSchema,\n SetCompanyPaymentMethodsSchema,\n} from './schemas/payment-methods.schema';\nexport const setCompanyPaymentMethods = (input: z.infer<typeof SetCompanyPaymentMethodsSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyPaymentMethodsSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/payments`,\n resultSchema: SetCompanyPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n"],"mappings":"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","names":["z","z","z","z","z","z","Effect","Effect","Effect","Effect","Effect","Effect","Effect","Effect","Effect","stringify","Effect","stringify","Effect","Effect"]}
|
|
1
|
+
{"version":3,"sources":["../src/bigcommerce-entities/companies/assign-sales-staff.ts","../src/bigcommerce-entities/companies/schemas/company.schema.ts","../src/bigcommerce-entities/companies/schemas/credit.schemas.ts","../src/bigcommerce-entities/companies/schemas/extra-fields.schema.ts","../src/bigcommerce-entities/companies/schemas/payment-methods.schema.ts","../src/bigcommerce-entities/companies/schemas/roles.ts","../src/bigcommerce-entities/companies/schemas/sales-staff.schema.ts","../src/bigcommerce-entities/companies/schemas/user.schema.ts","../src/bigcommerce-entities/companies/create-company.ts","../src/bigcommerce-entities/companies/create-company-user.ts","../src/bigcommerce-entities/companies/credit.ts","../src/bigcommerce-entities/companies/get-company.ts","../src/bigcommerce-entities/companies/get-company-fields.ts","../src/bigcommerce-entities/companies/get-company-roles.ts","../src/bigcommerce-entities/companies/get-user-by-customer-id.ts","../src/bigcommerce-entities/companies/set-payment-methods.ts"],"sourcesContent":["import { Chunk, Effect, Stream } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { AssignSalesStaffResponseSchema, AssignSalesStaffSchema } from './schemas';\nconst assignSalesStaffToCompanyBatch = (\n staffId: string,\n assignments: z.input<typeof AssignSalesStaffSchema>['assignments'],\n) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'PUT',\n path: `sales-staffs/${staffId}`,\n version: 'v3',\n body: assignments,\n resultSchema: AssignSalesStaffResponseSchema,\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const assignSalesStaffToCompany = (input: z.input<typeof AssignSalesStaffSchema>) =>\n Effect.gen(function* () {\n const validatedInput = yield* validateInput(AssignSalesStaffSchema, input);\n return yield* Stream.fromIterable(validatedInput.assignments).pipe(\n Stream.grouped(DEFAULTS.companies.salesStaffAssignments.assignBatchSize),\n Stream.mapEffect(\n (chunk) =>\n assignSalesStaffToCompanyBatch(validatedInput.salesStaffId, Chunk.toArray(chunk)),\n { concurrency: DEFAULTS.companies.salesStaffAssignments.concurrency },\n ),\n Stream.runCollect,\n Effect.map(Chunk.toArray),\n );\n });\n","import * as z from 'zod';\nexport const CreateCompanySchema = z.object({\n companyName: z.string(),\n companyPhone: z.string(),\n companyEmail: z.string(),\n addressLine1: z.string(),\n addressLine2: z.string(),\n city: z.string(),\n state: z.string(),\n country: z.string(),\n zipCode: z.string(),\n adminFirstName: z.string(),\n adminLastName: z.string(),\n adminEmail: z.string(),\n adminPhoneNumber: z.string(),\n acceptCreationEmail: z.boolean(),\n uuid: z.string(),\n channelIds: z.array(z.int()),\n originChannelId: z.int(),\n customerGroupId: z.int(),\n extraFields: z.array(\n z.object({\n fieldName: z.string(),\n fieldValue: z.string(),\n }),\n ),\n});\n\nexport const CreateCompanyResponseSchema = z.object({\n data: z.object({\n companyId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n\nexport const GetCompanyResponseSchema = z.object({\n data: z.object({\n companyId: z.number(),\n companyName: z.string(),\n bcGroupName: z.string(),\n companyStatus: z.number(),\n catalogId: z.number(),\n catalogName: z.string(),\n companyEmail: z.string(),\n companyPhone: z.string(),\n addressLine1: z.string(),\n addressLine2: z.string(),\n city: z.string(),\n state: z.string(),\n country: z.string(),\n zipCode: z.string(),\n createdAt: z.number(),\n updatedAt: z.number(),\n uuid: z.string(),\n bcGroupId: z.number().nullable().optional(),\n extraFields: z\n .object({\n fieldName: z.string(),\n fieldValue: z.string(),\n })\n .array(),\n }),\n});\nexport const GetCompanyInputSchema = z.object({\n companyId: z.number(),\n});\n","import * as z from 'zod';\nexport const SetCompanyCreditSchema = z.object({\n data: z.object({\n creditEnabled: z.boolean(),\n creditCurrency: z.enum(['MXN']),\n availableCredit: z.number(),\n limitPurchases: z.boolean(),\n creditHold: z.boolean(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyCreditResponseSchema = z.object({});\n","import * as z from 'zod';\nimport { DEFAULTS } from '../../../constants';\nexport const GetCompanyExtraFieldsCriteriaSchema = z.object({\n limit: z.int().max(DEFAULTS.companies.extraFields.getBatchSize).optional(),\n offset: z.int().optional(),\n});\nexport const CompanyExtraFieldSchema = z.object({\n fieldName: z.string(),\n labelName: z.string(),\n listOfValue: z.string().array().optional(),\n maximumLength: z.coerce.number().optional(),\n});\nexport const GetCompanyExtraFieldsResponseSchema = z.object({\n data: CompanyExtraFieldSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n totalCount: z.number(),\n offset: z.number(),\n limit: z.number(),\n }),\n }),\n});\n","import * as z from 'zod';\nexport const SetCompanyPaymentMethodsSchema = z.object({\n data: z.object({\n payments: z\n .object({\n code: z.string(),\n isEnabled: z.boolean(),\n })\n .array(),\n }),\n companyId: z.int(),\n});\n\nexport const SetCompanyPaymentMethodsResponseSchema = z.object({});\n","import * as z from 'zod';\nexport const CompanyRoleSchema = z.object({\n id: z.int(),\n name: z.string(),\n roleLevel: z.number(),\n roleType: z.number(),\n});\nexport const GetCompanyRolesCriteriaSchema = z.object({\n limit: z.int().optional(),\n offset: z.int().optional(),\n});\nexport const GetCompanyRolesResponseSchema = z.object({\n data: CompanyRoleSchema.array(),\n meta: z.object({\n message: z.string(),\n pagination: z.object({\n limit: z.number(),\n offset: z.number(),\n totalCount: z.number(),\n }),\n }),\n});\nexport type GetCompanyRolesResponse = z.output<typeof GetCompanyRolesResponseSchema>;\n","import * as z from 'zod';\nexport const AssignSalesStaffSchema = z.object({\n assignments: z.array(\n z.object({\n assignStatus: z.boolean(),\n companyId: z.int(),\n }),\n ),\n salesStaffId: z.int().transform(String),\n});\n\nexport const AssignSalesStaffResponseSchema = z.object({\n code: z.int(),\n meta: z.object({\n message: z.string(),\n }),\n});\n","import * as z from 'zod';\nexport const CreateCompanyUserSchema = z.object({\n acceptWelcomeEmail: z.boolean(),\n companyId: z.int(),\n companyRoleId: z.int(),\n email: z.email(),\n firstName: z.string(),\n lastName: z.string(),\n phoneNumber: z.string(),\n});\n\nexport const CreateCompanyUserResponseSchema = z.object({\n code: z.number(),\n data: z.object({\n bcId: z.number(),\n userId: z.int(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n\nexport const GetUserDetailsByCustomerIdResponseSchema = z.object({\n code: z.int(),\n data: z.object({\n firstName: z.string(),\n lastName: z.string(),\n email: z.email(),\n phoneNumber: z.string(),\n role: z.int(),\n companyRoleId: z.int(),\n uuid: z.string().optional().nullable(),\n extraFields: z\n .object({\n fieldName: z.string(),\n fieldValue: z.string(),\n })\n .array(),\n companyId: z.int(),\n customerId: z.int(),\n companyRoleName: z.string(),\n channelList: z\n .object({\n channelId: z.int(),\n channelName: z.string(),\n iconUrl: z.string(),\n })\n .array(),\n }),\n meta: z.object({\n message: z.string(),\n }),\n});\n\nexport const GetUserDetailsByCustomerIdInputSchema = z.object({\n customerId: z.int(),\n});\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyResponseSchema, CreateCompanySchema } from './schemas/company.schema';\nexport const createCompany = (data: z.input<typeof CreateCompanySchema>) =>\n Effect.gen(function* () {\n const fetcher = yield* BigCommerceFetcher;\n const validatedData = yield* validateInput(CreateCompanySchema, data);\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'POST',\n path: 'companies',\n resultSchema: CreateCompanyResponseSchema,\n version: 'v3',\n body: validatedData,\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { CreateCompanyUserResponseSchema, CreateCompanyUserSchema } from './schemas/user.schema';\nexport const createCompanyUser = (data: z.input<typeof CreateCompanyUserSchema>) =>\n Effect.gen(function* () {\n const validatedData = yield* validateInput(CreateCompanyUserSchema, data);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: validatedData,\n isB2B: true,\n method: 'POST',\n path: 'users',\n resultSchema: CreateCompanyUserResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { SetCompanyCreditResponseSchema, SetCompanyCreditSchema } from './schemas/credit.schemas';\nexport const setCompanyCredit = (input: z.infer<typeof SetCompanyCreditSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyCreditSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/credit`,\n resultSchema: SetCompanyCreditResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport { GetCompanyInputSchema, GetCompanyResponseSchema } from './schemas';\nexport const getCompanyDetails = (input: z.input<typeof GetCompanyInputSchema>) =>\n Effect.gen(function* () {\n const { companyId } = yield* validateInput(GetCompanyInputSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n path: `companies/${companyId}`,\n resultSchema: GetCompanyResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyExtraFieldsCriteriaSchema,\n GetCompanyExtraFieldsResponseSchema,\n} from './schemas/extra-fields.schema';\nexport const findCompanyExtraFields = (\n criteria: z.input<typeof GetCompanyExtraFieldsCriteriaSchema>,\n) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyExtraFieldsCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/extra-fields',\n resultSchema: GetCompanyExtraFieldsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyExtraFieldsBy = (\n criteria?: Omit<z.input<typeof GetCompanyExtraFieldsCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let offset = 0;\n const limit = DEFAULTS.companies.extraFields.getBatchSize;\n let hasMore = true;\n const data: z.infer<typeof GetCompanyExtraFieldsResponseSchema>['data'] = [];\n while (hasMore) {\n const response = yield* findCompanyExtraFields({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n\n return data;\n });\n","import { Effect } from 'effect';\nimport { stringify } from 'node:querystring';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetCompanyRolesCriteriaSchema,\n GetCompanyRolesResponseSchema,\n type GetCompanyRolesResponse,\n} from './schemas/roles';\nexport const findCompanyRoles = (criteria: z.infer<typeof GetCompanyRolesCriteriaSchema>) =>\n Effect.gen(function* () {\n const validatedCriteria = yield* validateInput(GetCompanyRolesCriteriaSchema, criteria);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n query: stringify(validatedCriteria),\n path: 'companies/roles',\n resultSchema: GetCompanyRolesResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n\nexport const getAllCompanyRolesBy = (\n criteria?: Omit<z.infer<typeof GetCompanyRolesCriteriaSchema>, 'limit' | 'offset'>,\n) =>\n Effect.gen(function* () {\n let hasMore = true;\n const data: GetCompanyRolesResponse['data'] = [];\n let offset = 0;\n const limit = DEFAULTS.companies.roles.getBatchSize;\n while (hasMore) {\n const response = yield* findCompanyRoles({\n ...criteria,\n limit,\n offset,\n });\n if (response.data.length) {\n offset += limit;\n data.push(...response.data);\n } else {\n hasMore = false;\n }\n }\n return data;\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n GetUserDetailsByCustomerIdInputSchema,\n GetUserDetailsByCustomerIdResponseSchema,\n} from './schemas';\nexport const getUserByCustomerId = (input: z.input<typeof GetUserDetailsByCustomerIdInputSchema>) =>\n Effect.gen(function* () {\n const { customerId } = yield* validateInput(GetUserDetailsByCustomerIdInputSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n isB2B: true,\n method: 'GET',\n path: `users/customer/${customerId}`,\n resultSchema: GetUserDetailsByCustomerIdResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n","import { Effect } from 'effect';\nimport * as z from 'zod';\nimport { DEFAULTS } from '../../constants';\nimport { BigCommerceFetcher } from '../../core';\nimport { validateInput } from '../../validation';\nimport {\n SetCompanyPaymentMethodsResponseSchema,\n SetCompanyPaymentMethodsSchema,\n} from './schemas/payment-methods.schema';\nexport const setCompanyPaymentMethods = (input: z.infer<typeof SetCompanyPaymentMethodsSchema>) =>\n Effect.gen(function* () {\n const { companyId, data } = yield* validateInput(SetCompanyPaymentMethodsSchema, input);\n const fetcher = yield* BigCommerceFetcher;\n\n return yield* Effect.retry(\n fetcher.fetch({\n body: data,\n isB2B: true,\n method: 'PUT',\n path: `companies/${companyId}/payments`,\n resultSchema: SetCompanyPaymentMethodsResponseSchema,\n version: 'v3',\n }),\n DEFAULTS.retry.policy,\n );\n });\n"],"mappings":"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","names":["z","z","z","z","z","z","Effect","Effect","Effect","Effect","Effect","Effect","Effect","Effect","Effect","Effect","Effect","stringify","Effect","stringify","Effect","Effect","Effect","Effect"]}
|
package/dist/customers.d.mts
CHANGED
|
@@ -43,6 +43,84 @@ declare const createCustomerGroup: (data: z.input<typeof CreateCustomerGroupSche
|
|
|
43
43
|
id: number;
|
|
44
44
|
}, SomeBigCommerceError | InputValidationError, BigCommerceFetcher>;
|
|
45
45
|
|
|
46
|
+
declare const FindCustomerAddressesCriteriaSchema: z.ZodObject<{
|
|
47
|
+
'id:in': z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodInt>, z.ZodTransform<string, number[]>>>;
|
|
48
|
+
page: z.ZodOptional<z.ZodInt>;
|
|
49
|
+
limit: z.ZodOptional<z.ZodInt>;
|
|
50
|
+
'customer_id:in': z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodInt>, z.ZodTransform<string, number[]>>>;
|
|
51
|
+
}, z.core.$strip>;
|
|
52
|
+
declare const FindCustomerAddressesResponseSchema: z.ZodObject<{
|
|
53
|
+
data: z.ZodArray<z.ZodObject<{
|
|
54
|
+
address1: z.ZodString;
|
|
55
|
+
address2: z.ZodString;
|
|
56
|
+
address_type: z.ZodString;
|
|
57
|
+
city: z.ZodString;
|
|
58
|
+
company: z.ZodString;
|
|
59
|
+
country: z.ZodString;
|
|
60
|
+
country_code: z.ZodString;
|
|
61
|
+
customer_id: z.ZodNumber;
|
|
62
|
+
first_name: z.ZodString;
|
|
63
|
+
id: z.ZodInt;
|
|
64
|
+
last_name: z.ZodString;
|
|
65
|
+
phone: z.ZodString;
|
|
66
|
+
postal_code: z.ZodString;
|
|
67
|
+
state_or_province: z.ZodString;
|
|
68
|
+
}, z.core.$strip>>;
|
|
69
|
+
meta: z.ZodObject<{
|
|
70
|
+
pagination: z.ZodObject<{
|
|
71
|
+
total: z.ZodInt;
|
|
72
|
+
count: z.ZodInt;
|
|
73
|
+
per_page: z.ZodInt;
|
|
74
|
+
current_page: z.ZodInt;
|
|
75
|
+
total_pages: z.ZodInt;
|
|
76
|
+
}, z.core.$strip>;
|
|
77
|
+
}, z.core.$strip>;
|
|
78
|
+
}, z.core.$strip>;
|
|
79
|
+
|
|
80
|
+
declare const findCustomerAddresses: (criteria?: z.input<typeof FindCustomerAddressesCriteriaSchema>) => Effect.Effect<{
|
|
81
|
+
data: {
|
|
82
|
+
address1: string;
|
|
83
|
+
address2: string;
|
|
84
|
+
address_type: string;
|
|
85
|
+
city: string;
|
|
86
|
+
company: string;
|
|
87
|
+
country: string;
|
|
88
|
+
country_code: string;
|
|
89
|
+
customer_id: number;
|
|
90
|
+
first_name: string;
|
|
91
|
+
id: number;
|
|
92
|
+
last_name: string;
|
|
93
|
+
phone: string;
|
|
94
|
+
postal_code: string;
|
|
95
|
+
state_or_province: string;
|
|
96
|
+
}[];
|
|
97
|
+
meta: {
|
|
98
|
+
pagination: {
|
|
99
|
+
total: number;
|
|
100
|
+
count: number;
|
|
101
|
+
per_page: number;
|
|
102
|
+
current_page: number;
|
|
103
|
+
total_pages: number;
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
}, SomeBigCommerceError | InputValidationError, BigCommerceFetcher>;
|
|
107
|
+
declare const getAllCustomerAddressesBy: (criteria: Omit<z.input<typeof FindCustomerAddressesCriteriaSchema>, "page" | "limit">) => Effect.Effect<{
|
|
108
|
+
address1: string;
|
|
109
|
+
address2: string;
|
|
110
|
+
address_type: string;
|
|
111
|
+
city: string;
|
|
112
|
+
company: string;
|
|
113
|
+
country: string;
|
|
114
|
+
country_code: string;
|
|
115
|
+
customer_id: number;
|
|
116
|
+
first_name: string;
|
|
117
|
+
id: number;
|
|
118
|
+
last_name: string;
|
|
119
|
+
phone: string;
|
|
120
|
+
postal_code: string;
|
|
121
|
+
state_or_province: string;
|
|
122
|
+
}[], SomeBigCommerceError | InputValidationError, BigCommerceFetcher>;
|
|
123
|
+
|
|
46
124
|
declare const FindCustomersCriteriaSchema: z.ZodObject<{
|
|
47
125
|
'id:in': z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodInt>, z.ZodTransform<string, number[]>>>;
|
|
48
126
|
page: z.ZodOptional<z.ZodInt>;
|
|
@@ -154,4 +232,4 @@ declare const setCustomerGroupPriceList: (input: z.input<typeof SetCustomerGroup
|
|
|
154
232
|
name: string;
|
|
155
233
|
}, SomeBigCommerceError | InputValidationError, BigCommerceFetcher>;
|
|
156
234
|
|
|
157
|
-
export { CreateCustomerGroupResponseSchema, CreateCustomerGroupSchema, CustomerGroupSchema, CustomerSchema, FindCustomerGroupsCriteriaSchema, FindCustomerResponse, FindCustomersCriteriaSchema, SetCustomerGroupPriceListResponseSchema, SetCustomerGroupPriceListSchema, createCustomerGroup, findCustomers, findCustomersGroups, getAllCustomerGroupsBy, getAllCustomersBy, getCustomer, setCustomerGroupPriceList };
|
|
235
|
+
export { CreateCustomerGroupResponseSchema, CreateCustomerGroupSchema, CustomerGroupSchema, CustomerSchema, FindCustomerAddressesCriteriaSchema, FindCustomerAddressesResponseSchema, FindCustomerGroupsCriteriaSchema, FindCustomerResponse, FindCustomersCriteriaSchema, SetCustomerGroupPriceListResponseSchema, SetCustomerGroupPriceListSchema, createCustomerGroup, findCustomerAddresses, findCustomers, findCustomersGroups, getAllCustomerAddressesBy, getAllCustomerGroupsBy, getAllCustomersBy, getCustomer, setCustomerGroupPriceList };
|