@nuskin/shipping-address-form 1.5.0 → 1.6.0

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 (96) hide show
  1. package/README.md +30 -10
  2. package/dist/addressLookup/AddressLookup.js +70 -0
  3. package/dist/addressLookup/AddressLookup.js.map +1 -0
  4. package/dist/addressLookup/components/LocationPinIcon.js +33 -0
  5. package/dist/addressLookup/components/LocationPinIcon.js.map +1 -0
  6. package/dist/addressLookup/components/SmartyIntlResults.js +999 -0
  7. package/dist/addressLookup/components/SmartyIntlResults.js.map +1 -0
  8. package/dist/addressLookup/components/SmartyUSResults.js +980 -0
  9. package/dist/addressLookup/components/SmartyUSResults.js.map +1 -0
  10. package/dist/addressLookup/config/address/countries.js +61 -0
  11. package/dist/addressLookup/config/address/countries.js.map +1 -0
  12. package/dist/addressLookup/config/address/index.js +19 -0
  13. package/dist/addressLookup/config/address/index.js.map +1 -0
  14. package/dist/addressLookup/config/googleMaps.js +12 -0
  15. package/dist/addressLookup/config/googleMaps.js.map +1 -0
  16. package/dist/addressLookup/countries.js +19 -0
  17. package/dist/addressLookup/countries.js.map +1 -0
  18. package/dist/addressLookup/hooks/useAddressFieldLabels.js +41 -0
  19. package/dist/addressLookup/hooks/useAddressFieldLabels.js.map +1 -0
  20. package/dist/addressLookup/hooks/useAddressForm.js +36 -0
  21. package/dist/addressLookup/hooks/useAddressForm.js.map +1 -0
  22. package/dist/addressLookup/hooks/useAddressMapModal.js +136 -0
  23. package/dist/addressLookup/hooks/useAddressMapModal.js.map +1 -0
  24. package/dist/addressLookup/hooks/useAddressValidationBase.js +143 -0
  25. package/dist/addressLookup/hooks/useAddressValidationBase.js.map +1 -0
  26. package/dist/addressLookup/hooks/useInitialAddressVerification.js +57 -0
  27. package/dist/addressLookup/hooks/useInitialAddressVerification.js.map +1 -0
  28. package/dist/addressLookup/hooks/useIntlAddressValidation.js +122 -0
  29. package/dist/addressLookup/hooks/useIntlAddressValidation.js.map +1 -0
  30. package/dist/addressLookup/hooks/useSmartyInternationalLookup.js +74 -0
  31. package/dist/addressLookup/hooks/useSmartyInternationalLookup.js.map +1 -0
  32. package/dist/addressLookup/hooks/useSmartyLookupBase.js +152 -0
  33. package/dist/addressLookup/hooks/useSmartyLookupBase.js.map +1 -0
  34. package/dist/addressLookup/hooks/useSmartyUSLookup.js +79 -0
  35. package/dist/addressLookup/hooks/useSmartyUSLookup.js.map +1 -0
  36. package/dist/addressLookup/hooks/useUSAddressValidation.js +166 -0
  37. package/dist/addressLookup/hooks/useUSAddressValidation.js.map +1 -0
  38. package/dist/addressLookup/index.js +41 -0
  39. package/dist/addressLookup/index.js.map +1 -0
  40. package/dist/addressLookup/styles/addressLookup.css +374 -0
  41. package/dist/addressLookup/utils/addressForm.js +150 -0
  42. package/dist/addressLookup/utils/addressForm.js.map +1 -0
  43. package/dist/addressLookup/utils/addressMapping.js +190 -0
  44. package/dist/addressLookup/utils/addressMapping.js.map +1 -0
  45. package/dist/addressLookup/utils/addressStatus.js +173 -0
  46. package/dist/addressLookup/utils/addressStatus.js.map +1 -0
  47. package/dist/addressLookup/utils/addressStrings.js +159 -0
  48. package/dist/addressLookup/utils/addressStrings.js.map +1 -0
  49. package/dist/addressLookup/utils/addressVerification.js +66 -0
  50. package/dist/addressLookup/utils/addressVerification.js.map +1 -0
  51. package/dist/addressLookup/utils/addressWrapper.js +40 -0
  52. package/dist/addressLookup/utils/addressWrapper.js.map +1 -0
  53. package/dist/addressLookup/utils/componentPropTypes.js +118 -0
  54. package/dist/addressLookup/utils/componentPropTypes.js.map +1 -0
  55. package/dist/addressLookup/utils/googleMapsLoader.js +68 -0
  56. package/dist/addressLookup/utils/googleMapsLoader.js.map +1 -0
  57. package/dist/addressLookup/utils/inFlightRequests.js +50 -0
  58. package/dist/addressLookup/utils/inFlightRequests.js.map +1 -0
  59. package/dist/addressLookup/utils/intlAutocompleteBusinessRules.js +62 -0
  60. package/dist/addressLookup/utils/intlAutocompleteBusinessRules.js.map +1 -0
  61. package/dist/addressLookup/utils/requestCache.js +44 -0
  62. package/dist/addressLookup/utils/requestCache.js.map +1 -0
  63. package/dist/addressLookup/utils/requestRateLimiter.js +53 -0
  64. package/dist/addressLookup/utils/requestRateLimiter.js.map +1 -0
  65. package/dist/addressLookup/utils/smartyConfig.js +11 -0
  66. package/dist/addressLookup/utils/smartyConfig.js.map +1 -0
  67. package/dist/addressLookup/utils/validators.js +45 -0
  68. package/dist/addressLookup/utils/validators.js.map +1 -0
  69. package/dist/index.js +28 -1
  70. package/dist/index.js.map +1 -1
  71. package/dist/{ShippingAddressForm.js → shippingAddressForm/ShippingAddressForm.js} +2 -2
  72. package/dist/shippingAddressForm/ShippingAddressForm.js.map +1 -0
  73. package/dist/{components → shippingAddressForm/components}/ShippingField.js +32 -22
  74. package/dist/shippingAddressForm/components/ShippingField.js.map +1 -0
  75. package/dist/shippingAddressForm/hooks/useAddressFieldLabels.js.map +1 -0
  76. package/dist/shippingAddressForm/hooks/useShippingAddressForm.js.map +1 -0
  77. package/dist/{hooks → shippingAddressForm/hooks}/useShippingFormState.js +5 -0
  78. package/dist/shippingAddressForm/hooks/useShippingFormState.js.map +1 -0
  79. package/dist/shippingAddressForm/utils/emailVerify.js.map +1 -0
  80. package/dist/{utils → shippingAddressForm/utils}/shippingAddressForm.js +3 -3
  81. package/dist/shippingAddressForm/utils/shippingAddressForm.js.map +1 -0
  82. package/dist/shippingAddressForm/utils/shippingStrings.js.map +1 -0
  83. package/package.json +2 -3
  84. package/dist/ShippingAddressForm.js.map +0 -1
  85. package/dist/components/ShippingField.js.map +0 -1
  86. package/dist/hooks/useAddressFieldLabels.js.map +0 -1
  87. package/dist/hooks/useShippingAddressForm.js.map +0 -1
  88. package/dist/hooks/useShippingFormState.js.map +0 -1
  89. package/dist/utils/emailVerify.js.map +0 -1
  90. package/dist/utils/shippingAddressForm.js.map +0 -1
  91. package/dist/utils/shippingStrings.js.map +0 -1
  92. /package/dist/{hooks → shippingAddressForm/hooks}/useAddressFieldLabels.js +0 -0
  93. /package/dist/{hooks → shippingAddressForm/hooks}/useShippingAddressForm.js +0 -0
  94. /package/dist/{styles → shippingAddressForm/styles}/shippingAddressForm.css +0 -0
  95. /package/dist/{utils → shippingAddressForm/utils}/emailVerify.js +0 -0
  96. /package/dist/{utils → shippingAddressForm/utils}/shippingStrings.js +0 -0
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.withManualAddressVerificationEdit = exports.withAddressVerification = exports.isMajorManualEditField = exports.getManualEditVerificationStatus = exports.getIncomingVerificationStatus = exports.buildAddressVerification = void 0;
7
+ const VALID_VERIFICATION_STATUSES = new Set(['verified', 'autocomplete', 'unverified']);
8
+ const CONDITIONALLY_MAJOR_FIELDS = new Set(['address1', 'city', 'region', 'postalCode']);
9
+ const getIncomingVerificationStatus = (address = null) => {
10
+ var _address$verification;
11
+ const status = address === null || address === void 0 || (_address$verification = address.verification) === null || _address$verification === void 0 ? void 0 : _address$verification.status;
12
+ return VALID_VERIFICATION_STATUSES.has(status) ? status : 'unverified';
13
+ };
14
+ exports.getIncomingVerificationStatus = getIncomingVerificationStatus;
15
+ const buildAddressVerification = (status = 'unverified', source = null, options = {}) => {
16
+ const {
17
+ verifiedAt = status === 'unverified' ? null : new Date().toISOString(),
18
+ manuallyEdited = false,
19
+ editedFields = []
20
+ } = options;
21
+ const verification = {
22
+ status,
23
+ ...(source ? {
24
+ source
25
+ } : {}),
26
+ ...(verifiedAt ? {
27
+ verifiedAt
28
+ } : {}),
29
+ ...(manuallyEdited ? {
30
+ manuallyEdited: true
31
+ } : {}),
32
+ ...(editedFields.length ? {
33
+ editedFields: [...new Set(editedFields)]
34
+ } : {})
35
+ };
36
+ return verification;
37
+ };
38
+ exports.buildAddressVerification = buildAddressVerification;
39
+ const withAddressVerification = (address = {}, status = 'unverified', source = null, options = {}) => ({
40
+ ...address,
41
+ verification: buildAddressVerification(status, source, options)
42
+ });
43
+ exports.withAddressVerification = withAddressVerification;
44
+ const isMajorManualEditField = (field, lookupField = 'address1', requiredFields = []) => field === lookupField || CONDITIONALLY_MAJOR_FIELDS.has(field) && requiredFields.includes(field);
45
+ exports.isMajorManualEditField = isMajorManualEditField;
46
+ const getManualEditVerificationStatus = (currentStatus = 'unverified', field, lookupField = 'address1', requiredFields = []) => {
47
+ if (currentStatus === 'unverified') {
48
+ return 'unverified';
49
+ }
50
+ return isMajorManualEditField(field, lookupField, requiredFields) ? 'unverified' : currentStatus;
51
+ };
52
+ exports.getManualEditVerificationStatus = getManualEditVerificationStatus;
53
+ const withManualAddressVerificationEdit = (address = {}, field, nextStatus = 'unverified') => {
54
+ const existingVerification = (address === null || address === void 0 ? void 0 : address.verification) || {};
55
+ const editedFields = [...(existingVerification.editedFields || []), field];
56
+ return {
57
+ ...address,
58
+ verification: buildAddressVerification(nextStatus, existingVerification.source || null, {
59
+ verifiedAt: existingVerification.verifiedAt || null,
60
+ manuallyEdited: true,
61
+ editedFields
62
+ })
63
+ };
64
+ };
65
+ exports.withManualAddressVerificationEdit = withManualAddressVerificationEdit;
66
+ //# sourceMappingURL=addressVerification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addressVerification.js","names":["VALID_VERIFICATION_STATUSES","Set","CONDITIONALLY_MAJOR_FIELDS","getIncomingVerificationStatus","address","_address$verification","status","verification","has","exports","buildAddressVerification","source","options","verifiedAt","Date","toISOString","manuallyEdited","editedFields","length","withAddressVerification","isMajorManualEditField","field","lookupField","requiredFields","includes","getManualEditVerificationStatus","currentStatus","withManualAddressVerificationEdit","nextStatus","existingVerification"],"sources":["../../../src/addressLookup/utils/addressVerification.js"],"sourcesContent":["const VALID_VERIFICATION_STATUSES = new Set(['verified', 'autocomplete', 'unverified']);\nconst CONDITIONALLY_MAJOR_FIELDS = new Set(['address1', 'city', 'region', 'postalCode']);\n\nexport const getIncomingVerificationStatus = (address = null) => {\n const status = address?.verification?.status;\n return VALID_VERIFICATION_STATUSES.has(status) ? status : 'unverified';\n};\n\nexport const buildAddressVerification = (status = 'unverified', source = null, options = {}) => {\n const {\n verifiedAt = (status === 'unverified' ? null : new Date().toISOString()),\n manuallyEdited = false,\n editedFields = []\n } = options;\n\n const verification = {\n status,\n ...(source ? { source } : {}),\n ...(verifiedAt ? { verifiedAt } : {}),\n ...(manuallyEdited ? { manuallyEdited: true } : {}),\n ...(editedFields.length ? { editedFields: [...new Set(editedFields)] } : {})\n };\n\n return verification;\n};\n\nexport const withAddressVerification = (address = {}, status = 'unverified', source = null, options = {}) => ({\n ...address,\n verification: buildAddressVerification(status, source, options)\n});\n\nexport const isMajorManualEditField = (field, lookupField = 'address1', requiredFields = []) => (\n field === lookupField ||\n (CONDITIONALLY_MAJOR_FIELDS.has(field) && requiredFields.includes(field))\n);\n\nexport const getManualEditVerificationStatus = (\n currentStatus = 'unverified',\n field,\n lookupField = 'address1',\n requiredFields = []\n) => {\n if (currentStatus === 'unverified') {\n return 'unverified';\n }\n\n return isMajorManualEditField(field, lookupField, requiredFields) ?\n 'unverified' :\n currentStatus;\n};\n\nexport const withManualAddressVerificationEdit = (\n address = {},\n field,\n nextStatus = 'unverified'\n) => {\n const existingVerification = address?.verification || {};\n const editedFields = [...(existingVerification.editedFields || []), field];\n\n return {\n ...address,\n verification: buildAddressVerification(\n nextStatus,\n existingVerification.source || null,\n {\n verifiedAt: existingVerification.verifiedAt || null,\n manuallyEdited: true,\n editedFields\n }\n )\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.wrapAddress1ToAddress2 = void 0;
7
+ /**
8
+ * Wraps address1 text to address2 if it exceeds maxLength, breaking at word boundaries
9
+ * @param {string} address1 - The address1 text
10
+ * @param {string} address2 - The existing address2 text
11
+ * @param {number} maxLength - Maximum length for address1
12
+ * @returns {object} - { address1, address2 } with wrapped text
13
+ */
14
+ const wrapAddress1ToAddress2 = (address1, address2, maxLength) => {
15
+ if (!address1 || address1.length <= maxLength) {
16
+ return {
17
+ address1,
18
+ address2
19
+ };
20
+ }
21
+
22
+ // Find the last space before maxLength
23
+ let breakPoint = address1.lastIndexOf(' ', maxLength);
24
+
25
+ // If no space found or too close to start, just cut at maxLength
26
+ if (breakPoint === -1 || breakPoint < maxLength * 0.5) {
27
+ breakPoint = maxLength;
28
+ }
29
+ const wrappedAddress1 = address1.substring(0, breakPoint).trim();
30
+ const overflow = address1.substring(breakPoint).trim();
31
+
32
+ // Prepend overflow to address2 if it exists
33
+ const wrappedAddress2 = overflow + (address2 ? ' ' + address2 : '');
34
+ return {
35
+ address1: wrappedAddress1,
36
+ address2: wrappedAddress2
37
+ };
38
+ };
39
+ exports.wrapAddress1ToAddress2 = wrapAddress1ToAddress2;
40
+ //# sourceMappingURL=addressWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addressWrapper.js","names":["wrapAddress1ToAddress2","address1","address2","maxLength","length","breakPoint","lastIndexOf","wrappedAddress1","substring","trim","overflow","wrappedAddress2","exports"],"sources":["../../../src/addressLookup/utils/addressWrapper.js"],"sourcesContent":["/**\n * Wraps address1 text to address2 if it exceeds maxLength, breaking at word boundaries\n * @param {string} address1 - The address1 text\n * @param {string} address2 - The existing address2 text\n * @param {number} maxLength - Maximum length for address1\n * @returns {object} - { address1, address2 } with wrapped text\n */\nexport const wrapAddress1ToAddress2 = (address1, address2, maxLength) => {\n if (!address1 || address1.length <= maxLength) {\n return { address1, address2 };\n }\n\n // Find the last space before maxLength\n let breakPoint = address1.lastIndexOf(' ', maxLength);\n \n // If no space found or too close to start, just cut at maxLength\n if (breakPoint === -1 || breakPoint < maxLength * 0.5) {\n breakPoint = maxLength;\n }\n\n const wrappedAddress1 = address1.substring(0, breakPoint).trim();\n const overflow = address1.substring(breakPoint).trim();\n \n // Prepend overflow to address2 if it exists\n const wrappedAddress2 = overflow + (address2 ? ' ' + address2 : '');\n\n return {\n address1: wrappedAddress1,\n address2: wrappedAddress2\n };\n};\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,sBAAsB,GAAGA,CAACC,QAAQ,EAAEC,QAAQ,EAAEC,SAAS,KAAK;EACvE,IAAI,CAACF,QAAQ,IAAIA,QAAQ,CAACG,MAAM,IAAID,SAAS,EAAE;IAC7C,OAAO;MAAEF,QAAQ;MAAEC;IAAS,CAAC;EAC/B;;EAEA;EACA,IAAIG,UAAU,GAAGJ,QAAQ,CAACK,WAAW,CAAC,GAAG,EAAEH,SAAS,CAAC;;EAErD;EACA,IAAIE,UAAU,KAAK,CAAC,CAAC,IAAIA,UAAU,GAAGF,SAAS,GAAG,GAAG,EAAE;IACrDE,UAAU,GAAGF,SAAS;EACxB;EAEA,MAAMI,eAAe,GAAGN,QAAQ,CAACO,SAAS,CAAC,CAAC,EAAEH,UAAU,CAAC,CAACI,IAAI,CAAC,CAAC;EAChE,MAAMC,QAAQ,GAAGT,QAAQ,CAACO,SAAS,CAACH,UAAU,CAAC,CAACI,IAAI,CAAC,CAAC;;EAEtD;EACA,MAAME,eAAe,GAAGD,QAAQ,IAAIR,QAAQ,GAAG,GAAG,GAAGA,QAAQ,GAAG,EAAE,CAAC;EAEnE,OAAO;IACLD,QAAQ,EAAEM,eAAe;IACzBL,QAAQ,EAAES;EACZ,CAAC;AACH,CAAC;AAACC,OAAA,CAAAZ,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.labelStringsPropType = exports.formDefinitionPropType = exports.addressPropType = void 0;
7
+ var _propTypes = _interopRequireDefault(require("prop-types"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ const addressPropType = exports.addressPropType = _propTypes.default.shape({
10
+ address1: _propTypes.default.string,
11
+ address2: _propTypes.default.string,
12
+ city: _propTypes.default.string,
13
+ district: _propTypes.default.string,
14
+ region: _propTypes.default.string,
15
+ postalCode: _propTypes.default.string,
16
+ email: _propTypes.default.string,
17
+ latitude: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
18
+ longitude: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]),
19
+ verification: _propTypes.default.shape({
20
+ status: _propTypes.default.oneOf(['verified', 'autocomplete', 'unverified']),
21
+ source: _propTypes.default.string,
22
+ verifiedAt: _propTypes.default.string,
23
+ manuallyEdited: _propTypes.default.bool,
24
+ editedFields: _propTypes.default.arrayOf(_propTypes.default.string)
25
+ })
26
+ });
27
+ const formDefinitionPropType = exports.formDefinitionPropType = _propTypes.default.shape({
28
+ addressElements: _propTypes.default.arrayOf(_propTypes.default.shape({
29
+ field: _propTypes.default.string,
30
+ width: _propTypes.default.oneOf(['full', 'half', 'third']),
31
+ editable: _propTypes.default.bool,
32
+ maxLength: _propTypes.default.number,
33
+ required: _propTypes.default.bool
34
+ })),
35
+ lookupField: _propTypes.default.string,
36
+ requiredFields: _propTypes.default.arrayOf(_propTypes.default.string),
37
+ postalCodeRegex: _propTypes.default.instanceOf(RegExp),
38
+ verifyAfterAutocomplete: _propTypes.default.bool,
39
+ wrapAddress1ToAddress2: _propTypes.default.bool
40
+ });
41
+ const labelStringsPropType = exports.labelStringsPropType = _propTypes.default.shape({
42
+ address1Label: _propTypes.default.string,
43
+ address2Label: _propTypes.default.string,
44
+ cityLabel: _propTypes.default.string,
45
+ districtLabel: _propTypes.default.string,
46
+ regionLabel: _propTypes.default.string,
47
+ postalCodeLabel: _propTypes.default.string,
48
+ invalidEmail: _propTypes.default.string,
49
+ invalidPostalCode: _propTypes.default.string,
50
+ fieldRequired: _propTypes.default.string,
51
+ illegalCharacters: _propTypes.default.string,
52
+ rateLimited: _propTypes.default.string,
53
+ lookupError: _propTypes.default.string,
54
+ validationError: _propTypes.default.string,
55
+ loadingAddressForm: _propTypes.default.string,
56
+ switchToAutocomplete: _propTypes.default.string,
57
+ switchToManualEntry: _propTypes.default.string,
58
+ switchToManuelEntry: _propTypes.default.string,
59
+ addressLocation: _propTypes.default.string,
60
+ openInMaps: _propTypes.default.string,
61
+ usVerified: _propTypes.default.string,
62
+ usVerifiedMessage: _propTypes.default.string,
63
+ usMissingSecondaryTitle: _propTypes.default.string,
64
+ usMissingSecondaryMessage: _propTypes.default.string,
65
+ usInvalidSecondaryRequiredTitle: _propTypes.default.string,
66
+ usInvalidSecondaryRequiredMessage: _propTypes.default.string,
67
+ usInvalidSecondaryOptionalTitle: _propTypes.default.string,
68
+ usInvalidSecondaryOptionalMessage: _propTypes.default.string,
69
+ usVacantTitle: _propTypes.default.string,
70
+ usVacantMessage: _propTypes.default.string,
71
+ usNoStatTitle: _propTypes.default.string,
72
+ usNoStatMessage: _propTypes.default.string,
73
+ usNotConfirmedTitle: _propTypes.default.string,
74
+ usNotConfirmedMessage: _propTypes.default.string,
75
+ usNoResults: _propTypes.default.string,
76
+ intlVerifiedTitle: _propTypes.default.string,
77
+ intlVerifiedMessage: _propTypes.default.string,
78
+ intlVerifiedSubBuildingChangedTitle: _propTypes.default.string,
79
+ intlVerifiedSubBuildingChangedMessage: _propTypes.default.string,
80
+ intlPartialTitle: _propTypes.default.string,
81
+ intlPartialMessage: _propTypes.default.string,
82
+ intlAmbiguousTitle: _propTypes.default.string,
83
+ intlAmbiguousMessage: _propTypes.default.string,
84
+ intlNotVerifiedTitle: _propTypes.default.string,
85
+ intlNotVerifiedMessage: _propTypes.default.string,
86
+ intlNoResults: _propTypes.default.string,
87
+ smartyUsValidationStrings: _propTypes.default.shape({
88
+ usInvalidSecondaryOptionalMessage: _propTypes.default.string,
89
+ usInvalidSecondaryOptionalTitle: _propTypes.default.string,
90
+ usInvalidSecondaryRequiredMessage: _propTypes.default.string,
91
+ usInvalidSecondaryRequiredTitle: _propTypes.default.string,
92
+ usMissingSecondaryMessage: _propTypes.default.string,
93
+ usMissingSecondaryTitle: _propTypes.default.string,
94
+ usNoResults: _propTypes.default.string,
95
+ usNoStatMessage: _propTypes.default.string,
96
+ usNoStatTitle: _propTypes.default.string,
97
+ usNotConfirmedMessage: _propTypes.default.string,
98
+ usNotConfirmedTitle: _propTypes.default.string,
99
+ usVacantMessage: _propTypes.default.string,
100
+ usVacantTitle: _propTypes.default.string,
101
+ usVerified: _propTypes.default.string,
102
+ usVerifiedMessage: _propTypes.default.string
103
+ }),
104
+ smartyIntlValidationStrings: _propTypes.default.shape({
105
+ intlVerifiedTitle: _propTypes.default.string,
106
+ intlVerifiedMessage: _propTypes.default.string,
107
+ intlVerifiedSubBuildingChangedTitle: _propTypes.default.string,
108
+ intlVerifiedSubBuildingChangedMessage: _propTypes.default.string,
109
+ intlPartialTitle: _propTypes.default.string,
110
+ intlPartialMessage: _propTypes.default.string,
111
+ intlAmbiguousTitle: _propTypes.default.string,
112
+ intlAmbiguousMessage: _propTypes.default.string,
113
+ intlNotVerifiedTitle: _propTypes.default.string,
114
+ intlNotVerifiedMessage: _propTypes.default.string,
115
+ intlNoResults: _propTypes.default.string
116
+ })
117
+ });
118
+ //# sourceMappingURL=componentPropTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"componentPropTypes.js","names":["_propTypes","_interopRequireDefault","require","e","__esModule","default","addressPropType","exports","PropTypes","shape","address1","string","address2","city","district","region","postalCode","email","latitude","oneOfType","number","longitude","verification","status","oneOf","source","verifiedAt","manuallyEdited","bool","editedFields","arrayOf","formDefinitionPropType","addressElements","field","width","editable","maxLength","required","lookupField","requiredFields","postalCodeRegex","instanceOf","RegExp","verifyAfterAutocomplete","wrapAddress1ToAddress2","labelStringsPropType","address1Label","address2Label","cityLabel","districtLabel","regionLabel","postalCodeLabel","invalidEmail","invalidPostalCode","fieldRequired","illegalCharacters","rateLimited","lookupError","validationError","loadingAddressForm","switchToAutocomplete","switchToManualEntry","switchToManuelEntry","addressLocation","openInMaps","usVerified","usVerifiedMessage","usMissingSecondaryTitle","usMissingSecondaryMessage","usInvalidSecondaryRequiredTitle","usInvalidSecondaryRequiredMessage","usInvalidSecondaryOptionalTitle","usInvalidSecondaryOptionalMessage","usVacantTitle","usVacantMessage","usNoStatTitle","usNoStatMessage","usNotConfirmedTitle","usNotConfirmedMessage","usNoResults","intlVerifiedTitle","intlVerifiedMessage","intlVerifiedSubBuildingChangedTitle","intlVerifiedSubBuildingChangedMessage","intlPartialTitle","intlPartialMessage","intlAmbiguousTitle","intlAmbiguousMessage","intlNotVerifiedTitle","intlNotVerifiedMessage","intlNoResults","smartyUsValidationStrings","smartyIntlValidationStrings"],"sources":["../../../src/addressLookup/utils/componentPropTypes.js"],"sourcesContent":["import PropTypes from 'prop-types';\n\nexport const addressPropType = PropTypes.shape({\n address1: PropTypes.string,\n address2: PropTypes.string,\n city: PropTypes.string,\n district: PropTypes.string,\n region: PropTypes.string,\n postalCode: PropTypes.string,\n email: PropTypes.string,\n latitude: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n longitude: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\n verification: PropTypes.shape({\n status: PropTypes.oneOf(['verified', 'autocomplete', 'unverified']),\n source: PropTypes.string,\n verifiedAt: PropTypes.string,\n manuallyEdited: PropTypes.bool,\n editedFields: PropTypes.arrayOf(PropTypes.string)\n })\n});\n\nexport const formDefinitionPropType = PropTypes.shape({\n addressElements: PropTypes.arrayOf(PropTypes.shape({\n field: PropTypes.string,\n width: PropTypes.oneOf(['full', 'half', 'third']),\n editable: PropTypes.bool,\n maxLength: PropTypes.number,\n required: PropTypes.bool\n })),\n lookupField: PropTypes.string,\n requiredFields: PropTypes.arrayOf(PropTypes.string),\n postalCodeRegex: PropTypes.instanceOf(RegExp),\n verifyAfterAutocomplete: PropTypes.bool,\n wrapAddress1ToAddress2: PropTypes.bool\n});\n\nexport const labelStringsPropType = PropTypes.shape({\n address1Label: PropTypes.string,\n address2Label: PropTypes.string,\n cityLabel: PropTypes.string,\n districtLabel: PropTypes.string,\n regionLabel: PropTypes.string,\n postalCodeLabel: PropTypes.string,\n invalidEmail: PropTypes.string,\n invalidPostalCode: PropTypes.string,\n fieldRequired: PropTypes.string,\n illegalCharacters: PropTypes.string,\n rateLimited: PropTypes.string,\n lookupError: PropTypes.string,\n validationError: PropTypes.string,\n loadingAddressForm: PropTypes.string,\n switchToAutocomplete: PropTypes.string,\n switchToManualEntry: PropTypes.string,\n switchToManuelEntry: PropTypes.string,\n addressLocation: PropTypes.string,\n openInMaps: PropTypes.string,\n usVerified: PropTypes.string,\n usVerifiedMessage: PropTypes.string,\n usMissingSecondaryTitle: PropTypes.string,\n usMissingSecondaryMessage: PropTypes.string,\n usInvalidSecondaryRequiredTitle: PropTypes.string,\n usInvalidSecondaryRequiredMessage: PropTypes.string,\n usInvalidSecondaryOptionalTitle: PropTypes.string,\n usInvalidSecondaryOptionalMessage: PropTypes.string,\n usVacantTitle: PropTypes.string,\n usVacantMessage: PropTypes.string,\n usNoStatTitle: PropTypes.string,\n usNoStatMessage: PropTypes.string,\n usNotConfirmedTitle: PropTypes.string,\n usNotConfirmedMessage: PropTypes.string,\n usNoResults: PropTypes.string,\n intlVerifiedTitle: PropTypes.string,\n intlVerifiedMessage: PropTypes.string,\n intlVerifiedSubBuildingChangedTitle: PropTypes.string,\n intlVerifiedSubBuildingChangedMessage: PropTypes.string,\n intlPartialTitle: PropTypes.string,\n intlPartialMessage: PropTypes.string,\n intlAmbiguousTitle: PropTypes.string,\n intlAmbiguousMessage: PropTypes.string,\n intlNotVerifiedTitle: PropTypes.string,\n intlNotVerifiedMessage: PropTypes.string,\n intlNoResults: PropTypes.string,\n smartyUsValidationStrings: PropTypes.shape({\n usInvalidSecondaryOptionalMessage: PropTypes.string,\n usInvalidSecondaryOptionalTitle: PropTypes.string,\n usInvalidSecondaryRequiredMessage: PropTypes.string,\n usInvalidSecondaryRequiredTitle: PropTypes.string,\n usMissingSecondaryMessage: PropTypes.string,\n usMissingSecondaryTitle: PropTypes.string,\n usNoResults: PropTypes.string,\n usNoStatMessage: PropTypes.string,\n usNoStatTitle: PropTypes.string,\n usNotConfirmedMessage: PropTypes.string,\n usNotConfirmedTitle: PropTypes.string,\n usVacantMessage: PropTypes.string,\n usVacantTitle: PropTypes.string,\n usVerified: PropTypes.string,\n usVerifiedMessage: PropTypes.string\n }),\n smartyIntlValidationStrings: PropTypes.shape({\n intlVerifiedTitle: PropTypes.string,\n intlVerifiedMessage: PropTypes.string,\n intlVerifiedSubBuildingChangedTitle: PropTypes.string,\n intlVerifiedSubBuildingChangedMessage: PropTypes.string,\n intlPartialTitle: PropTypes.string,\n intlPartialMessage: PropTypes.string,\n intlAmbiguousTitle: PropTypes.string,\n intlAmbiguousMessage: PropTypes.string,\n intlNotVerifiedTitle: PropTypes.string,\n intlNotVerifiedMessage: PropTypes.string,\n intlNoResults: PropTypes.string\n })\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ensureGoogleMapsLoaded = void 0;
7
+ var _googleMaps = require("../config/googleMaps");
8
+ const GOOGLE_MAPS_SCRIPT_ERROR = 'The Google Maps JavaScript API could not load.';
9
+ let googleMapsLoadPromise = null;
10
+ const hasGoogleMapsImportLibrary = () => {
11
+ var _window$google;
12
+ return typeof window !== 'undefined' && Boolean((_window$google = window.google) === null || _window$google === void 0 || (_window$google = _window$google.maps) === null || _window$google === void 0 ? void 0 : _window$google.importLibrary);
13
+ };
14
+ const bootstrapGoogleMapsImportLibrary = (config = _googleMaps.GOOGLE_MAPS_CONFIG) => {
15
+ const googleNamespace = window.google || (window.google = {});
16
+ const mapsNamespace = googleNamespace.maps || (googleNamespace.maps = {});
17
+ if (mapsNamespace.importLibrary) {
18
+ return mapsNamespace.importLibrary;
19
+ }
20
+ let bootstrapPromise;
21
+ let scriptElement;
22
+ let bootstrapKey;
23
+ const requestedLibraries = new Set();
24
+ const params = new URLSearchParams();
25
+ const callbackName = '__ib__';
26
+ const loadScript = () => bootstrapPromise || (bootstrapPromise = new Promise((resolve, reject) => {
27
+ var _document$querySelect;
28
+ scriptElement = document.createElement('script');
29
+ params.set('libraries', [...requestedLibraries].join(','));
30
+ for (bootstrapKey in config) {
31
+ params.set(bootstrapKey.replace(/[A-Z]/g, token => `_${token[0].toLowerCase()}`), config[bootstrapKey]);
32
+ }
33
+ params.set('callback', `google.maps.${callbackName}`);
34
+ scriptElement.src = `https://maps.googleapis.com/maps/api/js?${params}`;
35
+ scriptElement.async = true;
36
+ scriptElement.defer = true;
37
+ scriptElement.setAttribute('data-ns-address-lookup-google-maps', 'true');
38
+ mapsNamespace[callbackName] = resolve;
39
+ scriptElement.onerror = () => {
40
+ bootstrapPromise = null;
41
+ googleMapsLoadPromise = null;
42
+ delete mapsNamespace[callbackName];
43
+ delete mapsNamespace.importLibrary;
44
+ scriptElement.remove();
45
+ reject(new Error(GOOGLE_MAPS_SCRIPT_ERROR));
46
+ };
47
+ scriptElement.nonce = ((_document$querySelect = document.querySelector('script[nonce]')) === null || _document$querySelect === void 0 ? void 0 : _document$querySelect.nonce) || '';
48
+ document.head.append(scriptElement);
49
+ }));
50
+ mapsNamespace.importLibrary = (libraryName, ...args) => requestedLibraries.add(libraryName) && loadScript().then(() => mapsNamespace.importLibrary(libraryName, ...args));
51
+ return mapsNamespace.importLibrary;
52
+ };
53
+ const ensureGoogleMapsLoaded = async () => {
54
+ if (typeof window === 'undefined' || typeof document === 'undefined') {
55
+ return false;
56
+ }
57
+ if (!googleMapsLoadPromise) {
58
+ const importLibrary = hasGoogleMapsImportLibrary() ? window.google.maps.importLibrary : bootstrapGoogleMapsImportLibrary();
59
+ googleMapsLoadPromise = importLibrary('maps').catch(error => {
60
+ googleMapsLoadPromise = null;
61
+ throw error;
62
+ });
63
+ }
64
+ await googleMapsLoadPromise;
65
+ return true;
66
+ };
67
+ exports.ensureGoogleMapsLoaded = ensureGoogleMapsLoaded;
68
+ //# sourceMappingURL=googleMapsLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"googleMapsLoader.js","names":["_googleMaps","require","GOOGLE_MAPS_SCRIPT_ERROR","googleMapsLoadPromise","hasGoogleMapsImportLibrary","_window$google","window","Boolean","google","maps","importLibrary","bootstrapGoogleMapsImportLibrary","config","GOOGLE_MAPS_CONFIG","googleNamespace","mapsNamespace","bootstrapPromise","scriptElement","bootstrapKey","requestedLibraries","Set","params","URLSearchParams","callbackName","loadScript","Promise","resolve","reject","_document$querySelect","document","createElement","set","join","replace","token","toLowerCase","src","async","defer","setAttribute","onerror","remove","Error","nonce","querySelector","head","append","libraryName","args","add","then","ensureGoogleMapsLoaded","catch","error","exports"],"sources":["../../../src/addressLookup/utils/googleMapsLoader.js"],"sourcesContent":["import { GOOGLE_MAPS_CONFIG } from '../config/googleMaps';\n\nconst GOOGLE_MAPS_SCRIPT_ERROR = 'The Google Maps JavaScript API could not load.';\n\nlet googleMapsLoadPromise = null;\n\nconst hasGoogleMapsImportLibrary = () => (\n typeof window !== 'undefined' &&\n Boolean(window.google?.maps?.importLibrary)\n);\n\nconst bootstrapGoogleMapsImportLibrary = (config = GOOGLE_MAPS_CONFIG) => {\n const googleNamespace = window.google || (window.google = {});\n const mapsNamespace = googleNamespace.maps || (googleNamespace.maps = {});\n\n if (mapsNamespace.importLibrary) {\n return mapsNamespace.importLibrary;\n }\n\n let bootstrapPromise;\n let scriptElement;\n let bootstrapKey;\n const requestedLibraries = new Set();\n const params = new URLSearchParams();\n const callbackName = '__ib__';\n\n const loadScript = () => (\n bootstrapPromise || (bootstrapPromise = new Promise((resolve, reject) => {\n scriptElement = document.createElement('script');\n params.set('libraries', [...requestedLibraries].join(','));\n\n for (bootstrapKey in config) {\n params.set(\n bootstrapKey.replace(/[A-Z]/g, (token) => `_${token[0].toLowerCase()}`),\n config[bootstrapKey]\n );\n }\n\n params.set('callback', `google.maps.${callbackName}`);\n scriptElement.src = `https://maps.googleapis.com/maps/api/js?${params}`;\n scriptElement.async = true;\n scriptElement.defer = true;\n scriptElement.setAttribute('data-ns-address-lookup-google-maps', 'true');\n mapsNamespace[callbackName] = resolve;\n scriptElement.onerror = () => {\n bootstrapPromise = null;\n googleMapsLoadPromise = null;\n delete mapsNamespace[callbackName];\n delete mapsNamespace.importLibrary;\n scriptElement.remove();\n reject(new Error(GOOGLE_MAPS_SCRIPT_ERROR));\n };\n scriptElement.nonce = document.querySelector('script[nonce]')?.nonce || '';\n document.head.append(scriptElement);\n }))\n );\n\n mapsNamespace.importLibrary = (libraryName, ...args) => (\n requestedLibraries.add(libraryName) &&\n loadScript().then(() => mapsNamespace.importLibrary(libraryName, ...args))\n );\n\n return mapsNamespace.importLibrary;\n};\n\nexport const ensureGoogleMapsLoaded = async () => {\n if (typeof window === 'undefined' || typeof document === 'undefined') {\n return false;\n }\n\n if (!googleMapsLoadPromise) {\n const importLibrary = hasGoogleMapsImportLibrary() ?\n window.google.maps.importLibrary :\n bootstrapGoogleMapsImportLibrary();\n\n googleMapsLoadPromise = importLibrary('maps').catch((error) => {\n googleMapsLoadPromise = null;\n throw error;\n });\n }\n\n await googleMapsLoadPromise;\n return true;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.settleInFlightRequest = exports.setInFlightRequest = exports.retainInFlightRequest = exports.releaseInFlightRequest = exports.getInFlightRequest = exports.clearAllInFlightRequests = void 0;
7
+ const inFlightRequests = new Map();
8
+ const getInFlightRequest = key => inFlightRequests.get(key) || null;
9
+ exports.getInFlightRequest = getInFlightRequest;
10
+ const setInFlightRequest = (key, request) => {
11
+ inFlightRequests.set(key, {
12
+ ...request,
13
+ subscribers: 0
14
+ });
15
+ };
16
+ exports.setInFlightRequest = setInFlightRequest;
17
+ const retainInFlightRequest = key => {
18
+ const current = inFlightRequests.get(key);
19
+ if (!current) {
20
+ return null;
21
+ }
22
+ current.subscribers += 1;
23
+ return current;
24
+ };
25
+ exports.retainInFlightRequest = retainInFlightRequest;
26
+ const releaseInFlightRequest = (key, request) => {
27
+ const current = inFlightRequests.get(key);
28
+ if (current === request) {
29
+ current.subscribers = Math.max(0, current.subscribers - 1);
30
+ if (current.subscribers === 0 && current.settled) {
31
+ inFlightRequests.delete(key);
32
+ }
33
+ }
34
+ };
35
+ exports.releaseInFlightRequest = releaseInFlightRequest;
36
+ const settleInFlightRequest = (key, request) => {
37
+ const current = inFlightRequests.get(key);
38
+ if (current === request) {
39
+ current.settled = true;
40
+ if (current.subscribers === 0) {
41
+ inFlightRequests.delete(key);
42
+ }
43
+ }
44
+ };
45
+ exports.settleInFlightRequest = settleInFlightRequest;
46
+ const clearAllInFlightRequests = () => {
47
+ inFlightRequests.clear();
48
+ };
49
+ exports.clearAllInFlightRequests = clearAllInFlightRequests;
50
+ //# sourceMappingURL=inFlightRequests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inFlightRequests.js","names":["inFlightRequests","Map","getInFlightRequest","key","get","exports","setInFlightRequest","request","set","subscribers","retainInFlightRequest","current","releaseInFlightRequest","Math","max","settled","delete","settleInFlightRequest","clearAllInFlightRequests","clear"],"sources":["../../../src/addressLookup/utils/inFlightRequests.js"],"sourcesContent":["const inFlightRequests = new Map();\n\nexport const getInFlightRequest = (key) => inFlightRequests.get(key) || null;\n\nexport const setInFlightRequest = (key, request) => {\n inFlightRequests.set(key, {\n ...request,\n subscribers: 0\n });\n};\n\nexport const retainInFlightRequest = (key) => {\n const current = inFlightRequests.get(key);\n if (!current) {\n return null;\n }\n\n current.subscribers += 1;\n return current;\n};\n\nexport const releaseInFlightRequest = (key, request) => {\n const current = inFlightRequests.get(key);\n if (current === request) {\n current.subscribers = Math.max(0, current.subscribers - 1);\n if (current.subscribers === 0 && current.settled) {\n inFlightRequests.delete(key);\n }\n }\n};\n\nexport const settleInFlightRequest = (key, request) => {\n const current = inFlightRequests.get(key);\n if (current === request) {\n current.settled = true;\n if (current.subscribers === 0) {\n inFlightRequests.delete(key);\n }\n }\n};\n\nexport const clearAllInFlightRequests = () => {\n inFlightRequests.clear();\n};\n"],"mappings":";;;;;;AAAA,MAAMA,gBAAgB,GAAG,IAAIC,GAAG,CAAC,CAAC;AAE3B,MAAMC,kBAAkB,GAAIC,GAAG,IAAKH,gBAAgB,CAACI,GAAG,CAACD,GAAG,CAAC,IAAI,IAAI;AAACE,OAAA,CAAAH,kBAAA,GAAAA,kBAAA;AAEtE,MAAMI,kBAAkB,GAAGA,CAACH,GAAG,EAAEI,OAAO,KAAK;EAClDP,gBAAgB,CAACQ,GAAG,CAACL,GAAG,EAAE;IACxB,GAAGI,OAAO;IACVE,WAAW,EAAE;EACf,CAAC,CAAC;AACJ,CAAC;AAACJ,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEK,MAAMI,qBAAqB,GAAIP,GAAG,IAAK;EAC5C,MAAMQ,OAAO,GAAGX,gBAAgB,CAACI,GAAG,CAACD,GAAG,CAAC;EACzC,IAAI,CAACQ,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEAA,OAAO,CAACF,WAAW,IAAI,CAAC;EACxB,OAAOE,OAAO;AAChB,CAAC;AAACN,OAAA,CAAAK,qBAAA,GAAAA,qBAAA;AAEK,MAAME,sBAAsB,GAAGA,CAACT,GAAG,EAAEI,OAAO,KAAK;EACtD,MAAMI,OAAO,GAAGX,gBAAgB,CAACI,GAAG,CAACD,GAAG,CAAC;EACzC,IAAIQ,OAAO,KAAKJ,OAAO,EAAE;IACvBI,OAAO,CAACF,WAAW,GAAGI,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,OAAO,CAACF,WAAW,GAAG,CAAC,CAAC;IAC1D,IAAIE,OAAO,CAACF,WAAW,KAAK,CAAC,IAAIE,OAAO,CAACI,OAAO,EAAE;MAChDf,gBAAgB,CAACgB,MAAM,CAACb,GAAG,CAAC;IAC9B;EACF;AACF,CAAC;AAACE,OAAA,CAAAO,sBAAA,GAAAA,sBAAA;AAEK,MAAMK,qBAAqB,GAAGA,CAACd,GAAG,EAAEI,OAAO,KAAK;EACrD,MAAMI,OAAO,GAAGX,gBAAgB,CAACI,GAAG,CAACD,GAAG,CAAC;EACzC,IAAIQ,OAAO,KAAKJ,OAAO,EAAE;IACvBI,OAAO,CAACI,OAAO,GAAG,IAAI;IACtB,IAAIJ,OAAO,CAACF,WAAW,KAAK,CAAC,EAAE;MAC7BT,gBAAgB,CAACgB,MAAM,CAACb,GAAG,CAAC;IAC9B;EACF;AACF,CAAC;AAACE,OAAA,CAAAY,qBAAA,GAAAA,qBAAA;AAEK,MAAMC,wBAAwB,GAAGA,CAAA,KAAM;EAC5ClB,gBAAgB,CAACmB,KAAK,CAAC,CAAC;AAC1B,CAAC;AAACd,OAAA,CAAAa,wBAAA,GAAAA,wBAAA","ignoreList":[]}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.stripJpStreetNumberSuffix = exports.applyIntlAutocompleteBusinessRules = void 0;
7
+ const JP_STREET_NUMBER_SUFFIX_REGEX = /\s\d+(?:-\d+)*$/;
8
+ const stripJpStreetNumberSuffix = (value = '') => String(value).replace(JP_STREET_NUMBER_SUFFIX_REGEX, '').trim();
9
+ exports.stripJpStreetNumberSuffix = stripJpStreetNumberSuffix;
10
+ const buildSummaryDisplayText = (candidate = {}) => {
11
+ let displayText = candidate.address_text || '';
12
+ if (candidate.entries > 1) {
13
+ displayText += ` (${candidate.entries})`;
14
+ }
15
+ return displayText;
16
+ };
17
+ const buildDetailedDisplayText = (candidate = {}) => [candidate.street, candidate.locality, candidate.administrative_area, candidate.postal_code].filter(Boolean).join(', ');
18
+ const normalizeJpSuggestion = (candidate = {}) => {
19
+ if (candidate.isDetailed && candidate.street) {
20
+ const street = stripJpStreetNumberSuffix(candidate.street);
21
+ return {
22
+ ...candidate,
23
+ street,
24
+ displayText: buildDetailedDisplayText({
25
+ ...candidate,
26
+ street
27
+ })
28
+ };
29
+ }
30
+ if (candidate.entries === 1 && candidate.address_text) {
31
+ const addressText = stripJpStreetNumberSuffix(candidate.address_text);
32
+ return {
33
+ ...candidate,
34
+ address_text: addressText,
35
+ displayText: buildSummaryDisplayText({
36
+ ...candidate,
37
+ address_text: addressText
38
+ })
39
+ };
40
+ }
41
+ return candidate;
42
+ };
43
+ const dedupeSuggestions = (suggestions = []) => {
44
+ const seen = new Set();
45
+ return suggestions.filter(candidate => {
46
+ const dedupeKey = [candidate.isDetailed ? 'detailed' : 'summary', candidate.displayText, candidate.street || '', candidate.address_text || ''].join('|');
47
+ if (seen.has(dedupeKey)) {
48
+ return false;
49
+ }
50
+ seen.add(dedupeKey);
51
+ return true;
52
+ });
53
+ };
54
+ const applyJpAutocompleteBusinessRules = (suggestions = []) => dedupeSuggestions(suggestions.map(normalizeJpSuggestion));
55
+ const applyIntlAutocompleteBusinessRules = (countryCode, suggestions = []) => {
56
+ if (countryCode !== 'JP') {
57
+ return suggestions;
58
+ }
59
+ return applyJpAutocompleteBusinessRules(suggestions);
60
+ };
61
+ exports.applyIntlAutocompleteBusinessRules = applyIntlAutocompleteBusinessRules;
62
+ //# sourceMappingURL=intlAutocompleteBusinessRules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intlAutocompleteBusinessRules.js","names":["JP_STREET_NUMBER_SUFFIX_REGEX","stripJpStreetNumberSuffix","value","String","replace","trim","exports","buildSummaryDisplayText","candidate","displayText","address_text","entries","buildDetailedDisplayText","street","locality","administrative_area","postal_code","filter","Boolean","join","normalizeJpSuggestion","isDetailed","addressText","dedupeSuggestions","suggestions","seen","Set","dedupeKey","has","add","applyJpAutocompleteBusinessRules","map","applyIntlAutocompleteBusinessRules","countryCode"],"sources":["../../../src/addressLookup/utils/intlAutocompleteBusinessRules.js"],"sourcesContent":["const JP_STREET_NUMBER_SUFFIX_REGEX = /\\s\\d+(?:-\\d+)*$/;\n\nconst stripJpStreetNumberSuffix = (value = '') => String(value).replace(JP_STREET_NUMBER_SUFFIX_REGEX, '').trim();\n\nconst buildSummaryDisplayText = (candidate = {}) => {\n let displayText = candidate.address_text || '';\n\n if (candidate.entries > 1) {\n displayText += ` (${candidate.entries})`;\n }\n\n return displayText;\n};\n\nconst buildDetailedDisplayText = (candidate = {}) => (\n [\n candidate.street,\n candidate.locality,\n candidate.administrative_area,\n candidate.postal_code\n ].filter(Boolean).join(', ')\n);\n\nconst normalizeJpSuggestion = (candidate = {}) => {\n if (candidate.isDetailed && candidate.street) {\n const street = stripJpStreetNumberSuffix(candidate.street);\n\n return {\n ...candidate,\n street,\n displayText: buildDetailedDisplayText({\n ...candidate,\n street\n })\n };\n }\n\n if (candidate.entries === 1 && candidate.address_text) {\n const addressText = stripJpStreetNumberSuffix(candidate.address_text);\n\n return {\n ...candidate,\n address_text: addressText,\n displayText: buildSummaryDisplayText({\n ...candidate,\n address_text: addressText\n })\n };\n }\n\n return candidate;\n};\n\nconst dedupeSuggestions = (suggestions = []) => {\n const seen = new Set();\n\n return suggestions.filter((candidate) => {\n const dedupeKey = [\n candidate.isDetailed ? 'detailed' : 'summary',\n candidate.displayText,\n candidate.street || '',\n candidate.address_text || ''\n ].join('|');\n\n if (seen.has(dedupeKey)) {\n return false;\n }\n\n seen.add(dedupeKey);\n return true;\n });\n};\n\nconst applyJpAutocompleteBusinessRules = (suggestions = []) => (\n dedupeSuggestions(suggestions.map(normalizeJpSuggestion))\n);\n\nexport const applyIntlAutocompleteBusinessRules = (countryCode, suggestions = []) => {\n if (countryCode !== 'JP') {\n return suggestions;\n }\n\n return applyJpAutocompleteBusinessRules(suggestions);\n};\n\nexport { stripJpStreetNumberSuffix };\n"],"mappings":";;;;;;AAAA,MAAMA,6BAA6B,GAAG,iBAAiB;AAEvD,MAAMC,yBAAyB,GAAGA,CAACC,KAAK,GAAG,EAAE,KAAKC,MAAM,CAACD,KAAK,CAAC,CAACE,OAAO,CAACJ,6BAA6B,EAAE,EAAE,CAAC,CAACK,IAAI,CAAC,CAAC;AAACC,OAAA,CAAAL,yBAAA,GAAAA,yBAAA;AAElH,MAAMM,uBAAuB,GAAGA,CAACC,SAAS,GAAG,CAAC,CAAC,KAAK;EAClD,IAAIC,WAAW,GAAGD,SAAS,CAACE,YAAY,IAAI,EAAE;EAE9C,IAAIF,SAAS,CAACG,OAAO,GAAG,CAAC,EAAE;IACzBF,WAAW,IAAI,KAAKD,SAAS,CAACG,OAAO,GAAG;EAC1C;EAEA,OAAOF,WAAW;AACpB,CAAC;AAED,MAAMG,wBAAwB,GAAGA,CAACJ,SAAS,GAAG,CAAC,CAAC,KAC9C,CACEA,SAAS,CAACK,MAAM,EAChBL,SAAS,CAACM,QAAQ,EAClBN,SAAS,CAACO,mBAAmB,EAC7BP,SAAS,CAACQ,WAAW,CACtB,CAACC,MAAM,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,IAAI,CAC5B;AAED,MAAMC,qBAAqB,GAAGA,CAACZ,SAAS,GAAG,CAAC,CAAC,KAAK;EAChD,IAAIA,SAAS,CAACa,UAAU,IAAIb,SAAS,CAACK,MAAM,EAAE;IAC5C,MAAMA,MAAM,GAAGZ,yBAAyB,CAACO,SAAS,CAACK,MAAM,CAAC;IAE1D,OAAO;MACL,GAAGL,SAAS;MACZK,MAAM;MACNJ,WAAW,EAAEG,wBAAwB,CAAC;QACpC,GAAGJ,SAAS;QACZK;MACF,CAAC;IACH,CAAC;EACH;EAEA,IAAIL,SAAS,CAACG,OAAO,KAAK,CAAC,IAAIH,SAAS,CAACE,YAAY,EAAE;IACrD,MAAMY,WAAW,GAAGrB,yBAAyB,CAACO,SAAS,CAACE,YAAY,CAAC;IAErE,OAAO;MACL,GAAGF,SAAS;MACZE,YAAY,EAAEY,WAAW;MACzBb,WAAW,EAAEF,uBAAuB,CAAC;QACnC,GAAGC,SAAS;QACZE,YAAY,EAAEY;MAChB,CAAC;IACH,CAAC;EACH;EAEA,OAAOd,SAAS;AAClB,CAAC;AAED,MAAMe,iBAAiB,GAAGA,CAACC,WAAW,GAAG,EAAE,KAAK;EAC9C,MAAMC,IAAI,GAAG,IAAIC,GAAG,CAAC,CAAC;EAEtB,OAAOF,WAAW,CAACP,MAAM,CAAET,SAAS,IAAK;IACvC,MAAMmB,SAAS,GAAG,CAChBnB,SAAS,CAACa,UAAU,GAAG,UAAU,GAAG,SAAS,EAC7Cb,SAAS,CAACC,WAAW,EACrBD,SAAS,CAACK,MAAM,IAAI,EAAE,EACtBL,SAAS,CAACE,YAAY,IAAI,EAAE,CAC7B,CAACS,IAAI,CAAC,GAAG,CAAC;IAEX,IAAIM,IAAI,CAACG,GAAG,CAACD,SAAS,CAAC,EAAE;MACvB,OAAO,KAAK;IACd;IAEAF,IAAI,CAACI,GAAG,CAACF,SAAS,CAAC;IACnB,OAAO,IAAI;EACb,CAAC,CAAC;AACJ,CAAC;AAED,MAAMG,gCAAgC,GAAGA,CAACN,WAAW,GAAG,EAAE,KACxDD,iBAAiB,CAACC,WAAW,CAACO,GAAG,CAACX,qBAAqB,CAAC,CACzD;AAEM,MAAMY,kCAAkC,GAAGA,CAACC,WAAW,EAAET,WAAW,GAAG,EAAE,KAAK;EACnF,IAAIS,WAAW,KAAK,IAAI,EAAE;IACxB,OAAOT,WAAW;EACpB;EAEA,OAAOM,gCAAgC,CAACN,WAAW,CAAC;AACtD,CAAC;AAAClB,OAAA,CAAA0B,kCAAA,GAAAA,kCAAA","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.setCachedValue = exports.getCachedValue = exports.clearCacheNamespace = exports.clearAllRequestCaches = void 0;
7
+ const DEFAULT_TTL_MS = 60 * 1000;
8
+ const stores = new Map();
9
+ const getStore = namespace => {
10
+ if (!stores.has(namespace)) {
11
+ stores.set(namespace, new Map());
12
+ }
13
+ return stores.get(namespace);
14
+ };
15
+ const getCachedValue = (namespace, key) => {
16
+ const store = getStore(namespace);
17
+ const cached = store.get(key);
18
+ if (!cached) {
19
+ return null;
20
+ }
21
+ if (cached.expiresAt <= Date.now()) {
22
+ store.delete(key);
23
+ return null;
24
+ }
25
+ return cached.value;
26
+ };
27
+ exports.getCachedValue = getCachedValue;
28
+ const setCachedValue = (namespace, key, value, ttlMs = DEFAULT_TTL_MS) => {
29
+ const store = getStore(namespace);
30
+ store.set(key, {
31
+ value,
32
+ expiresAt: Date.now() + ttlMs
33
+ });
34
+ };
35
+ exports.setCachedValue = setCachedValue;
36
+ const clearCacheNamespace = namespace => {
37
+ stores.delete(namespace);
38
+ };
39
+ exports.clearCacheNamespace = clearCacheNamespace;
40
+ const clearAllRequestCaches = () => {
41
+ stores.clear();
42
+ };
43
+ exports.clearAllRequestCaches = clearAllRequestCaches;
44
+ //# sourceMappingURL=requestCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestCache.js","names":["DEFAULT_TTL_MS","stores","Map","getStore","namespace","has","set","get","getCachedValue","key","store","cached","expiresAt","Date","now","delete","value","exports","setCachedValue","ttlMs","clearCacheNamespace","clearAllRequestCaches","clear"],"sources":["../../../src/addressLookup/utils/requestCache.js"],"sourcesContent":["const DEFAULT_TTL_MS = 60 * 1000;\n\nconst stores = new Map();\n\nconst getStore = (namespace) => {\n if (!stores.has(namespace)) {\n stores.set(namespace, new Map());\n }\n\n return stores.get(namespace);\n};\n\nexport const getCachedValue = (namespace, key) => {\n const store = getStore(namespace);\n const cached = store.get(key);\n\n if (!cached) {\n return null;\n }\n\n if (cached.expiresAt <= Date.now()) {\n store.delete(key);\n return null;\n }\n\n return cached.value;\n};\n\nexport const setCachedValue = (namespace, key, value, ttlMs = DEFAULT_TTL_MS) => {\n const store = getStore(namespace);\n store.set(key, {\n value,\n expiresAt: Date.now() + ttlMs\n });\n};\n\nexport const clearCacheNamespace = (namespace) => {\n stores.delete(namespace);\n};\n\nexport const clearAllRequestCaches = () => {\n stores.clear();\n};\n"],"mappings":";;;;;;AAAA,MAAMA,cAAc,GAAG,EAAE,GAAG,IAAI;AAEhC,MAAMC,MAAM,GAAG,IAAIC,GAAG,CAAC,CAAC;AAExB,MAAMC,QAAQ,GAAIC,SAAS,IAAK;EAC9B,IAAI,CAACH,MAAM,CAACI,GAAG,CAACD,SAAS,CAAC,EAAE;IAC1BH,MAAM,CAACK,GAAG,CAACF,SAAS,EAAE,IAAIF,GAAG,CAAC,CAAC,CAAC;EAClC;EAEA,OAAOD,MAAM,CAACM,GAAG,CAACH,SAAS,CAAC;AAC9B,CAAC;AAEM,MAAMI,cAAc,GAAGA,CAACJ,SAAS,EAAEK,GAAG,KAAK;EAChD,MAAMC,KAAK,GAAGP,QAAQ,CAACC,SAAS,CAAC;EACjC,MAAMO,MAAM,GAAGD,KAAK,CAACH,GAAG,CAACE,GAAG,CAAC;EAE7B,IAAI,CAACE,MAAM,EAAE;IACX,OAAO,IAAI;EACb;EAEA,IAAIA,MAAM,CAACC,SAAS,IAAIC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAE;IAClCJ,KAAK,CAACK,MAAM,CAACN,GAAG,CAAC;IACjB,OAAO,IAAI;EACb;EAEA,OAAOE,MAAM,CAACK,KAAK;AACrB,CAAC;AAACC,OAAA,CAAAT,cAAA,GAAAA,cAAA;AAEK,MAAMU,cAAc,GAAGA,CAACd,SAAS,EAAEK,GAAG,EAAEO,KAAK,EAAEG,KAAK,GAAGnB,cAAc,KAAK;EAC/E,MAAMU,KAAK,GAAGP,QAAQ,CAACC,SAAS,CAAC;EACjCM,KAAK,CAACJ,GAAG,CAACG,GAAG,EAAE;IACbO,KAAK;IACLJ,SAAS,EAAEC,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGK;EAC1B,CAAC,CAAC;AACJ,CAAC;AAACF,OAAA,CAAAC,cAAA,GAAAA,cAAA;AAEK,MAAME,mBAAmB,GAAIhB,SAAS,IAAK;EAChDH,MAAM,CAACc,MAAM,CAACX,SAAS,CAAC;AAC1B,CAAC;AAACa,OAAA,CAAAG,mBAAA,GAAAA,mBAAA;AAEK,MAAMC,qBAAqB,GAAGA,CAAA,KAAM;EACzCpB,MAAM,CAACqB,KAAK,CAAC,CAAC;AAChB,CAAC;AAACL,OAAA,CAAAI,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.clearRateLimiter = exports.clearAllRateLimiters = exports.checkRateLimit = void 0;
7
+ const limiters = new Map();
8
+ const getLimiterState = namespace => {
9
+ if (!limiters.has(namespace)) {
10
+ limiters.set(namespace, {
11
+ timestamps: [],
12
+ cooldownUntil: 0
13
+ });
14
+ }
15
+ return limiters.get(namespace);
16
+ };
17
+ const checkRateLimit = (namespace, {
18
+ limit,
19
+ windowMs,
20
+ cooldownMs
21
+ }) => {
22
+ const state = getLimiterState(namespace);
23
+ const now = Date.now();
24
+ if (state.cooldownUntil > now) {
25
+ return {
26
+ allowed: false,
27
+ retryAfterMs: state.cooldownUntil - now
28
+ };
29
+ }
30
+ state.timestamps = state.timestamps.filter(timestamp => now - timestamp < windowMs);
31
+ if (state.timestamps.length >= limit) {
32
+ state.cooldownUntil = now + cooldownMs;
33
+ return {
34
+ allowed: false,
35
+ retryAfterMs: cooldownMs
36
+ };
37
+ }
38
+ state.timestamps.push(now);
39
+ return {
40
+ allowed: true,
41
+ retryAfterMs: 0
42
+ };
43
+ };
44
+ exports.checkRateLimit = checkRateLimit;
45
+ const clearRateLimiter = namespace => {
46
+ limiters.delete(namespace);
47
+ };
48
+ exports.clearRateLimiter = clearRateLimiter;
49
+ const clearAllRateLimiters = () => {
50
+ limiters.clear();
51
+ };
52
+ exports.clearAllRateLimiters = clearAllRateLimiters;
53
+ //# sourceMappingURL=requestRateLimiter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestRateLimiter.js","names":["limiters","Map","getLimiterState","namespace","has","set","timestamps","cooldownUntil","get","checkRateLimit","limit","windowMs","cooldownMs","state","now","Date","allowed","retryAfterMs","filter","timestamp","length","push","exports","clearRateLimiter","delete","clearAllRateLimiters","clear"],"sources":["../../../src/addressLookup/utils/requestRateLimiter.js"],"sourcesContent":["const limiters = new Map();\n\nconst getLimiterState = (namespace) => {\n if (!limiters.has(namespace)) {\n limiters.set(namespace, {\n timestamps: [],\n cooldownUntil: 0\n });\n }\n\n return limiters.get(namespace);\n};\n\nexport const checkRateLimit = (namespace, { limit, windowMs, cooldownMs }) => {\n const state = getLimiterState(namespace);\n const now = Date.now();\n\n if (state.cooldownUntil > now) {\n return {\n allowed: false,\n retryAfterMs: state.cooldownUntil - now\n };\n }\n\n state.timestamps = state.timestamps.filter((timestamp) => now - timestamp < windowMs);\n\n if (state.timestamps.length >= limit) {\n state.cooldownUntil = now + cooldownMs;\n return {\n allowed: false,\n retryAfterMs: cooldownMs\n };\n }\n\n state.timestamps.push(now);\n return {\n allowed: true,\n retryAfterMs: 0\n };\n};\n\nexport const clearRateLimiter = (namespace) => {\n limiters.delete(namespace);\n};\n\nexport const clearAllRateLimiters = () => {\n limiters.clear();\n};\n"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAG,IAAIC,GAAG,CAAC,CAAC;AAE1B,MAAMC,eAAe,GAAIC,SAAS,IAAK;EACrC,IAAI,CAACH,QAAQ,CAACI,GAAG,CAACD,SAAS,CAAC,EAAE;IAC5BH,QAAQ,CAACK,GAAG,CAACF,SAAS,EAAE;MACtBG,UAAU,EAAE,EAAE;MACdC,aAAa,EAAE;IACjB,CAAC,CAAC;EACJ;EAEA,OAAOP,QAAQ,CAACQ,GAAG,CAACL,SAAS,CAAC;AAChC,CAAC;AAEM,MAAMM,cAAc,GAAGA,CAACN,SAAS,EAAE;EAAEO,KAAK;EAAEC,QAAQ;EAAEC;AAAW,CAAC,KAAK;EAC5E,MAAMC,KAAK,GAAGX,eAAe,CAACC,SAAS,CAAC;EACxC,MAAMW,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;EAEtB,IAAID,KAAK,CAACN,aAAa,GAAGO,GAAG,EAAE;IAC7B,OAAO;MACLE,OAAO,EAAE,KAAK;MACdC,YAAY,EAAEJ,KAAK,CAACN,aAAa,GAAGO;IACtC,CAAC;EACH;EAEAD,KAAK,CAACP,UAAU,GAAGO,KAAK,CAACP,UAAU,CAACY,MAAM,CAAEC,SAAS,IAAKL,GAAG,GAAGK,SAAS,GAAGR,QAAQ,CAAC;EAErF,IAAIE,KAAK,CAACP,UAAU,CAACc,MAAM,IAAIV,KAAK,EAAE;IACpCG,KAAK,CAACN,aAAa,GAAGO,GAAG,GAAGF,UAAU;IACtC,OAAO;MACLI,OAAO,EAAE,KAAK;MACdC,YAAY,EAAEL;IAChB,CAAC;EACH;EAEAC,KAAK,CAACP,UAAU,CAACe,IAAI,CAACP,GAAG,CAAC;EAC1B,OAAO;IACLE,OAAO,EAAE,IAAI;IACbC,YAAY,EAAE;EAChB,CAAC;AACH,CAAC;AAACK,OAAA,CAAAb,cAAA,GAAAA,cAAA;AAEK,MAAMc,gBAAgB,GAAIpB,SAAS,IAAK;EAC7CH,QAAQ,CAACwB,MAAM,CAACrB,SAAS,CAAC;AAC5B,CAAC;AAACmB,OAAA,CAAAC,gBAAA,GAAAA,gBAAA;AAEK,MAAME,oBAAoB,GAAGA,CAAA,KAAM;EACxCzB,QAAQ,CAAC0B,KAAK,CAAC,CAAC;AAClB,CAAC;AAACJ,OAAA,CAAAG,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SMARTY_US_STREET_KEY = exports.SMARTY_US_AUTOCOMPLETE_KEY = exports.SMARTY_INTL_STREET_KEY = exports.SMARTY_INTL_AUTOCOMPLETE_KEY = void 0;
7
+ const SMARTY_US_AUTOCOMPLETE_KEY = exports.SMARTY_US_AUTOCOMPLETE_KEY = '22361352819063501';
8
+ const SMARTY_INTL_AUTOCOMPLETE_KEY = exports.SMARTY_INTL_AUTOCOMPLETE_KEY = '22361352819063501';
9
+ const SMARTY_INTL_STREET_KEY = exports.SMARTY_INTL_STREET_KEY = '22361352819063501';
10
+ const SMARTY_US_STREET_KEY = exports.SMARTY_US_STREET_KEY = '22361352819063501';
11
+ //# sourceMappingURL=smartyConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smartyConfig.js","names":["SMARTY_US_AUTOCOMPLETE_KEY","exports","SMARTY_INTL_AUTOCOMPLETE_KEY","SMARTY_INTL_STREET_KEY","SMARTY_US_STREET_KEY"],"sources":["../../../src/addressLookup/utils/smartyConfig.js"],"sourcesContent":["export const SMARTY_US_AUTOCOMPLETE_KEY = '22361352819063501';\nexport const SMARTY_INTL_AUTOCOMPLETE_KEY = '22361352819063501';\nexport const SMARTY_INTL_STREET_KEY = '22361352819063501';\nexport const SMARTY_US_STREET_KEY = '22361352819063501';\n\n"],"mappings":";;;;;;AAAO,MAAMA,0BAA0B,GAAAC,OAAA,CAAAD,0BAAA,GAAG,mBAAmB;AACtD,MAAME,4BAA4B,GAAAD,OAAA,CAAAC,4BAAA,GAAG,mBAAmB;AACxD,MAAMC,sBAAsB,GAAAF,OAAA,CAAAE,sBAAA,GAAG,mBAAmB;AAClD,MAAMC,oBAAoB,GAAAH,OAAA,CAAAG,oBAAA,GAAG,mBAAmB","ignoreList":[]}