dom-render 1.0.80 → 1.0.81

Sign up to get free protection for your applications and to get access to all the features.
package/DomRenderProxy.js CHANGED
@@ -182,6 +182,7 @@ var DomRenderProxy = /** @class */ (function () {
182
182
  }
183
183
  else {
184
184
  var strings = paths.reverse();
185
+ // array같은경우도 키값으로 접근하기때문에 특정 인덱스를 찾아서 그부분만 바꿔줄수 있다.
185
186
  var fullPathStr_1 = strings.map(function (it) { return isNaN(Number(it)) ? '.' + it : "[".concat(it, "]"); }).join('').slice(1);
186
187
  if (lastDoneExecute) {
187
188
  var iterable = this._rawSets.get(fullPathStr_1);
package/README.MD CHANGED
@@ -7,7 +7,7 @@ DOM-RENDER
7
7
 
8
8
  # 🚀 Quick start
9
9
  ```html
10
- <script src="https://cdn.jsdelivr.net/npm/dom-render@1.0.78/dist/bundle.js"></script>
10
+ <script src="https://cdn.jsdelivr.net/npm/dom-render@1.0.81/dist/bundle.js"></script>
11
11
  ```
12
12
  ```html
13
13
  <!DOCTYPE html>
@@ -119,6 +119,45 @@ const data = DomRender.run(new Data(), document.querySelector('#app')!);
119
119
  ```
120
120
  </details>
121
121
 
122
+ <details>
123
+ <summary>dr-appender<strong>🔻(click)</strong></summary>
124
+
125
+ ```html
126
+ <h3>appender</h3>
127
+ <ul>
128
+ <li dr-appender="this.appender">
129
+ ${#it#}$
130
+ </li>
131
+ </ul>
132
+ <button dr-event-click="this.append()">appending</button>
133
+ <button dr-event-click="this.modifyAppender(0)">idx 0 modify</button>
134
+ <button dr-event-click="this.clearAppend()">appender clear</button>
135
+ ```
136
+
137
+ ```typescript
138
+ class Data {
139
+ appender = new Appender();
140
+
141
+ constructor() {
142
+ this.appender.push('init' + RandomUtils.uuid(), 'init' + RandomUtils.uuid());
143
+ }
144
+
145
+ append() {
146
+ this.appender.push(RandomUtils.uuid(), RandomUtils.uuid());
147
+ }
148
+
149
+ clearAppend() {
150
+ this.appender.clear()
151
+ }
152
+
153
+ modifyAppender(idx: number) {
154
+ this.appender[idx][0] = RandomUtils.uuid();
155
+ }
156
+ }
157
+
158
+ ```
159
+ </details>
160
+
122
161
  <details>
123
162
  <summary>dr-repeat<strong>🔻(click)</strong></summary>
124
163
 
@@ -465,6 +504,17 @@ for (let data of new Range(100,55, 10)) {
465
504
  const rangeArray = new Range(100,55, 10).toArray();
466
505
  ```
467
506
  </details>
507
+ <details>
508
+ <summary>Appender<strong>🔻(click)</strong></summary>
509
+
510
+ ```javascript
511
+ const appender = new Appender<number>([1, 2]);
512
+ appender.push(3, 4)
513
+ for (const data of appender) {
514
+ console.log('----appender item--->', data);
515
+ }
516
+ ```
517
+ </details>
468
518
 
469
519
  ## Detect Get, Set
470
520
  <details>
package/dist/bundle.js CHANGED
@@ -2732,6 +2732,7 @@ var DomRenderProxy = /** @class */ (function () {
2732
2732
  }
2733
2733
  else {
2734
2734
  var strings = paths.reverse();
2735
+ // array같은경우도 키값으로 접근하기때문에 특정 인덱스를 찾아서 그부분만 바꿔줄수 있다.
2735
2736
  var fullPathStr_1 = strings.map(function (it) { return isNaN(Number(it)) ? '.' + it : "[".concat(it, "]"); }).join('').slice(1);
2736
2737
  if (lastDoneExecute) {
2737
2738
  var iterable = this._rawSets.get(fullPathStr_1);
@@ -3398,11 +3399,35 @@ var RenderManager = /** @class */ (function () {
3398
3399
  }());
3399
3400
 
3400
3401
  var Appender = /** @class */ (function () {
3401
- // [keys: string]: any;
3402
- function Appender() {
3402
+ function Appender(defaultDatas) {
3403
3403
  this.length = 0;
3404
+ if (defaultDatas) {
3405
+ this.push.apply(this, defaultDatas);
3406
+ }
3404
3407
  // (this.childs as any).isAppender = true;
3405
3408
  }
3409
+ Appender.prototype[Symbol.iterator] = function () {
3410
+ var items = this.getAll();
3411
+ var idx = 0;
3412
+ return {
3413
+ next: function (value) {
3414
+ var r = { value: undefined, done: true };
3415
+ if (items.length > idx) {
3416
+ r = { value: items[idx], done: false };
3417
+ }
3418
+ idx++;
3419
+ return r;
3420
+ }
3421
+ };
3422
+ };
3423
+ Appender.prototype.getAll = function () {
3424
+ return this.getAlls().flat();
3425
+ };
3426
+ Appender.prototype.getAlls = function () {
3427
+ var _this = this;
3428
+ var map = Array.from({ length: this.length }).filter(function (it, idx) { return _this[idx]; }).map(function (it, idx) { return _this[idx]; });
3429
+ return map;
3430
+ };
3406
3431
  Appender.prototype.push = function () {
3407
3432
  var items = [];
3408
3433
  for (var _i = 0; _i < arguments.length; _i++) {
@@ -3426,18 +3451,18 @@ var Appender = /** @class */ (function () {
3426
3451
  return Appender;
3427
3452
  }());
3428
3453
 
3429
- var AllCheckedValidatorArray = /** @class */ (function (_super) {
3430
- __extends(AllCheckedValidatorArray, _super);
3431
- function AllCheckedValidatorArray(value, target, event, autoValid) {
3454
+ var CheckedValidator = /** @class */ (function (_super) {
3455
+ __extends(CheckedValidator, _super);
3456
+ function CheckedValidator(value, target, event, autoValid) {
3432
3457
  if (autoValid === void 0) { autoValid = true; }
3433
3458
  return _super.call(this, value, target, event, autoValid) || this;
3434
3459
  }
3435
- AllCheckedValidatorArray.prototype.valid = function () {
3436
- var _a;
3437
- return !(((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length > 0);
3460
+ CheckedValidator.prototype.valid = function () {
3461
+ var _a, _b;
3462
+ return (_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false;
3438
3463
  };
3439
- return AllCheckedValidatorArray;
3440
- }(ValidatorArray));
3464
+ return CheckedValidator;
3465
+ }(Validator));
3441
3466
 
3442
3467
  var AllUnCheckedValidatorArray = /** @class */ (function (_super) {
3443
3468
  __extends(AllUnCheckedValidatorArray, _super);
@@ -3467,18 +3492,18 @@ var CountEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3467
3492
  return CountEqualsCheckedValidatorArray;
3468
3493
  }(ValidatorArray));
3469
3494
 
3470
- var CheckedValidator = /** @class */ (function (_super) {
3471
- __extends(CheckedValidator, _super);
3472
- function CheckedValidator(value, target, event, autoValid) {
3495
+ var AllCheckedValidatorArray = /** @class */ (function (_super) {
3496
+ __extends(AllCheckedValidatorArray, _super);
3497
+ function AllCheckedValidatorArray(value, target, event, autoValid) {
3473
3498
  if (autoValid === void 0) { autoValid = true; }
3474
3499
  return _super.call(this, value, target, event, autoValid) || this;
3475
3500
  }
3476
- CheckedValidator.prototype.valid = function () {
3477
- var _a, _b;
3478
- return (_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false;
3501
+ AllCheckedValidatorArray.prototype.valid = function () {
3502
+ var _a;
3503
+ return !(((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length > 0);
3479
3504
  };
3480
- return CheckedValidator;
3481
- }(Validator));
3505
+ return AllCheckedValidatorArray;
3506
+ }(ValidatorArray));
3482
3507
 
3483
3508
  var CountGreaterThanCheckedValidatorArray = /** @class */ (function (_super) {
3484
3509
  __extends(CountGreaterThanCheckedValidatorArray, _super);
@@ -3510,19 +3535,19 @@ var CountEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
3510
3535
  return CountEqualsUnCheckedValidatorArray;
3511
3536
  }(ValidatorArray));
3512
3537
 
3513
- var CountLessThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3514
- __extends(CountLessThanEqualsCheckedValidatorArray, _super);
3515
- function CountLessThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3538
+ var CountGreaterThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3539
+ __extends(CountGreaterThanEqualsCheckedValidatorArray, _super);
3540
+ function CountGreaterThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3516
3541
  if (autoValid === void 0) { autoValid = true; }
3517
3542
  var _this = _super.call(this, value, target, event, autoValid) || this;
3518
3543
  _this.count = count;
3519
3544
  return _this;
3520
3545
  }
3521
- CountLessThanEqualsCheckedValidatorArray.prototype.valid = function () {
3546
+ CountGreaterThanEqualsCheckedValidatorArray.prototype.valid = function () {
3522
3547
  var _a;
3523
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length <= this.count;
3548
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length >= this.count;
3524
3549
  };
3525
- return CountLessThanEqualsCheckedValidatorArray;
3550
+ return CountGreaterThanEqualsCheckedValidatorArray;
3526
3551
  }(ValidatorArray));
3527
3552
 
3528
3553
  var CountGreaterThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
@@ -3540,6 +3565,21 @@ var CountGreaterThanEqualsUnCheckedValidatorArray = /** @class */ (function (_su
3540
3565
  return CountGreaterThanEqualsUnCheckedValidatorArray;
3541
3566
  }(ValidatorArray));
3542
3567
 
3568
+ var CountGreaterThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3569
+ __extends(CountGreaterThanUnCheckedValidatorArray, _super);
3570
+ function CountGreaterThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
3571
+ if (autoValid === void 0) { autoValid = true; }
3572
+ var _this = _super.call(this, value, target, event, autoValid) || this;
3573
+ _this.count = count;
3574
+ return _this;
3575
+ }
3576
+ CountGreaterThanUnCheckedValidatorArray.prototype.valid = function () {
3577
+ var _a;
3578
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length > this.count;
3579
+ };
3580
+ return CountGreaterThanUnCheckedValidatorArray;
3581
+ }(ValidatorArray));
3582
+
3543
3583
  var CountLessThanCheckedValidatorArray = /** @class */ (function (_super) {
3544
3584
  __extends(CountLessThanCheckedValidatorArray, _super);
3545
3585
  function CountLessThanCheckedValidatorArray(count, value, target, event, autoValid) {
@@ -3555,19 +3595,19 @@ var CountLessThanCheckedValidatorArray = /** @class */ (function (_super) {
3555
3595
  return CountLessThanCheckedValidatorArray;
3556
3596
  }(ValidatorArray));
3557
3597
 
3558
- var CountGreaterThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3559
- __extends(CountGreaterThanEqualsCheckedValidatorArray, _super);
3560
- function CountGreaterThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3598
+ var CountLessThanEqualsCheckedValidatorArray = /** @class */ (function (_super) {
3599
+ __extends(CountLessThanEqualsCheckedValidatorArray, _super);
3600
+ function CountLessThanEqualsCheckedValidatorArray(count, value, target, event, autoValid) {
3561
3601
  if (autoValid === void 0) { autoValid = true; }
3562
3602
  var _this = _super.call(this, value, target, event, autoValid) || this;
3563
3603
  _this.count = count;
3564
3604
  return _this;
3565
3605
  }
3566
- CountGreaterThanEqualsCheckedValidatorArray.prototype.valid = function () {
3606
+ CountLessThanEqualsCheckedValidatorArray.prototype.valid = function () {
3567
3607
  var _a;
3568
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length >= this.count;
3608
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return it.checked; }).length <= this.count;
3569
3609
  };
3570
- return CountGreaterThanEqualsCheckedValidatorArray;
3610
+ return CountLessThanEqualsCheckedValidatorArray;
3571
3611
  }(ValidatorArray));
3572
3612
 
3573
3613
  var CountLessThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super) {
@@ -3585,35 +3625,37 @@ var CountLessThanEqualsUnCheckedValidatorArray = /** @class */ (function (_super
3585
3625
  return CountLessThanEqualsUnCheckedValidatorArray;
3586
3626
  }(ValidatorArray));
3587
3627
 
3588
- var CountGreaterThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3589
- __extends(CountGreaterThanUnCheckedValidatorArray, _super);
3590
- function CountGreaterThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
3628
+ var FormValidator = /** @class */ (function (_super) {
3629
+ __extends(FormValidator, _super);
3630
+ function FormValidator(target, event, autoValid) {
3591
3631
  if (autoValid === void 0) { autoValid = true; }
3592
- var _this = _super.call(this, value, target, event, autoValid) || this;
3593
- _this.count = count;
3594
- return _this;
3632
+ return _super.call(this, undefined, target, event, autoValid) || this;
3595
3633
  }
3596
- CountGreaterThanUnCheckedValidatorArray.prototype.valid = function () {
3597
- var _a;
3598
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length > this.count;
3634
+ FormValidator.prototype.validAction = function () {
3635
+ return _super.prototype.childValidAction.call(this);
3599
3636
  };
3600
- return CountGreaterThanUnCheckedValidatorArray;
3601
- }(ValidatorArray));
3637
+ FormValidator.prototype.valid = function () {
3638
+ return this.childValid();
3639
+ };
3640
+ FormValidator.prototype.reset = function () {
3641
+ this.targetReset();
3642
+ };
3643
+ return FormValidator;
3644
+ }(Validator));
3602
3645
 
3603
- var CountLessThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3604
- __extends(CountLessThanUnCheckedValidatorArray, _super);
3605
- function CountLessThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
3646
+ var EmptyValidator = /** @class */ (function (_super) {
3647
+ __extends(EmptyValidator, _super);
3648
+ function EmptyValidator(value, target, event, autoValid) {
3606
3649
  if (autoValid === void 0) { autoValid = true; }
3607
- var _this = _super.call(this, value, target, event, autoValid) || this;
3608
- _this.count = count;
3609
- return _this;
3650
+ return _super.call(this, value, target, event, autoValid) || this;
3610
3651
  }
3611
- CountLessThanUnCheckedValidatorArray.prototype.valid = function () {
3612
- var _a;
3613
- return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length < this.count;
3652
+ EmptyValidator.prototype.valid = function () {
3653
+ var _a, _b;
3654
+ var value = this.value;
3655
+ return value === undefined || value === null || ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) <= 0;
3614
3656
  };
3615
- return CountLessThanUnCheckedValidatorArray;
3616
- }(ValidatorArray));
3657
+ return EmptyValidator;
3658
+ }(Validator));
3617
3659
 
3618
3660
  var CountUnCheckedValidatorArray = /** @class */ (function (_super) {
3619
3661
  __extends(CountUnCheckedValidatorArray, _super);
@@ -3630,23 +3672,24 @@ var CountUnCheckedValidatorArray = /** @class */ (function (_super) {
3630
3672
  return CountUnCheckedValidatorArray;
3631
3673
  }(ValidatorArray));
3632
3674
 
3633
- var EmptyValidator = /** @class */ (function (_super) {
3634
- __extends(EmptyValidator, _super);
3635
- function EmptyValidator(value, target, event, autoValid) {
3675
+ var CountLessThanUnCheckedValidatorArray = /** @class */ (function (_super) {
3676
+ __extends(CountLessThanUnCheckedValidatorArray, _super);
3677
+ function CountLessThanUnCheckedValidatorArray(count, value, target, event, autoValid) {
3636
3678
  if (autoValid === void 0) { autoValid = true; }
3637
- return _super.call(this, value, target, event, autoValid) || this;
3679
+ var _this = _super.call(this, value, target, event, autoValid) || this;
3680
+ _this.count = count;
3681
+ return _this;
3638
3682
  }
3639
- EmptyValidator.prototype.valid = function () {
3640
- var _a, _b;
3641
- var value = this.value;
3642
- return value === undefined || value === null || ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) <= 0;
3683
+ CountLessThanUnCheckedValidatorArray.prototype.valid = function () {
3684
+ var _a;
3685
+ return ((_a = this.value) !== null && _a !== void 0 ? _a : []).filter(function (it) { return !it.checked; }).length < this.count;
3643
3686
  };
3644
- return EmptyValidator;
3645
- }(Validator));
3687
+ return CountLessThanUnCheckedValidatorArray;
3688
+ }(ValidatorArray));
3646
3689
 
3647
- var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
3648
- __extends(IncludeCheckedValidatorArray, _super);
3649
- function IncludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3690
+ var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
3691
+ __extends(ExcludeCheckedValidatorArray, _super);
3692
+ function ExcludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3650
3693
  if (allRequired === void 0) { allRequired = false; }
3651
3694
  if (autoValid === void 0) { autoValid = true; }
3652
3695
  var _this = _super.call(this, value, target, event, autoValid) || this;
@@ -3654,33 +3697,18 @@ var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
3654
3697
  _this.allRequired = allRequired;
3655
3698
  return _this;
3656
3699
  }
3657
- IncludeCheckedValidatorArray.prototype.valid = function () {
3700
+ ExcludeCheckedValidatorArray.prototype.valid = function () {
3658
3701
  var _this = this;
3659
3702
  var _a;
3660
3703
  var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
3661
- var checkedValue = valus.filter(function (it) { return it.checked; }).map(function (it) { return it.value; });
3662
- return checkedValue.length > 0 &&
3663
- (!(checkedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3664
- (this.allRequired ? checkedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3704
+ var unCheckedValue = valus.filter(function (it) { return !it.checked; }).map(function (it) { return it.value; });
3705
+ return unCheckedValue.length > 0 &&
3706
+ (!(unCheckedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3707
+ (this.allRequired ? unCheckedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3665
3708
  };
3666
- return IncludeCheckedValidatorArray;
3709
+ return ExcludeCheckedValidatorArray;
3667
3710
  }(ValidatorArray));
3668
3711
 
3669
- var NotEmptyValidator = /** @class */ (function (_super) {
3670
- __extends(NotEmptyValidator, _super);
3671
- function NotEmptyValidator(value, target, event, autoValid) {
3672
- if (autoValid === void 0) { autoValid = true; }
3673
- return _super.call(this, value, target, event, autoValid) || this;
3674
- }
3675
- NotEmptyValidator.prototype.valid = function () {
3676
- var _a, _b;
3677
- var value = this.value;
3678
- // console.log('NotEmptyValidator', value, value !== undefined && value !== null && ((value as any)?.length ?? 0) > 0)
3679
- return value !== undefined && value !== null && ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
3680
- };
3681
- return NotEmptyValidator;
3682
- }(Validator));
3683
-
3684
3712
  var MultipleValidator = /** @class */ (function (_super) {
3685
3713
  __extends(MultipleValidator, _super);
3686
3714
  function MultipleValidator(validators, value, target, event, autoValid) {
@@ -3710,27 +3738,9 @@ var MultipleValidator = /** @class */ (function (_super) {
3710
3738
  return MultipleValidator;
3711
3739
  }(Validator));
3712
3740
 
3713
- var FormValidator = /** @class */ (function (_super) {
3714
- __extends(FormValidator, _super);
3715
- function FormValidator(target, event, autoValid) {
3716
- if (autoValid === void 0) { autoValid = true; }
3717
- return _super.call(this, undefined, target, event, autoValid) || this;
3718
- }
3719
- FormValidator.prototype.validAction = function () {
3720
- return _super.prototype.childValidAction.call(this);
3721
- };
3722
- FormValidator.prototype.valid = function () {
3723
- return this.childValid();
3724
- };
3725
- FormValidator.prototype.reset = function () {
3726
- this.targetReset();
3727
- };
3728
- return FormValidator;
3729
- }(Validator));
3730
-
3731
- var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
3732
- __extends(ExcludeCheckedValidatorArray, _super);
3733
- function ExcludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3741
+ var IncludeCheckedValidatorArray = /** @class */ (function (_super) {
3742
+ __extends(IncludeCheckedValidatorArray, _super);
3743
+ function IncludeCheckedValidatorArray(include, allRequired, value, target, event, autoValid) {
3734
3744
  if (allRequired === void 0) { allRequired = false; }
3735
3745
  if (autoValid === void 0) { autoValid = true; }
3736
3746
  var _this = _super.call(this, value, target, event, autoValid) || this;
@@ -3738,16 +3748,16 @@ var ExcludeCheckedValidatorArray = /** @class */ (function (_super) {
3738
3748
  _this.allRequired = allRequired;
3739
3749
  return _this;
3740
3750
  }
3741
- ExcludeCheckedValidatorArray.prototype.valid = function () {
3751
+ IncludeCheckedValidatorArray.prototype.valid = function () {
3742
3752
  var _this = this;
3743
3753
  var _a;
3744
3754
  var valus = (_a = this.value) !== null && _a !== void 0 ? _a : [];
3745
- var unCheckedValue = valus.filter(function (it) { return !it.checked; }).map(function (it) { return it.value; });
3746
- return unCheckedValue.length > 0 &&
3747
- (!(unCheckedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3748
- (this.allRequired ? unCheckedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3755
+ var checkedValue = valus.filter(function (it) { return it.checked; }).map(function (it) { return it.value; });
3756
+ return checkedValue.length > 0 &&
3757
+ (!(checkedValue.filter(function (it) { return !_this.include.includes(it); }).length > 0)) &&
3758
+ (this.allRequired ? checkedValue.filter(function (it) { return _this.include.includes(it); }).length === this.include.length : true);
3749
3759
  };
3750
- return ExcludeCheckedValidatorArray;
3760
+ return IncludeCheckedValidatorArray;
3751
3761
  }(ValidatorArray));
3752
3762
 
3753
3763
  var PassValidator = /** @class */ (function (_super) {
@@ -3762,26 +3772,56 @@ var PassValidator = /** @class */ (function (_super) {
3762
3772
  return PassValidator;
3763
3773
  }(Validator));
3764
3774
 
3765
- var NotRegExpTestValidator = /** @class */ (function (_super) {
3766
- __extends(NotRegExpTestValidator, _super);
3767
- function NotRegExpTestValidator(regexp, value, target, event, autoValid) {
3775
+ var RegExpTestValidator = /** @class */ (function (_super) {
3776
+ __extends(RegExpTestValidator, _super);
3777
+ function RegExpTestValidator(regexp, value, target, event, autoValid) {
3768
3778
  if (autoValid === void 0) { autoValid = true; }
3769
3779
  var _this = _super.call(this, value, target, event, autoValid) || this;
3770
3780
  _this.regexp = DomRenderProxy.final(regexp);
3771
3781
  return _this;
3772
3782
  }
3773
- NotRegExpTestValidator.prototype.valid = function () {
3783
+ RegExpTestValidator.prototype.valid = function () {
3774
3784
  var _a;
3775
3785
  var value = this.value;
3776
3786
  var regExp = (_a = this.regexp._DomRender_origin) !== null && _a !== void 0 ? _a : this.regexp;
3787
+ // console.log('regexp-->', value, this.regexp, regExp.test(value))
3777
3788
  if (value) {
3778
- return !regExp.test(value);
3789
+ return regExp.test(value);
3779
3790
  }
3780
3791
  else {
3781
- return true;
3792
+ return false;
3782
3793
  }
3783
3794
  };
3784
- return NotRegExpTestValidator;
3795
+ return RegExpTestValidator;
3796
+ }(Validator));
3797
+
3798
+ var RequiredValidator = /** @class */ (function (_super) {
3799
+ __extends(RequiredValidator, _super);
3800
+ function RequiredValidator(value, target, event, autoValid) {
3801
+ if (autoValid === void 0) { autoValid = true; }
3802
+ return _super.call(this, value, target, event, autoValid) || this;
3803
+ }
3804
+ RequiredValidator.prototype.valid = function () {
3805
+ var value = this.value;
3806
+ // console.log('required', value, value !== undefined && value !== null)
3807
+ return value !== undefined && value !== null;
3808
+ };
3809
+ return RequiredValidator;
3810
+ }(Validator));
3811
+
3812
+ var NotEmptyValidator = /** @class */ (function (_super) {
3813
+ __extends(NotEmptyValidator, _super);
3814
+ function NotEmptyValidator(value, target, event, autoValid) {
3815
+ if (autoValid === void 0) { autoValid = true; }
3816
+ return _super.call(this, value, target, event, autoValid) || this;
3817
+ }
3818
+ NotEmptyValidator.prototype.valid = function () {
3819
+ var _a, _b;
3820
+ var value = this.value;
3821
+ // console.log('NotEmptyValidator', value, value !== undefined && value !== null && ((value as any)?.length ?? 0) > 0)
3822
+ return value !== undefined && value !== null && ((_b = (_a = value) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0;
3823
+ };
3824
+ return NotEmptyValidator;
3785
3825
  }(Validator));
3786
3826
 
3787
3827
  var ValidValidator = /** @class */ (function (_super) {
@@ -3813,96 +3853,81 @@ var ValidMultipleValidator = /** @class */ (function (_super) {
3813
3853
  return ValidMultipleValidator;
3814
3854
  }(MultipleValidator));
3815
3855
 
3816
- var RegExpTestValidator = /** @class */ (function (_super) {
3817
- __extends(RegExpTestValidator, _super);
3818
- function RegExpTestValidator(regexp, value, target, event, autoValid) {
3856
+ var ValidValidatorArray = /** @class */ (function (_super) {
3857
+ __extends(ValidValidatorArray, _super);
3858
+ function ValidValidatorArray(validCallBack, value, target, event, autoValid) {
3819
3859
  if (autoValid === void 0) { autoValid = true; }
3820
3860
  var _this = _super.call(this, value, target, event, autoValid) || this;
3821
- _this.regexp = DomRenderProxy.final(regexp);
3861
+ _this.validCallBack = validCallBack;
3822
3862
  return _this;
3823
3863
  }
3824
- RegExpTestValidator.prototype.valid = function () {
3825
- var _a;
3826
- var value = this.value;
3827
- var regExp = (_a = this.regexp._DomRender_origin) !== null && _a !== void 0 ? _a : this.regexp;
3828
- // console.log('regexp-->', value, this.regexp, regExp.test(value))
3829
- if (value) {
3830
- return regExp.test(value);
3831
- }
3832
- else {
3833
- return false;
3834
- }
3864
+ ValidValidatorArray.prototype.valid = function () {
3865
+ return this.validCallBack(this.value, this.getTarget(), this.getEvent());
3835
3866
  };
3836
- return RegExpTestValidator;
3837
- }(Validator));
3867
+ return ValidValidatorArray;
3868
+ }(ValidatorArray));
3838
3869
 
3839
- var RequiredValidator = /** @class */ (function (_super) {
3840
- __extends(RequiredValidator, _super);
3841
- function RequiredValidator(value, target, event, autoValid) {
3870
+ var UnCheckedValidator = /** @class */ (function (_super) {
3871
+ __extends(UnCheckedValidator, _super);
3872
+ function UnCheckedValidator(value, target, event, autoValid) {
3842
3873
  if (autoValid === void 0) { autoValid = true; }
3843
3874
  return _super.call(this, value, target, event, autoValid) || this;
3844
3875
  }
3845
- RequiredValidator.prototype.valid = function () {
3846
- var value = this.value;
3847
- // console.log('required', value, value !== undefined && value !== null)
3848
- return value !== undefined && value !== null;
3876
+ UnCheckedValidator.prototype.valid = function () {
3877
+ var _a, _b;
3878
+ return !((_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false);
3849
3879
  };
3850
- return RequiredValidator;
3880
+ return UnCheckedValidator;
3851
3881
  }(Validator));
3852
3882
 
3853
- var ValueNotEqualsValidator = /** @class */ (function (_super) {
3854
- __extends(ValueNotEqualsValidator, _super);
3855
- function ValueNotEqualsValidator(equalsValue, value, target, event, autoValid) {
3883
+ var ValueEqualsValidator = /** @class */ (function (_super) {
3884
+ __extends(ValueEqualsValidator, _super);
3885
+ function ValueEqualsValidator(equalsValue, value, target, event, autoValid) {
3856
3886
  if (autoValid === void 0) { autoValid = true; }
3857
3887
  var _this = _super.call(this, value, target, event, autoValid) || this;
3858
3888
  _this.equalsValue = equalsValue;
3859
3889
  return _this;
3860
3890
  }
3861
- ValueNotEqualsValidator.prototype.valid = function () {
3862
- return this.value !== this.equalsValue;
3891
+ ValueEqualsValidator.prototype.valid = function () {
3892
+ return this.value === this.equalsValue;
3863
3893
  };
3864
- return ValueNotEqualsValidator;
3894
+ return ValueEqualsValidator;
3865
3895
  }(Validator));
3866
3896
 
3867
- var ValidValidatorArray = /** @class */ (function (_super) {
3868
- __extends(ValidValidatorArray, _super);
3869
- function ValidValidatorArray(validCallBack, value, target, event, autoValid) {
3897
+ var NotRegExpTestValidator = /** @class */ (function (_super) {
3898
+ __extends(NotRegExpTestValidator, _super);
3899
+ function NotRegExpTestValidator(regexp, value, target, event, autoValid) {
3870
3900
  if (autoValid === void 0) { autoValid = true; }
3871
3901
  var _this = _super.call(this, value, target, event, autoValid) || this;
3872
- _this.validCallBack = validCallBack;
3902
+ _this.regexp = DomRenderProxy.final(regexp);
3873
3903
  return _this;
3874
3904
  }
3875
- ValidValidatorArray.prototype.valid = function () {
3876
- return this.validCallBack(this.value, this.getTarget(), this.getEvent());
3905
+ NotRegExpTestValidator.prototype.valid = function () {
3906
+ var _a;
3907
+ var value = this.value;
3908
+ var regExp = (_a = this.regexp._DomRender_origin) !== null && _a !== void 0 ? _a : this.regexp;
3909
+ if (value) {
3910
+ return !regExp.test(value);
3911
+ }
3912
+ else {
3913
+ return true;
3914
+ }
3877
3915
  };
3878
- return ValidValidatorArray;
3879
- }(ValidatorArray));
3916
+ return NotRegExpTestValidator;
3917
+ }(Validator));
3880
3918
 
3881
- var ValueEqualsValidator = /** @class */ (function (_super) {
3882
- __extends(ValueEqualsValidator, _super);
3883
- function ValueEqualsValidator(equalsValue, value, target, event, autoValid) {
3919
+ var ValueNotEqualsValidator = /** @class */ (function (_super) {
3920
+ __extends(ValueNotEqualsValidator, _super);
3921
+ function ValueNotEqualsValidator(equalsValue, value, target, event, autoValid) {
3884
3922
  if (autoValid === void 0) { autoValid = true; }
3885
3923
  var _this = _super.call(this, value, target, event, autoValid) || this;
3886
3924
  _this.equalsValue = equalsValue;
3887
3925
  return _this;
3888
3926
  }
3889
- ValueEqualsValidator.prototype.valid = function () {
3890
- return this.value === this.equalsValue;
3891
- };
3892
- return ValueEqualsValidator;
3893
- }(Validator));
3894
-
3895
- var UnCheckedValidator = /** @class */ (function (_super) {
3896
- __extends(UnCheckedValidator, _super);
3897
- function UnCheckedValidator(value, target, event, autoValid) {
3898
- if (autoValid === void 0) { autoValid = true; }
3899
- return _super.call(this, value, target, event, autoValid) || this;
3900
- }
3901
- UnCheckedValidator.prototype.valid = function () {
3902
- var _a, _b;
3903
- return !((_b = (_a = this.getTarget()) === null || _a === void 0 ? void 0 : _a.checked) !== null && _b !== void 0 ? _b : false);
3927
+ ValueNotEqualsValidator.prototype.valid = function () {
3928
+ return this.value !== this.equalsValue;
3904
3929
  };
3905
- return UnCheckedValidator;
3930
+ return ValueNotEqualsValidator;
3906
3931
  }(Validator));
3907
3932
 
3908
3933
  var ClipBoardUtils = /** @class */ (function () {
@@ -3927,6 +3952,30 @@ var ClipBoardUtils = /** @class */ (function () {
3927
3952
  return ClipBoardUtils;
3928
3953
  }());
3929
3954
 
3955
+ var NodeUtils = /** @class */ (function () {
3956
+ function NodeUtils() {
3957
+ }
3958
+ // https://stackoverflow.com/questions/3955229/remove-all-child-elements-of-a-dom-node-in-javascript
3959
+ NodeUtils.removeAllChildNode = function (node) {
3960
+ while (node === null || node === void 0 ? void 0 : node.firstChild) {
3961
+ node.firstChild.remove();
3962
+ }
3963
+ };
3964
+ NodeUtils.appendChild = function (parentNode, childNode) {
3965
+ return parentNode.appendChild(childNode);
3966
+ };
3967
+ NodeUtils.replaceNode = function (targetNode, newNode) {
3968
+ var _a;
3969
+ // console.log('repalceNode', targetNode, newNode, targetNode.parentNode)
3970
+ return (_a = targetNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(newNode, targetNode);
3971
+ };
3972
+ NodeUtils.addNode = function (targetNode, newNode) {
3973
+ var _a;
3974
+ return (_a = targetNode.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(newNode, targetNode.nextSibling);
3975
+ };
3976
+ return NodeUtils;
3977
+ }());
3978
+
3930
3979
  var StorageUtils = /** @class */ (function () {
3931
3980
  function StorageUtils() {
3932
3981
  }
@@ -3972,30 +4021,6 @@ var StorageUtils = /** @class */ (function () {
3972
4021
  return StorageUtils;
3973
4022
  }());
3974
4023
 
3975
- var NodeUtils = /** @class */ (function () {
3976
- function NodeUtils() {
3977
- }
3978
- // https://stackoverflow.com/questions/3955229/remove-all-child-elements-of-a-dom-node-in-javascript
3979
- NodeUtils.removeAllChildNode = function (node) {
3980
- while (node === null || node === void 0 ? void 0 : node.firstChild) {
3981
- node.firstChild.remove();
3982
- }
3983
- };
3984
- NodeUtils.appendChild = function (parentNode, childNode) {
3985
- return parentNode.appendChild(childNode);
3986
- };
3987
- NodeUtils.replaceNode = function (targetNode, newNode) {
3988
- var _a;
3989
- // console.log('repalceNode', targetNode, newNode, targetNode.parentNode)
3990
- return (_a = targetNode.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(newNode, targetNode);
3991
- };
3992
- NodeUtils.addNode = function (targetNode, newNode) {
3993
- var _a;
3994
- return (_a = targetNode.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(newNode, targetNode.nextSibling);
3995
- };
3996
- return NodeUtils;
3997
- }());
3998
-
3999
4024
  exports.AllCheckedValidatorArray = AllCheckedValidatorArray;
4000
4025
  exports.AllUnCheckedValidatorArray = AllUnCheckedValidatorArray;
4001
4026
  exports.Appender = Appender;
@@ -1,7 +1,10 @@
1
- export declare class Appender {
2
- [key: number]: any[] | undefined;
1
+ export declare class Appender<T = any> implements Iterable<T> {
2
+ [key: number]: T[] | undefined;
3
3
  length: number;
4
- constructor();
5
- push(...items: any[]): void;
4
+ constructor(defaultDatas?: T[]);
5
+ [Symbol.iterator](): Iterator<T>;
6
+ getAll(): T[];
7
+ getAlls(): T[][];
8
+ push(...items: T[]): void;
6
9
  clear(): void;
7
10
  }
@@ -2,11 +2,35 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Appender = void 0;
4
4
  var Appender = /** @class */ (function () {
5
- // [keys: string]: any;
6
- function Appender() {
5
+ function Appender(defaultDatas) {
7
6
  this.length = 0;
7
+ if (defaultDatas) {
8
+ this.push.apply(this, defaultDatas);
9
+ }
8
10
  // (this.childs as any).isAppender = true;
9
11
  }
12
+ Appender.prototype[Symbol.iterator] = function () {
13
+ var items = this.getAll();
14
+ var idx = 0;
15
+ return {
16
+ next: function (value) {
17
+ var r = { value: undefined, done: true };
18
+ if (items.length > idx) {
19
+ r = { value: items[idx], done: false };
20
+ }
21
+ idx++;
22
+ return r;
23
+ }
24
+ };
25
+ };
26
+ Appender.prototype.getAll = function () {
27
+ return this.getAlls().flat();
28
+ };
29
+ Appender.prototype.getAlls = function () {
30
+ var _this = this;
31
+ var map = Array.from({ length: this.length }).filter(function (it, idx) { return _this[idx]; }).map(function (it, idx) { return _this[idx]; });
32
+ return map;
33
+ };
10
34
  Appender.prototype.push = function () {
11
35
  var items = [];
12
36
  for (var _i = 0; _i < arguments.length; _i++) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dom-render",
3
- "version": "1.0.80",
3
+ "version": "1.0.81",
4
4
  "main": "DomRender.js",
5
5
  "license": "MIT",
6
6
  "description": "dom-render",