@simsustech/quasar-components 0.4.7 → 0.5.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.
package/dist/form.js CHANGED
@@ -1,5 +1,5 @@
1
- import { ref, defineComponent, useAttrs, withAsyncContext, watch, openBlock, createBlock, unref, mergeProps, normalizeProps, guardReactiveProps, withCtx, createVNode, createTextVNode, toDisplayString, computed, useSlots, renderSlot, createCommentVNode, toRefs, resolveDirective, createElementVNode, withDirectives, createElementBlock, Fragment } from "vue";
2
- import { useQuasar, QSelect, QItem, QItemSection, QItemLabel, QInput, QIcon, QBtn, QDate, QPopupProxy, QEditor } from "quasar";
1
+ import { ref, defineComponent, useAttrs, withAsyncContext, watch, openBlock, createBlock, unref, mergeProps, normalizeProps, guardReactiveProps, withCtx, createVNode, createTextVNode, toDisplayString, computed, useSlots, renderSlot, createCommentVNode, toRefs, resolveDirective, createElementBlock, Fragment, renderList, resolveDynamicComponent, createElementVNode, withDirectives } from "vue";
2
+ import { useQuasar, QSelect, QItem, QItemSection, QItemLabel, QInput, QDate, QIcon, QTooltip, QBtn, QPopupProxy, QField, QEditor } from "quasar";
3
3
  const lang$1 = {
4
4
  isoName: "en-US",
5
5
  yes: "Yes",
@@ -36,6 +36,9 @@ const lang$1 = {
36
36
  },
37
37
  datePicker: {
38
38
  placeholder: "YYYY/MM/DD",
39
+ YYYY: "YYYY",
40
+ MM: "MM",
41
+ DD: "DD",
39
42
  validations: {
40
43
  unavailableRange: "The selected period contains unavailable dates."
41
44
  }
@@ -45,10 +48,11 @@ const enUS = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty
45
48
  __proto__: null,
46
49
  default: lang$1
47
50
  }, Symbol.toStringTag, { value: "Module" }));
51
+ var define_import_meta_env_default = { BASE_URL: "/", MODE: "production", DEV: false, PROD: true, SSR: false };
48
52
  const lang = ref(lang$1);
49
53
  const locales = /* @__PURE__ */ Object.assign({
50
54
  "./en-US.ts": () => Promise.resolve().then(() => enUS),
51
- "./nl.ts": () => import("./nl-fa466587.js")
55
+ "./nl.ts": () => import("./nl-BjtwxTCz.js")
52
56
  });
