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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.eslintrc.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "SharedArrayBuffer": "readonly"
12
12
  },
13
13
  "parserOptions": {
14
- "ecmaVersion": 2018,
14
+ "ecmaVersion": 2020,
15
15
  "sourceType": "module"
16
16
  },
17
17
  "extends": [
@@ -281,7 +281,20 @@ describe("ContentstackApi", () => {
281
281
  mockPromiseResult.mockResolvedValueOnce([[
282
282
  {
283
283
  title: 'United States',
284
- countries: ['United States'],
284
+ countries: [
285
+ {
286
+ countries: [
287
+ {
288
+ country_code: 'US',
289
+ country_name: 'United States'
290
+ },
291
+ {
292
+ country_code: 'CA',
293
+ country_name: 'Canada'
294
+ }
295
+ ]
296
+ }
297
+ ],
285
298
  pre_address_fields: [addressFormFieldEntries[0]],
286
299
  address_form: {
287
300
  title: 'default',
@@ -297,7 +310,16 @@ describe("ContentstackApi", () => {
297
310
  const Stack = getStack('dev');
298
311
  await expect(Stack.getShippingAddressForms(['United States'])).resolves.toStrictEqual([
299
312
  {
300
- countries: ['United States'],
313
+ countries: [
314
+ {
315
+ code: 'US',
316
+ name: 'United States'
317
+ },
318
+ {
319
+ code: 'CA',
320
+ name: 'Canada'
321
+ }
322
+ ],
301
323
  pre_address_fields: [
302
324
  {
303
325
  field: 'address1',
@@ -345,7 +367,20 @@ describe("ContentstackApi", () => {
345
367
  mockPromiseResult.mockResolvedValueOnce([[
346
368
  {
347
369
  title: 'United States',
348
- countries: ['United States'],
370
+ countries: [
371
+ {
372
+ countries: [
373
+ {
374
+ country_code: 'US',
375
+ country_name: 'United States'
376
+ },
377
+ {
378
+ country_code: 'CA',
379
+ country_name: 'Canada'
380
+ }
381
+ ]
382
+ }
383
+ ],
349
384
  pre_address_fields: [addressFormFieldEntries[0]],
350
385
  address_form: {
351
386
  title: 'default',
@@ -361,7 +396,16 @@ describe("ContentstackApi", () => {
361
396
  const Stack = getStack('dev');
362
397
  await expect(Stack.getShippingAddressForms(['United States'], true)).resolves.toStrictEqual([
363
398
  {
364
- countries: ['United States'],
399
+ countries: [
400
+ {
401
+ code: 'US',
402
+ name: 'United States'
403
+ },
404
+ {
405
+ code: 'CA',
406
+ name: 'Canada'
407
+ }
408
+ ],
365
409
  preAddressFields: [
366
410
  {
367
411
  field: 'address1',
package/docs/CHANGELOG.md CHANGED
@@ -1 +1 @@
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)
1
+ # [2.1.0-pa-1117.6](https://code.tls.nuskin.io/ns-am/utility/npm/contentstack-lib/compare/v2.1.0-pa-1117.5...v2.1.0-pa-1117.6) (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.5",
3
+ "version": "2.1.0-pa-1117.6",
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": {
@@ -19,7 +19,7 @@
19
19
  "license": "ISC",
20
20
  "homepage": "https://code.tls.nuskin.io/ns-am/utility/npm/contentstack-lib/blob/master/README.md",
21
21
  "devDependencies": {
22
- "eslint": "5.16.0",
22
+ "eslint": "7.32.0",
23
23
  "eslint-config-google": "0.14.0",
24
24
  "eslint-config-prettier": "4.1.0",
25
25
  "eslint-plugin-json": "2.1.1",
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('country', values)
187
+ .containedIn('title', values)
188
188
  .includeReference(includeRefs)
189
189
  .toJSON()
190
190
  .find();
@@ -228,14 +228,23 @@ const _extractAddressForm = (addressForm, camelcase = false) => {
228
228
  return camelcase ? _snakeObjectToCamel(mappedForm) : mappedForm;
229
229
  }
230
230
 
231
+ const _extractShippingCountries = (countries = []) => {
232
+ const shippingCountries = countries[0]?.countries ?? [];
233
+
234
+ return shippingCountries.map(({country_code, country_name}) => ({
235
+ code: country_code,
236
+ name: country_name
237
+ }));
238
+ }
239
+
231
240
  const getShippingAddressForms = async (countries, camelcase = false) => {
232
241
  const results = await _getMultiEntries(
233
242
  'shipping_address_form',
234
- ['shipping_country_list', 'pre_address_fields', 'address_form', 'address_form.address_elements', 'post_address_fields'],
243
+ ['countries', 'pre_address_fields', 'address_form', 'address_form.address_elements', 'post_address_fields'],
235
244
  countries
236
245
  );
237
246
  const mappedResults = (results || []).map((result) => ({
238
- countries: result.countries,
247
+ countries: _extractShippingCountries(result.countries),
239
248
  pre_address_fields: _extractAddressFormFields(result.pre_address_fields, camelcase),
240
249
  address_form: _extractAddressForm(result.address_form, camelcase),
241
250
  post_address_fields: _extractAddressFormFields(result.post_address_fields, camelcase)