@pagopa/io-react-native-wallet 3.7.1 → 3.7.2

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.
@@ -28,6 +28,7 @@ exports.extractErrorMessageFromIssuerConf = extractErrorMessageFromIssuerConf;
28
28
  exports.withMappedErrors = exports.serializeAttrs = exports.sdkUnexpectedStatusCodeToIssuerError = exports.isWalletProviderResponseError = exports.isRelyingPartyResponseError = exports.isIssuerResponseError = void 0;
29
29
  var _ioWalletUtils = require("@pagopa/io-wallet-utils");
30
30
  var _errorCodes = require("./error-codes");
31
+ var _string = require("./string");
31
32
  // An error reason that supports both a string and a generic JSON object
32
33
 
33
34
  /**
@@ -123,11 +124,15 @@ class UnexpectedStatusCodeError extends IoWalletError {
123
124
  /**
124
125
  * An error subclass thrown when an Issuer HTTP request fails.
125
126
  * The specific error can be found in the `code` property.
127
+ * `reason` values are returned with Italian fiscal codes anonymized.
126
128
  */
127
129
  exports.UnexpectedStatusCodeError = UnexpectedStatusCodeError;
128
130
  class IssuerResponseError extends UnexpectedStatusCodeError {
129
131
  constructor(params) {
130
- super(params);
132
+ super({
133
+ ...params,
134
+ reason: (0, _string.anonymizeString)(params.reason)
135
+ });
131
136
  this.code = params.code ?? _errorCodes.IssuerResponseErrorCodes.IssuerGenericError;
132
137
  }
133
138
  }