53
57
  const useLang = () => {
54
58
  return lang;
@@ -63,7 +67,7 @@ const loadLang = async (isoName) => {
63
67
  lang.value = data;
64
68
  }
65
69
  } catch (e) {
66
- if ({}.DEBUG)
70
+ if (define_import_meta_env_default.DEBUG)
67
71
  console.error(e);
68
72
  throw new Error(
69
73
  `[quasar-components] Failed to load ${isoName} language file.`
@@ -328,39 +332,128 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
328
332
  __name: "DateInput",
329
333
  props: {
330
334
  modelValue: {},
331
- label: {},
335
+ format: { default: "YYYY-MM-DD" },
336
+ locale: { default: "en-US" },
337
+ label: { default: "" },
332
338
  required: { type: Boolean },
333
339
  clearable: { type: Boolean },
334
- date: {}
340
+ date: { default: () => ({}) }
335
341
  },
336
342
  emits: ["update:modelValue"],
337
343
  setup(__props, { emit: __emit }) {
338
344
  const props = __props;
339
345
  const emit = __emit;
340
- const attrs = useAttrs();
341
346
  const lang2 = useLang();
342
- const $q = useQuasar();
343
- if (lang2.value.isoName !== $q.lang.isoName)
344
- loadLang($q.lang.isoName);
345
- watch($q.lang, () => {
346
- loadLang($q.lang.isoName);
347
+ const { modelValue, format, locale } = toRefs(props);
348
+ const year = ref();
349
+ const month = ref();
350
+ const day = ref();
351
+ const setYear = (val) => {
352
+ const nr = Number(val);
353
+ if (nr && nr > 1e3 && nr < 1e4)
354
+ year.value = nr;
355
+ };
356
+ const setMonth = (val) => {
357
+ const nr = Number(val);
358
+ if (nr && nr > 0 && nr < 13)
359
+ month.value = nr;
360
+ else
361
+ month.value = void 0;
362
+ };
363
+ const setDay = (val) => {
364
+ const nr = Number(val);
365
+ if (nr && nr > 0 && nr < 32)
366
+ day.value = nr;
367
+ else
368
+ day.value = void 0;
369
+ };
370
+ const setInternalDate = (dateString, separator = "-") => {
371
+ if (dateString) {
372
+ const [yearPart, monthPart, dayPart] = dateString.split(separator);
373
+ if (yearPart && monthPart && dayPart) {
374
+ year.value = Number(yearPart);
375
+ month.value = Number(monthPart);
376
+ day.value = Number(dayPart);
377
+ }
378
+ }
379
+ };
380
+ const setDate = (value) => {
381
+ setInternalDate(value, "/");
382
+ };
383
+ watch([year, month, day], () => {
384
+ const date = `${year.value}-${String(month.value).padStart(2, "0")}-${String(day.value).padStart(2, "0")}`;
385
+ if (Date.parse(date)) {
386
+ emit("update:modelValue", date);
387
+ } else {
388
+ emit("update:modelValue", "");
389
+ }
347
390
  });
348
- const { modelValue } = toRefs(props);
349
- const update = (val) => {
350
- if (typeof val === "string" || val === null)
351
- emit("update:modelValue", val);
391
+ const formattedDate = computed(() => {
392
+ if (modelValue.value)
393
+ return new Date(Date.parse(modelValue.value)).toLocaleDateString(
394
+ locale.value,
395
+ {
396
+ weekday: "long",
397
+ year: "numeric",
398
+ month: "short",
399
+ day: "numeric"
400
+ }
401
+ );
402
+ return "";
403
+ });
404
+ watch(modelValue, (newVal) => {
405
+ if (newVal)
406
+ setInternalDate(newVal);
407
+ else if (newVal === null) {
408
+ year.value = void 0;
409
+ month.value = void 0;
410
+ day.value = void 0;
411
+ }
412
+ });
413
+ setInternalDate(modelValue.value);
414
+ const goToNextElement = (e) => {
415
+ var _a, _b, _c, _d;
416
+ if (["Minus", "Slash"].includes(e.code)) {
417
+ e.preventDefault();
418
+ const next = (_d = (_c = (_b = (_a = e.currentTarget.parentElement) == null ? void 0 : _a.parentElement) == null ? void 0 : _b.parentElement) == null ? void 0 : _c.parentElement) == null ? void 0 : _d.nextElementSibling;
419
+ if (next) {
420
+ next.focus();
421
+ }
422
+ }
352
423
  };
353
- watch(
354
- () => modelValue == null ? void 0 : modelValue.value,
355
- (newVal) => {
356
- if (newVal === "")
357
- emit("update:modelValue", null);
424
+ const dateProps = computed(() => ({
425
+ YYYY: {
426
+ modelValue: year.value,
427
+ placeholder: lang2.value.datePicker.YYYY,
428
+ style: "max-width: 6ch",
429
+ suffix: format.value === "YYYY-MM-DD" ? "-" : void 0,
430
+ class: format.value !== "YYYY-MM-DD" ? "q-mb-none q-ml-xs" : void 0,
431
+ "onUpdate:modelValue": setYear,
432
+ onKeydown: goToNextElement
433
+ },
434
+ MM: {
435
+ modelValue: month.value ? String(month.value).padStart(2, "0") : "",
436
+ placeholder: lang2.value.datePicker.MM,
437
+ style: "max-width: 4ch",
438
+ suffix: "-",
439
+ class: "q-ml-xs",
440
+ "onUpdate:modelValue": setMonth,
441
+ onKeydown: goToNextElement
442
+ },
443
+ DD: {
444
+ modelValue: day.value ? String(day.value).padStart(2, "0") : "",
445
+ placeholder: lang2.value.datePicker.DD,
446
+ style: "max-width: 4ch",
447
+ suffix: format.value === "DD-MM-YYYY" ? "-" : void 0,
448
+ class: format.value === "YYYY-MM-DD" ? "q-ml-xs" : void 0,
449
+ "onUpdate:modelValue": setDay,
450
+ onKeydown: goToNextElement
358
451
  }
359
- );
452
+ }));
360
453
  const validations = ref([
361
454
  (v) => {
362
455
  if (v !== null)
363
- return /^\d{4}\/(0?[1-9]|1[012])\/(0?[1-9]|[12][0-9]|3[01])$/.test(v);
456
+ return /^\d{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$/.test(v);
364
457
  return true;
365
458
  }
366
459
  ]);
@@ -370,55 +463,69 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
370
463
  );
371
464
  return (_ctx, _cache) => {
372
465
  const _component_q_icon = QIcon;
466
+ const _component_q_tooltip = QTooltip;
373
467
  const _component_q_btn = QBtn;
374
- const _component_q_date = QDate;
375
468
  const _component_q_popup_proxy = QPopupProxy;
469
+ const _component_q_field = QField;
376
470
  const _directive_close_popup = resolveDirective("close-popup");
377
- return openBlock(), createBlock(unref(QInput), mergeProps(unref(attrs), {
378
- rules: validations.value,
471
+ return openBlock(), createBlock(_component_q_field, {
379
472
  "model-value": unref(modelValue),
380
- label: `${_ctx.label}${_ctx.required ? "*" : ""}`,
381
- placeholder: unref(lang2).datePicker.placeholder,
382
- mask: "date",
383
- class: "q-pr-md",
384
- "onUpdate:modelValue": update
385
- }), {
473
+ "bottom-slots": "",
474
+ rules: validations.value
475
+ }, {
476
+ control: withCtx(() => [
477
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(format).split("-"), (part) => {
478
+ return openBlock(), createBlock(resolveDynamicComponent(unref(QInput)), mergeProps({
479
+ key: part,
480
+ borderless: ""
481
+ }, dateProps.value[part]), null, 16);
482
+ }), 128))
483
+ ]),
386
484
  append: withCtx(() => [
387
485
  _ctx.clearable ? (openBlock(), createBlock(_component_q_icon, {
388
486
  key: 0,
389
487
  name: "clear",
390
488
  class: "cursor-pointer",
391
- onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("update:modelValue", null))
489
+ onClick: _cache[0] || (_cache[0] = ($event) => emit("update:modelValue", null))
392
490
  })) : createCommentVNode("", true),
393
491
  createVNode(_component_q_icon, {
394
492
  name: "event",
395
493
  class: "cursor-pointer"
396
494
  }, {
397
495
  default: withCtx(() => [
496
+ formattedDate.value ? (openBlock(), createBlock(_component_q_tooltip, { key: 0 }, {
497
+ default: withCtx(() => [
498
+ createTextVNode(toDisplayString(formattedDate.value), 1)
499
+ ]),
500
+ _: 1
501
+ })) : createCommentVNode("", true),
398
502
  createVNode(_component_q_popup_proxy, {
399
503
  cover: "",
400
504
  "transition-show": "scale",
401
505
  "transition-hide": "scale"
402
506
  }, {
403
- default: withCtx(() => [
404
- createVNode(_component_q_date, mergeProps(_ctx.date, {
405
- "model-value": unref(modelValue),
406
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => _ctx.$emit("update:modelValue", $event))
407
- }), {
408
- default: withCtx(() => [
409
- createElementVNode("div", _hoisted_1, [
410
- withDirectives(createVNode(_component_q_btn, {
411
- label: unref(lang2).buttons.close,
412
- color: "primary",
413
- flat: ""
414
- }, null, 8, ["label"]), [
415
- [_directive_close_popup]
507
+ default: withCtx(() => {
508
+ var _a;
509
+ return [
510
+ createVNode(unref(QDate), mergeProps(_ctx.date, {
511
+ "model-value": (_a = unref(modelValue)) == null ? void 0 : _a.replaceAll("-", "/"),
512
+ "onUpdate:modelValue": setDate
513
+ }), {
514
+ default: withCtx(() => [
515
+ createElementVNode("div", _hoisted_1, [
516
+ withDirectives(createVNode(_component_q_btn, {
517
+ label: unref(lang2).buttons.close,
518
+ color: "primary",
519
+ flat: ""
520
+ }, null, 8, ["label"]), [
521
+ [_directive_close_popup]
522
+ ])
416
523
  ])
417
- ])
418
- ]),
419
- _: 1
420
- }, 16, ["model-value"])
421
- ]),
524
+ ]),
525
+ _: 1
526
+ }, 16, ["model-value"])
527
+ ];
528
+ }),
422
529
  _: 1
423
530
  })
424
531
  ]),
@@ -426,7 +533,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
426
533
  })
427
534
  ]),
428
535
  _: 1
429
- }, 16, ["rules", "model-value", "label", "placeholder"]);
536
+ }, 8, ["model-value", "rules"]);
430
537
  };
431
538
  }
432
539
  });
@@ -479,7 +586,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
479
586
  const _sfc_main$2 = /* @__PURE__ */ defineComponent({
480
587
  __name: "BooleanItem",
481
588
  props: {
482
- modelValue: { type: Boolean },
589
+ modelValue: { type: [Boolean, null] },
483
590
  label: {}
484
591
  },
485
592
  setup(__props) {
@@ -504,7 +611,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
504
611
  }),
505
612
  createVNode(unref(QItemLabel), null, {
506
613
  default: withCtx(() => [
507
- createTextVNode(toDisplayString(_ctx.modelValue ? unref(lang2).yes : unref(lang2).no), 1)
614
+ createTextVNode(toDisplayString(_ctx.modelValue === null ? "-" : _ctx.modelValue ? unref(lang2).yes : unref(lang2).no), 1)
508
615
  ]),
509
616
  _: 1
510
617
  })
@@ -541,17 +648,15 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
541
648
  functions
542
649
  });
