roboto-js 1.8.4 → 1.8.6

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,6 +1,33 @@
1
- import _ from 'lodash';
2
- export default class RbtUser {
3
- constructor(record, axiosInstance, options = {}) {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports["default"] = void 0;
7
+ var _lodash = _interopRequireDefault(require("lodash"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
9
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
10
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
11
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
12
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
13
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
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
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
16
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
17
+ 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; }
18
+ 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); }
19
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21
+ 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; }
22
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
23
+ 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); } }
24
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
25
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
26
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
27
+ var RbtUser = exports["default"] = /*#__PURE__*/function () {
28
+ function RbtUser(record, axiosInstance) {
29
+ var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
30
+ _classCallCheck(this, RbtUser);
4
31
  this._axios = axiosInstance;
5
32
  this._internalData = record;
6
33
  this.id = record.id;
@@ -15,155 +42,199 @@ export default class RbtUser {
15
42
  this._data = record.dataJson ? this._deepUnpackJson(record.dataJson) : {};
16
43
  }
17
44
  }
18
- get(path) {
19
- return _.get(this._data, path);
20
- }
21
- getData() {
22
- return {
23
- ...this._data
24
- };
25
- }
26
- _addChange(path) {
27
- // Ensure no duplicate paths
28
- if (!this.rpcMeta.changes.includes(path)) {
29
- this.rpcMeta.changes.push(path);
45
+ _createClass(RbtUser, [{
46
+ key: "get",
47
+ value: function get(path) {
48
+ return _lodash["default"].get(this._data, path);
30
49
  }
31
- }
32
- set(path, value) {
33
- const currentValue = _.get(this._data, path);
34
- if (!_.isEqual(currentValue, value)) {
35
- _.set(this._data, path, value);
36
- this._addChange(path);
50
+ }, {
51
+ key: "getData",
52
+ value: function getData() {
53
+ return _objectSpread({}, this._data);
37
54
  }
38
- }
39
- setData(newData) {
40
- if (typeof newData !== 'object' || newData === null) {
41
- throw new Error('setData expects an object');
55
+ }, {
56
+ key: "_addChange",
57
+ value: function _addChange(path) {
58
+ // Ensure no duplicate paths
59
+ if (!this.rpcMeta.changes.includes(path)) {
60
+ this.rpcMeta.changes.push(path);
61
+ }
42
62
  }
43
- Object.keys(newData).forEach(key => {
44
- if (!_.isEqual(_.get(this._data, key), newData[key])) {
45
- _.set(this._data, key, newData[key]);
46
- this._addChange(key);
63
+ }, {
64
+ key: "set",
65
+ value: function set(path, value) {
66
+ var currentValue = _lodash["default"].get(this._data, path);
67
+ if (!_lodash["default"].isEqual(currentValue, value)) {
68
+ _lodash["default"].set(this._data, path, value);
69
+ this._addChange(path);
47
70
  }
48
- });
49
- }
71
+ }
72
+ }, {
73
+ key: "setData",
74
+ value: function setData(newData) {
75
+ var _this = this;
76
+ if (_typeof(newData) !== 'object' || newData === null) {
77
+ throw new Error('setData expects an object');
78
+ }
79
+ Object.keys(newData).forEach(function (key) {
80
+ if (!_lodash["default"].isEqual(_lodash["default"].get(_this._data, key), newData[key])) {
81
+ _lodash["default"].set(_this._data, key, newData[key]);
82
+ _this._addChange(key);
83
+ }
84
+ });
85
+ }
50
86
 
51
- //
52
- // For Arrays
53
- //
87
+ //
88
+ // For Arrays
89
+ //
90
+ }, {
91
+ key: "setAppend",
92
+ value: function setAppend(key, value) {
93
+ var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
94
+ var existingValue = this.get(key) || []; // Get the existing value or default to an empty array
95
+ if (!Array.isArray(existingValue)) {
96
+ existingValue = []; // Ensure existingValue is an array if not already
97
+ }
98
+ var valuesToAdd = Array.isArray(value) ? value : [value]; // Convert value to an array if it's not one
54
99
 
55
- setAppend(key, value, options = {}) {
56
- let existingValue = this.get(key) || []; // Get the existing value or default to an empty array
57
- if (!Array.isArray(existingValue)) {
58
- existingValue = []; // Ensure existingValue is an array if not already
100
+ // Combine existingValue and valuesToAdd, filtering out duplicates
101
+ var mergedValues = Array.from(new Set([].concat(_toConsumableArray(existingValue), _toConsumableArray(valuesToAdd))));
102
+ this.set(key, mergedValues, options); // Set the updated array back to the user data
59
103
  }
60
- const valuesToAdd = Array.isArray(value) ? value : [value]; // Convert value to an array if it's not one
104
+ }, {
105
+ key: "setRemove",
106
+ value: function setRemove(key, value) {
107
+ var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
108
+ var existingValue = this.get(key) || []; // Get the existing value or default to an empty array
109
+ if (!Array.isArray(existingValue)) {
110
+ return; // If it's not an array, there's nothing to remove, so exit early
111
+ }
112
+ var valuesToRemove = Array.isArray(value) ? value : [value]; // Convert value to an array if it's not one
61
113
 
62
- // Combine existingValue and valuesToAdd, filtering out duplicates
63
- const mergedValues = Array.from(new Set([...existingValue, ...valuesToAdd]));
64
- this.set(key, mergedValues, options); // Set the updated array back to the user data
65
- }
66
- setRemove(key, value, options = {}) {
67
- let existingValue = this.get(key) || []; // Get the existing value or default to an empty array
68
- if (!Array.isArray(existingValue)) {
69
- return; // If it's not an array, there's nothing to remove, so exit early
114
+ // Filter out the values to remove from the existing value array
115
+ var filteredValues = existingValue.filter(function (item) {
116
+ return !valuesToRemove.includes(item);
117
+ });
118
+ this.set(key, filteredValues); // Set the updated array back to the user data
70
119
  }
71
- const valuesToRemove = Array.isArray(value) ? value : [value]; // Convert value to an array if it's not one
72
-
73
- // Filter out the values to remove from the existing value array
74
- const filteredValues = existingValue.filter(item => !valuesToRemove.includes(item));
75
- this.set(key, filteredValues); // Set the updated array back to the user data
76
- }
77
-
78
- //
79
- //
80
- //
81
120
 
82
- toRecord() {
83
- return {
84
- ...this._internalData,
85
- dataJson: JSON.stringify(this._data),
86
- rpcMeta: this.rpcMeta
87
- };
88
- }
89
- clone() {
90
- // Create a deep copy of the current object's data
91
- const clonedData = _.cloneDeep(this._internalData);
121
+ //
122
+ //
123
+ //
124
+ }, {
125
+ key: "toRecord",
126
+ value: function toRecord() {
127
+ return _objectSpread(_objectSpread({}, this._internalData), {}, {
128
+ dataJson: JSON.stringify(this._data),
129
+ rpcMeta: this.rpcMeta
130
+ });
131
+ }
132
+ }, {
133
+ key: "clone",
134
+ value: function clone() {
135
+ // Create a deep copy of the current object's data
136
+ var clonedData = _lodash["default"].cloneDeep(this._internalData);
92
137
 
93
- // Reset unique identifiers to ensure a new ID is generated upon saving
94
- delete clonedData.id;
95
- delete clonedData.id_revision;
138
+ // Reset unique identifiers to ensure a new ID is generated upon saving
139
+ delete clonedData.id;
140
+ delete clonedData.id_revision;
96
141
 
97
- // Create a new instance of RbtUser with the cloned data
98
- const clonedObject = new RbtUser(clonedData, this._axios, {
99
- isNew: true
100
- });
101
- return clonedObject;
102
- }
103
- async save() {
104
- try {
105
- debugger;
106
- const record = this.toRecord();
107
- record.type = '<@iac.user>';
108
- const response = await this._axios.post('/user_service/saveUser', [record]);
109
- if (response.data.ok === false) {
110
- throw new Error(response.data.message);
111
- }
112
- this._internalData = response.data;
113
- this.id = response.data.id;
114
- this.id_revision = response.data.id_revision;
115
- this.type = response.data.type;
116
- this.rpcMeta.isNew = false;
117
- return this;
118
- } catch (e) {
119
- console.log('RbtUser.save.error:', e);
120
- //console.log(e.response.data);
121
- throw e;
142
+ // Create a new instance of RbtUser with the cloned data
143
+ var clonedObject = new RbtUser(clonedData, this._axios, {
144
+ isNew: true
145
+ });
146
+ return clonedObject;
122
147
  }
123
- }
124
- _deepUnpackJson(value) {
125
- if (typeof value === 'string') {
126
- try {
127
- // Only parse as JSON if it's not a large number
128
- // https://chatgpt.com/c/6745902c-edf4-800c-ab52-31bf27dde2bd
129
- //
130
- if (!/^\d{16,}$/.test(value)) {
131
- const parsed = JSON.parse(value);
132
- // Recursively parse if the result is a string, object, or array
133
- return this._deepUnpackJson(parsed);
134
- }
135
- } catch (e) {
136
- return value; // Return the original string if parsing fails
148
+ }, {
149
+ key: "save",
150
+ value: function () {
151
+ var _save = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
152
+ var record, response;
153
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
154
+ while (1) switch (_context.prev = _context.next) {
155
+ case 0:
156
+ _context.prev = 0;
157
+ debugger;
158
+ record = this.toRecord();
159
+ record.type = '<@iac.user>';
160
+ _context.next = 6;
161
+ return this._axios.post('/user_service/saveUser', [record]);
162
+ case 6:
163
+ response = _context.sent;
164
+ if (!(response.data.ok === false)) {
165
+ _context.next = 9;
166
+ break;
167
+ }
168
+ throw new Error(response.data.message);
169
+ case 9:
170
+ this._internalData = response.data;
171
+ this.id = response.data.id;
172
+ this.id_revision = response.data.id_revision;
173
+ this.type = response.data.type;
174
+ this.rpcMeta.isNew = false;
175
+ return _context.abrupt("return", this);
176
+ case 17:
177
+ _context.prev = 17;
178
+ _context.t0 = _context["catch"](0);
179
+ throw _context.t0;
180
+ case 20:
181
+ case "end":
182
+ return _context.stop();
183
+ }
184
+ }, _callee, this, [[0, 17]]);
185
+ }));
186
+ function save() {
187
+ return _save.apply(this, arguments);
137
188
  }
138
- } else if (value !== null && typeof value === 'object') {
139
- // If it's an object (including arrays), recursively parse each value
140
- for (const key in value) {
141
- value[key] = this._deepUnpackJson(value[key]);
189
+ return save;
190
+ }()
191
+ }, {
192
+ key: "_deepUnpackJson",
193
+ value: function _deepUnpackJson(value) {
194
+ if (typeof value === 'string') {
195
+ try {
196
+ // Only parse as JSON if it's not a large number
197
+ // https://chatgpt.com/c/6745902c-edf4-800c-ab52-31bf27dde2bd
198
+ //
199
+ if (!/^\d{16,}$/.test(value)) {
200
+ var parsed = JSON.parse(value);
201
+ // Recursively parse if the result is a string, object, or array
202
+ return this._deepUnpackJson(parsed);
203
+ }
204
+ } catch (e) {
205
+ return value; // Return the original string if parsing fails
206
+ }
207
+ } else if (value !== null && _typeof(value) === 'object') {
208
+ // If it's an object (including arrays), recursively parse each value
209
+ for (var key in value) {
210
+ value[key] = this._deepUnpackJson(value[key]);
211
+ }
142
212
  }
213
+ return value;
143
214
  }
144
- return value;
145
- }
146
215
 
147
- //async delete() {
148
- // if (!this._internalData.type) {
149
- // throw new Error('Cannot delete object without type');
150
- // }
151
- //
152
- // try {
153
- // const record = this.toRecord();
154
- // const response = await this._axios.post('/object_service/deleteObject', [record]);
155
- //
156
- // if (response.data.ok === false) {
157
- // throw new Error(response.data.message);
158
- // }
159
- //
160
- // this._internalData = response.data;
161
- // return this;
162
- //
163
- // } catch (e) {
164
- // console.log('RbtUser.delete.error:');
165
- // console.log(e.response.data);
166
- // throw e;
167
- // }
168
- //}
169
- }
216
+ //async delete() {
217
+ // if (!this._internalData.type) {
218
+ // throw new Error('Cannot delete object without type');
219
+ // }
220
+ //
221
+ // try {
222
+ // const record = this.toRecord();
223
+ // const response = await this._axios.post('/object_service/deleteObject', [record]);
224
+ //
225
+ // if (response.data.ok === false) {
226
+ // throw new Error(response.data.message);
227
+ // }
228
+ //
229
+ // this._internalData = response.data;
230
+ // return this;
231
+ //
232
+ // } catch (e) {
233
+ // console.log('RbtUser.delete.error:');
234
+ // console.log(e.response.data);
235
+ // throw e;
236
+ // }
237
+ //}
238
+ }]);
239
+ return RbtUser;
240
+ }();