dom-render 1.0.88 → 1.0.91

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 (44) hide show
  1. package/DomRenderProxy.js +31 -11
  2. package/README.MD +18 -11
  3. package/components/ComponentSet.d.ts +5 -2
  4. package/components/ComponentSet.js +2 -3
  5. package/configs/Config.d.ts +5 -0
  6. package/dist/bundle.js +582 -534
  7. package/events/EventManager.js +0 -1
  8. package/lifecycle/OnInitRender.d.ts +1 -6
  9. package/operators/Dr.d.ts +7 -3
  10. package/operators/Dr.js +21 -23
  11. package/operators/DrAppender.d.ts +7 -3
  12. package/operators/DrAppender.js +28 -26
  13. package/operators/DrFor.d.ts +7 -3
  14. package/operators/DrFor.js +24 -23
  15. package/operators/DrForOf.d.ts +7 -3
  16. package/operators/DrForOf.js +27 -26
  17. package/operators/DrForm.d.ts +7 -3
  18. package/operators/DrForm.js +51 -54
  19. package/operators/DrIf.d.ts +7 -3
  20. package/operators/DrIf.js +29 -32
  21. package/operators/DrInnerHTML.d.ts +7 -3
  22. package/operators/DrInnerHTML.js +19 -21
  23. package/operators/DrInnerText.d.ts +7 -3
  24. package/operators/DrInnerText.js +17 -19
  25. package/operators/DrPre.d.ts +6 -3
  26. package/operators/DrPre.js +9 -6
  27. package/operators/DrRepeat.d.ts +7 -3
  28. package/operators/DrRepeat.js +24 -23
  29. package/operators/DrTargetAttr.d.ts +6 -3
  30. package/operators/DrTargetAttr.js +10 -8
  31. package/operators/DrTargetElement.d.ts +6 -3
  32. package/operators/DrTargetElement.js +10 -32
  33. package/operators/DrThis.d.ts +4 -3
  34. package/operators/DrThis.js +21 -27
  35. package/operators/OperatorExecuter.d.ts +48 -0
  36. package/operators/OperatorExecuter.js +43 -0
  37. package/operators/OperatorExecuterAttrRequire.d.ts +8 -0
  38. package/operators/OperatorExecuterAttrRequire.js +55 -0
  39. package/package.json +1 -1
  40. package/rawsets/RawSet.d.ts +7 -1
  41. package/rawsets/RawSet.js +60 -42
  42. package/utils/location/LocationUtils.js +7 -1
  43. package/operators/OperatorRender.d.ts +0 -45
  44. package/operators/OperatorRender.js +0 -21
