dom-render 1.0.94 → 1.0.96

Sign up to get free protection for your applications and to get access to all the features.
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;