@webkrafters/react-observable-context 4.5.0 → 4.5.1

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.
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
3
  Object.defineProperty(exports, "__esModule", {
3
4
  value: true
4
5
  });
@@ -12,7 +13,11 @@ var _storage2 = _interopRequireDefault(require("../../../model/storage"));
12
13
  var _usePrehooksRef = _interopRequireDefault(require("../use-prehooks-ref"));
13
14
  var _useStateManager2 = _interopRequireDefault(require("../use-state-manager"));
14
15
  var _setState2 = _interopRequireDefault(require("../../set-state"));
16
+ var _ = require("../..");
15
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
18
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
20
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
16
21
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
17
22
  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."); }
18
23
  function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) { ; } } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
@@ -72,7 +77,10 @@ var useStore = function useStore(prehooks, value, storage) {
72
77
  var resetState = (0, _react.useCallback)(function () {
73
78
  var propertyPaths = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
74
79
  var original = _storage.clone(_storage.getItem(storageKey.current));
75
- var resetData = !propertyPaths.length ? {} : propertyPaths.includes(_constants.FULL_STATE_SELECTOR) ? original : (0, _utils.mapPathsToObject)(original, propertyPaths);
80
+ var resetData = !propertyPaths.length ? {} : propertyPaths.includes(_constants.FULL_STATE_SELECTOR) ? _defineProperty({}, _.REPLACE_TAG, original) : (0, _utils.mapPathsToObject)(original, propertyPaths, function (_ref2) {
81
+ var value = _ref2.value;
82
+ return _defineProperty({}, _.REPLACE_TAG, value);
83
+ });
76
84
  runPrehook(prehooksRef.current, 'resetState', [resetData, {
77
85
  current: (0, _utils.clonedeep)(state),
78
86
  original: original
@@ -3,7 +3,8 @@ export function isDataContainer(v: any): boolean;
3
3
  export function makeReadonly<T>(v: T): Readonly<T>;
4
4
  export function mapPathsToObject<T extends {
5
5
  [x: string]: any;
6
- }>(source: T, propertyPaths: Array<string>): { [K in keyof T]?: any; };
6
+ }>(source: T, propertyPaths: Array<string>, transform?: Tranform): { [K in keyof T]?: any; };
7
7
  export function clonedeep<T, R>(value: T): R;
8
8
  export const getProperty: typeof get;
9
+ export type Tranform = (property: import("@webkrafters/get-property").PropertyInfo) => T;
9
10
  import get from "@webkrafters/get-property";
@@ -10,7 +10,7 @@ exports.mapPathsToObject = mapPathsToObject;
10
10
  var _lodash = _interopRequireDefault(require("lodash.clonedeepwith"));
11
11
  var _lodash2 = _interopRequireDefault(require("lodash.isplainobject"));
12
12
  var _clonedeepEligibilityCheck = _interopRequireDefault(require("./clonedeep-eligibility-check"));
13
- var _getProperty2 = _interopRequireDefault(require("@webkrafters/get-property"));
13
+ var _getProperty = _interopRequireDefault(require("@webkrafters/get-property"));
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
15
15
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
16
16
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
@@ -89,7 +89,7 @@ var clonedeep = function () {
89
89
  return clonedeep;
90
90
  }();
91
91
  exports.clonedeep = clonedeep;
92
- var getProperty = _getProperty2["default"];
92
+ var getProperty = _getProperty["default"];
93
93
  exports.getProperty = getProperty;
94
94
  function isDataContainer(v) {
95
95
  return (0, _lodash2["default"])(v) || Array.isArray(v);
@@ -112,7 +112,12 @@ function makeReadonly(v) {
112
112
  return v;
113
113
  }
114
114
  ;
115
+ var defaultForamtValue = function defaultForamtValue(_ref) {
116
+ var value = _ref.value;
117
+ return value;
118
+ };
115
119
  function mapPathsToObject(source, propertyPaths) {
120
+ var transform = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultForamtValue;
116
121
  var paths = [];
117
122
  var _iterator2 = _createForOfIteratorHelper(propertyPaths),
118
123
  _step2;
@@ -133,16 +138,14 @@ function mapPathsToObject(source, propertyPaths) {
133
138
  try {
134
139
  for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
135
140
  var _path2 = _step3.value;
136
- var _getProperty = getProperty(source, _path2),
137
- exists = _getProperty.exists,
138
- value = _getProperty.value;
139
- if (!exists) {
141
+ var property = getProperty(source, _path2);
142
+ if (!property.exists) {
140
143
  continue;
141
144
  }
142
145
  for (var tokens = _path2.split('.'), tLen = tokens.length, t = 0; t < tLen; t++) {
143
146
  var token = tokens[t];
144
147
  if (t + 1 === tLen) {
145
- object[token] = value;
148
+ object[token] = transform(property);
146
149
  object = dest;
147
150
  break;
148
151
  }
package/package.json CHANGED
@@ -125,7 +125,7 @@
125
125
  "url": "git+https://github.com/webKrafters/react-observable-context.git"
126
126
  },
127
127
  "scripts": {
128
- "build": "eslint --fix && rm -rf dist && babel src -d dist --ignore '**/*.test.js' && npx -p typescript tsc",
128
+ "build": "eslint --fix && rm -rf dist && babel src -d dist --ignore '**/*.test.js' && tsc",
129
129
  "postbuild": "node ./post-builder",
130
130
  "test": "eslint --fix && jest --coverage --updateSnapshot",
131
131
  "test:clean": "jest --clearCache",
@@ -133,5 +133,5 @@
133
133
  "test:watch": "eslint --fix && jest --updateSnapshot --watchAll"
134
134
  },
135
135
  "types": "dist/main/index.d.ts",
136
- "version": "4.5.0"
136
+ "version": "4.5.1"
137
137
  }