dom-render 1.0.94 → 1.0.96

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.
package/dist/bundle.js CHANGED
@@ -1252,9 +1252,11 @@ var DrThis = /** @class */ (function (_super) {
1252
1252
  this.afterCallBack.onThisComponentSetCallBacks.push(attr);
1253
1253
  return [3 /*break*/, 4];
1254
1254
  case 2:
1255
+ // console.log('dr-this!!!!!!!', this.rawSet, this.source.obj)
1255
1256
  _g = (_f = this.returnContainer.fag).append;
1256
1257
  return [4 /*yield*/, RawSet.drThisCreate(this.rawSet, this.elementSource.element, this.elementSource.attrs.drThis, (_d = this.elementSource.attrs.drVarOption) !== null && _d !== void 0 ? _d : '', this.elementSource.attrs.drStripOption, this.source.obj, this.source.config)];
1257
1258
  case 3:
1259
+ // console.log('dr-this!!!!!!!', this.rawSet, this.source.obj)
1258
1260
  _g.apply(_f, [_j.sent()]);
1259
1261
  _j.label = 4;
1260
1262
  case 4:
@@ -1973,6 +1975,83 @@ exports.RawSetType = void 0;
1973
1975
  RawSetType["UNKOWN"] = "UNKOWN";
1974
1976
  })(exports.RawSetType || (exports.RawSetType = {}));
1975
1977
 
