@luftborn/custom-elements 2.12.8 → 2.12.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/demo/index.js +82 -5
  2. package/demo/index.min.js +81 -4
  3. package/demo/index.min.js.map +1 -1
  4. package/dist/elements/Address/AddressElement.js +3 -0
  5. package/dist/elements/Address/AddressElement.js.map +1 -1
  6. package/dist/elements/BankField/BankFieldElement.js +3 -0
  7. package/dist/elements/BankField/BankFieldElement.js.map +1 -1
  8. package/dist/elements/CPRElement/CPRElement.js +3 -0
  9. package/dist/elements/CPRElement/CPRElement.js.map +1 -1
  10. package/dist/elements/CVRElement/CVRElement.js +3 -0
  11. package/dist/elements/CVRElement/CVRElement.js.map +1 -1
  12. package/dist/elements/CheckBoxElement/CheckBoxElement.js +3 -0
  13. package/dist/elements/CheckBoxElement/CheckBoxElement.js.map +1 -1
  14. package/dist/elements/CustomFormatDateFieldElement/CustomFormatDateFieldElement.js +3 -0
  15. package/dist/elements/CustomFormatDateFieldElement/CustomFormatDateFieldElement.js.map +1 -1
  16. package/dist/elements/CustomRegularExpression/CustomRegularExpressionElement.js +3 -0
  17. package/dist/elements/CustomRegularExpression/CustomRegularExpressionElement.js.map +1 -1
  18. package/dist/elements/DateField/DateFieldElement.js +3 -0
  19. package/dist/elements/DateField/DateFieldElement.js.map +1 -1
  20. package/dist/elements/DropDownList/DropDownListElement.js +3 -0
  21. package/dist/elements/DropDownList/DropDownListElement.js.map +1 -1
  22. package/dist/elements/EmailField/EmailFieldElement.js +3 -0
  23. package/dist/elements/EmailField/EmailFieldElement.js.map +1 -1
  24. package/dist/elements/FileField/FileFieldElement.js +3 -0
  25. package/dist/elements/FileField/FileFieldElement.js.map +1 -1
  26. package/dist/elements/IdentificationElement/IdentificationElement.js +3 -0
  27. package/dist/elements/IdentificationElement/IdentificationElement.js.map +1 -1
  28. package/dist/elements/InternationaPhoneNumber/InternationaPhoneNumberElement.js +3 -0
  29. package/dist/elements/InternationaPhoneNumber/InternationaPhoneNumberElement.js.map +1 -1
  30. package/dist/elements/NumericField/NumericFieldElement.js +3 -0
  31. package/dist/elements/NumericField/NumericFieldElement.js.map +1 -1
  32. package/dist/elements/RadioButtonGroup/RadioButtonGroupElement.js +3 -0
  33. package/dist/elements/RadioButtonGroup/RadioButtonGroupElement.js.map +1 -1
  34. package/dist/elements/SECompanyRegistrationElement/SECompanyRegistrationElement.js +3 -0
  35. package/dist/elements/SECompanyRegistrationElement/SECompanyRegistrationElement.js.map +1 -1
  36. package/dist/elements/SEPersonalNumberElement/SEPersonalNumberElement.js +3 -0
  37. package/dist/elements/SEPersonalNumberElement/SEPersonalNumberElement.js.map +1 -1
  38. package/dist/elements/TextAreaElement/TextAreaElement.js +3 -0
  39. package/dist/elements/TextAreaElement/TextAreaElement.js.map +1 -1
  40. package/dist/elements/TextField/TextFieldElement.js +3 -0
  41. package/dist/elements/TextField/TextFieldElement.js.map +1 -1
  42. package/dist/elements/TypeAhead/TypeAheadElement.js +3 -0
  43. package/dist/elements/TypeAhead/TypeAheadElement.js.map +1 -1
  44. package/dist/framework/CustomInputElement.d.ts +3 -1
  45. package/dist/framework/CustomInputElement.js +21 -4
  46. package/dist/framework/CustomInputElement.js.map +1 -1
  47. package/package.json +1 -1
  48. package/src/elements/Address/AddressElement.ts +3 -0
  49. package/src/elements/BankField/BankFieldElement.ts +3 -0
  50. package/src/elements/CPRElement/CPRElement.ts +3 -0
  51. package/src/elements/CVRElement/CVRElement.ts +3 -0
  52. package/src/elements/CheckBoxElement/CheckBoxElement.ts +3 -0
  53. package/src/elements/CustomFormatDateFieldElement/CustomFormatDateFieldElement.ts +3 -0
  54. package/src/elements/CustomRegularExpression/CustomRegularExpressionElement.ts +3 -0
  55. package/src/elements/DateField/DateFieldElement.ts +3 -0
  56. package/src/elements/DropDownList/DropDownListElement.ts +3 -0
  57. package/src/elements/EmailField/EmailFieldElement.ts +3 -0
  58. package/src/elements/FileField/FileFieldElement.ts +3 -0
  59. package/src/elements/IdentificationElement/IdentificationElement.ts +3 -0
  60. package/src/elements/InternationaPhoneNumber/InternationaPhoneNumberElement.ts +3 -0
  61. package/src/elements/NumericField/NumericFieldElement.ts +3 -0
  62. package/src/elements/RadioButtonGroup/RadioButtonGroupElement.ts +3 -0
  63. package/src/elements/SECompanyRegistrationElement/SECompanyRegistrationElement.ts +3 -0
  64. package/src/elements/SEPersonalNumberElement/SEPersonalNumberElement.ts +3 -0
  65. package/src/elements/TextAreaElement/TextAreaElement.ts +3 -0
  66. package/src/elements/TextField/TextFieldElement.ts +3 -0
  67. package/src/elements/TypeAhead/TypeAheadElement.ts +3 -0
  68. package/src/framework/CustomInputElement.ts +23 -5