543
650
  return (_ctx, _cache) => {
544
- const _component_q_input = QInput;
545
- const _component_q_editor = QEditor;
546
651
  return openBlock(), createElementBlock(Fragment, null, [
547
- createVNode(_component_q_input, {
652
+ createVNode(unref(QInput), {
548
653
  outlined: "",
549
654
  placeholder: unref(lang2).email.subject,
550
655
  "model-value": _ctx.subject,
551
656
  type: "text",
552
657
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => emit("update:subject", $event))
553
658
  }, null, 8, ["placeholder", "model-value"]),
554
- createVNode(_component_q_editor, {
659
+ createVNode(unref(QEditor), {
555
660
  "model-value": _ctx.body,
556
661
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => emit("update:body", $event))
557
662
  }, null, 8, ["model-value"])
package/dist/general.js CHANGED
@@ -1,7 +1,7 @@
1
- import { l as loadLang, u as useLang, _ as _sfc_main$4 } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-77aece37.js";
1
+ import { l as loadLang, u as useLang, _ as _sfc_main$4 } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-DAnZaTMl.js";
2
2
  import { useQuasar, QCard, QCardSection, QCardActions, QDialog, QBtn, QToolbarTitle, QToolbar, QHeader, QPage, QPageContainer, QLayout, QSpace, QPageSticky, QSelect, QItemSection, QItemLabel, QItem } from "quasar";
3
3
  import { defineComponent, watch, ref, openBlock, createBlock, unref, withCtx, renderSlot, createVNode, createElementVNode, normalizeProps, guardReactiveProps, normalizeClass, createCommentVNode, toRefs, useAttrs, computed, mergeProps, createTextVNode, toDisplayString } from "vue";
4
- import { enUs, nl } from "./flags.js";
4
+ import { e as enUs, n as nl } from "./en-US-Duo_j_eL.js";
5
5
  const _hoisted_1$1 = { class: "text-h6" };
6
6
  const _hoisted_2 = { class: "text-subtitle2" };
7
7
  const __default__$2 = {
@@ -70,7 +70,6 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
70
70
  };
71
71
  }
72
72
  });
73
- const QStyledCard_vue_vue_type_style_index_0_scoped_302df27a_lang = "";
74
73
  const _export_sfc = (sfc, props) => {
75
74
  const target = sfc.__vccOpts || sfc;
76
75
  for (const [key, val] of props) {
package/dist/icons.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { ref, h } from "vue";
2
2
  import { useQuasar, QIcon } from "quasar";
3
- const icon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCmFyaWEtbGFiZWw9Ik1pY3Jvc29mdCIgcm9sZT0iaW1nIgp2aWV3Qm94PSIwIDAgNTEyIDUxMiI+PHJlY3QKd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiCnJ4PSIxNSUiCmZpbGw9IiNmZmYiLz48cGF0aApkPSJNNzUgNzV2MTcxaDE3MXYtMTcxeiIgZmlsbD0iI2YyNTAyMiIvPjxwYXRoCmQ9Ik0yNjYgNzV2MTcxaDE3MXYtMTcxeiIgZmlsbD0iIzdmYmEwMCIvPjxwYXRoCmQ9Ik03NSAyNjZ2MTcxaDE3MXYtMTcxeiIgZmlsbD0iIzAwYTRlZiIvPjxwYXRoCmQ9Ik0yNjYgMjY2djE3MWgxNzF2LTE3MXoiIGZpbGw9IiNmZmI5MDAiLz48L3N2Zz4=";
3
+ const icon = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20aria-label='Microsoft'%20role='img'%20viewBox='0%200%20512%20512'%3e%3crect%20width='512'%20height='512'%20rx='15%25'%20fill='%23fff'/%3e%3cpath%20d='M75%2075v171h171v-171z'%20fill='%23f25022'/%3e%3cpath%20d='M266%2075v171h171v-171z'%20fill='%237fba00'/%3e%3cpath%20d='M75%20266v171h171v-171z'%20fill='%2300a4ef'/%3e%3cpath%20d='M266%20266v171h171v-171z'%20fill='%23ffb900'/%3e%3c/svg%3e";
4
4
  const labels = {
5
5
  microsoft: {
6
6
  name: "Microsoft"
@@ -34,6 +34,9 @@ const lang = {
34
34
  },
35
35
  datePicker: {
36
36
  placeholder: "JJJJ/MM/DD",
37
+ YYYY: "JJJJ",
38
+ MM: "MM",
39
+ DD: "DD",
37
40
  validations: {
38
41
  unavailableRange: "De geselecteerde periode bevat ongeschikbare datums."
39
42
  }
package/dist/style.css CHANGED
@@ -1,4 +1,14 @@
1
1
  .card[data-v-302df27a] {
2
2
  width: 100%;
3
3
  max-width: 300px;
4
- }
4
+ }
5
+ .q-field--auto-height .q-field__control,
6
+ .q-field--auto-height .q-field__native {
7
+ min-height: 1em;
8
+ }
9
+ .q-field--borderless .q-field__bottom,
10
+ .q-field--borderless.q-field--dense .q-field__control,
11
+ .q-field--standard .q-field__bottom,
12
+ .q-field--standard.q-field--dense .q-field__control {
13
+ padding-top: 0;
14
+ }
@@ -1,5 +1,5 @@
1
1
  export interface Props {
2
- modelValue: boolean;
2
+ modelValue: boolean | null;
3
3
  label: string;
4
4
  }
5
5
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
@@ -1,16 +1,33 @@
1
- import { QDateProps } from 'quasar';
1
+ import { QDateProps, QuasarLanguageCodes } from 'quasar';
2
2
  export interface Props {
3
- modelValue?: string | null;
3
+ modelValue: string | null;
4
+ format?: 'YYYY-MM-DD' | 'DD-MM-YYYY' | 'MM-DD-YYYY';
5
+ locale?: QuasarLanguageCodes;
4
6
  label?: string;
5
7
  required?: boolean;
6
8
  clearable?: boolean;
7
9
  date?: Partial<QDateProps>;
8
10
  }
9
- declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11
+ declare const _default: import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
12
+ format: string;
13
+ locale: string;
14
+ label: string;
15
+ date: () => {};
16
+ }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
17
  "update:modelValue": (val: string | null) => void;
11
- }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
18
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
19
+ format: string;
20
+ locale: string;
21
+ label: string;
22
+ date: () => {};
23
+ }>>> & {
12
24
  "onUpdate:modelValue"?: ((val: string | null) => any) | undefined;
13
- }, {}, {}>;
25
+ }, {
26
+ label: string;
27
+ date: Partial<QDateProps>;
28
+ format: "YYYY-MM-DD" | "DD-MM-YYYY" | "MM-DD-YYYY";
29
+ locale: keyof import("quasar").QuasarLanguageCodesHolder;
30
+ }, {}>;
14
31
  export default _default;
15
32
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
16
33
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -21,3 +38,11 @@ type __VLS_TypePropsToRuntimeProps<T> = {
21
38
  required: true;
22
39
  };
23
40
  };
41
+ type __VLS_WithDefaults<P, D> = {
42
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
43
+ default: D[K];
44
+ }> : P[K];
45
+ };
46
+ type __VLS_Prettify<T> = {
47
+ [K in keyof T]: T[K];
48
+ } & {};
@@ -34,6 +34,9 @@ export interface Language {
34
34
  };
