@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.
Files changed (43) hide show
  1. package/dist/{chunk-PAXNZ36X.mjs → chunk-V2WZ3SDN.mjs} +10 -3
  2. package/dist/chunk-V2WZ3SDN.mjs.map +1 -0
  3. package/dist/companies.d.mts +115 -1
  4. package/dist/companies.d.ts +115 -1
  5. package/dist/companies.js +125 -13
  6. package/dist/companies.js.map +1 -1
  7. package/dist/companies.mjs +111 -12
  8. package/dist/companies.mjs.map +1 -1
  9. package/dist/customers.d.mts +79 -1
  10. package/dist/customers.d.ts +79 -1
  11. package/dist/customers.js +143 -45
  12. package/dist/customers.js.map +1 -1
  13. package/dist/customers.mjs +131 -44
  14. package/dist/customers.mjs.map +1 -1
  15. package/dist/index.js +9 -2
  16. package/dist/index.js.map +1 -1
  17. package/dist/index.mjs +1 -1
  18. package/dist/orders.d.mts +7 -1254
  19. package/dist/orders.d.ts +7 -1254
  20. package/dist/orders.js +14 -9
  21. package/dist/orders.js.map +1 -1
  22. package/dist/orders.mjs +6 -8
  23. package/dist/orders.mjs.map +1 -1
  24. package/dist/payments.js +9 -2
  25. package/dist/payments.js.map +1 -1
  26. package/dist/payments.mjs +1 -1
  27. package/dist/priceLists.js +9 -2
  28. package/dist/priceLists.js.map +1 -1
  29. package/dist/priceLists.mjs +1 -1
  30. package/dist/products.js +9 -2
  31. package/dist/products.js.map +1 -1
  32. package/dist/products.mjs +1 -1
  33. package/dist/salesStaff.js +9 -2
  34. package/dist/salesStaff.js.map +1 -1
  35. package/dist/salesStaff.mjs +1 -1
  36. package/dist/webhooks.d.mts +6 -4
  37. package/dist/webhooks.d.ts +6 -4
  38. package/dist/webhooks.js +5 -3
  39. package/dist/webhooks.js.map +1 -1
  40. package/dist/webhooks.mjs +5 -3
  41. package/dist/webhooks.mjs.map +1 -1
  42. package/package.json +3 -3
  43. package/dist/chunk-PAXNZ36X.mjs.map +0 -1
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,IAAAA,iBAAsC;;;ACAtC,oBAAmC;AAE5B,IAAM,WAAW;AAAA,EACtB,OAAO;AAAA,IACL,QAAQ,uBAAS,YAAY,uBAAS,OAAO,GAAG,GAAG,CAAC,EAAE;AAAA,MACpD,uBAAS,UAAU,uBAAS,OAAO,CAAC,CAAC;AAAA,IACvC;AAAA,EACF;AAAA,EACA,SAAS;AAAA,IACP,IAAI;AAAA,EACN;AAAA,EACA,iBAAiB;AAAA,IACf,KAAK;AAAA,IACL,SAAS;AAAA,EACX;AAAA,EACA,WAAW;AAAA,IACT,cAAc;AAAA,EAChB;AAAA,EACA,YAAY;AAAA,IACV,cAAc;AAAA,EAChB;AAAA,EACA,WAAW;AAAA,IACT,uBAAuB;AAAA,MACrB,iBAAiB;AAAA,MACjB,aAAa;AAAA,IACf;AAAA,IACA,aAAa;AAAA,MACX,cAAc;AAAA,IAChB;AAAA,IACA,OAAO;AAAA,MACL,cAAc;AAAA,IAChB;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,IACnB,WAAW;AAAA,MACT,iBAAiB;AAAA,MACjB,mBAAmB;AAAA,IACrB;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,MACjB,iBAAiB;AAAA,IACnB;AAAA,IACA,UAAU;AAAA,MACR,iBAAiB;AAAA,IACnB;AAAA,EACF;AAAA,EACA,YAAY;AAAA,IACV,iBAAiB;AAAA,EACnB;AACF;;;ACrDA,IAAAC,iBAAqB;AAEd,IAAM,sCAAN,cAAkD,oBAAK;AAAA,EAC5D;AACF,EAEG;AAAC;AAEG,IAAM,+BAAN,cAA2C,oBAAK;AAAA,EACrD;AACF,EAAE;AAAC;AAEI,IAAM,4BAAN,cAAwC,oBAAK,YAAY,2BAA2B,EAAE;AAAC;AAEvF,IAAM,2BAAN,cAAuC,oBAAK,YAAY,0BAA0B,EAAE;AAAC;AAErF,IAAM,2BAAN,cAAuC,oBAAK,YAAY,0BAA0B,EAEtF;AAAC;AAEG,IAAM,6BAAN,cAAyC,oBAAK,YAAY,4BAA4B,EAG1F;AAAC;AAEG,IAAM,0BAAN,cAAsC,oBAAK,YAAY,yBAAyB,EAEpF;AAAC;AAEG,IAAM,kCAAN,cAA8C,oBAAK;AAAA,EACxD;AACF,EAEG;AAAC;AAEG,IAAM,iCAAN,cAA6C,oBAAK;AAAA,EACvD;AACF,EAEG;AAAC;AAEG,IAAM,gCAAN,cAA4C,oBAAK;AAAA,EACtD;AACF,EAEG;AAAC;;;AC7CJ,IAAAC,iBAAgC;AAoBzB,IAAM,qBAAN,cAAiC,uBAAQ,IAAI,oBAAoB,EAWtE,EAAE;AAAC;;;AC/BL,IAAAC,iBAAqC;;;ACArC,IAAAC,iBAAqD;AAI9C,IAAM,2BAAN,cAAuC,oBAAK,YAAY,0BAA0B,EAEtF;AAAC;AAEG,IAAM,oBAAN,cAAgC,uBAAQ,IAAI,mBAAmB,EASpE,EAAE;AAAC;AAEL,IAAM,uBAAuB,CAAC,QAAgB;AAC5C,SAAO,sBAAO,OAAO,sBAAO,OAAO,GAAG,GAAG,aAAa,EAAE;AAAA,IACtD,sBAAO,SAAS,MAAM,IAAI,yBAAyB,EAAE,IAAI,CAAC,CAAC;AAAA,EAC7D;AACF;AAEA,IAAM,wBAAwB,MAAM;AAClC,SAAO,sBAAO,OAAO,sBAAO,OAAO,SAAS,GAAG,aAAa,EAAE;AAAA,IAC5D,sBAAO,SAAS,MAAM,IAAI,yBAAyB,EAAE,KAAK,UAAU,CAAC,CAAC;AAAA;AAAA,IAEtE,sBAAO,OAAO,MAAM,sBAAO,QAAQ,SAAS,QAAQ,EAAE,CAAC;AAAA,EACzD;AACF;AAEO,IAAM,wBAAwB,qBAAM;AAAA,EACzC;AAAA,EACA,sBAAO,IAAI,aAAa;AACtB,UAAM,CAAC,WAAW,UAAU,cAAc,aAAa,OAAO,IAAI,OAAO,sBAAO,IAAI;AAAA,MAClF,qBAAqB,YAAY;AAAA,MACjC,qBAAqB,WAAW;AAAA,MAChC,qBAAqB,eAAe;AAAA,MACpC,qBAAqB,cAAc;AAAA,MACnC,sBAAsB;AAAA,IACxB,CAAC;AAED,WAAO;AAAA,MACL,cAAc,sBAAO,QAAQ,SAAS;AAAA,MACtC,aAAa,sBAAO,QAAQ,QAAQ;AAAA,MACpC,iBAAiB,sBAAO,QAAQ,YAAY;AAAA,MAC5C,gBAAgB,sBAAO,QAAQ,WAAW;AAAA,MAC1C,YAAY,sBAAO,QAAQ,OAAO;AAAA,IACpC;AAAA,EACF,CAAC;AACH;AAEO,IAAM,wBAAwB,qBAAM,QAAQ,mBAAmB;AAAA,EACpE,gBAAgB,sBAAO,QAAQ,MAAM;AAAA,EACrC,aAAa,sBAAO,QAAQ,MAAM;AAAA,EAClC,iBAAiB,sBAAO,QAAQ,MAAM;AAAA,EACtC,cAAc,sBAAO,QAAQ,MAAM;AAAA,EACnC,YAAY,sBAAO,QAAQ,SAAS,QAAQ,EAAE;AAChD,CAAC;;;AD1CD,IAAM,yBAAyB;AAAA,EAC7B,cAAc;AAAA,EACd,UAAU;AAAA,EACV,WAAW;AAAA,EACX,WAAW;AAAA,EACX,sBAAsB;AAAA,EACtB,uBAAuB;AAAA,EACvB,aAAa;AAAA,EACb,qBAAqB;AAAA,EACrB,iBAAiB;AAAA,EACjB,iBAAiB;AACnB;AAEO,IAAM,yBAIT,qBAAM;AAAA,EACR;AAAA,EACA,sBAAO,IAAI,aAAa;AACtB,UAAM,SAAS,OAAO;AACtB,UAAM,YAAY,OAAO,OAAO;AAChC,UAAM,cAAc,OAAO,OAAO;AAClC,UAAM,UAAU,OAAO,OAAO;AAE9B,WAAO;AAAA,MACL,OAAO,CAAC,WAAW;AACjB,cAAM,OAAO,QAAQ,MAAM;AAC3B,cAAM,UAAkC;AAAA,UACtC,QAAQ;AAAA,UACR,gBAAgB;AAAA,UAChB,gBAAgB;AAAA,QAClB;AAEA,YAAI,OAAO,OAAO;AAChB,kBAAQ,cAAc,IAAI;AAAA,QAC5B;AACA,cAAM,MAAM,YAAY,KAAK,QAAQ,eAAe,SAAS,GAAG,OAAO,KAAK;AAE5E,eAAO,sBAAO,WAAW;AAAA,UACvB,KAAK,MACH,MAAM,KAAK;AAAA,YACT;AAAA,YACA,QAAQ,YAAY,QAAQ,OAAO;AAAA,YACnC,QAAQ,OAAO;AAAA,YACf,GAAI,OAAO,QAAQ,EAAE,MAAM,KAAK,UAAU,OAAO,IAAI,EAAE;AAAA,UACzD,CAAC;AAAA,UACH,OAAO,CAAC,UAAU;AAChB,gBAAI,iBAAiB,SAAS,MAAM,SAAS,gBAAgB;AAC3D,qBAAO,IAAI,2BAA2B;AAAA,gBACpC,SAAS,yBAAyB,OAAO;AAAA,gBACzC,MAAM;AAAA,cACR,CAAC;AAAA,YACH;AACA,gBAAI,iBAAiB,SAAS,MAAM,SAAS,cAAc;AACzD,qBAAO,IAAI,2BAA2B;AAAA,gBACpC,SAAS,yBAAyB,OAAO;AAAA,gBACzC,MAAM;AAAA,cACR,CAAC;AAAA,YACH;AACA,mBAAO,IAAI,wBAAwB,EAAE,OAAO,MAAM,CAAC;AAAA,UACrD;AAAA,QACF,CAAC,EAAE;AAAA,UACD,sBAAO;AAAA,YAAS,CAAC,UACf,sBAAO,SAAS,wCAAwC,MAAM,KAAK;AAAA,UACrE;AAAA,UACA,sBAAO,QAAQ,CAAC,aAAa,kBAAkB,UAAU,OAAO,YAAY,CAAC;AAAA,QAC/E;AAAA,MACF;AAAA,IACF;AAAA,EACF,CAAC;AACH;AACA,IAAM,cAAc,CAAC,KAAa,WAA2D;AAC3F,QAAM,OAAO,IAAI,IAAI,GAAG;AACxB,MAAI,CAAC,QAAQ;AACX,WAAO;AAAA,EACT;AACA,MAAI,OAAO,WAAW,UAAU;AAC9B,SAAK,SAAS;AAAA,EAChB,OAAO;AACL,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM,GAAG;AACjD,WAAK,aAAa,OAAO,KAAK,GAAG,KAAK,EAAE;AAAA,IAC1C;AAAA,EACF;AACA,SAAO;AACT;AAEA,IAAM,UAAU,CAAC;AAAA,EACf;AAAA,EACA;AAAA,EACA;AACF,MAIc;AACZ,MAAI,OAAO;AACT,WAAO,GAAG,SAAS,gBAAgB,GAAG,IAAI,OAAO,OAAO,IAAI;AAAA,EAC9D;AACA,SAAO,GAAG,SAAS,gBAAgB,OAAO,gBAAgB,OAAO,IAAI,IAAI;AAC3E;AACA,SAAS,uBAAoD,UAAoB,QAAgB;AAC/F,SAAO,sBAAO,WAAW;AAAA,IACvB,KAAK,MAAM,SAAS,KAAK;AAAA,IACzB,OAAO,CAAC,UAAU,IAAI,gCAAgC,EAAE,OAAO,MAAM,CAAC;AAAA,EACxE,CAAC,EAAE;AAAA,IACD,sBAAO;AAAA,MAAS,CAAC,UACf,sBAAO,SAAS,+CAA+C,MAAM,KAAK;AAAA,IAC5E;AAAA,IACA,sBAAO,OAAO;AAAA,MACZ,KAAK,CAAC,SAAS,OAAO,MAAM,IAAI;AAAA,MAChC,OAAO,CAAC,UAAU,IAAI,8BAA8B,EAAE,MAA2B,CAAC;AAAA,IACpF,CAAC;AAAA,EACH;AACF;AACA,IAAM,uBAAuB,CAAC,aAAuB;AACnD,QAAM,OAAO,SAAS;AACtB,SAAO,sBAAO,WAAW;AAAA,IACvB,KAAK,MAAM,SAAS,KAAK;AAAA,IACzB,OAAO,CAAC,UAAU,IAAI,gCAAgC,EAAE,OAAO,MAAM,CAAC;AAAA,EACxE,CAAC,EAAE;AAAA,IACD,sBAAO,SAAS,CAAC,UAAU,sBAAO,SAAS,gCAAgC,MAAM,KAAK,CAAC;AAAA,IACvF,sBAAO;AAAA,MAAQ,CAAC,iBACd,sBAAO;AAAA,QACL,qBAAM,MAAM,IAAI,EAAE;AAAA,UAChB,qBAAM;AAAA,YACJ,uBAAuB;AAAA,YACvB,MAAM,IAAI,+BAA+B,EAAE,aAAa,CAAC;AAAA,UAC3D;AAAA,UACA,qBAAM,KAAK,uBAAuB,cAAc,MAAM,IAAI,6BAA6B,CAAC;AAAA,UACxF,qBAAM,KAAK,uBAAuB,WAAW,MAAM,IAAI,0BAA0B,CAAC;AAAA,UAClF,qBAAM,KAAK,uBAAuB,WAAW,MAAM,IAAI,yBAAyB,CAAC;AAAA,UACjF,qBAAM;AAAA,YACJ,uBAAuB;AAAA,YACvB,MAAM,IAAI,yBAAyB,EAAE,SAAS,aAAa,CAAC;AAAA,UAC9D;AAAA,UACA,qBAAM;AAAA,YACJ,uBAAuB;AAAA,YACvB,MAAM,IAAI,oCAAoC,EAAE,aAAa,CAAC;AAAA,UAChE;AAAA,UACA,qBAAM;AAAA,YACJ,CAACC,UAASA,SAAQ;AAAA,YAClB,MACE,IAAI,2BAA2B;AAAA,cAC7B,SAAS,iBAAiB,IAAI;AAAA,cAC9B,MACE,SAAS,uBAAuB,wBAC5B,kBACA,SAAS,uBAAuB,eAC9B,SAAS,uBAAuB,kBAChC,YACA;AAAA,YACV,CAAC;AAAA,UACL;AAAA,UACA,qBAAM,OAAO,MAAM,IAAI,wBAAwB,EAAE,OAAO,aAAa,CAAC,CAAC;AAAA,QACzE;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAM,oBAAoB,CACxB,UACA,WAC0D;AAC1D,MAAI,SAAS,IAAI;AACf,WAAO,uBAAuB,UAAU,MAAM;AAAA,EAChD;AACA,SAAO,qBAAqB,QAAQ;AACtC;;;AE3LA,IAAAC,iBAAuB;;;ACAvB,IAAAC,iBAAqB;AAEd,IAAM,uBAAN,cAAmC,oBAAK,YAAY,sBAAsB,EAG9E;AAAC;;;ADFG,IAAM,gBAAgB,CAA2B,QAAgB,SAA0B;AAChG,SAAO,sBAAO,IAAI;AAAA,IAChB,KAAK,MAAM,OAAO,MAAM,IAAI;AAAA,IAC5B,OAAO,CAAC,UAAU,IAAI,qBAAqB,EAAE,OAAO,MAAM,MAA2B,CAAC;AAAA,EACxF,CAAC;AACH;;;AERA,QAAmB;AACZ,IAAM,sBAAwB,SAAO;AAAA,EAC1C,aAAe,SAAO;AAAA,EACtB,cAAgB,SAAO;AAAA,EACvB,cAAgB,SAAO;AAAA,EACvB,cAAgB,SAAO;AAAA,EACvB,cAAgB,SAAO;AAAA,EACvB,MAAQ,SAAO;AAAA,EACf,OAAS,SAAO;AAAA,EAChB,SAAW,SAAO;AAAA,EAClB,SAAW,SAAO;AAAA,EAClB,gBAAkB,SAAO;AAAA,EACzB,eAAiB,SAAO;AAAA,EACxB,YAAc,SAAO;AAAA,EACrB,kBAAoB,SAAO;AAAA,EAC3B,qBAAuB,UAAQ;AAAA,EAC/B,MAAQ,SAAO;AAAA,EACf,YAAc,QAAQ,MAAI,CAAC;AAAA,EAC3B,iBAAmB,MAAI;AAAA,EACvB,iBAAmB,MAAI;AAAA,EACvB,aAAe;AAAA,IACX,SAAO;AAAA,MACP,WAAa,SAAO;AAAA,MACpB,YAAc,SAAO;AAAA,IACvB,CAAC;AAAA,EACH;AACF,CAAC;AAEM,IAAM,8BAAgC,SAAO;AAAA,EAClD,MAAQ,SAAO;AAAA,IACb,WAAa,MAAI;AAAA,EACnB,CAAC;AAAA,EACD,MAAQ,SAAO;AAAA,IACb,SAAW,SAAO;AAAA,EACpB,CAAC;AACH,CAAC;;;ACnCD,IAAAC,KAAmB;AACZ,IAAM,yBAA2B,UAAO;AAAA,EAC7C,MAAQ,UAAO;AAAA,IACb,eAAiB,WAAQ;AAAA,IACzB,gBAAkB,QAAK,CAAC,KAAK,CAAC;AAAA,IAC9B,iBAAmB,UAAO;AAAA,IAC1B,gBAAkB,WAAQ;AAAA,IAC1B,YAAc,WAAQ;AAAA,EACxB,CAAC;AAAA,EACD,WAAa,OAAI;AACnB,CAAC;AAEM,IAAM,iCAAmC,UAAO,CAAC,CAAC;;;ACZzD,IAAAC,KAAmB;AAEZ,IAAM,sCAAwC,UAAO;AAAA,EAC1D,OAAS,OAAI,EAAE,IAAI,SAAS,UAAU,YAAY,YAAY,EAAE,SAAS;AAAA,EACzE,QAAU,OAAI,EAAE,SAAS;AAC3B,CAAC;AACM,IAAM,0BAA4B,UAAO;AAAA,EAC9C,WAAa,UAAO;AAAA,EACpB,WAAa,UAAO;AAAA,EACpB,aAAe,UAAO,EAAE,MAAM,EAAE,SAAS;AAAA,EACzC,eAAiB,UAAO,OAAO,EAAE,SAAS;AAC5C,CAAC;AACM,IAAM,sCAAwC,UAAO;AAAA,EAC1D,MAAM,wBAAwB,MAAM;AAAA,EACpC,MAAQ,UAAO;AAAA,IACb,SAAW,UAAO;AAAA,IAClB,YAAc,UAAO;AAAA,MACnB,YAAc,UAAO;AAAA,MACrB,QAAU,UAAO;AAAA,MACjB,OAAS,UAAO;AAAA,IAClB,CAAC;AAAA,EACH,CAAC;AACH,CAAC;;;ACtBD,IAAAC,KAAmB;AACZ,IAAM,iCAAmC,UAAO;AAAA,EACrD,MAAQ,UAAO;AAAA,IACb,UACG,UAAO;AAAA,MACN,MAAQ,UAAO;AAAA,MACf,WAAa,WAAQ;AAAA,IACvB,CAAC,EACA,MAAM;AAAA,EACX,CAAC;AAAA,EACD,WAAa,OAAI;AACnB,CAAC;AAEM,IAAM,yCAA2C,UAAO,CAAC,CAAC;;;ACbjE,IAAAC,KAAmB;AACZ,IAAM,oBAAsB,UAAO;AAAA,EACxC,IAAM,OAAI;AAAA,EACV,MAAQ,UAAO;AAAA,EACf,WAAa,UAAO;AAAA,EACpB,UAAY,UAAO;AACrB,CAAC;AACM,IAAM,gCAAkC,UAAO;AAAA,EACpD,OAAS,OAAI,EAAE,SAAS;AAAA,EACxB,QAAU,OAAI,EAAE,SAAS;AAC3B,CAAC;AACM,IAAM,gCAAkC,UAAO;AAAA,EACpD,MAAM,kBAAkB,MAAM;AAAA,EAC9B,MAAQ,UAAO;AAAA,IACb,SAAW,UAAO;AAAA,IAClB,YAAc,UAAO;AAAA,MACnB,OAAS,UAAO;AAAA,MAChB,QAAU,UAAO;AAAA,MACjB,YAAc,UAAO;AAAA,IACvB,CAAC;AAAA,EACH,CAAC;AACH,CAAC;;;ACrBD,IAAAC,KAAmB;AACZ,IAAM,yBAA2B,UAAO;AAAA,EAC7C,aAAe;AAAA,IACX,UAAO;AAAA,MACP,cAAgB,WAAQ;AAAA,MACxB,WAAa,OAAI;AAAA,IACnB,CAAC;AAAA,EACH;AAAA,EACA,cAAgB,OAAI,EAAE,UAAU,MAAM;AACxC,CAAC;AAEM,IAAM,iCAAmC,UAAO;AAAA,EACrD,MAAQ,OAAI;AAAA,EACZ,MAAQ,UAAO;AAAA,IACb,SAAW,UAAO;AAAA,EACpB,CAAC;AACH,CAAC;;;AChBD,IAAAC,KAAmB;AACZ,IAAM,0BAA4B,UAAO;AAAA,EAC9C,oBAAsB,WAAQ;AAAA,EAC9B,WAAa,OAAI;AAAA,EACjB,eAAiB,OAAI;AAAA,EACrB,OAAS,SAAM;AAAA,EACf,WAAa,UAAO;AAAA,EACpB,UAAY,UAAO;AAAA,EACnB,aAAe,UAAO;AACxB,CAAC;AAEM,IAAM,kCAAoC,UAAO;AAAA,EACtD,MAAQ,UAAO;AAAA,EACf,MAAQ,UAAO;AAAA,IACb,MAAQ,UAAO;AAAA,IACf,QAAU,OAAI;AAAA,EAChB,CAAC;AAAA,EACD,MAAQ,UAAO;AAAA,IACb,SAAW,UAAO;AAAA,EACpB,CAAC;AACH,CAAC;;;AddD,IAAM,iCAAiC,CACrC,SACA,gBAEA,sBAAO,IAAI,aAAa;AACtB,QAAM,UAAU,OAAO;AACvB,SAAO,OAAO,sBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM,gBAAgB,OAAO;AAAA,MAC7B,SAAS;AAAA,MACT,MAAM;AAAA,MACN,cAAc;AAAA,IAChB,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;AAEI,IAAM,4BAA4B,CAAC,UACxC,sBAAO,IAAI,aAAa;AACtB,QAAM,iBAAiB,OAAO,cAAc,wBAAwB,KAAK;AACzE,SAAO,OAAO,sBAAO,aAAa,eAAe,WAAW,EAAE;AAAA,IAC5D,sBAAO,QAAQ,SAAS,UAAU,sBAAsB,eAAe;AAAA,IACvE,sBAAO;AAAA,MACL,CAAC,UACC,+BAA+B,eAAe,cAAc,qBAAM,QAAQ,KAAK,CAAC;AAAA,MAClF,EAAE,aAAa,SAAS,UAAU,sBAAsB,YAAY;AAAA,IACtE;AAAA,IACA,sBAAO;AAAA,IACP,sBAAO,IAAI,qBAAM,OAAO;AAAA,EAC1B;AACF,CAAC;;;AetCH,IAAAC,iBAAuB;AAMhB,IAAM,gBAAgB,CAAC,SAC5B,sBAAO,IAAI,aAAa;AACtB,QAAM,UAAU,OAAO;AACvB,QAAM,gBAAgB,OAAO,cAAc,qBAAqB,IAAI;AACpE,SAAO,OAAO,sBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,MACT,MAAM;AAAA,IACR,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;;;ACrBH,IAAAC,kBAAuB;AAMhB,IAAM,oBAAoB,CAAC,SAChC,uBAAO,IAAI,aAAa;AACtB,QAAM,gBAAgB,OAAO,cAAc,yBAAyB,IAAI;AACxE,QAAM,UAAU,OAAO;AAEvB,SAAO,OAAO,uBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;;;ACtBH,IAAAC,kBAAuB;AAMhB,IAAM,mBAAmB,CAAC,UAC/B,uBAAO,IAAI,aAAa;AACtB,QAAM,EAAE,WAAW,KAAK,IAAI,OAAO,cAAc,wBAAwB,KAAK;AAC9E,QAAM,UAAU,OAAO;AAEvB,SAAO,OAAO,uBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM,aAAa,SAAS;AAAA,MAC5B,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;;;ACtBH,IAAAC,kBAAuB;AACvB,8BAA0B;AASnB,IAAM,yBAAyB,CACpC,aAEA,uBAAO,IAAI,aAAa;AACtB,QAAM,oBAAoB,OAAO,cAAc,qCAAqC,QAAQ;AAC5F,QAAM,UAAU,OAAO;AAEvB,SAAO,OAAO,uBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAO,mCAAU,iBAAiB;AAAA,MAClC,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;AAEI,IAAM,6BAA6B,CACxC,aAEA,uBAAO,IAAI,aAAa;AACtB,MAAI,SAAS;AACb,QAAM,QAAQ,SAAS,UAAU,YAAY;AAC7C,MAAI,UAAU;AACd,QAAM,OAAoE,CAAC;AAC3E,SAAO,SAAS;AACd,UAAM,WAAW,OAAO,uBAAuB;AAAA,MAC7C,GAAG;AAAA,MACH;AAAA,MACA;AAAA,IACF,CAAC;AACD,QAAI,SAAS,KAAK,QAAQ;AACxB,gBAAU;AACV,WAAK,KAAK,GAAG,SAAS,IAAI;AAAA,IAC5B,OAAO;AACL,gBAAU;AAAA,IACZ;AAAA,EACF;AAEA,SAAO;AACT,CAAC;;;ACrDH,IAAAC,kBAAuB;AACvB,IAAAC,2BAA0B;AAUnB,IAAM,mBAAmB,CAAC,aAC/B,uBAAO,IAAI,aAAa;AACtB,QAAM,oBAAoB,OAAO,cAAc,+BAA+B,QAAQ;AACtF,QAAM,UAAU,OAAO;AAEvB,SAAO,OAAO,uBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAO,oCAAU,iBAAiB;AAAA,MAClC,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;AAEI,IAAM,uBAAuB,CAClC,aAEA,uBAAO,IAAI,aAAa;AACtB,MAAI,UAAU;AACd,QAAM,OAAwC,CAAC;AAC/C,MAAI,SAAS;AACb,QAAM,QAAQ,SAAS,UAAU,MAAM;AACvC,SAAO,SAAS;AACd,UAAM,WAAW,OAAO,iBAAiB;AAAA,MACvC,GAAG;AAAA,MACH;AAAA,MACA;AAAA,IACF,CAAC;AACD,QAAI,SAAS,KAAK,QAAQ;AACxB,gBAAU;AACV,WAAK,KAAK,GAAG,SAAS,IAAI;AAAA,IAC5B,OAAO;AACL,gBAAU;AAAA,IACZ;AAAA,EACF;AACA,SAAO;AACT,CAAC;;;ACnDH,IAAAC,kBAAuB;AAShB,IAAM,2BAA2B,CAAC,UACvC,uBAAO,IAAI,aAAa;AACtB,QAAM,EAAE,WAAW,KAAK,IAAI,OAAO,cAAc,gCAAgC,KAAK;AACtF,QAAM,UAAU,OAAO;AAEvB,SAAO,OAAO,uBAAO;AAAA,IACnB,QAAQ,MAAM;AAAA,MACZ,MAAM;AAAA,MACN,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,MAAM,aAAa,SAAS;AAAA,MAC5B,cAAc;AAAA,MACd,SAAS;AAAA,IACX,CAAC;AAAA,IACD,SAAS,MAAM;AAAA,EACjB;AACF,CAAC;","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"]}
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  BigCommerceFetcher,
6
6
  DEFAULTS
7
- } from "./chunk-PAXNZ36X.mjs";
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-fields.ts
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) => Effect5.gen(function* () {
325
+ var findCompanyExtraFields = (criteria) => Effect6.gen(function* () {
250
326
  const validatedCriteria = yield* validateInput(GetCompanyExtraFieldsCriteriaSchema, criteria);
251
327
  const fetcher = yield* BigCommerceFetcher;
252
- return yield* Effect5.retry(
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) => Effect5.gen(function* () {
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 Effect6 } from "effect";
362
+ import { Effect as Effect7 } from "effect";
287
363
  import { stringify as stringify2 } from "querystring";
288
- var findCompanyRoles = (criteria) => Effect6.gen(function* () {
364
+ var findCompanyRoles = (criteria) => Effect7.gen(function* () {
289
365
  const validatedCriteria = yield* validateInput(GetCompanyRolesCriteriaSchema, criteria);
290
366
  const fetcher = yield* BigCommerceFetcher;
291
- return yield* Effect6.retry(
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) => Effect6.gen(function* () {
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 Effect7 } from "effect";
326
- var setCompanyPaymentMethods = (input) => Effect7.gen(function* () {
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* Effect7.retry(
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
  };
@@ -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"]}
@@ -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 };