dom-render 1.0.97 → 1.0.99

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.
Files changed (202) hide show
  1. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  2. package/.idea/dom-render.iml +9 -0
  3. package/.idea/inspectionProfiles/Project_Default.xml +6 -0
  4. package/.idea/jpa-buddy.xml +6 -0
  5. package/.idea/misc.xml +8 -0
  6. package/.idea/modules.xml +8 -0
  7. package/.idea/vcs.xml +6 -0
  8. package/README.MD +6 -793
  9. package/package.json +1 -1
  10. package/DomRender.d.ts +0 -13
  11. package/DomRender.js +0 -72
  12. package/DomRenderProxy.d.ts +0 -30
  13. package/DomRenderProxy.js +0 -510
  14. package/components/ComponentSet.d.ts +0 -10
  15. package/components/ComponentSet.js +0 -13
  16. package/configs/Config.d.ts +0 -34
  17. package/configs/Config.js +0 -2
  18. package/configs/TargetAttr.d.ts +0 -6
  19. package/configs/TargetAttr.js +0 -2
  20. package/configs/TargetElement.d.ts +0 -14
  21. package/configs/TargetElement.js +0 -2
  22. package/css/parse/index.d.ts +0 -1
  23. package/css/parse/index.js +0 -512
  24. package/css/stringify/compiler.d.ts +0 -32
  25. package/css/stringify/compiler.js +0 -40
  26. package/css/stringify/compress.d.ts +0 -75
  27. package/css/stringify/compress.js +0 -156
  28. package/css/stringify/identity.d.ts +0 -85
  29. package/css/stringify/identity.js +0 -194
  30. package/css/stringify/index.d.ts +0 -14
  31. package/css/stringify/index.js +0 -44
  32. package/dist/bundle.js +0 -5493
  33. package/events/EventManager.d.ts +0 -49
  34. package/events/EventManager.js +0 -529
  35. package/iterators/Range.d.ts +0 -23
  36. package/iterators/Range.js +0 -80
  37. package/lifecycle/OnBeforeReturnGet.d.ts +0 -3
  38. package/lifecycle/OnBeforeReturnGet.js +0 -2
  39. package/lifecycle/OnBeforeReturnSet.d.ts +0 -3
  40. package/lifecycle/OnBeforeReturnSet.js +0 -2
  41. package/lifecycle/OnChangeAttrRender.d.ts +0 -3
  42. package/lifecycle/OnChangeAttrRender.js +0 -2
  43. package/lifecycle/OnCreateRender.d.ts +0 -3
  44. package/lifecycle/OnCreateRender.js +0 -2
  45. package/lifecycle/OnDestroyRender.d.ts +0 -4
  46. package/lifecycle/OnDestroyRender.js +0 -2
  47. package/lifecycle/OnInitRender.d.ts +0 -3
  48. package/lifecycle/OnInitRender.js +0 -2
  49. package/lifecycle/OnProxyDomRender.d.ts +0 -4
  50. package/lifecycle/OnProxyDomRender.js +0 -2
  51. package/managers/RenderManager.d.ts +0 -3
  52. package/managers/RenderManager.js +0 -18
  53. package/messenger/DefaultMessenger.d.ts +0 -3
  54. package/messenger/DefaultMessenger.js +0 -27
  55. package/messenger/Messenger.d.ts +0 -78
  56. package/messenger/Messenger.js +0 -201
  57. package/operators/Appender.d.ts +0 -10
  58. package/operators/Appender.js +0 -64
  59. package/operators/AttrExpresion.d.ts +0 -0
  60. package/operators/AttrExpresion.js +0 -44
  61. package/operators/Dr.d.ts +0 -8
  62. package/operators/Dr.js +0 -101
  63. package/operators/DrAppender.d.ts +0 -8
  64. package/operators/DrAppender.js +0 -107
  65. package/operators/DrFor.d.ts +0 -8
  66. package/operators/DrFor.js +0 -104
  67. package/operators/DrForOf.d.ts +0 -8
  68. package/operators/DrForOf.js +0 -107
  69. package/operators/DrForm.d.ts +0 -8
  70. package/operators/DrForm.js +0 -138
  71. package/operators/DrIf.d.ts +0 -8
  72. package/operators/DrIf.js +0 -108
  73. package/operators/DrInnerHTML.d.ts +0 -8
  74. package/operators/DrInnerHTML.js +0 -99
  75. package/operators/DrInnerText.d.ts +0 -8
  76. package/operators/DrInnerText.js +0 -97
  77. package/operators/DrPre.d.ts +0 -7
  78. package/operators/DrPre.js +0 -73
  79. package/operators/DrRepeat.d.ts +0 -8
  80. package/operators/DrRepeat.js +0 -105
  81. package/operators/DrTargetAttr.d.ts +0 -7
  82. package/operators/DrTargetAttr.js +0 -98
  83. package/operators/DrTargetElement.d.ts +0 -7
  84. package/operators/DrTargetElement.js +0 -114
  85. package/operators/DrThis.d.ts +0 -5
  86. package/operators/DrThis.js +0 -108
  87. package/operators/DrThisProperty.d.ts +0 -10
  88. package/operators/DrThisProperty.js +0 -143
  89. package/operators/OperatorExecuter.d.ts +0 -49
  90. package/operators/OperatorExecuter.js +0 -89
  91. package/operators/OperatorExecuterAttrRequire.d.ts +0 -8
  92. package/operators/OperatorExecuterAttrRequire.js +0 -79
  93. package/rawsets/AttrInitCallBack.d.ts +0 -5
  94. package/rawsets/AttrInitCallBack.js +0 -2
  95. package/rawsets/Attrs.d.ts +0 -24
  96. package/rawsets/Attrs.js +0 -2
  97. package/rawsets/CreatorMetaData.d.ts +0 -18
  98. package/rawsets/CreatorMetaData.js +0 -2
  99. package/rawsets/DestroyOptionType.d.ts +0 -4
  100. package/rawsets/DestroyOptionType.js +0 -8
  101. package/rawsets/ElementInitCallBack.d.ts +0 -8
  102. package/rawsets/ElementInitCallBack.js +0 -2
  103. package/rawsets/RawSet.d.ts +0 -118
  104. package/rawsets/RawSet.js +0 -1141
  105. package/rawsets/RawSetOperatorType.d.ts +0 -3
  106. package/rawsets/RawSetOperatorType.js +0 -7
  107. package/rawsets/RawSetType.d.ts +0 -7
  108. package/rawsets/RawSetType.js +0 -11
  109. package/rawsets/Render.d.ts +0 -17
  110. package/rawsets/Render.js +0 -2
  111. package/routers/HashRouter.d.ts +0 -9
  112. package/routers/HashRouter.js +0 -53
  113. package/routers/PathRouter.d.ts +0 -9
  114. package/routers/PathRouter.js +0 -52
  115. package/routers/Router.d.ts +0 -28
  116. package/routers/Router.js +0 -126
  117. package/types/Types.d.ts +0 -14
  118. package/types/Types.js +0 -36
  119. package/utils/clipboard/ClipBoardUtils.d.ts +0 -6
  120. package/utils/clipboard/ClipBoardUtils.js +0 -25
  121. package/utils/dom/DomUtils.d.ts +0 -13
  122. package/utils/dom/DomUtils.js +0 -47
  123. package/utils/location/LocationUtils.d.ts +0 -16
  124. package/utils/location/LocationUtils.js +0 -63
  125. package/utils/node/NodeUtils.d.ts +0 -10
  126. package/utils/node/NodeUtils.js +0 -27
  127. package/utils/random/RandomUtils.d.ts +0 -7
  128. package/utils/random/RandomUtils.js +0 -47
  129. package/utils/script/ScriptUtils.d.ts +0 -14
  130. package/utils/script/ScriptUtils.js +0 -89
  131. package/utils/storage/StorageUtils.d.ts +0 -16
  132. package/utils/storage/StorageUtils.js +0 -87
  133. package/utils/string/StringUtils.d.ts +0 -6
  134. package/utils/string/StringUtils.js +0 -58
  135. package/utils/valid/ValidUtils.d.ts +0 -10
  136. package/utils/valid/ValidUtils.js +0 -78
  137. package/validators/AllCheckedValidatorArray.d.ts +0 -6
  138. package/validators/AllCheckedValidatorArray.js +0 -32
  139. package/validators/AllUnCheckedValidatorArray.d.ts +0 -6
  140. package/validators/AllUnCheckedValidatorArray.js +0 -32
  141. package/validators/CheckedValidator.d.ts +0 -5
  142. package/validators/CheckedValidator.js +0 -32
  143. package/validators/CountEqualsCheckedValidatorArray.d.ts +0 -7
  144. package/validators/CountEqualsCheckedValidatorArray.js +0 -34
  145. package/validators/CountEqualsUnCheckedValidatorArray.d.ts +0 -7
  146. package/validators/CountEqualsUnCheckedValidatorArray.js +0 -34
  147. package/validators/CountGreaterThanCheckedValidatorArray.d.ts +0 -7
  148. package/validators/CountGreaterThanCheckedValidatorArray.js +0 -34
  149. package/validators/CountGreaterThanEqualsCheckedValidatorArray.d.ts +0 -7
  150. package/validators/CountGreaterThanEqualsCheckedValidatorArray.js +0 -34
  151. package/validators/CountGreaterThanEqualsUnCheckedValidatorArray.d.ts +0 -7
  152. package/validators/CountGreaterThanEqualsUnCheckedValidatorArray.js +0 -34
  153. package/validators/CountGreaterThanUnCheckedValidatorArray.d.ts +0 -7
  154. package/validators/CountGreaterThanUnCheckedValidatorArray.js +0 -34
  155. package/validators/CountLessThanCheckedValidatorArray.d.ts +0 -7
  156. package/validators/CountLessThanCheckedValidatorArray.js +0 -34
  157. package/validators/CountLessThanEqualsCheckedValidatorArray.d.ts +0 -7
  158. package/validators/CountLessThanEqualsCheckedValidatorArray.js +0 -34
  159. package/validators/CountLessThanEqualsUnCheckedValidatorArray.d.ts +0 -7
  160. package/validators/CountLessThanEqualsUnCheckedValidatorArray.js +0 -34
  161. package/validators/CountLessThanUnCheckedValidatorArray.d.ts +0 -7
  162. package/validators/CountLessThanUnCheckedValidatorArray.js +0 -34
  163. package/validators/CountUnCheckedValidatorArray.d.ts +0 -7
  164. package/validators/CountUnCheckedValidatorArray.js +0 -34
  165. package/validators/EmptyValidator.d.ts +0 -5
  166. package/validators/EmptyValidator.js +0 -33
  167. package/validators/ExcludeCheckedValidatorArray.d.ts +0 -8
  168. package/validators/ExcludeCheckedValidatorArray.js +0 -41
  169. package/validators/FormValidator.d.ts +0 -7
  170. package/validators/FormValidator.js +0 -37
  171. package/validators/IncludeCheckedValidatorArray.d.ts +0 -8
  172. package/validators/IncludeCheckedValidatorArray.js +0 -41
  173. package/validators/MultipleValidator.d.ts +0 -8
  174. package/validators/MultipleValidator.js +0 -48
  175. package/validators/NonPassValidator.d.ts +0 -5
  176. package/validators/NonPassValidator.js +0 -31
  177. package/validators/NotEmptyValidator.d.ts +0 -5
  178. package/validators/NotEmptyValidator.js +0 -34
  179. package/validators/NotRegExpTestValidator.d.ts +0 -6
  180. package/validators/NotRegExpTestValidator.js +0 -42
  181. package/validators/PassValidator.d.ts +0 -5
  182. package/validators/PassValidator.js +0 -31
  183. package/validators/RegExpTestValidator.d.ts +0 -6
  184. package/validators/RegExpTestValidator.js +0 -43
  185. package/validators/RequiredValidator.d.ts +0 -5
  186. package/validators/RequiredValidator.js +0 -33
  187. package/validators/UnCheckedValidator.d.ts +0 -5
  188. package/validators/UnCheckedValidator.js +0 -32
  189. package/validators/ValidMultipleValidator.d.ts +0 -9
  190. package/validators/ValidMultipleValidator.js +0 -34
  191. package/validators/ValidValidator.d.ts +0 -6
  192. package/validators/ValidValidator.js +0 -33
  193. package/validators/ValidValidatorArray.d.ts +0 -7
  194. package/validators/ValidValidatorArray.js +0 -33
  195. package/validators/Validator.d.ts +0 -57
  196. package/validators/Validator.js +0 -242
  197. package/validators/ValidatorArray.d.ts +0 -17
  198. package/validators/ValidatorArray.js +0 -99
  199. package/validators/ValueEqualsValidator.d.ts +0 -6
  200. package/validators/ValueEqualsValidator.js +0 -33
  201. package/validators/ValueNotEqualsValidator.d.ts +0 -6
  202. package/validators/ValueNotEqualsValidator.js +0 -33
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dom-render",
3
- "version": "1.0.97",
3
+ "version": "1.0.99",
4
4
  "main": "DomRender.js",
