memorial-ui-component-library 1.0.10-beta.1-dev.2861 → 1.0.10-beta.1-dev.3029

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.
@@ -1457,6 +1457,30 @@ module.exports = function (target, TAG, STATIC) {
1457
1457
  };
1458
1458
 
1459
1459
 
1460
+ /***/ }),
1461
+
1462
+ /***/ 706:
1463
+ /***/ (function(module, __unused_webpack_exports, __webpack_require__) {
1464
+
1465
+ "use strict";
1466
+
1467
+ var PROPER_FUNCTION_NAME = (__webpack_require__(350).PROPER);
1468
+ var fails = __webpack_require__(9039);
1469
+ var whitespaces = __webpack_require__(7452);
1470
+
1471
+ var non = '\u200B\u0085\u180E';
1472
+
1473
+ // check that a method works with the correct list
1474
+ // of whitespaces and has a correct name
1475
+ module.exports = function (METHOD_NAME) {
1476
+ return fails(function () {
1477
+ return !!whitespaces[METHOD_NAME]()
1478
+ || non[METHOD_NAME]() !== non
1479
+ || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);
1480
+ });
1481
+ };
1482
+
1483
+
1460
1484
  /***/ }),
1461
1485
 
1462
1486
  /***/ 741:
@@ -52873,6 +52897,26 @@ module.exports = !fails(function () {
52873
52897
  });
52874
52898
 
52875
52899
 
52900
+ /***/ }),
52901
+
52902
+ /***/ 2762:
52903
+ /***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) {
52904
+
52905
+ "use strict";
52906
+
52907
+ var $ = __webpack_require__(6518);
52908
+ var $trim = (__webpack_require__(3802).trim);
52909
+ var forcedStringTrimMethod = __webpack_require__(706);
52910
+
52911
+ // `String.prototype.trim` method
52912
+ // https://tc39.es/ecma262/#sec-string.prototype.trim
52913
+ $({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {
52914
+ trim: function trim() {
52915
+ return $trim(this);
52916
+ }
52917
+ });
52918
+
52919
+
52876
52920
  /***/ }),
52877
52921
 
52878
52922
  /***/ 2777:
