1 |
- {"ast":null,"code":"\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.commitServerChanges = commitServerChanges;\nexports.defaultState = defaultState;\nexports.estimateAttribute = estimateAttribute;\nexports.estimateAttributes = estimateAttributes;\nexports.mergeFirstPendingState = mergeFirstPendingState;\nexports.popPendingState = popPendingState;\nexports.pushPendingState = pushPendingState;\nexports.setPendingOp = setPendingOp;\nexports.setServerData = setServerData;\nvar _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\nvar _isArray = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/array/is-array\"));\nvar _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\nvar _encode = _interopRequireDefault(require(\"./encode\"));\nvar _CoreManager = _interopRequireDefault(require(\"./CoreManager\"));\nvar _ParseFile = _interopRequireDefault(require(\"./ParseFile\"));\nvar _ParseRelation = _interopRequireDefault(require(\"./ParseRelation\"));\nvar _TaskQueue = _interopRequireDefault(require(\"./TaskQueue\"));\nvar _ParseOp = require(\"./ParseOp\");\nfunction defaultState() {\n return {\n serverData: {},\n pendingOps: [{}],\n objectCache: {},\n tasks: new _TaskQueue.default(),\n existed: false\n };\n}\nfunction setServerData(serverData, attributes) {\n for (const attr in attributes) {\n if (typeof attributes[attr] !== 'undefined') {\n serverData[attr] = attributes[attr];\n } else {\n delete serverData[attr];\n }\n }\n}\nfunction setPendingOp(pendingOps, attr, op) {\n const last = pendingOps.length - 1;\n if (op) {\n pendingOps[last][attr] = op;\n } else {\n delete pendingOps[last][attr];\n }\n}\nfunction pushPendingState(pendingOps) {\n pendingOps.push({});\n}\nfunction popPendingState(pendingOps) {\n const first = pendingOps.shift();\n if (!pendingOps.length) {\n pendingOps[0] = {};\n }\n return first;\n}\nfunction mergeFirstPendingState(pendingOps) {\n const first = popPendingState(pendingOps);\n const next = pendingOps[0];\n for (const attr in first) {\n if (next[attr] && first[attr]) {\n const merged = next[attr].mergeWith(first[attr]);\n if (merged) {\n next[attr] = merged;\n }\n } else {\n next[attr] = first[attr];\n }\n }\n}\nfunction estimateAttribute(serverData, pendingOps, object, attr) {\n let value = serverData[attr];\n for (let i = 0; i < pendingOps.length; i++) {\n if (pendingOps[i][attr]) {\n if (pendingOps[i][attr] instanceof _ParseOp.RelationOp) {\n if (object.id) {\n value = pendingOps[i][attr].applyTo(value, object, attr);\n }\n } else {\n value = pendingOps[i][attr].applyTo(value);\n }\n }\n }\n return value;\n}\nfunction estimateAttributes(serverData, pendingOps, object) {\n const data = {};\n for (var attr in serverData) {\n data[attr] = serverData[attr];\n }\n for (let i = 0; i < pendingOps.length; i++) {\n for (attr in pendingOps[i]) {\n if (pendingOps[i][attr] instanceof _ParseOp.RelationOp) {\n if (object.id) {\n data[attr] = pendingOps[i][attr].applyTo(data[attr], object, attr);\n }\n } else {\n if ((0, _includes.default)(attr).call(attr, '.')) {\n // similar to nestedSet function\n const fields = attr.split('.');\n const last = fields[fields.length - 1];\n let object = data;\n for (let i = 0; i < fields.length - 1; i++) {\n const key = fields[i];\n if (!(key in object)) {\n const nextKey = fields[i + 1];\n if (!isNaN(nextKey)) {\n object[key] = [];\n } else {\n object[key] = {};\n }\n } else {\n if ((0, _isArray.default)(object[key])) {\n object[key] = [...object[key]];\n } else {\n object[key] = {\n ...object[key]\n };\n }\n }\n object = object[key];\n }\n object[last] = pendingOps[i][attr].applyTo(object[last]);\n } else {\n data[attr] = pendingOps[i][attr].applyTo(data[attr]);\n }\n }\n }\n }\n return data;\n}\n\n/**\n * Allows setting properties/variables deep in an object.\n * Converts a.b into { a: { b: value } } for dot notation on Objects\n * Converts a.0.b into { a: [{ b: value }] } for dot notation on Arrays\n *\n * @param obj The object to assign the value to\n * @param key The key to assign. If it's in a deeper path, then use dot notation (`prop1.prop2.prop3`)\n * Note that intermediate object(s) in the nested path are automatically created if they don't exist.\n * @param value The value to assign. If it's an `undefined` then the key is deleted.\n */\nfunction nestedSet(obj, key, value) {\n const paths = key.split('.');\n for (let i = 0; i < paths.length - 1; i++) {\n const path = paths[i];\n if (!(path in obj)) {\n const nextPath = paths[i + 1];\n if (!isNaN(nextPath)) {\n obj[path] = [];\n } else {\n obj[path] = {};\n }\n }\n obj = obj[path];\n }\n if (typeof value === 'undefined') {\n delete obj[paths[paths.length - 1]];\n } else {\n obj[paths[paths.length - 1]] = value;\n }\n}\nfunction commitServerChanges(serverData, objectCache, changes) {\n const ParseObject = _CoreManager.default.getParseObject();\n for (const attr in changes) {\n const val = changes[attr];\n nestedSet(serverData, attr, val);\n if (val && typeof val === 'object' && !(val instanceof ParseObject) && !(val instanceof _ParseFile.default) && !(val instanceof _ParseRelation.default)) {\n const json = (0, _encode.default)(val, false, true);\n objectCache[attr] = (0, _stringify.default)(json);\n }\n }\n}","map":{"version":3,"names":["_Object$defineProperty","require","_interopRequireDefault","exports","value","commitServerChanges","defaultState","estimateAttribute","estimateAttributes","mergeFirstPendingState","popPendingState","pushPendingState","setPendingOp","setServerData","_includes","_isArray","_stringify","_encode","_CoreManager","_ParseFile","_ParseRelation","_TaskQueue","_ParseOp","serverData","pendingOps","objectCache","tasks","default","existed","attributes","attr","op","last","length","push","first","shift","next","merged","mergeWith","object","i","RelationOp","id","applyTo","data","call","fields","split","key","nextKey","isNaN","nestedSet","obj","paths","path","nextPath","changes","ParseObject","getParseObject","val","json"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/parse/lib/browser/ObjectStateMutations.js"],"sourcesContent":["\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.commitServerChanges = commitServerChanges;\nexports.defaultState = defaultState;\nexports.estimateAttribute = estimateAttribute;\nexports.estimateAttributes = estimateAttributes;\nexports.mergeFirstPendingState = mergeFirstPendingState;\nexports.popPendingState = popPendingState;\nexports.pushPendingState = pushPendingState;\nexports.setPendingOp = setPendingOp;\nexports.setServerData = setServerData;\nvar _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\nvar _isArray = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/array/is-array\"));\nvar _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\nvar _encode = _interopRequireDefault(require(\"./encode\"));\nvar _CoreManager = _interopRequireDefault(require(\"./CoreManager\"));\nvar _ParseFile = _interopRequireDefault(require(\"./ParseFile\"));\nvar _ParseRelation = _interopRequireDefault(require(\"./ParseRelation\"));\nvar _TaskQueue = _interopRequireDefault(require(\"./TaskQueue\"));\nvar _ParseOp = require(\"./ParseOp\");\nfunction defaultState() {\n return {\n serverData: {},\n pendingOps: [{}],\n objectCache: {},\n tasks: new _TaskQueue.default(),\n existed: false\n };\n}\nfunction setServerData(serverData, attributes) {\n for (const attr in attributes) {\n if (typeof attributes[attr] !== 'undefined') {\n serverData[attr] = attributes[attr];\n } else {\n delete serverData[attr];\n }\n }\n}\nfunction setPendingOp(pendingOps, attr, op) {\n const last = pendingOps.length - 1;\n if (op) {\n pendingOps[last][attr] = op;\n } else {\n delete pendingOps[last][attr];\n }\n}\nfunction pushPendingState(pendingOps) {\n pendingOps.push({});\n}\nfunction popPendingState(pendingOps) {\n const first = pendingOps.shift();\n if (!pendingOps.length) {\n pendingOps[0] = {};\n }\n return first;\n}\nfunction mergeFirstPendingState(pendingOps) {\n const first = popPendingState(pendingOps);\n const next = pendingOps[0];\n for (const attr in first) {\n if (next[attr] && first[attr]) {\n const merged = next[attr].mergeWith(first[attr]);\n if (merged) {\n next[attr] = merged;\n }\n } else {\n next[attr] = first[attr];\n }\n }\n}\nfunction estimateAttribute(serverData, pendingOps, object, attr) {\n let value = serverData[attr];\n for (let i = 0; i < pendingOps.length; i++) {\n if (pendingOps[i][attr]) {\n if (pendingOps[i][attr] instanceof _ParseOp.RelationOp) {\n if (object.id) {\n value = pendingOps[i][attr].applyTo(value, object, attr);\n }\n } else {\n value = pendingOps[i][attr].applyTo(value);\n }\n }\n }\n return value;\n}\nfunction estimateAttributes(serverData, pendingOps, object) {\n const data = {};\n for (var attr in serverData) {\n data[attr] = serverData[attr];\n }\n for (let i = 0; i < pendingOps.length; i++) {\n for (attr in pendingOps[i]) {\n if (pendingOps[i][attr] instanceof _ParseOp.RelationOp) {\n if (object.id) {\n data[attr] = pendingOps[i][attr].applyTo(data[attr], object, attr);\n }\n } else {\n if ((0, _includes.default)(attr).call(attr, '.')) {\n // similar to nestedSet function\n const fields = attr.split('.');\n const last = fields[fields.length - 1];\n let object = data;\n for (let i = 0; i < fields.length - 1; i++) {\n const key = fields[i];\n if (!(key in object)) {\n const nextKey = fields[i + 1];\n if (!isNaN(nextKey)) {\n object[key] = [];\n } else {\n object[key] = {};\n }\n } else {\n if ((0, _isArray.default)(object[key])) {\n object[key] = [...object[key]];\n } else {\n object[key] = {\n ...object[key]\n };\n }\n }\n object = object[key];\n }\n object[last] = pendingOps[i][attr].applyTo(object[last]);\n } else {\n data[attr] = pendingOps[i][attr].applyTo(data[attr]);\n }\n }\n }\n }\n return data;\n}\n\n/**\n * Allows setting properties/variables deep in an object.\n * Converts a.b into { a: { b: value } } for dot notation on Objects\n * Converts a.0.b into { a: [{ b: value }] } for dot notation on Arrays\n *\n * @param obj The object to assign the value to\n * @param key The key to assign. If it's in a deeper path, then use dot notation (`prop1.prop2.prop3`)\n * Note that intermediate object(s) in the nested path are automatically created if they don't exist.\n * @param value The value to assign. If it's an `undefined` then the key is deleted.\n */\nfunction nestedSet(obj, key, value) {\n const paths = key.split('.');\n for (let i = 0; i < paths.length - 1; i++) {\n const path = paths[i];\n if (!(path in obj)) {\n const nextPath = paths[i + 1];\n if (!isNaN(nextPath)) {\n obj[path] = [];\n } else {\n obj[path] = {};\n }\n }\n obj = obj[path];\n }\n if (typeof value === 'undefined') {\n delete obj[paths[paths.length - 1]];\n } else {\n obj[paths[paths.length - 1]] = value;\n }\n}\nfunction commitServerChanges(serverData, objectCache, changes) {\n const ParseObject = _CoreManager.default.getParseObject();\n for (const attr in changes) {\n const val = changes[attr];\n nestedSet(serverData, attr, val);\n if (val && typeof val === 'object' && !(val instanceof ParseObject) && !(val instanceof _ParseFile.default) && !(val instanceof _ParseRelation.default)) {\n const json = (0, _encode.default)(val, false, true);\n objectCache[attr] = (0, _stringify.default)(json);\n }\n }\n}"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"script","externalDependencies":[]}
|