@gr4vy/secure-fields-react 2.3.3 → 2.3.4

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/CHANGELOG.md CHANGED
@@ -1,3 +1,16 @@
1
+ # v2.3.4 (Tue Apr 21 2026)
2
+
3
+ #### 🐛 Bug Fix
4
+
5
+ - fix: refactor and fix with redacted events and timestamps [#1184](https://github.com/gr4vy/secure-fields/pull/1184) ([@luca-gr4vy](https://github.com/luca-gr4vy) [@GiordanoArman](https://github.com/GiordanoArman))
6
+
7
+ #### Authors: 2
8
+
9
+ - GiordanoArman ([@GiordanoArman](https://github.com/GiordanoArman))
10
+ - Luca Allievi ([@luca-gr4vy](https://github.com/luca-gr4vy))
11
+
12
+ ---
13
+
1
14
  # v2.3.2 (Tue Apr 14 2026)
2
15
 
3
16
  #### 🐛 Bug Fix
@@ -27,7 +27,7 @@ var jsx_runtime_1 = require("react/jsx-runtime");
27
27
  var react_1 = require("react");
28
28
  var use_secure_input_1 = require("../../hooks/use-secure-input");
29
29
  exports.Field = (0, react_1.forwardRef)(function (props, handleRef) {
30
- var maskInput = props.maskInput, rest = __rest(props, ["maskInput"]);
30
+ var maskInput = props.maskInput, onRedacted = props.onRedacted, onUnredacted = props.onUnredacted, rest = __rest(props, ["maskInput", "onRedacted", "onUnredacted"]);
31
31
  var ref = (0, react_1.useRef)(null);
32
32
  var field = (0, use_secure_input_1.useSecureInput)(__assign(__assign({}, props), { ref: ref }));
33
33
  (0, react_1.useImperativeHandle)(handleRef, function () { return ({
@@ -1 +1 @@
1
- {"version":3,"file":"Field.js","sourceRoot":"","sources":["../../../src/components/Field/Field.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA+D;AAC/D,iEAAuD;AAG1C,QAAA,KAAK,GAAG,IAAA,kBAAU,EAC7B,UAAC,KAAK,EAAE,SAAS;IACP,IAAA,SAAS,GAAc,KAAK,UAAnB,EAAK,IAAI,UAAK,KAAK,EAA9B,aAAsB,CAAF,CAAU;IACpC,IAAM,GAAG,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IACxB,IAAM,KAAK,GAAG,IAAA,iCAAc,wBAAM,KAAK,KAAE,GAAG,KAAA,IAAG,CAAA;IAE/C,IAAA,2BAAmB,EACjB,SAAS,EACT,cAAM,OAAA,CAAC;QACL,KAAK,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,qDAAI,CAAA,EAAA;QAC7B,WAAW,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,qDAAI,CAAA,EAAA;QACzC,aAAa,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,qDAAI,CAAA,EAAA;KAC9C,CAAC,EAJI,CAIJ,EACF,CAAC,KAAK,CAAC,CACR,CAAA;IAED,OAAO,2CAAO,GAAG,EAAE,GAAG,IAAM,IAAI,EAAI,CAAA;AACtC,CAAC,CACF,CAAA;AAED,aAAK,CAAC,WAAW,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"Field.js","sourceRoot":"","sources":["../../../src/components/Field/Field.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+BAA+D;AAC/D,iEAAuD;AAG1C,QAAA,KAAK,GAAG,IAAA,kBAAU,EAC7B,UAAC,KAAK,EAAE,SAAS;IACP,IAAA,SAAS,GAAwC,KAAK,UAA7C,EAAE,UAAU,GAA4B,KAAK,WAAjC,EAAE,YAAY,GAAc,KAAK,aAAnB,EAAK,IAAI,UAAK,KAAK,EAAxD,2CAAgD,CAAF,CAAU;IAC9D,IAAM,GAAG,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IACxB,IAAM,KAAK,GAAG,IAAA,iCAAc,wBAAM,KAAK,KAAE,GAAG,KAAA,IAAG,CAAA;IAE/C,IAAA,2BAAmB,EACjB,SAAS,EACT,cAAM,OAAA,CAAC;QACL,KAAK,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,qDAAI,CAAA,EAAA;QAC7B,WAAW,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,qDAAI,CAAA,EAAA;QACzC,aAAa,EAAE,sBAAM,OAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,qDAAI,CAAA,EAAA;KAC9C,CAAC,EAJI,CAIJ,EACF,CAAC,KAAK,CAAC,CACR,CAAA;IAED,OAAO,2CAAO,GAAG,EAAE,GAAG,IAAM,IAAI,EAAI,CAAA;AACtC,CAAC,CACF,CAAA;AAED,aAAK,CAAC,WAAW,GAAG,OAAO,CAAA"}
@@ -33,7 +33,7 @@ var addFieldFns = {
33
33
  var useSecureInput = function (options) {
34
34
  var secureFields = (0, use_secure_fields_1.useSecureFields)().secureFields;
35
35
  var _a = (0, react_1.useState)(), field = _a[0], setField = _a[1];
36
- var ref = options.ref, type = options.type, onBlur = options.onBlur, onFocus = options.onFocus, onInput = options.onInput, rest = __rest(options, ["ref", "type", "onBlur", "onFocus", "onInput"]);
36
+ var ref = options.ref, type = options.type, onBlur = options.onBlur, onFocus = options.onFocus, onInput = options.onInput, onRedacted = options.onRedacted, onUnredacted = options.onUnredacted, rest = __rest(options, ["ref", "type", "onBlur", "onFocus", "onInput", "onRedacted", "onUnredacted"]);
37
37
  var addField = function (type) {
38
38
  if (!secureFields || !(options === null || options === void 0 ? void 0 : options.ref) || field) {
39
39
  return;
@@ -56,10 +56,14 @@ var useSecureInput = function (options) {
56
56
  onBlur && field.addEventListener('blur', onBlur);
57
57
  onFocus && field.addEventListener('focus', onFocus);
58
58
  onInput && field.addEventListener('input', onInput);
59
+ onRedacted && field.addEventListener('redacted', onRedacted);
60
+ onUnredacted && field.addEventListener('unredacted', onUnredacted);
59
61
  return function () {
60
62
  onBlur && field.removeEventListener('blur', onBlur);
61
63
  onFocus && field.removeEventListener('focus', onFocus);
62
64
  onInput && field.removeEventListener('input', onInput);
65
+ onRedacted && field.removeEventListener('redacted', onRedacted);
66
+ onUnredacted && field.removeEventListener('unredacted', onUnredacted);
63
67
  };
64
68
  // eslint-disable-next-line react-hooks/exhaustive-deps
65
69
  }, [secureFields, field]);
@@ -1 +1 @@
1
- {"version":3,"file":"use-secure-input.js","sourceRoot":"","sources":["../../src/hooks/use-secure-input.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAA2C;AAC3C,yDAAyD;AAGzD,IAAM,WAAW,GAAG;IAClB,MAAM,EAAE,oBAAoB;IAC5B,UAAU,EAAE,oBAAoB;IAChC,YAAY,EAAE,sBAAsB;CACrC,CAAA;AAEM,IAAM,cAAc,GAAG,UAAC,OAAe;IACpC,IAAA,YAAY,GAAK,IAAA,mCAAe,GAAE,aAAtB,CAAsB;IACpC,IAAA,KAAoB,IAAA,gBAAQ,GAAe,EAA1C,KAAK,QAAA,EAAE,QAAQ,QAA2B,CAAA;IACzC,IAAA,GAAG,GAA8C,OAAO,IAArD,EAAE,IAAI,GAAwC,OAAO,KAA/C,EAAE,MAAM,GAAgC,OAAO,OAAvC,EAAE,OAAO,GAAuB,OAAO,QAA9B,EAAE,OAAO,GAAc,OAAO,QAArB,EAAK,IAAI,UAAK,OAAO,EAA1D,+CAAgD,CAAF,CAAY;IAEhE,IAAM,QAAQ,GAAG,UAAC,IAAmB;QACnC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,CAAA,IAAI,KAAK,EAAE,CAAC;YAC5C,OAAM;QACR,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,eAAO,IAAI,EAAG,CAAA;QAClE,CAAC;QAED,OAAO,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,aAAI,IAAI,MAAA,IAAK,IAAI,EAAG,CAAA;IAC9D,CAAC,CAAA;IAED,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,YAAY,IAAI,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,CAAA,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAA,IAAI,KAAK,EAAE,CAAC;YAC9D,OAAM;QACR,CAAC;QAED,QAAQ,CAAC,QAAQ,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,CAAC,CAAC,CAAA;QACjC,uDAAuD;IACzD,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IAEtD,IAAA,iBAAS,EAAC;QACR,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAChD,OAAO,IAAI,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACnD,OAAO,IAAI,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAEnD,OAAO;YACL,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACnD,OAAO,IAAI,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACtD,OAAO,IAAI,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACxD,CAAC,CAAA;QACD,uDAAuD;IACzD,CAAC,EAAE,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAA;IAEzB,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AA1CY,QAAA,cAAc,kBA0C1B"}
1
+ {"version":3,"file":"use-secure-input.js","sourceRoot":"","sources":["../../src/hooks/use-secure-input.tsx"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -32,6 +32,8 @@ export type Field = BaseField & {
32
32
  onBlur?: (data: any) => void;
33
33
  onFocus?: (data: any) => void;
34
34
  onInput?: (data: any) => void;
35
+ onRedacted?: () => void;
36
+ onUnredacted?: () => void;
35
37
  };
36
38
  export type FieldHandle = {
37
39
  clear: () => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gr4vy/secure-fields-react",
3
- "version": "2.3.3",
3
+ "version": "2.3.4",
4
4
  "description": "Gr4vy-hosted secure fields offering advanced theming, PCI compliance, event handling, and more.",
5
5
  "main": "lib/index",
6
6
  "types": "lib/index",
@@ -41,7 +41,7 @@
41
41
  "react-dom": ">=17.0.0"
42
42
  },
43
43
  "dependencies": {
44
- "@gr4vy/secure-fields": "^2.3.3"
44
+ "@gr4vy/secure-fields": "^2.3.4"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@testing-library/react": "^12.1.5",
@@ -55,5 +55,5 @@
55
55
  "access": "public",
56
56
  "registry": "https://registry.npmjs.org"
57
57
  },
58
- "gitHead": "9285a6be8e3083834747f01c4a94e9174e946a8d"
58
+ "gitHead": "428e1b2460c3306e09875c5614de27a7a0c3dc72"
59
59
  }