@@ -0,0 +1,48 @@
1
+ import { AttrInitCallBack } from '../rawsets/AttrInitCallBack';
2
+ import { ElementInitCallBack } from '../rawsets/ElementInitCallBack';
3
+ import { ComponentSet } from '../components/ComponentSet';
4
+ import { RawSet } from '../rawsets/RawSet';
5
+ import { Render } from '../rawsets/Render';
6
+ import { Attrs } from '../rawsets/Attrs';
7
+ import { Config } from '../configs/Config';
8
+ export declare type OperatorAround = {
9
+ beforeAttr?: (value: string | null | undefined, opratorExecutor: OperatorExecuter) => string | null | undefined;
10
+ before?: (data: any, opratorExecutor: OperatorExecuter) => any;
11
+ after?: (data: any, opratorExecutor: OperatorExecuter) => void;
12
+ };
13
+ export declare enum ExecuteState {
14
+ EXECUTE = 0,
15
+ NO_EXECUTE = 1,
16
+ STOP = 2
17
+ }
18
+ export declare type AfterCallBack = {
19
+ onAttrInitCallBacks: AttrInitCallBack[];
20
+ onElementInitCallBacks: ElementInitCallBack[];
21
+ onThisComponentSetCallBacks: ComponentSet[];
22
+ };
23
+ export declare type ReturnContainer = {
24
+ raws: RawSet[];
25
+ fag: DocumentFragment;
26
+ };
27
+ export declare type ElementSource = {
28
+ element: Element;
29
+ attrs: Attrs;
30
+ attr?: string | null;
31
+ };
32
+ export declare type Source = {
33
+ config: Config;
34
+ operatorAround?: OperatorAround;
35
+ obj: any;
36
+ };
37
+ export declare abstract class OperatorExecuter<T = any> {
38
+ rawSet: RawSet;
39
+ render: Render;
40
+ returnContainer: ReturnContainer;
41
+ elementSource: ElementSource;
42
+ source: Source;
43
+ afterCallBack: AfterCallBack;
44
+ startingExecute: boolean;
45
+ constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack, startingExecute?: boolean);
46
+ start(): ExecuteState;
47
+ abstract execute(value: T): ExecuteState;
48
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OperatorExecuter = exports.ExecuteState = void 0;
4
+ var ScriptUtils_1 = require("../utils/script/ScriptUtils");
5
+ var ExecuteState;
6
+ (function (ExecuteState) {
7
+ ExecuteState[ExecuteState["EXECUTE"] = 0] = "EXECUTE";
8
+ ExecuteState[ExecuteState["NO_EXECUTE"] = 1] = "NO_EXECUTE";
9
+ ExecuteState[ExecuteState["STOP"] = 2] = "STOP";
10
+ })(ExecuteState = exports.ExecuteState || (exports.ExecuteState = {}));
11
+ var OperatorExecuter = /** @class */ (function () {
12
+ function OperatorExecuter(rawSet, render, returnContainer, elementSource, source, afterCallBack, startingExecute) {
13
+ if (startingExecute === void 0) { startingExecute = true; }
14
+ this.rawSet = rawSet;
15
+ this.render = render;
16
+ this.returnContainer = returnContainer;
17
+ this.elementSource = elementSource;
18
+ this.source = source;
19
+ this.afterCallBack = afterCallBack;
20
+ this.startingExecute = startingExecute;
21
+ }
22
+ ;
23
+ OperatorExecuter.prototype.start = function () {
24
+ var _a, _b, _c, _d, _e, _f;
25
+ var attrValue = this.elementSource.attr;
26
+ if ((_a = this.source.operatorAround) === null || _a === void 0 ? void 0 : _a.beforeAttr) {
27
+ attrValue = (_b = this.source.operatorAround.beforeAttr(attrValue, this)) !== null && _b !== void 0 ? _b : '';
28
+ }
29
+ var r = attrValue;
30
+ if (r && this.startingExecute) {
31
+ r = ScriptUtils_1.ScriptUtils.eval(" ".concat(this.render.bindScript, "; return ").concat(attrValue), Object.assign(this.source.obj, { __render: this.render }));
32
+ }
33
+ if ((_c = this.source.operatorAround) === null || _c === void 0 ? void 0 : _c.before) {
34
+ r = (_d = this.source.operatorAround) === null || _d === void 0 ? void 0 : _d.before(r, this);
35
+ }
36
+ var state = this.execute(r);
37
+ (_f = (_e = this.source.operatorAround) === null || _e === void 0 ? void 0 : _e.after) === null || _f === void 0 ? void 0 : _f.call(_e, r, this);
38
+ return state;
39
+ };
40
+ ;
41
+ return OperatorExecuter;
42
+ }());
43
+ exports.OperatorExecuter = OperatorExecuter;
@@ -0,0 +1,8 @@
1
+ import { RawSet } from '../rawsets/RawSet';
2
+ import { Render } from '../rawsets/Render';
3
+ import { AfterCallBack, ElementSource, ExecuteState, OperatorExecuter, ReturnContainer, Source } from './OperatorExecuter';
4
+ export declare abstract class OperatorExecuterAttrRequire<T> extends OperatorExecuter<T> {
5
+ constructor(rawSet: RawSet, render: Render, returnContainer: ReturnContainer, elementSource: ElementSource, source: Source, afterCallBack: AfterCallBack, startingExecute?: boolean);
6
+ execute(data: T): ExecuteState;
7
+ protected abstract executeAttrRequire(attr: T): ExecuteState;
8
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.OperatorExecuterAttrRequire = void 0;
19
+ var OperatorExecuter_1 = require("./OperatorExecuter");
20
+ // export type OperatorAround = {
21
+ // beforeAttr?: (value: string, obj: any) => string,
22
+ // before?: (data: any, obj: any) => any,
23
+ // after?: (data: any, obj: any) => void,
24
+ // }
25
+ //
26
+ // export enum ExecuteState {
27
+ // EXECUTE,
28
+ // NO_EXECUTE,
29
+ // STOP
30
+ // }
31
+ //
32
+ // export type AfterCallBack = {
33
+ // onAttrInitCallBacks: AttrInitCallBack[],
34
+ // onElementInitCallBacks: ElementInitCallBack[],
35
+ // onThisComponentSetCallBacks: ComponentSet[]
36
+ // }
37
+ var OperatorExecuterAttrRequire = /** @class */ (function (_super) {
38
+ __extends(OperatorExecuterAttrRequire, _super);
39
+ function OperatorExecuterAttrRequire(rawSet, render, returnContainer, elementSource, source, afterCallBack, startingExecute) {
40
+ if (startingExecute === void 0) { startingExecute = true; }
41
+ return _super.call(this, rawSet, render, returnContainer, elementSource, source, afterCallBack, startingExecute) || this;
42
+ }
43
+ ;
44
+ // executes(): ExecuteState {
45
+ // return ExecuteState.EXECUTE;
46
+ // }
47
+ OperatorExecuterAttrRequire.prototype.execute = function (data) {
48
+ if (!this.elementSource.attr) {
49
+ return OperatorExecuter_1.ExecuteState.NO_EXECUTE;
50
+ }
51
+ return this.executeAttrRequire(data);
52
+ };
53
+ return OperatorExecuterAttrRequire;
54
+ }(OperatorExecuter_1.OperatorExecuter));
55
+ exports.OperatorExecuterAttrRequire = OperatorExecuterAttrRequire;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dom-render",
3
- "version": "1.0.88",
3
+ "version": "1.0.91",
4
4
  "main": "DomRender.js",
5
5
  "license": "MIT",
6
6
  "description": "html view template engine",
@@ -40,9 +40,15 @@ export declare class RawSet {
40
40
  static readonly DR_COMPLETE_OPTIONNAME = "dr-complete";
41
41
  static readonly DR_STRIP_OPTIONNAME = "dr-strip";
42
42
  static readonly DR_DESTROY_OPTIONNAME = "dr-destroy";
43
+ static readonly DR_COMPONENT_NAME_OPTIONNAME = "dr-component-name";
44
+ static readonly DR_COMPONENT_INNER_HTML_NAME_OPTIONNAME = "dr-component-inner-html-name";
45
+ static readonly DR_ON_CREATE_ARGUMENTS_OPTIONNAME = "dr-on-create:arguments";
46
+ static readonly DR_ON_CREATED_CALLBACK_OPTIONNAME = "dr-on-create:callback";
47
+ static readonly DR_ON_INIT_ARGUMENTS_OPTIONNAME = "dr-on-init:arguments";
48
+ static readonly DR_ON_CONSTRUCTOR_ARGUMENTS_OPTIONNAME = "dr-on-constructor:arguments";
43
49
  static readonly drAttrsOriginName: Attrs;
44
50
  static readonly DR_TAGS: never[];
45
- static readonly DR_ATTRIBUTES: string[];
51
+ static readonly DR_ATTRIBUTES: readonly ["dr", "dr-appender", "dr-if", "dr-for-of", "dr-for", "dr-this", "dr-form", "dr-pre", "dr-inner-html", "dr-inner-text", "dr-repeat", "dr-detect"];
46
52
  constructor(uuid: string, type: RawSetType, point: {
47
53
  start: Comment | Text | HTMLMetaElement;
48
54
  node: Node;
package/rawsets/RawSet.js CHANGED
@@ -31,7 +31,7 @@ var DomUtils_1 = require("../utils/dom/DomUtils");
31
31
  var DrPre_1 = require("../operators/DrPre");
32
32
  var Dr_1 = require("../operators/Dr");
33
33
  var DrIf_1 = require("../operators/DrIf");
34
- var OperatorRender_1 = require("../operators/OperatorRender");
34
+ var OperatorExecuter_1 = require("../operators/OperatorExecuter");
35
35
  var DrThis_1 = require("../operators/DrThis");
36
36
  var DrForm_1 = require("../operators/DrForm");
37
37
  var DrInnerText_1 = require("../operators/DrInnerText");
@@ -77,7 +77,6 @@ var RawSet = /** @class */ (function () {
77
77
  var targetScripts_1 = targetAttrNames.map(function (it) { return element_1.getAttribute(it); }).filter(function (it) { return it; });
78
78
  var targetAttrMap = element_1.getAttribute(EventManager_1.EventManager.normalAttrMapAttrName);
79
79
  if (targetAttrMap) {
80
- // console.log('----->', targetAttr);
81
80
  new Map(JSON.parse(targetAttrMap)).forEach(function (v, k) {
82
81
  targetScripts_1.push(v);
83
82
  });
@@ -111,15 +110,15 @@ var RawSet = /** @class */ (function () {
111
110
  // 중요 render 처리 부분
112
111
  RawSet.prototype.render = function (obj, config) {
113
112
  var _this = this;
114
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
113
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
115
114
  var genNode = config.window.document.importNode(this.fragment, true);
116
115
  var raws = [];
117
116
  var onAttrInitCallBacks = [];
118
117
  var onElementInitCallBacks = [];
119
118
  var onThisComponentSetCallBacks = [];
120
119
  var drAttrs = [];
121
- for (var _i = 0, _m = Array.from(genNode.childNodes.values()); _i < _m.length; _i++) {
122
- var cNode = _m[_i];
120
+ for (var _i = 0, _y = Array.from(genNode.childNodes.values()); _i < _y.length; _i++) {
121
+ var cNode = _y[_i];
123
122
  var attribute = {};
124
123
  if (cNode.nodeType === Node.ELEMENT_NODE) {
125
124
  attribute = DomUtils_1.DomUtils.getAttributeToObject(cNode);
@@ -185,27 +184,27 @@ var RawSet = /** @class */ (function () {
185
184
  };
186
185
  drAttrs.push(drAttr);
187
186
  var operators = [
188
- new DrPre_1.DrPre(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
189
- new Dr_1.Dr(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
190
- new DrIf_1.DrIf(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
191
- new DrThis_1.DrThis(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
192
- new DrForm_1.DrForm(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
193
- new DrInnerText_1.DrInnerText(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
194
- new DrInnerHTML_1.DrInnerHTML(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
195
- new DrFor_1.DrFor(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
196
- new DrForOf_1.DrForOf(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
197
- new DrAppender_1.DrAppender(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
198
- new DrRepeat_1.DrRepeat(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
187
+ new DrPre_1.DrPre(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drPre, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_b = config.operatorAround) === null || _b === void 0 ? void 0 : _b.drPre }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
188
+ new Dr_1.Dr(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.dr, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_c = config.operatorAround) === null || _c === void 0 ? void 0 : _c.dr }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
189
+ new DrIf_1.DrIf(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drIf, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_d = config.operatorAround) === null || _d === void 0 ? void 0 : _d.drIf }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
190
+ new DrThis_1.DrThis(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drThis, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_e = config.operatorAround) === null || _e === void 0 ? void 0 : _e.drThis }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
191
+ new DrForm_1.DrForm(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drForm, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_f = config.operatorAround) === null || _f === void 0 ? void 0 : _f.drForm }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
192
+ new DrInnerText_1.DrInnerText(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drInnerText, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_g = config.operatorAround) === null || _g === void 0 ? void 0 : _g.drInnerText }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
193
+ new DrInnerHTML_1.DrInnerHTML(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drInnerHTML, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_h = config.operatorAround) === null || _h === void 0 ? void 0 : _h.drInnerHTML }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
194
+ new DrFor_1.DrFor(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drFor, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_j = config.operatorAround) === null || _j === void 0 ? void 0 : _j.drFor }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
195
+ new DrForOf_1.DrForOf(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drForOf, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_k = config.operatorAround) === null || _k === void 0 ? void 0 : _k.drForOf }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
196
+ new DrAppender_1.DrAppender(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drAppender, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_l = config.operatorAround) === null || _l === void 0 ? void 0 : _l.drAppender }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
197
+ new DrRepeat_1.DrRepeat(this, __render, { raws: raws, fag: fag }, { element: element, attr: drAttr.drRepeat, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_m = config.operatorAround) === null || _m === void 0 ? void 0 : _m.drRepeat }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
199
198
  new DrTargetElement_1.DrTargetElement(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
200
199
  new DrTargetAttr_1.DrTargetAttr(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks })
201
200
  ];
202
- for (var _o = 0, operators_1 = operators; _o < operators_1.length; _o++) {
203
- var operator = operators_1[_o];
204
- var state = operator.execRender();
205
- if (state === OperatorRender_1.ExecuteState.EXECUTE) {
201
+ for (var _z = 0, operators_1 = operators; _z < operators_1.length; _z++) {
202
+ var operator = operators_1[_z];
203
+ var state = operator.start();
204
+ if (state === OperatorExecuter_1.ExecuteState.EXECUTE) {
206
205
  break;
207
206
  }
208
- else if (state === OperatorRender_1.ExecuteState.STOP) {
207
+ else if (state === OperatorExecuter_1.ExecuteState.STOP) {
209
208
  return raws;
210
209
  }
211
210
  }
@@ -226,20 +225,32 @@ var RawSet = /** @class */ (function () {
226
225
  });
227
226
  // 중요 style isolation 나중에 :scope로 대체 가능할듯.
228
227
  RawSet.generateStyleSheetsLocal();
229
- // console.log('-22222-')
230
- // alert(1);
231
- for (var _p = 0, onThisComponentSetCallBacks_1 = onThisComponentSetCallBacks; _p < onThisComponentSetCallBacks_1.length; _p++) {
232
- var it_1 = onThisComponentSetCallBacks_1[_p];
233
- (_c = (_b = it_1.obj).onInitRender) === null || _c === void 0 ? void 0 : _c.call(_b);
228
+ for (var _0 = 0, onThisComponentSetCallBacks_1 = onThisComponentSetCallBacks; _0 < onThisComponentSetCallBacks_1.length; _0++) {
229
+ var it_1 = onThisComponentSetCallBacks_1[_0];
230
+ (_p = (_o = it_1.obj) === null || _o === void 0 ? void 0 : _o.onInitRender) === null || _p === void 0 ? void 0 : _p.call(_o);
234
231
  }
235
- for (var _q = 0, onElementInitCallBacks_1 = onElementInitCallBacks; _q < onElementInitCallBacks_1.length; _q++) {
236
- var it_2 = onElementInitCallBacks_1[_q];
237
- (_g = (_f = (_e = (_d = it_2.targetElement) === null || _d === void 0 ? void 0 : _d.__render) === null || _e === void 0 ? void 0 : _e.component) === null || _f === void 0 ? void 0 : _f.onInitRender) === null || _g === void 0 ? void 0 : _g.call(_f, Object.freeze({ render: (_h = it_2.targetElement) === null || _h === void 0 ? void 0 : _h.__render, creatorMetaData: (_j = it_2.targetElement) === null || _j === void 0 ? void 0 : _j.__creatorMetaData }));
238
- (_k = config === null || config === void 0 ? void 0 : config.onElementInit) === null || _k === void 0 ? void 0 : _k.call(config, it_2.name, obj, this, it_2.targetElement);
232
+ for (var _1 = 0, onElementInitCallBacks_1 = onElementInitCallBacks; _1 < onElementInitCallBacks_1.length; _1++) {
233
+ var it_2 = onElementInitCallBacks_1[_1];
234
+ if (((_r = (_q = it_2.targetElement) === null || _q === void 0 ? void 0 : _q.__render) === null || _r === void 0 ? void 0 : _r.element) && ((_t = (_s = it_2.targetElement) === null || _s === void 0 ? void 0 : _s.__render) === null || _t === void 0 ? void 0 : _t.component)) {
235
+ var oninit = it_2.targetElement.__render.element.getAttribute(RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME); // dr-on-component-init
236
+ var param = [];
237
+ if (oninit) {
238
+ var script = "".concat(it_2.targetElement.__render.renderScript, " return ").concat(oninit, " ");
239
+ param = ScriptUtils_1.ScriptUtils.eval(script, Object.assign(obj, {
240
+ __render: it_2.targetElement.__render
241
+ }));
242
+ if (!Array.isArray(param)) {
243
+ param = [param];
244
+ }
245
+ }
246
+ (_v = (_u = it_2.targetElement.__render.component).onInitRender) === null || _v === void 0 ? void 0 : _v.call.apply(_v, __spreadArray([_u], param, false));
247
+ }
248
+ (_w = config === null || config === void 0 ? void 0 : config.onElementInit) === null || _w === void 0 ? void 0 : _w.call(config, it_2.name, obj, this, it_2.targetElement);
239
249
  }
240
- for (var _r = 0, onAttrInitCallBacks_1 = onAttrInitCallBacks; _r < onAttrInitCallBacks_1.length; _r++) {
241
- var it_3 = onAttrInitCallBacks_1[_r];
242
- (_l = config === null || config === void 0 ? void 0 : config.onAttrInit) === null || _l === void 0 ? void 0 : _l.call(config, it_3.attrName, it_3.attrValue, obj, this);
250
+ // TODO: 이부분도 위에 targetElement 처럼 해야될까?
251
+ for (var _2 = 0, onAttrInitCallBacks_1 = onAttrInitCallBacks; _2 < onAttrInitCallBacks_1.length; _2++) {
252
+ var it_3 = onAttrInitCallBacks_1[_2];
253
+ (_x = config === null || config === void 0 ? void 0 : config.onAttrInit) === null || _x === void 0 ? void 0 : _x.call(config, it_3.attrName, it_3.attrValue, obj, this);
243
254
  }
244
255
  // component destroy
245
256
  if (obj.__domrender_components) {
@@ -634,7 +645,7 @@ var RawSet = /** @class */ (function () {
634
645
  // const metaEnd = RawSet.metaEnd(id);
635
646
  // n.innerHTML = metaStart + style + (set.template ?? '') + metaEnd;
636
647
  // dr-on-create onCreateRender
637
- var onCreate = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "on-create"));
648
+ var onCreate = element.getAttribute(RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
638
649
  var renderScript = '';
639
650
  var createParam = [];
640
651
  if (onCreate) {
@@ -646,7 +657,8 @@ var RawSet = /** @class */ (function () {
646
657
  }
647
658
  (_d = (_c = set.obj) === null || _c === void 0 ? void 0 : _c.onCreateRender) === null || _d === void 0 ? void 0 : _d.call.apply(_d, __spreadArray([_c], createParam, false));
648
659
  // dr-on-component-init
649
- var oninit = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "on-component-init")); // dr-on-component-init
660
+ // const oninit = element.getAttribute(`${EventManager.attrPrefix}on-component-init`); // dr-on-component-init
661
+ var oninit = element.getAttribute(RawSet.DR_ON_CREATED_CALLBACK_OPTIONNAME); // dr-on-component-init
650
662
  if (oninit) {
651
663
  var script = "".concat(renderScript, " ").concat(oninit, " ");
652
664
  ScriptUtils_1.ScriptUtils.eval(script, obj);
@@ -720,7 +732,7 @@ var RawSet = /** @class */ (function () {
720
732
  scripts: EventManager_1.EventManager.setBindProperty((_a = config.scripts) !== null && _a !== void 0 ? _a : {}, obj)
721
733
  // eslint-disable-next-line no-use-before-define
722
734
  });
723
- var constructor = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "constructor"));
735
+ var constructor = element.getAttribute(RawSet.DR_ON_CONSTRUCTOR_ARGUMENTS_OPTIONNAME);
724
736
  var constructorParam = [];
725
737
  // dr-constructor
726
738
  if (constructor) {
@@ -759,9 +771,9 @@ var RawSet = /** @class */ (function () {
759
771
  });
760
772
  }
761
773
  // dr-on-create onCreateRender
762
- var onCreate = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "on-create"));
774
+ var onCreate = element.getAttribute(RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
763
775
  this.__render = render;
764
- var createParam = [i];
776
+ var createParam = [];
765
777
  if (onCreate) {
766
778
  var script = "".concat(renderScript, " return ").concat(onCreate, " ");
767
779
  createParam = ScriptUtils_1.ScriptUtils.eval(script, Object.assign(obj, { __render: render }));
@@ -772,8 +784,8 @@ var RawSet = /** @class */ (function () {
772
784
  (_d = instance === null || instance === void 0 ? void 0 : instance.onCreateRender) === null || _d === void 0 ? void 0 : _d.call.apply(_d, __spreadArray([instance], createParam, false));
773
785
  var applayTemplate = element.innerHTML;
774
786
  var innerHTMLThisRandom;
775
- var componentName = (_e = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "component-name"))) !== null && _e !== void 0 ? _e : 'component';
776
- var innerHTMLName = (_f = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "component-inner-html-name"))) !== null && _f !== void 0 ? _f : 'innerHTML';
787
+ var componentName = (_e = element.getAttribute(RawSet.DR_COMPONENT_NAME_OPTIONNAME)) !== null && _e !== void 0 ? _e : 'component';
788
+ var innerHTMLName = (_f = element.getAttribute(RawSet.DR_COMPONENT_INNER_HTML_NAME_OPTIONNAME)) !== null && _f !== void 0 ? _f : 'innerHTML';
777
789
  if (applayTemplate) {
778
790
  // if (rawSet.point.thisVariableName) {
779
791
  // 넘어온 innerHTML에 this가 있으면 해당안되게 우선 치환.
@@ -784,7 +796,8 @@ var RawSet = /** @class */ (function () {
784
796
  }
785
797
  applayTemplate = template.replace(RegExp("#".concat(innerHTMLName, "#"), 'g'), applayTemplate);
786
798
  // dr-on-component-init
787
- var oninit = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "on-component-init")); // dr-on-component-init
799
+ // const oninit = element.getAttribute(`${EventManager.attrPrefix}on-component-init`); // dr-on-component-init
800
+ var oninit = element.getAttribute(RawSet.DR_ON_CREATED_CALLBACK_OPTIONNAME); // dr-on-component-init
788
801
  if (oninit) {
789
802
  var script = "".concat(renderScript, " ").concat(oninit, " ");
790
803
  ScriptUtils_1.ScriptUtils.eval(script, Object.assign(obj, {
@@ -854,7 +867,6 @@ var RawSet = /** @class */ (function () {
854
867
  RawSet.DR_INNERHTML_NAME = 'dr-inner-html';
855
868
  RawSet.DR_INNERTEXT_NAME = 'dr-inner-text';
856
869
  RawSet.DR_DETECT_NAME = 'dr-detect';
857
- // public static readonly DR_DETECT_ACTION_NAME = 'dr-detect-action';
858
870
  RawSet.DR_IT_OPTIONNAME = 'dr-it';
859
871
  RawSet.DR_VAR_OPTIONNAME = 'dr-var';
860
872
  RawSet.DR_AFTER_OPTIONNAME = 'dr-after';
@@ -863,6 +875,12 @@ var RawSet = /** @class */ (function () {
863
875
  RawSet.DR_COMPLETE_OPTIONNAME = 'dr-complete';
864
876
  RawSet.DR_STRIP_OPTIONNAME = 'dr-strip';
865
877
  RawSet.DR_DESTROY_OPTIONNAME = 'dr-destroy';
878
+ RawSet.DR_COMPONENT_NAME_OPTIONNAME = 'dr-component-name';
879
+ RawSet.DR_COMPONENT_INNER_HTML_NAME_OPTIONNAME = 'dr-component-inner-html-name';
880
+ RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME = 'dr-on-create:arguments';
881
+ RawSet.DR_ON_CREATED_CALLBACK_OPTIONNAME = 'dr-on-create:callback';
882
+ RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME = 'dr-on-init:arguments';
883
+ RawSet.DR_ON_CONSTRUCTOR_ARGUMENTS_OPTIONNAME = 'dr-on-constructor:arguments';
866
884
  RawSet.drAttrsOriginName = {
867
885
  dr: RawSet.DR,
868
886
  drIf: RawSet.DR_IF_NAME,
@@ -25,7 +25,13 @@ var LocationUtils = /** @class */ (function () {
25
25
  };
26
26
  LocationUtils.hashQueryParamsObject = function (window) {
27
27
  var _a;
28
- return this.queryStringToObject((_a = window.location.hash.split('?').pop()) !== null && _a !== void 0 ? _a : '');
28
+ var s = (_a = window.location.hash.split('?').pop()) !== null && _a !== void 0 ? _a : '';
29
+ if (s.startsWith('#')) {
30
+ return {};
31
+ }
32
+ else {
33
+ return this.queryStringToObject(s);
34
+ }
29
35
  };
30
36
  LocationUtils.pathQueryParams = function (window) {
31
37
  return this.queryStringToMap(window.location.search.substring(1));
@@ -1,45 +0,0 @@
1
- import { RawSet } from '../rawsets/RawSet';
2
- import { ComponentSet } from '../components/ComponentSet';
3
- import { Config } from '../configs/Config';
4
- import { Attrs } from '../rawsets/Attrs';
5
- import { AttrInitCallBack } from '../rawsets/AttrInitCallBack';
6
- import { ElementInitCallBack } from '../rawsets/ElementInitCallBack';
7
- import { Render } from '../rawsets/Render';
8
- export declare enum ExecuteState {
9
- EXECUTE = 0,
10
- NO_EXECUTE = 1,
11
- STOP = 2
12
- }
13
- export declare type AfterCallBack = {
14
- onAttrInitCallBacks: AttrInitCallBack[];
15
- onElementInitCallBacks: ElementInitCallBack[];
16
- onThisComponentSetCallBacks: ComponentSet[];
17
- };
18
- export declare abstract class OperatorRender {
19
- rawSet: RawSet;
20
- render: Render;
21
- returnContainer: {
22
- raws: RawSet[];
23
- fag: DocumentFragment;
24
- };
25
- elementSource: {
26
- element: Element;
27
- attrs: Attrs;
28
- };
29
- source: {
30
- config: Config;
31
- obj: any;
32
- };
33
- afterCallBack: AfterCallBack;
34
- constructor(rawSet: RawSet, render: Render, returnContainer: {
35
- raws: RawSet[];
36
- fag: DocumentFragment;
37
- }, elementSource: {
38
- element: Element;
39
- attrs: Attrs;
40
- }, source: {
41
- config: Config;
42
- obj: any;
43
- }, afterCallBack: AfterCallBack);
44
- abstract execRender(): ExecuteState;
45
- }
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OperatorRender = exports.ExecuteState = void 0;
4
- var ExecuteState;
5
- (function (ExecuteState) {
6
- ExecuteState[ExecuteState["EXECUTE"] = 0] = "EXECUTE";
7
- ExecuteState[ExecuteState["NO_EXECUTE"] = 1] = "NO_EXECUTE";
8
- ExecuteState[ExecuteState["STOP"] = 2] = "STOP";
9
- })(ExecuteState = exports.ExecuteState || (exports.ExecuteState = {}));
10
- var OperatorRender = /** @class */ (function () {
11
- function OperatorRender(rawSet, render, returnContainer, elementSource, source, afterCallBack) {
12
- this.rawSet = rawSet;
13
- this.render = render;
14
- this.returnContainer = returnContainer;
15
- this.elementSource = elementSource;
16
- this.source = source;
17
- this.afterCallBack = afterCallBack;
18
- }
19
- return OperatorRender;
20
- }());
21
- exports.OperatorRender = OperatorRender;