@nonsuch/component-library 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +34 -21
  2. package/dist/components/NsAvatar/NsAvatar.vue.d.ts +40 -0
  3. package/dist/components/NsAvatar/index.d.ts +1 -0
  4. package/dist/components/NsBanner/NsBanner.vue.d.ts +30 -0
  5. package/dist/components/NsBanner/index.d.ts +1 -0
  6. package/dist/components/NsButton/NsButton.vue.d.ts +42 -0
  7. package/dist/components/NsButton/index.d.ts +1 -0
  8. package/dist/components/NsCard/NsCard.vue.d.ts +35 -0
  9. package/dist/components/NsCard/index.d.ts +1 -0
  10. package/dist/components/NsCheckbox/NsCheckbox.vue.d.ts +30 -0
  11. package/dist/components/NsCheckbox/index.d.ts +1 -0
  12. package/dist/components/NsChip/NsChip.vue.d.ts +44 -0
  13. package/dist/components/NsChip/index.d.ts +1 -0
  14. package/dist/components/NsDialog/NsDialog.vue.d.ts +42 -0
  15. package/dist/components/NsDialog/index.d.ts +1 -0
  16. package/dist/components/NsForm/NsForm.vue.d.ts +34 -0
  17. package/dist/components/NsForm/index.d.ts +1 -0
  18. package/dist/components/NsInput/NsInput.vue.d.ts +42 -0
  19. package/dist/components/NsInput/index.d.ts +1 -0
  20. package/dist/components/NsList/NsList.vue.d.ts +34 -0
  21. package/dist/components/NsList/index.d.ts +1 -0
  22. package/dist/components/NsSelect/NsSelect.vue.d.ts +59 -0
  23. package/dist/components/NsSelect/index.d.ts +1 -0
  24. package/dist/components/NsSkeleton/NsSkeleton.vue.d.ts +33 -0
  25. package/dist/components/NsSkeleton/index.d.ts +2 -0
  26. package/dist/components/NsThemeProvider/NsThemeProvider.vue.d.ts +36 -0
  27. package/dist/components/NsThemeProvider/index.d.ts +1 -0
  28. package/dist/components/NsToggle/NsToggle.vue.d.ts +30 -0
  29. package/dist/components/NsToggle/index.d.ts +1 -0
  30. package/dist/components/NsTooltip/NsTooltip.vue.d.ts +35 -0
  31. package/dist/components/NsTooltip/index.d.ts +1 -0
  32. package/dist/composables/index.d.ts +4 -0
  33. package/dist/composables/useNsDarkMode.d.ts +37 -0
  34. package/dist/composables/useNsDefaults.d.ts +25 -0
  35. package/dist/composables/useNsLocale.d.ts +28 -0
  36. package/dist/index.d.ts +43 -0
  37. package/dist/locale/NsLocaleMessages.d.ts +58 -0
  38. package/dist/locale/en-CA.d.ts +8 -0
  39. package/dist/locale/fr-CA.d.ts +5 -0
  40. package/dist/locale/index.d.ts +3 -0
  41. package/dist/nonsuch-components.css +1 -1
  42. package/dist/nonsuch-components.js +473 -132
  43. package/dist/plugin.d.ts +42 -0
  44. package/dist/quasarConfig.d.ts +41 -0
  45. package/dist/tokens/index.d.ts +20 -0
  46. package/package.json +16 -6
