{"version":3,"file":"customer_address.mjs","sources":["../../../../../../../rest/admin/2025-01/customer_address.ts"],"sourcesContent":["/***********************************************************************************************************************\n* This file is auto-generated. If you have an issue, please create a GitHub issue.                                     *\n***********************************************************************************************************************/\n\nimport {Base, FindAllResponse} from '../../base';\nimport {ResourcePath, ResourceNames, Body} from '../../types';\nimport {Session} from '../../../lib/session/session';\nimport {ApiVersion} from '../../../lib/types';\n\ninterface FindArgs {\n  session: Session;\n  id: number | string;\n  customer_id?: number | string | null;\n}\ninterface DeleteArgs {\n  session: Session;\n  id: number | string;\n  customer_id?: number | string | null;\n}\ninterface AllArgs {\n  [key: string]: unknown;\n  session: Session;\n  customer_id?: number | string | null;\n}\ninterface DefaultArgs {\n  [key: string]: unknown;\n  body?: {[key: string]: unknown} | null;\n}\ninterface SetArgs {\n  [key: string]: unknown;\n  address_ids?: unknown[] | number | string | null;\n  operation?: unknown;\n  body?: {[key: string]: unknown} | null;\n}\n\nexport class CustomerAddress extends Base {\n  public static apiVersion = ApiVersion.January25;\n\n  protected static hasOne: {[key: string]: typeof Base} = {};\n  protected static hasMany: {[key: string]: typeof Base} = {};\n  protected static paths: ResourcePath[] = [\n    {\"http_method\": \"delete\", \"operation\": \"delete\", \"ids\": [\"customer_id\", \"id\"], \"path\": \"customers/<customer_id>/addresses/<id>.json\"},\n    {\"http_method\": \"get\", \"operation\": \"get\", \"ids\": [\"customer_id\"], \"path\": \"customers/<customer_id>/addresses.json\"},\n    {\"http_method\": \"get\", \"operation\": \"get\", \"ids\": [\"customer_id\", \"id\"], \"path\": \"customers/<customer_id>/addresses/<id>.json\"},\n    {\"http_method\": \"post\", \"operation\": \"post\", \"ids\": [\"customer_id\"], \"path\": \"customers/<customer_id>/addresses.json\"},\n    {\"http_method\": \"put\", \"operation\": \"default\", \"ids\": [\"customer_id\", \"id\"], \"path\": \"customers/<customer_id>/addresses/<id>/default.json\"},\n    {\"http_method\": \"put\", \"operation\": \"put\", \"ids\": [\"customer_id\", \"id\"], \"path\": \"customers/<customer_id>/addresses/<id>.json\"},\n    {\"http_method\": \"put\", \"operation\": \"set\", \"ids\": [\"customer_id\"], \"path\": \"customers/<customer_id>/addresses/set.json\"}\n  ];\n  protected static resourceNames: ResourceNames[] = [\n    {\n      \"singular\": \"customer_address\",\n      \"plural\": \"customer_addresses\"\n    },\n    {\n      \"singular\": \"address\",\n      \"plural\": \"addresses\"\n    }\n  ];\n\n  protected static getJsonBodyName(): string\n  {\n    return \"address\";\n  }\n\n  protected setData(data: Body): void {\n    if (this.resource().config.future?.customerAddressDefaultFix) {\n      if ('default' in data) {\n        data['is_default'] = Boolean(data['default']);\n        delete data['default'];\n      } else {\n        data['is_default'] = false;\n      }\n    }\n\n    return super.setData(data);\n  }\n\n  public static async find(\n    {\n      session,\n      id,\n      customer_id = null\n    }: FindArgs\n  ): Promise<CustomerAddress | null> {\n    const result = await this.baseFind<CustomerAddress>({\n      session: session,\n      urlIds: {\"id\": id, \"customer_id\": customer_id},\n      params: {},\n    });\n    return result.data ? result.data[0] : null;\n  }\n\n  public static async delete(\n    {\n      session,\n      id,\n      customer_id = null\n    }: DeleteArgs\n  ): Promise<unknown> {\n    const response = await this.request<CustomerAddress>({\n      http_method: \"delete\",\n      operation: \"delete\",\n      session: session,\n      urlIds: {\"id\": id, \"customer_id\": customer_id},\n      params: {},\n    });\n\n    return response ? response.body : null;\n  }\n\n  public static async all(\n    {\n      session,\n      customer_id = null,\n      ...otherArgs\n    }: AllArgs\n  ): Promise<FindAllResponse<CustomerAddress>> {\n    const response = await this.baseFind<CustomerAddress>({\n      session: session,\n      urlIds: {\"customer_id\": customer_id},\n      params: {...otherArgs},\n    });\n\n    return response;\n  }\n\n  public async default(\n    {\n      body = null,\n      ...otherArgs\n    }: DefaultArgs\n  ): Promise<unknown> {\n    const response = await this.request<CustomerAddress>({\n      http_method: \"put\",\n      operation: \"default\",\n      session: this.session,\n      urlIds: {\"id\": this.id, \"customer_id\": this.customer_id},\n      params: {...otherArgs},\n      body: body,\n      entity: this,\n    });\n\n    return response ? response.body : null;\n  }\n\n  public async set(\n    {\n      address_ids = null,\n      operation = null,\n      body = null,\n      ...otherArgs\n    }: SetArgs\n  ): Promise<unknown> {\n    const response = await this.request<CustomerAddress>({\n      http_method: \"put\",\n      operation: \"set\",\n      session: this.session,\n      urlIds: {\"customer_id\": this.customer_id},\n      params: {\"address_ids\": address_ids, \"operation\": operation, ...otherArgs},\n      body: body,\n      entity: this,\n    });\n\n    return response ? response.body : null;\n  }\n\n  public address1: string | null;\n  public address2: string | null;\n  public city: string | null;\n  public company: string | null;\n  public country: string | null;\n  public country_code: string | null;\n  public country_name: string | null;\n  public customer_id: string | null;\n  public first_name: string | null;\n  public id: string | null;\n  public is_default: boolean | null;\n  public last_name: string | null;\n  public name: string | null;\n  public phone: string | null;\n  public province: string | null;\n  public province_code: string | null;\n  public zip: string | null;\n}\n"],"names":[],"mappings":"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"}