@featherk/ui 0.12.1 → 0.12.2

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.
@@ -1,17 +1,17 @@
1
1
  import "./ui.css";
2
- import { defineComponent as R, computed as l, openBlock as c, createElementBlock as w, normalizeClass as U, createElementVNode as E, createVNode as D, unref as o, Fragment as F, createBlock as y, withCtx as m, createTextVNode as g, toDisplayString as I, createCommentVNode as S, renderList as H, toValue as W } from "vue";
3
- import { Error as A, Hint as V } from "@progress/kendo-vue-labels";
4
- import { TextBox as b } from "@progress/kendo-vue-inputs";
2
+ import { defineComponent as F, computed as i, openBlock as c, createElementBlock as w, normalizeClass as O, createElementVNode as V, createVNode as E, unref as v, Fragment as $, createBlock as h, withCtx as I, createTextVNode as S, toDisplayString as k, createCommentVNode as A, normalizeStyle as U, renderList as H, toValue as W } from "vue";
3
+ import { Error as D, Hint as b } from "@progress/kendo-vue-labels";
4
+ import { TextBox as T } from "@progress/kendo-vue-inputs";
5
5
  import { DropDownList as J } from "@progress/kendo-vue-dropdowns";
6
6
  import { Button as Q } from "@progress/kendo-vue-buttons";
7
7
  import { useCompositeId as X, useActiveIdRegistry as Y, usePopupMenu as ee } from "@featherk/composables";
