@ironsource/shared-ui 2.1.11-rc.4 → 2.1.11-rc.40

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 (142) hide show
  1. package/ButtonDropdownTrigger.vue_vue_type_style_index_0_scoped_604dfc6f_lang.css +1 -0
  2. package/ButtonFilterDropdownTrigger.vue_vue_type_style_index_0_scoped_1aa6df01_lang.css +1 -0
  3. package/Chart.vue_vue_type_style_index_0_scoped_04b9d6b3_lang.css +1 -0
  4. package/ChartHeader.vue_vue_type_style_index_0_scoped_b8213498_lang.css +1 -0
  5. package/ChartLegend.vue_vue_type_style_index_0_scoped_a1c626cd_lang.css +1 -0
  6. package/ChartTooltip.vue_vue_type_style_index_0_scoped_6744325c_lang.css +1 -0
  7. package/CheckboxV4.vue_vue_type_style_index_0_scoped_af4ae3c3_lang.css +1 -0
  8. package/ChipDropdownTrigger.vue_vue_type_style_index_0_scoped_039dd922_lang.css +1 -0
  9. package/ConditionalDropdown.vue_vue_type_style_index_0_scoped_2aee12ad_lang.css +1 -0
  10. package/DataGrid.vue_vue_type_style_index_0_scoped_2406226b_lang.css +1 -0
  11. package/DateRangeV4.vue_vue_type_style_index_0_scoped_309e5351_lang.css +1 -0
  12. package/DialogV4.vue_vue_type_style_index_0_scoped_c65df8d7_lang.css +1 -0
  13. package/DropdownV4.vue_vue_type_style_index_0_scoped_6466948d_lang.css +1 -0
  14. package/FiltersPanelV4.vue_vue_type_style_index_0_scoped_111b200a_lang.css +1 -0
  15. package/InlineCopy.vue_vue_type_style_index_0_scoped_ad48b61e_lang.css +1 -0
  16. package/OptionV4.vue_vue_type_style_index_0_scoped_2c2947b3_lang.css +1 -0
  17. package/PopoverV4.vue_vue_type_style_index_0_scoped_66694b4e_lang.css +1 -0
  18. package/README.md +4 -15
  19. package/SettingsHeader.vue_vue_type_style_index_0_scoped_9b6cd9d9_lang.css +1 -0
  20. package/SnackbarV4.vue_vue_type_style_index_0_scoped_89fe8aa1_lang.css +1 -0
  21. package/TextField.vue_vue_type_style_index_0_scoped_2e327aa1_lang.css +1 -0
  22. package/ToggleButtonGroupAB.vue_vue_type_style_index_0_scoped_c81a7d3e_lang.css +1 -0
  23. package/TooltipV4.vue_vue_type_style_index_0_scoped_82b46d6d_lang.css +1 -0
  24. package/TreeDropdown.vue_vue_type_style_index_0_scoped_bdfb0aef_lang.css +1 -0
  25. package/components/autocomplete/Autocomplete.vue2.js +3 -2
  26. package/components/button/v4/ToggleButtonGroupAB.vue.d.ts +3 -1
  27. package/components/button/v4/ToggleButtonGroupAB.vue.js +2 -2
  28. package/components/button/v4/ToggleButtonGroupAB.vue2.js +44 -39
  29. package/components/button/v4/index.d.ts +9 -3
  30. package/components/chart/Chart.vue.d.ts +11 -3
  31. package/components/chart/Chart.vue.js +5 -5
  32. package/components/chart/Chart.vue2.js +115 -101
  33. package/components/chart/ChartHeader.vue.d.ts +13 -6
  34. package/components/chart/ChartHeader.vue.js +2 -2
  35. package/components/chart/ChartHeader.vue2.js +32 -29
  36. package/components/chart/ChartLegend.vue.d.ts +5 -0
  37. package/components/chart/ChartLegend.vue.js +3 -3
  38. package/components/chart/ChartLegend.vue2.js +99 -49
  39. package/components/chart/ChartTooltip.vue.d.ts +4 -5
  40. package/components/chart/ChartTooltip.vue.js +2 -2
  41. package/components/chart/ChartTooltip.vue2.js +64 -43
  42. package/components/chart/SettingsHeader.vue.js +3 -3
  43. package/components/chart/SettingsHeader.vue2.js +34 -26
  44. package/components/chart/index.d.ts +36 -16
  45. package/components/chart/mockData.d.ts +15 -2
  46. package/components/chart/types.d.ts +15 -1
  47. package/components/chart/utils/utils.js +5 -5
  48. package/components/checkbox/v4/CheckboxV4.vue.js +3 -3
  49. package/components/checkbox/v4/CheckboxV4.vue2.js +2 -2
  50. package/components/datePicker/v4/DatePickerV4.vue2.js +8 -7
  51. package/components/dateRange/v4/DateRangeV4.vue.js +2 -2
  52. package/components/dateRange/v4/DateRangeV4.vue2.js +9 -9
  53. package/components/dialog/v4/DialogV4.vue.d.ts +10 -0
  54. package/components/dialog/v4/DialogV4.vue.js +3 -3
  55. package/components/dialog/v4/DialogV4.vue2.js +64 -60
  56. package/components/dialog/v4/index.d.ts +39 -1
  57. package/components/dropdown/common/Dropdown.common.js +194 -185
  58. package/components/dropdown/v3/Dropdown.vue.d.ts +2 -2
  59. package/components/dropdown/v3/index.d.ts +39 -39
  60. package/components/dropdown/v4/AppDropdownTrigger.vue.d.ts +1 -1
  61. package/components/dropdown/v4/ButtonDropdownTrigger.vue.d.ts +15 -0
  62. package/components/dropdown/v4/ButtonDropdownTrigger.vue.js +2 -2
  63. package/components/dropdown/v4/ButtonDropdownTrigger.vue2.js +42 -20
  64. package/components/dropdown/v4/ButtonFilterDropdownTrigger.vue.js +2 -2
  65. package/components/dropdown/v4/ButtonFilterDropdownTrigger.vue2.js +7 -7
  66. package/components/dropdown/v4/ChipDropdownTrigger.vue.d.ts +10 -0
  67. package/components/dropdown/v4/ChipDropdownTrigger.vue.js +3 -3
  68. package/components/dropdown/v4/ChipDropdownTrigger.vue2.js +73 -47
  69. package/components/dropdown/v4/ConditionalDropdown.vue.d.ts +90 -0
  70. package/components/dropdown/v4/ConditionalDropdown.vue.js +7 -0
  71. package/components/dropdown/v4/ConditionalDropdown.vue2.js +185 -0
  72. package/components/dropdown/v4/DropdownV4.vue.d.ts +31 -6
  73. package/components/dropdown/v4/DropdownV4.vue.js +3 -3
  74. package/components/dropdown/v4/DropdownV4.vue2.js +224 -198
  75. package/components/dropdown/v4/OptionV4.vue.d.ts +10 -0
  76. package/components/dropdown/v4/OptionV4.vue.js +2 -2
  77. package/components/dropdown/v4/OptionV4.vue2.js +135 -98
  78. package/components/dropdown/v4/TreeDropdown.vue.d.ts +6 -1
  79. package/components/dropdown/v4/TreeDropdown.vue.js +2 -2
  80. package/components/dropdown/v4/TreeDropdown.vue2.js +161 -116
  81. package/components/dropdown/v4/index.d.ts +402 -87
  82. package/components/dropdown/v4/index.js +6 -3
  83. package/components/filtersPanel/v4/FiltersPanelV4.vue.js +3 -3
  84. package/components/filtersPanel/v4/FiltersPanelV4.vue2.js +8 -9
  85. package/components/icon/v4/consts.d.ts +1 -1
  86. package/components/icon/v4/consts.js +1 -1
  87. package/components/inlineCopy/InlineCopy.vue.d.ts +5 -0
  88. package/components/inlineCopy/InlineCopy.vue.js +2 -2
  89. package/components/inlineCopy/InlineCopy.vue2.js +24 -22
  90. package/components/inlineCopy/index.d.ts +9 -0
  91. package/components/input/v4/TextField.vue.js +3 -3
  92. package/components/input/v4/TextField.vue2.js +12 -12
  93. package/components/multibar/MultiBarMenu.vue2.js +3 -2
  94. package/components/popover/v4/PopoverV4.vue.d.ts +14 -2
  95. package/components/popover/v4/PopoverV4.vue.js +4 -3
  96. package/components/popover/v4/PopoverV4.vue2.js +40 -24
  97. package/components/popover/v4/index.d.ts +55 -11
  98. package/components/snackbar/v4/SnackbarV4.vue.d.ts +7 -116
  99. package/components/snackbar/v4/SnackbarV4.vue.js +5 -5
  100. package/components/snackbar/v4/SnackbarV4.vue2.js +62 -60
  101. package/components/sortableList/SortableList.vue.d.ts +1 -1
  102. package/components/sortableList/index.d.ts +4 -4
  103. package/components/table/common/Table.common.js +69 -71
  104. package/components/table/common/Table.types.d.ts +1 -1
  105. package/components/table/v3/Table.vue.d.ts +1 -1
  106. package/components/table/v3/index.d.ts +5 -5
  107. package/components/table/v4/DataGrid.vue.d.ts +6 -1
  108. package/components/table/v4/DataGrid.vue.js +3 -3
  109. package/components/table/v4/DataGrid.vue2.js +124 -117
  110. package/components/table/v4/DataGridMenu.vue2.js +3 -2
  111. package/components/table/v4/index.d.ts +26 -7
  112. package/components/tooltip/v4/TooltipV4.vue.d.ts +10 -0
  113. package/components/tooltip/v4/TooltipV4.vue.js +2 -2
  114. package/components/tooltip/v4/TooltipV4.vue2.js +24 -21
  115. package/components/tooltip/v4/index.d.ts +39 -1
  116. package/design-foundation.stories/icons/iconsData.d.ts +1 -1
  117. package/index.d.ts +1234 -240
  118. package/mocks/options.d.ts +48 -2
  119. package/mocks/words.d.ts +1 -1
  120. package/package.json +2 -1
  121. package/ButtonDropdownTrigger.vue_vue_type_style_index_0_scoped_76c74f58_lang.css +0 -1
  122. package/ButtonFilterDropdownTrigger.vue_vue_type_style_index_0_scoped_7f750550_lang.css +0 -1
  123. package/Chart.vue_vue_type_style_index_0_scoped_ea1e5c3e_lang.css +0 -1
  124. package/ChartHeader.vue_vue_type_style_index_0_scoped_4c37736e_lang.css +0 -1
  125. package/ChartLegend.vue_vue_type_style_index_0_scoped_c0f71a49_lang.css +0 -1
  126. package/ChartTooltip.vue_vue_type_style_index_0_scoped_ec636f18_lang.css +0 -1
  127. package/CheckboxV4.vue_vue_type_style_index_0_scoped_8e5b619a_lang.css +0 -1
  128. package/ChipDropdownTrigger.vue_vue_type_style_index_0_scoped_49bd7193_lang.css +0 -1
  129. package/DataGrid.vue_vue_type_style_index_0_scoped_0cd8af73_lang.css +0 -1
  130. package/DateRangeV4.vue_vue_type_style_index_0_scoped_f81413ec_lang.css +0 -1
  131. package/DialogV4.vue_vue_type_style_index_0_scoped_09c488cf_lang.css +0 -1
  132. package/DropdownV4.vue_vue_type_style_index_0_scoped_991a7aad_lang.css +0 -1
  133. package/FiltersPanelV4.vue_vue_type_style_index_0_scoped_39061862_lang.css +0 -1
  134. package/InlineCopy.vue_vue_type_style_index_0_scoped_893a203c_lang.css +0 -1
  135. package/OptionV4.vue_vue_type_style_index_0_scoped_4070942a_lang.css +0 -1
  136. package/PopoverV4.vue_vue_type_style_index_0_scoped_74bbce13_lang.css +0 -1
  137. package/SettingsHeader.vue_vue_type_style_index_0_scoped_1791e4fe_lang.css +0 -1
  138. package/SnackbarV4.vue_vue_type_style_index_0_scoped_49c5ccea_lang.css +0 -1
  139. package/TextField.vue_vue_type_style_index_0_scoped_4d9bf5b2_lang.css +0 -1
  140. package/ToggleButtonGroupAB.vue_vue_type_style_index_0_scoped_9d9e51c0_lang.css +0 -1
  141. package/TooltipV4.vue_vue_type_style_index_0_scoped_fcdb9d02_lang.css +0 -1
  142. package/TreeDropdown.vue_vue_type_style_index_0_scoped_6ac5f602_lang.css +0 -1