5
5
  "license": "MIT",
6
6
  "description": "html view template engine",
package/DomRender.d.ts DELETED
@@ -1,13 +0,0 @@
1
- import { Config } from './configs/Config';
2
- import { ConstructorType } from './types/Types';
3
- import { RawSet } from './rawsets/RawSet';
4
- export declare class DomRender {
5
- static run<T extends object>(obj: T, target?: Node | null, oConfig?: Config): T;
6
- static createComponent(param: {
7
- type: ConstructorType<any> | any;
8
- tagName?: string;
9
- template?: string;
10
- styles?: string[] | string;
11
- }): import("./configs/TargetElement").TargetElement;
12
- static createAttribute(attrName: string, getThisObj: (element: Element, attrValue: string, obj: any, rawSet: RawSet) => any, factory: (element: Element, attrValue: string, obj: any, rawSet: RawSet) => DocumentFragment): import("./configs/TargetAttr").TargetAttr;
13
- }
package/DomRender.js DELETED
@@ -1,72 +0,0 @@
1
- "use strict";
2
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
- if (ar || !(i in from)) {
5
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
- ar[i] = from[i];
7
- }
8
- }
9
- return to.concat(ar || Array.prototype.slice.call(from));
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DomRender = void 0;
13
- var DomRenderProxy_1 = require("./DomRenderProxy");
14
- var PathRouter_1 = require("./routers/PathRouter");
15
- var HashRouter_1 = require("./routers/HashRouter");
16
- var Types_1 = require("./types/Types");
17
- var RawSet_1 = require("./rawsets/RawSet");
18
- var DefaultMessenger_1 = require("./messenger/DefaultMessenger");
19
- var DomRender = /** @class */ (function () {
20
- function DomRender() {
21
- }
22
- DomRender.run = function (obj, target, oConfig) {
23
- var _a, _b, _c;
24
- var robj = obj;
25
- if ('_DomRender_isProxy' in obj) {
26
- if (target) {
27
- obj._DomRender_proxy.initRender(target);
28
- }
29
- robj = obj;
30
- return robj;
31
- }
32
- var config = oConfig;
33
- if (!config) {
34
- config = { window: window };
35
- }
36
- if (config && !config.window) {
37
- config.window = window;
38
- }
39
- config.routerType = config.routerType || 'none';
40
- config.messenger = Types_1.DomRenderFinalProxy.final((_a = config.messenger) !== null && _a !== void 0 ? _a : new DefaultMessenger_1.DefaultMessenger(config));
41
- var domRender = new DomRenderProxy_1.DomRenderProxy(obj, target, config);
42
- var dest = new Proxy(obj, domRender);
43
- robj = dest;
44
- if (config.routerType === 'path') {
45
- config.router = (_b = config.router) !== null && _b !== void 0 ? _b : new PathRouter_1.PathRouter(robj, config.window);
46
- }
47
- else if (config.routerType === 'hash') {
48
- config.router = (_c = config.router) !== null && _c !== void 0 ? _c : new HashRouter_1.HashRouter(robj, config.window);
49
- }
50
- else { // default
51
- // config.routerType = 'hash';
52
- // config.router = config.router ?? new HashRouter(robj, config.window);
53
- }
54
- domRender.run(robj);
55
- return robj;
56
- };
57
- DomRender.createComponent = function (param) {
58
- var _a, _b;
59
- // console.log('===>', typeof param.type, param.type.name, param.type.constructor.name)
60
- var component = RawSet_1.RawSet.createComponentTargetElement((_a = param.tagName) !== null && _a !== void 0 ? _a : (typeof param.type === 'function' ? param.type.name : param.type.constructor.name), function (e, o, r2, counstructorParam) {
61
- var _a;
62
- return typeof param.type === 'function' ? new ((_a = param.type).bind.apply(_a, __spreadArray([void 0], counstructorParam, false)))() : param.type;
63
- }, (_b = param.template) !== null && _b !== void 0 ? _b : '', Array.isArray(param.styles) ? param.styles : (param.styles ? [param.styles] : undefined));
64
- return component;
65
- };
66
- DomRender.createAttribute = function (attrName, getThisObj, factory) {
67
- var targetAttribute = RawSet_1.RawSet.createComponentTargetAttribute(attrName, getThisObj, factory);
68
- return targetAttribute;
69
- };
70
- return DomRender;
71
- }());
72
- exports.DomRender = DomRender;
@@ -1,30 +0,0 @@
1
- import { RawSet } from './rawsets/RawSet';
2
- import { Config } from './configs/Config';
3
- export declare class DomRenderProxy<T extends object> implements ProxyHandler<T> {
4
- _domRender_origin: T;
5
- config: Config;
6
- _domRender_ref: Map<object, Set<string>>;
7
- _rawSets: Map<string, Set<RawSet>>;
8
- _domRender_proxy?: T;
9
- _targets: Set<Node>;
10
- constructor(_domRender_origin: T, target: Node | null | undefined, config: Config);
11
- static unFinal<T = any>(obj: T): T;
12
- static final<T = any>(obj: T): T;
13
- static isFinal<T = any>(obj: T): boolean;
14
- run(objProxy: T): void;
15
- initRender(target: Node): void;
16
- getRawSets(): RawSet[];
17
- render(raws?: RawSet[] | string, fullPathStr?: string): Promise<void>;
18
- root(paths: string[], value?: any, lastDoneExecute?: boolean): string[];
19
- set(target: T, p: string | symbol, value: any, receiver: T): boolean;
20
- get(target: T, p: string | symbol, receiver: any): any;
21
- deleteProperty(target: T, p: string | symbol): boolean;
22
- has(target: T, p: string | symbol): boolean;
23
- proxy(parentProxy: T, obj: T | any, p: string): any;
24
- addRef(parent: object, path: string): void;
25
- addRawSetAndRender(path: string, rawSet: RawSet): void;
26
- addRawSet(path: string, rawSet: RawSet): void;
27
- removeRawSet(...raws: RawSet[]): void;
28
- private targetGarbageRawSet;
29
- private garbageRawSet;
30
- }
package/DomRenderProxy.js DELETED
@@ -1,510 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
- if (ar || !(i in from)) {
41
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
- ar[i] = from[i];
43
- }
44
- }
45
- return to.concat(ar || Array.prototype.slice.call(from));
46
- };
47
- Object.defineProperty(exports, "__esModule", { value: true });
48
- exports.DomRenderProxy = void 0;
49
- var RawSet_1 = require("./rawsets/RawSet");
50
- var EventManager_1 = require("./events/EventManager");
51
- var ScriptUtils_1 = require("./utils/script/ScriptUtils");
52
- var Types_1 = require("./types/Types");
53
- var RawSetType_1 = require("./rawsets/RawSetType");
54
- var DrThisProperty_1 = require("./operators/DrThisProperty");
55
- var RawSetOperatorType_1 = require("./rawsets/RawSetOperatorType");
56
- var excludeGetSetPropertys = ['onBeforeReturnGet', 'onBeforeReturnSet', '__domrender_components', '__render', '_DomRender_isFinal', '_domRender_ref', '_rawSets', '_domRender_proxy', '_targets', '_DomRender_origin', '_DomRender_ref', '_DomRender_proxy'];
57
- var DomRenderProxy = /** @class */ (function () {
58
- function DomRenderProxy(_domRender_origin, target, config) {
59
- this._domRender_origin = _domRender_origin;
60
- this.config = config;
61
- this._domRender_ref = new Map();
62
- this._rawSets = new Map();
63
- this._targets = new Set();
64
- if (target) {
65
- this._targets.add(target);
66
- }
67
- }
68
- DomRenderProxy.unFinal = function (obj) {
69
- return Types_1.DomRenderFinalProxy.unFinal(obj);
70
- };
71
- DomRenderProxy.final = function (obj) {
72
- return Types_1.DomRenderFinalProxy.final(obj);
73
- };
74
- DomRenderProxy.isFinal = function (obj) {
75
- return Types_1.DomRenderFinalProxy.isFinal(obj);
76
- };
77
- DomRenderProxy.prototype.run = function (objProxy) {
78
- var _this = this;
79
- var _a, _b;
80
- this._domRender_proxy = objProxy;
81
- (_b = (_a = objProxy) === null || _a === void 0 ? void 0 : _a.onProxyDomRender) === null || _b === void 0 ? void 0 : _b.call(_a, this.config);
82
- var obj = objProxy._DomRender_origin;
83
- if (obj) {
84
- Object.keys(obj).forEach(function (it) {
85
- var _a, _b;
86
- // console.log('key-------->', it)
87
- var target = obj[it];
88
- if (target !== undefined && target !== null && typeof target === 'object' && !DomRenderProxy.isFinal(target) && !Object.isFrozen(target) && !(obj instanceof Types_1.Shield)) {
89
- // console.log('target-------->', it, target);
90
- // console.count('target')
91
- // console.log('target-------->')
92
- var filter = (_b = (_a = _this.config.proxyExcludeTyps) === null || _a === void 0 ? void 0 : _a.filter(function (it) { return target instanceof it; })) !== null && _b !== void 0 ? _b : [];
93
- if (filter.length === 0) {
94
- // console.log('--------', objProxy, target, it)
95
- var proxyAfter = _this.proxy(objProxy, target, it);
96
- obj[it] = proxyAfter;
97
- }
98
- }
99
- });
100
- }
101
- this._targets.forEach(function (target) {
102
- _this.initRender(target);
103
- });
104
- };
105
- DomRenderProxy.prototype.initRender = function (target) {
106
- var _this = this;
107
- var _a, _b, _c, _d, _e;
108
- var onCreate = (_b = (_a = target).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, RawSet_1.RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
109
- var createParam = [];
110
- if (onCreate) {
111
- createParam = ScriptUtils_1.ScriptUtils.evalReturn(onCreate, this._domRender_proxy);
112
- if (!Array.isArray(createParam)) {
113
- createParam = [createParam];
114
- }
115
- }
116
- (_d = (_c = this._domRender_proxy) === null || _c === void 0 ? void 0 : _c.onCreateRender) === null || _d === void 0 ? void 0 : _d.call.apply(_d, __spreadArray([_c], createParam, false));
117
- var innerHTML = (_e = target.innerHTML) !== null && _e !== void 0 ? _e : '';
118
- this._targets.add(target);
119
- var rawSets = RawSet_1.RawSet.checkPointCreates(target, this._domRender_proxy, this.config);
120
- // console.log('initRender -------rawSet', rawSets)
121
- // 중요 초기에 한번 튕겨줘야함.
122
- EventManager_1.eventManager.applyEvent(this._domRender_proxy, EventManager_1.eventManager.findAttrElements(target, this.config), this.config);
123
- rawSets.forEach(function (it) {
124
- var variables = it.getUsingTriggerVariables(_this.config);
125
- if (variables.size <= 0) {
126
- _this.addRawSet('', it);
127
- }
128
- else {
129
- variables.forEach(function (sit) {
130
- _this.addRawSet(sit, it);
131
- });
132
- }
133
- });
134
- this.render(this.getRawSets()).then(function (it) {
135
- var _a, _b, _c, _d;
136
- // const render = {target} as Render;
137
- // const creatorMetaData = {
138
- // creator: this._domRender_proxy,
139
- // rootCreator: this._domRender_proxy,
140
- // innerHTML
141
- // } as CreatorMetaData;
142
- var onInit = (_b = (_a = target).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, RawSet_1.RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
143
- var initParam = [];
144
- if (onCreate) {
145
- initParam = ScriptUtils_1.ScriptUtils.evalReturn(onCreate, _this._domRender_proxy);
146
- if (!Array.isArray(initParam)) {
147
- initParam = [initParam];
148
- }
149
- }
150
- (_d = (_c = _this._domRender_proxy) === null || _c === void 0 ? void 0 : _c.onInitRender) === null || _d === void 0 ? void 0 : _d.call.apply(_d, __spreadArray([_c], initParam, false));
151
- });
152
- };
153
- DomRenderProxy.prototype.getRawSets = function () {
154
- var set = new Set();
155
- this._rawSets.forEach(function (v, k) {
156
- v.forEach(function (it) { return set.add(it); });
157
- });
158
- return Array.from(set);
159
- };
160
- // 중요 important
161
- DomRenderProxy.prototype.render = function (raws, fullPathStr) {
162
- var _a, _b, _c;
163
- return __awaiter(this, void 0, void 0, function () {
164
- var iter, removeRawSets, rawSets, _loop_1, this_1, _i, rawSets_1, it_1;
165
- var _this = this;
166
- return __generator(this, function (_d) {
167
- switch (_d.label) {
168
- case 0:
169
- if (typeof raws === 'string') {
170
- iter = this._rawSets.get(raws);
171
- if (iter) {
172
- raws = Array.from(iter);
173
- }
174
- else {
175
- raws = undefined;
176
- }
177
- }
178
- removeRawSets = [];
179
- rawSets = raws !== null && raws !== void 0 ? raws : this.getRawSets();
180
- _loop_1 = function (it_1) {
181
- var targetAttrMap, rawSets_2;
182
- return __generator(this, function (_e) {
183
- switch (_e.label) {
184
- case 0:
185
- it_1.getUsingTriggerVariables(this_1.config).forEach(function (path) { return _this.addRawSet(path, it_1); });
186
- if (!it_1.isConnected) return [3 /*break*/, 6];
187
- targetAttrMap = (_b = (_a = it_1.point.node) === null || _a === void 0 ? void 0 : _a.getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, EventManager_1.EventManager.normalAttrMapAttrName);
188
- if (!((_c = it_1.detect) === null || _c === void 0 ? void 0 : _c.action)) return [3 /*break*/, 1];
189
- it_1.detect.action();
190
- return [3 /*break*/, 5];
191
- case 1:
192
- if (!(it_1.type === RawSetType_1.RawSetType.TARGET_ELEMENT && it_1.data && fullPathStr && targetAttrMap && it_1.fragment.render)) return [3 /*break*/, 2];
193
- new Map(JSON.parse(targetAttrMap)).forEach(function (v, k) {
194
- var _a;
195
- // it?.data.onChangeAttrRender(k, null, v);
196
- var isUsing = EventManager_1.EventManager.isUsingThisVar(v, "this." + fullPathStr);
197
- if (isUsing) {
198
- var render = it_1.fragment.render;
199
- // console.log('render-->', (it.fragment as any).render)
200
- var script = render.renderScript + " return " + v + " ";
201
- var cval = ScriptUtils_1.ScriptUtils.eval(script, Object.assign((_a = _this._domRender_proxy) !== null && _a !== void 0 ? _a : {}, { __render: render }));
202
- it_1.data.onChangeAttrRender(k, cval);
203
- }
204
- // console.log('---?', v, fullPathStr, isUsing);
205
- });
206
- return [3 /*break*/, 5];
207
- case 2: return [4 /*yield*/, it_1.render(this_1._domRender_proxy, this_1.config)];
208
- case 3:
209
- rawSets_2 = _e.sent();
210
- if (!(rawSets_2 && rawSets_2.length > 0)) return [3 /*break*/, 5];
211
- return [4 /*yield*/, this_1.render(rawSets_2)];
212
- case 4:
213
- _e.sent();
214
- _e.label = 5;
215
- case 5: return [3 /*break*/, 7];
216
- case 6:
217
- removeRawSets.push(it_1);
218
- _e.label = 7;
219
- case 7: return [2 /*return*/];
220
- }
221
- });
222
- };
223
- this_1 = this;
224
- _i = 0, rawSets_1 = rawSets;
225
- _d.label = 1;
226
- case 1:
227
- if (!(_i < rawSets_1.length)) return [3 /*break*/, 4];
228
- it_1 = rawSets_1[_i];
229
- return [5 /*yield**/, _loop_1(it_1)];
230
- case 2:
231
- _d.sent();
232
- _d.label = 3;
233
- case 3:
234
- _i++;
235
- return [3 /*break*/, 1];
236
- case 4:
237
- if (removeRawSets.length > 0) {
238
- this.removeRawSet.apply(this, removeRawSets);
239
- }
240
- return [2 /*return*/];
241
- }
242
- });
243
- });
244
- };
245
- DomRenderProxy.prototype.root = function (paths, value, lastDoneExecute) {
246
- var _this = this;
247
- if (lastDoneExecute === void 0) { lastDoneExecute = true; }
248
- // console.log('root--->', paths, value, this._domRender_ref, this._domRender_origin);
249
- var fullPaths = [];
250
- if (this._domRender_ref.size > 0) {
251
- this._domRender_ref.forEach(function (it, key) {
252
- if ('_DomRender_isProxy' in key) {
253
- it.forEach(function (sit) {
254
- var _a;
255
- try {
256
- var items = (_a = key._DomRender_proxy) === null || _a === void 0 ? void 0 : _a.root(paths.concat(sit), value, lastDoneExecute);
257
- fullPaths.push(items.join(','));
258
- }
259
- catch (e) {
260
- // 오브젝트들 없어졌을수도있다 Destroy시점에서 오류나는경우가 있다. 따라서 참조 하는부분 없어져야한다.
261
- // console.error(e)
262
- // it.delete(sit);
263
- }
264
- });
265
- }
266
- });
267
- }
268
- else {
269
- // const firstPathStr = paths.slice(1).reverse().join('.');
270
- var strings = paths.reverse();
271
- // array같은경우도 키값으로 접근하기때문에 특정 인덱스를 찾아서 그부분만 바꿔줄수 있다.
272
- var fullPathStr_1 = strings.map(function (it) { return isNaN(Number(it)) ? '.' + it : "[" + it + "]"; }).join('').slice(1);
273
- // console.log('-------fullPathStr', fullPathStr, lastDoneExecute);
274
- if (lastDoneExecute) {
275
- // const firstData = ScriptUtils.evalReturn('this.' + firstPathStr, this._domRender_proxy);
276
- // console.log('-------', firstPathStr, firstData);
277
- // if (firstData instanceof Dictionary) {
278
- // }
279
- var iterable_1 = this._rawSets.get(fullPathStr_1);
280
- // array check
281
- var front_1 = strings.slice(0, strings.length - 1).map(function (it) { return isNaN(Number(it)) ? '.' + it : "[" + it + "]"; }).join('');
282
- var last_1 = strings[strings.length - 1];
283
- var data_1 = ScriptUtils_1.ScriptUtils.evalReturn('this' + front_1, this._domRender_proxy);
284
- // console.log('-------!!!!!', fullPathStr, iterable, data, front, last);
285
- new Promise(function (resolve) {
286
- var firstPathStr = front_1.slice(1);
287
- // check dictionary
288
- // console.log('-promise-------', firstPathStr, this)
289
- var firstTargets = _this._rawSets.get(firstPathStr);
290
- var firstTargetDictionary = [];
291
- firstTargets === null || firstTargets === void 0 ? void 0 : firstTargets.forEach(function (it) {
292
- var _a, _b;
293
- // console.log('----forEach---', it);
294
- var type = (_b = (_a = it.point.start).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, 'type');
295
- if (type === RawSetOperatorType_1.RawSetOperatorType.DR_THIS_PROPERTY) {
296
- firstTargetDictionary.push(it);
297
- }
298
- });
299
- if (firstTargetDictionary.length > 0) {
300
- // console.log('ddddddddddd', firstTargetDictionary);
301
- var rawSets_3 = [];
302
- var skip_1 = false;
303
- firstTargetDictionary.forEach(function (it) {
304
- var _a, _b;
305
- var startElement = it.point.start;
306
- var keys = (_b = (_a = startElement.getAttribute(RawSet_1.RawSet.DR_HAS_KEYS_OPTIONNAME)) === null || _a === void 0 ? void 0 : _a.split(',')) !== null && _b !== void 0 ? _b : [];
307
- if (value === undefined) {
308
- var rawSet = it.getHasRawSet(last_1);
309
- rawSet === null || rawSet === void 0 ? void 0 : rawSet.remove();
310
- startElement.setAttribute(RawSet_1.RawSet.DR_HAS_KEYS_OPTIONNAME, keys.filter(function (it) { return it !== last_1; }).join(','));
311
- }
312
- if (!keys.includes(last_1)) {
313
- var raws = DrThisProperty_1.DrThisProperty.append(_this._domRender_proxy, fullPathStr_1, last_1, it, _this.config);
314
- if (raws) {
315
- rawSets_3.push.apply(rawSets_3, raws);
316
- }
317
- }
318
- else {
319
- skip_1 = true;
320
- }
321
- });
322
- if (skip_1 === false || rawSets_3.length > 0) {
323
- return _this.render(rawSets_3);
324
- }
325
- }
326
- if (last_1 === 'length' && Array.isArray(data_1)) {
327
- var aIterable = _this._rawSets.get(firstPathStr);
328
- if (aIterable) {
329
- return _this.render(Array.from(aIterable));
330
- }
331
- }
332
- else if (iterable_1) {
333
- return _this.render(Array.from(iterable_1), fullPathStr_1);
334
- }
335
- }).then(function (it) {
336
- _this._targets.forEach(function (it) {
337
- // return;
338
- if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {
339
- var targets = EventManager_1.eventManager.findAttrElements(it, _this.config);
340
- // console.log('------>', targets);
341
- EventManager_1.eventManager.changeVar(_this._domRender_proxy, targets, "this." + fullPathStr_1, _this.config);
342
- }
343
- });
344
- });
345
- }
346
- fullPaths.push(fullPathStr_1);
347
- }
348
- return fullPaths;
349
- };
350
- DomRenderProxy.prototype.set = function (target, p, value, receiver) {
351
- var _a, _b, _c;
352
- // console.log('set-->', p, value, target, receiver);
353
- if (typeof p === 'string' && p !== '__domrender_components' && excludeGetSetPropertys.includes(p)) {
354
- target[p] = value;
355
- return true;
356
- }
357
- // console.log('set proxy-->', target, p, value, this._rawSets, this._domRender_ref);
358
- // if (typeof p === 'string' && '__render' === p) {
359
- // (target as any)[p] = value;
360
- // return true;
361
- // }
362
- // console.log('set--?', p, target, value);
363
- if (typeof p === 'string') {
364
- value = this.proxy(receiver, value, p);
365
- }
366
- target[p] = value;
367
- var fullPath;
368
- if (typeof p === 'string') {
369
- fullPath = this.root([p], value);
370
- }
371
- // console.log('full path:', fullPath);
372
- if (('onBeforeReturnSet' in receiver) && typeof p === 'string' && !((_a = this.config.proxyExcludeOnBeforeReturnSets) !== null && _a !== void 0 ? _a : []).concat(excludeGetSetPropertys).includes(p)) {
373
- (_c = (_b = receiver) === null || _b === void 0 ? void 0 : _b.onBeforeReturnSet) === null || _c === void 0 ? void 0 : _c.call(_b, p, value, fullPath);
374
- }
375
- return true;
376
- };
377
- DomRenderProxy.prototype.get = function (target, p, receiver) {
378
- var _a, _b, _c;
379
- // console.log('get-->', target, p, receiver);
380
- if (p === '_DomRender_origin') {
381
- return this._domRender_origin;
382
- }
383
- else if (p === '_DomRender_ref') {
384
- return this._domRender_ref;
385
- }
386
- else if (p === '_DomRender_proxy') {
387
- return this;
388
- }
389
- else {
390
- // Date라던지 이런놈들은-_-프록시가 이상하게 동작해서
391
- // console.log('--->', p, target, target.bind, 'bind' in target)
392
- // if ((p in target) && ('bind' in target)) {
393
- // try{
394
- // return (target as any)[p].bind(target);
395
- // }catch (e) {
396
- // console.error(e)
397
- // }
398
- // } else {
399
- // return (target as any)[p]
400
- // }
401
- // return (p in target) ? (target as any)[p].bind(target) : (target as any)[p]
402
- // console.log('-->', p, Object.prototype.toString.call((target as any)[p]), (target as any)[p])
403
- // return (target as any)[p]
404
- var it_2 = target[p];
405
- if (it_2 && typeof it_2 === 'object' && ('_DomRender_isProxy' in it_2) && Object.prototype.toString.call(it_2._DomRender_origin) === '[object Date]') {
406
- it_2 = it_2._DomRender_origin;
407
- }
408
- if (('onBeforeReturnGet' in receiver) && typeof p === 'string' && !((_a = this.config.proxyExcludeOnBeforeReturnGets) !== null && _a !== void 0 ? _a : []).concat(excludeGetSetPropertys).includes(p)) {
409
- (_c = (_b = receiver) === null || _b === void 0 ? void 0 : _b.onBeforeReturnGet) === null || _c === void 0 ? void 0 : _c.call(_b, p, it_2, this.root([p], it_2, false));
410
- }
411
- return it_2;
412
- }
413
- };
414
- DomRenderProxy.prototype.deleteProperty = function (target, p) {
415
- delete target[p];
416
- if (typeof p === 'string') {
417
- this.root([p]);
418
- }
419
- return true;
420
- };
421
- DomRenderProxy.prototype.has = function (target, p) {
422
- return p === '_DomRender_isProxy' || p in target;
423
- };
424
- DomRenderProxy.prototype.proxy = function (parentProxy, obj, p) {
425
- var _a, _b;
426
- var proxyTarget = ((_b = (_a = this.config.proxyExcludeTyps) === null || _a === void 0 ? void 0 : _a.filter(function (it) { return obj instanceof it; })) !== null && _b !== void 0 ? _b : []).length <= 0;
427
- if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && !('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Types_1.Shield)) {
428
- var domRender = new DomRenderProxy(obj, undefined, this.config);
429
- domRender.addRef(parentProxy, p);
430
- var proxy = new Proxy(obj, domRender);
431
- domRender.run(proxy);
432
- return proxy;
433
- }
434
- if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && ('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Types_1.Shield)) {
435
- var d = obj._DomRender_proxy;
436
- d.addRef(this._domRender_proxy, p);
437
- return obj;
438
- }
439
- else {
440
- return obj;
441
- }
442
- };
443
- DomRenderProxy.prototype.addRef = function (parent, path) {
444
- var _a;
445
- if (!this._domRender_ref.get(parent)) {
446
- this._domRender_ref.set(parent, new Set());
447
- }
448
- (_a = this._domRender_ref.get(parent)) === null || _a === void 0 ? void 0 : _a.add(path);
449
- };
450
- DomRenderProxy.prototype.addRawSetAndRender = function (path, rawSet) {
451
- this.addRawSet(path, rawSet);
452
- this.render([rawSet]);
453
- };
454
- DomRenderProxy.prototype.addRawSet = function (path, rawSet) {
455
- var _a;
456
- // console.log('addRawSet--> path:', path, 'rawSet:', rawSet)
457
- if (!this._rawSets.get(path)) {
458
- this._rawSets.set(path, new Set());
459
- }
460
- (_a = this._rawSets.get(path)) === null || _a === void 0 ? void 0 : _a.add(rawSet);
461
- };
462
- // public removeRawSet(...raws: RawSet[]) {
463
- // this._rawSets.forEach(it => {
464
- // raws.forEach(sit => it.delete(sit));
465
- // })
466
- // this.garbageRawSet();
467
- // }
468
- DomRenderProxy.prototype.removeRawSet = function () {
469
- var raws = [];
470
- for (var _i = 0; _i < arguments.length; _i++) {
471
- raws[_i] = arguments[_i];
472
- }
473
- this._rawSets.forEach(function (it) {
474
- it.forEach(function (sit) {
475
- if (!sit.isConnected) {
476
- it.delete(sit);
477
- }
478
- else if (raws.includes(sit)) {
479
- it.delete(sit);
480
- }
481
- });
482
- });
483
- this.targetGarbageRawSet();
484
- };
485
- DomRenderProxy.prototype.targetGarbageRawSet = function () {
486
- var _this = this;
487
- this._targets.forEach(function (it) {
488
- if (!it.isConnected) {
489
- _this._targets.delete(it);
490
- }
491
- });
492
- };
493
- DomRenderProxy.prototype.garbageRawSet = function () {
494
- var _this = this;
495
- this._targets.forEach(function (it) {
496
- if (!it.isConnected) {
497
- _this._targets.delete(it);
498
- }
499
- });
500
- this._rawSets.forEach(function (it) {
501
- it.forEach(function (sit) {
502
- if (!sit.isConnected) {
503
- it.delete(sit);
504
- }
505
- });
506
- });
507
- };
508
- return DomRenderProxy;
509
- }());
510
- exports.DomRenderProxy = DomRenderProxy;
@@ -1,10 +0,0 @@
1
- export declare type ComponentSetConfig = {
2
- objPath?: string | null;
3
- };
4
- export declare class ComponentSet {
5
- obj: any;
6
- template?: string | undefined;
7
- styles?: string[] | undefined;
8
- config: ComponentSetConfig;
9
- constructor(obj: any, template?: string | undefined, styles?: string[] | undefined, config?: ComponentSetConfig);
10
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ComponentSet = void 0;
4
- var ComponentSet = /** @class */ (function () {
5
- function ComponentSet(obj, template, styles, config) {
6
- this.obj = obj;
7
- this.template = template;
8
- this.styles = styles;
9
- this.config = Object.assign({ objPath: 'obj' }, config);
10
- }
11
- return ComponentSet;
12
- }());
13
- exports.ComponentSet = ComponentSet;