@nuskin/contentstack-lib 2.1.0-pa-1117.3 → 2.1.0-pa-1117.5

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.
@@ -281,10 +281,14 @@ describe("ContentstackApi", () => {
281
281
  mockPromiseResult.mockResolvedValueOnce([[
282
282
  {
283
283
  title: 'United States',
284
+ countries: ['United States'],
284
285
  pre_address_fields: [addressFormFieldEntries[0]],
285
286
  address_form: {
286
287
  title: 'default',
287
- address_elements: addressFormFieldEntries
288
+ address_elements: addressFormFieldEntries,
289
+ postal_code_regex: '^[0-9]{5}(?:-[0-9]{4})?$',
290
+ verify_after_autocomplete: true,
291
+ wrap_address1_to_address2: false
288
292
  },
289
293
  post_address_fields: [addressFormFieldEntries[1]]
290
294
  }
@@ -293,7 +297,7 @@ describe("ContentstackApi", () => {
293
297
  const Stack = getStack('dev');
294
298
  await expect(Stack.getShippingAddressForms(['United States'])).resolves.toStrictEqual([
295
299
  {
296
- title: 'United States',
300
+ countries: ['United States'],
297
301
  pre_address_fields: [
298
302
  {
299
303
  field: 'address1',
@@ -304,7 +308,6 @@ describe("ContentstackApi", () => {
304
308
  }
305
309
  ],
306
310
  address_form: {
307
- title: 'default',
308
311
  address_elements: [
309
312
  {
310
313
  field: 'address1',
@@ -320,7 +323,10 @@ describe("ContentstackApi", () => {
320
323
  max_length: 10,
321
324
  required: false
322
325
  }
323
- ]
326
+ ],
327
+ postal_code_regex: '^[0-9]{5}(?:-[0-9]{4})?$',
328
+ verify_after_autocomplete: true,
329
+ wrap_address1_to_address2: false
324
330
  },
325
331
  post_address_fields: [
326
332
  {
@@ -339,10 +345,14 @@ describe("ContentstackApi", () => {
339
345
  mockPromiseResult.mockResolvedValueOnce([[
340
346
  {
341
347
  title: 'United States',
348
+ countries: ['United States'],
342
349
  pre_address_fields: [addressFormFieldEntries[0]],
343
350
  address_form: {
344
351
  title: 'default',
345
- address_elements: addressFormFieldEntries
352
+ address_elements: addressFormFieldEntries,
353
+ postal_code_regex: '^[0-9]{5}(?:-[0-9]{4})?$',
354
+ verify_after_autocomplete: true,
355
+ wrap_address1_to_address2: false
346
356
  },
347
357
  post_address_fields: [addressFormFieldEntries[1]]
348
358
  }
@@ -351,7 +361,7 @@ describe("ContentstackApi", () => {
351
361
  const Stack = getStack('dev');
352
362
  await expect(Stack.getShippingAddressForms(['United States'], true)).resolves.toStrictEqual([
353
363
  {
354
- title: 'United States',
364
+ countries: ['United States'],
355
365
  preAddressFields: [
356
366
  {
357
367
  field: 'address1',
@@ -362,7 +372,6 @@ describe("ContentstackApi", () => {
362
372
  }
363
373
  ],
364
374
  addressForm: {
365
- title: 'default',
366
375
  addressElements: [
367
376
  {
368
377
  field: 'address1',
@@ -378,7 +387,10 @@ describe("ContentstackApi", () => {
378
387
  maxLength: 10,
379
388
  required: false
380
389
  }
381
- ]
390
+ ],
391
+ postalCodeRegex: '^[0-9]{5}(?:-[0-9]{4})?$',
392
+ verifyAfterAutocomplete: true,
393
+ wrapAddress1ToAddress2: false
382
394
  },
383
395
  postAddressFields: [
384
396
  {
package/docs/CHANGELOG.md CHANGED
@@ -1 +1 @@
1
- # [2.1.0-pa-1117.3](https://code.tls.nuskin.io/ns-am/utility/npm/contentstack-lib/compare/v2.1.0-pa-1117.2...v2.1.0-pa-1117.3) (2026-04-06)
1
+ # [2.1.0-pa-1117.5](https://code.tls.nuskin.io/ns-am/utility/npm/contentstack-lib/compare/v2.1.0-pa-1117.4...v2.1.0-pa-1117.5) (2026-04-08)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nuskin/contentstack-lib",
3
- "version": "2.1.0-pa-1117.3",
3
+ "version": "2.1.0-pa-1117.5",
4
4
  "description": "This project contains configuration and api code to access Contentstack, to be shared between the backend (AWS Lambda) and frontend (Vue, etc).",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
package/src/api.js CHANGED
@@ -184,7 +184,7 @@ const _getMultiEntries = async (contentType, includeRefs, values) => {
184
184
  const [results] = await Stack
185
185
  .ContentType(contentType)
186
186
  .Query()
187
- .containedIn('title', values)
187
+ .containedIn('country', values)
188
188
  .includeReference(includeRefs)
189
189
  .toJSON()
190
190
  .find();
@@ -213,15 +213,31 @@ const _extractAddressFormFields = (addressFormFields = [], camelcase = false) =>
213
213
  return camelcase ? _snakeObjectToCamel(mappedFields) : mappedFields;
214
214
  }
215
215
 
216
+ const _extractAddressForm = (addressForm, camelcase = false) => {
217
+ if (!addressForm) {
218
+ return addressForm;
219
+ }
220
+
221
+ const mappedForm = {
222
+ address_elements: _extractAddressFormFields(addressForm.address_elements, camelcase),
223
+ postal_code_regex: addressForm.postal_code_regex,
224
+ verify_after_autocomplete: addressForm.verify_after_autocomplete,
225
+ wrap_address1_to_address2: addressForm.wrap_address1_to_address2
226
+ };
227
+
228
+ return camelcase ? _snakeObjectToCamel(mappedForm) : mappedForm;
229
+ }
230
+
216
231
  const getShippingAddressForms = async (countries, camelcase = false) => {
217
- const results = await _getMultiEntries('shipping_address_form', ['pre_address_fields', 'address_form', 'address_form.address_elements', 'post_address_fields'], countries);
218
- const mappedResults = (results || []).map(result => ({
219
- ...result,
232
+ const results = await _getMultiEntries(
233
+ 'shipping_address_form',
234
+ ['shipping_country_list', 'pre_address_fields', 'address_form', 'address_form.address_elements', 'post_address_fields'],
235
+ countries
236
+ );
237
+ const mappedResults = (results || []).map((result) => ({
238
+ countries: result.countries,
220
239
  pre_address_fields: _extractAddressFormFields(result.pre_address_fields, camelcase),
221
- address_form: result.address_form ? {
222
- ...result.address_form,
223
- address_elements: _extractAddressFormFields(result.address_form.address_elements, camelcase)
224
- } : result.address_form,
240
+ address_form: _extractAddressForm(result.address_form, camelcase),
225
241
  post_address_fields: _extractAddressFormFields(result.post_address_fields, camelcase)
226
242
  }));
227
243
 
@@ -230,17 +246,7 @@ const getShippingAddressForms = async (countries, camelcase = false) => {
230
246
 
231
247
  const getAddressForms = async (countries, camelcase = false) => {
232
248
  const results = await _getMultiEntries('address_form', 'address_elements', countries);
233
- const mappedResults = (results || []).map(({
234
- address_elements,
235
- postal_code_regex,
236
- verify_after_autocomplete,
237
- wrap_address1_to_address2
238
- }) => ({
239
- address_elements: _extractAddressFormFields(address_elements, camelcase),
240
- postal_code_regex,
241
- verify_after_autocomplete,
242
- wrap_address1_to_address2
243
- }));
249
+ const mappedResults = (results || []).map((result) => _extractAddressForm(result, camelcase));
244
250
 
245
251
  return camelcase ? _snakeObjectToCamel(mappedResults) : mappedResults;
246
252
  }