dom-render 1.0.84 → 1.0.85

Sign up to get free protection for your applications and to get access to all the features.
package/DomRender.js CHANGED
@@ -51,7 +51,7 @@ var DomRender = /** @class */ (function () {
51
51
  var component = RawSet_1.RawSet.createComponentTargetElement((_a = param.tagName) !== null && _a !== void 0 ? _a : param.type.name, function (e, o, r2, counstructorParam) {
52
52
  var _a;
53
53
  return new ((_a = param.type).bind.apply(_a, __spreadArray([void 0], counstructorParam, false)))();
54
- }, (_b = param.template) !== null && _b !== void 0 ? _b : '', Array.isArray(param.styles) ? param.styles : (param.styles ? [param.styles] : undefined), false, config);
54
+ }, (_b = param.template) !== null && _b !== void 0 ? _b : '', Array.isArray(param.styles) ? param.styles : (param.styles ? [param.styles] : undefined), config);
55
55
  return component;
56
56
  };
57
57
  DomRender.createAttribute = function (attrName, getThisObj, factory) {
package/DomRenderProxy.js CHANGED
@@ -134,7 +134,9 @@ var DomRenderProxy = /** @class */ (function () {
134
134
  // ------------------->
135
135
  }
136
136
  else {
137
+ // console.log('---rawSets->', it)
137
138
  var rawSets = it.render(_this._domRender_proxy, _this.config);
139
+ // console.log('---rawSets->', rawSets)
138
140
  // 대상 attribute 있으면
139
141
  // const targetAttrs = (it.point.node as Element).getAttribute(EventManager.normalAttrMapAttrName);
140
142
  // if (it?.data.onChangeAttrRender && it.type === RawSetType.TARGET_ELEMENT && targetAttrs) {
package/README.MD CHANGED
@@ -7,7 +7,7 @@ DOM-RENDER
7
7
 
8
8
  # 🚀 Quick start
9
9
  ```html
10
- <script src="https://cdn.jsdelivr.net/npm/dom-render@1.0.84/dist/bundle.js"></script>
10
+ <script src="https://cdn.jsdelivr.net/npm/dom-render@1.0.85/dist/bundle.js"></script>
11
11
  ```
12
12
  ```html
13
13
  <!DOCTYPE html>
@@ -18,7 +18,7 @@ DOM-RENDER
18
18
  </head>
19
19
  <body id="app">
20
20
  ${this.name}$
21
- <script src="https://cdn.jsdelivr.net/npm/dom-render@1.0.84/dist/bundle.js"></script>
21
+ <script src="https://cdn.jsdelivr.net/npm/dom-render@1.0.85/dist/bundle.js"></script>
22
22
  <script>
23
23
  let data = {
24
24
  name: 'my name is dom-render'
package/RawSet.d.ts CHANGED
@@ -49,6 +49,7 @@ export declare type ElementInitCallBack = {
49
49
  };
50
50
  export declare enum RawSetType {
51
51
  TEXT = "TEXT",
52
+ STYLE_TEXT = "STYLE_TEXT",
52
53
  TARGET_ELEMENT = "TARGET_ELEMENT",
53
54
  TARGET_ATTR = "TARGET_ATTR",
54
55
  UNKOWN = "UNKOWN"
@@ -71,10 +72,11 @@ export declare class RawSet {
71
72
  uuid: string;
72
73
  type: RawSetType;
73
74
  point: {
74
- start: Comment;
75
+ start: Comment | Text | HTMLMetaElement;
75
76
  node: Node;
76
- end: Comment;
77
+ end: Comment | Text | HTMLMetaElement;
77
78
  thisVariableName?: string | null;
79
+ parent?: Node | null;
78
80
  };
79
81
  fragment: DocumentFragment;
80
82
  detect?: {
@@ -105,10 +107,11 @@ export declare class RawSet {
105
107
  static readonly DR_TAGS: never[];
106
108
  static readonly DR_ATTRIBUTES: string[];
107
109
  constructor(uuid: string, type: RawSetType, point: {
108
- start: Comment;
110
+ start: Comment | Text | HTMLMetaElement;
109
111
  node: Node;
110
- end: Comment;
112
+ end: Comment | Text | HTMLMetaElement;
111
113
  thisVariableName?: string | null;
114
+ parent?: Node | null;
112
115
  }, fragment: DocumentFragment, detect?: {
113
116
  action: Function;
114
117
  } | undefined, data?: any);
@@ -140,13 +143,11 @@ export declare class RawSet {
140
143
  regex: RegExp;
141
144
  random: string;
142
145
  }[]): void;
143
- static drThisCreate(element: Element, drThis: string, drVarOption: string, drStripOption: boolean | string | null, obj: any, config: Config, set?: ComponentSet): DocumentFragment;
146
+ static drThisCreate(rawSet: RawSet, element: Element, drThis: string, drVarOption: string, drStripOption: boolean | string | null, obj: any, config: Config, set?: ComponentSet): DocumentFragment;
144
147
  static createComponentTargetAttribute(name: string, getThisObj: (element: Element, attrValue: string, obj: any, rawSet: RawSet) => any, factory: (element: Element, attrValue: string, obj: any, rawSet: RawSet) => DocumentFragment): TargetAttr;
145
- static createComponentTargetElement(name: string, objFactory: (element: Element, obj: any, rawSet: RawSet, counstructorParam: any[]) => any, template: string | undefined, styles: string[] | undefined, styleLocale: boolean, config: Config): TargetElement;
148
+ static createComponentTargetElement(name: string, objFactory: (element: Element, obj: any, rawSet: RawSet, counstructorParam: any[]) => any, template: string | undefined, styles: string[] | undefined, config: Config): TargetElement;
146
149
  static isExporesion(data: string | null): boolean;
147
150
  static exporesionGrouops(data: string | null): RegExpExecArray[];
148
- static styleTransformLocal(styleBody: string | string[], id: string, styleTagWrap?: boolean, locale?: boolean): string;
149
- static metaStart(id: string): string;
150
- static metaEnd(id: string): string;
151
+ static styleTransformLocal(styleBody: string | string[], id: string, styleTagWrap?: boolean): string;
151
152
  static destroy(obj: any | undefined, parameter: any[], config: Config, destroyOptions?: (DestroyOptionType | string)[]): void;
152
153
  }
package/RawSet.js CHANGED
@@ -50,6 +50,7 @@ var DestroyOptionType;
50
50
  var RawSetType;
51
51
  (function (RawSetType) {
52
52
  RawSetType["TEXT"] = "TEXT";
53
+ RawSetType["STYLE_TEXT"] = "STYLE_TEXT";
53
54
  RawSetType["TARGET_ELEMENT"] = "TARGET_ELEMENT";
54
55
  RawSetType["TARGET_ATTR"] = "TARGET_ATTR";
55
56
  RawSetType["UNKOWN"] = "UNKOWN";
@@ -146,21 +147,28 @@ var RawSet = /** @class */ (function () {
146
147
  });
147
148
  var fag = config.window.document.createDocumentFragment();
148
149
  if (cNode.nodeType === Node.TEXT_NODE && cNode.textContent) {
150
+ // console.log('text-->', this, obj, config)
151
+ // console.log('text-->', Array.from(this.fragment.childNodes))
149
152
  var textContent = cNode.textContent;
150
153
  var runText = RawSet.exporesionGrouops(textContent)[0][1];
151
154
  // console.log('--->', RawSet.exporesionGrouops(textContent), textContent,runText, runText[0][1])
152
- var n = void 0;
155
+ var newNode = void 0;
153
156
  if (textContent === null || textContent === void 0 ? void 0 : textContent.startsWith('#')) {
154
157
  var r = ScriptUtils_1.ScriptUtils.eval("".concat(__render.bindScript, " return ").concat(runText), Object.assign(obj, { __render: __render }));
155
158
  var template = config.window.document.createElement('template');
156
159
  template.innerHTML = r;
157
- n = template.content;
160
+ newNode = template.content;
158
161
  }
159
162
  else {
160
163
  var r = ScriptUtils_1.ScriptUtils.eval("".concat(__render.bindScript, " return ").concat(runText), Object.assign(obj, { __render: __render }));
161
- n = config.window.document.createTextNode(r);
164
+ newNode = config.window.document.createTextNode(r);
165
+ }
166
+ (_a = cNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(newNode, cNode);
167
+ // console.log('-------', this.point.start.parentNode.nodeName)
168
+ // 중요 style value change 됐을때 다시 처리해야되기떄문에: 마지막에 completed 없는 attr 가지고 판단 하니깐
169
+ if (this.type === RawSetType.STYLE_TEXT && this.point.parent) {
170
+ this.point.parent.removeAttribute('completed');
162
171
  }
163
- (_a = cNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(n, cNode);
164
172
  }
165
173
  else if (cNode.nodeType === Node.ELEMENT_NODE) {
166
174
  var element = cNode;
@@ -215,7 +223,7 @@ var RawSet = /** @class */ (function () {
215
223
  }
216
224
  }
217
225
  this.applyEvent(obj, genNode, config);
218
- this.replaceBody(genNode);
226
+ this.replaceBody(genNode); // 중요 여기서 마지막에 연션된 값을 그려준다.
219
227
  drAttrs.forEach(function (it) {
220
228
  if (it.drCompleteOption) {
221
229
  // genNode.childNodes
@@ -228,25 +236,25 @@ var RawSet = /** @class */ (function () {
228
236
  }));
229
237
  }
230
238
  });
239
+ // 중요 style isolation 나중에 :scope로 대체 가능할듯.
240
+ Array.from(window.document.styleSheets).filter(function (it) { return it.ownerNode && it.ownerNode instanceof Element && it.ownerNode.getAttribute('id') && !it.ownerNode.getAttribute('completed'); }).forEach(function (it) {
241
+ var _a;
242
+ var styleElement = it.ownerNode;
243
+ var id = (_a = styleElement.getAttribute('id')) === null || _a === void 0 ? void 0 : _a.split('-')[0];
244
+ if (id) {
245
+ // console.log('------->', id)
246
+ Array.from(it.cssRules).forEach(function (it) {
247
+ _this.generateCSS(id, it);
248
+ });
249
+ }
250
+ it.ownerNode.setAttribute('completed', 'true');
251
+ });
231
252
  for (var _p = 0, onThisComponentSetCallBacks_1 = onThisComponentSetCallBacks; _p < onThisComponentSetCallBacks_1.length; _p++) {
232
253
  var it_1 = onThisComponentSetCallBacks_1[_p];
233
254
  (_c = (_b = it_1.obj).onInitRender) === null || _c === void 0 ? void 0 : _c.call(_b);
234
255
  }
235
256
  for (var _q = 0, onElementInitCallBacks_1 = onElementInitCallBacks; _q < onElementInitCallBacks_1.length; _q++) {
236
257
  var it_2 = onElementInitCallBacks_1[_q];
237
- // 중요 style isolation 나중에 :scope로 대체 가능할듯.
238
- Array.from(window.document.styleSheets).filter(function (it) { return it.ownerNode && it.ownerNode instanceof Element && it.ownerNode.getAttribute('id') && !it.ownerNode.getAttribute('completed'); }).forEach(function (it) {
239
- var _a;
240
- var styleElement = it.ownerNode;
241
- var id = (_a = styleElement.getAttribute('id')) === null || _a === void 0 ? void 0 : _a.split('-')[0];
242
- if (id) {
243
- // console.log('------->', id)
244
- Array.from(it.cssRules).forEach(function (it) {
245
- _this.generateCSS(id, it);
246
- });
247
- }
248
- it.ownerNode.setAttribute('completed', 'true');
249
- });
250
258
  (_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 }));
251
259
  (_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);
252
260
  }
@@ -346,17 +354,19 @@ var RawSet = /** @class */ (function () {
346
354
  RawSet.prototype.replaceBody = function (genNode) {
347
355
  var _a;
348
356
  this.childAllRemove();
349
- (_a = this.point.start.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(genNode, this.point.start.nextSibling);
357
+ (_a = this.point.start.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(genNode, this.point.start.nextSibling); // 중요 start checkpoint 다음인 end checkpoint 앞에 넣는다. 즉 중간 껴넣기 (나중에 meta tag로 변경을 해도될듯하긴한데..)
350
358
  };
351
359
  // 중요 important
352
360
  RawSet.checkPointCreates = function (element, obj, config) {
353
361
  var _a, _b, _c, _d, _e, _f, _g, _h;
362
+ // console.log('start==========')
354
363
  var thisVariableName = element.__domrender_this_variable_name;
355
364
  // console.log('checkPointCreates thisVariableName', thisVariableName);
356
365
  var nodeIterator = config.window.document.createNodeIterator(element, NodeFilter.SHOW_ALL, {
357
366
  acceptNode: function (node) {
358
367
  var _a, _b, _c, _d, _e;
359
368
  if (node.nodeType === Node.TEXT_NODE) {
369
+ // console.log('text--->', node.textContent)
360
370
  // console.log('????????', node.parentElement, node.parentElement?.getAttribute('dr-pre'));
361
371
  // console.log('???????/',node.textContent, node.parentElement?.getAttribute('dr-pre'))
362
372
  // TODO: 나중에
@@ -401,49 +411,68 @@ var RawSet = /** @class */ (function () {
401
411
  // const a = StringUtils.regexExec(/[$#]\{.*?\}/g, text);
402
412
  // const a = StringUtils.betweenRegexpStr('[$#]\\{', '\\}', text); // <--TODO: 나중에..
403
413
  var groups = RawSet.exporesionGrouops(text);
404
- var map = groups.map(function (it) { return ({ uuid: RandomUtils_1.RandomUtils.uuid(), content: it[0], regexArr: it }); });
414
+ var map = groups.map(function (it) { return ({ uuid: RandomUtils_1.RandomUtils.getRandomString(40), content: it[0], regexArr: it }); });
405
415
  var lasterIndex = 0;
406
416
  for (var i = 0; i < map.length; i++) {
407
417
  var it_4 = map[i];
408
418
  var regexArr = it_4.regexArr;
409
419
  var preparedText = regexArr.input.substring(lasterIndex, regexArr.index);
410
- var start = config.window.document.createComment("start text ".concat(it_4.uuid));
411
- var end = config.window.document.createComment("end text ".concat(it_4.uuid));
420
+ // const start = config.window.document.createElement('meta');
421
+ // start.setAttribute('id', `${it.uuid}-start`);
422
+ // const end = config.window.document.createElement('meta');
423
+ // end.setAttribute('id', `${it.uuid}-end`);
424
+ var start = void 0;
425
+ var end = void 0;
426
+ var type = void 0;
427
+ if (currentNode.parentNode && currentNode.parentNode.nodeName.toUpperCase() === 'STYLE') {
428
+ type = RawSetType.STYLE_TEXT;
429
+ start = config.window.document.createTextNode("/*start text ".concat(it_4.uuid, "*/"));
430
+ end = config.window.document.createTextNode("/*end text ".concat(it_4.uuid, "*/"));
431
+ }
432
+ else {
433
+ type = RawSetType.TEXT;
434
+ start = config.window.document.createComment("start text ".concat(it_4.uuid));
435
+ end = config.window.document.createComment("end text ".concat(it_4.uuid));
436
+ }
412
437
  // layout setting
413
- template.content.append(document.createTextNode(preparedText)); // 사이사이값.
414
- template.content.append(start);
415
- template.content.append(end);
416
- // content
438
+ template.content.append(document.createTextNode(preparedText)); // 앞 부분 넣고
439
+ template.content.append(start); // add start checkpoint
440
+ template.content.append(end); // add end checkpoint
441
+ // content 안쪽 RawSet render 할때 start 와 end 사이에 fragment 연산해서 들어간다.
417
442
  var fragment = config.window.document.createDocumentFragment();
418
443
  fragment.append(config.window.document.createTextNode(it_4.content));
419
- pars.push(new RawSet(it_4.uuid, RawSetType.TEXT, {
444
+ pars.push(new RawSet(it_4.uuid, type, {
420
445
  start: start,
421
446
  node: currentNode,
422
447
  end: end,
448
+ parent: currentNode.parentNode,
423
449
  thisVariableName: thisVariableName
424
450
  }, fragment));
425
451
  lasterIndex = regexArr.index + it_4.content.length;
426
452
  }
427
453
  template.content.append(config.window.document.createTextNode(text.substring(lasterIndex, text.length)));
428
- (_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _b === void 0 ? void 0 : _b.replaceChild(template.content, currentNode);
454
+ (_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _b === void 0 ? void 0 : _b.replaceChild(template.content, currentNode); // <-- 여기서 text를 fragment로 replace했기때문에 추적 변경이 가능하다.
429
455
  }
430
456
  else if (currentNode.nodeType === Node.ELEMENT_NODE) {
431
- var uuid = RandomUtils_1.RandomUtils.uuid();
457
+ var uuid = RandomUtils_1.RandomUtils.getRandomString(40);
432
458
  var element_3 = currentNode;
433
459
  var fragment = config.window.document.createDocumentFragment();
434
- var start = config.window.document.createComment("start ".concat(uuid));
435
- var end = config.window.document.createComment("end ".concat(uuid));
436
- // console.log('start--', uuid)
460
+ var start = config.window.document.createElement('meta');
461
+ var end = config.window.document.createElement('meta');
462
+ start.setAttribute('id', "".concat(uuid, "-start"));
463
+ end.setAttribute('id', "".concat(uuid, "-end"));
464
+ var type = RawSetType.TARGET_ELEMENT;
437
465
  var isElement = ((_d = (_c = config.targetElements) === null || _c === void 0 ? void 0 : _c.map(function (it) { return it.name.toLowerCase(); })) !== null && _d !== void 0 ? _d : []).includes(element_3.tagName.toLowerCase());
438
466
  var targetAttrNames_2 = ((_f = (_e = config.targetAttrs) === null || _e === void 0 ? void 0 : _e.map(function (it) { return it.name; })) !== null && _f !== void 0 ? _f : []).concat(RawSet.DR_ATTRIBUTES);
439
467
  var isAttr = element_3.getAttributeNames().filter(function (it) { return targetAttrNames_2.includes(it.toLowerCase()); }).length > 0;
440
468
  (_g = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _g === void 0 ? void 0 : _g.insertBefore(start, currentNode);
441
469
  (_h = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _h === void 0 ? void 0 : _h.insertBefore(end, currentNode.nextSibling);
442
470
  fragment.append(currentNode);
443
- pars.push(new RawSet(uuid, isElement ? RawSetType.TARGET_ELEMENT : (isAttr ? RawSetType.TARGET_ATTR : RawSetType.UNKOWN), {
471
+ pars.push(new RawSet(uuid, isElement ? type : (isAttr ? RawSetType.TARGET_ATTR : RawSetType.UNKOWN), {
444
472
  start: start,
445
473
  node: currentNode,
446
474
  end: end,
475
+ parent: currentNode.parentNode,
447
476
  thisVariableName: thisVariableName
448
477
  }, fragment));
449
478
  }
@@ -570,16 +599,18 @@ var RawSet = /** @class */ (function () {
570
599
  });
571
600
  });
572
601
  };
573
- RawSet.drThisCreate = function (element, drThis, drVarOption, drStripOption, obj, config, set) {
602
+ RawSet.drThisCreate = function (rawSet, element, drThis, drVarOption, drStripOption, obj, config, set) {
574
603
  var _a, _b, _c, _d;
575
604
  var fag = config.window.document.createDocumentFragment();
576
605
  var n = element.cloneNode(true);
606
+ // console.log('--------',n, n.innerHTML)
577
607
  if (set) {
578
- var id = RandomUtils_1.RandomUtils.getRandomString(20);
579
- var style = RawSet.styleTransformLocal((_a = set.styles) !== null && _a !== void 0 ? _a : [], id, true, set.styleLocale);
580
- var metaStart = RawSet.metaStart(id);
581
- var metaEnd = RawSet.metaEnd(id);
582
- n.innerHTML = metaStart + style + ((_b = set.template) !== null && _b !== void 0 ? _b : '') + metaEnd;
608
+ // const id = RandomUtils.getRandomString(20);
609
+ var style = RawSet.styleTransformLocal((_a = set.styles) !== null && _a !== void 0 ? _a : [], rawSet.uuid, true);
610
+ n.innerHTML = style + ((_b = set.template) !== null && _b !== void 0 ? _b : '');
611
+ // const metaStart = RawSet.metaStart(id);
612
+ // const metaEnd = RawSet.metaEnd(id);
613
+ // n.innerHTML = metaStart + style + (set.template ?? '') + metaEnd;
583
614
  // dr-on-create onCreateRender
584
615
  var onCreate = element.getAttribute("".concat(EventManager_1.EventManager.attrPrefix, "on-create"));
585
616
  var renderScript = '';
@@ -607,6 +638,7 @@ var RawSet = /** @class */ (function () {
607
638
  this.drVarDecoding(n, vars);
608
639
  this.drThisDecoding(n, thisRandom);
609
640
  if (drStripOption && (drStripOption === true || drStripOption === 'true')) {
641
+ // console.log('------childNodes', Array.from(n.childNodes))
610
642
  Array.from(n.childNodes).forEach(function (it) { return fag.append(it); });
611
643
  }
612
644
  else {
@@ -637,7 +669,7 @@ var RawSet = /** @class */ (function () {
637
669
  };
638
670
  return targetAttribute;
639
671
  };
640
- RawSet.createComponentTargetElement = function (name, objFactory, template, styles, styleLocale, config) {
672
+ RawSet.createComponentTargetElement = function (name, objFactory, template, styles, config) {
641
673
  if (template === void 0) { template = ''; }
642
674
  if (styles === void 0) { styles = []; }
643
675
  var targetElement = {
@@ -651,7 +683,8 @@ var RawSet = /** @class */ (function () {
651
683
  obj.__domrender_components = {};
652
684
  }
653
685
  var domrenderComponents = obj.__domrender_components;
654
- var componentKey = '_' + RandomUtils_1.RandomUtils.getRandomString(20);
686
+ // const componentKey = '_' + RandomUtils.getRandomString(20);
687
+ var componentKey = rawSet.uuid;
655
688
  var attribute = DomUtils_1.DomUtils.getAttributeToObject(element);
656
689
  var renderScript = 'var $component = this.__render.component; var $element = this.__render.element; var $router = this.__render.router; var $innerHTML = this.__render.innerHTML; var $attribute = this.__render.attribute; var $creatorMetaData = this.__render.creatorMetaData;';
657
690
  var render = Object.freeze({
@@ -734,12 +767,13 @@ var RawSet = /** @class */ (function () {
734
767
  __render: render
735
768
  }));
736
769
  }
737
- var style = RawSet.styleTransformLocal(styles, componentKey, true, styleLocale);
738
- var metaStart = RawSet.metaStart(componentKey);
739
- var metaEnd = RawSet.metaEnd(componentKey);
740
- element.innerHTML = metaStart + style + (applayTemplate !== null && applayTemplate !== void 0 ? applayTemplate : '') + metaEnd;
770
+ var style = RawSet.styleTransformLocal(styles, componentKey, true);
771
+ element.innerHTML = style + (applayTemplate !== null && applayTemplate !== void 0 ? applayTemplate : '');
772
+ // const metaStart = RawSet.metaStart(componentKey);
773
+ // const metaEnd = RawSet.metaEnd(componentKey);
774
+ // element.innerHTML = metaStart + style + (applayTemplate ?? '') + metaEnd;
741
775
  // console.log('------>', element.innerHTML, obj)
742
- var data = RawSet.drThisCreate(element, "this.__domrender_components.".concat(componentKey), '', true, obj, config);
776
+ var data = RawSet.drThisCreate(rawSet, element, "this.__domrender_components.".concat(componentKey), '', true, obj, config);
743
777
  // 넘어온 innerHTML에 this가 있는걸 다시 복호화해서 제대로 작동하도록한다.
744
778
  if (innerHTMLThisRandom) {
745
779
  var template_1 = config.window.document.createElement('template');
@@ -764,9 +798,8 @@ var RawSet = /** @class */ (function () {
764
798
  return StringUtils_1.StringUtils.regexExec(reg, data !== null && data !== void 0 ? data : '');
765
799
  };
766
800
  // 중요 스타일 적용 부분
767
- RawSet.styleTransformLocal = function (styleBody, id, styleTagWrap, locale) {
801
+ RawSet.styleTransformLocal = function (styleBody, id, styleTagWrap) {
768
802
  if (styleTagWrap === void 0) { styleTagWrap = true; }
769
- if (locale === void 0) { locale = false; }
770
803
  // <style id="first">
771
804
  // #first ~ *:not(#first ~ style[domstyle] ~ *) {
772
805
  // font-size: 30px;
@@ -776,25 +809,26 @@ var RawSet = /** @class */ (function () {
776
809
  if (Array.isArray(styleBody)) {
777
810
  styleBody = styleBody.join('\n');
778
811
  }
779
- if (locale) {
780
- styleBody = styleBody.replace(/([^}]+){/gm, function (a, b) {
781
- if (typeof b === 'string') {
782
- b = b.trim();
783
- }
784
- return "#".concat(id, " ~ ").concat(b, ":not(#").concat(id, " ~ style[domstyle] ~ *), #").concat(id, " ~ * ").concat(b, " {");
785
- });
786
- }
812
+ // if (locale) {
813
+ // styleBody = styleBody.replace(/([^}]+){/gm, function (a, b) {
814
+ // if (typeof b === 'string') {
815
+ // b = b.trim();
816
+ // }
817
+ // return `#${id} ~ ${b}:not(#${id} ~ style[domstyle] ~ *), #${id} ~ * ${b} {`;
818
+ // });
819
+ // }
787
820
  if (styleTagWrap) {
788
821
  styleBody = "<style id='".concat(id, "-style' domstyle>").concat(styleBody, "</style>");
789
822
  }
790
823
  return styleBody;
791
824
  };
792
- RawSet.metaStart = function (id) {
793
- return "<meta id='".concat(id, "-start' />");
794
- };
795
- RawSet.metaEnd = function (id) {
796
- return "<meta id='".concat(id, "-end' />");
797
- };
825
+ // public static metaStart(id: string) {
826
+ // return `<meta id='${id}-start' />`;
827
+ // }
828
+ //
829
+ // public static metaEnd(id: string) {
830
+ // return `<meta id='${id}-end' />`;
831
+ // }
798
832
  RawSet.destroy = function (obj, parameter, config, destroyOptions) {
799
833
  var _a;
800
834
  if (destroyOptions === void 0) { destroyOptions = []; }
package/dist/bundle.js CHANGED
@@ -1101,11 +1101,11 @@ var DrThis = /** @class */ (function (_super) {
1101
1101
  RawSet.destroy(this.rawSet.data.obj, [], this.source.config, destroyOptions);
1102
1102
  }
1103
1103
  this.rawSet.data = r;
1104
- this.returnContainer.fag.append(RawSet.drThisCreate(this.elementSource.element, "".concat(this.elementSource.attrs.drThis, ".obj"), (_d = this.elementSource.attrs.drVarOption) !== null && _d !== void 0 ? _d : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config, r));
1104
+ this.returnContainer.fag.append(RawSet.drThisCreate(this.rawSet, this.elementSource.element, "".concat(this.elementSource.attrs.drThis, ".obj"), (_d = this.elementSource.attrs.drVarOption) !== null && _d !== void 0 ? _d : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config, r));
1105
1105
  this.afterCallBack.onThisComponentSetCallBacks.push(r);
1106
1106
  }
1107
1107
  else {
1108
- this.returnContainer.fag.append(RawSet.drThisCreate(this.elementSource.element, this.elementSource.attrs.drThis, (_e = this.elementSource.attrs.drVarOption) !== null && _e !== void 0 ? _e : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config));
1108
+ this.returnContainer.fag.append(RawSet.drThisCreate(this.rawSet, this.elementSource.element, this.elementSource.attrs.drThis, (_e = this.elementSource.attrs.drVarOption) !== null && _e !== void 0 ? _e : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config));
1109
1109
  }
1110
1110
  var rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);
1111
1111
  (_f = this.elementSource.element.parentNode) === null || _f === void 0 ? void 0 : _f.replaceChild(this.returnContainer.fag, this.elementSource.element);
@@ -1808,6 +1808,7 @@ exports.DestroyOptionType = void 0;
1808
1808
  exports.RawSetType = void 0;
1809
1809
  (function (RawSetType) {
1810
1810
  RawSetType["TEXT"] = "TEXT";
1811
+ RawSetType["STYLE_TEXT"] = "STYLE_TEXT";
1811
1812
  RawSetType["TARGET_ELEMENT"] = "TARGET_ELEMENT";
1812
1813
  RawSetType["TARGET_ATTR"] = "TARGET_ATTR";
1813
1814
  RawSetType["UNKOWN"] = "UNKOWN";
@@ -1904,21 +1905,28 @@ var RawSet = /** @class */ (function () {
1904
1905
  });
1905
1906
  var fag = config.window.document.createDocumentFragment();
1906
1907
  if (cNode.nodeType === Node.TEXT_NODE && cNode.textContent) {
1908
+ // console.log('text-->', this, obj, config)
1909
+ // console.log('text-->', Array.from(this.fragment.childNodes))
1907
1910
  var textContent = cNode.textContent;
1908
1911
  var runText = RawSet.exporesionGrouops(textContent)[0][1];
1909
1912
  // console.log('--->', RawSet.exporesionGrouops(textContent), textContent,runText, runText[0][1])
1910
- var n = void 0;
1913
+ var newNode = void 0;
1911
1914
  if (textContent === null || textContent === void 0 ? void 0 : textContent.startsWith('#')) {
1912
1915
  var r = ScriptUtils.eval("".concat(__render.bindScript, " return ").concat(runText), Object.assign(obj, { __render: __render }));
1913
1916
  var template = config.window.document.createElement('template');
1914
1917
  template.innerHTML = r;
1915
- n = template.content;
1918
+ newNode = template.content;
1916
1919
  }
1917
1920
  else {
1918
1921
  var r = ScriptUtils.eval("".concat(__render.bindScript, " return ").concat(runText), Object.assign(obj, { __render: __render }));
1919
- n = config.window.document.createTextNode(r);
1922
+ newNode = config.window.document.createTextNode(r);
1923
+ }
1924
+ (_a = cNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(newNode, cNode);
1925
+ // console.log('-------', this.point.start.parentNode.nodeName)
1926
+ // 중요 style value change 됐을때 다시 처리해야되기떄문에: 마지막에 completed 없는 attr 가지고 판단 하니깐
1927
+ if (this.type === exports.RawSetType.STYLE_TEXT && this.point.parent) {
1928
+ this.point.parent.removeAttribute('completed');
1920
1929
  }
1921
- (_a = cNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(n, cNode);
1922
1930
  }
1923
1931
  else if (cNode.nodeType === Node.ELEMENT_NODE) {
1924
1932
  var element = cNode;
@@ -1973,7 +1981,7 @@ var RawSet = /** @class */ (function () {
1973
1981
  }
1974
1982
  }
1975
1983
  this.applyEvent(obj, genNode, config);
1976
- this.replaceBody(genNode);
1984
+ this.replaceBody(genNode); // 중요 여기서 마지막에 연션된 값을 그려준다.
1977
1985
  drAttrs.forEach(function (it) {
1978
1986
  if (it.drCompleteOption) {
1979
1987
  // genNode.childNodes
@@ -1986,25 +1994,25 @@ var RawSet = /** @class */ (function () {
1986
1994
  }));
1987
1995
  }
1988
1996
  });
1997
+ // 중요 style isolation 나중에 :scope로 대체 가능할듯.
1998
+ Array.from(window.document.styleSheets).filter(function (it) { return it.ownerNode && it.ownerNode instanceof Element && it.ownerNode.getAttribute('id') && !it.ownerNode.getAttribute('completed'); }).forEach(function (it) {
1999
+ var _a;
2000
+ var styleElement = it.ownerNode;
2001
+ var id = (_a = styleElement.getAttribute('id')) === null || _a === void 0 ? void 0 : _a.split('-')[0];
2002
+ if (id) {
2003
+ // console.log('------->', id)
2004
+ Array.from(it.cssRules).forEach(function (it) {
2005
+ _this.generateCSS(id, it);
2006
+ });
2007
+ }
2008
+ it.ownerNode.setAttribute('completed', 'true');
2009
+ });
1989
2010
  for (var _p = 0, onThisComponentSetCallBacks_1 = onThisComponentSetCallBacks; _p < onThisComponentSetCallBacks_1.length; _p++) {
1990
2011
  var it_1 = onThisComponentSetCallBacks_1[_p];
1991
2012
  (_c = (_b = it_1.obj).onInitRender) === null || _c === void 0 ? void 0 : _c.call(_b);
1992
2013
  }
1993
2014
  for (var _q = 0, onElementInitCallBacks_1 = onElementInitCallBacks; _q < onElementInitCallBacks_1.length; _q++) {
1994
2015
  var it_2 = onElementInitCallBacks_1[_q];
1995
- // 중요 style isolation 나중에 :scope로 대체 가능할듯.
1996
- Array.from(window.document.styleSheets).filter(function (it) { return it.ownerNode && it.ownerNode instanceof Element && it.ownerNode.getAttribute('id') && !it.ownerNode.getAttribute('completed'); }).forEach(function (it) {
1997
- var _a;
1998
- var styleElement = it.ownerNode;
1999
- var id = (_a = styleElement.getAttribute('id')) === null || _a === void 0 ? void 0 : _a.split('-')[0];
2000
- if (id) {
2001
- // console.log('------->', id)
2002
- Array.from(it.cssRules).forEach(function (it) {
2003
- _this.generateCSS(id, it);
2004
- });
2005
- }
2006
- it.ownerNode.setAttribute('completed', 'true');
2007
- });
2008
2016
  (_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 }));
2009
2017
  (_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);
2010
2018
  }
@@ -2104,17 +2112,19 @@ var RawSet = /** @class */ (function () {
2104
2112
  RawSet.prototype.replaceBody = function (genNode) {
2105
2113
  var _a;
2106
2114
  this.childAllRemove();
2107
- (_a = this.point.start.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(genNode, this.point.start.nextSibling);
2115
+ (_a = this.point.start.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(genNode, this.point.start.nextSibling); // 중요 start checkpoint 다음인 end checkpoint 앞에 넣는다. 즉 중간 껴넣기 (나중에 meta tag로 변경을 해도될듯하긴한데..)
2108
2116
  };
2109
2117
  // 중요 important
2110
2118
  RawSet.checkPointCreates = function (element, obj, config) {
2111
2119
  var _a, _b, _c, _d, _e, _f, _g, _h;
2120
+ // console.log('start==========')
2112
2121
  var thisVariableName = element.__domrender_this_variable_name;
2113
2122
  // console.log('checkPointCreates thisVariableName', thisVariableName);
2114
2123
  var nodeIterator = config.window.document.createNodeIterator(element, NodeFilter.SHOW_ALL, {
2115
2124
  acceptNode: function (node) {
2116
2125
  var _a, _b, _c, _d, _e;
2117
2126
  if (node.nodeType === Node.TEXT_NODE) {
2127
+ // console.log('text--->', node.textContent)
2118
2128
  // console.log('????????', node.parentElement, node.parentElement?.getAttribute('dr-pre'));
2119
2129
  // console.log('???????/',node.textContent, node.parentElement?.getAttribute('dr-pre'))
2120
2130
  // TODO: 나중에
@@ -2159,49 +2169,68 @@ var RawSet = /** @class */ (function () {
2159
2169
  // const a = StringUtils.regexExec(/[$#]\{.*?\}/g, text);
2160
2170
  // const a = StringUtils.betweenRegexpStr('[$#]\\{', '\\}', text); // <--TODO: 나중에..
2161
2171
  var groups = RawSet.exporesionGrouops(text);
2162
- var map = groups.map(function (it) { return ({ uuid: RandomUtils.uuid(), content: it[0], regexArr: it }); });
2172
+ var map = groups.map(function (it) { return ({ uuid: RandomUtils.getRandomString(40), content: it[0], regexArr: it }); });
2163
2173
  var lasterIndex = 0;
2164
2174
  for (var i = 0; i < map.length; i++) {
2165
2175
  var it_4 = map[i];
2166
2176
  var regexArr = it_4.regexArr;
2167
2177
  var preparedText = regexArr.input.substring(lasterIndex, regexArr.index);
2168
- var start = config.window.document.createComment("start text ".concat(it_4.uuid));
2169
- var end = config.window.document.createComment("end text ".concat(it_4.uuid));
2178
+ // const start = config.window.document.createElement('meta');
2179
+ // start.setAttribute('id', `${it.uuid}-start`);
2180
+ // const end = config.window.document.createElement('meta');
2181
+ // end.setAttribute('id', `${it.uuid}-end`);
2182
+ var start = void 0;
2183
+ var end = void 0;
2184
+ var type = void 0;
2185
+ if (currentNode.parentNode && currentNode.parentNode.nodeName.toUpperCase() === 'STYLE') {
2186
+ type = exports.RawSetType.STYLE_TEXT;
2187
+ start = config.window.document.createTextNode("/*start text ".concat(it_4.uuid, "*/"));
2188
+ end = config.window.document.createTextNode("/*end text ".concat(it_4.uuid, "*/"));
2189
+ }
2190
+ else {
2191
+ type = exports.RawSetType.TEXT;
2192
+ start = config.window.document.createComment("start text ".concat(it_4.uuid));
2193
+ end = config.window.document.createComment("end text ".concat(it_4.uuid));
2194
+ }
2170
2195
  // layout setting
2171
- template.content.append(document.createTextNode(preparedText)); // 사이사이값.
2172
- template.content.append(start);
2173
- template.content.append(end);
2174
- // content
2196
+ template.content.append(document.createTextNode(preparedText)); // 앞 부분 넣고
2197
+ template.content.append(start); // add start checkpoint
2198
+ template.content.append(end); // add end checkpoint
2199
+ // content 안쪽 RawSet render 할때 start 와 end 사이에 fragment 연산해서 들어간다.
2175
2200
  var fragment = config.window.document.createDocumentFragment();
2176
2201
  fragment.append(config.window.document.createTextNode(it_4.content));
2177
- pars.push(new RawSet(it_4.uuid, exports.RawSetType.TEXT, {
2202
+ pars.push(new RawSet(it_4.uuid, type, {
2178
2203
  start: start,
2179
2204
  node: currentNode,
2180
2205
  end: end,
2206
+ parent: currentNode.parentNode,
2181
2207
  thisVariableName: thisVariableName
2182
2208
  }, fragment));
2183
2209
  lasterIndex = regexArr.index + it_4.content.length;
2184
2210
  }
2185
2211
  template.content.append(config.window.document.createTextNode(text.substring(lasterIndex, text.length)));
2186
- (_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _b === void 0 ? void 0 : _b.replaceChild(template.content, currentNode);
2212
+ (_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _b === void 0 ? void 0 : _b.replaceChild(template.content, currentNode); // <-- 여기서 text를 fragment로 replace했기때문에 추적 변경이 가능하다.
2187
2213
  }
2188
2214
  else if (currentNode.nodeType === Node.ELEMENT_NODE) {
2189
- var uuid = RandomUtils.uuid();
2215
+ var uuid = RandomUtils.getRandomString(40);
2190
2216
  var element_3 = currentNode;
2191
2217
  var fragment = config.window.document.createDocumentFragment();
2192
- var start = config.window.document.createComment("start ".concat(uuid));
2193
- var end = config.window.document.createComment("end ".concat(uuid));
2194
- // console.log('start--', uuid)
2218
+ var start = config.window.document.createElement('meta');
2219
+ var end = config.window.document.createElement('meta');
2220
+ start.setAttribute('id', "".concat(uuid, "-start"));
2221
+ end.setAttribute('id', "".concat(uuid, "-end"));
2222
+ var type = exports.RawSetType.TARGET_ELEMENT;
2195
2223
  var isElement = ((_d = (_c = config.targetElements) === null || _c === void 0 ? void 0 : _c.map(function (it) { return it.name.toLowerCase(); })) !== null && _d !== void 0 ? _d : []).includes(element_3.tagName.toLowerCase());
2196
2224
  var targetAttrNames_2 = ((_f = (_e = config.targetAttrs) === null || _e === void 0 ? void 0 : _e.map(function (it) { return it.name; })) !== null && _f !== void 0 ? _f : []).concat(RawSet.DR_ATTRIBUTES);
2197
2225
  var isAttr = element_3.getAttributeNames().filter(function (it) { return targetAttrNames_2.includes(it.toLowerCase()); }).length > 0;
2198
2226
  (_g = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _g === void 0 ? void 0 : _g.insertBefore(start, currentNode);
2199
2227
  (_h = currentNode === null || currentNode === void 0 ? void 0 : currentNode.parentNode) === null || _h === void 0 ? void 0 : _h.insertBefore(end, currentNode.nextSibling);
2200
2228
  fragment.append(currentNode);
2201
- pars.push(new RawSet(uuid, isElement ? exports.RawSetType.TARGET_ELEMENT : (isAttr ? exports.RawSetType.TARGET_ATTR : exports.RawSetType.UNKOWN), {
2229
+ pars.push(new RawSet(uuid, isElement ? type : (isAttr ? exports.RawSetType.TARGET_ATTR : exports.RawSetType.UNKOWN), {
2202
2230
  start: start,
2203
2231
  node: currentNode,
2204
2232
  end: end,
2233
+ parent: currentNode.parentNode,
2205
2234
  thisVariableName: thisVariableName
2206
2235
  }, fragment));
2207
2236
  }
@@ -2328,16 +2357,18 @@ var RawSet = /** @class */ (function () {
2328
2357
  });
2329
2358
  });
2330
2359
  };
2331
- RawSet.drThisCreate = function (element, drThis, drVarOption, drStripOption, obj, config, set) {
2360
+ RawSet.drThisCreate = function (rawSet, element, drThis, drVarOption, drStripOption, obj, config, set) {
2332
2361
  var _a, _b, _c, _d;
2333
2362
  var fag = config.window.document.createDocumentFragment();
2334
2363
  var n = element.cloneNode(true);
2364
+ // console.log('--------',n, n.innerHTML)
2335
2365
  if (set) {
2336
- var id = RandomUtils.getRandomString(20);
2337
- var style = RawSet.styleTransformLocal((_a = set.styles) !== null && _a !== void 0 ? _a : [], id, true, set.styleLocale);
2338
- var metaStart = RawSet.metaStart(id);
2339
- var metaEnd = RawSet.metaEnd(id);
2340
- n.innerHTML = metaStart + style + ((_b = set.template) !== null && _b !== void 0 ? _b : '') + metaEnd;
2366
+ // const id = RandomUtils.getRandomString(20);
2367
+ var style = RawSet.styleTransformLocal((_a = set.styles) !== null && _a !== void 0 ? _a : [], rawSet.uuid, true);
2368
+ n.innerHTML = style + ((_b = set.template) !== null && _b !== void 0 ? _b : '');
2369
+ // const metaStart = RawSet.metaStart(id);
2370
+ // const metaEnd = RawSet.metaEnd(id);
2371
+ // n.innerHTML = metaStart + style + (set.template ?? '') + metaEnd;
2341
2372
  // dr-on-create onCreateRender
2342
2373
  var onCreate = element.getAttribute("".concat(EventManager.attrPrefix, "on-create"));
2343
2374
  var renderScript = '';
@@ -2365,6 +2396,7 @@ var RawSet = /** @class */ (function () {
2365
2396
  this.drVarDecoding(n, vars);
2366
2397
  this.drThisDecoding(n, thisRandom);
2367
2398
  if (drStripOption && (drStripOption === true || drStripOption === 'true')) {
2399
+ // console.log('------childNodes', Array.from(n.childNodes))
2368
2400
  Array.from(n.childNodes).forEach(function (it) { return fag.append(it); });
2369
2401
  }
2370
2402
  else {
@@ -2395,7 +2427,7 @@ var RawSet = /** @class */ (function () {
2395
2427
  };
2396
2428
  return targetAttribute;
2397
2429
  };
2398
- RawSet.createComponentTargetElement = function (name, objFactory, template, styles, styleLocale, config) {
2430
+ RawSet.createComponentTargetElement = function (name, objFactory, template, styles, config) {
2399
2431
  if (template === void 0) { template = ''; }
2400
2432
  if (styles === void 0) { styles = []; }
2401
2433
  var targetElement = {
@@ -2409,7 +2441,8 @@ var RawSet = /** @class */ (function () {
2409
2441
  obj.__domrender_components = {};
2410
2442
  }
2411
2443
  var domrenderComponents = obj.__domrender_components;
2412
- var componentKey = '_' + RandomUtils.getRandomString(20);
2444
+ // const componentKey = '_' + RandomUtils.getRandomString(20);
2445
+ var componentKey = rawSet.uuid;
2413
2446
  var attribute = DomUtils.getAttributeToObject(element);
2414
2447
  var renderScript = 'var $component = this.__render.component; var $element = this.__render.element; var $router = this.__render.router; var $innerHTML = this.__render.innerHTML; var $attribute = this.__render.attribute; var $creatorMetaData = this.__render.creatorMetaData;';
2415
2448
  var render = Object.freeze({
@@ -2492,12 +2525,13 @@ var RawSet = /** @class */ (function () {
2492
2525
  __render: render
2493
2526
  }));
2494
2527
  }
2495
- var style = RawSet.styleTransformLocal(styles, componentKey, true, styleLocale);
2496
- var metaStart = RawSet.metaStart(componentKey);
2497
- var metaEnd = RawSet.metaEnd(componentKey);
2498
- element.innerHTML = metaStart + style + (applayTemplate !== null && applayTemplate !== void 0 ? applayTemplate : '') + metaEnd;
2528
+ var style = RawSet.styleTransformLocal(styles, componentKey, true);
2529
+ element.innerHTML = style + (applayTemplate !== null && applayTemplate !== void 0 ? applayTemplate : '');
2530
+ // const metaStart = RawSet.metaStart(componentKey);
2531
+ // const metaEnd = RawSet.metaEnd(componentKey);
2532
+ // element.innerHTML = metaStart + style + (applayTemplate ?? '') + metaEnd;
2499
2533
  // console.log('------>', element.innerHTML, obj)
2500
- var data = RawSet.drThisCreate(element, "this.__domrender_components.".concat(componentKey), '', true, obj, config);
2534
+ var data = RawSet.drThisCreate(rawSet, element, "this.__domrender_components.".concat(componentKey), '', true, obj, config);
2501
2535
  // 넘어온 innerHTML에 this가 있는걸 다시 복호화해서 제대로 작동하도록한다.
2502
2536
  if (innerHTMLThisRandom) {
2503
2537
  var template_1 = config.window.document.createElement('template');
@@ -2522,9 +2556,8 @@ var RawSet = /** @class */ (function () {
2522
2556
  return StringUtils.regexExec(reg, data !== null && data !== void 0 ? data : '');
2523
2557
  };
2524
2558
  // 중요 스타일 적용 부분
2525
- RawSet.styleTransformLocal = function (styleBody, id, styleTagWrap, locale) {
2559
+ RawSet.styleTransformLocal = function (styleBody, id, styleTagWrap) {
2526
2560
  if (styleTagWrap === void 0) { styleTagWrap = true; }
2527
- if (locale === void 0) { locale = false; }
2528
2561
  // <style id="first">
2529
2562
  // #first ~ *:not(#first ~ style[domstyle] ~ *) {
2530
2563
  // font-size: 30px;
@@ -2534,25 +2567,26 @@ var RawSet = /** @class */ (function () {
2534
2567
  if (Array.isArray(styleBody)) {
2535
2568
  styleBody = styleBody.join('\n');
2536
2569
  }
2537
- if (locale) {
2538
- styleBody = styleBody.replace(/([^}]+){/gm, function (a, b) {
2539
- if (typeof b === 'string') {
2540
- b = b.trim();
2541
- }
2542
- return "#".concat(id, " ~ ").concat(b, ":not(#").concat(id, " ~ style[domstyle] ~ *), #").concat(id, " ~ * ").concat(b, " {");
2543
- });
2544
- }
2570
+ // if (locale) {
2571
+ // styleBody = styleBody.replace(/([^}]+){/gm, function (a, b) {
2572
+ // if (typeof b === 'string') {
2573
+ // b = b.trim();
2574
+ // }
2575
+ // return `#${id} ~ ${b}:not(#${id} ~ style[domstyle] ~ *), #${id} ~ * ${b} {`;
2576
+ // });
2577
+ // }
2545
2578
  if (styleTagWrap) {
2546
2579
  styleBody = "<style id='".concat(id, "-style' domstyle>").concat(styleBody, "</style>");
2547
2580
  }
2548
2581
  return styleBody;
2549
2582
  };
2550
- RawSet.metaStart = function (id) {
2551
- return "<meta id='".concat(id, "-start' />");
2552
- };
2553
- RawSet.metaEnd = function (id) {
2554
- return "<meta id='".concat(id, "-end' />");
2555
- };
2583
+ // public static metaStart(id: string) {
2584
+ // return `<meta id='${id}-start' />`;
2585
+ // }
2586
+ //
2587
+ // public static metaEnd(id: string) {
2588
+ // return `<meta id='${id}-end' />`;
2589
+ // }
2556
2590
  RawSet.destroy = function (obj, parameter, config, destroyOptions) {
2557
2591
  var _a;
2558
2592
  if (destroyOptions === void 0) { destroyOptions = []; }
@@ -2743,7 +2777,9 @@ var DomRenderProxy = /** @class */ (function () {
2743
2777
  // ------------------->
2744
2778
  }
2745
2779
  else {
2780
+ // console.log('---rawSets->', it)
2746
2781
  var rawSets = it.render(_this._domRender_proxy, _this.config);
2782
+ // console.log('---rawSets->', rawSets)
2747
2783
  // 대상 attribute 있으면
2748
2784
  // const targetAttrs = (it.point.node as Element).getAttribute(EventManager.normalAttrMapAttrName);
2749
2785
  // if (it?.data.onChangeAttrRender && it.type === RawSetType.TARGET_ELEMENT && targetAttrs) {
@@ -3432,7 +3468,7 @@ var DomRender = /** @class */ (function () {
3432
3468
  var component = RawSet.createComponentTargetElement((_a = param.tagName) !== null && _a !== void 0 ? _a : param.type.name, function (e, o, r2, counstructorParam) {
3433
3469
  var _a;
3434
3470
  return new ((_a = param.type).bind.apply(_a, __spreadArray([void 0], counstructorParam, false)))();
3435
- }, (_b = param.template) !== null && _b !== void 0 ? _b : '', Array.isArray(param.styles) ? param.styles : (param.styles ? [param.styles] : undefined), false, config);
3471
+ }, (_b = param.template) !== null && _b !== void 0 ? _b : '', Array.isArray(param.styles) ? param.styles : (param.styles ? [param.styles] : undefined), config);
3436
3472
  return component;
3437
3473
  };
3438
3474
  DomRender.createAttribute = function (attrName, getThisObj, factory) {
@@ -3495,6 +3531,19 @@ var Appender = /** @class */ (function () {
3495
3531
  return Appender;
3496
3532
  }());
3497
3533
 
3534
+ var AllCheckedValidatorArray = /** @class */ (function (_super) {
3535
+ __extends(AllCheckedValidatorArray, _super);
3536
+ function AllCheckedValidatorArray(value, target, event, autoValid) {
3537
+ if (autoValid === void 0) { autoValid = true; }
3538
+ return _super.call(this, value, target, event, autoValid) || this;
3539
+ }
3540
+ AllCheckedValidatorArray.prototype.valid = function () {
3541
+ var _a;
3542
+ return !(((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length > 0);
3543
+ };
3544
+ return AllCheckedValidatorArray;
3545
+ }(ValidatorArray));
3546
+
3498
3547
  var RenderManager = /** @class */ (function () {
3499
3548
  function RenderManager() {
3500
3549
  }
@@ -3510,19 +3559,6 @@ var RenderManager = /** @class */ (function () {
3510
3559
  return RenderManager;
3511
3560
  }());
3512
3561
 
3513
- var AllCheckedValidatorArray = /** @class */ (function (_super) {
3514
- __extends(AllCheckedValidatorArray, _super);
3515
- function AllCheckedValidatorArray(value, target, event, autoValid) {
3516
- if (autoValid === void 0) { autoValid = true; }
3517
- return _super.call(this, value, target, event, autoValid) || this;
3518
- }
3519
- AllCheckedValidatorArray.prototype.valid = function () {
3520
- var _a;
3521
- return !(((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length > 0);
3522
- };
3523
- return AllCheckedValidatorArray;
3524
- }(ValidatorArray));
3525
-
3526
3562
  var CheckedValidator = /** @class */ (function (_super) {
3527
3563
  __extends(CheckedValidator, _super);
3528
3564
  function CheckedValidator(value, target, event, autoValid) {
@@ -3564,6 +3600,21 @@ var CountGreaterThanCheckedValidatorArray = /** @class */ (function (_super) {
3564
3600
  return CountGreaterThanCheckedValidatorArray;
3565
3601
  }(ValidatorArray));
3566
3602
 
3603
+ var CountGreaterThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
3604
+ __extends(CountGreaterThanEqualsUnCheckedValidatorArray, _super);
3605
+ function CountGreaterThanEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
3606
+ if (autoValid === void 0) { autoValid = true; }
3607
+ var _this = _super.call(this, value, target, event, autoValid) || this;
3608
+ _this.count = count;
3609
+ return _this;
3610
+ }
3611
+ CountGreaterThanEqualsUnCheckedValidatorArray.prototype.valid = function () {
3612
+ var _a;
3613
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length >= this.count;
3614
+ };
3615
+ return CountGreaterThanEqualsUnCheckedValidatorArray;
3616
+ }(ValidatorArray));
3617
+
3567
3618
  var CountEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
3568
3619
  __extends(CountEqualsUnCheckedValidatorArray, _super);
3569
3620
  function CountEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
@@ -3579,6 +3630,21 @@ var CountEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
3579
3630
  return CountEqualsUnCheckedValidatorArray;
3580
3631
  }(ValidatorArray));
3581
3632
 
3633
+ var CountGreaterThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3634
+ __extends(CountGreaterThanEqualsCheckedValidatorArray, _super);
3635
+ function CountGreaterThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3636
+ if (autoValid === void 0) { autoValid = true; }
3637
+ var _this = _super.call(this, value, target, event, autoValid) || this;
3638
+ _this.count = count;
3639
+ return _this;
3640
+ }
3641
+ CountGreaterThanEqualsCheckedValidatorArray.prototype.valid = function () {
3642
+ var _a;
3643
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length >= this.count;
3644
+ };
3645
+ return CountGreaterThanEqualsCheckedValidatorArray;
3646
+ }(ValidatorArray));
3647
+
3582
3648
  var CountGreaterThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3583
3649
  __extends(CountGreaterThanUnCheckedValidatorArray, _super);
3584
3650
  function CountGreaterThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
@@ -3609,21 +3675,6 @@ var CountEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3609
3675
  return CountEqualsCheckedValidatorArray;
3610
3676
  }(ValidatorArray));
3611
3677
 
3612
- var CountGreaterThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3613
- __extends(CountGreaterThanEqualsCheckedValidatorArray, _super);
3614
- function CountGreaterThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3615
- if (autoValid === void 0) { autoValid = true; }
3616
- var _this = _super.call(this, value, target, event, autoValid) || this;
3617
- _this.count = count;
3618
- return _this;
3619
- }
3620
- CountGreaterThanEqualsCheckedValidatorArray.prototype.valid = function () {
3621
- var _a;
3622
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length >= this.count;
3623
- };
3624
- return CountGreaterThanEqualsCheckedValidatorArray;
3625
- }(ValidatorArray));
3626
-
3627
3678
  var CountLessThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
3628
3679
  __extends(CountLessThanEqualsUnCheckedValidatorArray, _super);
3629
3680
  function CountLessThanEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
@@ -3639,19 +3690,20 @@ var CountLessThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super
3639
3690
  return CountLessThanEqualsUnCheckedValidatorArray;
3640
3691
  }(ValidatorArray));
3641
3692
 
3642
- var EmptyValidator = /** @class */ (function (_super) {
3643
- __extends(EmptyValidator, _super);
3644
- function EmptyValidator(value, target, event, autoValid) {
3693
+ var CountLessThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3694
+ __extends(CountLessThanEqualsCheckedValidatorArray, _super);
3695
+ function CountLessThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3645
3696
  if (autoValid === void 0) { autoValid = true; }
3646
- return _super.call(this, value, target, event, autoValid) || this;
3697
+ var _this = _super.call(this, value, target, event, autoValid) || this;
3698
+ _this.count = count;
3699
+ return _this;
3647
3700
  }
3648
- EmptyValidator.prototype.valid = function () {
3649
- var _a, _b;
3650
- var value = this.value;
3651
- return value === undefined || value === null || ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) <= 0;
3701
+ CountLessThanEqualsCheckedValidatorArray.prototype.valid = function () {
3702
+ var _a;
3703
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length <= this.count;
3652
3704
  };
3653
- return EmptyValidator;
3654
- }(Validator));
3705
+ return CountLessThanEqualsCheckedValidatorArray;
3706
+ }(ValidatorArray));
3655
3707
 
3656
3708
  var CountLessThanCheckedValidatorArray = /** @class */ (function (_super) {
3657
3709
  __extends(CountLessThanCheckedValidatorArray, _super);
@@ -3668,34 +3720,41 @@ var CountLessThanCheckedValidatorArray = /** @class */ (function (_super) {
3668
3720
  return CountLessThanCheckedValidatorArray;
3669
3721
  }(ValidatorArray));
3670
3722
 
3671
- var CountLessThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3672
- __extends(CountLessThanEqualsCheckedValidatorArray, _super);
3673
- function CountLessThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3723
+ var CountUnCheckedValidatorArray = /** @class */ (function (_super) {
3724
+ __extends(CountUnCheckedValidatorArray, _super);
3725
+ function CountUnCheckedValidatorArray(count, value, target, event, autoValid) {
3674
3726
  if (autoValid === void 0) { autoValid = true; }
3675
3727
  var _this = _super.call(this, value, target, event, autoValid) || this;
3676
3728
  _this.count = count;
3677
3729
  return _this;
3678
3730
  }
3679
- CountLessThanEqualsCheckedValidatorArray.prototype.valid = function () {
3731
+ CountUnCheckedValidatorArray.prototype.valid = function () {
3680
3732
  var _a;
3681
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length <= this.count;
3733
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length >= this.count;
3682
3734
  };
3683
- return CountLessThanEqualsCheckedValidatorArray;
3735
+ return CountUnCheckedValidatorArray;
3684
3736
  }(ValidatorArray));
3685
3737
 
3686
- var CountGreaterThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
3687
- __extends(CountGreaterThanEqualsUnCheckedValidatorArray, _super);
3688
- function CountGreaterThanEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
3738
+ var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
3739
+ __extends(ExcludeCheckedValidatorArray, _super);
3740
+ function ExcludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3741
+ if (allRequired === void 0) { allRequired = false; }
3689
3742
  if (autoValid === void 0) { autoValid = true; }
3690
3743
  var _this = _super.call(this, value, target, event, autoValid) || this;
3691
- _this.count = count;
3744
+ _this.include = include;
3745
+ _this.allRequired = allRequired;
3692
3746
  return _this;
3693
3747
  }
3694
- CountGreaterThanEqualsUnCheckedValidatorArray.prototype.valid = function () {
3748
+ ExcludeCheckedValidatorArray.prototype.valid = function () {
3749
+ var _this = this;
3695
3750
  var _a;
3696
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length >= this.count;
3751
+ var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
3752
+ var unCheckedValue = valus.filter(function (it) { return !it.checked; }).map(function (it) { return it.value; });
3753
+ return unCheckedValue.length > 0 &&
3754
+ (!(unCheckedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3755
+ (this.allRequired ? unCheckedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3697
3756
  };
3698
- return CountGreaterThanEqualsUnCheckedValidatorArray;
3757
+ return ExcludeCheckedValidatorArray;
3699
3758
  }(ValidatorArray));
3700
3759
 
3701
3760
  var FormValidator = /** @class */ (function (_super) {
@@ -3716,9 +3775,9 @@ var FormValidator = /** @class */ (function (_super) {
3716
3775
  return FormValidator;
3717
3776
  }(Validator));
3718
3777
 
3719
- var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
3720
- __extends(ExcludeCheckedValidatorArray, _super);
3721
- function ExcludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3778
+ var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
3779
+ __extends(IncludeCheckedValidatorArray, _super);
3780
+ function IncludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3722
3781
  if (allRequired === void 0) { allRequired = false; }
3723
3782
  if (autoValid === void 0) { autoValid = true; }
3724
3783
  var _this = _super.call(this, value, target, event, autoValid) || this;
@@ -3726,16 +3785,16 @@ var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
3726
3785
  _this.allRequired = allRequired;
3727
3786
  return _this;
3728
3787
  }
3729
- ExcludeCheckedValidatorArray.prototype.valid = function () {
3788
+ IncludeCheckedValidatorArray.prototype.valid = function () {
3730
3789
  var _this = this;
3731
3790
  var _a;
3732
3791
  var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
3733
- var unCheckedValue = valus.filter(function (it) { return !it.checked; }).map(function (it) { return it.value; });
3734
- return unCheckedValue.length > 0 &&
3735
- (!(unCheckedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3736
- (this.allRequired ? unCheckedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3792
+ var checkedValue = valus.filter(function (it) { return it.checked; }).map(function (it) { return it.value; });
3793
+ return checkedValue.length > 0 &&
3794
+ (!(checkedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3795
+ (this.allRequired ? checkedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3737
3796
  };
3738
- return ExcludeCheckedValidatorArray;
3797
+ return IncludeCheckedValidatorArray;
3739
3798
  }(ValidatorArray));
3740
3799
 
3741
3800
  var MultipleValidator = /** @class */ (function (_super) {
@@ -3767,6 +3826,20 @@ var MultipleValidator = /** @class */ (function (_super) {
3767
3826
  return MultipleValidator;
3768
3827
  }(Validator));
3769
3828
 
3829
+ var EmptyValidator = /** @class */ (function (_super) {
3830
+ __extends(EmptyValidator, _super);
3831
+ function EmptyValidator(value, target, event, autoValid) {
3832
+ if (autoValid === void 0) { autoValid = true; }
3833
+ return _super.call(this, value, target, event, autoValid) || this;
3834
+ }
3835
+ EmptyValidator.prototype.valid = function () {
3836
+ var _a, _b;
3837
+ var value = this.value;
3838
+ return value === undefined || value === null || ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) <= 0;
3839
+ };
3840
+ return EmptyValidator;
3841
+ }(Validator));
3842
+
3770
3843
  var NotRegExpTestValidator = /** @class */ (function (_super) {
3771
3844
  __extends(NotRegExpTestValidator, _super);
3772
3845
  function NotRegExpTestValidator(regexp, value, target, event, autoValid) {
@@ -3789,43 +3862,6 @@ var NotRegExpTestValidator = /** @class */ (function (_super) {
3789
3862
  return NotRegExpTestValidator;
3790
3863
  }(Validator));
3791
3864
 
3792
- var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
3793
- __extends(IncludeCheckedValidatorArray, _super);
3794
- function IncludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3795
- if (allRequired === void 0) { allRequired = false; }
3796
- if (autoValid === void 0) { autoValid = true; }
3797
- var _this = _super.call(this, value, target, event, autoValid) || this;
3798
- _this.include = include;
3799
- _this.allRequired = allRequired;
3800
- return _this;
3801
- }
3802
- IncludeCheckedValidatorArray.prototype.valid = function () {
3803
- var _this = this;
3804
- var _a;
3805
- var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
3806
- var checkedValue = valus.filter(function (it) { return it.checked; }).map(function (it) { return it.value; });
3807
- return checkedValue.length > 0 &&
3808
- (!(checkedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3809
- (this.allRequired ? checkedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3810
- };
3811
- return IncludeCheckedValidatorArray;
3812
- }(ValidatorArray));
3813
-
3814
- var CountLessThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3815
- __extends(CountLessThanUnCheckedValidatorArray, _super);
3816
- function CountLessThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
3817
- if (autoValid === void 0) { autoValid = true; }
3818
- var _this = _super.call(this, value, target, event, autoValid) || this;
3819
- _this.count = count;
3820
- return _this;
3821
- }
3822
- CountLessThanUnCheckedValidatorArray.prototype.valid = function () {
3823
- var _a;
3824
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length < this.count;
3825
- };
3826
- return CountLessThanUnCheckedValidatorArray;
3827
- }(ValidatorArray));
3828
-
3829
3865
  var PassValidator = /** @class */ (function (_super) {
3830
3866
  __extends(PassValidator, _super);
3831
3867
  function PassValidator(value, target, event, autoValid) {
@@ -3838,21 +3874,6 @@ var PassValidator = /** @class */ (function (_super) {
3838
3874
  return PassValidator;
3839
3875
  }(Validator));
3840
3876
 
3841
- var NotEmptyValidator = /** @class */ (function (_super) {
3842
- __extends(NotEmptyValidator, _super);
3843
- function NotEmptyValidator(value, target, event, autoValid) {
3844
- if (autoValid === void 0) { autoValid = true; }
3845
- return _super.call(this, value, target, event, autoValid) || this;
3846
- }
3847
- NotEmptyValidator.prototype.valid = function () {
3848
- var _a, _b;
3849
- var value = this.value;
3850
- // console.log('NotEmptyValidator', value, value !== undefined && value !== null && ((value as any)?.length ?? 0) > 0)
3851
- return value !== undefined && value !== null && ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
3852
- };
3853
- return NotEmptyValidator;
3854
- }(Validator));
3855
-
3856
3877
  var RegExpTestValidator = /** @class */ (function (_super) {
3857
3878
  __extends(RegExpTestValidator, _super);
3858
3879
  function RegExpTestValidator(regexp, value, target, event, autoValid) {
@@ -3876,33 +3897,32 @@ var RegExpTestValidator = /** @class */ (function (_super) {
3876
3897
  return RegExpTestValidator;
3877
3898
  }(Validator));
3878
3899
 
3879
- var CountUnCheckedValidatorArray = /** @class */ (function (_super) {
3880
- __extends(CountUnCheckedValidatorArray, _super);
3881
- function CountUnCheckedValidatorArray(count, value, target, event, autoValid) {
3900
+ var UnCheckedValidator = /** @class */ (function (_super) {
3901
+ __extends(UnCheckedValidator, _super);
3902
+ function UnCheckedValidator(value, target, event, autoValid) {
3882
3903
  if (autoValid === void 0) { autoValid = true; }
3883
- var _this = _super.call(this, value, target, event, autoValid) || this;
3884
- _this.count = count;
3885
- return _this;
3904
+ return _super.call(this, value, target, event, autoValid) || this;
3886
3905
  }
3887
- CountUnCheckedValidatorArray.prototype.valid = function () {
3888
- var _a;
3889
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length >= this.count;
3906
+ UnCheckedValidator.prototype.valid = function () {
3907
+ var _a, _b;
3908
+ return !((_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false);
3890
3909
  };
3891
- return CountUnCheckedValidatorArray;
3892
- }(ValidatorArray));
3910
+ return UnCheckedValidator;
3911
+ }(Validator));
3893
3912
 
3894
- var RequiredValidator = /** @class */ (function (_super) {
3895
- __extends(RequiredValidator, _super);
3896
- function RequiredValidator(value, target, event, autoValid) {
3913
+ var NotEmptyValidator = /** @class */ (function (_super) {
3914
+ __extends(NotEmptyValidator, _super);
3915
+ function NotEmptyValidator(value, target, event, autoValid) {
3897
3916
  if (autoValid === void 0) { autoValid = true; }
3898
3917
  return _super.call(this, value, target, event, autoValid) || this;
3899
3918
  }
3900
- RequiredValidator.prototype.valid = function () {
3919
+ NotEmptyValidator.prototype.valid = function () {
3920
+ var _a, _b;
3901
3921
  var value = this.value;
3902
- // console.log('required', value, value !== undefined && value !== null)
3903
- return value !== undefined && value !== null;
3922
+ // console.log('NotEmptyValidator', value, value !== undefined && value !== null && ((value as any)?.length ?? 0) > 0)
3923
+ return value !== undefined && value !== null && ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
3904
3924
  };
3905
- return RequiredValidator;
3925
+ return NotEmptyValidator;
3906
3926
  }(Validator));
3907
3927
 
3908
3928
  var ValidMultipleValidator = /** @class */ (function (_super) {
@@ -3920,6 +3940,21 @@ var ValidMultipleValidator = /** @class */ (function (_super) {
3920
3940
  return ValidMultipleValidator;
3921
3941
  }(MultipleValidator));
3922
3942
 
3943
+ var CountLessThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3944
+ __extends(CountLessThanUnCheckedValidatorArray, _super);
3945
+ function CountLessThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
3946
+ if (autoValid === void 0) { autoValid = true; }
3947
+ var _this = _super.call(this, value, target, event, autoValid) || this;
3948
+ _this.count = count;
3949
+ return _this;
3950
+ }
3951
+ CountLessThanUnCheckedValidatorArray.prototype.valid = function () {
3952
+ var _a;
3953
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length < this.count;
3954
+ };
3955
+ return CountLessThanUnCheckedValidatorArray;
3956
+ }(ValidatorArray));
3957
+
3923
3958
  var ValidValidator = /** @class */ (function (_super) {
3924
3959
  __extends(ValidValidator, _super);
3925
3960
  function ValidValidator(validCallBack, value, target, event, autoValid) {
@@ -3934,6 +3969,20 @@ var ValidValidator = /** @class */ (function (_super) {
3934
3969
  return ValidValidator;
3935
3970
  }(Validator));
3936
3971
 
3972
+ var RequiredValidator = /** @class */ (function (_super) {
3973
+ __extends(RequiredValidator, _super);
3974
+ function RequiredValidator(value, target, event, autoValid) {
3975
+ if (autoValid === void 0) { autoValid = true; }
3976
+ return _super.call(this, value, target, event, autoValid) || this;
3977
+ }
3978
+ RequiredValidator.prototype.valid = function () {
3979
+ var value = this.value;
3980
+ // console.log('required', value, value !== undefined && value !== null)
3981
+ return value !== undefined && value !== null;
3982
+ };
3983
+ return RequiredValidator;
3984
+ }(Validator));
3985
+
3937
3986
  var ValidValidatorArray = /** @class */ (function (_super) {
3938
3987
  __extends(ValidValidatorArray, _super);
3939
3988
  function ValidValidatorArray(validCallBack, value, target, event, autoValid) {
@@ -3948,19 +3997,6 @@ var ValidValidatorArray = /** @class */ (function (_super) {
3948
3997
  return ValidValidatorArray;
3949
3998
  }(ValidatorArray));
3950
3999
 
3951
- var UnCheckedValidator = /** @class */ (function (_super) {
3952
- __extends(UnCheckedValidator, _super);
3953
- function UnCheckedValidator(value, target, event, autoValid) {
3954
- if (autoValid === void 0) { autoValid = true; }
3955
- return _super.call(this, value, target, event, autoValid) || this;
3956
- }
3957
- UnCheckedValidator.prototype.valid = function () {
3958
- var _a, _b;
3959
- return !((_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false);
3960
- };
3961
- return UnCheckedValidator;
3962
- }(Validator));
3963
-
3964
4000
  var ValueNotEqualsValidator = /** @class */ (function (_super) {
3965
4001
  __extends(ValueNotEqualsValidator, _super);
3966
4002
  function ValueNotEqualsValidator(equalsValue, value, target, event, autoValid) {
@@ -3989,6 +4025,28 @@ var ValueEqualsValidator = /** @class */ (function (_super) {
3989
4025
  return ValueEqualsValidator;
3990
4026
  }(Validator));
3991
4027
 
4028
+ var ClipBoardUtils = /** @class */ (function () {
4029
+ function ClipBoardUtils() {
4030
+ }
4031
+ ClipBoardUtils.readText = function (clipboard) {
4032
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4033
+ return clipboard.readText();
4034
+ };
4035
+ ClipBoardUtils.read = function (clipboard) {
4036
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4037
+ return clipboard.read();
4038
+ };
4039
+ ClipBoardUtils.writeText = function (data, clipboard) {
4040
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4041
+ return clipboard.writeText(data);
4042
+ };
4043
+ ClipBoardUtils.write = function (data, clipboard) {
4044
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4045
+ return clipboard.write(data);
4046
+ };
4047
+ return ClipBoardUtils;
4048
+ }());
4049
+
3992
4050
  var NodeUtils = /** @class */ (function () {
3993
4051
  function NodeUtils() {
3994
4052
  }
@@ -4013,28 +4071,6 @@ var NodeUtils = /** @class */ (function () {
4013
4071
  return NodeUtils;
4014
4072
  }());
4015
4073
 
4016
- var ClipBoardUtils = /** @class */ (function () {
4017
- function ClipBoardUtils() {
4018
- }
4019
- ClipBoardUtils.readText = function (clipboard) {
4020
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4021
- return clipboard.readText();
4022
- };
4023
- ClipBoardUtils.read = function (clipboard) {
4024
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4025
- return clipboard.read();
4026
- };
4027
- ClipBoardUtils.writeText = function (data, clipboard) {
4028
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4029
- return clipboard.writeText(data);
4030
- };
4031
- ClipBoardUtils.write = function (data, clipboard) {
4032
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4033
- return clipboard.write(data);
4034
- };
4035
- return ClipBoardUtils;
4036
- }());
4037
-
4038
4074
  var StorageUtils = /** @class */ (function () {
4039
4075
  function StorageUtils() {
4040
4076
  }
@@ -37,11 +37,11 @@ var DrThis = /** @class */ (function (_super) {
37
37
  RawSet_1.RawSet.destroy(this.rawSet.data.obj, [], this.source.config, destroyOptions);
38
38
  }
39
39
  this.rawSet.data = r;
40
- this.returnContainer.fag.append(RawSet_1.RawSet.drThisCreate(this.elementSource.element, "".concat(this.elementSource.attrs.drThis, ".obj"), (_d = this.elementSource.attrs.drVarOption) !== null && _d !== void 0 ? _d : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config, r));
40
+ this.returnContainer.fag.append(RawSet_1.RawSet.drThisCreate(this.rawSet, this.elementSource.element, "".concat(this.elementSource.attrs.drThis, ".obj"), (_d = this.elementSource.attrs.drVarOption) !== null && _d !== void 0 ? _d : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config, r));
41
41
  this.afterCallBack.onThisComponentSetCallBacks.push(r);
42
42
  }
43
43
  else {
44
- this.returnContainer.fag.append(RawSet_1.RawSet.drThisCreate(this.elementSource.element, this.elementSource.attrs.drThis, (_e = this.elementSource.attrs.drVarOption) !== null && _e !== void 0 ? _e : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config));
44
+ this.returnContainer.fag.append(RawSet_1.RawSet.drThisCreate(this.rawSet, this.elementSource.element, this.elementSource.attrs.drThis, (_e = this.elementSource.attrs.drVarOption) !== null && _e !== void 0 ? _e : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config));
45
45
  }
46
46
  var rr = RawSet_1.RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);
47
47
  (_f = this.elementSource.element.parentNode) === null || _f === void 0 ? void 0 : _f.replaceChild(this.returnContainer.fag, this.elementSource.element);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dom-render",
3
- "version": "1.0.84",
3
+ "version": "1.0.85",
4
4
  "main": "DomRender.js",
5
5
  "license": "MIT",
6
6
  "description": "dom-render",