@os-design/form 1.0.48 → 1.0.50
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/dist/cjs/BroadcastObserverManager.js +1 -1
- package/dist/cjs/BroadcastObserverManager.js.map +1 -1
- package/dist/cjs/ErrorData.js +1 -1
- package/dist/cjs/ErrorObserverManager.js +1 -1
- package/dist/cjs/Form.js +1 -1
- package/dist/cjs/Form.js.map +1 -1
- package/dist/cjs/Node.js +1 -1
- package/dist/cjs/Node.js.map +1 -1
- package/dist/cjs/ValueData.js +1 -1
- package/dist/cjs/ValueObserverManager.js +3 -3
- package/dist/cjs/ValueObserverManager.js.map +1 -1
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/useFormContext.js +1 -1
- package/dist/cjs/utils/clone.js +2 -2
- package/dist/cjs/utils/clone.js.map +1 -1
- package/dist/cjs/utils/isEqual.js +2 -2
- package/dist/cjs/utils/isEqual.js.map +1 -1
- package/dist/cjs/utils/path.js +5 -6
- package/dist/cjs/utils/path.js.map +1 -1
- package/dist/esm/utils/path.js +3 -4
- package/dist/esm/utils/path.js.map +1 -1
- package/dist/types/utils/path.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/utils/path.ts +3 -5
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports["default"] = void 0;
|
|
7
7
|
var _deleteFromArray = _interopRequireDefault(require("./utils/deleteFromArray"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
9
|
-
function _typeof(
|
|
9
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
10
10
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
11
11
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
12
12
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BroadcastObserverManager.js","names":["_deleteFromArray","_interopRequireDefault","require","obj","__esModule","_typeof","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","BroadcastObserverManager","broadcastObservers","value","subscribeToAll","observer","_this","push","unsubscribe","deleteFromArray","callBroadcastObservers","name","forEach","_default","exports"],"sources":["../../src/BroadcastObserverManager.ts"],"sourcesContent":["import { Subscription } from './types';\nimport deleteFromArray from './utils/deleteFromArray';\n\nexport type BroadcastObserver<TName, TValue> = (\n name: TName,\n value: TValue\n) => void;\n\nclass BroadcastObserverManager<TName, TValue> {\n private readonly broadcastObservers: Array<BroadcastObserver<TName, TValue>>;\n\n public constructor() {\n this.broadcastObservers = [];\n }\n\n public subscribeToAll(\n observer: BroadcastObserver<TName, TValue>\n ): Subscription {\n this.broadcastObservers.push(observer);\n return {\n unsubscribe: () => deleteFromArray(this.broadcastObservers, observer),\n };\n }\n\n protected callBroadcastObservers<N extends TName, V extends TValue>(\n name: N,\n value: V\n ): void {\n this.broadcastObservers.forEach((observer) => observer(name, value));\n }\n}\n\nexport default BroadcastObserverManager;\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAsD,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,
|
|
1
|
+
{"version":3,"file":"BroadcastObserverManager.js","names":["_deleteFromArray","_interopRequireDefault","require","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","BroadcastObserverManager","broadcastObservers","value","subscribeToAll","observer","_this","push","unsubscribe","deleteFromArray","callBroadcastObservers","name","forEach","_default","exports"],"sources":["../../src/BroadcastObserverManager.ts"],"sourcesContent":["import { Subscription } from './types';\nimport deleteFromArray from './utils/deleteFromArray';\n\nexport type BroadcastObserver<TName, TValue> = (\n name: TName,\n value: TValue\n) => void;\n\nclass BroadcastObserverManager<TName, TValue> {\n private readonly broadcastObservers: Array<BroadcastObserver<TName, TValue>>;\n\n public constructor() {\n this.broadcastObservers = [];\n }\n\n public subscribeToAll(\n observer: BroadcastObserver<TName, TValue>\n ): Subscription {\n this.broadcastObservers.push(observer);\n return {\n unsubscribe: () => deleteFromArray(this.broadcastObservers, observer),\n };\n }\n\n protected callBroadcastObservers<N extends TName, V extends TValue>(\n name: N,\n value: V\n ): void {\n this.broadcastObservers.forEach((observer) => observer(name, value));\n }\n}\n\nexport default BroadcastObserverManager;\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAsD,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,QAAAC,CAAA,sCAAAD,OAAA,wBAAAE,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAF,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAC,MAAA,IAAAD,CAAA,CAAAG,WAAA,KAAAF,MAAA,IAAAD,CAAA,KAAAC,MAAA,CAAAG,SAAA,qBAAAJ,CAAA,KAAAD,OAAA,CAAAC,CAAA;AAAA,SAAAK,gBAAAC,QAAA,EAAAC,WAAA,UAAAD,QAAA,YAAAC,WAAA,eAAAC,SAAA;AAAA,SAAAC,kBAAAC,MAAA,EAAAC,KAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAD,KAAA,CAAAE,MAAA,EAAAD,CAAA,UAAAE,UAAA,GAAAH,KAAA,CAAAC,CAAA,GAAAE,UAAA,CAAAC,UAAA,GAAAD,UAAA,CAAAC,UAAA,WAAAD,UAAA,CAAAE,YAAA,wBAAAF,UAAA,EAAAA,UAAA,CAAAG,QAAA,SAAAC,MAAA,CAAAC,cAAA,CAAAT,MAAA,EAAAU,cAAA,CAAAN,UAAA,CAAAO,GAAA,GAAAP,UAAA;AAAA,SAAAQ,aAAAf,WAAA,EAAAgB,UAAA,EAAAC,WAAA,QAAAD,UAAA,EAAAd,iBAAA,CAAAF,WAAA,CAAAH,SAAA,EAAAmB,UAAA,OAAAC,WAAA,EAAAf,iBAAA,CAAAF,WAAA,EAAAiB,WAAA,GAAAN,MAAA,CAAAC,cAAA,CAAAZ,WAAA,iBAAAU,QAAA,mBAAAV,WAAA;AAAA,SAAAa,eAAAK,GAAA,QAAAJ,GAAA,GAAAK,YAAA,CAAAD,GAAA,oBAAA1B,OAAA,CAAAsB,GAAA,iBAAAA,GAAA,GAAAM,MAAA,CAAAN,GAAA;AAAA,SAAAK,aAAAE,KAAA,EAAAC,IAAA,QAAA9B,OAAA,CAAA6B,KAAA,kBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAA3B,MAAA,CAAA8B,WAAA,OAAAD,IAAA,KAAAE,SAAA,QAAAC,GAAA,GAAAH,IAAA,CAAAI,IAAA,CAAAN,KAAA,EAAAC,IAAA,oBAAA9B,OAAA,CAAAkC,GAAA,uBAAAA,GAAA,YAAAzB,SAAA,4DAAAqB,IAAA,gBAAAF,MAAA,GAAAQ,MAAA,EAAAP,KAAA;AAAA,IAOhDQ,wBAAwB;EAG5B,SAAAA,yBAAA,EAAqB;IAAA/B,eAAA,OAAA+B,wBAAA;IAAA,KAFJC,kBAAkB;IAGjC,IAAI,CAACA,kBAAkB,GAAG,EAAE;EAC9B;EAACf,YAAA,CAAAc,wBAAA;IAAAf,GAAA;IAAAiB,KAAA,EAED,SAAAC,eACEC,QAA0C,EAC5B;MAAA,IAAAC,KAAA;MACd,IAAI,CAACJ,kBAAkB,CAACK,IAAI,CAACF,QAAQ,CAAC;MACtC,OAAO;QACLG,WAAW,EAAE,SAAAA,YAAA;UAAA,OAAM,IAAAC,2BAAe,EAACH,KAAI,CAACJ,kBAAkB,EAAEG,QAAQ,CAAC;QAAA;MACvE,CAAC;IACH;EAAC;IAAAnB,GAAA;IAAAiB,KAAA,EAED,SAAAO,uBACEC,IAAO,EACPR,KAAQ,EACF;MACN,IAAI,CAACD,kBAAkB,CAACU,OAAO,CAAC,UAACP,QAAQ;QAAA,OAAKA,QAAQ,CAACM,IAAI,EAAER,KAAK,CAAC;MAAA,EAAC;IACtE;EAAC;EAAA,OAAAF,wBAAA;AAAA;AAAA,IAAAY,QAAA,GAGYZ,wBAAwB;AAAAa,OAAA,cAAAD,QAAA"}
|
package/dist/cjs/ErrorData.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
package/dist/cjs/Form.js
CHANGED
|
@@ -8,7 +8,7 @@ var _ErrorData = _interopRequireDefault(require("./ErrorData"));
|
|
|
8
8
|
var _clone = _interopRequireDefault(require("./utils/clone"));
|
|
9
9
|
var _ValueData = _interopRequireDefault(require("./ValueData"));
|
|
10
10
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
11
|
-
function _typeof(
|
|
11
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
12
12
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
13
13
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
14
14
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
package/dist/cjs/Form.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Form.js","names":["_ErrorData","_interopRequireDefault","require","_clone","_ValueData","obj","__esModule","_typeof","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","Form","initValues","values","errors","ValueData","clone","ErrorData","value","reset","_this","keys","getAll","forEach","name","set","_default","exports"],"sources":["../../src/Form.ts"],"sourcesContent":["import ErrorData from './ErrorData';\nimport { Errors, Path, Values } from './types';\nimport clone from './utils/clone';\nimport ValueData from './ValueData';\n\nclass Form<\n TValues extends Values = Values,\n TErrors extends Errors<TValues> = Errors<TValues>,\n> {\n public initValues: TValues;\n\n public readonly values: ValueData<TValues>;\n\n public readonly errors: ErrorData<TErrors>;\n\n public constructor(initValues: TValues) {\n this.initValues = initValues;\n this.values = new ValueData(clone(initValues));\n this.errors = new ErrorData({} as TErrors);\n }\n\n public reset() {\n // Reset values\n Object.keys(this.values.getAll()).forEach((name) => {\n this.values.set(name as Path<TValues>, clone(this.initValues[name]));\n });\n\n // Reset errors\n Object.keys(this.errors.getAll()).forEach((name) => {\n this.errors.set(\n name as keyof TErrors,\n undefined as TErrors[keyof TErrors]\n );\n });\n }\n}\n\nexport default Form;\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,
|
|
1
|
+
{"version":3,"file":"Form.js","names":["_ErrorData","_interopRequireDefault","require","_clone","_ValueData","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","Form","initValues","values","errors","ValueData","clone","ErrorData","value","reset","_this","keys","getAll","forEach","name","set","_default","exports"],"sources":["../../src/Form.ts"],"sourcesContent":["import ErrorData from './ErrorData';\nimport { Errors, Path, Values } from './types';\nimport clone from './utils/clone';\nimport ValueData from './ValueData';\n\nclass Form<\n TValues extends Values = Values,\n TErrors extends Errors<TValues> = Errors<TValues>,\n> {\n public initValues: TValues;\n\n public readonly values: ValueData<TValues>;\n\n public readonly errors: ErrorData<TErrors>;\n\n public constructor(initValues: TValues) {\n this.initValues = initValues;\n this.values = new ValueData(clone(initValues));\n this.errors = new ErrorData({} as TErrors);\n }\n\n public reset() {\n // Reset values\n Object.keys(this.values.getAll()).forEach((name) => {\n this.values.set(name as Path<TValues>, clone(this.initValues[name]));\n });\n\n // Reset errors\n Object.keys(this.errors.getAll()).forEach((name) => {\n this.errors.set(\n name as keyof TErrors,\n undefined as TErrors[keyof TErrors]\n );\n });\n }\n}\n\nexport default Form;\n"],"mappings":"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"}
|
package/dist/cjs/Node.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports["default"] = void 0;
|
|
7
7
|
var _deleteFromArray = _interopRequireDefault(require("./utils/deleteFromArray"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
9
|
-
function _typeof(
|
|
9
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
10
10
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
11
11
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
12
12
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
package/dist/cjs/Node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Node.js","names":["_deleteFromArray","_interopRequireDefault","require","obj","__esModule","_typeof","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","Node","parent","arguments","name","nodes","observers","value","getNode","createNode","deleteNode","addObserver","observer","push","deleteObserver","deleteFromArray","_default","exports"],"sources":["../../src/Node.ts"],"sourcesContent":["import { Observer } from './types';\nimport deleteFromArray from './utils/deleteFromArray';\n\nclass Node {\n public readonly name: string;\n\n public readonly parent: Node | null;\n\n public readonly nodes: Record<string, Node>;\n\n public readonly observers: Observer[];\n\n public constructor(parent: Node | null = null, name = '') {\n this.name = name;\n this.parent = parent;\n this.nodes = {};\n this.observers = [];\n }\n\n public getNode(name: string): Node | undefined {\n return this.nodes[name];\n }\n\n public createNode(name: string): Node {\n this.nodes[name] = new Node(this, name);\n return this.nodes[name];\n }\n\n public deleteNode(name: string): void {\n delete this.nodes[name];\n }\n\n public addObserver(observer: Observer): void {\n this.observers.push(observer);\n }\n\n public deleteObserver(observer: Observer): void {\n deleteFromArray(this.observers, observer);\n }\n}\n\nexport default Node;\n"],"mappings":";;;;;;AACA,IAAAA,gBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAAsD,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,
|
|
1
|
+
{"version":3,"file":"Node.js","names":["_deleteFromArray","_interopRequireDefault","require","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","Node","parent","arguments","name","nodes","observers","value","getNode","createNode","deleteNode","addObserver","observer","push","deleteObserver","deleteFromArray","_default","exports"],"sources":["../../src/Node.ts"],"sourcesContent":["import { Observer } from './types';\nimport deleteFromArray from './utils/deleteFromArray';\n\nclass Node {\n public readonly name: string;\n\n public readonly parent: Node | null;\n\n public readonly nodes: Record<string, Node>;\n\n public readonly observers: Observer[];\n\n public constructor(parent: Node | null = null, name = '') {\n this.name = name;\n this.parent = parent;\n this.nodes = {};\n this.observers = [];\n }\n\n public getNode(name: string): Node | undefined {\n return this.nodes[name];\n }\n\n public createNode(name: string): Node {\n this.nodes[name] = new Node(this, name);\n return this.nodes[name];\n }\n\n public deleteNode(name: string): void {\n delete this.nodes[name];\n }\n\n public addObserver(observer: Observer): void {\n this.observers.push(observer);\n }\n\n public deleteObserver(observer: Observer): void {\n deleteFromArray(this.observers, observer);\n }\n}\n\nexport default Node;\n"],"mappings":"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"}
|
package/dist/cjs/ValueData.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -13,7 +13,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
13
13
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
14
14
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
15
15
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
16
|
-
function _iterableToArrayLimit(
|
|
16
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
17
17
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
18
18
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
19
19
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
@@ -61,7 +61,7 @@ var ValueObserverManager = /*#__PURE__*/function (_BroadcastObserverMan) {
|
|
|
61
61
|
node.deleteObserver(observer);
|
|
62
62
|
if (node.observers.length === 0) {
|
|
63
63
|
var _node$parent;
|
|
64
|
-
(_node$parent = node.parent) === null || _node$parent === void 0
|
|
64
|
+
(_node$parent = node.parent) === null || _node$parent === void 0 || _node$parent.deleteNode(node.name);
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValueObserverManager.js","names":["_BroadcastObserverManager","_interopRequireDefault","require","_Node","_path","obj","__esModule","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","isArray","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","enumerable","configurable","writable","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","_typeof","String","input","hint","prim","toPrimitive","undefined","res","Number","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","split","path","ValueObserverManager","_BroadcastObserverMan","_super","_this","root","Node","findNode","keys","cur","forEach","getNode","createNode","subscribe","observer","node","addObserver","unsubscribe","deleteObserver","observers","_node$parent","parent","deleteNode","callObservers","data","callBroadcastObservers","get","callNodeObservers","curNode","curData","isObjectOrArray","callChildObservers","_this2","entries","nodes","_ref","_ref2","BroadcastObserverManager","_default","exports"],"sources":["../../src/ValueObserverManager.ts"],"sourcesContent":["import BroadcastObserverManager from './BroadcastObserverManager';\nimport Node from './Node';\nimport { Observer, Path, PathReturn, Subscription, Values } from './types';\nimport { get, isObjectOrArray } from './utils/path';\n\nconst split = (path: string) => path.split('.');\n\nclass ValueObserverManager<\n TValues extends Values,\n TName extends Path<TValues> = Path<TValues>,\n> extends BroadcastObserverManager<TName, TValues[TName]> {\n private readonly root: Node;\n\n public constructor() {\n super();\n this.root = new Node();\n }\n\n private findNode(path: string) {\n const keys = split(path);\n let cur = this.root;\n keys.forEach((key) => {\n cur = cur.getNode(key) || cur.createNode(key);\n });\n return cur;\n }\n\n public subscribe<T extends TName>(\n name: T,\n observer: Observer<PathReturn<TValues, T>>\n ): Subscription {\n const node = this.findNode(name);\n node.addObserver(observer);\n\n return {\n unsubscribe: () => {\n node.deleteObserver(observer);\n if (node.observers.length === 0) {\n node.parent?.deleteNode(node.name);\n }\n },\n };\n }\n\n protected callObservers<T extends TName>(name: T, data: TValues): void {\n this.callBroadcastObservers(name, get(data, name));\n this.callNodeObservers(name, data);\n }\n\n private callNodeObservers<T extends TName>(name: T, data: TValues): void {\n const keys = split(name);\n let curNode = this.root;\n let curData = data;\n\n // Call the observers for the root node\n curNode.observers.forEach((observer) => observer(curData));\n\n // Call observers on each node from the root to the specified one\n for (let i = 0; i < keys.length; i += 1) {\n const key = keys[i];\n const node = curNode.getNode(key);\n if (!node || !isObjectOrArray(curData)) return;\n curNode = node;\n curData = curData[key];\n // eslint-disable-next-line @typescript-eslint/no-loop-func\n curNode.observers.forEach((observer) => observer(curData));\n }\n\n // Call observers of all child nodes started from the specified one\n this.callChildObservers(curNode, curData);\n }\n\n private callChildObservers(parent: Node, data: TValues): void {\n if (!isObjectOrArray(data)) return;\n Object.entries(parent.nodes).forEach(([name, node]) => {\n const value = data[name];\n node.observers.forEach((observer) => observer(value));\n this.callChildObservers(node, value);\n });\n }\n}\n\nexport default ValueObserverManager;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ValueObserverManager.js","names":["_BroadcastObserverManager","_interopRequireDefault","require","_Node","_path","obj","__esModule","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_classCallCheck","instance","Constructor","_defineProperties","target","props","descriptor","enumerable","configurable","writable","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","_typeof","String","input","hint","prim","toPrimitive","undefined","res","Number","_inherits","subClass","superClass","create","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","split","path","ValueObserverManager","_BroadcastObserverMan","_super","_this","root","Node","findNode","keys","cur","forEach","getNode","createNode","subscribe","observer","node","addObserver","unsubscribe","deleteObserver","observers","_node$parent","parent","deleteNode","callObservers","data","callBroadcastObservers","get","callNodeObservers","curNode","curData","isObjectOrArray","callChildObservers","_this2","entries","nodes","_ref","_ref2","BroadcastObserverManager","_default","exports"],"sources":["../../src/ValueObserverManager.ts"],"sourcesContent":["import BroadcastObserverManager from './BroadcastObserverManager';\nimport Node from './Node';\nimport { Observer, Path, PathReturn, Subscription, Values } from './types';\nimport { get, isObjectOrArray } from './utils/path';\n\nconst split = (path: string) => path.split('.');\n\nclass ValueObserverManager<\n TValues extends Values,\n TName extends Path<TValues> = Path<TValues>,\n> extends BroadcastObserverManager<TName, TValues[TName]> {\n private readonly root: Node;\n\n public constructor() {\n super();\n this.root = new Node();\n }\n\n private findNode(path: string) {\n const keys = split(path);\n let cur = this.root;\n keys.forEach((key) => {\n cur = cur.getNode(key) || cur.createNode(key);\n });\n return cur;\n }\n\n public subscribe<T extends TName>(\n name: T,\n observer: Observer<PathReturn<TValues, T>>\n ): Subscription {\n const node = this.findNode(name);\n node.addObserver(observer);\n\n return {\n unsubscribe: () => {\n node.deleteObserver(observer);\n if (node.observers.length === 0) {\n node.parent?.deleteNode(node.name);\n }\n },\n };\n }\n\n protected callObservers<T extends TName>(name: T, data: TValues): void {\n this.callBroadcastObservers(name, get(data, name));\n this.callNodeObservers(name, data);\n }\n\n private callNodeObservers<T extends TName>(name: T, data: TValues): void {\n const keys = split(name);\n let curNode = this.root;\n let curData = data;\n\n // Call the observers for the root node\n curNode.observers.forEach((observer) => observer(curData));\n\n // Call observers on each node from the root to the specified one\n for (let i = 0; i < keys.length; i += 1) {\n const key = keys[i];\n const node = curNode.getNode(key);\n if (!node || !isObjectOrArray(curData)) return;\n curNode = node;\n curData = curData[key];\n // eslint-disable-next-line @typescript-eslint/no-loop-func\n curNode.observers.forEach((observer) => observer(curData));\n }\n\n // Call observers of all child nodes started from the specified one\n this.callChildObservers(curNode, curData);\n }\n\n private callChildObservers(parent: Node, data: TValues): void {\n if (!isObjectOrArray(data)) return;\n Object.entries(parent.nodes).forEach(([name, node]) => {\n const value = data[name];\n node.observers.forEach((observer) => observer(value));\n this.callChildObservers(node, value);\n });\n }\n}\n\nexport default ValueObserverManager;\n"],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -80,7 +80,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
80
80
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
81
81
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
82
82
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
83
|
-
function _iterableToArrayLimit(
|
|
83
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
84
84
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
85
85
|
var createUseValueHook = function createUseValueHook(form) {
|
|
86
86
|
return function (name) {
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","require","_Form","_interopRequireDefault","_useFormContext","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_isEqual","_path","_useDeepEqualMemo","_BroadcastObserverManager","_ErrorObserverManager","_types","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","length","arr2","_i","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","createUseValueHook","form","_useState","useState","values","_useState2","setValue","useEffect","subscription","subscribe","v","unsubscribe","createUseErrorHook","_useState3","errors","_useState4","createUseTransformerHook","useValue","transformer","shouldTransformRef","useRef","transformerRef","current","partialValues","entries","_ref","_ref2","createFieldComponent","useError","props","data","_props$transformer","render","error","initValue","useMemo","initValues","modified","isEqual","reset","useCallback","onChange","undefined","renderRef","inputProps","fieldState","memoizedData","useDeepEqualMemo","useModifiedFields","_useState5","_useState6","modifiedFields","setModifiedFields","modifiedFieldsRef","initValuesRef","subscribeToAll","isInitValue","fields","includes","filter","field","concat","useFormResponse","Field","useTransformer","useForm","memoizedInitValues","formRef","Form","useExistingForm","useFormContext","Error"],"sources":["../../src/index.tsx"],"sourcesContent":["import {\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Form from './Form';\nimport { Path, PathReturn, Values } from './types';\nimport useFormContext from './useFormContext';\nimport isEqual from './utils/isEqual';\nimport { get } from './utils/path';\nimport useDeepEqualMemo from './utils/useDeepEqualMemo';\n\nexport * from './BroadcastObserverManager';\nexport * from './ErrorObserverManager';\nexport { default as Form } from './Form';\nexport * from './types';\nexport * from './useFormContext';\n\nconst createUseValueHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<PathReturn<TValues, TName>>(\n form.values.get(name)\n );\n\n useEffect(() => {\n const subscription = form.values.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nconst createUseErrorHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<string | undefined>(\n form.errors.get(name)\n );\n\n useEffect(() => {\n const subscription = form.errors.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nexport type Transformer<TValues extends Values, TName extends Path<TValues>> = (\n value: PathReturn<TValues, TName>\n) => {\n [K in Path<TValues>]?: PathReturn<TValues, K>;\n};\n\nconst createUseTransformerHook = <TValues extends Values>(\n form: Form<TValues>\n) => {\n const useValue = createUseValueHook(form);\n return <TName extends Path<TValues>>(\n name: TName,\n transformer: Transformer<TValues, TName>\n ) => {\n const value = useValue(name);\n const shouldTransformRef = useRef(false);\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n useEffect(() => {\n if (shouldTransformRef.current) {\n const partialValues = transformerRef.current(value);\n Object.entries(partialValues).forEach(([n, v]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n form.values.set(n as Path<TValues>, v as any);\n });\n } else {\n shouldTransformRef.current = true;\n }\n }, [value]);\n };\n};\n\ninterface InputProps<TValue> {\n value: TValue;\n onChange: (value: TValue) => void;\n}\ninterface FieldState {\n error?: string;\n modified: boolean;\n reset: () => void;\n}\ninterface FieldProps<TName, TValue, TData> {\n name: TName;\n data?: TData;\n transformer?: (value: TValue) => TValue;\n render: (\n inputProps: InputProps<TValue>,\n fieldState: FieldState,\n data: TData\n ) => ReactElement | null;\n}\n\nconst createFieldComponent = <TValues extends Values>(form: Form<TValues>) => {\n const useValue = createUseValueHook(form);\n const useError = createUseErrorHook(form);\n return <TName extends Path<TValues>, TData>(\n props: FieldProps<TName, PathReturn<TValues, TName>, TData>\n ) => {\n const { name, data, transformer = (v) => v, render } = props;\n\n const value = useValue(name);\n const error = useError(name);\n\n const initValue = useMemo(() => get(form.initValues, name), [name]);\n const modified = useMemo(\n () => !isEqual(value, initValue),\n [initValue, value]\n );\n const reset = useCallback(\n () => form.values.set(name, initValue),\n [initValue, name]\n );\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n const onChange = useCallback(\n (v: PathReturn<TValues, TName>) => {\n form.values.set(name, transformerRef.current(v));\n },\n [name]\n );\n\n // Reset the error when the value was changed\n useEffect(() => {\n form.errors.set(name, undefined);\n }, [name, value]);\n\n const renderRef = useRef(render);\n useEffect(() => {\n renderRef.current = render;\n }, [render]);\n\n const inputProps = useMemo(() => ({ value, onChange }), [onChange, value]);\n const fieldState = useMemo(\n () => ({ error, modified, reset }),\n [error, modified, reset]\n );\n\n const memoizedData = useDeepEqualMemo(() => data as TData, [data]);\n\n return useMemo(\n () => renderRef.current(inputProps, fieldState, memoizedData),\n [fieldState, inputProps, memoizedData]\n );\n };\n};\n\nconst useModifiedFields = <TValues extends Values>(form: Form<TValues>) => {\n const [modifiedFields, setModifiedFields] = useState<Array<Path<TValues>>>(\n []\n );\n\n const modifiedFieldsRef = useRef(modifiedFields);\n useEffect(() => {\n modifiedFieldsRef.current = modifiedFields;\n }, [modifiedFields]);\n\n const initValuesRef = useRef(form.initValues);\n useEffect(() => {\n initValuesRef.current = form.initValues;\n }, [form.initValues]);\n\n useEffect(() => {\n const subscription = form.values.subscribeToAll((name, value) => {\n const isInitValue = isEqual(value, get(initValuesRef.current, name));\n const fields = modifiedFieldsRef.current;\n\n if (fields.includes(name)) {\n if (isInitValue) {\n setModifiedFields(fields.filter((field) => field !== name));\n }\n } else if (!isInitValue) {\n setModifiedFields([...fields, name]);\n }\n });\n return () => subscription.unsubscribe();\n }, [form.values]);\n\n return modifiedFields;\n};\n\nconst useFormResponse = <TValues extends Values>(form: Form<TValues>) => {\n const Field = useMemo(() => createFieldComponent(form), [form]);\n const useValue = useMemo(() => createUseValueHook(form), [form]);\n const useError = useMemo(() => createUseErrorHook(form), [form]);\n const useTransformer = useMemo(() => createUseTransformerHook(form), [form]);\n\n const modifiedFields = useModifiedFields(form);\n const modified = useMemo(\n () => modifiedFields.length > 0,\n [modifiedFields.length]\n );\n\n return useMemo(\n () => ({\n form,\n Field,\n useValue,\n useError,\n useTransformer,\n modifiedFields,\n modified,\n }),\n [Field, form, modified, modifiedFields, useError, useTransformer, useValue]\n );\n};\n\nexport const useForm = <TValues extends Values = Values>(\n initValues: TValues\n) => {\n const memoizedInitValues = useDeepEqualMemo<TValues>(\n () => initValues,\n [initValues]\n );\n\n const formRef = useRef(new Form<TValues>(memoizedInitValues));\n useEffect(() => {\n formRef.current.initValues = memoizedInitValues;\n formRef.current.reset();\n }, [memoizedInitValues]);\n\n return useFormResponse(formRef.current);\n};\n\nexport const useExistingForm = <TValues extends Values = Values>() => {\n const form = useFormContext<Form<TValues> | null>();\n if (!form) throw new Error('Wrap your form in a FormProvider');\n return useFormResponse(form);\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","require","_Form","_interopRequireDefault","_useFormContext","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_isEqual","_path","_useDeepEqualMemo","_BroadcastObserverManager","_ErrorObserverManager","_types","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","_slicedToArray","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","o","minLen","n","toString","slice","constructor","name","test","len","length","arr2","r","l","t","e","u","a","f","next","done","push","value","createUseValueHook","form","_useState","useState","values","_useState2","setValue","useEffect","subscription","subscribe","v","unsubscribe","createUseErrorHook","_useState3","errors","_useState4","createUseTransformerHook","useValue","transformer","shouldTransformRef","useRef","transformerRef","current","partialValues","entries","_ref","_ref2","createFieldComponent","useError","props","data","_props$transformer","render","error","initValue","useMemo","initValues","modified","isEqual","reset","useCallback","onChange","undefined","renderRef","inputProps","fieldState","memoizedData","useDeepEqualMemo","useModifiedFields","_useState5","_useState6","modifiedFields","setModifiedFields","modifiedFieldsRef","initValuesRef","subscribeToAll","isInitValue","fields","includes","filter","field","concat","useFormResponse","Field","useTransformer","useForm","memoizedInitValues","formRef","Form","useExistingForm","useFormContext","Error"],"sources":["../../src/index.tsx"],"sourcesContent":["import {\n ReactElement,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport Form from './Form';\nimport { Path, PathReturn, Values } from './types';\nimport useFormContext from './useFormContext';\nimport isEqual from './utils/isEqual';\nimport { get } from './utils/path';\nimport useDeepEqualMemo from './utils/useDeepEqualMemo';\n\nexport * from './BroadcastObserverManager';\nexport * from './ErrorObserverManager';\nexport { default as Form } from './Form';\nexport * from './types';\nexport * from './useFormContext';\n\nconst createUseValueHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<PathReturn<TValues, TName>>(\n form.values.get(name)\n );\n\n useEffect(() => {\n const subscription = form.values.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nconst createUseErrorHook =\n <TValues extends Values>(form: Form<TValues>) =>\n <TName extends Path<TValues>>(name: TName) => {\n const [value, setValue] = useState<string | undefined>(\n form.errors.get(name)\n );\n\n useEffect(() => {\n const subscription = form.errors.subscribe(name, (v) => {\n setValue(v);\n });\n return () => subscription.unsubscribe();\n }, [name]);\n\n return value;\n };\n\nexport type Transformer<TValues extends Values, TName extends Path<TValues>> = (\n value: PathReturn<TValues, TName>\n) => {\n [K in Path<TValues>]?: PathReturn<TValues, K>;\n};\n\nconst createUseTransformerHook = <TValues extends Values>(\n form: Form<TValues>\n) => {\n const useValue = createUseValueHook(form);\n return <TName extends Path<TValues>>(\n name: TName,\n transformer: Transformer<TValues, TName>\n ) => {\n const value = useValue(name);\n const shouldTransformRef = useRef(false);\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n useEffect(() => {\n if (shouldTransformRef.current) {\n const partialValues = transformerRef.current(value);\n Object.entries(partialValues).forEach(([n, v]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n form.values.set(n as Path<TValues>, v as any);\n });\n } else {\n shouldTransformRef.current = true;\n }\n }, [value]);\n };\n};\n\ninterface InputProps<TValue> {\n value: TValue;\n onChange: (value: TValue) => void;\n}\ninterface FieldState {\n error?: string;\n modified: boolean;\n reset: () => void;\n}\ninterface FieldProps<TName, TValue, TData> {\n name: TName;\n data?: TData;\n transformer?: (value: TValue) => TValue;\n render: (\n inputProps: InputProps<TValue>,\n fieldState: FieldState,\n data: TData\n ) => ReactElement | null;\n}\n\nconst createFieldComponent = <TValues extends Values>(form: Form<TValues>) => {\n const useValue = createUseValueHook(form);\n const useError = createUseErrorHook(form);\n return <TName extends Path<TValues>, TData>(\n props: FieldProps<TName, PathReturn<TValues, TName>, TData>\n ) => {\n const { name, data, transformer = (v) => v, render } = props;\n\n const value = useValue(name);\n const error = useError(name);\n\n const initValue = useMemo(() => get(form.initValues, name), [name]);\n const modified = useMemo(\n () => !isEqual(value, initValue),\n [initValue, value]\n );\n const reset = useCallback(\n () => form.values.set(name, initValue),\n [initValue, name]\n );\n\n const transformerRef = useRef(transformer);\n useEffect(() => {\n transformerRef.current = transformer;\n }, [transformer]);\n\n const onChange = useCallback(\n (v: PathReturn<TValues, TName>) => {\n form.values.set(name, transformerRef.current(v));\n },\n [name]\n );\n\n // Reset the error when the value was changed\n useEffect(() => {\n form.errors.set(name, undefined);\n }, [name, value]);\n\n const renderRef = useRef(render);\n useEffect(() => {\n renderRef.current = render;\n }, [render]);\n\n const inputProps = useMemo(() => ({ value, onChange }), [onChange, value]);\n const fieldState = useMemo(\n () => ({ error, modified, reset }),\n [error, modified, reset]\n );\n\n const memoizedData = useDeepEqualMemo(() => data as TData, [data]);\n\n return useMemo(\n () => renderRef.current(inputProps, fieldState, memoizedData),\n [fieldState, inputProps, memoizedData]\n );\n };\n};\n\nconst useModifiedFields = <TValues extends Values>(form: Form<TValues>) => {\n const [modifiedFields, setModifiedFields] = useState<Array<Path<TValues>>>(\n []\n );\n\n const modifiedFieldsRef = useRef(modifiedFields);\n useEffect(() => {\n modifiedFieldsRef.current = modifiedFields;\n }, [modifiedFields]);\n\n const initValuesRef = useRef(form.initValues);\n useEffect(() => {\n initValuesRef.current = form.initValues;\n }, [form.initValues]);\n\n useEffect(() => {\n const subscription = form.values.subscribeToAll((name, value) => {\n const isInitValue = isEqual(value, get(initValuesRef.current, name));\n const fields = modifiedFieldsRef.current;\n\n if (fields.includes(name)) {\n if (isInitValue) {\n setModifiedFields(fields.filter((field) => field !== name));\n }\n } else if (!isInitValue) {\n setModifiedFields([...fields, name]);\n }\n });\n return () => subscription.unsubscribe();\n }, [form.values]);\n\n return modifiedFields;\n};\n\nconst useFormResponse = <TValues extends Values>(form: Form<TValues>) => {\n const Field = useMemo(() => createFieldComponent(form), [form]);\n const useValue = useMemo(() => createUseValueHook(form), [form]);\n const useError = useMemo(() => createUseErrorHook(form), [form]);\n const useTransformer = useMemo(() => createUseTransformerHook(form), [form]);\n\n const modifiedFields = useModifiedFields(form);\n const modified = useMemo(\n () => modifiedFields.length > 0,\n [modifiedFields.length]\n );\n\n return useMemo(\n () => ({\n form,\n Field,\n useValue,\n useError,\n useTransformer,\n modifiedFields,\n modified,\n }),\n [Field, form, modified, modifiedFields, useError, useTransformer, useValue]\n );\n};\n\nexport const useForm = <TValues extends Values = Values>(\n initValues: TValues\n) => {\n const memoizedInitValues = useDeepEqualMemo<TValues>(\n () => initValues,\n [initValues]\n );\n\n const formRef = useRef(new Form<TValues>(memoizedInitValues));\n useEffect(() => {\n formRef.current.initValues = memoizedInitValues;\n formRef.current.reset();\n }, [memoizedInitValues]);\n\n return useFormResponse(formRef.current);\n};\n\nexport const useExistingForm = <TValues extends Values = Values>() => {\n const form = useFormContext<Form<TValues> | null>();\n if (!form) throw new Error('Wrap your form in a FormProvider');\n return useFormResponse(form);\n};\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
package/dist/cjs/utils/clone.js
CHANGED
|
@@ -9,9 +9,9 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
9
9
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
10
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
11
11
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
12
|
-
function _iterableToArrayLimit(
|
|
12
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
13
13
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
14
|
-
function _typeof(
|
|
14
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
15
15
|
var clone = function clone(value) {
|
|
16
16
|
if (_typeof(value) === 'object') {
|
|
17
17
|
if (Array.isArray(value)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clone.js","names":["_react","require","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","
|
|
1
|
+
{"version":3,"file":"clone.js","names":["_react","require","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_typeof","clone","map","item","isValidElement","window","File","clonedObj","entries","forEach","_ref","_ref2","objKey","objValue","setPrototypeOf","getPrototypeOf","_default","exports"],"sources":["../../../src/utils/clone.ts"],"sourcesContent":["import { isValidElement } from 'react';\n\nconst clone = <T>(value: T): T => {\n if (typeof value === 'object') {\n if (Array.isArray(value)) {\n return value.map((item) => clone(item)) as T;\n }\n\n if (isValidElement(value)) return value;\n if (typeof window !== 'undefined' && value instanceof File) {\n return value;\n }\n\n if (value !== null) {\n const clonedObj = {};\n Object.entries(value).forEach(([objKey, objValue]) => {\n clonedObj[objKey] = clone(objValue);\n });\n Object.setPrototypeOf(clonedObj, Object.getPrototypeOf(value));\n return clonedObj as T;\n }\n }\n\n return value;\n};\n\nexport default clone;\n"],"mappings":"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"}
|
|
@@ -9,9 +9,9 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
9
9
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
10
10
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
11
11
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
12
|
-
function _iterableToArrayLimit(
|
|
12
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
13
13
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
14
|
-
function _typeof(
|
|
14
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
16
|
var isEqual = function isEqual(value1, value2) {
|
|
17
17
|
if (_typeof(value1) !== _typeof(value2)) return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isEqual.js","names":["_react","require","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","
|
|
1
|
+
{"version":3,"file":"isEqual.js","names":["_react","require","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_typeof","isEqual","value1","value2","isValidElement","every","item1","index","item2","keys","entries","_ref","_ref2","objKey","objValue1","hasOwn","objValue2","is","_default","exports"],"sources":["../../../src/utils/isEqual.ts"],"sourcesContent":["import { isValidElement } from 'react';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst isEqual = (value1: any, value2: any): boolean => {\n if (typeof value1 !== typeof value2) return false;\n\n if (typeof value1 === 'object') {\n if (isValidElement(value1) || isValidElement(value2)) {\n return value1 === value2;\n }\n if (Array.isArray(value1) !== Array.isArray(value2)) return false;\n\n if (Array.isArray(value1)) {\n if (value1.length !== value2.length) return false;\n\n return value1.every((item1, index) => {\n const item2 = value2[index];\n return isEqual(item1, item2);\n });\n }\n\n if (value1 !== null && value2 !== null) {\n if (Object.keys(value1).length !== Object.keys(value2).length) {\n return false;\n }\n\n return Object.entries(value1).every(([objKey, objValue1]) => {\n if (!Object.hasOwn(value2, objKey)) return false;\n const objValue2 = value2[objKey];\n return isEqual(objValue1, objValue2);\n });\n }\n }\n\n return Object.is(value1, value2);\n};\n\nexport default isEqual;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAAuC,SAAAC,eAAAC,GAAA,EAAAC,CAAA,WAAAC,eAAA,CAAAF,GAAA,KAAAG,qBAAA,CAAAH,GAAA,EAAAC,CAAA,KAAAG,2BAAA,CAAAJ,GAAA,EAAAC,CAAA,KAAAI,gBAAA;AAAA,SAAAA,iBAAA,cAAAC,SAAA;AAAA,SAAAF,4BAAAG,CAAA,EAAAC,MAAA,SAAAD,CAAA,qBAAAA,CAAA,sBAAAE,iBAAA,CAAAF,CAAA,EAAAC,MAAA,OAAAE,CAAA,GAAAC,MAAA,CAAAC,SAAA,CAAAC,QAAA,CAAAC,IAAA,CAAAP,CAAA,EAAAQ,KAAA,aAAAL,CAAA,iBAAAH,CAAA,CAAAS,WAAA,EAAAN,CAAA,GAAAH,CAAA,CAAAS,WAAA,CAAAC,IAAA,MAAAP,CAAA,cAAAA,CAAA,mBAAAQ,KAAA,CAAAC,IAAA,CAAAZ,CAAA,OAAAG,CAAA,+DAAAU,IAAA,CAAAV,CAAA,UAAAD,iBAAA,CAAAF,CAAA,EAAAC,MAAA;AAAA,SAAAC,kBAAAT,GAAA,EAAAqB,GAAA,QAAAA,GAAA,YAAAA,GAAA,GAAArB,GAAA,CAAAsB,MAAA,EAAAD,GAAA,GAAArB,GAAA,CAAAsB,MAAA,WAAArB,CAAA,MAAAsB,IAAA,OAAAL,KAAA,CAAAG,GAAA,GAAApB,CAAA,GAAAoB,GAAA,EAAApB,CAAA,IAAAsB,IAAA,CAAAtB,CAAA,IAAAD,GAAA,CAAAC,CAAA,UAAAsB,IAAA;AAAA,SAAApB,sBAAAqB,CAAA,EAAAC,CAAA,QAAAC,CAAA,WAAAF,CAAA,gCAAAG,MAAA,IAAAH,CAAA,CAAAG,MAAA,CAAAC,QAAA,KAAAJ,CAAA,4BAAAE,CAAA,QAAAG,CAAA,EAAAnB,CAAA,EAAAT,CAAA,EAAA6B,CAAA,EAAAC,CAAA,OAAAC,CAAA,OAAAzB,CAAA,iBAAAN,CAAA,IAAAyB,CAAA,GAAAA,CAAA,CAAAZ,IAAA,CAAAU,CAAA,GAAAS,IAAA,QAAAR,CAAA,QAAAd,MAAA,CAAAe,CAAA,MAAAA,CAAA,UAAAM,CAAA,uBAAAA,CAAA,IAAAH,CAAA,GAAA5B,CAAA,CAAAa,IAAA,CAAAY,CAAA,GAAAQ,IAAA,MAAAH,CAAA,CAAAI,IAAA,CAAAN,CAAA,CAAAO,KAAA,GAAAL,CAAA,CAAAT,MAAA,KAAAG,CAAA,GAAAO,CAAA,iBAAAR,CAAA,IAAAjB,CAAA,OAAAG,CAAA,GAAAc,CAAA,yBAAAQ,CAAA,YAAAN,CAAA,eAAAI,CAAA,GAAAJ,CAAA,cAAAf,MAAA,CAAAmB,CAAA,MAAAA,CAAA,2BAAAvB,CAAA,QAAAG,CAAA,aAAAqB,CAAA;AAAA,SAAA7B,gBAAAF,GAAA,QAAAkB,KAAA,CAAAmB,OAAA,CAAArC,GAAA,UAAAA,GAAA;AAAA,SAAAsC,QAAA/B,CAAA,sCAAA+B,OAAA,wBAAAX,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAArB,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAoB,MAAA,IAAApB,CAAA,CAAAS,WAAA,KAAAW,MAAA,IAAApB,CAAA,KAAAoB,MAAA,CAAAf,SAAA,qBAAAL,CAAA,KAAA+B,OAAA,CAAA/B,CAAA;AAEvC;AACA,IAAMgC,OAAO,GAAG,SAAVA,OAAOA,CAAIC,MAAW,EAAEC,MAAW,EAAc;EACrD,IAAIH,OAAA,CAAOE,MAAM,MAAAF,OAAA,CAAYG,MAAM,GAAE,OAAO,KAAK;EAEjD,IAAIH,OAAA,CAAOE,MAAM,MAAK,QAAQ,EAAE;IAC9B,IAAI,kBAAAE,qBAAc,EAACF,MAAM,CAAC,iBAAI,IAAAE,qBAAc,EAACD,MAAM,CAAC,EAAE;MACpD,OAAOD,MAAM,KAAKC,MAAM;IAC1B;IACA,IAAIvB,KAAK,CAACmB,OAAO,CAACG,MAAM,CAAC,KAAKtB,KAAK,CAACmB,OAAO,CAACI,MAAM,CAAC,EAAE,OAAO,KAAK;IAEjE,IAAIvB,KAAK,CAACmB,OAAO,CAACG,MAAM,CAAC,EAAE;MACzB,IAAIA,MAAM,CAAClB,MAAM,KAAKmB,MAAM,CAACnB,MAAM,EAAE,OAAO,KAAK;MAEjD,OAAOkB,MAAM,CAACG,KAAK,CAAC,UAACC,KAAK,EAAEC,KAAK,EAAK;QACpC,IAAMC,KAAK,GAAGL,MAAM,CAACI,KAAK,CAAC;QAC3B,OAAON,OAAO,CAACK,KAAK,EAAEE,KAAK,CAAC;MAC9B,CAAC,CAAC;IACJ;IAEA,IAAIN,MAAM,KAAK,IAAI,IAAIC,MAAM,KAAK,IAAI,EAAE;MACtC,IAAI9B,MAAM,CAACoC,IAAI,CAACP,MAAM,CAAC,CAAClB,MAAM,KAAKX,MAAM,CAACoC,IAAI,CAACN,MAAM,CAAC,CAACnB,MAAM,EAAE;QAC7D,OAAO,KAAK;MACd;MAEA,OAAOX,MAAM,CAACqC,OAAO,CAACR,MAAM,CAAC,CAACG,KAAK,CAAC,UAAAM,IAAA,EAAyB;QAAA,IAAAC,KAAA,GAAAnD,cAAA,CAAAkD,IAAA;UAAvBE,MAAM,GAAAD,KAAA;UAAEE,SAAS,GAAAF,KAAA;QACrD,IAAI,CAACvC,MAAM,CAAC0C,MAAM,CAACZ,MAAM,EAAEU,MAAM,CAAC,EAAE,OAAO,KAAK;QAChD,IAAMG,SAAS,GAAGb,MAAM,CAACU,MAAM,CAAC;QAChC,OAAOZ,OAAO,CAACa,SAAS,EAAEE,SAAS,CAAC;MACtC,CAAC,CAAC;IACJ;EACF;EAEA,OAAO3C,MAAM,CAAC4C,EAAE,CAACf,MAAM,EAAEC,MAAM,CAAC;AAClC,CAAC;AAAC,IAAAe,QAAA,GAEajB,OAAO;AAAAkB,OAAA,cAAAD,QAAA"}
|
package/dist/cjs/utils/path.js
CHANGED
|
@@ -8,9 +8,9 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
|
|
|
8
8
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
9
9
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
10
10
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
11
|
-
function _iterableToArrayLimit(
|
|
11
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
12
12
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
13
|
-
function _typeof(
|
|
13
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
14
14
|
/* eslint-disable @typescript-eslint/no-explicit-any,no-param-reassign */
|
|
15
15
|
|
|
16
16
|
var isObjectOrArray = function isObjectOrArray(value) {
|
|
@@ -18,7 +18,7 @@ var isObjectOrArray = function isObjectOrArray(value) {
|
|
|
18
18
|
};
|
|
19
19
|
exports.isObjectOrArray = isObjectOrArray;
|
|
20
20
|
var split = function split(path) {
|
|
21
|
-
var groups = path.match(/^([^.]
|
|
21
|
+
var groups = path.match(/^([^.]+)\.(.*)$/);
|
|
22
22
|
return groups ? [groups[1], groups[2]] : null;
|
|
23
23
|
};
|
|
24
24
|
var get = function get(data, path) {
|
|
@@ -36,12 +36,11 @@ var get = function get(data, path) {
|
|
|
36
36
|
};
|
|
37
37
|
exports.get = get;
|
|
38
38
|
var set = function set(data, path, value) {
|
|
39
|
-
|
|
39
|
+
var groups = split(path);
|
|
40
|
+
if (!groups || Object.hasOwn(data, path)) {
|
|
40
41
|
data[path] = value;
|
|
41
42
|
return true;
|
|
42
43
|
}
|
|
43
|
-
var groups = split(path);
|
|
44
|
-
if (!groups) return false;
|
|
45
44
|
var _groups2 = _slicedToArray(groups, 2),
|
|
46
45
|
key = _groups2[0],
|
|
47
46
|
nextPath = _groups2[1];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","names":["isObjectOrArray","value","_typeof","exports","split","path","groups","match","get","data","Object","hasOwn","undefined","_groups","_slicedToArray","key","nextPath","set","_groups2"],"sources":["../../../src/utils/path.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any,no-param-reassign */\n\nexport const isObjectOrArray = (value: any): value is object =>\n typeof value === 'object' && value !== null;\n\nconst split = (path: string) => {\n const groups = path.match(/^([^.]
|
|
1
|
+
{"version":3,"file":"path.js","names":["isObjectOrArray","value","_typeof","exports","split","path","groups","match","get","data","Object","hasOwn","undefined","_groups","_slicedToArray","key","nextPath","set","_groups2"],"sources":["../../../src/utils/path.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any,no-param-reassign */\n\nexport const isObjectOrArray = (value: any): value is object =>\n typeof value === 'object' && value !== null;\n\nconst split = (path: string) => {\n const groups = path.match(/^([^.]+)\\.(.*)$/);\n return groups ? [groups[1], groups[2]] : null;\n};\n\nexport const get = (data: Record<string, any>, path: string): any => {\n if (Object.hasOwn(data, path)) {\n return data[path];\n }\n\n const groups = split(path);\n if (!groups) return undefined;\n\n const [key, nextPath] = groups;\n if (!Object.hasOwn(data, key)) return undefined;\n if (!isObjectOrArray(data[key])) return undefined;\n\n return get(data[key], nextPath);\n};\n\nexport const set = (\n data: Record<string, any>,\n path: string,\n value: any\n): boolean => {\n const groups = split(path);\n if (!groups || Object.hasOwn(data, path)) {\n data[path] = value;\n return true;\n }\n\n const [key, nextPath] = groups;\n if (!Object.hasOwn(data, key)) return false;\n if (!isObjectOrArray(data[key])) return false;\n\n return set(data[key], nextPath, value);\n};\n"],"mappings":";;;;;;;;;;;;;AAAA;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAAU;EAAA,OACxCC,OAAA,CAAOD,KAAK,MAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI;AAAA;AAACE,OAAA,CAAAH,eAAA,GAAAA,eAAA;AAE9C,IAAMI,KAAK,GAAG,SAARA,KAAKA,CAAIC,IAAY,EAAK;EAC9B,IAAMC,MAAM,GAAGD,IAAI,CAACE,KAAK,CAAC,iBAAiB,CAAC;EAC5C,OAAOD,MAAM,GAAG,CAACA,MAAM,CAAC,CAAC,CAAC,EAAEA,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;AAC/C,CAAC;AAEM,IAAME,GAAG,GAAG,SAANA,GAAGA,CAAIC,IAAyB,EAAEJ,IAAY,EAAU;EACnE,IAAIK,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEJ,IAAI,CAAC,EAAE;IAC7B,OAAOI,IAAI,CAACJ,IAAI,CAAC;EACnB;EAEA,IAAMC,MAAM,GAAGF,KAAK,CAACC,IAAI,CAAC;EAC1B,IAAI,CAACC,MAAM,EAAE,OAAOM,SAAS;EAE7B,IAAAC,OAAA,GAAAC,cAAA,CAAwBR,MAAM;IAAvBS,GAAG,GAAAF,OAAA;IAAEG,QAAQ,GAAAH,OAAA;EACpB,IAAI,CAACH,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEM,GAAG,CAAC,EAAE,OAAOH,SAAS;EAC/C,IAAI,CAACZ,eAAe,CAACS,IAAI,CAACM,GAAG,CAAC,CAAC,EAAE,OAAOH,SAAS;EAEjD,OAAOJ,GAAG,CAACC,IAAI,CAACM,GAAG,CAAC,EAAEC,QAAQ,CAAC;AACjC,CAAC;AAACb,OAAA,CAAAK,GAAA,GAAAA,GAAA;AAEK,IAAMS,GAAG,GAAG,SAANA,GAAGA,CACdR,IAAyB,EACzBJ,IAAY,EACZJ,KAAU,EACE;EACZ,IAAMK,MAAM,GAAGF,KAAK,CAACC,IAAI,CAAC;EAC1B,IAAI,CAACC,MAAM,IAAII,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEJ,IAAI,CAAC,EAAE;IACxCI,IAAI,CAACJ,IAAI,CAAC,GAAGJ,KAAK;IAClB,OAAO,IAAI;EACb;EAEA,IAAAiB,QAAA,GAAAJ,cAAA,CAAwBR,MAAM;IAAvBS,GAAG,GAAAG,QAAA;IAAEF,QAAQ,GAAAE,QAAA;EACpB,IAAI,CAACR,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEM,GAAG,CAAC,EAAE,OAAO,KAAK;EAC3C,IAAI,CAACf,eAAe,CAACS,IAAI,CAACM,GAAG,CAAC,CAAC,EAAE,OAAO,KAAK;EAE7C,OAAOE,GAAG,CAACR,IAAI,CAACM,GAAG,CAAC,EAAEC,QAAQ,EAAEf,KAAK,CAAC;AACxC,CAAC;AAACE,OAAA,CAAAc,GAAA,GAAAA,GAAA"}
|
package/dist/esm/utils/path.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
export const isObjectOrArray = value => typeof value === 'object' && value !== null;
|
|
4
4
|
const split = path => {
|
|
5
|
-
const groups = path.match(/^([^.]
|
|
5
|
+
const groups = path.match(/^([^.]+)\.(.*)$/);
|
|
6
6
|
return groups ? [groups[1], groups[2]] : null;
|
|
7
7
|
};
|
|
8
8
|
export const get = (data, path) => {
|
|
@@ -17,12 +17,11 @@ export const get = (data, path) => {
|
|
|
17
17
|
return get(data[key], nextPath);
|
|
18
18
|
};
|
|
19
19
|
export const set = (data, path, value) => {
|
|
20
|
-
|
|
20
|
+
const groups = split(path);
|
|
21
|
+
if (!groups || Object.hasOwn(data, path)) {
|
|
21
22
|
data[path] = value;
|
|
22
23
|
return true;
|
|
23
24
|
}
|
|
24
|
-
const groups = split(path);
|
|
25
|
-
if (!groups) return false;
|
|
26
25
|
const [key, nextPath] = groups;
|
|
27
26
|
if (!Object.hasOwn(data, key)) return false;
|
|
28
27
|
if (!isObjectOrArray(data[key])) return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.js","names":["isObjectOrArray","value","split","path","groups","match","get","data","Object","hasOwn","undefined","key","nextPath","set"],"sources":["../../../src/utils/path.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any,no-param-reassign */\n\nexport const isObjectOrArray = (value: any): value is object =>\n typeof value === 'object' && value !== null;\n\nconst split = (path: string) => {\n const groups = path.match(/^([^.]
|
|
1
|
+
{"version":3,"file":"path.js","names":["isObjectOrArray","value","split","path","groups","match","get","data","Object","hasOwn","undefined","key","nextPath","set"],"sources":["../../../src/utils/path.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any,no-param-reassign */\n\nexport const isObjectOrArray = (value: any): value is object =>\n typeof value === 'object' && value !== null;\n\nconst split = (path: string) => {\n const groups = path.match(/^([^.]+)\\.(.*)$/);\n return groups ? [groups[1], groups[2]] : null;\n};\n\nexport const get = (data: Record<string, any>, path: string): any => {\n if (Object.hasOwn(data, path)) {\n return data[path];\n }\n\n const groups = split(path);\n if (!groups) return undefined;\n\n const [key, nextPath] = groups;\n if (!Object.hasOwn(data, key)) return undefined;\n if (!isObjectOrArray(data[key])) return undefined;\n\n return get(data[key], nextPath);\n};\n\nexport const set = (\n data: Record<string, any>,\n path: string,\n value: any\n): boolean => {\n const groups = split(path);\n if (!groups || Object.hasOwn(data, path)) {\n data[path] = value;\n return true;\n }\n\n const [key, nextPath] = groups;\n if (!Object.hasOwn(data, key)) return false;\n if (!isObjectOrArray(data[key])) return false;\n\n return set(data[key], nextPath, value);\n};\n"],"mappings":"AAAA;;AAEA,OAAO,MAAMA,eAAe,GAAIC,KAAU,IACxC,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI;AAE7C,MAAMC,KAAK,GAAIC,IAAY,IAAK;EAC9B,MAAMC,MAAM,GAAGD,IAAI,CAACE,KAAK,CAAC,iBAAiB,CAAC;EAC5C,OAAOD,MAAM,GAAG,CAACA,MAAM,CAAC,CAAC,CAAC,EAAEA,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;AAC/C,CAAC;AAED,OAAO,MAAME,GAAG,GAAGA,CAACC,IAAyB,EAAEJ,IAAY,KAAU;EACnE,IAAIK,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEJ,IAAI,CAAC,EAAE;IAC7B,OAAOI,IAAI,CAACJ,IAAI,CAAC;EACnB;EAEA,MAAMC,MAAM,GAAGF,KAAK,CAACC,IAAI,CAAC;EAC1B,IAAI,CAACC,MAAM,EAAE,OAAOM,SAAS;EAE7B,MAAM,CAACC,GAAG,EAAEC,QAAQ,CAAC,GAAGR,MAAM;EAC9B,IAAI,CAACI,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEI,GAAG,CAAC,EAAE,OAAOD,SAAS;EAC/C,IAAI,CAACV,eAAe,CAACO,IAAI,CAACI,GAAG,CAAC,CAAC,EAAE,OAAOD,SAAS;EAEjD,OAAOJ,GAAG,CAACC,IAAI,CAACI,GAAG,CAAC,EAAEC,QAAQ,CAAC;AACjC,CAAC;AAED,OAAO,MAAMC,GAAG,GAAGA,CACjBN,IAAyB,EACzBJ,IAAY,EACZF,KAAU,KACE;EACZ,MAAMG,MAAM,GAAGF,KAAK,CAACC,IAAI,CAAC;EAC1B,IAAI,CAACC,MAAM,IAAII,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEJ,IAAI,CAAC,EAAE;IACxCI,IAAI,CAACJ,IAAI,CAAC,GAAGF,KAAK;IAClB,OAAO,IAAI;EACb;EAEA,MAAM,CAACU,GAAG,EAAEC,QAAQ,CAAC,GAAGR,MAAM;EAC9B,IAAI,CAACI,MAAM,CAACC,MAAM,CAACF,IAAI,EAAEI,GAAG,CAAC,EAAE,OAAO,KAAK;EAC3C,IAAI,CAACX,eAAe,CAACO,IAAI,CAACI,GAAG,CAAC,CAAC,EAAE,OAAO,KAAK;EAE7C,OAAOE,GAAG,CAACN,IAAI,CAACI,GAAG,CAAC,EAAEC,QAAQ,EAAEX,KAAK,CAAC;AACxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/utils/path.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,UAAW,GAAG,oBACG,CAAC;AAO9C,eAAO,MAAM,GAAG,SAAU,OAAO,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,KAAG,GAa7D,CAAC;AAEF,eAAO,MAAM,GAAG,SACR,OAAO,MAAM,EAAE,GAAG,CAAC,QACnB,MAAM,SACL,GAAG,KACT,
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../../src/utils/path.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,UAAW,GAAG,oBACG,CAAC;AAO9C,eAAO,MAAM,GAAG,SAAU,OAAO,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,KAAG,GAa7D,CAAC;AAEF,eAAO,MAAM,GAAG,SACR,OAAO,MAAM,EAAE,GAAG,CAAC,QACnB,MAAM,SACL,GAAG,KACT,OAYF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@os-design/form",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.50",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"repository": "git@gitlab.com:os-team/libs/os-design.git",
|
|
6
6
|
"main": "dist/cjs/index.js",
|
|
@@ -30,11 +30,11 @@
|
|
|
30
30
|
"access": "public"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@os-design/core": "^1.0.
|
|
33
|
+
"@os-design/core": "^1.0.217",
|
|
34
34
|
"@os-design/icons": "^1.0.55"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"react": ">=18"
|
|
38
38
|
},
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "44d998b92565d7d710a4808acdc3ed617ac0ef1c"
|
|
40
40
|
}
|
package/src/utils/path.ts
CHANGED
|
@@ -4,7 +4,7 @@ export const isObjectOrArray = (value: any): value is object =>
|
|
|
4
4
|
typeof value === 'object' && value !== null;
|
|
5
5
|
|
|
6
6
|
const split = (path: string) => {
|
|
7
|
-
const groups = path.match(/^([^.]
|
|
7
|
+
const groups = path.match(/^([^.]+)\.(.*)$/);
|
|
8
8
|
return groups ? [groups[1], groups[2]] : null;
|
|
9
9
|
};
|
|
10
10
|
|
|
@@ -28,14 +28,12 @@ export const set = (
|
|
|
28
28
|
path: string,
|
|
29
29
|
value: any
|
|
30
30
|
): boolean => {
|
|
31
|
-
|
|
31
|
+
const groups = split(path);
|
|
32
|
+
if (!groups || Object.hasOwn(data, path)) {
|
|
32
33
|
data[path] = value;
|
|
33
34
|
return true;
|
|
34
35
|
}
|
|
35
36
|
|
|
36
|
-
const groups = split(path);
|
|
37
|
-
if (!groups) return false;
|
|
38
|
-
|
|
39
37
|
const [key, nextPath] = groups;
|
|
40
38
|
if (!Object.hasOwn(data, key)) return false;
|
|
41
39
|
if (!isObjectOrArray(data[key])) return false;
|