@azrico/webobject 1.2.0 → 1.2.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.
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
* You will post this to the server for saving
|
|
23
23
|
* automatically removes unchangable fields
|
|
24
24
|
* @returns
|
|
25
|
-
*/function(){function a(a){return c.apply(this,arguments)}var c=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function c(a){var d,e,f,g,h,i,j,k,l,m,n,o,q,r=this;return _regeneratorRuntime().wrap(function p(c){for(;1;)switch(c.prev=c.next){case 0:
|
|
25
|
+
*/function(){function a(a){return c.apply(this,arguments)}var c=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function c(a){var d,e,f,g,h,i,j,k,l,m,n,o,q,r,t=this;return _regeneratorRuntime().wrap(function p(c){for(;1;)switch(c.prev=c.next){case 0:n=function a(){return n=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function c(a){var d;return _regeneratorRuntime().wrap(function e(c){for(;1;)switch(c.prev=c.next){case 0:if(null!=a){c.next=2;break}return c.abrupt("return",void 0);case 2:if(!Array.isArray(a)){c.next=6;break}return c.next=5,Promise.all(a.map(/*#__PURE__*/function(){var a=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function b(a){return _regeneratorRuntime().wrap(function c(b){for(;1;)switch(b.prev=b.next){case 0:return b.next=2,m(a);case 2:return b.abrupt("return",b.sent);case 3:case"end":return b.stop();}},b)}));return function(b){return a.apply(this,arguments)}}()));case 5:return c.abrupt("return",c.sent);case 6:if(!(a instanceof b&&"function"==typeof a.get_deltaObject)){c.next=15;break}return c.next=9,a.get_deltaObject({isChild:!0});case 9:if(d=c.sent,(0,_object.object_isEmpty)(d)){c.next=14;break}return c.abrupt("return",d);case 14:return c.abrupt("return",a);case 15:return c.abrupt("return",a);case 16:case"end":return c.stop();}},c)})),n.apply(this,arguments)},m=function b(a){return n.apply(this,arguments)},a||(a={}),d={},e=a.isChild,f=a.useDelta,g=a.allProperties,h=null!=this.__changeables||null!=this.__unchangeables,i=!!a.extraProperties,j=g||!f&&e&&h?_objectSpread({},this.allproperties):_objectSpread({},this.__delta),k=Object.keys(j),l=h?k.filter(function(a){return _SimpleObject2["default"].canChangeKey(t,a,i)}):k,o=_createForOfIteratorHelper(l),c.prev=13,o.s();case 15:if((q=o.n()).done){c.next=22;break}return r=q.value,c.next=19,m(j[r]);case 19:d[r]=c.sent;case 20:c.next=15;break;case 22:c.next=27;break;case 24:c.prev=24,c.t0=c["catch"](13),o.e(c.t0);case 27:return c.prev=27,o.f(),c.finish(27);case 30:return c.abrupt("return",d);case 31:case"end":return c.stop();}},c,this,[[13,24,27,30]])}));return a}()/* --------------------------------- Getters -------------------------------- */},{key:"__web_path",get:function get(){return this.constructor.__web_path}},{key:"__web_type",get:function get(){return this.constructor.__web_type}},{key:"manager",get:function get(){return this.get_managerClass()}},{key:"onLoad",value:/* -------------------------------------------------------------------------- */function(){function a(){return b.apply(this,arguments)}var b=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function a(){var b,c,d,e,f=arguments;return _regeneratorRuntime().wrap(function g(a){for(;1;)switch(a.prev=a.next){case 0:for(c=f.length,d=Array(c),e=0;e<c;e++)d[e]=f[e];return a.next=3,null===(b=this.manager)||void 0===b?void 0:b.onLoad.apply(b,d);case 3:return a.abrupt("return",a.sent);case 4:case"end":return a.stop();}},a,this)}));return a}()},{key:"onSave",value:function(){function a(){return b.apply(this,arguments)}var b=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function a(){var b,c,d,e,f=arguments;return _regeneratorRuntime().wrap(function g(a){for(;1;)switch(a.prev=a.next){case 0:for(c=f.length,d=Array(c),e=0;e<c;e++)d[e]=f[e];return a.next=3,null===(b=this.manager)||void 0===b?void 0:b.onSave.apply(b,d);case 3:return a.abrupt("return",a.sent);case 4:case"end":return a.stop();}},a,this)}));return a}()},{key:"onNew",value:function(){function a(){return b.apply(this,arguments)}var b=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function a(){var b,c,d,e,f=arguments;return _regeneratorRuntime().wrap(function g(a){for(;1;)switch(a.prev=a.next){case 0:for(c=f.length,d=Array(c),e=0;e<c;e++)d[e]=f[e];return a.next=3,null===(b=this.manager)||void 0===b?void 0:b.onNew.apply(b,d);case 3:return a.abrupt("return",a.sent);case 4:case"end":return a.stop();}},a,this)}));return a}()/* -------------------------------------------------------------------------- */ /**
|
|
26
26
|
* get a single web object
|
|
27
27
|
* default order of parameters : search,readonly,fetchID
|
|
28
28
|
*/}],[{key:"getMeta",value:function getMeta(a,b){if(null==a)return null;var c=[];return"object"===_typeof(a)&&(c="function"==typeof a.getValue?a.getValue("meta_data"):a.meta_data),(0,_object.getInArray)(c,"key",b)}/**
|
|
@@ -11,6 +11,7 @@ export declare class SimpleObject extends MapableObject {
|
|
|
11
11
|
static readonly __cache_name?: string;
|
|
12
12
|
static readonly __unchangeables?: string[];
|
|
13
13
|
static readonly __changeables?: string[];
|
|
14
|
+
static readonly __extraProperties?: string[];
|
|
14
15
|
static readonly __use_delta: boolean;
|
|
15
16
|
_static(): Function;
|
|
16
17
|
__originalobject?: this;
|
|
@@ -51,7 +52,7 @@ export declare class SimpleObject extends MapableObject {
|
|
|
51
52
|
setSubValue(key: PropOf<this>, objKey: string, subvalue: any, sendChanges?: sendChangesType): Promise<boolean>;
|
|
52
53
|
pushValue<MKey extends PropOf<this>>(key: MKey, value: any, sendChanges?: sendChangesType): Promise<this[MKey] | false>;
|
|
53
54
|
notifyChanged(type: string, key: string, value: any, subvalue?: any): Promise<void>;
|
|
54
|
-
static canChangeKey(object: SimpleObject, key: string): boolean;
|
|
55
|
+
static canChangeKey(object: SimpleObject, key: string, useExtraProps: boolean): boolean;
|
|
55
56
|
/**
|
|
56
57
|
* Apply the changes and empty the delta object
|
|
57
58
|
*/
|
|
@@ -13,6 +13,6 @@
|
|
|
13
13
|
},{key:"pushValue",value:function(){function a(a,c){return b.apply(this,arguments)}var b=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function c(a,b){var d,e,f=arguments;return _regeneratorRuntime().wrap(function g(c){for(;1;)switch(c.prev=c.next){case 0:if(d=2<f.length&&void 0!==f[2]?f[2]:"auto",null!=b){c.next=3;break}return c.abrupt("return",!1);case 3:if(this.canModify){c.next=9;break}if(!this.__throw_errors){c.next=8;break}throw Error("Cant use pushValue when on readonly mode");case 8:return c.abrupt("return",!1);case 9:if(null==_classPrivateMethodGet(this,_getProperty,_getProperty2).call(this,a)&&_classPrivateMethodGet(this,_setProperty,_setProperty2).call(this,a,this.getValue(a)),e=_classPrivateMethodGet(this,_getProperty,_getProperty2).call(this,a),Array.isArray(e)){c.next=17;break}if(!this.__throw_errors){c.next=16;break}throw Error("Cant use pushValue on non Array keys");case 16:return c.abrupt("return",!1);case 17:if(e.push(b),_classPrivateMethodGet(this,_setProperty,_setProperty2).call(this,a,e),!0!==d&&"auto"!==d){c.next=22;break}return c.next=22,this.notifyChanged("",a+"",b);case 22:return c.abrupt("return",e);case 23:case"end":return c.stop();}},c,this)}));return a}()},{key:"notifyChanged",value:function(){function a(a,c,d,e){return b.apply(this,arguments)}var b=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function e(a,b,c,d){var f,g;return _regeneratorRuntime().wrap(function h(e){for(;1;)switch(e.prev=e.next){case 0:if(void 0===c&&"meta"!=a&&(c=this.getValue(b)),this.__changed=!0,f="",a&&(f+="[".concat(a+"","] ")),f+=d?"".concat(b+"","->").concat(c," = ").concat(d):"".concat(b+""," = ").concat(c),this.__lastChanged=f,g=this.get_managerClass(),!(g instanceof _ObjectManager["default"])){e.next=10;break}return e.next=10,g.notifyChanged(a,b,c,d);case 10:case"end":return e.stop();}},e,this)}));return a}()},{key:"apply_changes",value:/* -------------------------------------------------------------------------- */ /* Changes */ /* -------------------------------------------------------------------------- */ /**
|
|
14
14
|
* Apply the changes and empty the delta object
|
|
15
15
|
*/function apply_changes(){if(!this.__use_delta)return console.warn("you cant use apply_changes if you are not using Delta mode"),!1;for(var a in this.isChanged||console.warn("No changes to apply"),this.__delta){var b=this.__delta[a];this[a]=b}this.clear_changes()}},{key:"clear_changes",value:function clear_changes(){this.__delta={},this.__changed=!1}},{key:"isChanged",get:/* -------------------------------------------------------------------------- */ /* Get/Check */ /* -------------------------------------------------------------------------- */function get(){return!!this.__use_delta&&!(0,_object.object_isEmpty)(this.__delta)}},{key:"isDeleted",get:function get(){return!1}},{key:"d",get:function get(){return this.__use_delta?this.__delta:this}/* all updated properties */},{key:"allproperties",get:function get(){var a=_objectSpread(_objectSpread({},this),this.__delta);return a.__delta={},a}},{key:"canModify",get:function get(){return!this.__is_readonly&&this.isEditMode}},{key:"isEditMode",get:function get(){return!1!==this.__is_edit_mode}},{key:"__cache_name",get:function get(){return this.constructor.__cache_name}},{key:"__changeables",get:function get(){return this.constructor.__changeables}},{key:"__unchangeables",get:function get(){return this.constructor.__unchangeables}},{key:"__use_delta",get:function get(){return this.constructor.__use_delta}},{key:"isSaved",get:function get(){var a;return null!==(a=this.__saveResultIsSuccess)&&void 0!==a&&a}},{key:"isNew",get:function get(){var a=this.getID();return!a||("string"==typeof a?""==a||"-1"==a:"number"==typeof a&&-1==a)}},{key:"get_lastChanged",value:function get_lastChanged(){return!this.__lastChanged}},{key:"manager",get:function get(){return this.get_managerClass()}},{key:"getIndexOrID",value:function getIndexOrID(){return b.getIndexOrID(this)}},{key:"getIndex",value:function getIndex(){return b.getIndex(this)}},{key:"getID",value:function getID(){return b.getID(this)}},{key:"getOriginal",value:/* -------------------------------------------------------------------------- */ /* Original */ /* -------------------------------------------------------------------------- */function getOriginal(){return this.__originalobject||void 0}},{key:"setOriginal",value:function setOriginal(){var a=0<arguments.length&&void 0!==arguments[0]?arguments[0]:0;if(null===a)return void delete this.__originalobject;if(!this.isEditMode)return void console.warn("Cant use setOriginal on non original objects ! this will create an infinite loop");if(this.__is_readonly)return void delete this.__originalobject;0===a&&(a=this);var b=(0,_object.object_clone)(a);//this.__originalobject = cloneObject, ["__"];
|
|
16
|
-
return this.__originalobject=(0,_object.object_removeKeys)(b,["__"]),this}},{key:"setSaveResult",value:function setSaveResult(a,b){this.__saveResultType=b,!0===a||!1===a||(a?_classPrivateMethodGet(this,_setSaveResultObject,_setSaveResultObject2).call(this,a):_classPrivateMethodGet(this,_setSaveResultObject,_setSaveResultObject2).call(this,null)),this.__saveResultIsSuccess=("normal"===b||"nothing"===b)&&null!=a}},{key:"getSaveResult",value:function getSaveResult(){return!!this.isSaved&&this.__saveResultObject}},{key:"getSaveResultType",value:function getSaveResultType(){return this.__saveResultType||null}/* -------------------------------------------------------------------------- */ /* statics */ /* -------------------------------------------------------------------------- */}],[{key:"loadValues",value:function loadValues(a,c){var d=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];if(b.factoryClear(a),null==c)for(var e in a)e.startsWith("__")||delete a[e];else if("object"==_typeof(c))for(var f in c)f.startsWith("__")||(d||Object.prototype.hasOwnProperty.call(a,f))&&(a[f]=c[f]);return!0}/* -------------------------------------------------------------------------- */},{key:"getValue",value:function getValue(a,c){var d=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];return null==a?void 0:a instanceof b&&"function"==typeof a.getValue?a.getValue(c,d):!d&&!1!=a.__use_delta&&"object"===_typeof(a.__delta)&&c in a.__delta?a.__delta[c]:a[c]}},{key:"canChangeKey",value:function canChangeKey(a,b){if(!a||!b)return!1;var
|
|
16
|
+
return this.__originalobject=(0,_object.object_removeKeys)(b,["__"]),this}},{key:"setSaveResult",value:function setSaveResult(a,b){this.__saveResultType=b,!0===a||!1===a||(a?_classPrivateMethodGet(this,_setSaveResultObject,_setSaveResultObject2).call(this,a):_classPrivateMethodGet(this,_setSaveResultObject,_setSaveResultObject2).call(this,null)),this.__saveResultIsSuccess=("normal"===b||"nothing"===b)&&null!=a}},{key:"getSaveResult",value:function getSaveResult(){return!!this.isSaved&&this.__saveResultObject}},{key:"getSaveResultType",value:function getSaveResultType(){return this.__saveResultType||null}/* -------------------------------------------------------------------------- */ /* statics */ /* -------------------------------------------------------------------------- */}],[{key:"loadValues",value:function loadValues(a,c){var d=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];if(b.factoryClear(a),null==c)for(var e in a)e.startsWith("__")||delete a[e];else if("object"==_typeof(c))for(var f in c)f.startsWith("__")||(d||Object.prototype.hasOwnProperty.call(a,f))&&(a[f]=c[f]);return!0}/* -------------------------------------------------------------------------- */},{key:"getValue",value:function getValue(a,c){var d=!!(2<arguments.length&&void 0!==arguments[2])&&arguments[2];return null==a?void 0:a instanceof b&&"function"==typeof a.getValue?a.getValue(c,d):!d&&!1!=a.__use_delta&&"object"===_typeof(a.__delta)&&c in a.__delta?a.__delta[c]:a[c]}},{key:"canChangeKey",value:function canChangeKey(a,b,c){if(!a||!b)return!1;if(c){var f=a.constructor.__extraProperties;if(null!=f&&f.includes(b))return!0}var d=a.constructor.__changeables,e=a.constructor.__unchangeables;return!!(null==d||d.includes(b))&&!(null!=e&&e.includes(b))}},{key:"setReadonly",value:function setReadonly(a){var b=!(1<arguments.length&&void 0!==arguments[1])||arguments[1],c=[];a||(a=[]),c=Array.isArray(a)?a:[a];for(var d,e=0;e<c.length;e++)d=c[e],d.__is_readonly=b}},{key:"setThrowErrors",value:function setThrowErrors(a){var b=!(1<arguments.length&&void 0!==arguments[1])||arguments[1],c=[];a||(a=[]),c=Array.isArray(a)?a:[a];for(var d,e=0;e<c.length;e++)d=c[e],d.__throw_errors=b}},{key:"isDeleted",value:function isDeleted(a){return!!(a instanceof b)&&!0===a.isDeleted}},{key:"getIndexOrID",value:function getIndexOrID(a){var c=b.getIndex(a);return c&&-1!=c||(c=b.getID(a)),c||-1}},{key:"getIndex",value:function getIndex(a){if(null==a||null==a)return-1;switch(_typeof(a)){case"object":return a._index_value||-1;case"number":case"string":return+a;}return-1}},{key:"getID",value:function getID(a){if(null==a||null==a)return"";switch(_typeof(a)){case"object":return a.__data_id||a._id||a.id||a.ID||"";case"string":case"number":return a+"";}return""}},{key:"setOriginal",value:function setOriginal(a){var c=1<arguments.length&&void 0!==arguments[1]?arguments[1]:0;return a instanceof b?a.setOriginal(c):void 0}},{key:"getOriginal",value:function getOriginal(a){return a instanceof b?a.getOriginal():null===a||void 0===a?void 0:a.__originalobject}/* -------------------------------------------------------------------------- */ /* Errors */ /* -------------------------------------------------------------------------- */},{key:"addError",value:function addError(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:"auto",e=(0,_string.combine_if_not_blank)(b," : ",c);if(!a)"auto"===d&&(d=!0);else if(Array.isArray(a.__errors)||(a.__errors=[]),a.__errors.push(e),!1===a.__showErrors)return;return!0===d?(console.error("[REGISTER-ERROR]",e),_global.gfunc.run_action("add_error",{title:b,message:c,type:"error"})):console.error("[ERROR]",e),(null===a||void 0===a?void 0:a.__errors)||[]}},{key:"getErrors",value:function getErrors(a){return(null===a||void 0===a?void 0:a.__errors)||[]}},{key:"clearErrors",value:function clearErrors(a){return a&&(a.__errors=[]),!0}/* -------------------------------------------------------------------------- */ /* Save Results */ /* -------------------------------------------------------------------------- */},{key:"isResultValid",value:function isResultValid(a){if((0,_object.object_isEmpty)(a))return!1;switch(_typeof(a)){case"string":try{return a=JSON.parse(a),this.isResultValid(a)}catch(a){return!1}case"object":return!!(0,_object.object_isTrue)(a.acknowledged)||(a.expected&&a.result?(0,_object.object_equals)(a.expected,a.result):0<=+this.getID(a));case"number":return 0<a;case"boolean":return!0===a;}return!1}},{key:"factoryClear",value:function factoryClear(a){a.clear_changes(),b.clearErrors(a)}},{key:"delete_cache",value:function delete_cache(){this.__cache_name&&_global.gcache.delete_cache(this.__cache_name)}},{key:"get_canModify",value:function get_canModify(a){return!!(a instanceof b)&&a.canModify}/* -------------------------------------------------------------------------- */},{key:"equals",value:function equals(c,a){return console.warn("Dont use the default equals method !"),null!=c&&null!=a&&c===a}}]),b}(_MapableObject2.MapableObject);exports.SimpleObject=SimpleObject;function _setSubProperty2(a,b,c){var d=_classPrivateMethodGet(this,_getProperty,_getProperty2).call(this,a);//@ts-ignore
|
|
17
17
|
(null==d||"object"!==_typeof(d))&&(d={}),d[b]=c,_classPrivateMethodGet(this,_setProperty,_setProperty2).call(this,a,d)}function _getSubProperty2(a,b){var c=!!(2<arguments.length&&arguments[2]!==void 0)&&arguments[2],d=_classPrivateMethodGet(this,_getProperty,_getProperty2).call(this,a,c);return null==d||"object"!==_typeof(d)?void 0:d[b]}function _setProperty2(a,b){return this.__use_delta?this.__delta[a]=b:this[a]=b,!0}function _getProperty2(a){var b=!!(1<arguments.length&&arguments[1]!==void 0)&&arguments[1];//check if we should use delta version or normal version for this property
|
|
18
|
-
return this.__use_delta&&!b&&a in this.__delta?this.__delta[a]:this[a]}function _setSaveResultObject2(a){this.__saveResultObject=a}_defineProperty(SimpleObject,"__cache_name",void 0),_defineProperty(SimpleObject,"__unchangeables",void 0),_defineProperty(SimpleObject,"__changeables",void 0),_defineProperty(SimpleObject,"__use_delta",!0);var _default=SimpleObject;exports["default"]=_default;
|
|
18
|
+
return this.__use_delta&&!b&&a in this.__delta?this.__delta[a]:this[a]}function _setSaveResultObject2(a){this.__saveResultObject=a}_defineProperty(SimpleObject,"__cache_name",void 0),_defineProperty(SimpleObject,"__unchangeables",void 0),_defineProperty(SimpleObject,"__changeables",void 0),_defineProperty(SimpleObject,"__extraProperties",void 0),_defineProperty(SimpleObject,"__use_delta",!0);var _default=SimpleObject;exports["default"]=_default;
|