@@ -1,156 +1,156 @@
1
- import { useToggle as Ve } from "../../../composables/useToggle.js";
2
- import { inject as ke, ref as i, computed as r, watch as A, useSlots as _e, toRaw as P, nextTick as N, provide as Ge, onMounted as He } from "vue";
3
- import { isObjectInArray as ee } from "../../../utils/array.js";
1
+ import { useToggle as _e } from "../../../composables/useToggle.js";
2
+ import { inject as Ve, ref as r, computed as c, watch as b, useSlots as ke, toRaw as P, nextTick as K, provide as Ge, onMounted as Le } from "vue";
3
+ import { isObjectInArray as ae } from "../../../utils/array.js";
4
4
  import { objectsEqual as Be } from "../../../utils/object.js";
5
- import { useClamp as Le, useVirtualList as Ue, onClickOutside as le } from "@vueuse/core";
6
- import { Mode as T, Type as _, DropdownContext as qe } from "./DropdownContext.js";
5
+ import { useClamp as He, useVirtualList as Ue, onClickOutside as ne, useInfiniteScroll as qe } from "@vueuse/core";
6
+ import { Mode as T, Type as L, DropdownContext as Xe } from "./DropdownContext.js";
7
7
  import { pxToRem as $e } from "../../../utils/style.js";