1978
+ var DrThisProperty = /** @class */ (function (_super) {
1979
+ __extends(DrThisProperty, _super);
1980
+ function DrThisProperty(rawSet, render, returnContainer, elementSource, source, afterCallBack) {
1981
+ source.operatorAround = undefined;
1982
+ return _super.call(this, rawSet, render, returnContainer, elementSource, source, afterCallBack, false) || this;
1983
+ }
1984
+ DrThisProperty.prototype.executeAttrRequire = function (attr) {
1985
+ var _a, _b, _c, _d, _e;
1986
+ return __awaiter(this, void 0, void 0, function () {
1987
+ var itRandom, vars, newTemp, dictionaryKey, tempalte, rr;
1988
+ var _f;
1989
+ return __generator(this, function (_g) {
1990
+ itRandom = RawSet.drItOtherEncoding(this.elementSource.element);
1991
+ vars = RawSet.drVarEncoding(this.elementSource.element, (_a = this.elementSource.attrs.drVarOption) !== null && _a !== void 0 ? _a : '');
1992
+ newTemp = this.source.config.window.document.createElement('temp');
1993
+ ScriptUtils.evalReturn(attr, this.source.obj);
1994
+ dictionaryKey = (_b = this.elementSource.attrs.drKeyOption) !== null && _b !== void 0 ? _b : '';
1995
+ // console.log('--->', attr, dictionaryKey)
1996
+ // if (!(dictioanry instanceof Dictionary)) {
1997
+ // return ExecuteState.STOP;
1998
+ // }
1999
+ // await new Promise(resolve => setTimeout(resolve, 1000));
2000
+ // console.log('!!!!!!!!!!!!!!', this.rawSet);
2001
+ ScriptUtils.eval("\n ".concat(this.render.bindScript, "\n ").concat((_c = this.elementSource.attrs.drBeforeOption) !== null && _c !== void 0 ? _c : '', "\n var i = 0; \n const dictionary = ").concat(attr, ";\n const dictionaryKey = '").concat(dictionaryKey, "';\n const dictionaryStr = `").concat(attr, "`.trim();\n // console.log('----@#!@#@!#', this.__render.oldChild);\n if (dictionary) {\n for(const it in dictionary) {\n var destIt = dictionaryStr + '[\"' + it + '\"]';\n const n = this.__render.element.cloneNode(true);\n n.setAttribute('dr-this', destIt);\n n.setAttribute('dr-key', it);\n // n.setAttribute('dr-dictionary-key', it);\n this.__render.fag.append(n);\n i++;\n }\n this.__render.rawset.point.start.setAttribute('dr-has-keys',Object.keys(dictionary).join(','));\n }\n ").concat((_d = this.elementSource.attrs.drAfterOption) !== null && _d !== void 0 ? _d : '', "\n "), Object.assign(this.source.obj, {
2002
+ __render: Object.freeze(__assign({ drStripOption: this.elementSource.attrs.drStripOption, drAttr: this.elementSource.attrs, drAttrsOriginName: RawSet.drAttrsOriginName, fag: newTemp }, this.render))
2003
+ }));
2004
+ RawSet.drVarDecoding(newTemp, vars);
2005
+ RawSet.drItOtherDecoding(newTemp, itRandom);
2006
+ tempalte = this.source.config.window.document.createElement('template');
2007
+ tempalte.innerHTML = newTemp.innerHTML;
2008
+ this.returnContainer.fag.append(tempalte.content);
2009
+ rr = RawSet.checkPointCreates(this.returnContainer.fag, this.source.obj, this.source.config);
2010
+ (_e = this.elementSource.element.parentNode) === null || _e === void 0 ? void 0 : _e.replaceChild(this.returnContainer.fag, this.elementSource.element);
2011
+ // const rrr = rr.flatMap(it => it.render(obj, config));// .flat();
2012
+ (_f = this.returnContainer.raws).push.apply(_f, rr);
2013
+ return [2 /*return*/, exports.ExecuteState.EXECUTE];
2014
+ });
2015
+ });
2016
+ };
2017
+ DrThisProperty.append = function (obj, fullPath, key, rawSet, config) {
2018
+ var _this = this;
2019
+ var _a, _b;
2020
+ var genNode = config.window.document.importNode(rawSet.fragment, true);
2021
+ // console.log('---> append', rawSet, genNode);
2022
+ var rawSets = [];
2023
+ for (var _i = 0, _c = Array.from(genNode.childNodes.values()); _i < _c.length; _i++) {
2024
+ var cNode = _c[_i];
2025
+ var element = cNode.cloneNode(true);
2026
+ element.removeAttribute(RawSet.DR_THIS_PROPERTY_NAME);
2027
+ element.setAttribute(RawSet.DR_THIS_NAME, "this.".concat(fullPath));
2028
+ element.setAttribute(RawSet.DR_KEY_OPTIONNAME, key);
2029
+ // rawSet.point.end.after(element);
2030
+ var fg = config.window.document.createDocumentFragment();
2031
+ fg.append(element);
2032
+ rawSets.push.apply(rawSets, RawSet.checkPointCreates(fg, obj, config));
2033
+ rawSet.point.end.before(fg);
2034
+ var start = rawSet.point.start;
2035
+ var keys = (_b = (_a = start.getAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME)) === null || _a === void 0 ? void 0 : _a.split(',')) !== null && _b !== void 0 ? _b : [];
2036
+ keys.push(key);
2037
+ start.setAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME, keys.join(','));
2038
+ rawSets.forEach(function (it) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
2039
+ switch (_a.label) {
2040
+ case 0: return [4 /*yield*/, it.render(obj, config)];
2041
+ case 1: return [2 /*return*/, _a.sent()];
2042
+ }
2043
+ }); }); });
2044
+ }
2045
+ return rawSets;
2046
+ };
2047
+ return DrThisProperty;
2048
+ }(OperatorExecuterAttrRequire));
2049
+
2050
+ exports.RawSetOperatorType = void 0;
2051
+ (function (RawSetOperatorType) {
2052
+ RawSetOperatorType["DR_THIS_PROPERTY"] = "this-property";
2053
+ })(exports.RawSetOperatorType || (exports.RawSetOperatorType = {}));
2054
+
1976
2055
  var RawSet = /** @class */ (function () {
1977
2056
  function RawSet(uuid, type, point, fragment, detect, data) {
1978
2057
  this.uuid = uuid;
@@ -1981,6 +2060,7 @@ var RawSet = /** @class */ (function () {
1981
2060
  this.fragment = fragment;
1982
2061
  this.detect = detect;
1983
2062
  this.data = data;
2063
+ point.start.rawSet = this;
1984
2064
  // console.log('rawset constructor->', (this.point.node as Element).getAttributeNames());
1985
2065
  }
1986
2066
  Object.defineProperty(RawSet.prototype, "isConnected", {
@@ -2038,12 +2118,12 @@ var RawSet = /** @class */ (function () {
2038
2118
  };
2039
2119
  // 중요 render 처리 부분
2040
2120
  RawSet.prototype.render = function (obj, config) {
2041
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
2121
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
2042
2122
  return __awaiter(this, void 0, void 0, function () {
2043
- var genNode, raws, onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks, drAttrs, _i, _y, cNode, attribute, __render, fag, textContent, runText, newNode, r, template, r, element, drAttr, operators, _z, operators_1, operator, state, _0, onThisComponentSetCallBacks_1, it_1, _1, onElementInitCallBacks_1, it_2, oninit, param, script, _2, onAttrInitCallBacks_1, it_3;
2123
+ var genNode, raws, onAttrInitCallBacks, onElementInitCallBacks, onThisComponentSetCallBacks, drAttrs, _i, _z, cNode, attribute, __render, fag, textContent, runText, newNode, r, template, r, element, drAttr, operators, _0, operators_1, operator, state, _1, onThisComponentSetCallBacks_1, it_1, _2, onElementInitCallBacks_1, it_2, oninit, param, script, _3, onAttrInitCallBacks_1, it_3;
2044
2124
  var _this = this;
2045
- return __generator(this, function (_3) {
2046
- switch (_3.label) {
2125
+ return __generator(this, function (_4) {
2126
+ switch (_4.label) {
2047
2127
  case 0:
2048
2128
  genNode = config.window.document.importNode(this.fragment, true);
2049
2129
  raws = [];
@@ -2051,11 +2131,11 @@ var RawSet = /** @class */ (function () {
2051
2131
  onElementInitCallBacks = [];
2052
2132
  onThisComponentSetCallBacks = [];
2053
2133
  drAttrs = [];
2054
- _i = 0, _y = Array.from(genNode.childNodes.values());
2055
- _3.label = 1;
2134
+ _i = 0, _z = Array.from(genNode.childNodes.values());
2135
+ _4.label = 1;
2056
2136
  case 1:
2057
- if (!(_i < _y.length)) return [3 /*break*/, 7];
2058
- cNode = _y[_i];
2137
+ if (!(_i < _z.length)) return [3 /*break*/, 7];
2138
+ cNode = _z[_i];
2059
2139
  attribute = {};
2060
2140
  if (cNode.nodeType === Node.ELEMENT_NODE) {
2061
2141
  attribute = DomUtils.getAttributeToObject(cNode);
@@ -2100,6 +2180,7 @@ var RawSet = /** @class */ (function () {
2100
2180
  drIf: this.getAttributeAndDelete(element, RawSet.DR_IF_NAME),
2101
2181
  drFor: this.getAttributeAndDelete(element, RawSet.DR_FOR_NAME),
2102
2182
  drForOf: this.getAttributeAndDelete(element, RawSet.DR_FOR_OF_NAME),
2183
+ drThisProperty: this.getAttributeAndDelete(element, RawSet.DR_THIS_PROPERTY_NAME),
2103
2184
  drAppender: this.getAttributeAndDelete(element, RawSet.DR_APPENDER_NAME),
2104
2185
  drRepeat: this.getAttributeAndDelete(element, RawSet.DR_REPEAT_NAME),
2105
2186
  drThis: this.getAttributeAndDelete(element, RawSet.DR_THIS_NAME),
@@ -2114,7 +2195,8 @@ var RawSet = /** @class */ (function () {
2114
2195
  drBeforeOption: this.getAttributeAndDelete(element, RawSet.DR_BEFORE_OPTIONNAME),
2115
2196
  drCompleteOption: this.getAttributeAndDelete(element, RawSet.DR_COMPLETE_OPTIONNAME),
2116
2197
  drStripOption: this.getAttributeAndDelete(element, RawSet.DR_STRIP_OPTIONNAME),
2117
- drDestroyOption: this.getAttributeAndDelete(element, RawSet.DR_DESTROY_OPTIONNAME)
2198
+ drDestroyOption: this.getAttributeAndDelete(element, RawSet.DR_DESTROY_OPTIONNAME),
2199
+ drKeyOption: this.getAttributeAndDelete(element, RawSet.DR_KEY_OPTIONNAME)
2118
2200
  };
2119
2201
  drAttrs.push(drAttr);
2120
2202
  operators = [
@@ -2127,28 +2209,29 @@ var RawSet = /** @class */ (function () {
2127
2209
  new DrInnerHTML(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_INNERHTML_NAME, 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 }),
2128
2210
  new DrFor(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_FOR_NAME, 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 }),
2129
2211
  new DrForOf(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_FOR_OF_NAME, 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 }),
2130
- new DrAppender(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_APPENDER_NAME, 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 }),
2131
- new DrRepeat(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_REPEAT_NAME, 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 }),
2212
+ new DrThisProperty(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_THIS_PROPERTY_NAME, attr: drAttr.drThisProperty, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_l = config.operatorAround) === null || _l === void 0 ? void 0 : _l.drThisProperty }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
2213
+ new DrAppender(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_APPENDER_NAME, attr: drAttr.drAppender, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_m = config.operatorAround) === null || _m === void 0 ? void 0 : _m.drAppender }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
2214
+ new DrRepeat(this, __render, { raws: raws, fag: fag }, { element: element, attrName: RawSet.DR_REPEAT_NAME, attr: drAttr.drRepeat, attrs: drAttr }, { config: config, obj: obj, operatorAround: (_o = config.operatorAround) === null || _o === void 0 ? void 0 : _o.drRepeat }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
2132
2215
  new DrTargetElement(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks }),
2133
2216
  new DrTargetAttr(this, __render, { raws: raws, fag: fag }, { element: element, attrs: drAttr }, { config: config, obj: obj }, { onAttrInitCallBacks: onAttrInitCallBacks, onElementInitCallBacks: onElementInitCallBacks, onThisComponentSetCallBacks: onThisComponentSetCallBacks })
2134
2217
  ];
2135
- _z = 0, operators_1 = operators;
2136
- _3.label = 3;
2218
+ _0 = 0, operators_1 = operators;
2219
+ _4.label = 3;
2137
2220
  case 3:
2138
- if (!(_z < operators_1.length)) return [3 /*break*/, 6];
2139
- operator = operators_1[_z];
2221
+ if (!(_0 < operators_1.length)) return [3 /*break*/, 6];
2222
+ operator = operators_1[_0];
2140
2223
  return [4 /*yield*/, operator.start()];
2141
2224
  case 4:
2142
- state = _3.sent();
2225
+ state = _4.sent();
2143
2226
  if (state === exports.ExecuteState.EXECUTE) {
2144
2227
  return [3 /*break*/, 6];
2145
2228
  }
2146
2229
  else if (state === exports.ExecuteState.STOP) {
2147
2230
  return [2 /*return*/, raws];
2148
2231
  }
2149
- _3.label = 5;
2232
+ _4.label = 5;
2150
2233
  case 5:
2151
- _z++;
2234
+ _0++;
2152
2235
  return [3 /*break*/, 3];
2153
2236
  case 6:
2154
2237
  _i++;
@@ -2169,13 +2252,13 @@ var RawSet = /** @class */ (function () {
2169
2252
  });
2170
2253
  // 중요 style isolation 나중에 :scope로 대체 가능할듯.
2171
2254
  RawSet.generateStyleSheetsLocal();
2172
- for (_0 = 0, onThisComponentSetCallBacks_1 = onThisComponentSetCallBacks; _0 < onThisComponentSetCallBacks_1.length; _0++) {
2173
- it_1 = onThisComponentSetCallBacks_1[_0];
2174
- (_p = (_o = it_1.obj) === null || _o === void 0 ? void 0 : _o.onInitRender) === null || _p === void 0 ? void 0 : _p.call(_o);
2255
+ for (_1 = 0, onThisComponentSetCallBacks_1 = onThisComponentSetCallBacks; _1 < onThisComponentSetCallBacks_1.length; _1++) {
2256
+ it_1 = onThisComponentSetCallBacks_1[_1];
2257
+ (_q = (_p = it_1.obj) === null || _p === void 0 ? void 0 : _p.onInitRender) === null || _q === void 0 ? void 0 : _q.call(_p);
2175
2258
  }
2176
- for (_1 = 0, onElementInitCallBacks_1 = onElementInitCallBacks; _1 < onElementInitCallBacks_1.length; _1++) {
2177
- it_2 = onElementInitCallBacks_1[_1];
2178
- 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)) {
2259
+ for (_2 = 0, onElementInitCallBacks_1 = onElementInitCallBacks; _2 < onElementInitCallBacks_1.length; _2++) {
2260
+ it_2 = onElementInitCallBacks_1[_2];
2261
+ if (((_s = (_r = it_2.targetElement) === null || _r === void 0 ? void 0 : _r.__render) === null || _s === void 0 ? void 0 : _s.element) && ((_u = (_t = it_2.targetElement) === null || _t === void 0 ? void 0 : _t.__render) === null || _u === void 0 ? void 0 : _u.component)) {
2179
2262
  oninit = it_2.targetElement.__render.element.getAttribute(RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
2180
2263
  param = [];
2181
2264
  if (oninit) {
@@ -2187,14 +2270,14 @@ var RawSet = /** @class */ (function () {
2187
2270
  param = [param];
2188
2271
  }
2189
2272
  }
2190
- (_v = (_u = it_2.targetElement.__render.component).onInitRender) === null || _v === void 0 ? void 0 : _v.call.apply(_v, __spreadArray([_u], param, false));
2273
+ (_w = (_v = it_2.targetElement.__render.component).onInitRender) === null || _w === void 0 ? void 0 : _w.call.apply(_w, __spreadArray([_v], param, false));
2191
2274
  }
2192
- (_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);
2275
+ (_x = config === null || config === void 0 ? void 0 : config.onElementInit) === null || _x === void 0 ? void 0 : _x.call(config, it_2.name, obj, this, it_2.targetElement);
2193
2276
  }
2194
2277
  // TODO: 이부분도 위에 targetElement 처럼 해야될까?
2195
- for (_2 = 0, onAttrInitCallBacks_1 = onAttrInitCallBacks; _2 < onAttrInitCallBacks_1.length; _2++) {
2196
- it_3 = onAttrInitCallBacks_1[_2];
2197
- (_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);
2278
+ for (_3 = 0, onAttrInitCallBacks_1 = onAttrInitCallBacks; _3 < onAttrInitCallBacks_1.length; _3++) {
2279
+ it_3 = onAttrInitCallBacks_1[_3];
2280
+ (_y = config === null || config === void 0 ? void 0 : config.onAttrInit) === null || _y === void 0 ? void 0 : _y.call(config, it_3.attrName, it_3.attrValue, obj, this);
2198
2281
  }
2199
2282
  // component destroy
2200
2283
  if (obj.__domrender_components) {
@@ -2392,9 +2475,10 @@ var RawSet = /** @class */ (function () {
2392
2475
  else {
2393
2476
  type = exports.RawSetType.TEXT;
2394
2477
  }
2395
- var startEndPoint = RawSet.createStartEndPoint(it_4.uuid, type, config);
2478
+ var node = document.createTextNode(preparedText);
2479
+ var startEndPoint = RawSet.createStartEndPoint(node, it_4.uuid, type, config);
2396
2480
  // layout setting
2397
- template.content.append(document.createTextNode(preparedText)); // 앞 부분 넣고
2481
+ template.content.append(node); // 앞 부분 넣고
2398
2482
  template.content.append(startEndPoint.start); // add start checkpoint
2399
2483
  template.content.append(startEndPoint.end); // add end checkpoint
2400
2484
  // content 안쪽 RawSet render 할때 start 와 end 사이에 fragment 연산해서 들어간다.
@@ -2417,7 +2501,7 @@ var RawSet = /** @class */ (function () {
2417
2501
  var element_3 = currentNode;
2418
2502
  var fragment = config.window.document.createDocumentFragment();
2419
2503
  var type = exports.RawSetType.TARGET_ELEMENT;
2420
- var startEndPoint = RawSet.createStartEndPoint(uuid, type, config);
2504
+ var startEndPoint = RawSet.createStartEndPoint(element_3, uuid, type, config);
2421
2505
  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());
2422
2506
  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);
2423
2507
  var isAttr = element_3.getAttributeNames().filter(function (it) { return targetAttrNames_2.includes(it.toLowerCase()); }).length > 0;
@@ -2440,16 +2524,23 @@ var RawSet = /** @class */ (function () {
2440
2524
  // console.log('check-->', pars)
2441
2525
  return pars;
2442
2526
  };
2443
- RawSet.createStartEndPoint = function (id, type, config) {
2527
+ RawSet.createStartEndPoint = function (node, id, type, config) {
2444
2528
  if (type === exports.RawSetType.TARGET_ELEMENT) {
2529
+ var element = node;
2445
2530
  var start = config.window.document.createElement('meta');
2446
2531
  var end = config.window.document.createElement('meta');
2447
2532
  start.setAttribute('id', "".concat(id, "-start"));
2533
+ var keys = element.getAttribute(RawSet.DR_KEY_OPTIONNAME);
2534
+ var thisPropertyType = element.getAttribute(RawSet.DR_THIS_PROPERTY_NAME);
2535
+ if (thisPropertyType) {
2536
+ start.setAttribute('type', exports.RawSetOperatorType.DR_THIS_PROPERTY);
2537
+ }
2538
+ if (keys) {
2539
+ element.removeAttribute(RawSet.DR_KEY_OPTIONNAME);
2540
+ start.setAttribute(RawSet.DR_KEY_OPTIONNAME, keys);
2541
+ }
2448
2542
  end.setAttribute('id', "".concat(id, "-end"));
2449
- return {
2450
- start: start,
2451
- end: end
2452
- };
2543
+ return { start: start, end: end };
2453
2544
  }
2454
2545
  else if (type === exports.RawSetType.STYLE_TEXT) {
2455
2546
  return {
@@ -2464,6 +2555,11 @@ var RawSet = /** @class */ (function () {
2464
2555
  };
2465
2556
  }
2466
2557
  };
2558
+ RawSet.prototype.remove = function () {
2559
+ this.childAllRemove();
2560
+ this.point.end.remove();
2561
+ this.point.start.remove();
2562
+ };
2467
2563
  RawSet.prototype.childAllRemove = function () {
2468
2564
  var next = this.point.start.nextSibling;
2469
2565
  while (next) {
@@ -2474,6 +2570,31 @@ var RawSet = /** @class */ (function () {
2474
2570
  next = this.point.start.nextSibling;
2475
2571
  }
2476
2572
  };
2573
+ RawSet.prototype.childs = function (stopNext) {
2574
+ var childs = [];
2575
+ var next = this.point.start.nextSibling;
2576
+ while (next && next !== this.point.end) {
2577
+ if (stopNext === null || stopNext === void 0 ? void 0 : stopNext(next)) {
2578
+ return;
2579
+ }
2580
+ childs.push(next);
2581
+ next = next.nextSibling;
2582
+ }
2583
+ return childs;
2584
+ };
2585
+ RawSet.prototype.getHasRawSet = function (key) {
2586
+ var rawSet;
2587
+ this.childs(function (node) {
2588
+ var _a, _b;
2589
+ var drKey = (_b = (_a = node).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, 'dr-key');
2590
+ if (drKey && drKey === key) {
2591
+ rawSet = node.rawSet;
2592
+ return true;
2593
+ }
2594
+ return false;
2595
+ });
2596
+ return rawSet;
2597
+ };
2477
2598
  RawSet.drItOtherEncoding = function (element) {
2478
2599
  var random = RandomUtils.uuid();
2479
2600
  var regex = /#it#/g;
@@ -2895,6 +3016,7 @@ var RawSet = /** @class */ (function () {
2895
3016
  RawSet.DR_IF_NAME = 'dr-if';
2896
3017
  RawSet.DR_FOR_NAME = 'dr-for';
2897
3018
  RawSet.DR_FOR_OF_NAME = 'dr-for-of';
3019
+ RawSet.DR_THIS_PROPERTY_NAME = 'dr-this-property';
2898
3020
  RawSet.DR_REPEAT_NAME = 'dr-repeat';
2899
3021
  RawSet.DR_THIS_NAME = 'dr-this';
2900
3022
  RawSet.DR_FORM_NAME = 'dr-form';
@@ -2913,6 +3035,8 @@ var RawSet = /** @class */ (function () {
2913
3035
  RawSet.DR_DESTROY_OPTIONNAME = 'dr-destroy';
2914
3036
  RawSet.DR_COMPONENT_NAME_OPTIONNAME = 'dr-component-name';
2915
3037
  RawSet.DR_COMPONENT_INNER_HTML_NAME_OPTIONNAME = 'dr-component-inner-html-name';
3038
+ RawSet.DR_KEY_OPTIONNAME = 'dr-key';
3039
+ RawSet.DR_HAS_KEYS_OPTIONNAME = 'dr-has-keys';
2916
3040
  RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME = 'dr-on-create:arguments';
2917
3041
  RawSet.DR_ON_CREATED_CALLBACK_OPTIONNAME = 'dr-on-create:callback';
2918
3042
  RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME = 'dr-on-init:arguments';
@@ -2922,6 +3046,7 @@ var RawSet = /** @class */ (function () {
2922
3046
  drIf: RawSet.DR_IF_NAME,
2923
3047
  drFor: RawSet.DR_FOR_NAME,
2924
3048
  drForOf: RawSet.DR_FOR_OF_NAME,
3049
+ drThisProperty: RawSet.DR_THIS_PROPERTY_NAME,
2925
3050
  drAppender: RawSet.DR_APPENDER_NAME,
2926
3051
  drRepeat: RawSet.DR_REPEAT_NAME,
2927
3052
  drThis: RawSet.DR_THIS_NAME,
@@ -2936,10 +3061,12 @@ var RawSet = /** @class */ (function () {
2936
3061
  drBeforeOption: RawSet.DR_BEFORE_OPTIONNAME,
2937
3062
  drCompleteOption: RawSet.DR_COMPLETE_OPTIONNAME,
2938
3063
  drStripOption: RawSet.DR_STRIP_OPTIONNAME,
2939
- drDestroyOption: RawSet.DR_DESTROY_OPTIONNAME
3064
+ drDestroyOption: RawSet.DR_DESTROY_OPTIONNAME,
3065
+ drHasKeysOption: RawSet.DR_HAS_KEYS_OPTIONNAME,
3066
+ drKeyOption: RawSet.DR_KEY_OPTIONNAME
2940
3067
  };
2941
3068
  RawSet.DR_TAGS = [];
2942
- RawSet.DR_ATTRIBUTES = [RawSet.DR_NAME, RawSet.DR_APPENDER_NAME, RawSet.DR_IF_NAME, RawSet.DR_FOR_OF_NAME, RawSet.DR_FOR_NAME, RawSet.DR_THIS_NAME, RawSet.DR_FORM_NAME, RawSet.DR_PRE_NAME, RawSet.DR_INNERHTML_NAME, RawSet.DR_INNERTEXT_NAME, RawSet.DR_REPEAT_NAME, RawSet.DR_DETECT_NAME];
3069
+ RawSet.DR_ATTRIBUTES = [RawSet.DR_NAME, RawSet.DR_APPENDER_NAME, RawSet.DR_IF_NAME, RawSet.DR_FOR_OF_NAME, RawSet.DR_THIS_PROPERTY_NAME, RawSet.DR_FOR_NAME, RawSet.DR_THIS_NAME, RawSet.DR_FORM_NAME, RawSet.DR_PRE_NAME, RawSet.DR_INNERHTML_NAME, RawSet.DR_INNERTEXT_NAME, RawSet.DR_REPEAT_NAME, RawSet.DR_DETECT_NAME];
2943
3070
  return RawSet;
2944
3071
  }());
2945
3072
 
@@ -2994,7 +3121,7 @@ var DomRenderProxy = /** @class */ (function () {
2994
3121
  };
2995
3122
  DomRenderProxy.prototype.initRender = function (target) {
2996
3123
  var _this = this;
2997
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
3124
+ var _a, _b, _c, _d, _e;
2998
3125
  var onCreate = (_b = (_a = target).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, RawSet.DR_ON_CREATE_ARGUMENTS_OPTIONNAME);
2999
3126
  var createParam = [];
3000
3127
  if (onCreate) {
@@ -3021,22 +3148,24 @@ var DomRenderProxy = /** @class */ (function () {
3021
3148
  });
3022
3149
  }
3023
3150
  });
3024
- this.render(this.getRawSets());
3025
- // const render = {target} as Render;
3026
- // const creatorMetaData = {
3027
- // creator: this._domRender_proxy,
3028
- // rootCreator: this._domRender_proxy,
3029
- // innerHTML
3030
- // } as CreatorMetaData;
3031
- (_g = (_f = target).getAttribute) === null || _g === void 0 ? void 0 : _g.call(_f, RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
3032
- var initParam = [];
3033
- if (onCreate) {
3034
- initParam = ScriptUtils.evalReturn(onCreate, this._domRender_proxy);
3035
- if (!Array.isArray(initParam)) {
3036
- initParam = [initParam];
3151
+ this.render(this.getRawSets()).then(function (it) {
3152
+ var _a, _b, _c, _d;
3153
+ // const render = {target} as Render;
3154
+ // const creatorMetaData = {
3155
+ // creator: this._domRender_proxy,
3156
+ // rootCreator: this._domRender_proxy,
3157
+ // innerHTML
3158
+ // } as CreatorMetaData;
3159
+ (_b = (_a = target).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, RawSet.DR_ON_INIT_ARGUMENTS_OPTIONNAME);
3160
+ var initParam = [];
3161
+ if (onCreate) {
3162
+ initParam = ScriptUtils.evalReturn(onCreate, _this._domRender_proxy);
3163
+ if (!Array.isArray(initParam)) {
3164
+ initParam = [initParam];
3165
+ }
3037
3166
  }
3038
- }
3039
- (_j = (_h = this._domRender_proxy) === null || _h === void 0 ? void 0 : _h.onInitRender) === null || _j === void 0 ? void 0 : _j.call.apply(_j, __spreadArray([_h], initParam, false));
3167
+ (_d = (_c = _this._domRender_proxy) === null || _c === void 0 ? void 0 : _c.onInitRender) === null || _d === void 0 ? void 0 : _d.call.apply(_d, __spreadArray([_c], initParam, false));
3168
+ });
3040
3169
  };
3041
3170
  DomRenderProxy.prototype.getRawSets = function () {
3042
3171
  var set = new Set();
@@ -3071,11 +3200,11 @@ var DomRenderProxy = /** @class */ (function () {
3071
3200
  switch (_e.label) {
3072
3201
  case 0:
3073
3202
  it_1.getUsingTriggerVariables(this_1.config).forEach(function (path) { return _this.addRawSet(path, it_1); });
3074
- if (!it_1.isConnected) return [3 /*break*/, 5];
3203
+ if (!it_1.isConnected) return [3 /*break*/, 6];
3075
3204
  targetAttrMap = (_b = (_a = it_1.point.node) === null || _a === void 0 ? void 0 : _a.getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, EventManager.normalAttrMapAttrName);
3076
3205
  if (!((_c = it_1.detect) === null || _c === void 0 ? void 0 : _c.action)) return [3 /*break*/, 1];
3077
3206
  it_1.detect.action();
3078
- return [3 /*break*/, 4];
3207
+ return [3 /*break*/, 5];
3079
3208
  case 1:
3080
3209
  if (!(it_1.type === exports.RawSetType.TARGET_ELEMENT && it_1.data && fullPathStr && targetAttrMap && it_1.fragment.render)) return [3 /*break*/, 2];
3081
3210
  new Map(JSON.parse(targetAttrMap)).forEach(function (v, k) {
@@ -3091,20 +3220,20 @@ var DomRenderProxy = /** @class */ (function () {
3091
3220
  }
3092
3221
  // console.log('---?', v, fullPathStr, isUsing);
3093
3222
  });
3094
- return [3 /*break*/, 4];
3223
+ return [3 /*break*/, 5];
3095
3224
  case 2: return [4 /*yield*/, it_1.render(this_1._domRender_proxy, this_1.config)];
3096
3225
  case 3:
3097
3226
  rawSets_2 = _e.sent();
3098
- // 그외 자식들 render
3099
- if (rawSets_2 && rawSets_2.length > 0) {
3100
- this_1.render(rawSets_2);
3101
- }
3102
- _e.label = 4;
3103
- case 4: return [3 /*break*/, 6];
3104
- case 5:
3227
+ if (!(rawSets_2 && rawSets_2.length > 0)) return [3 /*break*/, 5];
3228
+ return [4 /*yield*/, this_1.render(rawSets_2)];
3229
+ case 4:
3230
+ _e.sent();
3231
+ _e.label = 5;
3232
+ case 5: return [3 /*break*/, 7];
3233
+ case 6:
3105
3234
  removeRawSets.push(it_1);
3106
- _e.label = 6;
3107
- case 6: return [2 /*return*/];
3235
+ _e.label = 7;
3236
+ case 7: return [2 /*return*/];
3108
3237
  }
3109
3238
  });
3110
3239
  };
@@ -3154,18 +3283,65 @@ var DomRenderProxy = /** @class */ (function () {
3154
3283
  });
3155
3284
  }
3156
3285
  else {
3286
+ // const firstPathStr = paths.slice(1).reverse().join('.');
3157
3287
  var strings = paths.reverse();
3158
3288
  // array같은경우도 키값으로 접근하기때문에 특정 인덱스를 찾아서 그부분만 바꿔줄수 있다.
3159
3289
  var fullPathStr_1 = strings.map(function (it) { return isNaN(Number(it)) ? '.' + it : "[".concat(it, "]"); }).join('').slice(1);
3290
+ // console.log('-------fullPathStr', fullPathStr, lastDoneExecute);
3160
3291
  if (lastDoneExecute) {
3292
+ // const firstData = ScriptUtils.evalReturn('this.' + firstPathStr, this._domRender_proxy);
3293
+ // console.log('-------', firstPathStr, firstData);
3294
+ // if (firstData instanceof Dictionary) {
3295
+ // }
3161
3296
  var iterable_1 = this._rawSets.get(fullPathStr_1);
3162
3297
  // array check
3163
3298
  var front_1 = strings.slice(0, strings.length - 1).map(function (it) { return isNaN(Number(it)) ? '.' + it : "[".concat(it, "]"); }).join('');
3164
3299
  var last_1 = strings[strings.length - 1];
3165
3300
  var data_1 = ScriptUtils.evalReturn('this' + front_1, this._domRender_proxy);
3301
+ // console.log('-------!!!!!', fullPathStr, iterable, data, front, last);
3166
3302
  new Promise(function (resolve) {
3303
+ var firstPathStr = front_1.slice(1);
3304
+ // check dictionary
3305
+ // console.log('-promise-------', firstPathStr, this)
3306
+ var firstTargets = _this._rawSets.get(firstPathStr);
3307
+ var firstTargetDictionary = [];
3308
+ firstTargets === null || firstTargets === void 0 ? void 0 : firstTargets.forEach(function (it) {
3309
+ var _a, _b;
3310
+ // console.log('----forEach---', it);
3311
+ var type = (_b = (_a = it.point.start).getAttribute) === null || _b === void 0 ? void 0 : _b.call(_a, 'type');
3312
+ if (type === exports.RawSetOperatorType.DR_THIS_PROPERTY) {
3313
+ firstTargetDictionary.push(it);
3314
+ }
3315
+ });
3316
+ if (firstTargetDictionary.length > 0) {
3317
+ // console.log('ddddddddddd', firstTargetDictionary);
3318
+ var rawSets_3 = [];
3319
+ var skip_1 = false;
3320
+ firstTargetDictionary.forEach(function (it) {
3321
+ var _a, _b;
3322
+ var startElement = it.point.start;
3323
+ var keys = (_b = (_a = startElement.getAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME)) === null || _a === void 0 ? void 0 : _a.split(',')) !== null && _b !== void 0 ? _b : [];
3324
+ if (value === undefined) {
3325
+ var rawSet = it.getHasRawSet(last_1);
3326
+ rawSet === null || rawSet === void 0 ? void 0 : rawSet.remove();
3327
+ startElement.setAttribute(RawSet.DR_HAS_KEYS_OPTIONNAME, keys.filter(function (it) { return it !== last_1; }).join(','));
3328
+ }
3329
+ if (!keys.includes(last_1)) {
3330
+ var raws = DrThisProperty.append(_this._domRender_proxy, fullPathStr_1, last_1, it, _this.config);
3331
+ if (raws) {
3332
+ rawSets_3.push.apply(rawSets_3, raws);
3333
+ }
3334
+ }
3335
+ else {
3336
+ skip_1 = true;
3337
+ }
3338
+ });
3339
+ if (skip_1 === false || rawSets_3.length > 0) {
3340
+ return _this.render(rawSets_3);
3341
+ }
3342
+ }
3167
3343
  if (last_1 === 'length' && Array.isArray(data_1)) {
3168
- var aIterable = _this._rawSets.get(front_1.slice(1));
3344
+ var aIterable = _this._rawSets.get(firstPathStr);
3169
3345
  if (aIterable) {
3170
3346
  return _this.render(Array.from(aIterable));
3171
3347
  }
@@ -3174,8 +3350,9 @@ var DomRenderProxy = /** @class */ (function () {
3174
3350
  return _this.render(Array.from(iterable_1), fullPathStr_1);
3175
3351
  }
3176
3352
  }).then(function (it) {
3353
+ console.log('target1------->,', it);
3177
3354
  _this._targets.forEach(function (it) {
3178
- // console.log('target------->,', it)
3355
+ console.log('target2------->,', it);
3179
3356
  // return;
3180
3357
  if (it.nodeType === Node.DOCUMENT_FRAGMENT_NODE || it.nodeType === Node.ELEMENT_NODE) {
3181
3358
  var targets = eventManager.findAttrElements(it, _this.config);
@@ -3191,6 +3368,7 @@ var DomRenderProxy = /** @class */ (function () {
3191
3368
  };
3192
3369
  DomRenderProxy.prototype.set = function (target, p, value, receiver) {
3193
3370
  var _a, _b;
3371
+ // console.log('set-->', p, value, target, receiver);
3194
3372
  if (typeof p === 'string' && p !== '__domrender_components' && excludeGetSetPropertys.includes(p)) {
3195
3373
  target[p] = value;
3196
3374
  return true;
@@ -3252,6 +3430,13 @@ var DomRenderProxy = /** @class */ (function () {
3252
3430
  return it_2;
3253
3431
  }
3254
3432
  };
3433
+ DomRenderProxy.prototype.deleteProperty = function (target, p) {
3434
+ delete target[p];
3435
+ if (typeof p === 'string') {
3436
+ this.root([p]);
3437
+ }
3438
+ return true;
3439
+ };
3255
3440
  DomRenderProxy.prototype.has = function (target, p) {
3256
3441
  return p === '_DomRender_isProxy' || p in target;
3257
3442
  };
@@ -3833,6 +4018,21 @@ var DomRender = /** @class */ (function () {
3833
4018
  return DomRender;
3834
4019
  }());
3835
4020
 
4021
+ var RenderManager = /** @class */ (function () {
4022
+ function RenderManager() {
4023
+ }
4024
+ RenderManager.render = function (obj, target) {
4025
+ if (target === void 0) { target = Object.keys(obj); }
4026
+ var domRenderProxy = obj._DomRender_proxy;
4027
+ if (domRenderProxy) {
4028
+ target.forEach(function (it) {
4029
+ domRenderProxy.root([it], obj[it]);
4030
+ });
4031
+ }
4032
+ };
4033
+ return RenderManager;
4034
+ }());
4035
+
3836
4036
  var Appender = /** @class */ (function () {
3837
4037
  function Appender(defaultDatas) {
3838
4038
  this.length = 0;
@@ -3868,7 +4068,7 @@ var Appender = /** @class */ (function () {
3868
4068
  for (var _i = 0; _i < arguments.length; _i++) {
3869
4069
  items[_i] = arguments[_i];
3870
4070
  }
3871
- // console.log('----2>', this.length)
4071
+ // console.log('----2>', items, this.length);
3872
4072
  items.index = this.length;
3873
4073
  this[this.length++] = items;
3874
4074
  // console.log('---22->', this.length)
@@ -3876,6 +4076,14 @@ var Appender = /** @class */ (function () {
3876
4076
  // appender.values = items;
3877
4077
  // this.childs.push(new Appender(appender.index + 1));
3878
4078
  };
4079
+ // delete(idx: number): void {
4080
+ // // if (idx in this) {
4081
+ // // console.log('---------dele',idx)
4082
+ // // delete this[idx];
4083
+ // // this.length = this.length - 1;
4084
+ // // }
4085
+ // this.length = this.length - 1;
4086
+ // }
3879
4087
  Appender.prototype.clear = function () {
3880
4088
  // console.log('length', this.length);
3881
4089
  for (var i = 0; i < this.length; i++) {
@@ -3886,21 +4094,6 @@ var Appender = /** @class */ (function () {
3886
4094
  return Appender;
3887
4095
  }());
3888
4096
 
3889
- var RenderManager = /** @class */ (function () {
3890
- function RenderManager() {
3891
- }
3892
- RenderManager.render = function (obj, target) {
3893
- if (target === void 0) { target = Object.keys(obj); }
3894
- var domRenderProxy = obj._DomRender_proxy;
3895
- if (domRenderProxy) {
3896
- target.forEach(function (it) {
3897
- domRenderProxy.root([it], obj[it]);
3898
- });
3899
- }
3900
- };
3901
- return RenderManager;
3902
- }());
3903
-
3904
4097
  var AllCheckedValidatorArray = /** @class */ (function (_super) {
3905
4098
  __extends(AllCheckedValidatorArray, _super);
3906
4099
  function AllCheckedValidatorArray(value, target, event, autoValid) {
@@ -3955,6 +4148,21 @@ var CountEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3955
4148
  return CountEqualsCheckedValidatorArray;
3956
4149
  }(ValidatorArray));
3957
4150
 
4151
+ var CountEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
4152
+ __extends(CountEqualsUnCheckedValidatorArray, _super);
4153
+ function CountEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
4154
+ if (autoValid === void 0) { autoValid = true; }
4155
+ var _this = _super.call(this, value, target, event, autoValid) || this;
4156
+ _this.count = count;
4157
+ return _this;
4158
+ }
4159
+ CountEqualsUnCheckedValidatorArray.prototype.valid = function () {
4160
+ var _a;
4161
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length === this.count;
4162
+ };
4163
+ return CountEqualsUnCheckedValidatorArray;
4164
+ }(ValidatorArray));
4165
+
3958
4166
  var CountGreaterThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3959
4167
  __extends(CountGreaterThanEqualsCheckedValidatorArray, _super);
3960
4168
  function CountGreaterThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
@@ -4000,6 +4208,21 @@ var CountGreaterThanUnCheckedValidatorArray = /** @class */ (function (_super) {
4000
4208
  return CountGreaterThanUnCheckedValidatorArray;
4001
4209
  }(ValidatorArray));
4002
4210
 
4211
+ var CountGreaterThanCheckedValidatorArray = /** @class */ (function (_super) {
4212
+ __extends(CountGreaterThanCheckedValidatorArray, _super);
4213
+ function CountGreaterThanCheckedValidatorArray(count, value, target, event, autoValid) {
4214
+ if (autoValid === void 0) { autoValid = true; }
4215
+ var _this = _super.call(this, value, target, event, autoValid) || this;
4216
+ _this.count = count;
4217
+ return _this;
4218
+ }
4219
+ CountGreaterThanCheckedValidatorArray.prototype.valid = function () {
4220
+ var _a;
4221
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length > this.count;
4222
+ };
4223
+ return CountGreaterThanCheckedValidatorArray;
4224
+ }(ValidatorArray));
4225
+
4003
4226
  var CountLessThanCheckedValidatorArray = /** @class */ (function (_super) {
4004
4227
  __extends(CountLessThanCheckedValidatorArray, _super);
4005
4228
  function CountLessThanCheckedValidatorArray(count, value, target, event, autoValid) {
@@ -4015,19 +4238,33 @@ var CountLessThanCheckedValidatorArray = /** @class */ (function (_super) {
4015
4238
  return CountLessThanCheckedValidatorArray;
4016
4239
  }(ValidatorArray));
4017
4240
 
4018
- var CountLessThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
4019
- __extends(CountLessThanEqualsUnCheckedValidatorArray, _super);
4020
- function CountLessThanEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
4241
+ var EmptyValidator = /** @class */ (function (_super) {
4242
+ __extends(EmptyValidator, _super);
4243
+ function EmptyValidator(value, target, event, autoValid) {
4244
+ if (autoValid === void 0) { autoValid = true; }
4245
+ return _super.call(this, value, target, event, autoValid) || this;
4246
+ }
4247
+ EmptyValidator.prototype.valid = function () {
4248
+ var _a;
4249
+ var value = this.value;
4250
+ return value === undefined || value === null || ((_a = value === null || value === void 0 ? void 0 : value.length) !== null && _a !== void 0 ? _a : 0) <= 0;
4251
+ };
4252
+ return EmptyValidator;
4253
+ }(Validator));
4254
+
4255
+ var CountLessThanUnCheckedValidatorArray = /** @class */ (function (_super) {
4256
+ __extends(CountLessThanUnCheckedValidatorArray, _super);
4257
+ function CountLessThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
4021
4258
  if (autoValid === void 0) { autoValid = true; }
4022
4259
  var _this = _super.call(this, value, target, event, autoValid) || this;
4023
4260
  _this.count = count;
4024
4261
  return _this;
4025
4262
  }
4026
- CountLessThanEqualsUnCheckedValidatorArray.prototype.valid = function () {
4263
+ CountLessThanUnCheckedValidatorArray.prototype.valid = function () {
4027
4264
  var _a;
4028
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length <= this.count;
4265
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length < this.count;
4029
4266
  };
4030
- return CountLessThanEqualsUnCheckedValidatorArray;
4267
+ return CountLessThanUnCheckedValidatorArray;
4031
4268
  }(ValidatorArray));
4032
4269
 
4033
4270
  var CountUnCheckedValidatorArray = /** @class */ (function (_super) {
@@ -4045,21 +4282,6 @@ var CountUnCheckedValidatorArray = /** @class */ (function (_super) {
4045
4282
  return CountUnCheckedValidatorArray;
4046
4283
  }(ValidatorArray));
4047
4284
 
4048
- var CountGreaterThanCheckedValidatorArray = /** @class */ (function (_super) {
4049
- __extends(CountGreaterThanCheckedValidatorArray, _super);
4050
- function CountGreaterThanCheckedValidatorArray(count, value, target, event, autoValid) {
4051
- if (autoValid === void 0) { autoValid = true; }
4052
- var _this = _super.call(this, value, target, event, autoValid) || this;
4053
- _this.count = count;
4054
- return _this;
4055
- }
4056
- CountGreaterThanCheckedValidatorArray.prototype.valid = function () {
4057
- var _a;
4058
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length > this.count;
4059
- };
4060
- return CountGreaterThanCheckedValidatorArray;
4061
- }(ValidatorArray));
4062
-
4063
4285
  var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
4064
4286
  __extends(ExcludeCheckedValidatorArray, _super);
4065
4287
  function ExcludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
@@ -4082,20 +4304,57 @@ var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
4082
4304
  return ExcludeCheckedValidatorArray;
4083
4305
  }(ValidatorArray));
4084
4306
 
4085
- var EmptyValidator = /** @class */ (function (_super) {
4086
- __extends(EmptyValidator, _super);
4087
- function EmptyValidator(value, target, event, autoValid) {
4307
+ var MultipleValidator = /** @class */ (function (_super) {
4308
+ __extends(MultipleValidator, _super);
4309
+ function MultipleValidator(validators, value, target, event, autoValid) {
4088
4310
  if (autoValid === void 0) { autoValid = true; }
4089
- return _super.call(this, value, target, event, autoValid) || this;
4311
+ var _this = _super.call(this, value, target, event, autoValid) || this;
4312
+ _this.validators = validators.map(function (it) {
4313
+ it.setAutoValid(false);
4314
+ it.setAutoValidAction(false);
4315
+ return it;
4316
+ });
4317
+ _this.validators.forEach(function (it) {
4318
+ it.set(_this.value, _this.getTarget(), _this.getEvent());
4319
+ });
4320
+ return _this;
4090
4321
  }
4091
- EmptyValidator.prototype.valid = function () {
4092
- var _a;
4093
- var value = this.value;
4094
- return value === undefined || value === null || ((_a = value === null || value === void 0 ? void 0 : value.length) !== null && _a !== void 0 ? _a : 0) <= 0;
4322
+ MultipleValidator.prototype.changeValue = function (value) {
4323
+ var _this = this;
4324
+ this.validators.forEach(function (it) { return it.set(_this.value, _this.getTarget(), _this.getEvent()); });
4095
4325
  };
4096
- return EmptyValidator;
4326
+ MultipleValidator.prototype.validAction = function () {
4327
+ return !(this.validators.filter(function (it) { return !it.validAction(); }).length > 0);
4328
+ };
4329
+ MultipleValidator.prototype.valid = function () {
4330
+ // console.log('mm', this.validators)
4331
+ return !(this.validators.filter(function (it) { return !it.valid(); }).length > 0);
4332
+ };
4333
+ return MultipleValidator;
4097
4334
  }(Validator));
4098
4335
 
4336
+ var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
4337
+ __extends(IncludeCheckedValidatorArray, _super);
4338
+ function IncludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
4339
+ if (allRequired === void 0) { allRequired = false; }
4340
+ if (autoValid === void 0) { autoValid = true; }
4341
+ var _this = _super.call(this, value, target, event, autoValid) || this;
4342
+ _this.include = include;
4343
+ _this.allRequired = allRequired;
4344
+ return _this;
4345
+ }
4346
+ IncludeCheckedValidatorArray.prototype.valid = function () {
4347
+ var _this = this;
4348
+ var _a;
4349
+ var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
4350
+ var checkedValue = valus.filter(function (it) { return it.checked; }).map(function (it) { return it.value; });
4351
+ return checkedValue.length > 0 &&
4352
+ (!(checkedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
4353
+ (this.allRequired ? checkedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
4354
+ };
4355
+ return IncludeCheckedValidatorArray;
4356
+ }(ValidatorArray));
4357
+
4099
4358
  var FormValidator = /** @class */ (function (_super) {
4100
4359
  __extends(FormValidator, _super);
4101
4360
  function FormValidator(target, event, autoValid) {
@@ -4114,41 +4373,49 @@ var FormValidator = /** @class */ (function (_super) {
4114
4373
  return FormValidator;
4115
4374
  }(Validator));
4116
4375
 
4117
- var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
4118
- __extends(IncludeCheckedValidatorArray, _super);
4119
- function IncludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
4120
- if (allRequired === void 0) { allRequired = false; }
4376
+ var NotEmptyValidator = /** @class */ (function (_super) {
4377
+ __extends(NotEmptyValidator, _super);
4378
+ function NotEmptyValidator(value, target, event, autoValid) {
4379
+ if (autoValid === void 0) { autoValid = true; }
4380
+ return _super.call(this, value, target, event, autoValid) || this;
4381
+ }
4382
+ NotEmptyValidator.prototype.valid = function () {
4383
+ var _a;
4384
+ var value = this.value;
4385
+ // console.log('NotEmptyValidator', value, value !== undefined && value !== null && ((value as any)?.length ?? 0) > 0)
4386
+ return value !== undefined && value !== null && ((_a = value === null || value === void 0 ? void 0 : value.length) !== null && _a !== void 0 ? _a : 0) > 0;
4387
+ };
4388
+ return NotEmptyValidator;
4389
+ }(Validator));
4390
+
4391
+ var CountLessThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
4392
+ __extends(CountLessThanEqualsCheckedValidatorArray, _super);
4393
+ function CountLessThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
4121
4394
  if (autoValid === void 0) { autoValid = true; }
4122
4395
  var _this = _super.call(this, value, target, event, autoValid) || this;
4123
- _this.include = include;
4124
- _this.allRequired = allRequired;
4396
+ _this.count = count;
4125
4397
  return _this;
4126
4398
  }
4127
- IncludeCheckedValidatorArray.prototype.valid = function () {
4128
- var _this = this;
4399
+ CountLessThanEqualsCheckedValidatorArray.prototype.valid = function () {
4129
4400
  var _a;
4130
- var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
4131
- var checkedValue = valus.filter(function (it) { return it.checked; }).map(function (it) { return it.value; });
4132
- return checkedValue.length > 0 &&
4133
- (!(checkedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
4134
- (this.allRequired ? checkedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
4401
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length <= this.count;
4135
4402
  };
4136
- return IncludeCheckedValidatorArray;
4403
+ return CountLessThanEqualsCheckedValidatorArray;
4137
4404
  }(ValidatorArray));
4138
4405
 
4139
- var CountEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
4140
- __extends(CountEqualsUnCheckedValidatorArray, _super);
4141
- function CountEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
4406
+ var CountLessThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
4407
+ __extends(CountLessThanEqualsUnCheckedValidatorArray, _super);
4408
+ function CountLessThanEqualsUnCheckedValidatorArray(count, value, target, event, autoValid) {
4142
4409
  if (autoValid === void 0) { autoValid = true; }
4143
4410
  var _this = _super.call(this, value, target, event, autoValid) || this;
4144
4411
  _this.count = count;
4145
4412
  return _this;
4146
4413
  }
4147
- CountEqualsUnCheckedValidatorArray.prototype.valid = function () {
4414
+ CountLessThanEqualsUnCheckedValidatorArray.prototype.valid = function () {
4148
4415
  var _a;
4149
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length === this.count;
4416
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length <= this.count;
4150
4417
  };
4151
- return CountEqualsUnCheckedValidatorArray;
4418
+ return CountLessThanEqualsUnCheckedValidatorArray;
4152
4419
  }(ValidatorArray));
4153
4420
 
4154
4421
  var NotRegExpTestValidator = /** @class */ (function (_super) {
@@ -4173,19 +4440,16 @@ var NotRegExpTestValidator = /** @class */ (function (_super) {
4173
4440
  return NotRegExpTestValidator;
4174
4441
  }(Validator));
4175
4442
 
4176
- var NotEmptyValidator = /** @class */ (function (_super) {
4177
- __extends(NotEmptyValidator, _super);
4178
- function NotEmptyValidator(value, target, event, autoValid) {
4443
+ var PassValidator = /** @class */ (function (_super) {
4444
+ __extends(PassValidator, _super);
4445
+ function PassValidator(value, target, event, autoValid) {
4179
4446
  if (autoValid === void 0) { autoValid = true; }
4180
4447
  return _super.call(this, value, target, event, autoValid) || this;
4181
4448
  }
4182
- NotEmptyValidator.prototype.valid = function () {
4183
- var _a;
4184
- var value = this.value;
4185
- // console.log('NotEmptyValidator', value, value !== undefined && value !== null && ((value as any)?.length ?? 0) > 0)
4186
- return value !== undefined && value !== null && ((_a = value === null || value === void 0 ? void 0 : value.length) !== null && _a !== void 0 ? _a : 0) > 0;
4449
+ PassValidator.prototype.valid = function () {
4450
+ return true;
4187
4451
  };
4188
- return NotEmptyValidator;
4452
+ return PassValidator;
4189
4453
  }(Validator));
4190
4454
 
4191
4455
  var RegExpTestValidator = /** @class */ (function (_super) {
@@ -4224,50 +4488,6 @@ var UnCheckedValidator = /** @class */ (function (_super) {
4224
4488
  return UnCheckedValidator;
4225
4489
  }(Validator));
4226
4490
 
4227
- var CountLessThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
4228
- __extends(CountLessThanEqualsCheckedValidatorArray, _super);
4229
- function CountLessThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
4230
- if (autoValid === void 0) { autoValid = true; }
4231
- var _this = _super.call(this, value, target, event, autoValid) || this;
4232
- _this.count = count;
4233
- return _this;
4234
- }
4235
- CountLessThanEqualsCheckedValidatorArray.prototype.valid = function () {
4236
- var _a;
4237
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length <= this.count;
4238
- };
4239
- return CountLessThanEqualsCheckedValidatorArray;
4240
- }(ValidatorArray));
4241
-
4242
- var MultipleValidator = /** @class */ (function (_super) {
4243
- __extends(MultipleValidator, _super);
4244
- function MultipleValidator(validators, value, target, event, autoValid) {
4245
- if (autoValid === void 0) { autoValid = true; }
4246
- var _this = _super.call(this, value, target, event, autoValid) || this;
4247
- _this.validators = validators.map(function (it) {
4248
- it.setAutoValid(false);
4249
- it.setAutoValidAction(false);
4250
- return it;
4251
- });
4252
- _this.validators.forEach(function (it) {
4253
- it.set(_this.value, _this.getTarget(), _this.getEvent());
4254
- });
4255
- return _this;
4256
- }
4257
- MultipleValidator.prototype.changeValue = function (value) {
4258
- var _this = this;
4259
- this.validators.forEach(function (it) { return it.set(_this.value, _this.getTarget(), _this.getEvent()); });
4260
- };
4261
- MultipleValidator.prototype.validAction = function () {
4262
- return !(this.validators.filter(function (it) { return !it.validAction(); }).length > 0);
4263
- };
4264
- MultipleValidator.prototype.valid = function () {
4265
- // console.log('mm', this.validators)
4266
- return !(this.validators.filter(function (it) { return !it.valid(); }).length > 0);
4267
- };
4268
- return MultipleValidator;
4269
- }(Validator));
4270
-
4271
4491
  var ValidMultipleValidator = /** @class */ (function (_super) {
4272
4492
  __extends(ValidMultipleValidator, _super);
4273
4493
  function ValidMultipleValidator(validMultipleCallback, validators, value, target, event, autoValid) {
@@ -4283,6 +4503,20 @@ var ValidMultipleValidator = /** @class */ (function (_super) {
4283
4503
  return ValidMultipleValidator;
4284
4504
  }(MultipleValidator));
4285
4505
 
4506
+ var RequiredValidator = /** @class */ (function (_super) {
4507
+ __extends(RequiredValidator, _super);
4508
+ function RequiredValidator(value, target, event, autoValid) {
4509
+ if (autoValid === void 0) { autoValid = true; }
4510
+ return _super.call(this, value, target, event, autoValid) || this;
4511
+ }
4512
+ RequiredValidator.prototype.valid = function () {
4513
+ var value = this.value;
4514
+ // console.log('required', value, value !== undefined && value !== null)
4515
+ return value !== undefined && value !== null;
4516
+ };
4517
+ return RequiredValidator;
4518
+ }(Validator));
4519
+
4286
4520
  var ValidValidator = /** @class */ (function (_super) {
4287
4521
  __extends(ValidValidator, _super);
4288
4522
  function ValidValidator(validCallBack, value, target, event, autoValid) {
@@ -4339,46 +4573,27 @@ var ValueEqualsValidator = /** @class */ (function (_super) {
4339
4573
  return ValueEqualsValidator;
4340
4574
  }(Validator));
4341
4575
 
4342
- var CountLessThanUnCheckedValidatorArray = /** @class */ (function (_super) {
4343
- __extends(CountLessThanUnCheckedValidatorArray, _super);
4344
- function CountLessThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
4345
- if (autoValid === void 0) { autoValid = true; }
4346
- var _this = _super.call(this, value, target, event, autoValid) || this;
4347
- _this.count = count;
4348
- return _this;
4576
+ var ClipBoardUtils = /** @class */ (function () {
4577
+ function ClipBoardUtils() {
4349
4578
  }
4350
- CountLessThanUnCheckedValidatorArray.prototype.valid = function () {
4351
- var _a;
4352
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length < this.count;
4579
+ ClipBoardUtils.readText = function (clipboard) {
4580
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4581
+ return clipboard.readText();
4353
4582
  };
4354
- return CountLessThanUnCheckedValidatorArray;
4355
- }(ValidatorArray));
4356
-
4357
- var RequiredValidator = /** @class */ (function (_super) {
4358
- __extends(RequiredValidator, _super);
4359
- function RequiredValidator(value, target, event, autoValid) {
4360
- if (autoValid === void 0) { autoValid = true; }
4361
- return _super.call(this, value, target, event, autoValid) || this;
4362
- }
4363
- RequiredValidator.prototype.valid = function () {
4364
- var value = this.value;
4365
- // console.log('required', value, value !== undefined && value !== null)
4366
- return value !== undefined && value !== null;
4583
+ ClipBoardUtils.read = function (clipboard) {
4584
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4585
+ return clipboard.read();
4367
4586
  };
4368
- return RequiredValidator;
4369
- }(Validator));
4370
-
4371
- var PassValidator = /** @class */ (function (_super) {
4372
- __extends(PassValidator, _super);
4373
- function PassValidator(value, target, event, autoValid) {
4374
- if (autoValid === void 0) { autoValid = true; }
4375
- return _super.call(this, value, target, event, autoValid) || this;
4376
- }
4377
- PassValidator.prototype.valid = function () {
4378
- return true;
4587
+ ClipBoardUtils.writeText = function (data, clipboard) {
4588
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4589
+ return clipboard.writeText(data);
4379
4590
  };
4380
- return PassValidator;
4381
- }(Validator));
4591
+ ClipBoardUtils.write = function (data, clipboard) {
4592
+ if (clipboard === void 0) { clipboard = navigator.clipboard; }
4593
+ return clipboard.write(data);
4594
+ };
4595
+ return ClipBoardUtils;
4596
+ }());
4382
4597
 
4383
4598
  var NodeUtils = /** @class */ (function () {
4384
4599
  function NodeUtils() {
@@ -4449,28 +4664,6 @@ var StorageUtils = /** @class */ (function () {
4449
4664
  return StorageUtils;
4450
4665
  }());
4451
4666
 
4452
- var ClipBoardUtils = /** @class */ (function () {
4453
- function ClipBoardUtils() {
4454
- }
4455
- ClipBoardUtils.readText = function (clipboard) {
4456
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4457
- return clipboard.readText();
4458
- };
4459
- ClipBoardUtils.read = function (clipboard) {
4460
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4461
- return clipboard.read();
4462
- };
4463
- ClipBoardUtils.writeText = function (data, clipboard) {
4464
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4465
- return clipboard.writeText(data);
4466
- };
4467
- ClipBoardUtils.write = function (data, clipboard) {
4468
- if (clipboard === void 0) { clipboard = navigator.clipboard; }
4469
- return clipboard.write(data);
4470
- };
4471
- return ClipBoardUtils;
4472
- }());
4473
-
4474
4667
  exports.AllCheckedValidatorArray = AllCheckedValidatorArray;
4475
4668
  exports.AllUnCheckedValidatorArray = AllUnCheckedValidatorArray;
4476
4669
  exports.Appender = Appender;
@@ -4509,6 +4702,7 @@ exports.DrRepeat = DrRepeat;
4509
4702
  exports.DrTargetAttr = DrTargetAttr;
4510
4703
  exports.DrTargetElement = DrTargetElement;
4511
4704
  exports.DrThis = DrThis;
4705
+ exports.DrThisProperty = DrThisProperty;
4512
4706
  exports.EmptyValidator = EmptyValidator;
4513
4707
  exports.EventManager = EventManager;
4514
4708
  exports.ExcludeCheckedValidatorArray = ExcludeCheckedValidatorArray;