dom-render 1.0.98 → 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 -515
  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 -5442
  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 -105
  65. package/operators/DrFor.d.ts +0 -8
  66. package/operators/DrFor.js +0 -102
  67. package/operators/DrForOf.d.ts +0 -8
  68. package/operators/DrForOf.js +0 -105
  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 -106
  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 -71
  79. package/operators/DrRepeat.d.ts +0 -8
  80. package/operators/DrRepeat.js +0 -103
  81. package/operators/DrTargetAttr.d.ts +0 -7
  82. package/operators/DrTargetAttr.js +0 -96
  83. package/operators/DrTargetElement.d.ts +0 -7
  84. package/operators/DrTargetElement.js +0 -112
  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 -141
  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 -1142
  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.98",
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?: Omit<Config, 'window'>): 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, _d;
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 = (_d = config.router) !== null && _d !== void 0 ? _d : new HashRouter_1.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,515 +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 (g && (g = 0, op[0] && (_ = 0)), _) 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;
80
- this._domRender_proxy = objProxy;
81
- (_a = objProxy === null || objProxy === void 0 ? void 0 : objProxy.onProxyDomRender) === null || _a === void 0 ? void 0 : _a.call(objProxy, 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;
108
- if (target instanceof Element) {
109
- target.innerHTML = target.innerHTML.replace(/@this@/g, 'this');
110
- }
111
- var onCreate = (_b = (_a = target).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, RawSet_1.RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
112
- var createParam = [];
113
- if (onCreate) {
114
- createParam = ScriptUtils_1.ScriptUtils.evalReturn(onCreate, this._domRender_proxy);
115
- if (!Array.isArray(createParam)) {
116
- createParam = [createParam];
117
- }
118
- }
119
- (_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));
120
- // const innerHTML = (target as any).innerHTML ?? '';
121
- this._targets.add(target);
122
- var rawSets = RawSet_1.RawSet.checkPointCreates(target, this._domRender_proxy, this.config);
123
- // console.log('initRender -------rawSet', rawSets)
124
- // 중요 초기에 한번 튕겨줘야함.
125
- EventManager_1.eventManager.applyEvent(this._domRender_proxy, EventManager_1.eventManager.findAttrElements(target, this.config), this.config);
126
- rawSets.forEach(function (it) {
127
- var variables = it.getUsingTriggerVariables(_this.config);
128
- if (variables.size <= 0) {
129
- _this.addRawSet('', it);
130
- }
131
- else {
132
- variables.forEach(function (sit) {
133
- _this.addRawSet(sit, it);
134
- });
135
- }
136
- });
137
- this.render(this.getRawSets()).then(function (it) {
138
- var _a, _b, _c, _d;
139
- // const render = {target} as Render;
140
- // const creatorMetaData = {
141
- // creator: this._domRender_proxy,
142
- // rootCreator: this._domRender_proxy,
143
- // innerHTML
144
- // } as CreatorMetaData;
145
- var onInit = (_b = (_a = target).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, RawSet_1.RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
146
- var initParam = [];
147
- if (onCreate) {
148
- initParam = ScriptUtils_1.ScriptUtils.evalReturn(onCreate, _this._domRender_proxy);
149
- if (!Array.isArray(initParam)) {
150
- initParam = [initParam];
151
- }
152
- }
153
- (_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));
154
- });
155
- };
156
- DomRenderProxy.prototype.getRawSets = function () {
157
- var set = new Set();
158
- this._rawSets.forEach(function (v, k) {
159
- v.forEach(function (it) { return set.add(it); });
160
- });
161
- return Array.from(set);
162
- };
163
- // 중요 important
164
- DomRenderProxy.prototype.render = function (raws, fullPathStr) {
165
- var _a, _b, _c;
166
- return __awaiter(this, void 0, void 0, function () {
167
- var iter, removeRawSets, rawSets, _loop_1, this_1, _i, rawSets_1, it_1;
168
- var _this = this;
169
- return __generator(this, function (_d) {
170
- switch (_d.label) {
171
- case 0:
172
- if (typeof raws === 'string') {
173
- iter = this._rawSets.get(raws);
174
- if (iter) {
175
- raws = Array.from(iter);
176
- }
177
- else {
178
- raws = undefined;
179
- }
180
- }
181
- removeRawSets = [];
182
- rawSets = raws !== null && raws !== void 0 ? raws : this.getRawSets();
183
- _loop_1 = function (it_1) {
184
- var targetAttrMap, rawSets_2;
185
- return __generator(this, function (_e) {
186
- switch (_e.label) {
187
- case 0:
188
- it_1.getUsingTriggerVariables(this_1.config).forEach(function (path) { return _this.addRawSet(path, it_1); });
189
- if (!it_1.isConnected) return [3 /*break*/, 6];
190
- 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);
191
- if (!((_c = it_1.detect) === null || _c === void 0 ? void 0 : _c.action)) return [3 /*break*/, 1];
192
- it_1.detect.action();
193
- return [3 /*break*/, 5];
194
- case 1:
195
- if (!(it_1.type === RawSetType_1.RawSetType.TARGET_ELEMENT && it_1.data && fullPathStr && targetAttrMap && it_1.fragment.render)) return [3 /*break*/, 2];
196
- new Map(JSON.parse(targetAttrMap)).forEach(function (v, k) {
197
- var _a;
198
- // it?.data.onChangeAttrRender(k, null, v);
199
- var isUsing = EventManager_1.EventManager.isUsingThisVar(v, "this.".concat(fullPathStr));
200
- if (isUsing) {
201
- var render = it_1.fragment.render;
202
- // console.log('render-->', (it.fragment as any).render)
203
- var script = "".concat(render.renderScript, " return ").concat(v, " ");
204
- var cval = ScriptUtils_1.ScriptUtils.eval(script, Object.assign((_a = _this._domRender_proxy) !== null && _a !== void 0 ? _a : {}, { __render: render }));
205
- it_1.data.onChangeAttrRender(k, cval);
206
- }
207
- // console.log('---?', v, fullPathStr, isUsing);
208
- });
209
- return [3 /*break*/, 5];
210
- case 2: return [4 /*yield*/, it_1.render(this_1._domRender_proxy, this_1.config)];
211
- case 3:
212
- rawSets_2 = _e.sent();
213
- if (!(rawSets_2 && rawSets_2.length > 0)) return [3 /*break*/, 5];
214
- return [4 /*yield*/, this_1.render(rawSets_2)];
215
- case 4:
216
- _e.sent();
217
- _e.label = 5;
218
- case 5: return [3 /*break*/, 7];
219
- case 6:
220
- removeRawSets.push(it_1);
221
- _e.label = 7;
222
- case 7: return [2 /*return*/];
223
- }
224
- });
225
- };
226
- this_1 = this;
227
- _i = 0, rawSets_1 = rawSets;
228
- _d.label = 1;
229
- case 1:
230
- if (!(_i < rawSets_1.length)) return [3 /*break*/, 4];
231
- it_1 = rawSets_1[_i];
232
- return [5 /*yield**/, _loop_1(it_1)];
233
- case 2:
234
- _d.sent();
235
- _d.label = 3;
236
- case 3:
237
- _i++;
238
- return [3 /*break*/, 1];
239
- case 4:
240
- if (removeRawSets.length > 0) {
241
- this.removeRawSet.apply(this, removeRawSets);
242
- }
243
- return [2 /*return*/];
244
- }
245
- });
246
- });
247
- };
248
- DomRenderProxy.prototype.root = function (paths, value, lastDoneExecute) {
249
- var _this = this;
250
- if (lastDoneExecute === void 0) { lastDoneExecute = true; }
251
- // console.log('root--->', paths, value, this._domRender_ref, this._domRender_origin);
252
- var fullPaths = [];
253
- if (this._domRender_ref.size > 0) {
254
- this._domRender_ref.forEach(function (it, key) {
255
- if ('_DomRender_isProxy' in key) {
256
- it.forEach(function (sit) {
257
- var _a;
258
- try {
259
- var items = (_a = key._DomRender_proxy) === null || _a === void 0 ? void 0 : _a.root(paths.concat(sit), value, lastDoneExecute);
260
- fullPaths.push(items.join(','));
261
- }
262
- catch (e) {
263
- // 오브젝트들 없어졌을수도있다 Destroy시점에서 오류나는경우가 있다. 따라서 참조 하는부분 없어져야한다.
264
- // console.error(e)
265
- // it.delete(sit);
266
- }
267
- });
268
- }
269
- });
270
- }
271
- else {
272
- // const firstPathStr = paths.slice(1).reverse().join('.');
273
- var strings = paths.reverse();
274
- // array같은경우도 키값으로 접근하기때문에 특정 인덱스를 찾아서 그부분만 바꿔줄수 있다.
275
- var fullPathStr_1 = strings.map(function (it) { return isNaN(Number(it)) ? '.' + it : "[".concat(it, "]"); }).join('').slice(1);
276
- // console.log('-------fullPathStr', fullPathStr, lastDoneExecute);
277
- if (lastDoneExecute) {
278
- // const firstData = ScriptUtils.evalReturn('this.' + firstPathStr, this._domRender_proxy);
279
- // console.log('-------', firstPathStr, firstData);
280
- // if (firstData instanceof Dictionary) {
281
- // }
282
- var iterable_1 = this._rawSets.get(fullPathStr_1);
283
- // array check
284
- var front_1 = strings.slice(0, strings.length - 1).map(function (it) { return isNaN(Number(it)) ? '.' + it : "[".concat(it, "]"); }).join('');
285
- var last_1 = strings[strings.length - 1];
286
- var data_1 = ScriptUtils_1.ScriptUtils.evalReturn('this' + front_1, this._domRender_proxy);
287
- // console.log('-------!!!!!', fullPathStr, iterable, data, front, last);
288
- new Promise(function (resolve) {
289
- var firstPathStr = front_1.slice(1);
290
- // check dictionary
291
- // console.log('-promise-------', firstPathStr, this)
292
- var firstTargets = _this._rawSets.get(firstPathStr);
293
- var firstTargetDictionary = [];
294
- firstTargets === null || firstTargets === void 0 ? void 0 : firstTargets.forEach(function (it) {
295
- var _a, _b;
296
- // console.log('----forEach---', it);
297
- var type = (_b = (_a = it.point.start).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, 'type');
298
- if (type === RawSetOperatorType_1.RawSetOperatorType.DR_THIS_PROPERTY) {
299
- firstTargetDictionary.push(it);
300
- }
301
- });
302
- if (firstTargetDictionary.length > 0) {
303
- // console.log('ddddddddddd', firstTargetDictionary);
304
- var rawSets_3 = [];
305
- var skip_1 = false;
306
- firstTargetDictionary.forEach(function (it) {
307
- var _a, _b;
308
- var startElement = it.point.start;
309
- 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 : [];
310
- if (value === undefined) {
311
- var rawSet = it.getHasRawSet(last_1);
312
- rawSet === null || rawSet === void 0 ? void 0 : rawSet.remove();
313
- startElement.setAttribute(RawSet_1.RawSet.DR_HAS_KEYS_OPTIONNAME, keys.filter(function (it) { return it !== last_1; }).join(','));
314
- }
315
- if (!keys.includes(last_1)) {
316
- var raws = DrThisProperty_1.DrThisProperty.append(_this._domRender_proxy, fullPathStr_1, last_1, it, _this.config);
317
- if (raws) {
318
- rawSets_3.push.apply(rawSets_3, raws);
319
- }
320
- }
321
- else {
322
- skip_1 = true;
323
- }
324
- });
325
- if (skip_1 === false || rawSets_3.length > 0) {
326
- return _this.render(rawSets_3);
327
- }
328
- }
329
- if (last_1 === 'length' && Array.isArray(data_1)) {
330
- var aIterable = _this._rawSets.get(firstPathStr);
331
- if (aIterable) {
332
- return _this.render(Array.from(aIterable));
333
- }
334
- }
335
- else if (iterable_1) {
336
- return _this.render(Array.from(iterable_1), fullPathStr_1);
337
- }
338
- }).then(function (it) {
339
- console.log('target1------->,', it);
340
- _this._targets.forEach(function (it) {
341
- console.log('target2------->,', it);
342
- // return;
343
- if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {
344
- var targets = EventManager_1.eventManager.findAttrElements(it, _this.config);
345
- // console.log('------>', targets);
346
- EventManager_1.eventManager.changeVar(_this._domRender_proxy, targets, "this.".concat(fullPathStr_1), _this.config);
347
- }
348
- });
349
- });
350
- }
351
- fullPaths.push(fullPathStr_1);
352
- }
353
- return fullPaths;
354
- };
355
- DomRenderProxy.prototype.set = function (target, p, value, receiver) {
356
- var _a, _b;
357
- // console.log('set-->', p, value, target, receiver);
358
- if (typeof p === 'string' && p !== '__domrender_components' && excludeGetSetPropertys.includes(p)) {
359
- target[p] = value;
360
- return true;
361
- }
362
- // console.log('set proxy-->', target, p, value, this._rawSets, this._domRender_ref);
363
- // if (typeof p === 'string' && '__render' === p) {
364
- // (target as any)[p] = value;
365
- // return true;
366
- // }
367
- // console.log('set--?', p, target, value);
368
- if (typeof p === 'string') {
369
- value = this.proxy(receiver, value, p);
370
- }
371
- target[p] = value;
372
- var fullPath;
373
- if (typeof p === 'string') {
374
- fullPath = this.root([p], value);
375
- }
376
- // console.log('full path:', fullPath);
377
- if (('onBeforeReturnSet' in receiver) && typeof p === 'string' && !((_a = this.config.proxyExcludeOnBeforeReturnSets) !== null && _a !== void 0 ? _a : []).concat(excludeGetSetPropertys).includes(p)) {
378
- (_b = receiver === null || receiver === void 0 ? void 0 : receiver.onBeforeReturnSet) === null || _b === void 0 ? void 0 : _b.call(receiver, p, value, fullPath);
379
- }
380
- return true;
381
- };
382
- DomRenderProxy.prototype.get = function (target, p, receiver) {
383
- var _a, _b;
384
- // console.log('get-->', target, p, receiver);
385
- if (p === '_DomRender_origin') {
386
- return this._domRender_origin;
387
- }
388
- else if (p === '_DomRender_ref') {
389
- return this._domRender_ref;
390
- }
391
- else if (p === '_DomRender_proxy') {
392
- return this;
393
- }
394
- else {
395
- // Date라던지 이런놈들은-_-프록시가 이상하게 동작해서
396
- // console.log('--->', p, target, target.bind, 'bind' in target)
397
- // if ((p in target) && ('bind' in target)) {
398
- // try{
399
- // return (target as any)[p].bind(target);
400
- // }catch (e) {
401
- // console.error(e)
402
- // }
403
- // } else {
404
- // return (target as any)[p]
405
- // }
406
- // return (p in target) ? (target as any)[p].bind(target) : (target as any)[p]
407
- // console.log('-->', p, Object.prototype.toString.call((target as any)[p]), (target as any)[p])
408
- // return (target as any)[p]
409
- var it_2 = target[p];
410
- if (it_2 && typeof it_2 === 'object' && ('_DomRender_isProxy' in it_2) && Object.prototype.toString.call(it_2._DomRender_origin) === '[object Date]') {
411
- it_2 = it_2._DomRender_origin;
412
- }
413
- if (('onBeforeReturnGet' in receiver) && typeof p === 'string' && !((_a = this.config.proxyExcludeOnBeforeReturnGets) !== null && _a !== void 0 ? _a : []).concat(excludeGetSetPropertys).includes(p)) {
414
- (_b = receiver === null || receiver === void 0 ? void 0 : receiver.onBeforeReturnGet) === null || _b === void 0 ? void 0 : _b.call(receiver, p, it_2, this.root([p], it_2, false));
415
- }
416
- return it_2;
417
- }
418
- };
419
- DomRenderProxy.prototype.deleteProperty = function (target, p) {
420
- delete target[p];
421
- if (typeof p === 'string') {
422
- this.root([p]);
423
- }
424
- return true;
425
- };
426
- DomRenderProxy.prototype.has = function (target, p) {
427
- return p === '_DomRender_isProxy' || p in target;
428
- };
429
- DomRenderProxy.prototype.proxy = function (parentProxy, obj, p) {
430
- var _a, _b;
431
- 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;
432
- if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && !('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Types_1.Shield)) {
433
- var domRender = new DomRenderProxy(obj, undefined, this.config);
434
- domRender.addRef(parentProxy, p);
435
- var proxy = new Proxy(obj, domRender);
436
- domRender.run(proxy);
437
- return proxy;
438
- }
439
- if (proxyTarget && obj !== undefined && obj !== null && typeof obj === 'object' && ('_DomRender_isProxy' in obj) && !DomRenderProxy.isFinal(obj) && !Object.isFrozen(obj) && !(obj instanceof Types_1.Shield)) {
440
- var d = obj._DomRender_proxy;
441
- d.addRef(this._domRender_proxy, p);
442
- return obj;
443
- }
444
- else {
445
- return obj;
446
- }
447
- };
448
- DomRenderProxy.prototype.addRef = function (parent, path) {
449
- var _a;
450
- if (!this._domRender_ref.get(parent)) {
451
- this._domRender_ref.set(parent, new Set());
452
- }
453
- (_a = this._domRender_ref.get(parent)) === null || _a === void 0 ? void 0 : _a.add(path);
454
- };
455
- DomRenderProxy.prototype.addRawSetAndRender = function (path, rawSet) {
456
- this.addRawSet(path, rawSet);
457
- this.render([rawSet]);
458
- };
459
- DomRenderProxy.prototype.addRawSet = function (path, rawSet) {
460
- var _a;
461
- // console.log('addRawSet--> path:', path, 'rawSet:', rawSet)
462
- if (!this._rawSets.get(path)) {
463
- this._rawSets.set(path, new Set());
464
- }
465
- (_a = this._rawSets.get(path)) === null || _a === void 0 ? void 0 : _a.add(rawSet);
466
- };
467
- // public removeRawSet(...raws: RawSet[]) {
468
- // this._rawSets.forEach(it => {
469
- // raws.forEach(sit => it.delete(sit));
470
- // })
471
- // this.garbageRawSet();
472
- // }
473
- DomRenderProxy.prototype.removeRawSet = function () {
474
- var raws = [];
475
- for (var _i = 0; _i < arguments.length; _i++) {
476
- raws[_i] = arguments[_i];
477
- }
478
- this._rawSets.forEach(function (it) {
479
- it.forEach(function (sit) {
480
- if (!sit.isConnected) {
481
- it.delete(sit);
482
- }
483
- else if (raws.includes(sit)) {
484
- it.delete(sit);
485
- }
486
- });
487
- });
488
- this.targetGarbageRawSet();
489
- };
490
- DomRenderProxy.prototype.targetGarbageRawSet = function () {
491
- var _this = this;
492
- this._targets.forEach(function (it) {
493
- if (!it.isConnected) {
494
- _this._targets.delete(it);
495
- }
496
- });
497
- };
498
- DomRenderProxy.prototype.garbageRawSet = function () {
499
- var _this = this;
500
- this._targets.forEach(function (it) {
501
- if (!it.isConnected) {
502
- _this._targets.delete(it);
503
- }
504
- });
505
- this._rawSets.forEach(function (it) {
506
- it.forEach(function (sit) {
507
- if (!sit.isConnected) {
508
- it.delete(sit);
509
- }
510
- });
511
- });
512
- };
513
- return DomRenderProxy;
514
- }());
515
- exports.DomRenderProxy = DomRenderProxy;
@@ -1,10 +0,0 @@
1
- export 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;