8
- const ae = { class: "address1" }, te = {
8
+ const ae = { class: "address1" }, le = {
9
9
  key: 0,
10
10
  class: "address2"
11
- }, le = { class: "city" }, re = { class: "state" }, ie = { class: "zip" }, de = {
11
+ }, te = { class: "city" }, re = { class: "state" }, ie = { class: "zip" }, de = {
12
12
  key: 1,
13
13
  class: "messages"
14
- }, M = "Enter a 5 or 9 digit zip code.", se = "Incomplete address.", ne = /* @__PURE__ */ R({
14
+ }, q = "Enter a 5 or 9 digit zip code.", se = "Incomplete address.", ne = /* @__PURE__ */ F({
15
15
  __name: "USAddress",
16
16
  props: {
17
17
  id: {},
@@ -22,7 +22,7 @@ const ae = { class: "address1" }, te = {
22
22
  showAddress2: { type: Boolean, default: !0 }
23
23
  },
24
24
  setup(n) {
25
- const t = n, d = {
25
+ const a = n, d = {
26
26
  placeholder: {
27
27
  address1: "Address Line 1",
28
28
  address2: "Address Line 2",
@@ -32,7 +32,7 @@ const ae = { class: "address1" }, te = {
32
32
  fieldset: {
33
33
  error: {
34
34
  required: "Required fields are missing.",
35
- zip: M
35
+ zip: q
36
36
  },
37
37
  hint: {
38
38
  address: "Enter address information."
@@ -44,130 +44,130 @@ const ae = { class: "address1" }, te = {
44
44
  address2: "",
45
45
  city: "Required",
46
46
  state: "Required",
47
- zip: M
47
+ zip: q
48
48
  },
49
49
  hint: {
50
50
  address1: "Enter address line 1.",
51
51
  address2: "Optional",
52
52
  city: "",
53
53
  state: "",
54
- zip: M
54
+ zip: q
55
55
  }
56
56
  }
57
- }, p = (a) => ({
57
+ }, m = (r) => ({
58
58
  placeholder: {
59
- address1: a?.placeholder?.address1 ?? d.placeholder.address1,
60
- address2: a?.placeholder?.address2 ?? d.placeholder.address2,
61
- city: a?.placeholder?.city ?? d.placeholder.city,
62
- zip: a?.placeholder?.zip ?? d.placeholder.zip
59
+ address1: r?.placeholder?.address1 ?? d.placeholder.address1,
60
+ address2: r?.placeholder?.address2 ?? d.placeholder.address2,
61
+ city: r?.placeholder?.city ?? d.placeholder.city,
62
+ zip: r?.placeholder?.zip ?? d.placeholder.zip
63
63
  },
64
64
  fieldset: {
65
65
  error: {
66
- required: a?.fieldset?.error?.required ?? d.fieldset.error.required,
67
- zip: a?.fieldset?.error?.zip ?? d.fieldset.error.zip
66
+ required: r?.fieldset?.error?.required ?? d.fieldset.error.required,
67
+ zip: r?.fieldset?.error?.zip ?? d.fieldset.error.zip
68
68
  },
69
69
  hint: {
70
- address: a?.fieldset?.hint?.address ?? d.fieldset.hint.address
70
+ address: r?.fieldset?.hint?.address ?? d.fieldset.hint.address
71
71
  }
72
72
  },
73
73
  field: {
74
74
  error: {
75
- address1: a?.field?.error?.address1 ?? d.field.error.address1,
76
- address2: a?.field?.error?.address2 ?? d.field.error.address2,
77
- city: a?.field?.error?.city ?? d.field.error.city,
78
- state: a?.field?.error?.state ?? d.field.error.state,
79
- zip: a?.field?.error?.zip ?? d.field.error.zip
75
+ address1: r?.field?.error?.address1 ?? d.field.error.address1,
76
+ address2: r?.field?.error?.address2 ?? d.field.error.address2,
77
+ city: r?.field?.error?.city ?? d.field.error.city,
78
+ state: r?.field?.error?.state ?? d.field.error.state,
79
+ zip: r?.field?.error?.zip ?? d.field.error.zip
80
80
  },
81
81
  hint: {
82
- address1: a?.field?.hint?.address1 ?? d.field.hint.address1,
83
- address2: a?.field?.hint?.address2 ?? d.field.hint.address2,
84
- city: a?.field?.hint?.city ?? d.field.hint.city,
85
- state: a?.field?.hint?.state ?? d.field.hint.state,
86
- zip: a?.field?.hint?.zip ?? d.field.hint.zip
82
+ address1: r?.field?.hint?.address1 ?? d.field.hint.address1,
83
+ address2: r?.field?.hint?.address2 ?? d.field.hint.address2,
84
+ city: r?.field?.hint?.city ?? d.field.hint.city,
85
+ state: r?.field?.hint?.state ?? d.field.hint.state,
86
+ zip: r?.field?.hint?.zip ?? d.field.hint.zip
87
87
  }
88
88
  }
89
- }), s = l(() => p(t.messages)), h = l(() => t.messageScope === "field"), C = l(() => t.messageScope === "fieldset"), i = l(() => t.required), f = l(() => i.value), v = l(() => ({
90
- address1: `${t.id}-address1`,
91
- address2: `${t.id}-address2`,
92
- city: `${t.id}-city`,
93
- state: `${t.id}-state`,
94
- zip: `${t.id}-zip`
95
- })), e = l(() => t.address), T = l(() => e.value.address1Valid.value && e.value.cityValid.value && e.value.stateValid.value), r = l(() => e.value.formData.address1.trim() !== "" || e.value.formData.address2.trim() !== "" || e.value.formData.city.trim() !== "" || (e.value.formData.state ?? "").trim() !== "" || e.value.formData.zip.replace(/\D/g, "") !== ""), u = l(() => {
89
+ }), s = i(() => m(a.messages)), f = i(() => a.messageScope === "field"), C = i(() => a.messageScope === "fieldset"), u = i(() => a.required), g = i(() => u.value), l = i(() => ({
90
+ address1: `${a.id}-address1`,
91
+ address2: `${a.id}-address2`,
92
+ city: `${a.id}-city`,
93
+ state: `${a.id}-state`,
94
+ zip: `${a.id}-zip`
95
+ })), e = i(() => a.address), p = i(() => e.value.address1Valid.value && e.value.cityValid.value && e.value.stateValid.value), z = i(() => e.value.formData.address1.trim() !== "" || e.value.formData.address2.trim() !== "" || e.value.formData.city.trim() !== "" || (e.value.formData.state ?? "").trim() !== "" || e.value.formData.zip.replace(/\D/g, "") !== ""), t = i(() => {
96
96
  if (e.value.optionalZipInvalid)
97
97
  return e.value.optionalZipInvalid.value;
98
- const a = e.value.formData.zip.replace(/\D/g, "");
99
- return !i.value && r.value && a.length !== 5 && a.length !== 9;
100
- }), _ = l(() => e.value.optionalPartialInvalid ? e.value.optionalPartialInvalid.value : !i.value && r.value && !e.value.addressValid.value), k = l(() => i.value || !_.value ? !1 : e.value.optionalFeedbackActive ? e.value.optionalFeedbackActive.value : !1), x = l(() => f.value && !e.value.address1Valid.value || k.value && e.value.formData.address1.trim() === ""), O = l(() => f.value && !e.value.cityValid.value || k.value && e.value.formData.city.trim() === ""), P = l(() => f.value && !e.value.stateValid.value || k.value && (e.value.formData.state ?? "").trim() === ""), q = l(() => f.value && !e.value.zipValid.value || k.value && u.value), z = l(() => i.value ? e.value.addressValidate.value : k.value), B = l(() => i.value ? e.value.address1Valid.value : !x.value), K = l(() => i.value ? e.value.cityValid.value : !O.value), L = l(() => i.value ? e.value.stateValid.value : !P.value), Z = l(() => i.value ? e.value.zipValid.value : !q.value), j = l(() => {
101
- const a = s.value.placeholder.address2;
102
- return C.value && i.value ? `${a} (Optional)` : a;
103
- }), N = l(() => {
104
- const a = [];
105
- return T.value || a.push(s.value.fieldset.error.required), e.value.zipValid.value || a.push(s.value.fieldset.error.zip), a.join(" ");
106
- }), G = l(() => {
107
- const a = [se];
108
- return u.value && a.push(s.value.fieldset.error.zip), a.join(" ");
98
+ const r = e.value.formData.zip.replace(/\D/g, "");
99
+ return !u.value && z.value && r.length !== 5 && r.length !== 9;
100
+ }), o = i(() => e.value.optionalPartialInvalid ? e.value.optionalPartialInvalid.value : !u.value && z.value && !e.value.addressValid.value), y = i(() => u.value || !o.value ? !1 : e.value.optionalFeedbackActive ? e.value.optionalFeedbackActive.value : !1), P = i(() => g.value && !e.value.address1Valid.value || y.value && e.value.formData.address1.trim() === ""), R = i(() => g.value && !e.value.cityValid.value || y.value && e.value.formData.city.trim() === ""), x = i(() => g.value && !e.value.stateValid.value || y.value && (e.value.formData.state ?? "").trim() === ""), M = i(() => g.value && !e.value.zipValid.value || y.value && t.value), _ = i(() => u.value ? e.value.addressValidate.value : y.value), B = i(() => u.value ? e.value.address1Valid.value : !P.value), K = i(() => u.value ? e.value.cityValid.value : !R.value), L = i(() => u.value ? e.value.stateValid.value : !x.value), N = i(() => u.value ? e.value.zipValid.value : !M.value), Z = i(() => {
101
+ const r = s.value.placeholder.address2;
102
+ return C.value && u.value ? `${r} (Optional)` : r;
103
+ }), j = i(() => {
104
+ const r = [];
105
+ return p.value || r.push(s.value.fieldset.error.required), e.value.zipValid.value || r.push(s.value.fieldset.error.zip), r.join(" ");
106
+ }), G = i(() => {
107
+ const r = [se];
108
+ return t.value && r.push(s.value.fieldset.error.zip), r.join(" ");
109
109
  });
110
- return (a, ve) => (c(), w("div", {
111
- class: U(["fkui-us-address", { "fkui-us-address--fieldset-scope": C.value }])
110
+ return (r, ve) => (c(), w("div", {
111
+ class: O(["fkui-us-address", { "fkui-us-address--fieldset-scope": C.value }])
112
112
  }, [
113
- E("div", ae, [
114
- D(o(b), {
115
- id: v.value.address1,
113
+ V("div", ae, [
114
+ E(v(T), {
115
+ id: l.value.address1,
116
116
  placeholder: s.value.placeholder.address1,
117
117
  value: e.value.formData.address1,
118
118
  valid: B.value,
119
- validate: z.value,
120
- validityStyles: z.value,
119
+ validate: _.value,
120
+ validityStyles: _.value,
121
121
  onInput: e.value.onAddress1Input
122
122
  }, null, 8, ["id", "placeholder", "value", "valid", "validate", "validityStyles", "onInput"]),
123
- h.value ? (c(), w(F, { key: 0 }, [
124
- x.value ? (c(), y(o(A), { key: 0 }, {
125
- default: m(() => [
126
- g(I(s.value.field.error.address1), 1)
123
+ f.value ? (c(), w($, { key: 0 }, [
124
+ P.value ? (c(), h(v(D), { key: 0 }, {
125
+ default: I(() => [
126
+ S(k(s.value.field.error.address1), 1)
127
127
  ]),
128
128
  _: 1
129
- })) : (c(), y(o(V), { key: 1 }, {
130
- default: m(() => [
131
- g(I(s.value.field.hint.address1), 1)
129
+ })) : (c(), h(v(b), { key: 1 }, {
130
+ default: I(() => [
131
+ S(k(s.value.field.hint.address1), 1)
132
132
  ]),
133
133
  _: 1
134
134
  }))
135
- ], 64)) : S("", !0)
135
+ ], 64)) : A("", !0)
136
136
  ]),
137
- a.showAddress2 ? (c(), w("div", te, [
138
- D(o(b), {
139
- id: v.value.address2,
140
- placeholder: j.value,
137
+ r.showAddress2 ? (c(), w("div", le, [
138
+ E(v(T), {
139
+ id: l.value.address2,
140
+ placeholder: Z.value,
141
141
  value: e.value.formData.address2,
142
142
  onInput: e.value.onAddress2Input
143
143
  }, null, 8, ["id", "placeholder", "value", "onInput"]),
144
- h.value ? (c(), y(o(V), { key: 0 }, {
145
- default: m(() => [
146
- g(I(s.value.field.hint.address2), 1)
144
+ f.value ? (c(), h(v(b), { key: 0 }, {
145
+ default: I(() => [
146
+ S(k(s.value.field.hint.address2), 1)
147
147
  ]),
148
148
  _: 1
149
- })) : S("", !0)
150
- ])) : S("", !0),
151
- E("div", le, [
152
- D(o(b), {
153
- id: v.value.city,
149
+ })) : A("", !0)
150
+ ])) : A("", !0),
151
+ V("div", te, [
152
+ E(v(T), {
153
+ id: l.value.city,
154
154
  placeholder: s.value.placeholder.city,
155
155
  value: e.value.formData.city,
156
156
  valid: K.value,
157
- validate: z.value,
158
- validityStyles: z.value,
157
+ validate: _.value,
158
+ validityStyles: _.value,
159
159
  onInput: e.value.onCityInput
160
160
  }, null, 8, ["id", "placeholder", "value", "valid", "validate", "validityStyles", "onInput"]),
161
- h.value && O.value ? (c(), y(o(A), { key: 0 }, {
162
- default: m(() => [
163
- g(I(s.value.field.error.city), 1)
161
+ f.value && R.value ? (c(), h(v(D), { key: 0 }, {
162
+ default: I(() => [
163
+ S(k(s.value.field.error.city), 1)
164
164
  ]),
165
165
  _: 1
166
- })) : S("", !0)
166
+ })) : A("", !0)
167
167
  ]),
168
- E("div", re, [
169
- D(o(J), {
170
- id: v.value.state,
168
+ V("div", re, [
169
+ E(v(J), {
170
+ id: l.value.state,
171
171
  value: e.value.formData.state,
172
172
  onChange: e.value.onStateChange,
173
173
  defaultItem: e.value.stateDefaultItem,
@@ -177,191 +177,205 @@ const ae = { class: "address1" }, te = {
177
177
  dataItemKey: "value",
178
178
  valuePrimitive: !0,
179
179
  valid: L.value,
180
- validate: z.value,
181
- validityStyles: z.value
180
+ validate: _.value,
181
+ validityStyles: _.value
182
182
  }, null, 8, ["id", "value", "onChange", "defaultItem", "dataItems", "valid", "validate", "validityStyles"]),
183
- h.value && P.value ? (c(), y(o(A), { key: 0 }, {
184
- default: m(() => [
185
- g(I(s.value.field.error.state), 1)
183
+ f.value && x.value ? (c(), h(v(D), { key: 0 }, {
184
+ default: I(() => [
185
+ S(k(s.value.field.error.state), 1)
186
186
  ]),
187
187
  _: 1
188
- })) : S("", !0)
188
+ })) : A("", !0)
189
189
  ]),
190
- E("div", ie, [
191
- D(o(b), {
192
- id: v.value.zip,
190
+ V("div", ie, [
191
+ E(v(T), {
192
+ id: l.value.zip,
193
193
  placeholder: s.value.placeholder.zip,
194
194
  wrapperClass: e.value.zipWrapperClass,
195
195
  value: e.value.zipDisplay.value,
196
196
  onInput: e.value.onZipInput,
197
- valid: Z.value,
198
- validate: z.value,
199
- validityStyles: z.value,
197
+ valid: N.value,
198
+ validate: _.value,
199
+ validityStyles: _.value,
200
200
  style: { width: "100%" }
201
201
  }, null, 8, ["id", "placeholder", "wrapperClass", "value", "onInput", "valid", "validate", "validityStyles"]),
202
- h.value && q.value ? (c(), y(o(A), { key: 0 }, {
203
- default: m(() => [
204
- g(I(s.value.field.error.zip), 1)
202
+ f.value && M.value ? (c(), h(v(D), { key: 0 }, {
203
+ default: I(() => [
204
+ S(k(s.value.field.error.zip), 1)
205
205
  ]),
206
206
  _: 1
207
- })) : S("", !0),
208
- h.value && !q.value ? (c(), y(o(V), { key: 1 }, {
209
- default: m(() => [
210
- g(I(s.value.field.hint.zip), 1)
207
+ })) : A("", !0),
208
+ f.value && !M.value ? (c(), h(v(b), { key: 1 }, {
209
+ default: I(() => [
210
+ S(k(s.value.field.hint.zip), 1)
211
211
  ]),
212
212
  _: 1
213
- })) : S("", !0)
213
+ })) : A("", !0)
214
214
  ]),
215
215
  C.value ? (c(), w("div", de, [
216
- f.value && !e.value.addressValid.value ? (c(), y(o(A), { key: 0 }, {
217
- default: m(() => [
218
- g(I(N.value), 1)
216
+ g.value && !e.value.addressValid.value ? (c(), h(v(D), { key: 0 }, {
217
+ default: I(() => [
218
+ S(k(j.value), 1)
219
219
  ]),
220
220
  _: 1
221
- })) : k.value ? (c(), y(o(A), { key: 1 }, {
222
- default: m(() => [
223
- g(I(G.value), 1)
221
+ })) : y.value ? (c(), h(v(D), { key: 1 }, {
222
+ default: I(() => [
223
+ S(k(G.value), 1)
224
224
  ]),
225
225
  _: 1
226
- })) : (c(), y(o(V), { key: 2 }, {
227
- default: m(() => [
228
- g(I(s.value.fieldset.hint.address), 1)
226
+ })) : (c(), h(v(b), { key: 2 }, {
227
+ default: I(() => [
228
+ S(k(s.value.fieldset.hint.address), 1)
229
229
  ]),
230
230
  _: 1
231
231
  }))
232
- ])) : S("", !0)
232
+ ])) : A("", !0)
233
233
  ], 2));
234
234
  }
235
- }), $ = (n, t) => {
235
+ }), oe = (n, a) => {
236
236
  const d = n.__vccOpts || n;
237
- for (const [p, s] of t)
238
- d[p] = s;
237
+ for (const [m, s] of a)
238
+ d[m] = s;
239
239
  return d;
240
- }, ge = /* @__PURE__ */ $(ne, [["__scopeId", "data-v-8aeb035b"]]), ue = ["id"], oe = /* @__PURE__ */ R({
240
+ }, ge = /* @__PURE__ */ oe(ne, [["__scopeId", "data-v-8aeb035b"]]), ue = ["id", "colspan", "aria-colindex", "aria-selected", "data-grid-col-index"], Ie = /* @__PURE__ */ F({
241
+ inheritAttrs: !1,
241
242
  __name: "ActionCell",
242
243
  props: {
243
- dataItem: {
244
- type: Object,
245
- required: !0
246
- },
247
- config: {
248
- type: Object,
249
- required: !0
250
- },
251
- menuController: {
252
- type: Object,
253
- required: !0
254
- },
255
- tabIndex: {
256
- type: Number,
257
- default: -1
258
- }
244
+ id: {},
245
+ className: {},
246
+ style: {},
247
+ colSpan: {},
248
+ ariaColumnIndex: {},
249
+ isSelected: { type: Boolean },
250
+ columnIndex: {},
251
+ dataItem: {},
252
+ config: {},
253
+ menuController: {},
254
+ tabIndex: { default: -1 }
259
255
  },
260
256
  setup(n) {
261
- const t = n, d = X("action-cell"), p = (i) => t.menuController.getTriggerId(i, t.dataItem), s = (i) => t.menuController.registry.isIdActive(p(i)), h = (i, f) => {
262
- t.menuController.registry.register(
263
- p(i),
264
- f
257
+ const a = n, d = X("action-cell"), m = (l) => a.menuController.getTriggerId(l, a.dataItem), s = (l) => a.menuController.registry.isIdActive(m(l)), f = (l) => typeof l.items == "function", C = (l, e) => {
258
+ a.menuController.registry.register(
259
+ m(l),
260
+ e
265
261
  );
266
- }, C = (i, ...f) => {
267
- t.menuController.handleTriggerKeydown(p(i), ...f);
262
+ }, u = (l) => {
263
+ if (!f(l)) {
264
+ a.menuController.handleDirectAction?.(l, a.dataItem);
265
+ return;
266
+ }
267
+ a.menuController.handleTriggerClick(m(l));
268
+ }, g = (l, ...e) => {
269
+ f(l) && a.menuController.handleTriggerKeydown(m(l), ...e);
268
270
  };
269
- return (i, f) => (c(), w("td", {
270
- id: o(d).instanceId,
271
- class: "fkui-action-cell"
271
+ return (l, e) => (c(), w("td", {
272
+ id: l.id ?? v(d).instanceId,
273
+ class: O(["fkui-action-cell", "k-table-td", l.className]),
274
+ style: U(l.style),
275
+ colspan: l.colSpan,
276
+ role: "gridcell",
277
+ "aria-colindex": l.ariaColumnIndex,
278
+ "aria-selected": l.isSelected,
279
+ "data-grid-col-index": l.columnIndex
272
280
  }, [
273
- (c(!0), w(F, null, H(n.config.triggers, (v) => (c(), y(o(Q), {
274
- key: v.key,
281
+ (c(!0), w($, null, H(l.config.triggers, (p) => (c(), h(v(Q), {
282
+ key: p.key,
275
283
  ref_for: !0,
276
- ref: (e) => h(v, e),
277
- id: o(d).compose(v.key, "trigger"),
278
- "svg-icon": v.icon,
284
+ ref: f(p) ? (z) => C(p, z) : void 0,
285
+ id: v(d).compose(p.key, "trigger"),
286
+ "svg-icon": p.icon,
279
287
  type: "button",
280
288
  "fill-mode": "flat",
281
289
  "theme-color": "primary",
282
290
  rounded: "full",
283
- "aria-label": v.ariaLabel,
284
- "aria-haspopup": "menu",
285
- "aria-expanded": s(v),
286
- disabled: v.disabled?.(n.dataItem),
287
- tabindex: n.tabIndex,
288
- onClick: (e) => n.menuController.handleTriggerClick(p(v)),
289
- onKeydown: (e) => C(v, e)
290
- }, null, 8, ["id", "svg-icon", "aria-label", "aria-expanded", "disabled", "tabindex", "onClick", "onKeydown"]))), 128))
291
- ], 8, ue));
291
+ "aria-label": p.ariaLabel,
292
+ "aria-haspopup": f(p) ? "menu" : void 0,
293
+ "aria-expanded": f(p) ? s(p) : void 0,
294
+ disabled: p.disabled?.(l.dataItem),
295
+ tabindex: l.tabIndex,
296
+ onClick: (z) => u(p),
297
+ onKeydown: (z) => g(p, z)
298
+ }, null, 8, ["id", "svg-icon", "aria-label", "aria-haspopup", "aria-expanded", "disabled", "tabindex", "onClick", "onKeydown"]))), 128))
299
+ ], 14, ue));
292
300
  }
293
- }), Ie = /* @__PURE__ */ $(oe, [["__scopeId", "data-v-2a6441af"]]), _e = (n) => {
294
- const t = Y(), d = n.getTriggerId ?? ((r, u) => `${r.key}:${n.getRowId(u)}`), p = l(() => {
295
- const r = t.activeId.value?.split(":")[0];
296
- return n.config.triggers.find((u) => u.key === r) ?? null;
297
- }), s = l(() => {
298
- const r = t.activeId.value?.split(":").slice(1).join(":");
299
- return r === void 0 ? null : W(n.rows).find(
300
- (u) => String(n.getRowId(u)) === r
301
+ }), Se = (n) => {
302
+ const a = Y();
303
+ n.group?.register(a);
304
+ const d = n.getTriggerId ?? ((t, o) => `${t.key}:${n.getRowId(o)}`), m = i(() => {
305
+ const t = a.activeId.value?.split(":")[0];
306
+ return n.config.triggers.find((o) => o.key === t) ?? null;
307
+ }), s = i(() => {
308
+ const t = a.activeId.value?.split(":").slice(1).join(":");
309
+ return t === void 0 ? null : W(n.rows).find(
310
+ (o) => String(n.getRowId(o)) === t
301
311
  ) ?? null;
302
- }), h = l(() => {
303
- const r = s.value, u = p.value;
304
- return r && u ? u.items?.(r) ?? [] : [];
305
- }), C = l(() => {
306
- const r = s.value, u = p.value;
307
- return r && u?.title ? u.title(r) : null;
308
- }), i = ee({
309
- isOpen: t.isActive,
310
- triggerRef: t.activeElement,
312
+ }), f = i(() => {
313
+ const t = s.value, o = m.value;
314
+ return t && o ? o.items?.(t) ?? [] : [];
315
+ }), C = i(() => {
316
+ const t = s.value, o = m.value;
317
+ return t && o && typeof o.items == "function" && o.title ? o.title(t) : null;
318
+ }), u = ee({
319
+ isOpen: a.isActive,
320
+ triggerRef: a.activeElement,
311
321
  menuRef: n.menuRef,
312
322
  triggerMode: n.triggerMode ?? "button",
313
323
  anchor: n.anchor ?? !0,
314
324
  resolveFocusTarget: n.resolveFocusTarget,
315
- requestShow: (r) => {
316
- typeof r == "string" && t.activate(r);
325
+ requestShow: (t) => {
326
+ typeof t == "string" && a.activate(t);
317
327
  },
318
- requestHide: () => t.deactivate()
319
- }), f = (r) => {
320
- t.isActive.value && !t.isIdActive(r) && t.deactivate(), n.coexistsWith?.forEach((u) => u.deactivate()), i.handleActionButtonClick(r);
321
- }, v = (r, ...u) => {
322
- const _ = u[0];
323
- if (_.key === "Enter" || _.code === "Space") {
324
- _.preventDefault(), f(r);
328
+ requestHide: () => a.deactivate(),
329
+ menuLabel: C
330
+ }), g = (t) => {
331
+ a.isActive.value && !a.isIdActive(t) && a.deactivate(), n.group?.deactivateOthers(a), u.handleActionButtonClick(t);
332
+ }, l = (t, o) => {
333
+ n.group?.deactivateOthers(a), a.deactivate(), n.onActionSelected(void 0, o, t);
334
+ }, e = (t, ...o) => {
335
+ const y = o[0];
336
+ if (y.key === "Enter" || y.code === "Space") {
337
+ y.preventDefault(), g(t);
325
338
  return;
326
339
  }
327
- i.handleActionButtonKeydown(_, r);
328
- }, e = (r) => {
329
- r.key === "Escape" && i.handleActionMenuEscape(r);
330
- }, T = (r) => {
331
- const u = s.value, _ = p.value;
332
- i.handleMenuSelect(r, (k) => {
333
- u && _ && n.onActionSelected(k.item?.text, u, _);
340
+ u.handleActionButtonKeydown(y, t);
341
+ }, p = (t) => {
342
+ t.key === "Escape" && u.handleActionMenuEscape(t);
343
+ }, z = (t) => {
344
+ const o = s.value, y = m.value;
345
+ u.handleMenuSelect(t, () => {
346
+ o && y && n.onActionSelected(t.item, o, y);
334
347
  });
335
348
  };
336
349
  return {
337
350
  actionCellProps: {
338
351
  config: n.config,
339
352
  menuController: {
340
- registry: t,
353
+ registry: a,
341
354
  getTriggerId: d,
342
- handleTriggerClick: f,
343
- handleTriggerKeydown: v
355
+ handleTriggerClick: g,
356
+ handleDirectAction: l,
357
+ handleTriggerKeydown: e
344
358
  }
345
359
  },
346
- popupProps: l(() => ({
347
- show: t.isActive.value,
348
- offset: i.offset.value,
349
- onClose: i.handlePopupClose
360
+ popupProps: i(() => ({
361
+ show: a.isActive.value,
362
+ offset: u.offset.value,
363
+ onClose: u.handlePopupClose
350
364
  })),
351
- menuProps: l(() => ({
352
- items: h.value,
365
+ menuProps: i(() => ({
366
+ items: f.value,
353
367
  vertical: !0,
354
- onKeydown: e,
355
- onSelect: T
368
+ onKeydown: p,
369
+ onSelect: z
356
370
  })),
357
371
  activeRow: s,
358
- activeTrigger: p,
372
+ activeTrigger: m,
359
373
  activeTitle: C
360
374
  };
361
375
  };
362
376
  export {
363
377
  Ie as ActionCell,
364
378
  ge as USAddress,
365
- _e as useActionCellMenu
379
+ Se as useActionCellMenu
366
380
  };
367
381
  //# sourceMappingURL=featherk-ui.es.js.map