@luftborn/custom-elements 2.12.8 → 2.13.0

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 +75 -13
  2. package/demo/index.min.js +74 -12
  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 +8 -4
  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 +7 -4
  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 +2 -1
  45. package/dist/framework/CustomInputElement.js +5 -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 +19 -2
  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 +21 -2
  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 +7 -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.label) {
3547
+ this.address.setAttribute('aria-label', this.label);
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.label) {
3752
+ this.regNumber.setAttribute('aria-label', this.label);
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.label) {
3859
+ this.text.setAttribute('aria-label', this.label);
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.label) {
3949
+ this.text.setAttribute('aria-label', this.label);
3950
+ }
3939
3951
  };
3940
3952
  // events
3941
3953
  CVRElement.prototype.change = function ($event) {
@@ -4030,9 +4042,13 @@ var CheckBoxElement = /** @class */ (function (_super) {
4030
4042
  CheckBoxElement.prototype.addCheckBoxes = function () {
4031
4043
  var _this = this;
4032
4044
  var wrapper = _super.prototype.getChildElement.call(this, '.wrapper');
4033
- wrapper.innerHTML = "";
4045
+ var fieldset = wrapper.querySelector('fieldset');
4046
+ if (this.label) {
4047
+ // fieldset.setAttribute('aria-label', this.label);
4048
+ fieldset.insertAdjacentHTML('beforeend', "<legend class=\"sr-only\">" + this.label + "</legend>");
4049
+ }
4034
4050
  this.options.forEach(function (element, index) {
4035
- wrapper.insertAdjacentHTML('beforeend', StringUtil_1.StringUtil.StringFormat(_this.checkboxTemplate, _this.name, element, _this.name + "-" + index));
4051
+ fieldset.insertAdjacentHTML('beforeend', StringUtil_1.StringUtil.StringFormat(_this.checkboxTemplate, _this.name, element, _this.name + "-" + index));
4036
4052
  });
4037
4053
  };
4038
4054
  // events
@@ -4047,8 +4063,8 @@ var CheckBoxElement = /** @class */ (function (_super) {
4047
4063
  CheckBoxElement = __decorate([
4048
4064
  (0, custom_element_decorator_1.default)({
4049
4065
  selector: 'checkbox-element',
4050
- template: "\n\t\t\t<div class=\"wrapper\">\n\t\t\t</div>",
4051
- style: "\n\t\t\t:host{\n\t\t\t\twidth:100%;\n\t\t\t}\n\t\t\t.checkbox {\n\t\t\t\twidth: auto;\n\t\t\t\tmargin: auto 3px;\n\t\t\t\tcolor: rgba(72, 72, 72, 0.75);\n\t\t\t\tfont-size: 13px;\n\t\t\t}\n\t\t\tinput[type='checkbox']{\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: auto !important;\n\t\t\t\tborder: none;\n\t\t\t\tbackground-color: #f1f4ff;\n\t\t\t\tmargin: 2px;\n\t\t\t\tresize: none;\n\t\t\t}\n\t\t",
4066
+ template: "\n\t\t\t<div class=\"wrapper\">\n\t\t\t\t<fieldset></fieldset>\n\t\t\t</div>",
4067
+ style: "\n\t\t\t:host{\n\t\t\t\twidth:100%;\n\t\t\t}\n\t\t\t.checkbox {\n\t\t\t\twidth: auto;\n\t\t\t\tmargin: auto 3px;\n\t\t\t\tcolor: rgba(72, 72, 72, 0.75);\n\t\t\t\tfont-size: 13px;\n\t\t\t}\n\t\t\tinput[type='checkbox']{\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: auto !important;\n\t\t\t\tborder: none;\n\t\t\t\tbackground-color: #f1f4ff;\n\t\t\t\tmargin: 2px;\n\t\t\t\tresize: none;\n\t\t\t}\n\t\t\t.sr-only:not(:focus):not(:active) {\n\t\t\t\tclip: rect(0 0 0 0); \n\t\t\t\tclip-path: inset(50%);\n\t\t\t\theight: 1px;\n\t\t\t\toverflow: hidden;\n\t\t\t\tposition: absolute;\n\t\t\t\twhite-space: nowrap; \n\t\t\t\twidth: 1px;\n\t\t\t}\n\t\t",
4052
4068
  useShadow: true,
4053
4069
  })
4054
4070
  ], CheckBoxElement);
@@ -4962,6 +4978,9 @@ var CustomFormatDateFieldElement = /** @class */ (function (_super) {
4962
4978
  if (!this.justPreview) {
4963
4979
  this.initCustomPicker();
4964
4980
  }
4981
+ if (this.label) {
4982
+ this.date.setAttribute('aria-label', this.label);
4983
+ }
4965
4984
  };
4966
4985
  // events
4967
4986
  CustomFormatDateFieldElement.prototype.change = function ($event) {
@@ -5078,6 +5097,9 @@ var CustomRegularExpressionElement = /** @class */ (function (_super) {
5078
5097
  if (this.placeholder) {
5079
5098
  this.text.setAttribute('placeholder', this.placeholder);
5080
5099
  }
5100
+ if (this.label) {
5101
+ this.text.setAttribute('aria-label', this.label);
5102
+ }
5081
5103
  };
5082
5104
  // events
5083
5105
  CustomRegularExpressionElement.prototype.change = function ($event) {
@@ -5168,6 +5190,9 @@ var DateFieldElement = /** @class */ (function (_super) {
5168
5190
  if (this.initialValue) {
5169
5191
  this.value = this.initialValue;
5170
5192
  }
5193
+ if (this.label) {
5194
+ this.date.setAttribute('aria-label', this.label);
5195
+ }
5171
5196
  };
5172
5197
  // events
5173
5198
  DateFieldElement.prototype.change = function ($event) {
@@ -5264,6 +5289,9 @@ var DropDownListElement = /** @class */ (function (_super) {
5264
5289
  this.value = this.initialValue;
5265
5290
  }
5266
5291
  this.select.addEventListener('change', this.change.bind(this));
5292
+ if (this.label) {
5293
+ this.select.setAttribute('aria-label', this.label);
5294
+ }
5267
5295
  };
5268
5296
  DropDownListElement.prototype.addOptions = function () {
5269
5297
  var _this = this;
@@ -5411,6 +5439,9 @@ var EmailFieldElement = /** @class */ (function (_super) {
5411
5439
  if (this.initialValue) {
5412
5440
  this.value = this.initialValue;
5413
5441
  }
5442
+ if (this.label) {
5443
+ this.email.setAttribute('aria-label', this.label);
5444
+ }
5414
5445
  };
5415
5446
  // events
5416
5447
  EmailFieldElement.prototype.change = function ($event) {
@@ -5544,6 +5575,9 @@ var FileFieldElement = /** @class */ (function (_super) {
5544
5575
  if (this.multi) {
5545
5576
  this.file.setAttribute('multiple', '');
5546
5577
  }
5578
+ if (this.label) {
5579
+ this.file.setAttribute('aria-label', this.label);
5580
+ }
5547
5581
  };
5548
5582
  // events
5549
5583
  FileFieldElement.prototype.change = function ($event) {
@@ -5835,6 +5869,9 @@ var IdentificationElement = /** @class */ (function (_super) {
5835
5869
  this.text.setAttribute('required', '');
5836
5870
  }
5837
5871
  this.type = this.typeSelector.value;
5872
+ if (this.label) {
5873
+ this.text.setAttribute('aria-label', this.label);
5874
+ }
5838
5875
  };
5839
5876
  // events
5840
5877
  IdentificationElement.prototype.change = function ($event) {
@@ -5944,6 +5981,9 @@ var IntPhoneFieldElement = /** @class */ (function (_super) {
5944
5981
  this.phone.setAttribute('placeholder', this.placeholder);
5945
5982
  this.intlTelInput.options.autoPlaceholder = 'off';
5946
5983
  }
5984
+ if (this.label) {
5985
+ this.phone.setAttribute('aria-label', this.label);
5986
+ }
5947
5987
  };
5948
5988
  IntPhoneFieldElement.prototype.setIntlTelInput = function () {
5949
5989
  var _this = this;
@@ -6083,6 +6123,9 @@ var NumericFieldElement = /** @class */ (function (_super) {
6083
6123
  if (this.initialValue) {
6084
6124
  this.value = this.initialValue;
6085
6125
  }
6126
+ if (this.label) {
6127
+ this.number.setAttribute('aria-label', this.label);
6128
+ }
6086
6129
  };
6087
6130
  // events
6088
6131
  NumericFieldElement.prototype.change = function ($event) {
@@ -6183,9 +6226,12 @@ var RadioButtonGroupElement = /** @class */ (function (_super) {
6183
6226
  RadioButtonGroupElement.prototype.addRadioButtons = function () {
6184
6227
  var _this = this;
6185
6228
  var wrapper = _super.prototype.getChildElement.call(this, '.wrapper');
6186
- wrapper.innerHTML = "";
6229
+ var fieldset = wrapper.querySelector('fieldset');
6230
+ if (this.label) {
6231
+ fieldset.insertAdjacentHTML('beforeend', "<legend class=\"sr-only\">" + this.label + "</legend>");
6232
+ }
6187
6233
  this.options.forEach(function (element, index) {
6188
- wrapper.insertAdjacentHTML('beforeend', StringUtil_1.StringUtil.StringFormat(_this.radioButtonTemplate, _this.name, element, _this.name + "-" + index, "" + (_this.required ? 'required' : '')));
6234
+ fieldset.insertAdjacentHTML('beforeend', StringUtil_1.StringUtil.StringFormat(_this.radioButtonTemplate, _this.name, element, _this.name + "-" + index, "" + (_this.required ? 'required' : '')));
6189
6235
  });
6190
6236
  };
6191
6237
  // events
@@ -6200,8 +6246,8 @@ var RadioButtonGroupElement = /** @class */ (function (_super) {
6200
6246
  RadioButtonGroupElement = __decorate([
6201
6247
  (0, custom_element_decorator_1.default)({
6202
6248
  selector: 'radio-group-element',
6203
- template: "\n\t\t\t<div class=\"wrapper\">\n\t\t\t</div>",
6204
- style: "\n\t\t\t:host{\n\t\t\t\twidth:100%;\n\t\t\t}\n\t\t\t.radio-button {\n\t\t\t\twidth: auto;\n\t\t\t\tmargin: auto 3px;\n\t\t\t\tcolor: rgba(72, 72, 72, 0.75);\n\t\t\t\tfont-size: 13px;\n\t\t\t}\n\t\t\tinput{\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: auto !important;\n\t\t\t\tborder: none;\n\t\t\t\tbackground-color: #f1f4ff;\n\t\t\t\tmargin: 2px;\n\t\t\t\tresize: none;\n\t\t\t}\n\t\t",
6249
+ template: "\n\t\t\t<div class=\"wrapper\">\n\t\t\t\t<fieldset></fieldset>\n\t\t\t</div>",
6250
+ style: "\n\t\t\t:host{\n\t\t\t\twidth:100%;\n\t\t\t}\n\t\t\t.radio-button {\n\t\t\t\twidth: auto;\n\t\t\t\tmargin: auto 3px;\n\t\t\t\tcolor: rgba(72, 72, 72, 0.75);\n\t\t\t\tfont-size: 13px;\n\t\t\t}\n\t\t\tinput{\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\twidth: auto !important;\n\t\t\t\tborder: none;\n\t\t\t\tbackground-color: #f1f4ff;\n\t\t\t\tmargin: 2px;\n\t\t\t\tresize: none;\n\t\t\t}\n\t\t\t.sr-only:not(:focus):not(:active) {\n\t\t\t\tclip: rect(0 0 0 0); \n\t\t\t\tclip-path: inset(50%);\n\t\t\t\theight: 1px;\n\t\t\t\toverflow: hidden;\n\t\t\t\tposition: absolute;\n\t\t\t\twhite-space: nowrap; \n\t\t\t\twidth: 1px;\n\t\t\t}\n\t\t\tfieldset {\n\t\t\t\tborder: none;\n\t\t\t}\n\t\t",
6205
6251
  useShadow: true,
6206
6252
  })
6207
6253
  ], RadioButtonGroupElement);
@@ -6274,6 +6320,9 @@ var SECompanyRegistrationElement = /** @class */ (function (_super) {
6274
6320
  if (this.initialValue) {
6275
6321
  this.value = this.initialValue;
6276
6322
  }
6323
+ if (this.label) {
6324
+ this.text.setAttribute('aria-label', this.label);
6325
+ }
6277
6326
  };
6278
6327
  // events
6279
6328
  SECompanyRegistrationElement.prototype.change = function ($event) {
@@ -6361,6 +6410,9 @@ var SEPersonalNumberElement = /** @class */ (function (_super) {
6361
6410
  if (this.initialValue) {
6362
6411
  this.value = this.initialValue;
6363
6412
  }
6413
+ if (this.label) {
6414
+ this.text.setAttribute('aria-label', this.label);
6415
+ }
6364
6416
  };
6365
6417
  // events
6366
6418
  SEPersonalNumberElement.prototype.change = function ($event) {
@@ -6448,6 +6500,9 @@ var TextAreaElement = /** @class */ (function (_super) {
6448
6500
  if (this.initialValue) {
6449
6501
  this.value = this.initialValue;
6450
6502
  }
6503
+ if (this.label) {
6504
+ this.text.setAttribute('aria-label', this.label);
6505
+ }
6451
6506
  };
6452
6507
  // events
6453
6508
  TextAreaElement.prototype.change = function ($event) {
@@ -6535,6 +6590,9 @@ var TextFieldElement = /** @class */ (function (_super) {
6535
6590
  if (this.initialValue) {
6536
6591
  this.value = this.initialValue;
6537
6592
  }
6593
+ if (this.label) {
6594
+ this.text.setAttribute('aria-label', this.label);
6595
+ }
6538
6596
  };
6539
6597
  // events
6540
6598
  TextFieldElement.prototype.change = function ($event) {
@@ -6652,6 +6710,9 @@ var TypeAheadElement = /** @class */ (function (_super) {
6652
6710
  if (this.initialValue) {
6653
6711
  this.value = this.initialValue;
6654
6712
  }
6713
+ if (this.label) {
6714
+ this.textInputElement.setAttribute('aria-label', this.label);
6715
+ }
6655
6716
  this.textInputElement.addEventListener('change', this.change.bind(this));
6656
6717
  this.textInputElement.addEventListener('input', function () {
6657
6718
  _this.inputEventHandler();
@@ -6862,7 +6923,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6862
6923
  _this.onVisibilityChanged = new CustomEvents_1.CustomElementEvent();
6863
6924
  _this.allDependenciesMustBeMet = false;
6864
6925
  _this.multi = false;
6865
- _this.compareVlaues = [];
6926
+ _this.compareValues = [];
6866
6927
  return _this;
6867
6928
  }
6868
6929
  CustomInputElement.prototype.isValueConditionMatched = function (val) {
@@ -6870,7 +6931,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6870
6931
  if (val && Array.isArray(val) && val.length) {
6871
6932
  var result_1 = false;
6872
6933
  val.forEach(function (element) {
6873
- var elementMatched = _this.compareVlaues.findIndex(function (x) { return x == element; }) !== -1;
6934
+ var elementMatched = _this.compareValues.findIndex(function (x) { return x == element; }) !== -1;
6874
6935
  if (elementMatched) {
6875
6936
  result_1 = true;
6876
6937
  return;
@@ -6878,7 +6939,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6878
6939
  });
6879
6940
  return result_1;
6880
6941
  }
6881
- return this.compareVlaues.findIndex(function (x) { return x == val; }) !== -1;
6942
+ return this.compareValues.findIndex(function (x) { return x == val; }) !== -1;
6882
6943
  };
6883
6944
  CustomInputElement.prototype.connectedCallback = function () {
6884
6945
  this.init();
@@ -6918,6 +6979,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6918
6979
  this.customValue = data.value;
6919
6980
  this.dateFormat = data.dateFormat;
6920
6981
  this.initialValue = data.value;
6982
+ this.label = data.label;
6921
6983
  }
6922
6984
  catch (ex) {
6923
6985
  console.error(ex);
@@ -6979,7 +7041,7 @@ var CustomInputElement = /** @class */ (function (_super) {
6979
7041
  var _this = this;
6980
7042
  var element = document.querySelector("[name=\"" + elementName + "\"]");
6981
7043
  if (element instanceof CustomInputElement) {
6982
- element.compareVlaues.push(value);
7044
+ element.compareValues.push(value);
6983
7045
  if (this.dependentOnList.hasOwnProperty(element.name)) {
6984
7046
  return;
6985
7047
  }