@@ -261,7 +266,8 @@ class ResponseErrorBuilder {
261
266
  const params = this.errorCases[originalError.statusCode] ?? this.errorCases["*"];
262
267
  if (params) {
263
268
  return new this.ErrorClass({
264
- ...originalError,
269
+ reason: originalError.reason,
270
+ statusCode: originalError.statusCode,
265
271
  ...params
266
272
  });
267
273
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_ioWalletUtils","require","_errorCodes","serializeAttrs","attrs","Object","entries","filter","_ref","v","undefined","map","_ref2","k","Array","isArray","join","JSON","stringify","_","exports","withMappedErrors","fn","sourceError","mapError","e","IoWalletError","Error","code","constructor","message","name","UnexpectedStatusCodeError","_ref3","reason","statusCode","IssuerResponseError","params","IssuerResponseErrorCodes","IssuerGenericError","RelyingPartyResponseError","RelyingPartyResponseErrorCodes","RelyingPartyGenericError","ValidationFailed","_ref4","claim","WalletProviderResponseError","WalletProviderResponseErrorCodes","WalletProviderGenericError","extractErrorMessageFromIssuerConf","errorCode","_ref5","credentialType","issuerConf","credentialConfiguration","credential_configurations_supported","issuance_errors_supported","errorConfig","localesList","display","reduce","acc","_ref6","locale","rest","makeErrorTypeGuard","ErrorClass","error","isIssuerResponseError","isWalletProviderResponseError","isRelyingPartyResponseError","ResponseErrorBuilder","errorCases","buildFrom","originalError","handle","status","UnimplementedFeatureError","feature","version","sdkUnexpectedStatusCodeToIssuerError","err","SdkUnexpectedStatusCodeError"],"sourceRoot":"../../../src","sources":["utils/errors.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_ioWalletUtils","require","_errorCodes","_string","serializeAttrs","attrs","Object","entries","filter","_ref","v","undefined","map","_ref2","k","Array","isArray","join","JSON","stringify","_","exports","withMappedErrors","fn","sourceError","mapError","e","IoWalletError","Error","code","constructor","message","name","UnexpectedStatusCodeError","_ref3","reason","statusCode","IssuerResponseError","params","anonymizeString","IssuerResponseErrorCodes","IssuerGenericError","RelyingPartyResponseError","RelyingPartyResponseErrorCodes","RelyingPartyGenericError","ValidationFailed","_ref4","claim","WalletProviderResponseError","WalletProviderResponseErrorCodes","WalletProviderGenericError","extractErrorMessageFromIssuerConf","errorCode","_ref5","credentialType","issuerConf","credentialConfiguration","credential_configurations_supported","issuance_errors_supported","errorConfig","localesList","display","reduce","acc","_ref6","locale","rest","makeErrorTypeGuard","ErrorClass","error","isIssuerResponseError","isWalletProviderResponseError","isRelyingPartyResponseError","ResponseErrorBuilder","errorCases","buildFrom","originalError","handle","status","UnimplementedFeatureError","feature","version","sdkUnexpectedStatusCodeToIssuerError","err","SdkUnexpectedStatusCodeError"],"sourceRoot":"../../../src","sources":["utils/errors.ts"],"mappings":"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"}
@@ -3,7 +3,47 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.obfuscateString = void 0;
6
+ exports.obfuscateString = exports.anonymizeString = void 0;
7
+ var _object = require("./object");
8
+ /**
9
+ * Italian codice fiscale, including omocodia.
10
+ * Anchors from the source validator are omitted so matches can be found inside longer strings.
11
+ * Built per call so a shared `/g` regex cannot leak `lastIndex`.
12
+ *
13
+ * @see https://gist.github.com/matpag/242557b056865aa2c8e0edb27bbb6822#file-italian_tax_code_regex-txt
14
+ */
15
+ const ITALIAN_FISCAL_CODE_SOURCE = "(?:[A-Z][AEIOUX][AEIOUX]|[B-DF-HJ-NP-TV-Z]{2}[A-Z]){2}(?:[\\dLMNP-V]{2}(?:[A-EHLMPR-T](?:[04LQ][1-9MNP-V]|[15MR][\\dLMNP-V]|[26NS][0-8LMNP-U])|[DHPS][37PT][0L]|[ACELMRT][37PT][01LM]|[AC-EHLMPR-T][26NS][9V])|(?:[02468LNQSU][048LQU]|[13579MPRTV][26NS])B[26NS][9V])(?:[A-MZ][1-9MNP-V][\\dLMNP-V]{2}|[A-M][0L](?:[1-9MNP-V][\\dLMNP-V]|[0L][1-9MNP-V]))[A-Z]";
16
+ const FISCAL_CODE_MASK = "*".repeat(16);
17
+
18
+ /**
19
+ * Replaces Italian fiscal codes with 16 asterisks.
20
+ * Walks strings, arrays, and nested objects; other values pass through.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * anonymizeString("User LVLDAA85T50G702B not found");
25
+ * // "User **************** not found"
26
+ *
27
+ * anonymizeString({ tax_id: "LVLDAA85T50G702B" });
28
+ * // { tax_id: "****************" }
29
+ * ```
30
+ */
31
+ const anonymizeString = value => {
32
+ if (typeof value === "string") {
33
+ return value.replace(new RegExp(ITALIAN_FISCAL_CODE_SOURCE, "gi"), FISCAL_CODE_MASK);
34
+ }
35
+ if (Array.isArray(value)) {
36
+ return value.map(item => anonymizeString(item));
37
+ }
38
+ if ((0, _object.isObject)(value)) {
39
+ return Object.fromEntries(Object.entries(value).map(_ref => {
40
+ let [key, nested] = _ref;
41
+ return [key, anonymizeString(nested)];
42
+ }));
43
+ }
44
+ return value;
45
+ };
46
+
7
47
  /**
8
48
  * Randomly obfuscates characters in a string by replacing them with a specified character.
9
49
  *
@@ -19,6 +59,7 @@ exports.obfuscateString = void 0;
19
59
  * @param obfuscatedChar - Character used for obfuscation. Defaults to "*"
20
60
  * @returns The obfuscated string with random characters replaced
21
61
  */
62
+ exports.anonymizeString = anonymizeString;
22
63
  const obfuscateString = function (value) {
23
64
  let percentage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 60;
24
65
  let obfuscatedChar = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "*";
@@ -1 +1 @@
1
- {"version":3,"names":["obfuscateString","value","percentage","arguments","length","undefined","obfuscatedChar","safePercentage","Math","max","min","charsToObfuscate","floor","chars","split","positions","Array","from","_","i","sort","random","slice","forEach","pos","join","exports"],"sourceRoot":"../../../src","sources":["utils/string.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,eAAe,GAAG,SAAAA,CAC7BC,KAAa,EAGF;EAAA,IAFXC,UAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IACfG,cAAc,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EAEpB,IAAI,CAACF,KAAK,EAAE;IACV,OAAO,EAAE;EACX;;EAEA;EACA,MAAMM,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,GAAG,EAAER,UAAU,CAAC,CAAC;;EAE7D;EACA,MAAMS,gBAAgB,GAAGH,IAAI,CAACI,KAAK,CAAEX,KAAK,CAACG,MAAM,GAAGG,cAAc,GAAI,GAAG,CAAC;;EAE1E;EACA,MAAMM,KAAK,GAAGZ,KAAK,CAACa,KAAK,CAAC,EAAE,CAAC;;EAE7B;EACA,MAAMC,SAAS,GAAGC,KAAK,CAACC,IAAI,CAAC;IAAEb,MAAM,EAAEH,KAAK,CAACG;EAAO,CAAC,EAAE,CAACc,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC,CAChEC,IAAI,CAAC,MAAMZ,IAAI,CAACa,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAC/BC,KAAK,CAAC,CAAC,EAAEX,gBAAgB,CAAC;;EAE7B;EACAI,SAAS,CAACQ,OAAO,CAAEC,GAAG,IAAK;IACzBX,KAAK,CAACW,GAAG,CAAC,GAAGlB,cAAc;EAC7B,CAAC,CAAC;EAEF,OAAOO,KAAK,CAACY,IAAI,CAAC,EAAE,CAAC;AACvB,CAAC;AAACC,OAAA,CAAA1B,eAAA,GAAAA,eAAA"}
1
+ {"version":3,"names":["_object","require","ITALIAN_FISCAL_CODE_SOURCE","FISCAL_CODE_MASK","repeat","anonymizeString","value","replace","RegExp","Array","isArray","map","item","isObject","Object","fromEntries","entries","_ref","key","nested","exports","obfuscateString","percentage","arguments","length","undefined","obfuscatedChar","safePercentage","Math","max","min","charsToObfuscate","floor","chars","split","positions","from","_","i","sort","random","slice","forEach","pos","join"],"sourceRoot":"../../../src","sources":["utils/string.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAC9B,iWAAiW;AAEnW,MAAMC,gBAAgB,GAAG,GAAG,CAACC,MAAM,CAAC,EAAE,CAAC;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,eAAe,GAAOC,KAAQ,IAAQ;EACjD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOA,KAAK,CAACC,OAAO,CAClB,IAAIC,MAAM,CAACN,0BAA0B,EAAE,IAAI,CAAC,EAC5CC,gBACF,CAAC;EACH;EAEA,IAAIM,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAACK,GAAG,CAAEC,IAAI,IAAKP,eAAe,CAACO,IAAI,CAAC,CAAC;EACnD;EAEA,IAAI,IAAAC,gBAAQ,EAACP,KAAK,CAAC,EAAE;IACnB,OAAOQ,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACV,KAAK,CAAC,CAACK,GAAG,CAACM,IAAA;MAAA,IAAC,CAACC,GAAG,EAAEC,MAAM,CAAC,GAAAF,IAAA;MAAA,OAAK,CAC3CC,GAAG,EACHb,eAAe,CAACc,MAAM,CAAC,CACxB;IAAA,EACH,CAAC;EACH;EAEA,OAAOb,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdAc,OAAA,CAAAf,eAAA,GAAAA,eAAA;AAeO,MAAMgB,eAAe,GAAG,SAAAA,CAC7Bf,KAAa,EAGF;EAAA,IAFXgB,UAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IACfG,cAAc,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EAEpB,IAAI,CAACjB,KAAK,EAAE;IACV,OAAO,EAAE;EACX;;EAEA;EACA,MAAMqB,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,GAAG,EAAER,UAAU,CAAC,CAAC;;EAE7D;EACA,MAAMS,gBAAgB,GAAGH,IAAI,CAACI,KAAK,CAAE1B,KAAK,CAACkB,MAAM,GAAGG,cAAc,GAAI,GAAG,CAAC;;EAE1E;EACA,MAAMM,KAAK,GAAG3B,KAAK,CAAC4B,KAAK,CAAC,EAAE,CAAC;;EAE7B;EACA,MAAMC,SAAS,GAAG1B,KAAK,CAAC2B,IAAI,CAAC;IAAEZ,MAAM,EAAElB,KAAK,CAACkB;EAAO,CAAC,EAAE,CAACa,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC,CAChEC,IAAI,CAAC,MAAMX,IAAI,CAACY,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAC/BC,KAAK,CAAC,CAAC,EAAEV,gBAAgB,CAAC;;EAE7B;EACAI,SAAS,CAACO,OAAO,CAAEC,GAAG,IAAK;IACzBV,KAAK,CAACU,GAAG,CAAC,GAAGjB,cAAc;EAC7B,CAAC,CAAC;EAEF,OAAOO,KAAK,CAACW,IAAI,CAAC,EAAE,CAAC;AACvB,CAAC;AAACxB,OAAA,CAAAC,eAAA,GAAAA,eAAA"}
@@ -1,5 +1,6 @@
1
1
  import { UnexpectedStatusCodeError as SdkUnexpectedStatusCodeError } from "@pagopa/io-wallet-utils";
2
2
  import { IssuerResponseErrorCodes, RelyingPartyResponseErrorCodes, WalletProviderResponseErrorCodes } from "./error-codes";
3
+ import { anonymizeString } from "./string";
3
4
  export { IssuerResponseErrorCodes, RelyingPartyResponseErrorCodes, WalletProviderResponseErrorCodes };
4
5
 
5
6
  // An error reason that supports both a string and a generic JSON object
@@ -94,10 +95,14 @@ export class UnexpectedStatusCodeError extends IoWalletError {
94
95
  /**
95
96
  * An error subclass thrown when an Issuer HTTP request fails.
96
97
  * The specific error can be found in the `code` property.
98
+ * `reason` values are returned with Italian fiscal codes anonymized.
97
99
  */
98
100
  export class IssuerResponseError extends UnexpectedStatusCodeError {
99
101
  constructor(params) {
100
- super(params);
102
+ super({
103
+ ...params,
104
+ reason: anonymizeString(params.reason)
105
+ });
101
106
  this.code = params.code ?? IssuerResponseErrorCodes.IssuerGenericError;
102
107
  }
103
108
  }
@@ -225,7 +230,8 @@ export class ResponseErrorBuilder {
225
230
  const params = this.errorCases[originalError.statusCode] ?? this.errorCases["*"];
226
231
  if (params) {
227
232
  return new this.ErrorClass({
228
- ...originalError,
233
+ reason: originalError.reason,
234
+ statusCode: originalError.statusCode,
229
235
  ...params
230
236
  });
231
237
  }
@@ -1 +1 @@
1
- {"version":3,"names":["UnexpectedStatusCodeError","SdkUnexpectedStatusCodeError","IssuerResponseErrorCodes","RelyingPartyResponseErrorCodes","WalletProviderResponseErrorCodes","serializeAttrs","attrs","Object","entries","filter","_ref","v","undefined","map","_ref2","k","Array","isArray","join","JSON","stringify","_","withMappedErrors","fn","sourceError","mapError","e","IoWalletError","Error","code","constructor","message","name","_ref3","reason","statusCode","IssuerResponseError","params","IssuerGenericError","RelyingPartyResponseError","RelyingPartyGenericError","ValidationFailed","_ref4","claim","WalletProviderResponseError","WalletProviderGenericError","extractErrorMessageFromIssuerConf","errorCode","_ref5","credentialType","issuerConf","credentialConfiguration","credential_configurations_supported","issuance_errors_supported","errorConfig","localesList","display","reduce","acc","_ref6","locale","rest","makeErrorTypeGuard","ErrorClass","error","isIssuerResponseError","isWalletProviderResponseError","isRelyingPartyResponseError","ResponseErrorBuilder","errorCases","buildFrom","originalError","handle","status","UnimplementedFeatureError","feature","version","sdkUnexpectedStatusCodeToIssuerError","err"],"sourceRoot":"../../../src","sources":["utils/errors.ts"],"mappings":"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"}
1
+ {"version":3,"names":["UnexpectedStatusCodeError","SdkUnexpectedStatusCodeError","IssuerResponseErrorCodes","RelyingPartyResponseErrorCodes","WalletProviderResponseErrorCodes","anonymizeString","serializeAttrs","attrs","Object","entries","filter","_ref","v","undefined","map","_ref2","k","Array","isArray","join","JSON","stringify","_","withMappedErrors","fn","sourceError","mapError","e","IoWalletError","Error","code","constructor","message","name","_ref3","reason","statusCode","IssuerResponseError","params","IssuerGenericError","RelyingPartyResponseError","RelyingPartyGenericError","ValidationFailed","_ref4","claim","WalletProviderResponseError","WalletProviderGenericError","extractErrorMessageFromIssuerConf","errorCode","_ref5","credentialType","issuerConf","credentialConfiguration","credential_configurations_supported","issuance_errors_supported","errorConfig","localesList","display","reduce","acc","_ref6","locale","rest","makeErrorTypeGuard","ErrorClass","error","isIssuerResponseError","isWalletProviderResponseError","isRelyingPartyResponseError","ResponseErrorBuilder","errorCases","buildFrom","originalError","handle","status","UnimplementedFeatureError","feature","version","sdkUnexpectedStatusCodeToIssuerError","err"],"sourceRoot":"../../../src","sources":["utils/errors.ts"],"mappings":"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"}
@@ -1,3 +1,44 @@
1
+ import { isObject } from "./object";
2
+
3
+ /**
4
+ * Italian codice fiscale, including omocodia.
5
+ * Anchors from the source validator are omitted so matches can be found inside longer strings.
6
+ * Built per call so a shared `/g` regex cannot leak `lastIndex`.
7
+ *
8
+ * @see https://gist.github.com/matpag/242557b056865aa2c8e0edb27bbb6822#file-italian_tax_code_regex-txt
9
+ */
10
+ const ITALIAN_FISCAL_CODE_SOURCE = "(?:[A-Z][AEIOUX][AEIOUX]|[B-DF-HJ-NP-TV-Z]{2}[A-Z]){2}(?:[\\dLMNP-V]{2}(?:[A-EHLMPR-T](?:[04LQ][1-9MNP-V]|[15MR][\\dLMNP-V]|[26NS][0-8LMNP-U])|[DHPS][37PT][0L]|[ACELMRT][37PT][01LM]|[AC-EHLMPR-T][26NS][9V])|(?:[02468LNQSU][048LQU]|[13579MPRTV][26NS])B[26NS][9V])(?:[A-MZ][1-9MNP-V][\\dLMNP-V]{2}|[A-M][0L](?:[1-9MNP-V][\\dLMNP-V]|[0L][1-9MNP-V]))[A-Z]";
11
+ const FISCAL_CODE_MASK = "*".repeat(16);
12
+
13
+ /**
14
+ * Replaces Italian fiscal codes with 16 asterisks.
15
+ * Walks strings, arrays, and nested objects; other values pass through.
16
+ *
17
+ * @example
18
+ * ```ts
19
+ * anonymizeString("User LVLDAA85T50G702B not found");
20
+ * // "User **************** not found"
21
+ *
22
+ * anonymizeString({ tax_id: "LVLDAA85T50G702B" });
23
+ * // { tax_id: "****************" }
24
+ * ```
25
+ */
26
+ export const anonymizeString = value => {
27
+ if (typeof value === "string") {
28
+ return value.replace(new RegExp(ITALIAN_FISCAL_CODE_SOURCE, "gi"), FISCAL_CODE_MASK);
29
+ }
30
+ if (Array.isArray(value)) {
31
+ return value.map(item => anonymizeString(item));
32
+ }
33
+ if (isObject(value)) {
34
+ return Object.fromEntries(Object.entries(value).map(_ref => {
35
+ let [key, nested] = _ref;
36
+ return [key, anonymizeString(nested)];
37
+ }));
38
+ }
39
+ return value;
40
+ };
41
+
1
42
  /**
2
43
  * Randomly obfuscates characters in a string by replacing them with a specified character.
3
44
  *
@@ -1 +1 @@
1
- {"version":3,"names":["obfuscateString","value","percentage","arguments","length","undefined","obfuscatedChar","safePercentage","Math","max","min","charsToObfuscate","floor","chars","split","positions","Array","from","_","i","sort","random","slice","forEach","pos","join"],"sourceRoot":"../../../src","sources":["utils/string.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,eAAe,GAAG,SAAAA,CAC7BC,KAAa,EAGF;EAAA,IAFXC,UAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IACfG,cAAc,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EAEpB,IAAI,CAACF,KAAK,EAAE;IACV,OAAO,EAAE;EACX;;EAEA;EACA,MAAMM,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,GAAG,EAAER,UAAU,CAAC,CAAC;;EAE7D;EACA,MAAMS,gBAAgB,GAAGH,IAAI,CAACI,KAAK,CAAEX,KAAK,CAACG,MAAM,GAAGG,cAAc,GAAI,GAAG,CAAC;;EAE1E;EACA,MAAMM,KAAK,GAAGZ,KAAK,CAACa,KAAK,CAAC,EAAE,CAAC;;EAE7B;EACA,MAAMC,SAAS,GAAGC,KAAK,CAACC,IAAI,CAAC;IAAEb,MAAM,EAAEH,KAAK,CAACG;EAAO,CAAC,EAAE,CAACc,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC,CAChEC,IAAI,CAAC,MAAMZ,IAAI,CAACa,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAC/BC,KAAK,CAAC,CAAC,EAAEX,gBAAgB,CAAC;;EAE7B;EACAI,SAAS,CAACQ,OAAO,CAAEC,GAAG,IAAK;IACzBX,KAAK,CAACW,GAAG,CAAC,GAAGlB,cAAc;EAC7B,CAAC,CAAC;EAEF,OAAOO,KAAK,CAACY,IAAI,CAAC,EAAE,CAAC;AACvB,CAAC"}
1
+ {"version":3,"names":["isObject","ITALIAN_FISCAL_CODE_SOURCE","FISCAL_CODE_MASK","repeat","anonymizeString","value","replace","RegExp","Array","isArray","map","item","Object","fromEntries","entries","_ref","key","nested","obfuscateString","percentage","arguments","length","undefined","obfuscatedChar","safePercentage","Math","max","min","charsToObfuscate","floor","chars","split","positions","from","_","i","sort","random","slice","forEach","pos","join"],"sourceRoot":"../../../src","sources":["utils/string.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,UAAU;;AAEnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,GAC9B,iWAAiW;AAEnW,MAAMC,gBAAgB,GAAG,GAAG,CAACC,MAAM,CAAC,EAAE,CAAC;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,eAAe,GAAOC,KAAQ,IAAQ;EACjD,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAOA,KAAK,CAACC,OAAO,CAClB,IAAIC,MAAM,CAACN,0BAA0B,EAAE,IAAI,CAAC,EAC5CC,gBACF,CAAC;EACH;EAEA,IAAIM,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;IACxB,OAAOA,KAAK,CAACK,GAAG,CAAEC,IAAI,IAAKP,eAAe,CAACO,IAAI,CAAC,CAAC;EACnD;EAEA,IAAIX,QAAQ,CAACK,KAAK,CAAC,EAAE;IACnB,OAAOO,MAAM,CAACC,WAAW,CACvBD,MAAM,CAACE,OAAO,CAACT,KAAK,CAAC,CAACK,GAAG,CAACK,IAAA;MAAA,IAAC,CAACC,GAAG,EAAEC,MAAM,CAAC,GAAAF,IAAA;MAAA,OAAK,CAC3CC,GAAG,EACHZ,eAAe,CAACa,MAAM,CAAC,CACxB;IAAA,EACH,CAAC;EACH;EAEA,OAAOZ,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMa,eAAe,GAAG,SAAAA,CAC7Bb,KAAa,EAGF;EAAA,IAFXc,UAAU,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAAA,IACfG,cAAc,GAAAH,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,GAAG;EAEpB,IAAI,CAACf,KAAK,EAAE;IACV,OAAO,EAAE;EACX;;EAEA;EACA,MAAMmB,cAAc,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,GAAG,EAAER,UAAU,CAAC,CAAC;;EAE7D;EACA,MAAMS,gBAAgB,GAAGH,IAAI,CAACI,KAAK,CAAExB,KAAK,CAACgB,MAAM,GAAGG,cAAc,GAAI,GAAG,CAAC;;EAE1E;EACA,MAAMM,KAAK,GAAGzB,KAAK,CAAC0B,KAAK,CAAC,EAAE,CAAC;;EAE7B;EACA,MAAMC,SAAS,GAAGxB,KAAK,CAACyB,IAAI,CAAC;IAAEZ,MAAM,EAAEhB,KAAK,CAACgB;EAAO,CAAC,EAAE,CAACa,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC,CAChEC,IAAI,CAAC,MAAMX,IAAI,CAACY,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,CAC/BC,KAAK,CAAC,CAAC,EAAEV,gBAAgB,CAAC;;EAE7B;EACAI,SAAS,CAACO,OAAO,CAAEC,GAAG,IAAK;IACzBV,KAAK,CAACU,GAAG,CAAC,GAAGjB,cAAc;EAC7B,CAAC,CAAC;EAEF,OAAOO,KAAK,CAACW,IAAI,CAAC,EAAE,CAAC;AACvB,CAAC"}
@@ -136,8 +136,8 @@ export declare const mapToRequestObject: (input: {
136
136
  header: {
137
137
  [x: string]: unknown;
138
138
  alg: string;
139
- kid: string;
140
139
  typ: "oauth-authz-req+jwt";
140
+ kid?: string | undefined;
141
141
  trust_chain?: [string, ...string[]] | undefined;
142
142
  x5c?: string[] | undefined;
143
143
  };
@@ -3,8 +3,8 @@ export type RawRequestObject = z.infer<typeof RawRequestObject>;
3
3
  export declare const RawRequestObject: z.ZodObject<{
4
4
  header: z.ZodObject<{
5
5
  alg: z.ZodString;
6
- kid: z.ZodString;
7
6
  typ: z.ZodLiteral<"oauth-authz-req+jwt">;
7
+ kid: z.ZodOptional<z.ZodString>;
8
8
  trust_chain: z.ZodOptional<z.ZodTuple<[z.ZodString], z.ZodString>>;
9
9
  x5c: z.ZodOptional<z.ZodArray<z.ZodString>>;
10
10
  }, z.core.$loose>;
@@ -67,6 +67,7 @@ export declare class UnexpectedStatusCodeError extends IoWalletError {
67
67
  /**
68
68
  * An error subclass thrown when an Issuer HTTP request fails.
69
69
  * The specific error can be found in the `code` property.
70
+ * `reason` values are returned with Italian fiscal codes anonymized.
70
71
  */
71
72
  export declare class IssuerResponseError extends UnexpectedStatusCodeError {
72
73
  code: IssuerResponseErrorCode;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/utils/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/utils/errors.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EACL,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,KAAK,6BAA6B,EAClC,8BAA8B,EAC9B,KAAK,+BAA+B,EACpC,gCAAgC,EACjC,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,GACjC,CAAC;AAGF,KAAK,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;AAE3D;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,GACzB,OAAO,MAAM,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,KACxE,MASW,CAAC;AAEf;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAE,CAAC,SAAS,KAAK,EAAE,IAAI,SAAS,OAAO,EAAE,EACzE,IAAI,MAAM,CAAC,EACX,aAAa,KAAK,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,EACrC,UAAU,CAAC,KAAK,EAAE,CAAC,KAAK,KAAK,KAC5B,CASF,CAAC;AAEF,KAAK,sBAAsB,GAAG,MAAM,CAClC,MAAM,EACN;IACE,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf,CACF,CAAC;AAEF;;;;;;;;;;GAUG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACtC,6DAA6D;IAC7D,IAAI,SAA2B;gBAEnB,OAAO,CAAC,EAAE,MAAM;CAI7B;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,aAAa;IAC1D,IAAI,SAAgC;IACpC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;gBAEP,EACV,OAAO,EACP,MAAM,EACN,UAAU,GACX,EAAE;QACD,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,kBAAkB,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;KACpB;CAKF;AAED;;;;GAIG;AACH,qBAAa,mBAAoB,SAAQ,yBAAyB;IAChE,IAAI,EAAE,uBAAuB,CAAC;gBAElB,MAAM,EAAE;QAClB,IAAI,CAAC,EAAE,uBAAuB,CAAC;QAC/B,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,kBAAkB,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;KACpB;CAIF;AAED;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,yBAAyB;IACtE,IAAI,EAAE,6BAA6B,CAAC;gBAExB,MAAM,EAAE;QAClB,IAAI,CAAC,EAAE,6BAA6B,CAAC;QACrC,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,kBAAkB,CAAC;QAC3B,UAAU,EAAE,MAAM,CAAC;KACpB;CAKF;AAED;;;GAGG;AACH,qBAAa,gBAAiB,SAAQ,aAAa;IACjD,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IAEd,IAAI,SAAqC;IAEzC,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;gBAEH,EACV,KAAqB,EACrB,OAAO,EACP,MAAsB,GACvB,EAAE;QACD,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB;CAKF;AAED;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,yBAAyB;IACxE,IAAI,EAAE,+BAA+B,CAAC;IACtC,MAAM,EAAE,WAAW,CAAC;gBAER,MAAM,EAAE;QAClB,IAAI,CAAC,EAAE,+BAA+B,CAAC;QACvC,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,WAAW,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB;CAOF;AAED;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,EACE,cAAc,EACd,UAAU,GACX,EAAE;IACD,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,YAAY,CAAC;CAC1B,GACA,sBAAsB,GAAG,SAAS,CAuBpC;AAaD,eAAO,MAAM,qBAAqB,UAHxB,OAAO,iDAA+B,KAAK,uBAGuB,CAAC;AAC7E,eAAO,MAAM,6BAA6B,UAJhC,OAAO,yDAA+B,KAAK,+BAMpD,CAAC;AACF,eAAO,MAAM,2BAA2B,UAP9B,OAAO,uDAA+B,KAAK,6BASpD,CAAC;AAEF,UAAU,SAAS,CAAC,CAAC;IACnB,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAGD,KAAK,YAAY,GACb;IACE,IAAI,EAAE,uBAAuB,CAAC;IAC9B,IAAI,EAAE,OAAO,mBAAmB,CAAC;CAClC,GACD;IACE,IAAI,EAAE,6BAA6B,CAAC;IACpC,IAAI,EAAE,OAAO,yBAAyB,CAAC;CACxC,GACD;IACE,IAAI,EAAE,+BAA+B,CAAC;IACtC,IAAI,EAAE,OAAO,2BAA2B,CAAC;CAC1C,CAAC;AAEN,KAAK,gBAAgB,CAAC,CAAC,IAAI,OAAO,CAAC,YAAY,EAAE;IAAE,IAAI,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE;;;;;;;;;;;;;GAaG;AACH,qBAAa,oBAAoB,CAAC,CAAC,SAAS,OAAO,yBAAyB;IAG9D,OAAO,CAAC,UAAU;IAF9B,OAAO,CAAC,UAAU,CAAmD;gBAEjD,UAAU,EAAE,CAAC;IAEjC,SAAS,CAAC,aAAa,EAAE,yBAAyB;IAelD,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;CAIlD;AAED;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,aAAa;IAC1D,IAAI,SAAyC;gBAEjC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAG7C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oCAAoC,GAAI,KAAK,OAAO,UAUhE,CAAC"}
@@ -1,3 +1,17 @@
1
+ /**
2
+ * Replaces Italian fiscal codes with 16 asterisks.
3
+ * Walks strings, arrays, and nested objects; other values pass through.
4
+ *
5
+ * @example
6
+ * ```ts
7
+ * anonymizeString("User LVLDAA85T50G702B not found");
8
+ * // "User **************** not found"
9
+ *
10
+ * anonymizeString({ tax_id: "LVLDAA85T50G702B" });
11
+ * // { tax_id: "****************" }
12
+ * ```
13
+ */
14
+ export declare const anonymizeString: <T>(value: T) => T;
1
15
  /**
2
16
  * Randomly obfuscates characters in a string by replacing them with a specified character.
3
17
  *
@@ -1 +1 @@
1
- {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/utils/string.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,MAAM,EACb,mBAAe,EACf,uBAAoB,KACnB,MAyBF,CAAC"}
1
+ {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../src/utils/string.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CAsB7C,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,MAAM,EACb,mBAAe,EACf,uBAAoB,KACnB,MAyBF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pagopa/io-react-native-wallet",
3
- "version": "3.7.1",
3
+ "version": "3.7.2",
4
4
  "description": "Provide data structures, helpers and API for IO Wallet",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -143,11 +143,11 @@
143
143
  ]
144
144
  },
145
145
  "dependencies": {
146
- "@pagopa/io-wallet-oauth2": "1.5.4",
147
- "@pagopa/io-wallet-oid-federation": "1.5.4",
148
- "@pagopa/io-wallet-oid4vci": "1.5.4",
149
- "@pagopa/io-wallet-oid4vp": "1.5.4",
150
- "@pagopa/io-wallet-utils": "1.5.4",
146
+ "@pagopa/io-wallet-oauth2": "1.5.6",
147
+ "@pagopa/io-wallet-oid-federation": "1.5.6",
148
+ "@pagopa/io-wallet-oid4vci": "1.5.6",
149
+ "@pagopa/io-wallet-oid4vp": "1.5.6",
150
+ "@pagopa/io-wallet-utils": "1.5.6",
151
151
  "@sd-jwt/core": "^0.19.0",
152
152
  "@sd-jwt/crypto-nodejs": "^0.19.0",
153
153
  "@sd-jwt/jwt-status-list": "^0.19.0",
@@ -11,6 +11,7 @@ import {
11
11
  type WalletProviderResponseErrorCode,
12
12
  WalletProviderResponseErrorCodes,
13
13
  } from "./error-codes";
14
+ import { anonymizeString } from "./string";
14
15
 
15
16
  export {
16
17
  IssuerResponseErrorCodes,
@@ -130,6 +131,7 @@ export class UnexpectedStatusCodeError extends IoWalletError {
130
131
  /**
131
132
  * An error subclass thrown when an Issuer HTTP request fails.
132
133
  * The specific error can be found in the `code` property.
134
+ * `reason` values are returned with Italian fiscal codes anonymized.
133
135
  */
134
136
  export class IssuerResponseError extends UnexpectedStatusCodeError {
135
137
  code: IssuerResponseErrorCode;
@@ -140,7 +142,7 @@ export class IssuerResponseError extends UnexpectedStatusCodeError {
140
142
  reason: GenericErrorReason;
141
143
  statusCode: number;
142
144
  }) {
143
- super(params);
145
+ super({ ...params, reason: anonymizeString(params.reason) });
144
146
  this.code = params.code ?? IssuerResponseErrorCodes.IssuerGenericError;
145
147
  }
146
148
  }
@@ -322,7 +324,11 @@ export class ResponseErrorBuilder<T extends typeof UnexpectedStatusCodeError> {
322
324
  this.errorCases[originalError.statusCode] ?? this.errorCases["*"];
323
325
 
324
326
  if (params) {
325
- return new this.ErrorClass({ ...originalError, ...params });
327
+ return new this.ErrorClass({
328
+ reason: originalError.reason,
329
+ statusCode: originalError.statusCode,
330
+ ...params,
331
+ });
326
332
  }
327
333
 
328
334
  return originalError;
@@ -1,3 +1,54 @@
1
+ import { isObject } from "./object";
2
+
3
+ /**
4
+ * Italian codice fiscale, including omocodia.
5
+ * Anchors from the source validator are omitted so matches can be found inside longer strings.
6
+ * Built per call so a shared `/g` regex cannot leak `lastIndex`.
7
+ *
8
+ * @see https://gist.github.com/matpag/242557b056865aa2c8e0edb27bbb6822#file-italian_tax_code_regex-txt
9
+ */
10
+ const ITALIAN_FISCAL_CODE_SOURCE =
11
+ "(?:[A-Z][AEIOUX][AEIOUX]|[B-DF-HJ-NP-TV-Z]{2}[A-Z]){2}(?:[\\dLMNP-V]{2}(?:[A-EHLMPR-T](?:[04LQ][1-9MNP-V]|[15MR][\\dLMNP-V]|[26NS][0-8LMNP-U])|[DHPS][37PT][0L]|[ACELMRT][37PT][01LM]|[AC-EHLMPR-T][26NS][9V])|(?:[02468LNQSU][048LQU]|[13579MPRTV][26NS])B[26NS][9V])(?:[A-MZ][1-9MNP-V][\\dLMNP-V]{2}|[A-M][0L](?:[1-9MNP-V][\\dLMNP-V]|[0L][1-9MNP-V]))[A-Z]";
12
+
13
+ const FISCAL_CODE_MASK = "*".repeat(16);
14
+
15
+ /**
16
+ * Replaces Italian fiscal codes with 16 asterisks.
17
+ * Walks strings, arrays, and nested objects; other values pass through.
18
+ *
19
+ * @example
20
+ * ```ts
21
+ * anonymizeString("User LVLDAA85T50G702B not found");
22
+ * // "User **************** not found"
23
+ *
24
+ * anonymizeString({ tax_id: "LVLDAA85T50G702B" });
25
+ * // { tax_id: "****************" }
26
+ * ```
27
+ */
28
+ export const anonymizeString = <T>(value: T): T => {
29
+ if (typeof value === "string") {
30
+ return value.replace(
31
+ new RegExp(ITALIAN_FISCAL_CODE_SOURCE, "gi"),
32
+ FISCAL_CODE_MASK,
33
+ ) as T;
34
+ }
35
+
36
+ if (Array.isArray(value)) {
37
+ return value.map((item) => anonymizeString(item)) as T;
38
+ }
39
+
40
+ if (isObject(value)) {
41
+ return Object.fromEntries(
42
+ Object.entries(value).map(([key, nested]) => [
43
+ key,
44
+ anonymizeString(nested),
45
+ ]),
46
+ ) as T;
47
+ }
48
+
49
+ return value;
50
+ };
51
+
1
52
  /**
2
53
  * Randomly obfuscates characters in a string by replacing them with a specified character.
3
54
  *