35
35
  datePicker: {
36
36
  placeholder: string;
37
+ YYYY: string;
38
+ MM: string;
39
+ DD: string;
37
40
  validations: {
38
41
  unavailableRange: string;
39
42
  };
@@ -76,6 +79,9 @@ export declare const lang: Ref<{
76
79
  };
77
80
  datePicker: {
78
81
  placeholder: string;
82
+ YYYY: string;
83
+ MM: string;
84
+ DD: string;
79
85
  validations: {
80
86
  unavailableRange: string;
81
87
  };
@@ -37,17 +37,17 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  import { promises } from 'fs';
38
38
  import { Icon, FlagIcon } from './virtualModules.js';
39
39
  var readFile = promises.readFile;
40
- export default function (_a) {
41
- var _b = _a === void 0 ? {} : _a, buildFromSrc = _b.buildFromSrc;
42
- return __awaiter(this, void 0, void 0, function () {
43
- var pkgJson, _c, _d, exports, name;
40
+ export default function () {
41
+ return __awaiter(this, arguments, void 0, function (_a) {
42
+ var pkgJson, _b, _c, exports, name;
43
+ var _d = _a === void 0 ? {} : _a, buildFromSrc = _d.buildFromSrc;
44
44
  return __generator(this, function (_e) {
45
45
  switch (_e.label) {
46
46
  case 0:
47
- _d = (_c = JSON).parse;
47
+ _c = (_b = JSON).parse;
48
48
  return [4 /*yield*/, readFile(new URL('../package.json', import.meta.url).pathname, 'utf-8')];
49
49
  case 1:
50
- pkgJson = _d.apply(_c, [_e.sent()]);
50
+ pkgJson = _c.apply(_b, [_e.sent()]);
51
51
  exports = pkgJson.exports;
52
52
  name = pkgJson.name;
53
53
  return [2 /*return*/, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simsustech/quasar-components",
3
- "version": "0.4.7",
3
+ "version": "0.5.0",
4
4
  "author": "Stefan van Herwijnen",
5
5
  "description": "High level components for Quasar Framework",
6
6
  "license": "MIT",
@@ -46,34 +46,34 @@
46
46
  },
47
47
  "bugs": "https://github.com/simsusech/quasar-components/issues",
48
48
  "dependencies": {
49
- "validator": "^13.9.0"
49
+ "validator": "^13.11.0"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "quasar": "^2.9.2"
53
53
  },
54
54
  "devDependencies": {
55
- "@types/node": "^20.4.5",
56
- "@types/validator": "^13.9.0",
57
- "@types/ws": "^8.5.5",
58
- "@typescript-eslint/eslint-plugin": "^6.2.1",
59
- "@typescript-eslint/parser": "^6.2.1",
60
- "@vitejs/plugin-vue": "^4.2.3",
61
- "@vue/server-renderer": "^3.3.4",
62
- "eslint": "^8.46.0",
63
- "eslint-config-prettier": "^8.9.0",
64
- "eslint-plugin-prettier-vue": "^4.2.0",
65
- "eslint-plugin-vue": "^9.16.1",
66
- "glob": "^10.3.3",
67
- "local-pkg": "^0.4.3",
68
- "prettier": "^3.0.0",
69
- "quasar": "^2.12.3",
70
- "rimraf": "^5.0.1",
71
- "typescript": "^5.1.6",
72
- "unplugin-vue-components": "^0.25.1",
73
- "vite": "^4.4.8",
74
- "vue": "^3.3.4",
75
- "vue-router": "^4.2.4",
76
- "vue-tsc": "^1.8.8"
55
+ "@types/node": "^20.11.19",
56
+ "@types/validator": "^13.11.9",
57
+ "@types/ws": "^8.5.10",
58
+ "@typescript-eslint/eslint-plugin": "^7.0.1",
59
+ "@typescript-eslint/parser": "^7.0.1",
60
+ "@vitejs/plugin-vue": "^5.0.4",
61
+ "@vue/server-renderer": "^3.4.19",
62
+ "eslint": "^8.56.0",
63
+ "eslint-config-prettier": "^9.1.0",
64
+ "eslint-plugin-prettier-vue": "^5.0.0",
65
+ "eslint-plugin-vue": "^9.21.1",
66
+ "glob": "^10.3.10",
67
+ "local-pkg": "^0.5.0",
68
+ "prettier": "^3.2.5",
69
+ "quasar": "^2.14.4",
70
+ "rimraf": "^5.0.5",
71
+ "typescript": "^5.3.3",
72
+ "unplugin-vue-components": "^0.26.0",
73
+ "vite": "^5.1.3",
74
+ "vue": "^3.4.19",
75
+ "vue-router": "^4.2.5",
76
+ "vue-tsc": "^1.8.27"
77
77
  },
78
78
  "scripts": {
79
79
  "build:plugin": "vite build",
@@ -15,6 +15,7 @@
15
15
  bottom-slots
16
16
  :rules="validations['email']"
17
17
  lazy-rules
18
+ autcomplete="email"
18
19
  />
19
20
  <q-input
20
21
  v-if="useUsername"
@@ -26,6 +27,7 @@
26
27
  bottom-slots
27
28
  :rules="validations['username']"
28
29
  lazy-rules
30
+ autocomplete="username"
29
31
  />
30
32
  <q-input
31
33
  id="password"
@@ -38,6 +40,7 @@
38
40
  :rules="validations['password']"
39
41
  lazy-rules
40
42
  bottom-slots
43
+ autcomplete="current-password"
41
44
  >
42
45
  <template #append>
43
46
  <q-icon
@@ -5,7 +5,7 @@
5
5
  {{ label }}
6
6
  </q-item-label>
7
7
  <q-item-label>
8
- {{ modelValue ? lang.yes : lang.no }}
8
+ {{ modelValue === null ? '-' : modelValue ? lang.yes : lang.no }}
9
9
  </q-item-label>
10
10
  </q-item-section>
11
11
  </q-item>
@@ -17,7 +17,7 @@ import { QItem, QItemLabel, QItemSection, useQuasar } from 'quasar'
17
17
  import { useLang, loadLang } from './lang'
18
18
 
19
19
  export interface Props {
20
- modelValue: boolean
20
+ modelValue: boolean | null
21
21
  label: string
22
22
  }
23
23
  defineProps<Props>()