@@ -83414,7 +83458,7 @@ if (typeof window !== 'undefined') {
83414
83458
  // Indicate to webpack that this file can be concatenated
83415
83459
  /* harmony default export */ var setPublicPath = (null);
83416
83460
 
83417
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/autocomplete/autocomplete.vue?vue&type=template&id=4b594e89&scoped=true
83461
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/autocomplete/autocomplete.vue?vue&type=template&id=8c8331fc&scoped=true
83418
83462
  var render = function render() {
83419
83463
  var _vm = this,
83420
83464
  _c = _vm._self._c,
@@ -96344,10 +96388,10 @@ AutoComplete = __decorate([vue_class_component_esm({
96344
96388
  /* harmony default export */ var autocompletevue_type_script_lang_ts = (AutoComplete);
96345
96389
  ;// ./src/components/lib/autocomplete/autocomplete.vue?vue&type=script&lang=ts
96346
96390
  /* harmony default export */ var autocomplete_autocompletevue_type_script_lang_ts = (autocompletevue_type_script_lang_ts);
96347
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/autocomplete/autocomplete.vue?vue&type=style&index=0&id=4b594e89&prod&lang=scss&scoped=true
96391
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/autocomplete/autocomplete.vue?vue&type=style&index=0&id=8c8331fc&prod&lang=scss&scoped=true
96348
96392
  // extracted by mini-css-extract-plugin
96349
96393
 
96350
- ;// ./src/components/lib/autocomplete/autocomplete.vue?vue&type=style&index=0&id=4b594e89&prod&lang=scss&scoped=true
96394
+ ;// ./src/components/lib/autocomplete/autocomplete.vue?vue&type=style&index=0&id=8c8331fc&prod&lang=scss&scoped=true
96351
96395
 
96352
96396
  ;// ./src/components/lib/autocomplete/autocomplete.vue
96353
96397
 
@@ -96364,7 +96408,7 @@ var autocomplete_component = normalizeComponent(
96364
96408
  staticRenderFns,
96365
96409
  false,
96366
96410
  null,
96367
- "4b594e89",
96411
+ "8c8331fc",
96368
96412
  null
96369
96413
 
96370
96414
  )
@@ -96380,8 +96424,8 @@ autocomplete_autocomplete.install = function (vue) {
96380
96424
  };
96381
96425
 
96382
96426
  /* harmony default export */ var lib_autocomplete = (autocomplete_autocomplete);
96383
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/button/button.vue?vue&type=template&id=5c3d666a&scoped=true
96384
- var buttonvue_type_template_id_5c3d666a_scoped_true_render = function render() {
96427
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/button/button.vue?vue&type=template&id=1a0959d4&scoped=true
96428
+ var buttonvue_type_template_id_1a0959d4_scoped_true_render = function render() {
96385
96429
  var _vm = this,
96386
96430
  _c = _vm._self._c,
96387
96431
  _setup = _vm._self._setupProxy;
@@ -96395,6 +96439,7 @@ var buttonvue_type_template_id_5c3d666a_scoped_true_render = function render() {
96395
96439
  reverse: _vm.iconConfig.pos === 'right'
96396
96440
  }],
96397
96441
  attrs: {
96442
+ "role": "button",
96398
96443
  "type": _vm.buttonType,
96399
96444
  "aria-label": !_vm.hasLabel ? _vm.label : null
96400
96445
  }
@@ -96412,7 +96457,7 @@ var buttonvue_type_template_id_5c3d666a_scoped_true_render = function render() {
96412
96457
  return [_vm.submit ? [_vm._v(" Submit ")] : _vm.reset ? [_vm._v(" Reset ")] : _vm._e()];
96413
96458
  })], 2)]);
96414
96459
  };
96415
- var buttonvue_type_template_id_5c3d666a_scoped_true_staticRenderFns = [];
96460
+ var buttonvue_type_template_id_1a0959d4_scoped_true_staticRenderFns = [];
96416
96461
 
96417
96462
  ;// ./node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js
96418
96463
 
@@ -96647,10 +96692,10 @@ Button = __decorate([vue_class_component_esm({
96647
96692
  /* harmony default export */ var buttonvue_type_script_lang_ts = (Button);
96648
96693
  ;// ./src/components/lib/button/button.vue?vue&type=script&lang=ts
96649
96694
  /* harmony default export */ var button_buttonvue_type_script_lang_ts = (buttonvue_type_script_lang_ts);
96650
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/button/button.vue?vue&type=style&index=0&id=5c3d666a&prod&lang=scss&scoped=true
96695
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/button/button.vue?vue&type=style&index=0&id=1a0959d4&prod&lang=scss&scoped=true
96651
96696
  // extracted by mini-css-extract-plugin
96652
96697
 
96653
- ;// ./src/components/lib/button/button.vue?vue&type=style&index=0&id=5c3d666a&prod&lang=scss&scoped=true
96698
+ ;// ./src/components/lib/button/button.vue?vue&type=style&index=0&id=1a0959d4&prod&lang=scss&scoped=true
96654
96699
 
96655
96700
  ;// ./src/components/lib/button/button.vue
96656
96701
 
@@ -96663,11 +96708,11 @@ Button = __decorate([vue_class_component_esm({
96663
96708
 
96664
96709
  var button_component = normalizeComponent(
96665
96710
  button_buttonvue_type_script_lang_ts,
96666
- buttonvue_type_template_id_5c3d666a_scoped_true_render,
96667
- buttonvue_type_template_id_5c3d666a_scoped_true_staticRenderFns,
96711
+ buttonvue_type_template_id_1a0959d4_scoped_true_render,
96712
+ buttonvue_type_template_id_1a0959d4_scoped_true_staticRenderFns,
96668
96713
  false,
96669
96714
  null,
96670
- "5c3d666a",
96715
+ "1a0959d4",
96671
96716
  null
96672
96717
 
96673
96718
  )
@@ -96824,10 +96869,10 @@ card_card.install = function (vue) {
96824
96869
  };
96825
96870
 
96826
96871
  /* harmony default export */ var lib_card = (card_card);
96827
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/checkbox/checkbox.vue?vue&type=template&id=d44e7282&scoped=true
96872
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/checkbox/checkbox.vue?vue&type=template&id=1d20088f&scoped=true
96828
96873
 
96829
96874
 
96830
- var checkboxvue_type_template_id_d44e7282_scoped_true_render = function render() {
96875
+ var checkboxvue_type_template_id_1d20088f_scoped_true_render = function render() {
96831
96876
  var _vm = this,
96832
96877
  _c = _vm._self._c,
96833
96878
  _setup = _vm._self._setupProxy;
@@ -96913,9 +96958,9 @@ var checkboxvue_type_template_id_d44e7282_scoped_true_render = function render()
96913
96958
  return [_vm._v(" " + _vm._s(_vm.value) + " ")];
96914
96959
  })], 2)])]);
96915
96960
  };
96916
- var checkboxvue_type_template_id_d44e7282_scoped_true_staticRenderFns = [];
96961
+ var checkboxvue_type_template_id_1d20088f_scoped_true_staticRenderFns = [];
96917
96962
 
96918
- ;// ./src/components/lib/checkbox/checkbox.vue?vue&type=template&id=d44e7282&scoped=true
96963
+ ;// ./src/components/lib/checkbox/checkbox.vue?vue&type=template&id=1d20088f&scoped=true
96919
96964
 
96920
96965
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-86.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/checkbox/checkbox.vue?vue&type=script&lang=ts
96921
96966
 
@@ -97051,10 +97096,10 @@ CheckBox = __decorate([vue_class_component_esm({
97051
97096
  /* harmony default export */ var checkboxvue_type_script_lang_ts = (CheckBox);
97052
97097
  ;// ./src/components/lib/checkbox/checkbox.vue?vue&type=script&lang=ts
97053
97098
  /* harmony default export */ var checkbox_checkboxvue_type_script_lang_ts = (checkboxvue_type_script_lang_ts);
97054
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/checkbox/checkbox.vue?vue&type=style&index=0&id=d44e7282&prod&lang=scss&scoped=true
97099
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/checkbox/checkbox.vue?vue&type=style&index=0&id=1d20088f&prod&lang=scss&scoped=true
97055
97100
  // extracted by mini-css-extract-plugin
97056
97101
 
97057
- ;// ./src/components/lib/checkbox/checkbox.vue?vue&type=style&index=0&id=d44e7282&prod&lang=scss&scoped=true
97102
+ ;// ./src/components/lib/checkbox/checkbox.vue?vue&type=style&index=0&id=1d20088f&prod&lang=scss&scoped=true
97058
97103
 
97059
97104
  ;// ./src/components/lib/checkbox/checkbox.vue
97060
97105
 
@@ -97067,11 +97112,11 @@ CheckBox = __decorate([vue_class_component_esm({
97067
97112
 
97068
97113
  var checkbox_component = normalizeComponent(
97069
97114
  checkbox_checkboxvue_type_script_lang_ts,
97070
- checkboxvue_type_template_id_d44e7282_scoped_true_render,
97071
- checkboxvue_type_template_id_d44e7282_scoped_true_staticRenderFns,
97115
+ checkboxvue_type_template_id_1d20088f_scoped_true_render,
97116
+ checkboxvue_type_template_id_1d20088f_scoped_true_staticRenderFns,
97072
97117
  false,
97073
97118
  null,
97074
- "d44e7282",
97119
+ "1d20088f",
97075
97120
  null
97076
97121
 
97077
97122
  )
@@ -98178,36 +98223,54 @@ var Dialog = /*#__PURE__*/function (_Vue) {
98178
98223
  value: function () {
98179
98224
  var _cancel = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3(message) {
98180
98225
  var _this3 = this;
98226
+ var _safeMessage, isNormalCancellation, safeMessage;
98181
98227
  return _regeneratorRuntime().wrap(function _callee3$(_context3) {
98182
98228
  while (1) switch (_context3.prev = _context3.next) {
98183
98229
  case 0:
98184
98230
  _context3.prev = 0;
98185
98231
  if (!(this.hooks && this.hooks.cancel)) {
98186
- _context3.next = 4;
98232
+ _context3.next = 5;
98187
98233
  break;
98188
98234
  }
98189
- _context3.next = 4;
98190
- return Promise.resolve(this.hooks.cancel(message));
98191
- case 4:
98192
- _context3.next = 10;
98235
+ // Make sure we pass a safe value to hooks
98236
+ _safeMessage = message || new Error('Dialog cancelled');
98237
+ _context3.next = 5;
98238
+ return Promise.resolve(this.hooks.cancel(_safeMessage));
98239
+ case 5:
98240
+ _context3.next = 12;
98193
98241
  break;
98194
- case 6:
98195
- _context3.prev = 6;
98242
+ case 7:
98243
+ _context3.prev = 7;
98196
98244
  _context3.t0 = _context3["catch"](0);
98197
- if (!(!(message instanceof Error) || message.message !== 'Cancelled')) {
98198
- _context3.next = 10;
98245
+ // Simplified error handling with safer checks
98246
+ isNormalCancellation = message instanceof Error && message.message === 'Cancelled';
98247
+ if (isNormalCancellation) {
98248
+ _context3.next = 12;
98199
98249
  break;
98200
98250
  }
98201
98251
  return _context3.abrupt("return", this.error(String(_context3.t0)));
98202
- case 10:
98252
+ case 12:
98253
+ // Convert undefined to an error with descriptive message
98254
+ if (message === undefined) {
98255
+ safeMessage = new Error('Dialog cancelled');
98256
+ }
98257
+ // Keep string as is
98258
+ else if (typeof message === 'string') {
98259
+ safeMessage = message;
98260
+ }
98261
+ // Keep Error as is
98262
+ else {
98263
+ safeMessage = message;
98264
+ }
98265
+ // Use the safe message value in emits
98203
98266
  this.container.$emit('begin_teardown', 'cancel', function () {
98204
- return _this3.container.$emit('cancel', message);
98267
+ _this3.container.$emit('cancel', safeMessage);
98205
98268
  });
98206
- case 11:
98269
+ case 14:
98207
98270
  case "end":
98208
98271
  return _context3.stop();
98209
98272
  }
98210
- }, _callee3, this, [[0, 6]]);
98273
+ }, _callee3, this, [[0, 7]]);
98211
98274
  }));
98212
98275
  function cancel(_x2) {
98213
98276
  return _cancel.apply(this, arguments);
@@ -98323,7 +98386,7 @@ var dividervue_type_template_id_24d8bbe8_staticRenderFns = [];
98323
98386
 
98324
98387
  ;// ./src/assets/scss/_variables.module.scss
98325
98388
  // extracted by mini-css-extract-plugin
98326
- /* harmony default export */ var _variables_module = ({"paddingPx":"10","colorWhite":"#fff","colorBlack":"#000","colorPrimary":"#00284f","colorGreenPrimary":"#1e8366","colorYellowPrimary":"#ffdd9a","colorGreyPrimary":"#e7e7e7","colorGreySecondary":"#9fa7b3","colorGreyAccent":"rgb(207.9,207.9,207.9)","colorComponentBG":"#e7e7e7","fade-01-enter-active":"HqI5Ku11bM8IzFGOJSjy","fade-01-leave-active":"tHpJlz6JSoYOk8Pb2LxE","fade-01-enter":"L7OX8yvKUS0RB3CI8asV","fade-01-leave-to":"ZD1qqlteP6E7dHEU25Au","fade-02-enter-active":"DUeAGgExUS0EX8Yz_AUt","fade-02-leave-active":"fGZQqjZ0Np0dFk6biWUg","fade-02-enter":"aqRLp8sG5lgUOxRNNXgA","fade-02-leave-to":"GVWwniAPacYqhXud9LtA","fade-03-enter-active":"S6QNs4FTQR4ZIef8mayI","fade-03-leave-active":"RTAepTAOeZoqnrUG4Lb1","fade-03-enter":"LG4SDt_RDY4nfTpaAbUQ","fade-03-leave-to":"ObDXHtIndgUsOVybZeGQ","rotate-01-enter-active":"orTAUl6xnwDua3njCa_C","rotate-01-leave-active":"L1IiwkrL5EhPHJP9heSy","rotate-01-enter":"Z7ShV1I6UEvAozUXiqPc","rotate-01-leave-to":"LUn2e4DcXU0vRKrODBoK","rotate-02-enter-active":"jlwta8kjHYW66ZTPc_jc","rotate-02-leave-active":"ZZEVG6QLDQEj9ndbMr80","rotate-02-enter":"awY4HZw6EWIFwEHuf7ST","rotate-02-leave-to":"lI6UeLCtB5M4In431dE8","rotate-03-enter-active":"Iui3TkdwDOA6IYXIhgBp","rotate-03-leave-active":"hPdNrNPCw7Q0yGBKHj4U","rotate-03-enter":"AHzSaqYw28wOkw7ppHoj","rotate-03-leave-to":"uTAESBS_mvAgogq4aqGK","sd-card__header":"zACRq4mA0HsuQS03zXTb","sd-dialog__title":"DCs8OqzTFpcfkmTxueRA","sd-tabs__item":"rbD8u7a3ri4tp40V3oUg","sd-form-item__label":"AzR1FSGJVQ9MZ8qAMZbQ","sd-button":"sZqRw5BRKb8nn1P25WHO","sd-popout-menu__trigger":"MC3fygPo3QIOYcvBNgfB","sd-input":"RDrCTy3faS4gmdkoGc25","sd-select":"ViCENS8nD0upb0sd83cv","sd-radio__label":"zupQy6cRRpgULJRCDwNs","sd-checkbox__label":"oZ8UPPkyvAEAwghWg1NL","sd-form-item__content":"kMA0bGes8J4nExhsnd9b","sd-form-item__description":"yy5bcVmkK30vuNz4Uu6D","sd-autocomplete__suggestion":"uCjzG4tbpJglxalIM4Sa","sd-select-option":"JSLEnczQyLseIt4AMkhK","sd-form-item__error":"yX7A1R1CrYcM3fq9ychu","font-regular":"xqBkIWnQf546dZ_2tGQj","font-medium":"Lu0JxO5KHAI2F8LVNbzA","font-semibold":"wfluSRIPh5oy8wirDSwe","font-bold":"QbgyHUFC0DcvcuzlKop6","aria-instructions-hidden":"RwpAhDOE3xMcS18_RBRf"});
98389
+ /* harmony default export */ var _variables_module = ({"paddingPx":"10","colorWhite":"#fff","colorBlack":"#000","colorPrimary":"#00284f","colorGreenPrimary":"#1e8366","colorYellowPrimary":"#ffdd9a","colorGreyPrimary":"#e7e7e7","colorGreySecondary":"#9fa7b3","colorGreyAccent":"rgb(207.9,207.9,207.9)","colorComponentBG":"#e7e7e7","focus":"bc0hDsNwP8ocSBlzi1A7","fade-01-enter-active":"HqI5Ku11bM8IzFGOJSjy","fade-01-leave-active":"tHpJlz6JSoYOk8Pb2LxE","fade-01-enter":"L7OX8yvKUS0RB3CI8asV","fade-01-leave-to":"ZD1qqlteP6E7dHEU25Au","fade-02-enter-active":"DUeAGgExUS0EX8Yz_AUt","fade-02-leave-active":"fGZQqjZ0Np0dFk6biWUg","fade-02-enter":"aqRLp8sG5lgUOxRNNXgA","fade-02-leave-to":"GVWwniAPacYqhXud9LtA","fade-03-enter-active":"S6QNs4FTQR4ZIef8mayI","fade-03-leave-active":"RTAepTAOeZoqnrUG4Lb1","fade-03-enter":"LG4SDt_RDY4nfTpaAbUQ","fade-03-leave-to":"ObDXHtIndgUsOVybZeGQ","rotate-01-enter-active":"orTAUl6xnwDua3njCa_C","rotate-01-leave-active":"L1IiwkrL5EhPHJP9heSy","rotate-01-enter":"Z7ShV1I6UEvAozUXiqPc","rotate-01-leave-to":"LUn2e4DcXU0vRKrODBoK","rotate-02-enter-active":"jlwta8kjHYW66ZTPc_jc","rotate-02-leave-active":"ZZEVG6QLDQEj9ndbMr80","rotate-02-enter":"awY4HZw6EWIFwEHuf7ST","rotate-02-leave-to":"lI6UeLCtB5M4In431dE8","rotate-03-enter-active":"Iui3TkdwDOA6IYXIhgBp","rotate-03-leave-active":"hPdNrNPCw7Q0yGBKHj4U","rotate-03-enter":"AHzSaqYw28wOkw7ppHoj","rotate-03-leave-to":"uTAESBS_mvAgogq4aqGK","sd-card__header":"zACRq4mA0HsuQS03zXTb","sd-dialog__title":"DCs8OqzTFpcfkmTxueRA","sd-tabs__item":"rbD8u7a3ri4tp40V3oUg","sd-form-item__label":"AzR1FSGJVQ9MZ8qAMZbQ","sd-button":"sZqRw5BRKb8nn1P25WHO","sd-popout-menu__trigger":"MC3fygPo3QIOYcvBNgfB","menu-pill":"SadOkeiNyfQTTeIrbmcK","sd-input":"RDrCTy3faS4gmdkoGc25","sd-select":"ViCENS8nD0upb0sd83cv","sd-radio__label":"zupQy6cRRpgULJRCDwNs","sd-checkbox__label":"oZ8UPPkyvAEAwghWg1NL","sd-form-item__content":"kMA0bGes8J4nExhsnd9b","sd-form-item__description":"yy5bcVmkK30vuNz4Uu6D","sd-autocomplete__suggestion":"uCjzG4tbpJglxalIM4Sa","sd-select-option":"JSLEnczQyLseIt4AMkhK","sd-form-item__error":"yX7A1R1CrYcM3fq9ychu","font-regular":"xqBkIWnQf546dZ_2tGQj","font-medium":"Lu0JxO5KHAI2F8LVNbzA","font-semibold":"wfluSRIPh5oy8wirDSwe","font-bold":"QbgyHUFC0DcvcuzlKop6","aria-instructions-hidden":"RwpAhDOE3xMcS18_RBRf"});
98327
98390
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-86.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/divider/divider.vue?vue&type=script&lang=ts
98328
98391
 
98329
98392
 
@@ -98729,8 +98792,8 @@ var promptvue_type_template_id_4b20821a_scoped_true_render = function render() {
98729
98792
  };
98730
98793
  var promptvue_type_template_id_4b20821a_scoped_true_staticRenderFns = [];
98731
98794
 
98732
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/input/input.vue?vue&type=template&id=d27e0690&scoped=true
98733
- var inputvue_type_template_id_d27e0690_scoped_true_render = function render() {
98795
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/input/input.vue?vue&type=template&id=21f1dcc6&scoped=true
98796
+ var inputvue_type_template_id_21f1dcc6_scoped_true_render = function render() {
98734
98797
  var _vm = this,
98735
98798
  _c = _vm._self._c,
98736
98799
  _setup = _vm._self._setupProxy;
@@ -98871,7 +98934,7 @@ var inputvue_type_template_id_d27e0690_scoped_true_render = function render() {
98871
98934
  }
98872
98935
  })], 1) : _vm._e()])], 1);
98873
98936
  };
98874
- var inputvue_type_template_id_d27e0690_scoped_true_staticRenderFns = [];
98937
+ var inputvue_type_template_id_21f1dcc6_scoped_true_staticRenderFns = [];
98875
98938
 
98876
98939
  ;// ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
98877
98940
  function arrayWithHoles_arrayWithHoles(r) {
@@ -99217,10 +99280,10 @@ Input = __decorate([vue_class_component_esm({
99217
99280
  /* harmony default export */ var inputvue_type_script_lang_ts = (Input);
99218
99281
  ;// ./src/components/lib/input/input.vue?vue&type=script&lang=ts
99219
99282
  /* harmony default export */ var input_inputvue_type_script_lang_ts = (inputvue_type_script_lang_ts);
99220
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/input/input.vue?vue&type=style&index=0&id=d27e0690&prod&lang=scss&scoped=true
99283
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/input/input.vue?vue&type=style&index=0&id=21f1dcc6&prod&lang=scss&scoped=true
99221
99284
  // extracted by mini-css-extract-plugin
99222
99285
 
99223
- ;// ./src/components/lib/input/input.vue?vue&type=style&index=0&id=d27e0690&prod&lang=scss&scoped=true
99286
+ ;// ./src/components/lib/input/input.vue?vue&type=style&index=0&id=21f1dcc6&prod&lang=scss&scoped=true
99224
99287
 
99225
99288
  ;// ./src/components/lib/input/input.vue
99226
99289
 
@@ -99233,11 +99296,11 @@ Input = __decorate([vue_class_component_esm({
99233
99296
 
99234
99297
  var input_component = normalizeComponent(
99235
99298
  input_inputvue_type_script_lang_ts,
99236
- inputvue_type_template_id_d27e0690_scoped_true_render,
99237
- inputvue_type_template_id_d27e0690_scoped_true_staticRenderFns,
99299
+ inputvue_type_template_id_21f1dcc6_scoped_true_render,
99300
+ inputvue_type_template_id_21f1dcc6_scoped_true_staticRenderFns,
99238
99301
  false,
99239
99302
  null,
99240
- "d27e0690",
99303
+ "21f1dcc6",
99241
99304
  null
99242
99305
 
99243
99306
  )
@@ -99532,22 +99595,37 @@ input_input.install = function (vue) {
99532
99595
  };
99533
99596
 
99534
99597
  /* harmony default export */ var lib_input = (input_input);
99535
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/popout-menu/popout-menu.vue?vue&type=template&id=dc172d08&scoped=true
99536
- var popout_menuvue_type_template_id_dc172d08_scoped_true_render = function render() {
99598
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/popout-menu/popout-menu.vue?vue&type=template&id=15f12367&scoped=true
99599
+ var popout_menuvue_type_template_id_15f12367_scoped_true_render = function render() {
99537
99600
  var _vm = this,
99538
99601
  _c = _vm._self._c,
99539
99602
  _setup = _vm._self._setupProxy;
99540
- return _c('div', [_c('label', {
99541
- staticClass: "popout-menu__label",
99603
+ return _c('div', {
99604
+ class: ['link__menu', {
99605
+ open: _vm.open
99606
+ }],
99542
99607
  attrs: {
99543
- "id": "popout-menu__label",
99544
- "for": 'popout-menu__trigger'
99608
+ "id": _vm.componentId
99545
99609
  }
99546
- }, [_vm._v(" " + _vm._s(_vm.ariaLabel || 'Menu') + " ")]), _c('button', {
99610
+ }, [_c('label', {
99547
99611
  attrs: {
99548
- "id": "popout-menu__trigger",
99612
+ "id": "".concat(_vm.componentId, "__label"),
99613
+ "for": "".concat(_vm.componentId, "__trigger")
99614
+ }
99615
+ }, [_c('button', {
99616
+ directives: [{
99617
+ name: "click-outside",
99618
+ rawName: "v-click-outside",
99619
+ value: function value() {
99620
+ return _vm.setState('closed');
99621
+ },
99622
+ expression: "() => setState('closed')"
99623
+ }],
99624
+ attrs: {
99625
+ "id": "".concat(_vm.componentId, "__trigger"),
99549
99626
  "aria-haspopup": "true",
99550
- "aria-expanded": _vm.open
99627
+ "aria-expanded": _vm.open,
99628
+ "aria-controls": "".concat(_vm.componentId, "__popout")
99551
99629
  },
99552
99630
  on: {
99553
99631
  "click": function click($event) {
@@ -99574,28 +99652,49 @@ var popout_menuvue_type_template_id_dc172d08_scoped_true_render = function rende
99574
99652
  "open": _vm.open,
99575
99653
  "focus": _vm.label_focus,
99576
99654
  "hover": _vm.label_hover
99577
- })], 2), _c('div', {
99578
- directives: [{
99579
- name: "show",
99580
- rawName: "v-show",
99581
- value: _vm.open,
99582
- expression: "open"
99583
- }],
99584
- class: {
99585
- open: _vm.open
99586
- },
99655
+ })], 2)]), _c('div', {
99587
99656
  attrs: {
99588
- "id": "popout-menu",
99589
- "role": "menu",
99590
- "aria-labelledby": 'popout-menu__label'
99657
+ "id": "".concat(_vm.componentId, "__popout"),
99658
+ "aria-labelledby": "".concat(_vm.componentId, "__label"),
99659
+ "inert": !_vm.open
99660
+ },
99661
+ on: {
99662
+ "keydown": [function ($event) {
99663
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "up", 38, $event.key, ["Up", "ArrowUp"])) return null;
99664
+ $event.preventDefault();
99665
+ return _vm.focusPreviousItem.apply(null, arguments);
99666
+ }, function ($event) {
99667
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "down", 40, $event.key, ["Down", "ArrowDown"])) return null;
99668
+ $event.preventDefault();
99669
+ return _vm.focusNextItem.apply(null, arguments);
99670
+ }, function ($event) {
99671
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "home", undefined, $event.key, undefined)) return null;
99672
+ $event.preventDefault();
99673
+ return _vm.focusFirstItem.apply(null, arguments);
99674
+ }, function ($event) {
99675
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "end", undefined, $event.key, undefined)) return null;
99676
+ $event.preventDefault();
99677
+ return _vm.focusLastItem.apply(null, arguments);
99678
+ }, function ($event) {
99679
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "esc", 27, $event.key, ["Esc", "Escape"])) return null;
99680
+ $event.preventDefault();
99681
+ return _vm.setState('closed');
99682
+ }, function ($event) {
99683
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "tab", 9, $event.key, "Tab")) return null;
99684
+ return _vm.setState('closed');
99685
+ }, function ($event) {
99686
+ if (!$event.type.indexOf('key') && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")) return null;
99687
+ $event.preventDefault();
99688
+ return _vm.activateItem.apply(null, arguments);
99689
+ }]
99591
99690
  }
99691
+ }, [_c('div', {
99692
+ staticClass: "popout-menu__content"
99592
99693
  }, [_vm._t("menu", null, {
99593
- "open": _vm.open,
99594
- "ariaHidden": !_vm.open,
99595
- "role": 'menuitem'
99596
- })], 2)]);
99694
+ "open": _vm.open
99695
+ })], 2)])]);
99597
99696
  };