@@ -1,12 +1,22 @@
1
- import Q from "quasar/src/components/btn/QBtn.js";
2
- import { defineComponent as c, openBlock as s, createBlock as d, mergeProps as p, withCtx as u, renderSlot as i, createVNode as B, unref as T, provide as V, inject as q, createSlots as z, renderList as R, normalizeProps as D, guardReactiveProps as M, createElementVNode as O, toDisplayString as w, createElementBlock as F, createCommentVNode as v, computed as _, ref as C, onMounted as x, onUnmounted as j, readonly as I } from "vue";
3
- import K from "quasar/src/components/spinner/QSpinnerDots.js";
4
- import U from "quasar/src/components/skeleton/QSkeleton.js";
5
- import Z from "quasar/src/components/input/QInput.js";
6
- import $ from "quasar/src/components/card/QCardSection.js";
7
- import G from "quasar/src/components/card/QCardActions.js";
8
- import H from "quasar/src/components/card/QCard.js";
9
- const Y = /* @__PURE__ */ c({
1
+ import F from "quasar/src/components/btn/QBtn.js";
2
+ import { defineComponent as i, openBlock as n, createBlock as d, mergeProps as c, withCtx as s, renderSlot as r, createVNode as y, unref as U, provide as j, inject as K, createSlots as N, renderList as E, normalizeProps as z, guardReactiveProps as T, useId as k, createElementVNode as A, toDisplayString as B, createElementBlock as Z, createCommentVNode as v, computed as g, ref as L, onMounted as G, onUnmounted as H, readonly as Q } from "vue";
3
+ import Y from "quasar/src/components/spinner/QSpinnerDots.js";
4
+ import J from "quasar/src/components/skeleton/QSkeleton.js";
5
+ import W from "quasar/src/components/input/QInput.js";
6
+ import h from "quasar/src/components/card/QCardSection.js";
7
+ import q from "quasar/src/components/card/QCardActions.js";
8
+ import D from "quasar/src/components/card/QCard.js";
9
+ import X from "quasar/src/components/select/QSelect.js";
10
+ import x from "quasar/src/components/checkbox/QCheckbox.js";
11
+ import _ from "quasar/src/components/toggle/QToggle.js";
12
+ import ee from "quasar/src/components/form/QForm.js";
13
+ import te from "quasar/src/components/dialog/QDialog.js";
14
+ import ae from "quasar/src/components/banner/QBanner.js";
15
+ import oe from "quasar/src/components/avatar/QAvatar.js";
16
+ import le from "quasar/src/components/chip/QChip.js";
17
+ import se from "quasar/src/components/item/QList.js";
18
+ import ne from "quasar/src/components/tooltip/QTooltip.js";
19
+ const re = /* @__PURE__ */ i({
10
20
  __name: "NsButton",
11
21
  props: {
12
22
  color: { default: "primary" },
@@ -17,32 +27,33 @@ const Y = /* @__PURE__ */ c({
17
27
  loading: { type: Boolean, default: !1 }
18
28
  },
19
29
  setup(e) {
20
- return (t, o) => (s(), d(Q, p(t.$attrs, {
30
+ return (t, a) => (n(), d(F, c(t.$attrs, {
21
31
  color: e.color,
22
32
  size: e.size,
23
33
  unelevated: e.unelevated,
24
34
  "no-caps": e.noCaps,
25
35
  rounded: e.rounded,
26
36
  loading: e.loading,
37
+ "aria-busy": e.loading,
27
38
  class: "ns-button"
28
39
  }), {
29
- loading: u(() => [
30
- i(t.$slots, "loading", {}, () => [
31
- B(T(K), { color: "white" })
40
+ loading: s(() => [
41
+ r(t.$slots, "loading", {}, () => [
42
+ y(U(Y), { color: "white" })
32
43
  ], !0)
33
44
  ]),
34
- default: u(() => [
35
- i(t.$slots, "default", {}, void 0, !0)
45
+ default: s(() => [
46
+ r(t.$slots, "default", {}, void 0, !0)
36
47
  ]),
37
48
  _: 3
38
- }, 16, ["color", "size", "unelevated", "no-caps", "rounded", "loading"]));
49
+ }, 16, ["color", "size", "unelevated", "no-caps", "rounded", "loading", "aria-busy"]));
39
50
  }
40
- }), g = (e, t) => {
41
- const o = e.__vccOpts || e;
42
- for (const [n, r] of t)
43
- o[n] = r;
44
- return o;
45
- }, me = /* @__PURE__ */ g(Y, [["__scopeId", "data-v-7f6c2760"]]), J = /* @__PURE__ */ c({
51
+ }), f = (e, t) => {
52
+ const a = e.__vccOpts || e;
53
+ for (const [o, l] of t)
54
+ a[o] = l;
55
+ return a;
56
+ }, Ze = /* @__PURE__ */ f(re, [["__scopeId", "data-v-59b40e5f"]]), de = /* @__PURE__ */ i({
46
57
  __name: "NsSkeleton",
47
58
  props: {
48
59
  type: { default: "rect" },
@@ -53,17 +64,18 @@ const Y = /* @__PURE__ */ c({
53
64
  height: { default: void 0 }
54
65
  },
55
66
  setup(e) {
56
- return (t, o) => (s(), d(U, p(t.$attrs, {
67
+ return (t, a) => (n(), d(J, c(t.$attrs, {
57
68
  type: e.type,
58
69
  animation: e.animation,
59
70
  square: e.square,
60
71
  bordered: e.bordered,
61
72
  width: e.width,
62
73
  height: e.height,
74
+ "aria-hidden": "true",
63
75
  class: "ns-skeleton"
64
76
  }), null, 16, ["type", "animation", "square", "bordered", "width", "height"]));
65
77
  }
66
- }), pe = /* @__PURE__ */ g(J, [["__scopeId", "data-v-62627927"]]), y = {
78
+ }), Ge = /* @__PURE__ */ f(de, [["__scopeId", "data-v-dfd40b8a"]]), S = {
67
79
  common: {
68
80
  loading: "Loading…",
69
81
  retry: "Retry",
@@ -99,22 +111,22 @@ const Y = /* @__PURE__ */ c({
99
111
  tooShort: "Too short",
100
112
  tooLong: "Too long"
101
113
  }
102
- }, S = /* @__PURE__ */ Symbol("ns-locale");
103
- function W(e) {
104
- V(S, e);
114
+ }, V = /* @__PURE__ */ Symbol("ns-locale");
115
+ function ie(e) {
116
+ j(V, e);
105
117
  }
106
- function X() {
107
- return q(S, y);
118
+ function ue() {
119
+ return K(V, S);
108
120
  }
109
- const ge = /* @__PURE__ */ c({
121
+ const He = /* @__PURE__ */ i({
110
122
  __name: "NsThemeProvider",
111
123
  props: {
112
- locale: { default: () => y }
124
+ locale: { default: () => S }
113
125
  },
114
126
  setup(e) {
115
- return W(e.locale), (o, n) => i(o.$slots, "default");
127
+ return ie(e.locale), (a, o) => r(a.$slots, "default");
116
128
  }
117
- }), ee = /* @__PURE__ */ c({
129
+ }), ce = /* @__PURE__ */ i({
118
130
  __name: "NsInput",
119
131
  props: {
120
132
  label: { default: void 0 },
@@ -125,27 +137,27 @@ const ge = /* @__PURE__ */ c({
125
137
  },
126
138
  emits: ["update:modelValue"],
127
139
  setup(e) {
128
- return (t, o) => (s(), d(Z, p(t.$attrs, {
140
+ return (t, a) => (n(), d(W, c(t.$attrs, {
129
141
  "model-value": e.modelValue,
130
142
  label: e.label,
131
143
  outlined: e.outlined,
132
144
  dense: e.dense,
133
145
  rules: e.rules,
134
146
  class: "ns-input",
135
- "onUpdate:modelValue": o[0] || (o[0] = (n) => t.$emit("update:modelValue", n))
136
- }), z({ _: 2 }, [
137
- R(t.$slots, (n, r) => ({
138
- name: r,
139
- fn: u((l) => [
140
- i(t.$slots, r, D(M(l ?? {})), void 0, !0)
147
+ "onUpdate:modelValue": a[0] || (a[0] = (o) => t.$emit("update:modelValue", o))
148
+ }), N({ _: 2 }, [
149
+ E(t.$slots, (o, l) => ({
150
+ name: l,
151
+ fn: s((u) => [
152
+ r(t.$slots, l, z(T(u ?? {})), void 0, !0)
141
153
  ])
142
154
  }))
143
155
  ]), 1040, ["model-value", "label", "outlined", "dense", "rules"]));
144
156
  }
145
- }), ve = /* @__PURE__ */ g(ee, [["__scopeId", "data-v-7ebf3284"]]), te = { class: "text-h6" }, oe = {
157
+ }), Ye = /* @__PURE__ */ f(ce, [["__scopeId", "data-v-7ebf3284"]]), fe = { class: "text-h6" }, me = {
146
158
  key: 0,
147
159
  class: "text-subtitle2 text-grey"
148
- }, ne = /* @__PURE__ */ c({
160
+ }, ve = /* @__PURE__ */ i({
149
161
  __name: "NsCard",
150
162
  props: {
151
163
  title: { default: void 0 },
@@ -153,51 +165,369 @@ const ge = /* @__PURE__ */ c({
153
165
  flat: { type: Boolean, default: !1 }
154
166
  },
155
167
  setup(e) {
156
- return (t, o) => (s(), d(H, p(t.$attrs, {
157
- class: ["ns-card", { "ns-card--flat": e.flat }]
168
+ const t = `ns-card-header-${k()}`;
169
+ return (a, o) => (n(), d(D, c(a.$attrs, {
170
+ class: ["ns-card", { "ns-card--flat": e.flat }],
171
+ role: e.title || a.$slots.header ? "region" : void 0,
172
+ "aria-labelledby": e.title || a.$slots.header ? t : void 0
158
173
  }), {
159
- default: u(() => [
160
- e.title || t.$slots.header ? (s(), d($, {
174
+ default: s(() => [
175
+ e.title || a.$slots.header ? (n(), d(h, {
161
176
  key: 0,
177
+ id: t,
162
178
  class: "ns-card__header"
163
179
  }, {
164
- default: u(() => [
165
- i(t.$slots, "header", {}, () => [
166
- O("div", te, w(e.title), 1),
167
- e.subtitle ? (s(), F("div", oe, w(e.subtitle), 1)) : v("", !0)
180
+ default: s(() => [
181
+ r(a.$slots, "header", {}, () => [
182
+ A("div", fe, B(e.title), 1),
183
+ e.subtitle ? (n(), Z("div", me, B(e.subtitle), 1)) : v("", !0)
168
184
  ], !0)
169
185
  ]),
170
186
  _: 3
171
187
  })) : v("", !0),
172
- B($, null, {
173
- default: u(() => [
174
- i(t.$slots, "default", {}, void 0, !0)
188
+ y(h, null, {
189
+ default: s(() => [
190
+ r(a.$slots, "default", {}, void 0, !0)
175
191
  ]),
176
192
  _: 3
177
193
  }),
178
- t.$slots.actions ? (s(), d(G, {
194
+ a.$slots.actions ? (n(), d(q, {
179
195
  key: 1,
180
196
  align: "right"
181
197
  }, {
182
- default: u(() => [
183
- i(t.$slots, "actions", {}, void 0, !0)
198
+ default: s(() => [
199
+ r(a.$slots, "actions", {}, void 0, !0)
184
200
  ]),
185
201
  _: 3
186
202
  })) : v("", !0)
187
203
  ]),
188
204
  _: 3
189
- }, 16, ["class"]));
205
+ }, 16, ["class", "role", "aria-labelledby"]));
190
206
  }
191
- }), he = /* @__PURE__ */ g(ne, [["__scopeId", "data-v-41ecea50"]]);
192
- function ye(e = {}) {
193
- const { locale: t = y } = e;
207
+ }), Je = /* @__PURE__ */ f(ve, [["__scopeId", "data-v-7769879a"]]), pe = /* @__PURE__ */ i({
208
+ __name: "NsSelect",
209
+ props: {
210
+ label: { default: void 0 },
211
+ modelValue: { default: void 0 },
212
+ options: { default: () => [] },
213
+ outlined: { type: Boolean, default: !0 },
214
+ dense: { type: Boolean, default: !1 },
215
+ multiple: { type: Boolean, default: !1 },
216
+ emitValue: { type: Boolean, default: !1 },
217
+ mapOptions: { type: Boolean, default: !1 },
218
+ rules: { default: void 0 }
219
+ },
220
+ emits: ["update:modelValue"],
221
+ setup(e) {
222
+ return (t, a) => (n(), d(X, c(t.$attrs, {
223
+ "model-value": e.modelValue,
224
+ label: e.label,
225
+ options: e.options,
226
+ outlined: e.outlined,
227
+ dense: e.dense,
228
+ rules: e.rules,
229
+ multiple: e.multiple,
230
+ "emit-value": e.emitValue,
231
+ "map-options": e.mapOptions,
232
+ class: "ns-select",
233
+ "onUpdate:modelValue": a[0] || (a[0] = (o) => t.$emit("update:modelValue", o))
234
+ }), N({ _: 2 }, [
235
+ E(t.$slots, (o, l) => ({
236
+ name: l,
237
+ fn: s((u) => [
238
+ r(t.$slots, l, z(T(u ?? {})), void 0, !0)
239
+ ])
240
+ }))
241
+ ]), 1040, ["model-value", "label", "options", "outlined", "dense", "rules", "multiple", "emit-value", "map-options"]));
242
+ }
243
+ }), We = /* @__PURE__ */ f(pe, [["__scopeId", "data-v-081cebe3"]]), be = /* @__PURE__ */ i({
244
+ __name: "NsCheckbox",
245
+ props: {
246
+ label: { default: void 0 },
247
+ modelValue: { type: Boolean, default: !1 },
248
+ color: { default: "primary" },
249
+ dense: { type: Boolean, default: !1 },
250
+ disable: { type: Boolean, default: !1 }
251
+ },
252
+ emits: ["update:modelValue"],
253
+ setup(e) {
254
+ return (t, a) => (n(), d(x, c(t.$attrs, {
255
+ "model-value": e.modelValue,
256
+ label: e.label,
257
+ color: e.color,
258
+ dense: e.dense,
259
+ disable: e.disable,
260
+ class: "ns-checkbox",
261
+ "onUpdate:modelValue": a[0] || (a[0] = (o) => t.$emit("update:modelValue", o))
262
+ }), null, 16, ["model-value", "label", "color", "dense", "disable"]));
263
+ }
264
+ }), Xe = /* @__PURE__ */ f(be, [["__scopeId", "data-v-2e481f8b"]]), ye = /* @__PURE__ */ i({
265
+ __name: "NsToggle",
266
+ props: {
267
+ label: { default: void 0 },
268
+ modelValue: { type: Boolean, default: !1 },
269
+ color: { default: "primary" },
270
+ dense: { type: Boolean, default: !1 },
271
+ disable: { type: Boolean, default: !1 }
272
+ },
273
+ emits: ["update:modelValue"],
274
+ setup(e) {
275
+ return (t, a) => (n(), d(_, c(t.$attrs, {
276
+ "model-value": e.modelValue,
277
+ label: e.label,
278
+ color: e.color,
279
+ dense: e.dense,
280
+ disable: e.disable,
281
+ role: "switch",
282
+ "aria-checked": e.modelValue,
283
+ class: "ns-toggle",
284
+ "onUpdate:modelValue": a[0] || (a[0] = (o) => t.$emit("update:modelValue", o))
285
+ }), null, 16, ["model-value", "label", "color", "dense", "disable", "aria-checked"]));
286
+ }
287
+ }), xe = /* @__PURE__ */ f(ye, [["__scopeId", "data-v-f8c90530"]]), ge = /* @__PURE__ */ i({
288
+ __name: "NsForm",
289
+ props: {
290
+ greedy: { type: Boolean, default: !0 },
291
+ ariaLabel: { default: void 0 }
292
+ },
293
+ emits: ["submit", "validationError"],
294
+ setup(e) {
295
+ return (t, a) => (n(), d(ee, c(t.$attrs, {
296
+ class: "ns-form",
297
+ greedy: e.greedy,
298
+ "aria-label": e.ariaLabel,
299
+ onSubmit: a[0] || (a[0] = (o) => t.$emit("submit", o)),
300
+ onValidationError: a[1] || (a[1] = (o) => t.$emit("validationError", o))
301
+ }), {
302
+ default: s(() => [
303
+ r(t.$slots, "default", {}, void 0, !0)
304
+ ]),
305
+ _: 3
306
+ }, 16, ["greedy", "aria-label"]));
307
+ }
308
+ }), _e = /* @__PURE__ */ f(ge, [["__scopeId", "data-v-e20d14ce"]]), he = { class: "text-h6" }, $e = /* @__PURE__ */ i({
309
+ __name: "NsDialog",
310
+ props: {
311
+ modelValue: { type: Boolean, default: !1 },
312
+ title: { default: void 0 },
313
+ persistent: { type: Boolean, default: !1 },
314
+ noBackdropDismiss: { type: Boolean, default: !1 }
315
+ },
316
+ emits: ["update:modelValue"],
317
+ setup(e) {
318
+ const t = `ns-dialog-title-${k()}`, a = `ns-dialog-body-${k()}`;
319
+ return (o, l) => (n(), d(te, c(o.$attrs, {
320
+ "model-value": e.modelValue,
321
+ persistent: e.persistent,
322
+ "no-backdrop-dismiss": e.noBackdropDismiss,
323
+ "aria-labelledby": e.title || o.$slots.header ? t : void 0,
324
+ "aria-describedby": a,
325
+ class: "ns-dialog",
326
+ "onUpdate:modelValue": l[0] || (l[0] = (u) => o.$emit("update:modelValue", u))
327
+ }), {
328
+ default: s(() => [
329
+ y(D, {
330
+ class: "ns-dialog__card",
331
+ role: "dialog",
332
+ "aria-modal": !0
333
+ }, {
334
+ default: s(() => [
335
+ e.title || o.$slots.header ? (n(), d(h, {
336
+ key: 0,
337
+ id: t,
338
+ class: "ns-dialog__header"
339
+ }, {
340
+ default: s(() => [
341
+ r(o.$slots, "header", {}, () => [
342
+ A("div", he, B(e.title), 1)
343
+ ], !0)
344
+ ]),
345
+ _: 3
346
+ })) : v("", !0),
347
+ y(h, {
348
+ id: a,
349
+ class: "ns-dialog__body"
350
+ }, {
351
+ default: s(() => [
352
+ r(o.$slots, "default", {}, void 0, !0)
353
+ ]),
354
+ _: 3
355
+ }),
356
+ o.$slots.actions ? (n(), d(q, {
357
+ key: 1,
358
+ align: "right",
359
+ class: "ns-dialog__actions"
360
+ }, {
361
+ default: s(() => [
362
+ r(o.$slots, "actions", {}, void 0, !0)
363
+ ]),
364
+ _: 3
365
+ })) : v("", !0)
366
+ ]),
367
+ _: 3
368
+ })
369
+ ]),
370
+ _: 3
371
+ }, 16, ["model-value", "persistent", "no-backdrop-dismiss", "aria-labelledby"]));
372
+ }
373
+ }), et = /* @__PURE__ */ f($e, [["__scopeId", "data-v-4fca48ca"]]), ke = /* @__PURE__ */ i({
374
+ __name: "NsBanner",
375
+ props: {
376
+ type: { default: "info" },
377
+ dense: { type: Boolean, default: !1 },
378
+ rounded: { type: Boolean, default: !0 }
379
+ },
380
+ setup(e) {
381
+ const t = e, a = g(
382
+ () => t.type === "error" || t.type === "warning" ? "alert" : "status"
383
+ ), o = g(
384
+ () => t.type === "error" || t.type === "warning" ? "assertive" : "polite"
385
+ );
386
+ return (l, u) => (n(), d(ae, c(l.$attrs, {
387
+ class: ["ns-banner", `ns-banner--${e.type}`],
388
+ dense: e.dense,
389
+ rounded: e.rounded,
390
+ role: a.value,
391
+ "aria-live": o.value
392
+ }), N({
393
+ default: s(() => [
394
+ r(l.$slots, "default", {}, void 0, !0)
395
+ ]),
396
+ _: 2
397
+ }, [
398
+ l.$slots.avatar ? {
399
+ name: "avatar",
400
+ fn: s(() => [
401
+ r(l.$slots, "avatar", {}, void 0, !0)
402
+ ]),
403
+ key: "0"
404
+ } : void 0,
405
+ l.$slots.action ? {
406
+ name: "action",
407
+ fn: s(() => [
408
+ r(l.$slots, "action", {}, void 0, !0)
409
+ ]),
410
+ key: "1"
411
+ } : void 0
412
+ ]), 1040, ["class", "dense", "rounded", "role", "aria-live"]));
413
+ }
414
+ }), tt = /* @__PURE__ */ f(ke, [["__scopeId", "data-v-18ebd6f5"]]), Be = /* @__PURE__ */ i({
415
+ __name: "NsAvatar",
416
+ props: {
417
+ size: { default: "md" },
418
+ color: { default: "primary" },
419
+ textColor: { default: "white" },
420
+ rounded: { type: Boolean, default: !1 },
421
+ square: { type: Boolean, default: !1 },
422
+ ariaLabel: { default: void 0 }
423
+ },
424
+ setup(e) {
425
+ const t = {
426
+ sm: "32px",
427
+ md: "48px",
428
+ lg: "64px",
429
+ xl: "96px"
430
+ }, a = e, o = g(() => t[a.size] ?? a.size);
431
+ return (l, u) => (n(), d(oe, c(l.$attrs, {
432
+ size: o.value,
433
+ color: e.color,
434
+ "text-color": e.textColor,
435
+ rounded: e.rounded,
436
+ square: e.square,
437
+ "aria-label": e.ariaLabel,
438
+ "aria-hidden": e.ariaLabel ? void 0 : "true",
439
+ role: e.ariaLabel ? "img" : void 0,
440
+ class: "ns-avatar"
441
+ }), {
442
+ default: s(() => [
443
+ r(l.$slots, "default", {}, void 0, !0)
444
+ ]),
445
+ _: 3
446
+ }, 16, ["size", "color", "text-color", "rounded", "square", "aria-label", "aria-hidden", "role"]));
447
+ }
448
+ }), at = /* @__PURE__ */ f(Be, [["__scopeId", "data-v-6a1b44b8"]]), Ne = /* @__PURE__ */ i({
449
+ __name: "NsChip",
450
+ props: {
451
+ color: { default: "primary" },
452
+ textColor: { default: "white" },
453
+ outline: { type: Boolean, default: !1 },
454
+ dense: { type: Boolean, default: !1 },
455
+ removable: { type: Boolean, default: !1 },
456
+ clickable: { type: Boolean, default: !1 }
457
+ },
458
+ emits: ["remove"],
459
+ setup(e) {
460
+ return (t, a) => (n(), d(le, c(t.$attrs, {
461
+ color: e.color,
462
+ "text-color": e.textColor,
463
+ outline: e.outline,
464
+ dense: e.dense,
465
+ removable: e.removable,
466
+ clickable: e.clickable,
467
+ class: "ns-chip",
468
+ onRemove: a[0] || (a[0] = (o) => t.$emit("remove"))
469
+ }), {
470
+ default: s(() => [
471
+ r(t.$slots, "default", {}, void 0, !0)
472
+ ]),
473
+ _: 3
474
+ }, 16, ["color", "text-color", "outline", "dense", "removable", "clickable"]));
475
+ }
476
+ }), ot = /* @__PURE__ */ f(Ne, [["__scopeId", "data-v-1a2191f1"]]), Se = /* @__PURE__ */ i({
477
+ __name: "NsList",
478
+ props: {
479
+ bordered: { type: Boolean, default: !1 },
480
+ separator: { type: Boolean, default: !0 },
481
+ dense: { type: Boolean, default: !1 },
482
+ ariaLabel: { default: void 0 }
483
+ },
484
+ setup(e) {
485
+ return (t, a) => (n(), d(se, c(t.$attrs, {
486
+ bordered: e.bordered,
487
+ separator: e.separator,
488
+ dense: e.dense,
489
+ "aria-label": e.ariaLabel,
490
+ role: "list",
491
+ class: "ns-list"
492
+ }), {
493
+ default: s(() => [
494
+ r(t.$slots, "default", {}, void 0, !0)
495
+ ]),
496
+ _: 3
497
+ }, 16, ["bordered", "separator", "dense", "aria-label"]));
498
+ }
499
+ }), lt = /* @__PURE__ */ f(Se, [["__scopeId", "data-v-65aec20e"]]), Ve = /* @__PURE__ */ i({
500
+ __name: "NsTooltip",
501
+ props: {
502
+ delay: { default: 300 },
503
+ offset: { default: () => [8, 0] },
504
+ anchor: { default: "bottom middle" },
505
+ self: { default: "top middle" }
506
+ },
507
+ setup(e) {
508
+ return (t, a) => (n(), d(ne, c(t.$attrs, {
509
+ delay: e.delay,
510
+ offset: e.offset,
511
+ anchor: e.anchor,
512
+ self: e.self,
513
+ class: "ns-tooltip"
514
+ }), {
515
+ default: s(() => [
516
+ r(t.$slots, "default", {}, void 0, !0)
517
+ ]),
518
+ _: 3
519
+ }, 16, ["delay", "offset", "anchor", "self"]));
520
+ }
521
+ }), st = /* @__PURE__ */ f(Ve, [["__scopeId", "data-v-9cb6af8f"]]);
522
+ function nt(e = {}) {
523
+ const { locale: t = S } = e;
194
524
  return {
195
- install(o) {
196
- o.provide(S, t);
525
+ install(a) {
526
+ a.provide(V, t);
197
527
  }
198
528
  };
199
529
  }
200
- const re = {
530
+ const Ie = {
201
531
  primary: "#3b82f6",
202
532
  // PLACEHOLDER — matches --ns-color-primary
203
533
  secondary: "#8b5cf6",
@@ -217,20 +547,20 @@ const re = {
217
547
  warning: "#f59e0b"
218
548
  // PLACEHOLDER — matches --ns-color-warning
219
549
  };
220
- function Se(e = {}) {
221
- const { brand: t = {}, plugins: o = {}, ...n } = e;
550
+ function rt(e = {}) {
551
+ const { brand: t = {}, plugins: a = {}, ...o } = e;
222
552
  return {
223
553
  config: {
224
554
  brand: {
225
- ...re,
555
+ ...Ie,
226
556
  ...t
227
557
  }
228
558
  },
229
- plugins: o,
230
- ...n
559
+ plugins: a,
560
+ ...o
231
561
  };
232
562
  }
233
- const ke = {
563
+ const dt = {
234
564
  common: {
235
565
  loading: "Chargement…",
236
566
  retry: "Réessayer",
@@ -267,88 +597,99 @@ const ke = {
267
597
  tooLong: "Trop long"
268
598
  }
269
599
  };
270
- function be(e, t) {
271
- const o = X();
272
- return _(() => {
273
- const n = e();
274
- if (n != null) return n;
275
- const r = t.split(".");
276
- let l = o;
277
- for (const f of r)
278
- l = l[f];
279
- return l;
600
+ function it(e, t) {
601
+ const a = ue();
602
+ return g(() => {
603
+ const o = e();
604
+ if (o != null) return o;
605
+ const l = t.split(".");
606
+ let u = a;
607
+ for (const p of l)
608
+ u = u[p];
609
+ return u;
280
610
  });
281
611
  }
282
- const h = "ns-dark-mode";
283
- function Ne() {
284
- const e = C(!1), t = C("system");
285
- let o = null, n = null;
286
- function r(a) {
287
- if (e.value = a, typeof document < "u") {
288
- const m = document.documentElement;
289
- m.classList.toggle("dark", a), m.setAttribute("data-theme", a ? "dark" : "light");
612
+ const $ = "ns-dark-mode";
613
+ function ut() {
614
+ const e = L(!1), t = L("system");
615
+ let a = null, o = () => {
616
+ };
617
+ function l(m) {
618
+ if (e.value = m, typeof document < "u") {
619
+ const b = document.documentElement;
620
+ b.classList.toggle("dark", m), b.setAttribute("data-theme", m ? "dark" : "light");
290
621
  }
291
622
  }
292
- function l() {
623
+ function u() {
293
624
  return typeof window > "u" ? !1 : window.matchMedia("(prefers-color-scheme: dark)").matches;
294
625
  }
295
- function f() {
626
+ function p() {
296
627
  if (typeof localStorage > "u") return null;
297
- const a = localStorage.getItem(h);
298
- return a === "true" ? !0 : a === "false" ? !1 : null;
628
+ const m = localStorage.getItem($);
629
+ return m === "true" ? !0 : m === "false" ? !1 : null;
299
630
  }
300
- function k(a) {
301
- typeof localStorage < "u" && localStorage.setItem(h, String(a));
631
+ function I(m) {
632
+ typeof localStorage < "u" && localStorage.setItem($, String(m));
302
633
  }
303
- function E() {
304
- typeof localStorage < "u" && localStorage.removeItem(h);
634
+ function P() {
635
+ typeof localStorage < "u" && localStorage.removeItem($);
305
636
  }
306
- function b() {
307
- t.value = "user", k(!0), r(!0);
637
+ function C() {
638
+ t.value = "user", I(!0), l(!0);
308
639
  }
309
- function N() {
310
- t.value = "user", k(!1), r(!1);
640
+ function w() {
641
+ t.value = "user", I(!1), l(!1);
311
642
  }
312
- function L() {
313
- e.value ? N() : b();
643
+ function R() {
644
+ e.value ? w() : C();
314
645
  }
315
- function A() {
316
- E(), t.value = "system", r(l());
646
+ function O() {
647
+ P(), t.value = "system", l(u());
317
648
  }
318
- function P() {
319
- const a = f();
320
- a !== null ? (t.value = "storage", r(a)) : (t.value = "system", r(l())), typeof window < "u" && (o = window.matchMedia("(prefers-color-scheme: dark)"), n = (m) => {
321
- f() === null && (t.value = "system", r(m.matches));
322
- }, o.addEventListener("change", n));
649
+ function M() {
650
+ const m = p();
651
+ m !== null ? (t.value = "storage", l(m)) : (t.value = "system", l(u())), typeof window < "u" && (a = window.matchMedia("(prefers-color-scheme: dark)"), o = (b) => {
652
+ p() === null && (t.value = "system", l(b.matches));
653
+ }, a.addEventListener("change", o));
323
654
  }
324
- return x(P), j(() => {
325
- o && n && o.removeEventListener("change", n);
655
+ return G(M), H(() => {
656
+ a?.removeEventListener("change", o);
326
657
  }), {
327
- isDark: I(e),
328
- source: I(t),
329
- enable: b,
330
- disable: N,
331
- toggle: L,
332
- useSystem: A
658
+ isDark: Q(e),
659
+ source: Q(t),
660
+ enable: C,
661
+ disable: w,
662
+ toggle: R,
663
+ useSystem: O
333
664
  };
334
665
  }
335
- function we(e, t = document.documentElement) {
666
+ function ct(e, t = document.documentElement) {
336
667
  return getComputedStyle(t).getPropertyValue(e).trim();
337
668
  }
338
669
  export {
339
- me as NsButton,
340
- he as NsCard,
341
- ve as NsInput,
342
- S as NsLocaleKey,
343
- pe as NsSkeleton,
344
- ge as NsThemeProvider,
345
- ye as createNonsuch,
346
- Se as createQuasarConfig,
347
- we as getToken,
348
- y as nsLocaleEnCA,
349
- ke as nsLocaleFrCA,
350
- W as provideNsLocale,
351
- Ne as useNsDarkMode,
352
- be as useNsDefault,
353
- X as useNsLocale
670
+ at as NsAvatar,
671
+ tt as NsBanner,
672
+ Ze as NsButton,
673
+ Je as NsCard,
674
+ Xe as NsCheckbox,
675
+ ot as NsChip,
676
+ et as NsDialog,
677
+ _e as NsForm,
678
+ Ye as NsInput,
679
+ lt as NsList,
680
+ V as NsLocaleKey,
681
+ We as NsSelect,
682
+ Ge as NsSkeleton,
683
+ He as NsThemeProvider,
684
+ xe as NsToggle,
685
+ st as NsTooltip,
686
+ nt as createNonsuch,
687
+ rt as createQuasarConfig,
688
+ ct as getToken,
689
+ S as nsLocaleEnCA,
690
+ dt as nsLocaleFrCA,
691
+ ie as provideNsLocale,
692
+ ut as useNsDarkMode,
693
+ it as useNsDefault,
694
+ ue as useNsLocale
354
695
  };