8
8
  import { useEditableContext as je } from "../../table-cells/common/EditableContext.js";
9
- import { useGroupedOptions as Xe } from "./useGroupedOptions.js";
10
- const ll = (l, b, h) => {
11
- const te = ke("isTreeDropdown", !1), {
12
- sortOutGroups: G,
13
- flattenAndMarkGroupOptions: ae,
14
- isGroup: H,
15
- selectAllWithGroups: ne,
16
- isIndeterminateGrouped: ue,
17
- allSelectedGrouped: ie,
18
- areAllPreviousSelected: re
19
- } = Xe(l), oe = (e, t) => l.multi ? l.comparingKey ? e.findIndex(
20
- (u) => u[l.comparingKey] === t[l.comparingKey]
21
- ) > -1 : ee(e, t) : l.comparingKey ? e[l.comparingKey] === t[l.comparingKey] : P(e) === t;
22
- let B;
9
+ import { useGroupedOptions as ze } from "./useGroupedOptions.js";
10
+ const tl = (l, f, g) => {
11
+ const B = Ve("isTreeDropdown", !1), {
12
+ sortOutGroups: H,
13
+ flattenAndMarkGroupOptions: ue,
14
+ isGroup: U,
15
+ selectAllWithGroups: ie,
16
+ isIndeterminateGrouped: re,
17
+ allSelectedGrouped: q,
18
+ areAllPreviousSelected: oe
19
+ } = ze(l), ce = (e, t) => l.multi && Array.isArray(e) ? l.comparingKey ? e?.findIndex(
20
+ (i) => i[l.comparingKey] === t[l.comparingKey]
21
+ ) > -1 : ae(e, t) : l.comparingKey ? e?.[l.comparingKey] === t[l.comparingKey] : e === t;
22
+ let X;
23
23
  ((e) => {
24
24
  e[e.None = 0] = "None", e[e.Next = 1] = "Next", e[e.Previous = -1] = "Previous", e[e.NextPage = 10] = "NextPage", e[e.PrevPage = -10] = "PrevPage";
25
- })(B || (B = {}));
26
- const a = i(
25
+ })(X || (X = {}));
26
+ const a = r(
27
27
  l.selected
28
- ), C = je(), n = r({
28
+ ), R = je(), n = c({
29
29
  get() {
30
- return C?.value?.value ?? a.value;
30
+ return R?.value?.value ?? a.value;
31
31
  },
32
32
  set(e) {
33
- C.onChange?.(e), C.onClose?.(), b("update:selected", e);
33
+ R.onChange?.(e), R.onClose?.(), f("update:selected", e);
34
34
  }
35
35
  });
36
- A(
36
+ b(
37
37
  () => l.selected,
38
38
  () => {
39
39
  a.value = l.selected, d.value = l.selected;
40
40
  }
41
41
  );
42
- const ce = _e(), w = i(null), O = i(null), L = i(null), R = i(null), U = i(null), I = i(null), se = i(), q = i(null), $ = i(null), j = i(null), de = 8, ve = r(() => I.value ? I.value.getBoundingClientRect().height + de + l.distance : 0), X = i(!1), f = i([]), x = i(-1), m = i(""), d = i(l.selected || []), z = () => I.value?.focus(), [g, fe, ge] = Ve({
42
+ const se = ke(), w = r(null), m = r(null), $ = r(null), E = r(null), j = r(null), I = r(null), de = r(), z = r(null), W = r(null), J = r(null), ve = 8, fe = c(() => I.value ? I.value.getBoundingClientRect().height + ve + l.distance : 0), D = r(!1), y = r([]), x = r(-1), h = r(""), d = r(l.selected || []), Q = () => I.value?.focus(), [O, ge, ye] = _e({
43
43
  disabled: l.disabled,
44
44
  initialValue: l.defaultOpen
45
45
  });
46
- A(
46
+ b(
47
47
  () => l.disabled,
48
48
  (e) => {
49
- e !== void 0 && ge(e);
49
+ e !== void 0 && ye(e);
50
50
  }
51
51
  );
52
- const W = (e) => {
53
- ye.value = fe(e);
54
- }, ye = r({
52
+ const Y = (e) => {
53
+ he.value = ge(e);
54
+ }, he = c({
55
55
  get() {
56
56
  return l.isOpen;
57
57
  },
58
58
  set(e) {
59
- b("update:isOpen", e);
59
+ f("update:isOpen", e);
60
60
  }
61
- }), he = r(() => o.value.length - 1), v = Le(0, 0, he), J = r(() => n.value ? l.displayValue(n.value) : ""), Oe = (e) => {
61
+ }), Oe = c(() => o.value.length - 1), v = He(0, 0, Oe), Z = c(() => n.value ? l.displayValue(n.value) : ""), Se = (e) => {
62
62
  if (!e.value.length && !l.multiOptionsPlaceholderPrefix && !l.multiOptionsPlaceholderSuffix)
63
63
  return l.placeholder;
64
64
  const t = !l.multiOptionsPlaceholderPrefix && !l.multiOptionsPlaceholderSuffix ? `${e.value.length} selected` : `${l.multiOptionsPlaceholderPrefix ?? ""}${e.value.length ?? "0"}${l.multiOptionsPlaceholderSuffix ?? ""}`;
65
65
  return e.value.length == 1 && l.displayValue ? l.displayValue(e.value[0]) : t;
66
- }, me = r(() => {
66
+ }, me = c(() => {
67
67
  if (!l.multi)
68
68
  return n.value ? l.displayValue(n.value) : l.placeholder;
69
69
  if (Array.isArray(a.value))
70
- return Oe(a);
71
- }), E = r(() => {
70
+ return Se(a);
71
+ }), M = c(() => {
72
72
  if (Array.isArray(a.value))
73
- return l.groupedOptions ? ie(o, a) : a.value.length === o.value.length;
74
- }), Se = r(() => !l.multi || !Array.isArray(a.value) ? !1 : l.groupedOptions ? ue(
73
+ return l.groupedOptions ? q(o, a) : a.value.length === o.value.length;
74
+ }), Ae = c(() => !l.multi || !Array.isArray(a.value) ? !1 : l.groupedOptions ? re(
75
75
  o,
76
76
  a
77
- ) : a.value.length > 0 && a.value.length < o.value.length), M = (e) => {
78
- m.value = e;
79
- }, D = r(() => l.groupedOptions ? ae(l.options) : l.options), be = r(() => {
80
- if (re(
81
- D,
77
+ ) : a.value.length > 0 && a.value.length < o.value.length), _ = (e) => {
78
+ h.value = e;
79
+ }, N = c(() => l.groupedOptions ? ue(l.options) : l.options), be = c(() => {
80
+ if (oe(
81
+ N,
82
82
  d
83
83
  ))
84
- return D.value;
84
+ return N.value;
85
85
  const e = {
86
86
  selected: [],
87
87
  notSelected: []
88
88
  };
89
- P(D).value.forEach((u) => {
90
- const s = (l.comparingKey ? d.value.findIndex(
91
- (k) => k[l.comparingKey] === u[l.comparingKey]
92
- ) > -1 : d.value.includes(u)) ? "selected" : "notSelected";
93
- e[s].push(u);
89
+ P(N).value.forEach((i) => {
90
+ const u = (l.comparingKey ? d.value.findIndex(
91
+ (G) => G[l.comparingKey] === i[l.comparingKey]
92
+ ) > -1 : d.value.includes(i)) ? "selected" : "notSelected";
93
+ e[u].push(i);
94
94
  });
95
- const t = l.groupedOptions ? G(e.notSelected) : e.notSelected;
95
+ const t = l.groupedOptions ? H(e.notSelected) : e.notSelected;
96
96
  return [].concat(e.selected, t);
97
- }), o = r(() => {
98
- const e = Array.isArray(d.value) && l.multi && h.VERSION === 4 && !te ? be.value : D.value;
97
+ }), o = c(() => {
98
+ const e = Array.isArray(d.value) && l.multi && g.VERSION === 4 && !B ? be.value : N.value;
99
99
  if (l.onSearch) {
100
- const t = e.filter((u) => l.groupedOptions && H(u) ? u : l.onSearch(u, m.value));
101
- return l.groupedOptions ? G(t) : t;
100
+ const t = e.filter((i) => l.groupedOptions && U(i) ? i : l.onSearch(i, h.value));
101
+ return l.groupedOptions ? H(t) : t;
102
102
  } else
103
103
  return e;
104
- }), Ae = r(() => f.value[0]?.hasSubtitle), Q = r(() => c.mode === T.Multi), Y = r(
105
- () => Ae.value ? h.MULTILINE_LIST_HEIGHT : h.LIST_HEIGHT
104
+ }), Pe = c(() => y.value[0]?.hasSubtitle), F = c(() => s.mode === T.Multi), p = c(
105
+ () => Pe.value ? g.MULTILINE_LIST_HEIGHT : g.LIST_HEIGHT
106
106
  ), {
107
- list: Z,
108
- containerProps: F,
109
- wrapperProps: Pe,
110
- scrollTo: K
107
+ list: ee,
108
+ containerProps: V,
109
+ wrapperProps: Te,
110
+ scrollTo: C
111
111
  } = Ue(o, {
112
- itemHeight: Y.value,
112
+ itemHeight: p.value,
113
113
  overscan: l.disableVirtualScroll ? 1 / 0 : 2
114
114
  });
115
- A(
115
+ b(
116
116
  () => l.isOpen,
117
117
  (e) => {
118
- W(e);
118
+ Y(e);
119
119
  }
120
- ), A([x], async () => {
121
- await N();
122
- }), A(
123
- [g, v, x],
120
+ ), b([x], async () => {
121
+ await K();
122
+ }), b(
123
+ [O, v, x],
124
124
  async ([e], [t]) => {
125
- g.value && (await N(), x.value !== -1 && e !== t && setTimeout(() => {
126
- l.multi && h.VERSION === 4 || K(x.value);
125
+ O.value && (await K(), x.value !== -1 && e !== t && setTimeout(() => {
126
+ l.multi && g.VERSION === 4 || C(x.value);
127
127
  }), v.value && setTimeout(() => {
128
- K(v.value);
128
+ C(v.value);
129
129
  }));
130
130
  }
131
- ), A(m, () => {
132
- b("onsearch", m.value), K(0);
131
+ ), b(h, () => {
132
+ f("onsearch", h.value), C(0);
133
133
  });
134
- const S = (e, t = !1) => {
135
- l.disabled || (W(e), N(() => {
136
- g.value && b("opened"), g.value || b("closed"), w.value && t && w.value.focus();
134
+ const A = (e, t = !1) => {
135
+ l.disabled || (Y(e), K(() => {
136
+ O.value && f("opened"), O.value || f("closed"), w.value && t && w.value.focus();
137
137
  }));
138
138
  };
139
- A(g, (e) => {
139
+ b(O, (e) => {
140
140
  if (e) {
141
- m.value = "", Q.value && Array.isArray(n.value) && (d.value = P(n.value).slice());
141
+ h.value = "", F.value && Array.isArray(n.value) && (d.value = P(n.value).slice());
142
142
  return;
143
143
  }
144
- z();
144
+ Q();
145
145
  });
146
- const Te = () => {
147
- if (E.value) {
146
+ const we = () => {
147
+ if (M.value) {
148
148
  a.value = [];
149
149
  return;
150
150
  }
151
151
  if (Array.isArray(a.value)) {
152
152
  if (l.groupedOptions)
153
- ne(o, a);
153
+ ie(o, a);
154
154
  else {
155
155
  if (a.value.length === o.value.length) {
156
156
  a.value = [];
@@ -158,114 +158,117 @@ const ll = (l, b, h) => {
158
158
  }
159
159
  a.value = o.value;
160
160
  }
161
- b("selectAll");
161
+ f("selectAll");
162
162
  }
163
- }, we = () => {
164
- Te(), h.VERSION !== 4 && (n.value = a.value);
165
- }, Ie = (e = !0) => {
166
- a.value = [], e && (n.value = [], d.value = []), b("clear");
167
- }, V = (e, t) => {
168
- if (e = P(e), h.VERSION === 4 ? e[l.disabledOptionKey] : f.value[t]?.disabled)
163
+ }, Ie = () => {
164
+ we(), g.VERSION !== 4 && (n.value = a.value);
165
+ }, xe = (e = !0) => {
166
+ a.value = [], e && (n.value = [], d.value = []), f("clear");
167
+ }, k = (e, t) => {
168
+ if (e = P(e), g.VERSION === 4 ? e[l.disabledOptionKey] : y.value[t]?.disabled)
169
169
  return;
170
- if (x.value = t, c.mode !== T.Multi) {
171
- l.keepOpen || S(!1), c.goToOption(
170
+ if (x.value = t, !l.multi) {
171
+ l.keepOpen || A(!1), s.goToOption(
172
172
  0
173
173
  /* None */
174
- ), n.value = e, M(""), z(), c.type === _.Search && O.value && (O.value.value = l.displayValue(e));
174
+ ), n.value = e, _(""), Q(), s.type === L.Search && m.value && (m.value.value = l.displayValue(e)), le();
175
175
  return;
176
176
  }
177
177
  if (!Array.isArray(a.value))
178
178
  return;
179
- O.value?.focus();
180
- const y = P(a.value);
181
- if (ee(y, e) || l.comparingKey && y.findIndex(
182
- (s) => s[l.comparingKey] === e[l.comparingKey]
179
+ m.value?.focus();
180
+ const S = P(a.value);
181
+ if (ae(S, e) || l.comparingKey && S.findIndex(
182
+ (u) => u[l.comparingKey] === e[l.comparingKey]
183
183
  ) > -1) {
184
- a.value = y.filter((s) => l.comparingKey ? s[l.comparingKey] !== e[l.comparingKey] : !Be(s, e));
184
+ a.value = S.filter((u) => l.comparingKey ? u[l.comparingKey] !== e[l.comparingKey] : !Be(u, e));
185
185
  return;
186
186
  } else {
187
- a.value = [...y, e];
187
+ a.value = [...S, e];
188
188
  return;
189
189
  }
190
- }, xe = (e) => f.value[e]?.disabled, c = {
190
+ }, De = (e) => y.value[e]?.disabled, s = {
191
191
  activeIndex: v,
192
- options: f,
192
+ options: y,
193
193
  selectedOption: n,
194
- labelRef: U,
195
- activeOption: R,
194
+ labelRef: j,
195
+ activeOption: E,
196
196
  listRef: w,
197
197
  clearable: l.clearable,
198
- type: ce.input ? _.Search : _.Dropdown,
198
+ type: se.input ? L.Search : L.Dropdown,
199
199
  mode: l.multi ? T.Multi : T.Single,
200
- query: m,
201
- selectedValue: J,
202
- toggle: S,
200
+ query: h,
201
+ selectedValue: Z,
202
+ toggle: A,
203
203
  disabled: l.disabled,
204
- open: g,
204
+ open: O,
205
205
  mandatory: l.mandatory,
206
206
  size: l.size,
207
207
  placeholder: l.placeholder,
208
- select: V,
208
+ select: k,
209
209
  clearSelection: () => {
210
- M(""), n.value = c.mode === T.Single ? null : [], d.value = c.mode === T.Single ? null : [], O.value && (O.value.value = "");
210
+ _(""), n.value = s.mode === T.Single ? null : [], d.value = s.mode === T.Single ? null : [], m.value && (m.value.value = "");
211
211
  },
212
- search: M,
212
+ search: _,
213
213
  goToOption: async (e) => {
214
- if (!g.value)
214
+ if (!O.value)
215
215
  return;
216
216
  let t = v.value + e;
217
- const u = f.value.filter(
218
- (s) => s.disabled
219
- ).length, y = o.value.length - u;
220
- for (t > y && (t = y + 1); ; ) {
221
- if (!f.value[t]?.disabled) {
222
- R.value = o.value[t], v.value = t;
217
+ const i = y.value.filter(
218
+ (u) => u.disabled
219
+ ).length, S = o.value.length - i;
220
+ for (t > S && (t = S + 1); ; ) {
221
+ if (!y.value[t]?.disabled) {
222
+ E.value = o.value[t], v.value = t;
223
223
  return;
224
224
  }
225
- if ((e === 1 || e === 10) && (t = t + 1), (e === -1 || e === -10) && (t = t + -1), !!xe(v.value)) {
226
- R.value = o.value[t], v.value = t;
225
+ if ((e === 1 || e === 10) && (t = t + 1), (e === -1 || e === -10) && (t = t + -1), !!De(v.value)) {
226
+ E.value = o.value[t], v.value = t;
227
227
  return;
228
228
  }
229
229
  }
230
230
  },
231
231
  registerInput: (e) => {
232
- O.value = e.value;
232
+ m.value = e.value;
233
233
  },
234
- registerOption: (e, t, u) => {
235
- f.value = [...f.value, { id: e, disabled: t, hasSubtitle: u }];
234
+ registerOption: (e, t, i) => {
235
+ y.value = [...y.value, { id: e, disabled: t, hasSubtitle: i }];
236
236
  },
237
237
  unRegisterOption(e) {
238
- f.value = f.value.filter((t) => t.id !== e);
238
+ y.value = y.value.filter((t) => t.id !== e);
239
239
  }
240
240
  };
241
- Ge(qe, c), le(
241
+ Ge(Xe, s), ne(
242
242
  w,
243
243
  () => {
244
- g.value && p();
244
+ O.value && te();
245
245
  },
246
246
  {
247
247
  ignore: [
248
248
  I,
249
- q,
250
- $,
251
- j,
252
- O,
253
- F.ref
249
+ z,
250
+ W,
251
+ J,
252
+ m,
253
+ V.ref
254
254
  ]
255
255
  }
256
256
  );
257
- const De = () => {
258
- O.value && (O.value.value = c.query.value = "");
257
+ const Me = () => {
258
+ m.value && (m.value.value = s.query.value = "");
259
259
  };
260
- He(async () => {
261
- l.autoFocus && (await N(), setTimeout(() => {
262
- L.value.focus();
263
- })), c.goToOption(0);
260
+ Le(async () => {
261
+ l.autoFocus && (await K(), setTimeout(() => {
262
+ $.value.focus();
263
+ })), s.goToOption(0), l.multi && !B && (l.groupedOptions ? D.value = q(
264
+ o,
265
+ a
266
+ ) : D.value = l.options.length === l.selected.length);
264
267
  });
265
- const Ke = () => {
266
- X.value = E.value, n.value = a.value, Array.isArray(n.value) && (d.value = P(n.value).slice()), b("apply", n.value), S(!1), De();
267
- }, p = () => {
268
- Q.value && Array.isArray(d.value) && (n.value = P(d.value).slice()), m.value = "", S(!1);
268
+ const le = () => {
269
+ l.multi && (D.value = M.value, n.value = a.value, Array.isArray(n.value) && (d.value = P(n.value).slice())), f("apply", n.value), f("allSelectedChanged", M.value), A(!1), Me();
270
+ }, te = () => {
271
+ F.value && Array.isArray(d.value) && (n.value = P(d.value).slice()), h.value = "", A(!1);
269
272
  }, Ne = (e) => {
270
273
  if (!l.disableKeyboardEvents)
271
274
  switch (e.key) {
@@ -273,103 +276,109 @@ const ll = (l, b, h) => {
273
276
  case "Enter":
274
277
  case "ArrowUp":
275
278
  case "ArrowDown":
276
- S(!0), e.preventDefault();
279
+ A(!0), e.preventDefault();
277
280
  }
278
281
  }, Ce = (e) => {
279
282
  if (!l.disableKeyboardEvents)
280
283
  switch (e.key) {
281
284
  case "ArrowUp": {
282
- c.goToOption(
285
+ s.goToOption(
283
286
  -1
284
287
  /* Previous */
285
288
  ), e.preventDefault(), e.stopPropagation();
286
289
  break;
287
290
  }
288
291
  case "ArrowDown": {
289
- c.goToOption(
292
+ s.goToOption(
290
293
  1
291
294
  /* Next */
292
295
  ), e.preventDefault(), e.stopPropagation();
293
296
  break;
294
297
  }
295
298
  case "Escape": {
296
- S(!1), e.preventDefault();
299
+ A(!1), e.preventDefault();
297
300
  break;
298
301
  }
299
302
  case "PageUp": {
300
- c.goToOption(
303
+ s.goToOption(
301
304
  10
302
305
  /* NextPage */
303
306
  ), e.preventDefault();
304
307
  break;
305
308
  }
306
309
  case "PageDown": {
307
- c.goToOption(
310
+ s.goToOption(
308
311
  -10
309
312
  /* PrevPage */
310
313
  ), e.preventDefault();
311
314
  break;
312
315
  }
313
316
  case "Enter": {
314
- if (!g.value) {
315
- S(!0);
317
+ if (!O.value) {
318
+ A(!0);
316
319
  return;
317
320
  }
318
- V(o.value[v.value], v.value), c.mode === T.Single && !l.keepOpen && S(!1), e.preventDefault();
321
+ k(o.value[v.value], v.value), s.mode === T.Single && !l.keepOpen && A(!1), e.preventDefault();
319
322
  break;
320
323
  }
321
324
  }
322
- }, Re = r(() => {
325
+ }, Ke = c(() => {
323
326
  if (l.loading)
324
327
  return 8.5;
325
- const e = l.customNumberOfDisplayedOptions || Z.value.reduce((k, Ee) => {
326
- const Me = l.overrideOptionCountCalculation ? l.overrideOptionCountCalculation(Ee.data) : 1;
327
- return k + Me;
328
- }, 0), t = l.multi && l.showSelectAll && !m.value ? 1 : 0, u = e > h.MAX_NUMBER_OF_OPTIONS, y = e + t;
329
- let s = u ? h.MAX_NUMBER_OF_OPTIONS + 0.1 : y;
330
- return l.noResultsText && s === 0 && (s = s + 1), $e(
331
- s * Y.value + h.PADDING_PX
328
+ const e = l.loadMoreLoading && g.MAX_NUMBER_OF_OPTIONS || l.customNumberOfDisplayedOptions || ee.value.reduce((G, Re) => {
329
+ const Ee = l.overrideOptionCountCalculation ? l.overrideOptionCountCalculation(Re.data) : 1;
330
+ return G + Ee;
331
+ }, 0), t = l.multi && l.showSelectAll && !h.value ? 1 : 0, i = e > g.MAX_NUMBER_OF_OPTIONS, S = e + t;
332
+ let u = i ? g.MAX_NUMBER_OF_OPTIONS + 0.1 : S;
333
+ return l.loadMoreLoading && l.multi && (u = u - 0.9), l.noResultsText && u === 0 && (u = u + 1), l.withConditions && h.value && (u = u + 1), $e(
334
+ u * p.value + g.PADDING_PX
332
335
  );
333
336
  });
334
- return {
337
+ return qe(
338
+ V.ref,
339
+ () => {
340
+ !l.loadMoreLoading && l.infiniteLoading && f("loadMore");
341
+ },
342
+ { distance: l.infiniteScrollThreshold }
343
+ ), {
335
344
  onKeydown: Ce,
336
- location: ve,
337
- open: g,
338
- toggleMenu: S,
345
+ location: fe,
346
+ open: O,
347
+ toggleMenu: A,
339
348
  onButtonKeydown: Ne,
340
349
  displayedValue: me,
341
- labelRef: U,
342
- query: m,
343
- containerProps: F,
344
- calculateTableHeight: Re,
345
- wrapperProps: Pe,
350
+ labelRef: j,
351
+ query: h,
352
+ containerProps: V,
353
+ calculateTableHeight: Ke,
354
+ wrapperProps: Te,
346
355
  filteredOptions: o,
347
- allSelected: E,
348
- allSelectedApplied: X,
349
- isIndeterminate: Se,
350
- onSelectAll: we,
351
- virtualOptions: Z,
352
- isSelected: oe,
356
+ allSelected: M,
357
+ allSelectedApplied: D,
358
+ isIndeterminate: Ae,
359
+ onSelectAll: Ie,
360
+ virtualOptions: ee,
361
+ isSelected: ce,
353
362
  selectedOption: n,
354
363
  selectedOptionPrevious: d,
355
- selectedValue: J,
356
- onSelect: V,
364
+ selectedValue: Z,
365
+ onSelect: k,
357
366
  activeIndex: v,
358
- onCancel: p,
359
- onApply: Ke,
360
- scrollTo: K,
361
- onClickOutside: le,
367
+ onCancel: te,
368
+ onApply: le,
369
+ scrollTo: C,
370
+ onClickOutside: ne,
362
371
  listRef: w,
363
372
  buttonRef: I,
364
- apply: q,
365
- cancel: $,
366
- el: L,
367
- triggerRef: se,
368
- clearAll: j,
369
- onClearAllSelections: Ie,
370
- isGroup: H
373
+ apply: z,
374
+ cancel: W,
375
+ el: $,
376
+ triggerRef: de,
377
+ clearAll: J,
378
+ onClearAllSelections: xe,
379
+ isGroup: U
371
380
  };
372
381
  };
373
382
  export {
374
- ll as dropdownCommon
383
+ tl as dropdownCommon
375
384
  };
@@ -186,6 +186,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
186
186
  skidding: number;
187
187
  modelValue: any;
188
188
  selected: any;
189
+ valueToCopy: string;
189
190
  placeholder: string;
190
191
  autoFocus: boolean;
191
192
  multi: boolean;
@@ -197,9 +198,8 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
197
198
  inlineSearch: boolean;
198
199
  onSearch: (option: any, term: string) => boolean;
199
200
  noResultsText: string;
200
- valueToCopy: string;
201
- helperText: string;
202
201
  searchPlaceholder: string;
202
+ helperText: string;
203
203
  showButtonOnOpen: boolean;
204
204
  clearable: boolean;
205
205
  multiOptionsPlaceholderPrefix: string;