99598
- var popout_menuvue_type_template_id_dc172d08_scoped_true_staticRenderFns = [];
99697
+ var popout_menuvue_type_template_id_15f12367_scoped_true_staticRenderFns = [];
99599
99698
 
99600
99699
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-86.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/popout-menu/popout-menu.vue?vue&type=script&lang=ts
99601
99700
 
@@ -99608,6 +99707,17 @@ var popout_menuvue_type_template_id_dc172d08_scoped_true_staticRenderFns = [];
99608
99707
 
99609
99708
 
99610
99709
 
99710
+
99711
+
99712
+
99713
+
99714
+
99715
+
99716
+
99717
+
99718
+
99719
+ // Counter to generate unique IDs for each menu instance
99720
+ var menuCounter = 0;
99611
99721
  var PopoutMenu = /*#__PURE__*/function (_Vue) {
99612
99722
  function PopoutMenu() {
99613
99723
  var _this;
@@ -99617,13 +99727,23 @@ var PopoutMenu = /*#__PURE__*/function (_Vue) {
99617
99727
  }
99618
99728
  _this = _callSuper(this, PopoutMenu, [].concat(args));
99619
99729
  defineProperty_defineProperty(_this, "ariaLabel", void 0);
99730
+ defineProperty_defineProperty(_this, "id", void 0);
99620
99731
  defineProperty_defineProperty(_this, "isOpen", false);
99621
99732
  defineProperty_defineProperty(_this, "label_focus", false);
99622
99733
  defineProperty_defineProperty(_this, "label_hover", false);
99734
+ defineProperty_defineProperty(_this, "menuItems", []);
99735
+ defineProperty_defineProperty(_this, "uniqueId", menuCounter++);
99623
99736
  return _this;
99624
99737
  }
99625
99738
  _inherits(PopoutMenu, _Vue);
99626
99739
  return createClass_createClass(PopoutMenu, [{
99740
+ key: "componentId",
99741
+ get:
99742
+ // Generate a unique ID for this menu instance
99743
+ function get() {
99744
+ return this.id || "popout-menu-".concat(this.uniqueId);
99745
+ }
99746
+ }, {
99627
99747
  key: "open",
99628
99748
  get: function get() {
99629
99749
  return this.isOpen;
@@ -99631,19 +99751,42 @@ var PopoutMenu = /*#__PURE__*/function (_Vue) {
99631
99751
  }, {
99632
99752
  key: "setState",
99633
99753
  value: function setState(state) {
99754
+ var _this2 = this;
99634
99755
  this.isOpen = state === 'open';
99635
- if (this.open) document.addEventListener('focusin', this.trackFocusElement);else document.removeEventListener('focusin', this.trackFocusElement);
99756
+ if (this.open) {
99757
+ document.addEventListener('focusin', this.trackFocusElement);
99758
+ // Update menu items and prepare for keyboard navigation
99759
+ this.$nextTick(function () {
99760
+ _this2.updateMenuItems();
99761
+ });
99762
+ } else {
99763
+ document.removeEventListener('focusin', this.trackFocusElement);
99764
+ }
99636
99765
  }
99637
99766
  }, {
99638
99767
  key: "toggleMenu",
99639
99768
  value: function toggleMenu() {
99640
- this.setState(this.open ? 'closed' : 'open');
99769
+ var _this3 = this;
99770
+ var useKeyboard = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
99771
+ var newState = this.open ? 'closed' : 'open';
99772
+ this.setState(newState);
99773
+ // Only focus the first item if opened via keyboard
99774
+ if (newState === 'open' && useKeyboard) {
99775
+ this.$nextTick(function () {
99776
+ if (_this3.menuItems.length > 0) {
99777
+ _this3.focusFirstItem();
99778
+ }
99779
+ });
99780
+ }
99641
99781
  }
99642
99782
  }, {
99643
99783
  key: "onKeyDown",
99644
99784
  value: function onKeyDown(event) {
99645
- event.keyCode === KeyCode.SPACE && event.preventDefault();
99646
- this.toggleMenu();
99785
+ if (event.key === 'Enter' || event.key === ' ' || event.key === 'Space' // For older browsers
99786
+ ) {
99787
+ event.preventDefault(); // Prevent default action like page scrolling
99788
+ this.toggleMenu();
99789
+ }
99647
99790
  }
99648
99791
  }, {
99649
99792
  key: "trackFocusElement",
@@ -99652,12 +99795,154 @@ var PopoutMenu = /*#__PURE__*/function (_Vue) {
99652
99795
  // If focus is no longer within the menu - close it.
99653
99796
  if (tabbedOut) this.setState('closed');
99654
99797
  }
99798
+ }, {
99799
+ key: "mounted",
99800
+ value: function mounted() {
99801
+ var _this4 = this;
99802
+ this.$nextTick(function () {
99803
+ _this4.updateMenuItems();
99804
+ });
99805
+ }
99806
+ }, {
99807
+ key: "updateMenuItems",
99808
+ value: function updateMenuItems() {
99809
+ var _this5 = this;
99810
+ if (this.$el) {
99811
+ // Reset the menuItems array
99812
+ this.menuItems = [];
99813
+ // Find the menu container
99814
+ var menuContainer = this.$el.querySelector("#".concat(this.componentId, "__popout"));
99815
+ if (menuContainer) {
99816
+ // First, look for a proper menu structure - a ul with role="menu"
99817
+ var menuList = menuContainer.querySelector('[role="menu"]');
99818
+ if (menuList) {
99819
+ // If we have a proper menu, find all menuitem elements within it
99820
+ var items = menuList.querySelectorAll('[role="menuitem"]');
99821
+ Array.from(items).forEach(function (element) {
99822
+ var item = element;
99823
+ // Skip disabled items
99824
+ if (item.hasAttribute('disabled') || item.getAttribute('aria-disabled') === 'true') {
99825
+ return;
99826
+ }
99827
+ _this5.menuItems.push(item);
99828
+ });
99829
+ } else {
99830
+ // Fallback approach if no proper menu structure exists
99831
+ var selector = 'a, button:not([id$="__trigger"]), [role="menuitem"], .sd-button';
99832
+ var _items = menuContainer.querySelectorAll(selector);
99833
+ Array.from(_items).forEach(function (element) {
99834
+ var item = element;
99835
+ // Skip disabled items and containers
99836
+ if (item.hasAttribute('disabled') || item.getAttribute('aria-disabled') === 'true' || item.classList.contains('popout-menu__content') || item.getAttribute('role') === 'none' || item.getAttribute('role') === 'presentation' || item.getAttribute('role') === 'group' || item.querySelector(selector)) {
99837
+ return;
99838
+ }
99839
+ _this5.menuItems.push(item);
99840
+ });
99841
+ }
99842
+ // Setup each menu item
99843
+ this.menuItems.forEach(function (item, index) {
99844
+ item.setAttribute('tabindex', index === 0 ? '0' : '-1');
99845
+ // Add keyboard handling if needed
99846
+ if (!item.hasAttribute('data-has-keydown')) {
99847
+ item.addEventListener('keydown', function (event) {
99848
+ if (event.key === 'Enter' || event.key === ' ') {
99849
+ event.preventDefault();
99850
+ item.click();
99851
+ }
99852
+ });
99853
+ item.setAttribute('data-has-keydown', 'true');
99854
+ }
99855
+ // Ensure parent li has role="none"
99856
+ var parentLi = item.closest('li');
99857
+ if (parentLi) {
99858
+ parentLi.setAttribute('role', 'none');
99859
+ }
99860
+ });
99861
+ }
99862
+ }
99863
+ }
99864
+ }, {
99865
+ key: "hasMenuItems",
99866
+ get: function get() {
99867
+ return this.menuItems.length > 0;
99868
+ }
99869
+ }, {
99870
+ key: "focusNextItem",
99871
+ value: function focusNextItem() {
99872
+ if (!this.menuItems.length) return;
99873
+ var current = document.activeElement;
99874
+ var index = this.menuItems.findIndex(function (item) {
99875
+ return item === current;
99876
+ });
99877
+ var nextIndex = (index + 1) % this.menuItems.length;
99878
+ // Set appropriate tabindex values
99879
+ this.menuItems.forEach(function (item) {
99880
+ return item.setAttribute('tabindex', '-1');
99881
+ });
99882
+ this.menuItems[nextIndex].setAttribute('tabindex', '0');
99883
+ this.menuItems[nextIndex].focus();
99884
+ // Force update to ensure focus styling is applied
99885
+ this.$forceUpdate();
99886
+ }
99887
+ }, {
99888
+ key: "focusPreviousItem",
99889
+ value: function focusPreviousItem() {
99890
+ if (!this.menuItems.length) return;
99891
+ var current = document.activeElement;
99892
+ var index = this.menuItems.findIndex(function (item) {
99893
+ return item === current;
99894
+ });
99895
+ var prevIndex = (index - 1 + this.menuItems.length) % this.menuItems.length;
99896
+ // Set appropriate tabindex values
99897
+ this.menuItems.forEach(function (item) {
99898
+ return item.setAttribute('tabindex', '-1');
99899
+ });
99900
+ this.menuItems[prevIndex].setAttribute('tabindex', '0');
99901
+ this.menuItems[prevIndex].focus();
99902
+ // Force update to ensure focus styling is applied
99903
+ this.$forceUpdate();
99904
+ }
99905
+ }, {
99906
+ key: "focusFirstItem",
99907
+ value: function focusFirstItem() {
99908
+ if (!this.menuItems.length) return;
99909
+ // Reset all tabindex values
99910
+ this.menuItems.forEach(function (item) {
99911
+ return item.setAttribute('tabindex', '-1');
99912
+ });
99913
+ this.menuItems[0].setAttribute('tabindex', '0');
99914
+ this.menuItems[0].focus();
99915
+ }
99916
+ }, {
99917
+ key: "focusLastItem",
99918
+ value: function focusLastItem() {
99919
+ if (!this.menuItems.length) return;
99920
+ // Reset all tabindex values
99921
+ this.menuItems.forEach(function (item) {
99922
+ return item.setAttribute('tabindex', '-1');
99923
+ });
99924
+ this.menuItems[this.menuItems.length - 1].setAttribute('tabindex', '0');
99925
+ this.menuItems[this.menuItems.length - 1].focus();
99926
+ }
99927
+ }, {
99928
+ key: "activateItem",
99929
+ value: function activateItem(event) {
99930
+ var current = document.activeElement;
99931
+ if (current && this.menuItems.includes(current)) {
99932
+ current.click();
99933
+ }
99934
+ }
99655
99935
  }]);
99656
99936
  }((external_commonjs_vue_commonjs2_vue_root_Vue_default()));
99657
99937
  __decorate([Prop({
99658
99938
  type: String,
99659
99939
  required: false
99660
99940
  })], PopoutMenu.prototype, "ariaLabel", void 0);
99941
+ __decorate([Prop({
99942
+ type: String,
99943
+ required: false,
99944
+ default: ''
99945
+ })], PopoutMenu.prototype, "id", void 0);
99661
99946
  PopoutMenu = __decorate([vue_class_component_esm({
99662
99947
  directives: {
99663
99948
  ClickOutside: ClickOutside
@@ -99666,10 +99951,15 @@ PopoutMenu = __decorate([vue_class_component_esm({
99666
99951
  /* harmony default export */ var popout_menuvue_type_script_lang_ts = (PopoutMenu);
99667
99952
  ;// ./src/components/lib/popout-menu/popout-menu.vue?vue&type=script&lang=ts
99668
99953
  /* harmony default export */ var popout_menu_popout_menuvue_type_script_lang_ts = (popout_menuvue_type_script_lang_ts);
99669
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/popout-menu/popout-menu.vue?vue&type=style&index=0&id=dc172d08&prod&lang=scss&scoped=true
99954
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/popout-menu/popout-menu.vue?vue&type=style&index=0&id=15f12367&prod&lang=scss
99670
99955
  // extracted by mini-css-extract-plugin
99671
99956
 
99672
- ;// ./src/components/lib/popout-menu/popout-menu.vue?vue&type=style&index=0&id=dc172d08&prod&lang=scss&scoped=true
99957
+ ;// ./src/components/lib/popout-menu/popout-menu.vue?vue&type=style&index=0&id=15f12367&prod&lang=scss
99958
+
99959
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/popout-menu/popout-menu.vue?vue&type=style&index=1&id=15f12367&prod&lang=scss&scoped=true
99960
+ // extracted by mini-css-extract-plugin
99961
+
99962
+ ;// ./src/components/lib/popout-menu/popout-menu.vue?vue&type=style&index=1&id=15f12367&prod&lang=scss&scoped=true
99673
99963
 
99674
99964
  ;// ./src/components/lib/popout-menu/popout-menu.vue
99675
99965
 
@@ -99678,15 +99968,16 @@ PopoutMenu = __decorate([vue_class_component_esm({
99678
99968
  ;
99679
99969
 
99680
99970
 
99971
+
99681
99972
  /* normalize component */
99682
99973
 
99683
99974
  var popout_menu_component = normalizeComponent(
99684
99975
  popout_menu_popout_menuvue_type_script_lang_ts,
99685
- popout_menuvue_type_template_id_dc172d08_scoped_true_render,
99686
- popout_menuvue_type_template_id_dc172d08_scoped_true_staticRenderFns,
99976
+ popout_menuvue_type_template_id_15f12367_scoped_true_render,
99977
+ popout_menuvue_type_template_id_15f12367_scoped_true_staticRenderFns,
99687
99978
  false,
99688
99979
  null,
99689
- "dc172d08",
99980
+ "15f12367",
99690
99981
  null
99691
99982
 
99692
99983
  )
@@ -99702,8 +99993,8 @@ popout.install = function (vue) {
99702
99993
  };
99703
99994
 
99704
99995
  /* harmony default export */ var lib_popout_menu = (popout);
99705
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/radio/radio.vue?vue&type=template&id=514ab577&scoped=true
99706
- var radiovue_type_template_id_514ab577_scoped_true_render = function render() {
99996
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/radio/radio.vue?vue&type=template&id=abc55f46&scoped=true
99997
+ var radiovue_type_template_id_abc55f46_scoped_true_render = function render() {
99707
99998
  var _vm = this,
99708
99999
  _c = _vm._self._c,
99709
100000
  _setup = _vm._self._setupProxy;
@@ -99778,7 +100069,7 @@ var radiovue_type_template_id_514ab577_scoped_true_render = function render() {
99778
100069
  return [_vm._v(" " + _vm._s(_vm.radioValue) + " ")];
99779
100070
  })], 2)])]);
99780
100071
  };
99781
- var radiovue_type_template_id_514ab577_scoped_true_staticRenderFns = [];
100072
+ var radiovue_type_template_id_abc55f46_scoped_true_staticRenderFns = [];
99782
100073
 
99783
100074
  ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/radio/radio-group.vue?vue&type=template&id=d044affc&scoped=true
99784
100075
  var radio_groupvue_type_template_id_d044affc_scoped_true_render = function render() {
@@ -100138,10 +100429,10 @@ Radio = __decorate([vue_class_component_esm({
100138
100429
  /* harmony default export */ var radiovue_type_script_lang_ts = (Radio);
100139
100430
  ;// ./src/components/lib/radio/radio.vue?vue&type=script&lang=ts
100140
100431
  /* harmony default export */ var radio_radiovue_type_script_lang_ts = (radiovue_type_script_lang_ts);
100141
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/radio/radio.vue?vue&type=style&index=0&id=514ab577&prod&lang=scss&scoped=true
100432
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/radio/radio.vue?vue&type=style&index=0&id=abc55f46&prod&lang=scss&scoped=true
100142
100433
  // extracted by mini-css-extract-plugin
100143
100434
 
100144
- ;// ./src/components/lib/radio/radio.vue?vue&type=style&index=0&id=514ab577&prod&lang=scss&scoped=true
100435
+ ;// ./src/components/lib/radio/radio.vue?vue&type=style&index=0&id=abc55f46&prod&lang=scss&scoped=true
100145
100436
 
100146
100437
  ;// ./src/components/lib/radio/radio.vue
100147
100438
 
@@ -100154,11 +100445,11 @@ Radio = __decorate([vue_class_component_esm({
100154
100445
 
100155
100446
  var radio_component = normalizeComponent(
100156
100447
  radio_radiovue_type_script_lang_ts,
100157
- radiovue_type_template_id_514ab577_scoped_true_render,
100158
- radiovue_type_template_id_514ab577_scoped_true_staticRenderFns,
100448
+ radiovue_type_template_id_abc55f46_scoped_true_render,
100449
+ radiovue_type_template_id_abc55f46_scoped_true_staticRenderFns,
100159
100450
  false,
100160
100451
  null,
100161
- "514ab577",
100452
+ "abc55f46",
100162
100453
  null
100163
100454
 
100164
100455
  )
@@ -100228,8 +100519,8 @@ var ratervue_type_template_id_3c375a5c_scoped_true_staticRenderFns = [];
100228
100519
 
100229
100520
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.number.is-nan.js
100230
100521
  var es_number_is_nan = __webpack_require__(150);
100231
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/rater/rater-item.vue?vue&type=template&id=5b53bd14&scoped=true
100232
- var rater_itemvue_type_template_id_5b53bd14_scoped_true_render = function render() {
100522
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/rater/rater-item.vue?vue&type=template&id=afdeb438&scoped=true
100523
+ var rater_itemvue_type_template_id_afdeb438_scoped_true_render = function render() {
100233
100524
  var _vm = this,
100234
100525
  _c = _vm._self._c,
100235
100526
  _setup = _vm._self._setupProxy;
@@ -100261,7 +100552,7 @@ var rater_itemvue_type_template_id_5b53bd14_scoped_true_render = function render
100261
100552
  }
100262
100553
  })], 1);
100263
100554
  };
100264
- var rater_itemvue_type_template_id_5b53bd14_scoped_true_staticRenderFns = [];
100555
+ var rater_itemvue_type_template_id_afdeb438_scoped_true_staticRenderFns = [];
100265
100556
 
100266
100557
  ;// ./node_modules/@fortawesome/free-regular-svg-icons/index.es.js
100267
100558
  /*!
@@ -101250,10 +101541,10 @@ RaterItem = __decorate([vue_class_component_esm({
101250
101541
  /* harmony default export */ var rater_itemvue_type_script_lang_ts = (RaterItem);
101251
101542
  ;// ./src/components/lib/rater/rater-item.vue?vue&type=script&lang=ts
101252
101543
  /* harmony default export */ var rater_rater_itemvue_type_script_lang_ts = (rater_itemvue_type_script_lang_ts);
101253
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/rater/rater-item.vue?vue&type=style&index=0&id=5b53bd14&prod&lang=scss&scoped=true
101544
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/rater/rater-item.vue?vue&type=style&index=0&id=afdeb438&prod&lang=scss&scoped=true
101254
101545
  // extracted by mini-css-extract-plugin
101255
101546
 
101256
- ;// ./src/components/lib/rater/rater-item.vue?vue&type=style&index=0&id=5b53bd14&prod&lang=scss&scoped=true
101547
+ ;// ./src/components/lib/rater/rater-item.vue?vue&type=style&index=0&id=afdeb438&prod&lang=scss&scoped=true
101257
101548
 
101258
101549
  ;// ./src/components/lib/rater/rater-item.vue
101259
101550
 
@@ -101266,11 +101557,11 @@ RaterItem = __decorate([vue_class_component_esm({
101266
101557
 
101267
101558
  var rater_item_component = normalizeComponent(
101268
101559
  rater_rater_itemvue_type_script_lang_ts,
101269
- rater_itemvue_type_template_id_5b53bd14_scoped_true_render,
101270
- rater_itemvue_type_template_id_5b53bd14_scoped_true_staticRenderFns,
101560
+ rater_itemvue_type_template_id_afdeb438_scoped_true_render,
101561
+ rater_itemvue_type_template_id_afdeb438_scoped_true_staticRenderFns,
101271
101562
  false,
101272
101563
  null,
101273
- "5b53bd14",
101564
+ "afdeb438",
101274
101565
  null
101275
101566
 
101276
101567
  )
@@ -101475,8 +101766,8 @@ rater_rater.install = function (vue) {
101475
101766
  };
101476
101767
 
101477
101768
  /* harmony default export */ var lib_rater = (rater_rater);
101478
- ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select.vue?vue&type=template&id=31b9efcf&scoped=true
101479
- var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101769
+ ;// ./node_modules/babel-loader/lib/index.js??clonedRuleSet-85.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/templateLoader.js??ruleSet[1].rules[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select.vue?vue&type=template&id=60664af8&scoped=true
101770
+ var selectvue_type_template_id_60664af8_scoped_true_render = function render() {
101480
101771
  var _vm = this,
101481
101772
  _c = _vm._self._c,
101482
101773
  _setup = _vm._self._setupProxy;
@@ -101484,8 +101775,8 @@ var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101484
101775
  directives: [{
101485
101776
  name: "click-outside",
101486
101777
  rawName: "v-click-outside",
101487
- value: _vm.close,
101488
- expression: "close"
101778
+ value: _vm.onClickOutside,
101779
+ expression: "onClickOutside"
101489
101780
  }],
101490
101781
  staticClass: "sd-select",
101491
101782
  class: {
@@ -101501,7 +101792,7 @@ var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101501
101792
  "aria-expanded": _vm.open ? 'true' : 'false',
101502
101793
  "aria-haspopup": !_vm.native ? 'listbox' : undefined,
101503
101794
  "aria-disabled": _vm.disabled ? 'true' : 'false',
101504
- "aria-labelledby": _vm.labelId,
101795
+ "aria-labelledby": _vm.formLabelledBy,
101505
101796
  "aria-controls": _vm.listboxId
101506
101797
  },
101507
101798
  on: {
@@ -101518,19 +101809,19 @@ var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101518
101809
  !_vm.disabled && _vm.onKeyDown($event);
101519
101810
  }
101520
101811
  }
101521
- }, [!this.labelId ? _c('label', {
101812
+ }, [_vm.showInternalLabel ? _c('label', {
101522
101813
  staticClass: "sd-select-label",
101523
101814
  attrs: {
101524
- "id": _vm.computedLabelId,
101815
+ "id": _vm.labelId,
101525
101816
  "for": _vm.id
101526
101817
  }
101527
- }, [_vm._v(" " + _vm._s(_vm.label) + " ")]) : _c('label', {
101528
- staticClass: "sd-select-label",
101818
+ }, [_vm._v(" " + _vm._s(_vm.label || _vm.nameAttr || ' ') + " ")]) : _c('label', {
101819
+ staticClass: "sd-select-label sr-only",
101529
101820
  attrs: {
101530
101821
  "id": _vm.labelId,
101531
101822
  "for": _vm.id
101532
101823
  }
101533
- }, [_vm._v(" " + _vm._s(_vm.label) + " ")]), _c('div', {
101824
+ }, [_vm._v(" " + _vm._s(_vm.label || _vm.nameAttr || ' ') + " ")]), _c('div', {
101534
101825
  staticClass: "sd-select-trigger",
101535
101826
  on: {
101536
101827
  "mouseenter": function mouseenter($event) {
@@ -101553,6 +101844,7 @@ var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101553
101844
  "disabled": _vm.disabled,
101554
101845
  "readonly": "",
101555
101846
  "aria-readonly": "true",
101847
+ "aria-labelledby": _vm.formLabelledBy,
101556
101848
  "aria-activedescendant": _vm.focusedOptionId ? _vm.focusedOptionId : undefined
101557
101849
  },
101558
101850
  domProps: {
@@ -101565,7 +101857,7 @@ var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101565
101857
  custom: _vm.custom
101566
101858
  },
101567
101859
  attrs: {
101568
- "name": _vm.nameAttr || undefined,
101860
+ "name": _vm.computedName,
101569
101861
  "disabled": _vm.disabled,
101570
101862
  "aria-hidden": "true",
101571
101863
  "tabindex": "-1"
@@ -101627,12 +101919,14 @@ var selectvue_type_template_id_31b9efcf_scoped_true_render = function render() {
101627
101919
  }
101628
101920
  }, [_vm._t("default")], 2)]);
101629
101921
  };
101630
- var selectvue_type_template_id_31b9efcf_scoped_true_staticRenderFns = [];
101922
+ var selectvue_type_template_id_60664af8_scoped_true_staticRenderFns = [];
101631
101923
 
101632
101924
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js
101633
101925
  var es_array_map = __webpack_require__(2062);
101634
101926
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.map.js
101635
101927
  var es_iterator_map = __webpack_require__(1701);
101928
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.trim.js
101929
+ var es_string_trim = __webpack_require__(2762);
101636
101930
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-87.use[2]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select-option.vue?vue&type=script&lang=tsx
101637
101931
 
101638
101932
 
@@ -101747,10 +102041,10 @@ SelectOption = __decorate([vue_class_component_esm({
101747
102041
  /* harmony default export */ var select_optionvue_type_script_lang_tsx = (SelectOption);
101748
102042
  ;// ./src/components/lib/select/select-option.vue?vue&type=script&lang=tsx
101749
102043
  /* harmony default export */ var select_select_optionvue_type_script_lang_tsx = (select_optionvue_type_script_lang_tsx);
101750
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select-option.vue?vue&type=style&index=0&id=2462def3&prod&lang=scss&scoped=true
102044
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select-option.vue?vue&type=style&index=0&id=f22f3ac4&prod&lang=scss&scoped=true
101751
102045
  // extracted by mini-css-extract-plugin
101752
102046
 
101753
- ;// ./src/components/lib/select/select-option.vue?vue&type=style&index=0&id=2462def3&prod&lang=scss&scoped=true
102047
+ ;// ./src/components/lib/select/select-option.vue?vue&type=style&index=0&id=f22f3ac4&prod&lang=scss&scoped=true
101754
102048
 
101755
102049
  ;// ./src/components/lib/select/select-option.vue
101756
102050
  var select_option_render, select_option_staticRenderFns
@@ -101767,7 +102061,7 @@ var select_option_component = normalizeComponent(
101767
102061
  select_option_staticRenderFns,
101768
102062
  false,
101769
102063
  null,
101770
- "2462def3",
102064
+ "f22f3ac4",
101771
102065
  null
101772
102066
 
101773
102067
  )
@@ -101802,6 +102096,7 @@ var select_option_component = normalizeComponent(
101802
102096
 
101803
102097
 
101804
102098
 
102099
+
101805
102100
 
101806
102101
 
101807
102102
  library.add(faAngleDown, faTimes);
@@ -101817,6 +102112,7 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
101817
102112
  defineProperty_defineProperty(_this, "id", void 0);
101818
102113
  defineProperty_defineProperty(_this, "label", void 0);
101819
102114
  defineProperty_defineProperty(_this, "externalLabelId", void 0);
102115
+ defineProperty_defineProperty(_this, "hideInternalLabel", void 0);
101820
102116
  /**
101821
102117
  * The value to bind the selected item to.
101822
102118
  */
@@ -101840,20 +102136,25 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
101840
102136
  }
101841
102137
  _inherits(Select, _FormPluginComponent);
101842
102138
  return createClass_createClass(Select, [{
101843
- key: "labelId",
102139
+ key: "showInternalLabel",
101844
102140
  get: function get() {
101845
- return this.externalLabelId || "".concat(this.id);
102141
+ return this.hideInternalLabel !== true && Boolean(this.label && this.label.trim() !== '');
101846
102142
  }
101847
102143
  }, {
101848
- key: "computedLabelId",
102144
+ key: "labelId",
101849
102145
  get: function get() {
101850
- return "".concat(this.id, "-computed-label");
102146
+ return "".concat(this.id, "-label");
101851
102147
  }
101852
102148
  }, {
101853
102149
  key: "listboxId",
101854
102150
  get: function get() {
101855
102151
  return "".concat(this.id, "-listbox");
101856
102152
  }
102153
+ }, {
102154
+ key: "formLabelledBy",
102155
+ get: function get() {
102156
+ return this.externalLabelId || this.labelId;
102157
+ }
101857
102158
  }, {
101858
102159
  key: "options",
101859
102160
  get: function get() {
@@ -101864,6 +102165,11 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
101864
102165
  return o.componentInstance;
101865
102166
  }) : [];
101866
102167
  }
102168
+ }, {
102169
+ key: "computedName",
102170
+ get: function get() {
102171
+ return this.nameAttr || this.label || undefined;
102172
+ }
101867
102173
  }, {
101868
102174
  key: "mounted",
101869
102175
  value: function mounted() {
@@ -101887,7 +102193,21 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
101887
102193
  // Focus the listbox when the dropdown is opened
101888
102194
  this.$nextTick(function () {
101889
102195
  var listbox = _this2.$el.querySelector('[role="listbox"]');
101890
- listbox && listbox.focus();
102196
+ if (listbox && listbox instanceof HTMLElement) {
102197
+ listbox.focus();
102198
+ // Find the selected option and scroll to it
102199
+ var selectedOption = _this2.options.find(function (opt) {
102200
+ return opt.value === _this2.value;
102201
+ });
102202
+ if (selectedOption && selectedOption.$el instanceof HTMLElement) {
102203
+ _this2.options.forEach(function (opt) {
102204
+ return opt.$el.classList.remove('focus');
102205
+ });
102206
+ selectedOption.$el.classList.add('focus');
102207
+ _this2.focusedOptionId = selectedOption.$el.id;
102208
+ _this2.scrollToFocusedOption(selectedOption.$el);
102209
+ }
102210
+ }
101891
102211
  });
101892
102212
  }
101893
102213
  }
@@ -101924,16 +102244,41 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
101924
102244
  }
101925
102245
  /**
101926
102246
  * Closes the dropdown.
101927
- * @param {FocusEvent} [event] - Optional focus event
102247
+ * @param {FocusEvent|MouseEvent} [event] - Optional event
101928
102248
  * @returns {void}
101929
102249
  */
101930
102250
  }, {
101931
102251
  key: "close",
101932
102252
  value: function close(event) {
101933
102253
  if (!this.open) return;
102254
+ // If the event is a FocusEvent, check if we're focusing another element inside the component
102255
+ if (event && event instanceof FocusEvent) {
102256
+ var relatedTarget = event.relatedTarget;
102257
+ // Don't close if focus is moving within the component
102258
+ if (relatedTarget && this.$el.contains(relatedTarget)) {
102259
+ return;
102260
+ }
102261
+ }
101934
102262
  this.open = false;
101935
- this.$emit('blur', event);
101936
- this.broadcastFormEvent('blur', this.value, event);
102263
+ this.$emit('close');
102264
+ // Only emit blur events for focus-related closing
102265
+ if (event && event instanceof FocusEvent) {
102266
+ this.$emit('blur', event);
102267
+ this.broadcastFormEvent('blur', this.value, event);
102268
+ }
102269
+ }
102270
+ }, {
102271
+ key: "onClickOutside",
102272
+ value: function onClickOutside(event) {
102273
+ // Don't close if clicking on an element related to this select component
102274
+ // Like a connected form label
102275
+ if (this.externalLabelId) {
102276
+ var externalLabel = document.getElementById(this.externalLabelId);
102277
+ if (externalLabel && externalLabel.contains(event.target)) {
102278
+ return;
102279
+ }
102280
+ }
102281
+ this.close(event);
101937
102282
  }
101938
102283
  }, {
101939
102284
  key: "onOptionsChanged",
@@ -101974,17 +102319,27 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
101974
102319
  }, {
101975
102320
  key: "onBlur",
101976
102321
  value: function onBlur(event) {
101977
- if (event.relatedTarget === this.$refs.input) return;
102322
+ var _this4 = this;
101978
102323
  this.focused = false;
101979
- // Clear the focused option when the dropdown is closed
101980
- if (!this.open) {
101981
- this.options.forEach(function (opt) {
101982
- return opt.$el.classList.remove('focus');
101983
- });
101984
- this.focusedOptionId = '';
102324
+ // Don't close immediately - check if focus moved to another element within the component
102325
+ var relatedTarget = event.relatedTarget;
102326
+ // If focus is moving outside the component, close the dropdown
102327
+ if (!relatedTarget || !this.$el.contains(relatedTarget)) {
102328
+ // Use setTimeout to allow other focus events to process first
102329
+ setTimeout(function () {
102330
+ // Double-check that focus is really outside the component
102331
+ if (!_this4.$el.contains(document.activeElement)) {
102332
+ _this4.close(event);
102333
+ // Clear the focused option when the dropdown is closed
102334
+ _this4.options.forEach(function (opt) {
102335
+ if (opt.$el instanceof HTMLElement) {
102336
+ opt.$el.classList.remove('focus');
102337
+ }
102338
+ });
102339
+ _this4.focusedOptionId = '';
102340
+ }
102341
+ }, 0);
101985
102342
  }
101986
- this.$emit('blur', event);
101987
- this.broadcastFormEvent('blur', this.value, event);
101988
102343
  }
101989
102344
  }, {
101990
102345
  key: "onChange",
@@ -102008,20 +102363,28 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
102008
102363
  this.toggleMenu(event);
102009
102364
  if (enabledOptions.length) {
102010
102365
  var focusOption = event.keyCode === KeyCode.UP ? enabledOptions[enabledOptions.length - 1] : enabledOptions[0];
102011
- focusOption.$el.classList.add('focus');
102012
- this.focusedOptionId = focusOption.$el.id;
102366
+ if (focusOption.$el instanceof HTMLElement) {
102367
+ focusOption.$el.classList.add('focus');
102368
+ this.focusedOptionId = focusOption.$el.id;
102369
+ this.scrollToFocusedOption(focusOption.$el);
102370
+ }
102013
102371
  }
102014
102372
  } else {
102015
102373
  var focusedIndex = enabledOptions.findIndex(function (opt) {
102016
- return opt.$el.classList.contains('focus');
102374
+ return opt.$el instanceof HTMLElement && opt.$el.classList.contains('focus');
102017
102375
  });
102018
102376
  var nextIndex = event.keyCode === KeyCode.UP ? (focusedIndex - 1 + enabledOptions.length) % enabledOptions.length : (focusedIndex + 1) % enabledOptions.length;
102019
102377
  var nextOption = enabledOptions[nextIndex];
102020
102378
  this.options.forEach(function (opt) {
102021
- return opt.$el.classList.remove('focus');
102379
+ if (opt.$el instanceof HTMLElement) {
102380
+ opt.$el.classList.remove('focus');
102381
+ }
102022
102382
  });
102023
- nextOption.$el.classList.add('focus');
102024
- this.focusedOptionId = nextOption.$el.id;
102383
+ if (nextOption.$el instanceof HTMLElement) {
102384
+ nextOption.$el.classList.add('focus');
102385
+ this.focusedOptionId = nextOption.$el.id;
102386
+ this.scrollToFocusedOption(nextOption.$el);
102387
+ }
102025
102388
  }
102026
102389
  break;
102027
102390
  case KeyCode.ENTER:
@@ -102046,6 +102409,25 @@ var Select = /*#__PURE__*/function (_FormPluginComponent) {
102046
102409
  break;
102047
102410
  }
102048
102411
  }
102412
+ }, {
102413
+ key: "scrollToFocusedOption",
102414
+ value: function scrollToFocusedOption(element) {
102415
+ var _this5 = this;
102416
+ this.$nextTick(function () {
102417
+ // Use proper type casting with 'as HTMLElement'
102418
+ var listbox = _this5.$el.querySelector('.sd-select__options');
102419
+ if (!listbox || !element) return;
102420
+ var listboxRect = listbox.getBoundingClientRect();
102421
+ var elementRect = element.getBoundingClientRect();
102422
+ var isAbove = elementRect.top < listboxRect.top;
102423
+ var isBelow = elementRect.bottom > listboxRect.bottom;
102424
+ if (isAbove) {
102425
+ listbox.scrollTop -= listboxRect.top - elementRect.top + 5;
102426
+ } else if (isBelow) {
102427
+ listbox.scrollTop += elementRect.bottom - listboxRect.bottom + 5;
102428
+ }
102429
+ });
102430
+ }
102049
102431
  /**
102050
102432
  * Given a value, will return the Vue component associated with the provided value.
102051
102433
  * @param {any} The value to search by.
@@ -102087,6 +102469,11 @@ __decorate([Prop({
102087
102469
  type: String,
102088
102470
  required: false
102089
102471
  })], Select.prototype, "externalLabelId", void 0);
102472
+ __decorate([Prop({
102473
+ type: Boolean,
102474
+ required: false,
102475
+ default: false
102476
+ })], Select.prototype, "hideInternalLabel", void 0);
102090
102477
  __decorate([Prop({
102091
102478
  type: [String, Number, Date, Boolean],
102092
102479
  required: false,
@@ -102130,10 +102517,10 @@ Select = __decorate([vue_class_component_esm({
102130
102517
  /* harmony default export */ var selectvue_type_script_lang_ts = (Select);
102131
102518
  ;// ./src/components/lib/select/select.vue?vue&type=script&lang=ts
102132
102519
  /* harmony default export */ var select_selectvue_type_script_lang_ts = (selectvue_type_script_lang_ts);
102133
- ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select.vue?vue&type=style&index=0&id=31b9efcf&prod&lang=scss&scoped=true
102520
+ ;// ./node_modules/mini-css-extract-plugin/dist/loader.js??clonedRuleSet-67.use[0]!./node_modules/css-loader/dist/cjs.js??clonedRuleSet-67.use[1]!./node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-67.use[2]!./node_modules/sass-loader/dist/cjs.js??clonedRuleSet-67.use[3]!./node_modules/style-resources-loader/lib/index.js??clonedRuleSet-67.use[4]!./node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./src/components/lib/select/select.vue?vue&type=style&index=0&id=60664af8&prod&lang=scss&scoped=true
102134
102521
  // extracted by mini-css-extract-plugin
102135
102522
 
102136
- ;// ./src/components/lib/select/select.vue?vue&type=style&index=0&id=31b9efcf&prod&lang=scss&scoped=true
102523
+ ;// ./src/components/lib/select/select.vue?vue&type=style&index=0&id=60664af8&prod&lang=scss&scoped=true
102137
102524
 
102138
102525
  ;// ./src/components/lib/select/select.vue
102139
102526
 
@@ -102146,11 +102533,11 @@ Select = __decorate([vue_class_component_esm({
102146
102533
 
102147
102534
  var select_component = normalizeComponent(
102148
102535
  select_selectvue_type_script_lang_ts,
102149
- selectvue_type_template_id_31b9efcf_scoped_true_render,
102150
- selectvue_type_template_id_31b9efcf_scoped_true_staticRenderFns,
102536
+ selectvue_type_template_id_60664af8_scoped_true_render,
102537
+ selectvue_type_template_id_60664af8_scoped_true_staticRenderFns,
102151
102538
  false,
102152
102539
  null,
102153
- "31b9efcf",
102540
+ "60664af8",
102154
102541
  null
102155
102542
 
102156
102543
  )
@@ -102285,6 +102672,7 @@ var element_ui_common_default = /*#__PURE__*/__webpack_require__.n(element_ui_co
102285
102672
 
102286
102673
 
102287
102674
 
102675
+
102288
102676
  function src_install(V, options) {
102289
102677
  V.use(lib_autocomplete);
102290
102678
  V.use(lib_button, options ? options.button : undefined);