UNPKG

2.36 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../src/industry-state.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;AAEO,IAAI,wBAAQ,SAAR,KAAQ;AAAA;AAAA;;AAEf,sBAAqB;AAAA;;AAAA;;AAAA,wCAAN,IAAM;AAAN,YAAM;AAAA;;AAAA,4KACV,IADU;AAEpB;;AAJc;AAAA;AAAA,mCAgBF;AAAA;;AACX,YAAI,SAAS,KAAK,KAAL,CAAW,QAAX,GAAsB,MAAtB,CAA6B,KAA1C;AACA,aAAK,IAAI,IAAT,IAAiB,KAAK,SAAL,EAAjB,EAAmC;AACjC,cAAI,OAAO,OAAP,CAAe,IAAf,KAAwB,CAAC,CAA7B,EAAgC;AAAA;AAC9B,kBAAI,KAAK,OAAK,IAAL,CAAT;AACA,qBAAK,IAAL,IAAa;AAAA,mDAAI,IAAJ;AAAI,sBAAJ;AAAA;;AAAA,uBACX,GAAG,IAAH,0BAAiB,IAAjB,SAAuB,EAAE,OAAO,OAAK,KAAL,EAAT,EAAvB,GADW;AAAA,eAAb;AAF8B;AAI/B;AACF;AACD;AACD;AA1Bc;AAAA;AAAA,8BAoCA;AAAA,2CAAN,IAAM;AAAN,cAAM;AAAA;;AACb,aAAK,MAAL,GAAc,8BAAa,2BAAU,IAAV,CAAb,EAA8B,KAAK,MAAnC,CAAd;;AAEA,YAAI,KAAK,OAAL,IAAgB,KAAK,MAAzB,EAAiC;AAC/B,iBAAO,KAAK,OAAL,EAAP;AACD,SAFD,MAEO;AACL,iBAAO,KAAK,MAAZ;AACD;AACF;AA5Cc;AAAA;AAAA,0CAMY;AACzB,aAAK,QAAL,CAAc;AACZ,kBAAQ;AACN,kBAAM,CAAE,OAAF,CADA;AAEN,sBAAU,CAAE,OAAF;AAFJ;AADI,SAAd;AAMA;AACD;AAdc;AAAA;AAAA,gCA4BS;AACtB,wFAAmB;AAAA;;AAAA,6CADH,IACG;AADH,gBACG;AAAA;;AACjB,cAAI,gIAA4B,IAA5B,EAAJ;AACA,mBAAS,KAAT,iBAAkB,IAAlB;AACA,iBAAO,QAAP;AACD;AACF;AAlCc;AAAA;AAAA,IACH,KADG;AAAA,CAAZ","file":"industry-state.js","sourcesContent":["import { mergeObjects, toObjects } from \"standard-io\"\n\nexport let state = Class =>\n class extends Class {\n constructor(...args) {\n super(...args)\n }\n\n static beforeFactoryOnce() {\n this.industry({\n ignore: {\n args: [ \"state\" ],\n instance: [ \"state\" ]\n }\n })\n super.beforeFactoryOnce()\n }\n\n beforeInit() {\n let ignore = this.Class.industry().ignore.Class\n for (let name in this.functions()) {\n if (ignore.indexOf(name) == -1) {\n let fn = this[name]\n this[name] = (...args) =>\n fn.bind(this)(...args, { state: this.state() })\n }\n }\n super.beforeInit()\n }\n\n static factory(...args) {\n if (super.factory) {\n let instance = super.factory(...args)\n instance.state(...args)\n return instance\n }\n }\n\n state(...args) {\n this._state = mergeObjects(toObjects(args), this._state)\n\n if (this.updated && args.length) {\n return this.updated()\n } else {\n return this._state\n }\n }\n }\n"]}
\No newline at end of file