@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.
- package/__tests__/api.spec.js +20 -8
- package/docs/CHANGELOG.md +1 -1
- package/package.json +1 -1
- package/src/api.js +25 -19
package/__tests__/api.spec.js
CHANGED
|
@@ -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
|
-
|
|
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
|
-
|
|
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.
|
|
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
|
+
"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('
|
|
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(
|
|
218
|
-
|
|
219
|
-
|
|
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
|
}
|