package/demo/index.min.js CHANGED
@@ -3543,6 +3543,9 @@ var AddressElement = /** @class */ (function (_super) {
3543
3543
  this.country.setAttribute('required', '');
3544
3544
  this.zip.setAttribute('required', '');
3545
3545
  }
3546
+ if (this.labelId) {
3547
+ this.address.setAttribute('aria-labelledby', this.labelId);
3548
+ }
3546
3549
  };
3547
3550
  // events
3548
3551
  AddressElement.prototype.change = function ($event) {
@@ -3745,6 +3748,9 @@ var BankFieldElement = /** @class */ (function (_super) {
3745
3748
  this.account.setAttribute('required', '');
3746
3749
  this.regNumber.setAttribute('required', '');
3747
3750
  }
3751
+ if (this.labelId) {
3752
+ this.regNumber.setAttribute('aria-labelledby', this.labelId);
3753
+ }
3748
3754
  };
3749
3755
  // events
3750
3756
  BankFieldElement.prototype.change = function ($event) {
@@ -3849,6 +3855,9 @@ var CPRElement = /** @class */ (function (_super) {
3849
3855
  if (this.initialValue) {
3850
3856
  this.value = this.initialValue;
3851
3857
  }
3858
+ if (this.labelId) {
3859
+ this.text.setAttribute('aria-labelledby', this.labelId);
3860
+ }
3852
3861
  };
3853
3862
  // events
3854
3863
  CPRElement.prototype.change = function ($event) {
@@ -3936,6 +3945,9 @@ var CVRElement = /** @class */ (function (_super) {
3936
3945
  if (this.initialValue) {
3937
3946
  this.value = this.initialValue;
3938
3947
  }
3948
+ if (this.labelId) {
3949
+ this.text.setAttribute('aria-labelledby', this.labelId);
3950
+ }
3939
3951
  };
3940
3952
  // events
3941
3953
  CVRElement.prototype.change = function ($event) {
@@ -4026,6 +4038,9 @@ var CheckBoxElement = /** @class */ (function (_super) {
4026
4038
  this.checkbox.forEach(function (c) {
4027
4039
  return c.addEventListener('change', _this.change.bind(_this));
4028
4040
  });
4041
+ if (this.labelId) {
4042
+ this.checkbox[0].setAttribute('aria-labelledby', this.labelId);
4043
+ }
4029
4044
  };
4030
4045
  CheckBoxElement.prototype.addCheckBoxes = function () {
4031
4046
  var _this = this;
@@ -4962,6 +4977,9 @@ var CustomFormatDateFieldElement = /** @class */ (function (_super) {
4962
4977
  if (!this.justPreview) {
4963
4978
  this.initCustomPicker();
4964
4979
  }
4980
+ if (this.labelId) {
4981
+ this.date.setAttribute('aria-labelledby', this.labelId);
4982
+ }
4965
4983
  };
4966
4984
  // events
4967
4985
  CustomFormatDateFieldElement.prototype.change = function ($event) {
@@ -5078,6 +5096,9 @@ var CustomRegularExpressionElement = /** @class */ (function (_super) {
5078
5096
  if (this.placeholder) {
5079
5097
  this.text.setAttribute('placeholder', this.placeholder);
5080
5098
  }
5099
+ if (this.labelId) {
5100
+ this.text.setAttribute('aria-labelledby', this.labelId);
5101
+ }
5081
5102
  };
5082
5103
  // events
5083
5104
  CustomRegularExpressionElement.prototype.change = function ($event) {
@@ -5168,6 +5189,9 @@ var DateFieldElement = /** @class */ (function (_super) {
5168
5189
  if (this.initialValue) {
5169
5190
  this.value = this.initialValue;
5170
5191
  }
5192
+ if (this.labelId) {
5193
+ this.date.setAttribute('aria-labelledby', this.labelId);
5194
+ }
5171
5195
  };
5172
5196
  // events
5173
5197
  DateFieldElement.prototype.change = function ($event) {
@@ -5264,6 +5288,9 @@ var DropDownListElement = /** @class */ (function (_super) {
5264
5288
  this.value = this.initialValue;
5265
5289
  }
5266
5290
  this.select.addEventListener('change', this.change.bind(this));
5291
+ if (this.labelId) {
5292
+ this.select.setAttribute('aria-labelledby', this.labelId);
5293
+ }
5267
5294
  };
5268
5295
  DropDownListElement.prototype.addOptions = function () {
5269
5296
  var _this = this;
@@ -5411,6 +5438,9 @@ var EmailFieldElement = /** @class */ (function (_super) {
5411
5438
  if (this.initialValue) {
5412
5439
  this.value = this.initialValue;
5413
5440
  }
5441
+ if (this.labelId) {
5442
+ this.email.setAttribute('aria-labelledby', this.labelId);
5443
+ }
5414
5444
  };
5415
5445
  // events
5416
5446
  EmailFieldElement.prototype.change = function ($event) {
@@ -5544,6 +5574,9 @@ var FileFieldElement = /** @class */ (function (_super) {
5544
5574
  if (this.multi) {
5545
5575
  this.file.setAttribute('multiple', '');
5546
5576
  }
5577
+ if (this.labelId) {
5578
+ this.file.setAttribute('aria-labelledby', this.labelId);
5579
+ }
5547
5580
  };
5548
5581
  // events
5549
5582
  FileFieldElement.prototype.change = function ($event) {
@@ -5835,6 +5868,9 @@ var IdentificationElement = /** @class */ (function (_super) {
5835
5868
  this.text.setAttribute('required', '');
5836
5869
  }
5837
5870
  this.type = this.typeSelector.value;
5871
+ if (this.labelId) {
5872
+ this.text.setAttribute('aria-labelledby', this.labelId);
5873
+ }
5838
5874
  };
5839
5875
  // events
5840
5876
  IdentificationElement.prototype.change = function ($event) {
@@ -5944,6 +5980,9 @@ var IntPhoneFieldElement = /** @class */ (function (_super) {
5944
5980
  this.phone.setAttribute('placeholder', this.placeholder);
5945
5981
  this.intlTelInput.options.autoPlaceholder = 'off';
5946
5982
  }
5983
+ if (this.labelId) {
5984
+ this.phone.setAttribute('aria-labelledby', this.labelId);
5985
+ }
5947
5986
  };
5948
5987
  IntPhoneFieldElement.prototype.setIntlTelInput = function () {
5949
5988
  var _this = this;
@@ -6083,6 +6122,9 @@ var NumericFieldElement = /** @class */ (function (_super) {
6083
6122
  if (this.initialValue) {
6084
6123
  this.value = this.initialValue;
6085
6124
  }
6125
+ if (this.labelId) {
6126
+ this.number.setAttribute('aria-labelledby', this.labelId);
6127
+ }
6086
6128
  };
6087
6129
  // events
6088
6130
  NumericFieldElement.prototype.change = function ($event) {
@@ -6179,6 +6221,9 @@ var RadioButtonGroupElement = /** @class */ (function (_super) {
6179
6221
  if (this.initialValue) {
6180
6222
  this.value = this.initialValue;
6181
6223
  }
6224
+ if (this.labelId) {
6225
+ this.radioButton[0].setAttribute('aria-labelledby', this.labelId);
6226
+ }
6182
6227
  };
6183
6228
  RadioButtonGroupElement.prototype.addRadioButtons = function () {
6184
6229
  var _this = this;
@@ -6274,6 +6319,9 @@ var SECompanyRegistrationElement = /** @class */ (function (_super) {
6274
6319
  if (this.initialValue) {
6275
6320
  this.value = this.initialValue;
6276
6321
  }
6322
+ if (this.labelId) {
6323
+ this.text.setAttribute('aria-labelledby', this.labelId);
6324
+ }
6277
6325
  };
6278
6326
  // events
6279
6327
  SECompanyRegistrationElement.prototype.change = function ($event) {
@@ -6361,6 +6409,9 @@ var SEPersonalNumberElement = /** @class */ (function (_super) {
6361
6409
  if (this.initialValue) {
6362
6410
  this.value = this.initialValue;
6363
6411
  }
6412
+ if (this.labelId) {
6413
+ this.text.setAttribute('aria-labelledby', this.labelId);
6414
+ }
6364
6415
  };
6365
6416
  // events
6366
6417
  SEPersonalNumberElement.prototype.change = function ($event) {
@@ -6448,6 +6499,9 @@ var TextAreaElement = /** @class */ (function (_super) {
6448
6499
  if (this.initialValue) {
6449
6500
  this.value = this.initialValue;
6450
6501
  }
6502
+ if (this.labelId) {
6503
+ this.text.setAttribute('aria-labelledby', this.labelId);
6504
+ }
6451
6505
  };
6452
6506
  // events
6453
6507
  TextAreaElement.prototype.change = function ($event) {
@@ -6535,6 +6589,9 @@ var TextFieldElement = /** @class */ (function (_super) {
6535
6589
  if (this.initialValue) {
6536
6590
  this.value = this.initialValue;
6537
6591
  }
6592
+ if (this.labelId) {
6593
+ this.text.setAttribute('aria-labelledby', this.labelId);
6594
+ }
6538
6595
  };
6539
6596
  // events
6540
6597
  TextFieldElement.prototype.change = function ($event) {
@@ -6652,6 +6709,9 @@ var TypeAheadElement = /** @class */ (function (_super) {
6652
6709
  if (this.initialValue) {
6653
6710
  this.value = this.initialValue;
6654
6711
  }
6712
+ if (this.labelId) {
6713
+ this.textInputElement.setAttribute('aria-labelledby', this.labelId);
6714
+ }
6655
6715
  this.textInputElement.addEventListener('change', this.change.bind(this));
6656
6716
  this.textInputElement.addEventListener('input', function () {
6657
6717
  _this.inputEventHandler();
@@ -6862,7 +6922,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6862
6922
  _this.onVisibilityChanged = new CustomEvents_1.CustomElementEvent();
6863
6923
  _this.allDependenciesMustBeMet = false;
6864
6924
  _this.multi = false;
6865
- _this.compareVlaues = [];
6925
+ _this.compareValues = [];
6866
6926
  return _this;
6867
6927
  }
6868
6928
  CustomInputElement.prototype.isValueConditionMatched = function (val) {
@@ -6870,7 +6930,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6870
6930
  if (val && Array.isArray(val) && val.length) {
6871
6931
  var result_1 = false;
6872
6932
  val.forEach(function (element) {
6873
- var elementMatched = _this.compareVlaues.findIndex(function (x) { return x == element; }) !== -1;
6933
+ var elementMatched = _this.compareValues.findIndex(function (x) { return x == element; }) !== -1;
6874
6934
  if (elementMatched) {
6875
6935
  result_1 = true;
6876
6936
  return;
@@ -6878,7 +6938,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6878
6938
  });
6879
6939
  return result_1;
6880
6940
  }
6881
- return this.compareVlaues.findIndex(function (x) { return x == val; }) !== -1;
6941
+ return this.compareValues.findIndex(function (x) { return x == val; }) !== -1;
6882
6942
  };
6883
6943
  CustomInputElement.prototype.connectedCallback = function () {
6884
6944
  this.init();
@@ -6918,6 +6978,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6918
6978
  this.customValue = data.value;
6919
6979
  this.dateFormat = data.dateFormat;
6920
6980
  this.initialValue = data.value;
6981
+ this.labelId = data.labelId;
6921
6982
  }
6922
6983
  catch (ex) {
6923
6984
  console.error(ex);
@@ -6945,6 +7006,9 @@ var CustomInputElement = /** @class */ (function (_super) {
6945
7006
  _this.validate();
6946
7007
  }
6947
7008
  });
7009
+ if (this.labelId) {
7010
+ this.createLabelEventListener(this.labelId);
7011
+ }
6948
7012
  };
6949
7013
  CustomInputElement.prototype.setAttributes = function () {
6950
7014
  this.setAttribute("custom-input", "");
@@ -6979,7 +7043,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6979
7043
  var _this = this;
6980
7044
  var element = document.querySelector("[name=\"" + elementName + "\"]");
6981
7045
  if (element instanceof CustomInputElement) {
6982
- element.compareVlaues.push(value);
7046
+ element.compareValues.push(value);
6983
7047
  if (this.dependentOnList.hasOwnProperty(element.name)) {
6984
7048
  return;
6985
7049
  }
@@ -7043,6 +7107,19 @@ var CustomInputElement = /** @class */ (function (_super) {
7043
7107
  this.closest('.custom-validation-target').removeAttribute("hidden");
7044
7108
  }
7045
7109
  };
7110
+ CustomInputElement.prototype.createLabelEventListener = function (labelId) {
7111
+ var _this = this;
7112
+ var label = document.querySelector("[id=\"" + labelId + "\"]");
7113
+ if (label) {
7114
+ label.addEventListener("click", function () {
7115
+ // the input is that have aria-labelledby attribute equal to the this.labelId
7116
+ var input = _this.getChildElement("[aria-labelledby=\"" + labelId + "\"]");
7117
+ if (input) {
7118
+ input.focus();
7119
+ }
7120
+ });
7121
+ }
7122
+ };
7046
7123
  CustomInputElement.prototype.getChildInput = function (selector) {
7047
7124
  var element = this;
7048
7125
  if (this.shadowRoot) {