@simsustech/quasar-components 0.4.5 → 0.4.7

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/CHANGELOG.md +13 -0
  2. package/dist/{QSubmitButton.vue_vue_type_script_setup_true_lang-17dddb76.js → QSubmitButton.vue_vue_type_script_setup_true_lang-77aece37.js} +24 -14
  3. package/dist/authentication.js +13 -42
  4. package/dist/form.js +1 -1
  5. package/dist/general.js +1 -1
  6. package/dist/{nl-710ec15d.js → nl-7a870643.js} +3 -0
  7. package/dist/types/ui/authentication/ConsentList.vue.d.ts +1 -1
  8. package/dist/types/ui/authentication/EmailChangeForm.vue.d.ts +1 -1
  9. package/dist/types/ui/authentication/EmailChangeStepper.vue.d.ts +1 -1
  10. package/dist/types/ui/authentication/LoginButton.vue.d.ts +1 -4
  11. package/dist/types/ui/authentication/LoginForm.vue.d.ts +1 -1
  12. package/dist/types/ui/authentication/OtpInput.vue.d.ts +1 -1
  13. package/dist/types/ui/authentication/PasswordChangeForm.vue.d.ts +2 -4
  14. package/dist/types/ui/authentication/PasswordChangeStepper.vue.d.ts +1 -5
  15. package/dist/types/ui/authentication/RegisterForm.vue.d.ts +1 -1
  16. package/dist/types/ui/authentication/RequestOtpForm.vue.d.ts +2 -4
  17. package/dist/types/ui/authentication/UserMenuButton.vue.d.ts +1 -1
  18. package/dist/types/ui/authentication/VerificationSlider.vue.d.ts +1 -1
  19. package/dist/types/ui/authentication/lang/index.d.ts +6 -0
  20. package/dist/types/ui/form/BooleanItem.vue.d.ts +1 -1
  21. package/dist/types/ui/form/BooleanSelect.vue.d.ts +1 -1
  22. package/dist/types/ui/form/DateInput.vue.d.ts +1 -1
  23. package/dist/types/ui/form/DatePicker.vue.d.ts +1 -1
  24. package/dist/types/ui/form/EmailInput.vue.d.ts +1 -1
  25. package/dist/types/ui/form/FormInput.vue.d.ts +1 -1
  26. package/dist/types/ui/form/FormItem.vue.d.ts +1 -1
  27. package/dist/types/ui/form/GenderItem.vue.d.ts +1 -1
  28. package/dist/types/ui/form/GenderSelect.vue.d.ts +1 -1
  29. package/dist/types/ui/form/PostalCodeInput.vue.d.ts +1 -1
  30. package/dist/types/ui/form/TelephoneNumberInput.vue.d.ts +1 -1
  31. package/dist/types/ui/general/QLanguageSelect.vue.d.ts +1 -1
  32. package/dist/types/ui/general/QStyledCard.vue.d.ts +1 -1
  33. package/dist/types/ui/general/QStyledLayout.vue.d.ts +1 -1
  34. package/dist/types/ui/general/QSubmitButton.vue.d.ts +10 -3
  35. package/dist/types/ui/general/ResourcePage.vue.d.ts +1 -1
  36. package/dist/types/ui/general/ResponsiveDialog.vue.d.ts +1 -1
  37. package/package.json +1 -1
  38. package/src/ui/authentication/LoginButton.vue +7 -31
  39. package/src/ui/authentication/PasswordChangeForm.vue +1 -4
  40. package/src/ui/authentication/PasswordChangeStepper.vue +8 -16
  41. package/src/ui/authentication/RequestOtpForm.vue +1 -2
  42. package/src/ui/authentication/lang/en-US.ts +3 -0
  43. package/src/ui/authentication/lang/index.ts +3 -0
  44. package/src/ui/authentication/lang/nl.ts +3 -0
  45. package/src/ui/form/DateInput.vue +1 -1
  46. package/src/ui/general/QSubmitButton.vue +18 -11
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @simsustech/quasar-components
2
2
 
3
+ ## 0.4.7
4
+
5
+ ### Patch Changes
6
+
7
+ - ebb0c51: fix(components): export useLang in PasswordChangeStepper
8
+ - 98f6393: fix: replace .once modifier with debounce in QSubmitButton
9
+
10
+ ## 0.4.6
11
+
12
+ ### Patch Changes
13
+
14
+ - 255d957: fix(components): make LoginButton extend QSubmitButton
15
+
3
16
  ## 0.4.5
4
17
 
5
18
  ### Patch Changes
@@ -1,5 +1,5 @@
1
- import { useQuasar, QBtn } from "quasar";
2
- import { ref, defineComponent, useAttrs, watch, openBlock, createBlock, mergeProps, unref } from "vue";
1
+ import { useQuasar, debounce, QBtn } from "quasar";
2
+ import { ref, defineComponent, useAttrs, watch, openBlock, createBlock, mergeProps, unref, withCtx, renderSlot, createTextVNode, toDisplayString } from "vue";
3
3
  const lang$1 = {
4
4
  isoName: "en-US",
5
5
  submit: "Submit",
@@ -72,25 +72,35 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
72
72
  loadLang($q.lang.isoName);
73
73
  });
74
74
  let loadingInternal = ref(false);
75
- const submit = () => {
76
- if (props.loading === void 0)
77
- loadingInternal.value = true;
78
- new Promise((resolve, reject) => {
79
- emit("submit", { done: () => resolve(true) });
80
- }).finally(() => {
75
+ const submit = debounce(
76
+ () => {
81
77
  if (props.loading === void 0)
82
- loadingInternal.value = false;
83
- });
84
- };
78
+ loadingInternal.value = true;
79
+ new Promise((resolve, reject) => {
80
+ emit("submit", { done: () => resolve(true) });
81
+ }).finally(() => {
82
+ if (props.loading === void 0)
83
+ loadingInternal.value = false;
84
+ });
85
+ },
86
+ 1e3,
87
+ true
88
+ );
85
89
  return (_ctx, _cache) => {
86
90
  const _component_q_btn = QBtn;
87
91
  return openBlock(), createBlock(_component_q_btn, mergeProps(unref(attrs), {
88
- label: __props.isNextButton ? unref(lang2).next : unref(lang2).submit,
89
92
  color: __props.color,
90
93
  loading: __props.loading || unref(loadingInternal),
91
94
  type: "submit",
92
- onClick: submit
93
- }), null, 16, ["label", "color", "loading"]);
95
+ onClick: unref(submit)
96
+ }), {
97
+ default: withCtx(() => [
98
+ renderSlot(_ctx.$slots, "default", {}, () => [
99
+ createTextVNode(toDisplayString(__props.isNextButton ? unref(lang2).next : unref(lang2).submit), 1)
100
+ ])
101
+ ]),
102
+ _: 3
103
+ }, 16, ["color", "loading", "onClick"]);
94
104
  };
95
105
  }
96
106
  });
@@ -1,6 +1,6 @@
1
1
  import { useQuasar, QForm, QInput, QStep, QStepperNavigation, QStepper, QIcon, QBtn, QSlider, QItemSection, QItem, QList, QMenu } from "quasar";
2
2
  import { ref, defineComponent, watch, computed, openBlock, createBlock, unref, mergeProps, withCtx, createVNode, renderSlot, toRef, createCommentVNode, createElementBlock, Fragment, renderList, createTextVNode, toDisplayString } from "vue";
3
- import { _ as _sfc_main$c } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-17dddb76.js";
3
+ import { _ as _sfc_main$c } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-77aece37.js";
4
4
  const lang$1 = {
5
5
  isoName: "en-US",
6
6
  myAccount: "Account",
@@ -33,6 +33,9 @@ const lang$1 = {
33
33
  fieldRequired: "Field is required.",
34
34
  invalidEmail: "A valid email address is required."
35
35
  },
36
+ messages: {
37
+ unknownEmail: "Email address is not registered."
38
+ },
36
39
  request: "Request a one-time password",
37
40
  checkEmail: "You will receive a verification code in your email. Please use this verification code in the next step.",
38
41
  verificationCode: "Verification code"
@@ -94,7 +97,7 @@ const enUS = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty
94
97
  const lang = ref(lang$1);
95
98
  const locales = /* @__PURE__ */ Object.assign({
96
99
  "./en-US.ts": () => Promise.resolve().then(() => enUS),
97
- "./nl.ts": () => import("./nl-710ec15d.js")
100
+ "./nl.ts": () => import("./nl-7a870643.js")
98
101
  });
99
102
  const useLang = () => {
100
103
  return lang;
@@ -395,7 +398,6 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
395
398
  loadLang($q.lang.isoName);
396
399
  });
397
400
  const email = ref("");
398
- const header = computed(() => lang2.value.otp.request);
399
401
  const formRef = ref();
400
402
  const validations = computed(() => ({
401
403
  email: [
@@ -417,7 +419,7 @@ const _sfc_main$b = /* @__PURE__ */ defineComponent({
417
419
  done();
418
420
  });
419
421
  };
420
- const variables = ref({ header });
422
+ const variables = ref({});
421
423
  const functions = ref({ submit });
422
424
  __expose({
423
425
  variables,
@@ -751,7 +753,6 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
751
753
  const repeatNewPassword = ref("");
752
754
  const showPassword = ref(false);
753
755
  const showRepeatPassword = ref(false);
754
- const header = computed(() => lang2.value.password.changePassword);
755
756
  const formRef = ref();
756
757
  const validations = computed(() => ({
757
758
  password: [
@@ -779,9 +780,7 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
779
780
  evt.done();
780
781
  });
781
782
  };
782
- const variables = ref({
783
- header
784
- });
783
+ const variables = ref({});
785
784
  const functions = ref({
786
785
  submit
787
786
  });
@@ -852,7 +851,8 @@ const _sfc_main$7 = /* @__PURE__ */ defineComponent({
852
851
  }
853
852
  });
854
853
  const __default__$6 = {
855
- name: "PasswordChangeStepper"
854
+ name: "PasswordChangeStepper",
855
+ useLang
856
856
  };
857
857
  const _sfc_main$6 = /* @__PURE__ */ defineComponent({
858
858
  ...__default__$6,
@@ -872,24 +872,10 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
872
872
  const steps = ["requestOtp", "changePassword"];
873
873
  const step = ref("requestOtp");
874
874
  const email = ref("");
875
- const header = computed(() => lang2.value.password.changePassword);
876
- const passwordChanged = computed(() => lang2.value.password.passwordChanged);
877
- const unprocessableRequest = computed(() => lang2.value.unprocessableRequest);
878
- const checkEmail = computed(() => lang2.value.otp.checkEmail);
879
875
  const requestOtpFormRef = ref();
880
876
  const passwordChangeFormRef = ref();
881
- const requestOtpHeader = computed(
882
- () => {
883
- var _a;
884
- return ((_a = requestOtpFormRef.value) == null ? void 0 : _a.variables.header) || "";
885
- }
886
- );
887
- const passwordChangeHeader = computed(
888
- () => {
889
- var _a;
890
- return ((_a = passwordChangeFormRef.value) == null ? void 0 : _a.variables.header) || "";
891
- }
892
- );
877
+ const requestOtpHeader = computed(() => lang2.value.otp.request);
878
+ const passwordChangeHeader = computed(() => lang2.value.password.changePassword);
893
879
  const requestOtp = ({
894
880
  email: emittedEmail,
895
881
  done
@@ -911,10 +897,6 @@ const _sfc_main$6 = /* @__PURE__ */ defineComponent({
911
897
  });
912
898
  };
913
899
  const variables = ref({
914
- header,
915
- passwordChanged,
916
- unprocessableRequest,
917
- checkEmail,
918
900
  steps
919
901
  });
920
902
  const functions = ref({
@@ -1643,7 +1625,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1643
1625
  props: {
1644
1626
  withNetwork: {}
1645
1627
  },
1646
- setup(__props, { expose: __expose }) {
1628
+ setup(__props) {
1647
1629
  const $q = useQuasar();
1648
1630
  const lang2 = useLang();
1649
1631
  if (lang2.value.isoName !== $q.lang.isoName)
@@ -1651,19 +1633,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
1651
1633
  watch($q.lang, (val) => {
1652
1634
  loadLang($q.lang.isoName);
1653
1635
  });
1654
- const variables = ref({
1655
- // header: lang.value.some.nested.prop
1656
- });
1657
- const functions = ref({
1658
- // submit
1659
- });
1660
- __expose({
1661
- variables,
1662
- functions
1663
- });
1664
1636
  return (_ctx, _cache) => {
1665
- const _component_q_btn = QBtn;
1666
- return openBlock(), createBlock(_component_q_btn, null, {
1637
+ return openBlock(), createBlock(_sfc_main$c, null, {
1667
1638
  default: withCtx(() => [
1668
1639
  renderSlot(_ctx.$slots, "icon"),
1669
1640
  _ctx.withNetwork ? (openBlock(), createElementBlock("div", _hoisted_1, toDisplayString(unref(lang2).login.loginWith) + " " + toDisplayString(_ctx.withNetwork), 1)) : (openBlock(), createElementBlock("div", _hoisted_2, toDisplayString(unref(lang2).login.login), 1))
package/dist/form.js CHANGED
@@ -347,7 +347,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
347
347
  });
348
348
  const { modelValue } = toRefs(props);
349
349
  const update = (val) => {
350
- if (typeof val === "string")
350
+ if (typeof val === "string" || val === null)
351
351
  emit("update:modelValue", val);
352
352
  };
353
353
  watch(
package/dist/general.js CHANGED
@@ -1,4 +1,4 @@
1
- import { l as loadLang, u as useLang, _ as _sfc_main$4 } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-17dddb76.js";
1
+ import { l as loadLang, u as useLang, _ as _sfc_main$4 } from "./QSubmitButton.vue_vue_type_script_setup_true_lang-77aece37.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
4
  import { enUs, nl } from "./flags.js";
@@ -30,6 +30,9 @@ const lang = {
30
30
  fieldRequired: "Veld is vereist.",
31
31
  invalidEmail: "Het email adres is ongeldig."
32
32
  },
33
+ messages: {
34
+ unknownEmail: "Email adres is niet geregistreerd."
35
+ },
33
36
  request: "Vraag een eenmalig wachtwoord aan.",
34
37
  checkEmail: "U ontvangt een verificatie code in uw mailbox. Gebruik deze code in de volgende stap.",
35
38
  verificationCode: "Verificatie code"
@@ -16,7 +16,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
16
16
  deny: string;
17
17
  }>;
18
18
  functions: import("vue").Ref<{}>;
19
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
19
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
20
20
  export default _default;
21
21
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
22
22
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -23,7 +23,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
23
23
  otp: string;
24
24
  done: () => void;
25
25
  }) => void;
26
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
26
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
27
27
  onSubmit?: ((args_0: {
28
28
  email: string;
29
29
  newEmail: string;
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
26
26
  otp: string;
27
27
  done: () => void;
28
28
  }) => void;
29
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
29
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
30
30
  onChangeEmail?: ((args_0: {
31
31
  email: string;
32
32
  newEmail: string;
@@ -1,10 +1,7 @@
1
1
  export interface Props {
2
2
  withNetwork?: string;
3
3
  }
4
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {
5
- variables: import("vue").Ref<{}>;
6
- functions: import("vue").Ref<{}>;
7
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
4
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
8
5
  icon?(_: {}): any;
9
6
  }>;
10
7
  export default _default;
@@ -27,7 +27,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
27
27
  username?: string | undefined;
28
28
  done: () => void;
29
29
  }) => void;
30
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
30
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
31
31
  onSubmit?: ((args_0: {
32
32
  email?: string | undefined;
33
33
  password: string;
@@ -2,7 +2,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
2
2
  modelValue: string;
3
3
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
4
4
  "update:modelValue": (...args: any[]) => void;
5
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
5
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
6
6
  modelValue: string;
7
7
  }>>> & {
8
8
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
@@ -12,9 +12,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
12
12
  form: undefined;
13
13
  input: undefined;
14
14
  }>, {
15
- variables: import("vue").Ref<{
16
- header: string;
17
- }>;
15
+ variables: import("vue").Ref<{}>;
18
16
  functions: import("vue").Ref<{
19
17
  submit: (args_0: {
20
18
  value?: string | undefined;
@@ -28,7 +26,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
28
26
  otp: string;
29
27
  done: () => void;
30
28
  }) => void;
31
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
29
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
32
30
  minimumPasswordLength: number;
33
31
  form: undefined;
34
32
  input: undefined;
@@ -6,10 +6,6 @@ export interface Props {
6
6
  }
7
7
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {
8
8
  variables: import("vue").Ref<{
9
- header: string;
10
- passwordChanged: string;
11
- unprocessableRequest: string;
12
- checkEmail: string;
13
9
  steps: readonly ["requestOtp", "changePassword"];
14
10
  }>;
15
11
  functions: import("vue").Ref<{
@@ -26,7 +22,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
26
22
  otp: string;
27
23
  done: () => void;
28
24
  }) => void;
29
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
25
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
30
26
  onRequestOtp?: ((args_0: {
31
27
  email: string;
32
28
  done: () => void;
@@ -39,7 +39,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
39
39
  extraFields?: Record<string, string> | undefined;
40
40
  done: () => void;
41
41
  }) => void;
42
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
42
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
43
43
  minimumPasswordLength: number;
44
44
  extraFields: undefined;
45
45
  form: undefined;
@@ -6,9 +6,7 @@ export interface Props {
6
6
  })>;
7
7
  }
8
8
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {
9
- variables: import("vue").Ref<{
10
- header: string;
11
- }>;
9
+ variables: import("vue").Ref<{}>;
12
10
  functions: import("vue").Ref<{
13
11
  submit: (args_0: {
14
12
  value?: string | undefined;
@@ -20,7 +18,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
20
18
  email: string;
21
19
  done: () => void;
22
20
  }) => void;
23
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
21
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
24
22
  onSubmit?: ((args_0: {
25
23
  email: string;
26
24
  done: () => void;
@@ -7,7 +7,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
7
7
  functions: import("vue").Ref<{}>;
8
8
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
9
9
  signOut: () => void;
10
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
10
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
11
11
  onSignOut?: (() => any) | undefined;
12
12
  }, {}, {}>, {
13
13
  default?(_: {}): any;
@@ -6,7 +6,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
6
6
  functions: import("vue").Ref<{}>;
7
7
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
8
  verified: () => void;
9
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
9
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
10
10
  onVerified?: (() => any) | undefined;
11
11
  }, {}, {}>;
12
12
  export default _default;
@@ -46,6 +46,9 @@ export interface Language {
46
46
  fieldRequired: string;
47
47
  invalidEmail: string;
48
48
  };
49
+ messages: {
50
+ unknownEmail: string;
51
+ };
49
52
  request: string;
50
53
  checkEmail: string;
51
54
  verificationCode: string;
@@ -133,6 +136,9 @@ export declare const lang: Ref<{
133
136
  fieldRequired: string;
134
137
  invalidEmail: string;
135
138
  };
139
+ messages: {
140
+ unknownEmail: string;
141
+ };
136
142
  request: string;
137
143
  checkEmail: string;
138
144
  verificationCode: string;
@@ -2,7 +2,7 @@ export interface Props {
2
2
  modelValue: boolean;
3
3
  label: string;
4
4
  }
5
- declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
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>>>, {}, {}>;
6
6
  export default _default;
7
7
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
8
8
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -5,7 +5,7 @@ export interface Props {
5
5
  }
6
6
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
7
  "update:modelValue": (...args: any[]) => void;
8
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
8
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
9
9
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
10
10
  }, {}, {}>;
11
11
  export default _default;
@@ -8,7 +8,7 @@ export interface Props {
8
8
  }
9
9
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
10
10
  "update:modelValue": (val: string | null) => void;
11
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
11
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
12
12
  "onUpdate:modelValue"?: ((val: string | null) => any) | undefined;
13
13
  }, {}, {}>;
14
14
  export default _default;
@@ -16,7 +16,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
16
16
  from: string;
17
17
  to: string;
18
18
  }) => void;
19
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
19
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
20
20
  modelValue: string | null | undefined | {
21
21
  from: string;
22
22
  to: string;
@@ -8,7 +8,7 @@ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimePr
8
8
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
9
9
  "update:subject": (value: string | number | null) => void;
10
10
  "update:body": (value: string | null) => void;
11
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
11
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
12
12
  "onUpdate:subject"?: ((value: string | number | null) => any) | undefined;
13
13
  "onUpdate:body"?: ((value: string | null) => any) | undefined;
14
14
  }, {}, {}>;
@@ -5,7 +5,7 @@ export interface Props {
5
5
  label?: string;
6
6
  required?: boolean;
7
7
  }
8
- declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
8
+ 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>>>, {}, {}>;
9
9
  export default _default;
10
10
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
11
11
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -4,7 +4,7 @@ export interface Props {
4
4
  label?: string;
5
5
  field?: FormItems;
6
6
  }
7
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
7
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
8
8
  avatar?(_: {}): any;
9
9
  side?(_: {}): any;
10
10
  }>;
@@ -2,7 +2,7 @@ import type { Gender } from './GenderSelect.vue';
2
2
  export interface Props {
3
3
  modelValue: Gender;
4
4
  }
5
- declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
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>>>, {}, {}>;
6
6
  export default _default;
7
7
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
8
8
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -6,7 +6,7 @@ export interface Props {
6
6
  }
7
7
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
8
  "update:modelValue": (...args: any[]) => void;
9
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
9
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
10
10
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
11
11
  }, {}, {}>;
12
12
  export default _default;
@@ -6,7 +6,7 @@ export interface Props {
6
6
  }
7
7
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
8
8
  "update:modelValue": (...args: any[]) => void;
9
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
9
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
10
10
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
11
11
  }, {}, {}>;
12
12
  export default _default;
@@ -4,7 +4,7 @@ export interface Props {
4
4
  }
5
5
  declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
6
6
  "update:modelValue": (...args: any[]) => void;
7
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
7
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
8
8
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
9
9
  }, {}, {}>;
10
10
  export default _default;
@@ -3,7 +3,7 @@ export interface Props {
3
3
  modelValue: string;
4
4
  languageImports: Record<string, () => Promise<QuasarLanguage>>;
5
5
  }
6
- declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
6
+ 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>>>, {}, {}>;
7
7
  export default _default;
8
8
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
9
9
  type __VLS_TypePropsToRuntimeProps<T> = {
@@ -5,7 +5,7 @@ export interface Props {
5
5
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {
6
6
  variables: import("vue").Ref<{}>;
7
7
  functions: import("vue").Ref<{}>;
8
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
8
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
9
9
  image?(_: {}): any;
10
10
  title?(_: {}): any;
11
11
  subtitle?(_: {}): any;
@@ -4,7 +4,7 @@ export interface Props {
4
4
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {
5
5
  variables: import("vue").Ref<{}>;
6
6
  functions: import("vue").Ref<{}>;
7
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
7
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
8
8
  leftDrawerItems?(_: {}): any;
9
9
  }>;
10
10
  export default _default;
@@ -4,7 +4,7 @@ export interface Props {
4
4
  isNextButton?: boolean;
5
5
  color?: string;
6
6
  }
7
- declare const _default: import("vue").DefineComponent<{
7
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
8
8
  loading: {
9
9
  type: BooleanConstructor;
10
10
  default: undefined;
@@ -24,7 +24,7 @@ declare const _default: import("vue").DefineComponent<{
24
24
  value?: string | undefined;
25
25
  done: () => void;
26
26
  }) => void;
27
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
27
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
28
28
  loading: {
29
29
  type: BooleanConstructor;
30
30
  default: undefined;
@@ -49,5 +49,12 @@ declare const _default: import("vue").DefineComponent<{
49
49
  loading: boolean;
50
50
  useForm: boolean;
51
51
  isNextButton: boolean;
52
- }, {}>;
52
+ }, {}>, {
53
+ default?(_: {}): any;
54
+ }>;
53
55
  export default _default;
56
+ type __VLS_WithTemplateSlots<T, S> = T & {
57
+ new (): {
58
+ $slots: S;
59
+ };
60
+ };
@@ -17,7 +17,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
17
17
  data?: unknown;
18
18
  done: (success?: boolean) => void;
19
19
  }) => void;
20
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
20
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<Props>, {
21
21
  type: string;
22
22
  disabled: boolean;
23
23
  }>>> & {
@@ -12,7 +12,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
12
12
  submit: (args_0: {
13
13
  done: (success?: boolean) => void;
14
14
  }) => void;
15
- }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
15
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>> & {
16
16
  onSubmit?: ((args_0: {
17
17
  done: (success?: boolean) => void;
18
18
  }) => any) | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simsustech/quasar-components",
3
- "version": "0.4.5",
3
+ "version": "0.4.7",
4
4
  "author": "Stefan van Herwijnen",
5
5
  "description": "High level components for Quasar Framework",
6
6
  "license": "MIT",
@@ -1,11 +1,9 @@
1
1
  <template>
2
- <q-btn>
2
+ <q-submit-button>
3
3
  <slot name="icon" />
4
4
  <div v-if="withNetwork">{{ lang.login.loginWith }} {{ withNetwork }}</div>
5
- <div v-else>
6
- {{ lang.login.login }}
7
- </div>
8
- </q-btn>
5
+ <div v-else>{{ lang.login.login }}</div>
6
+ </q-submit-button>
9
7
  </template>
10
8
 
11
9
  <script lang="ts">
@@ -15,42 +13,20 @@ export default {
15
13
  </script>
16
14
 
17
15
  <script setup lang="ts">
18
- import { ref, watch } from 'vue'
16
+ import { watch } from 'vue'
19
17
  import { useQuasar } from 'quasar'
20
- import { useLang, loadLang } from './lang'
18
+ import { useLang, loadLang } from './lang/index.js'
19
+ import QSubmitButton from '../general/QSubmitButton.vue'
21
20
 
22
21
  export interface Props {
23
22
  withNetwork?: string
24
23
  }
25
24
  defineProps<Props>()
26
- // const attrs = useAttrs();
27
- // const emit = defineEmits<{
28
- // (
29
- // e: "asyncEmit",
30
- // {
31
- // value,
32
- // done,
33
- // }: {
34
- // value: string;
35
- // done: () => void;
36
- // }
37
- // ): void;
38
- // }>();
25
+
39
26
  const $q = useQuasar()
40
27
  const lang = useLang()
41
28
  if (lang.value.isoName !== $q.lang.isoName) loadLang($q.lang.isoName)
42
29
  watch($q.lang, (val) => {
43
30
  loadLang($q.lang.isoName)
44
31
  })
45
-
46
- const variables = ref({
47
- // header: lang.value.some.nested.prop
48
- })
49
- const functions = ref({
50
- // submit
51
- })
52
- defineExpose({
53
- variables,
54
- functions
55
- })
56
32
  </script>
@@ -116,7 +116,6 @@ const newPassword = ref('')
116
116
  const repeatNewPassword = ref('')
117
117
  const showPassword = ref(false)
118
118
  const showRepeatPassword = ref(false)
119
- const header = computed(() => lang.value.password.changePassword)
120
119
 
121
120
  const formRef = ref<QForm>()
122
121
  const validations = computed<
@@ -153,9 +152,7 @@ const submit: InstanceType<typeof QSubmitButton>['$props']['onSubmit'] = (
153
152
  })
154
153
  }
155
154
 
156
- const variables = ref({
157
- header
158
- })
155
+ const variables = ref({})
159
156
  const functions = ref({
160
157
  submit
161
158
  })
@@ -38,15 +38,17 @@
38
38
  </template>
39
39
 
40
40
  <script lang="ts">
41
+ import { useLang, loadLang } from './lang'
42
+
41
43
  export default {
42
- name: 'PasswordChangeStepper'
44
+ name: 'PasswordChangeStepper',
45
+ useLang: useLang
43
46
  }
44
47
  </script>
45
48
 
46
49
  <script setup lang="ts">
47
50
  import { ref, computed, watch } from 'vue'
48
51
  import { useQuasar, QInputProps } from 'quasar'
49
- import { useLang, loadLang } from './lang'
50
52
  import QSubmitButton from '../general/QSubmitButton.vue'
51
53
  import RequestOtpForm from './RequestOtpForm.vue'
52
54
  import PasswordChangeForm from './PasswordChangeForm.vue'
@@ -102,20 +104,14 @@ watch($q.lang, (val) => {
102
104
  const steps = ['requestOtp', 'changePassword'] as const
103
105
  const step = ref<(typeof steps)[number]>('requestOtp')
104
106
  const email = ref('')
105
- const header = computed(() => lang.value.password.changePassword)
106
- const passwordChanged = computed(() => lang.value.password.passwordChanged)
107
- const unprocessableRequest = computed(() => lang.value.unprocessableRequest)
108
- const checkEmail = computed(() => lang.value.otp.checkEmail)
109
107
 
110
108
  const requestOtpFormRef = ref<typeof RequestOtpForm>()
111
109
  const passwordChangeFormRef = ref<typeof PasswordChangeForm>()
112
110
 
113
- const requestOtpHeader = computed(
114
- () => requestOtpFormRef.value?.variables.header || ''
115
- )
116
- const passwordChangeHeader = computed(
117
- () => passwordChangeFormRef.value?.variables.header || ''
118
- )
111
+ const requestOtpHeader = computed(() => lang.value.otp.request)
112
+
113
+ const passwordChangeHeader = computed(() => lang.value.password.changePassword)
114
+
119
115
  const requestOtp: InstanceType<typeof RequestOtpForm>['$props']['onSubmit'] = ({
120
116
  email: emittedEmail,
121
117
  done
@@ -141,10 +137,6 @@ const changePassword: InstanceType<
141
137
  }
142
138
 
143
139
  const variables = ref({
144
- header,
145
- passwordChanged,
146
- unprocessableRequest,
147
- checkEmail,
148
140
  steps
149
141
  })
150
142
  const functions = ref({
@@ -65,7 +65,6 @@ watch($q.lang, (val) => {
65
65
  })
66
66
 
67
67
  const email = ref('')
68
- const header = computed(() => lang.value.otp.request)
69
68
 
70
69
  const formRef = ref<QForm>()
71
70
  const validations = computed<
@@ -90,7 +89,7 @@ const submit: InstanceType<typeof QSubmitButton>['$props']['onSubmit'] = ({
90
89
  })
91
90
  }
92
91
 
93
- const variables = ref({ header })
92
+ const variables = ref({})
94
93
  const functions = ref({ submit })
95
94
  defineExpose({
96
95
  variables,
@@ -32,6 +32,9 @@ const lang: Language = {
32
32
  fieldRequired: 'Field is required.',
33
33
  invalidEmail: 'A valid email address is required.'
34
34
  },
35
+ messages: {
36
+ unknownEmail: 'Email address is not registered.'
37
+ },
35
38
  request: 'Request a one-time password',
36
39
  checkEmail:
37
40
  'You will receive a verification code in your email. Please use this verification code in the next step.',
@@ -46,6 +46,9 @@ export interface Language {
46
46
  fieldRequired: string
47
47
  invalidEmail: string
48
48
  }
49
+ messages: {
50
+ unknownEmail: string
51
+ }
49
52
  request: string
50
53
  checkEmail: string
51
54
  verificationCode: string
@@ -32,6 +32,9 @@ const lang: Language = {
32
32
  fieldRequired: 'Veld is vereist.',
33
33
  invalidEmail: 'Het email adres is ongeldig.'
34
34
  },
35
+ messages: {
36
+ unknownEmail: 'Email adres is niet geregistreerd.'
37
+ },
35
38
  request: 'Vraag een eenmalig wachtwoord aan.',
36
39
  checkEmail:
37
40
  'U ontvangt een verificatie code in uw mailbox. Gebruik deze code in de volgende stap.',
@@ -67,7 +67,7 @@ watch($q.lang, () => {
67
67
  const { modelValue } = toRefs(props)
68
68
 
69
69
  const update = (val: string | number | null) => {
70
- if (typeof val === 'string') emit('update:modelValue', val)
70
+ if (typeof val === 'string' || val === null) emit('update:modelValue', val)
71
71
  }
72
72
  watch(
73
73
  () => modelValue?.value,
@@ -1,12 +1,15 @@
1
1
  <template>
2
2
  <q-btn
3
3
  v-bind="attrs"
4
- :label="isNextButton ? lang.next : lang.submit"
5
4
  :color="color"
6
5
  :loading="loading || loadingInternal"
7
6
  type="submit"
8
7
  @click="submit"
9
- />
8
+ >
9
+ <slot>
10
+ {{ isNextButton ? lang.next : lang.submit }}
11
+ </slot>
12
+ </q-btn>
10
13
  </template>
11
14
 
12
15
  <script lang="ts">
@@ -18,7 +21,7 @@ export default {
18
21
 
19
22
  <script setup lang="ts">
20
23
  import { ref, watch, useAttrs } from 'vue'
21
- import { useQuasar } from 'quasar'
24
+ import { useQuasar, debounce } from 'quasar'
22
25
  import { useLang, loadLang } from './lang'
23
26
  export interface Props {
24
27
  loading?: boolean
@@ -64,12 +67,16 @@ watch($q.lang, (val) => {
64
67
 
65
68
  let loadingInternal = ref(false)
66
69
 
67
- const submit = () => {
68
- if (props.loading === void 0) loadingInternal.value = true
69
- const p = new Promise((resolve, reject) => {
70
- emit('submit', { done: () => resolve(true) })
71
- }).finally(() => {
72
- if (props.loading === void 0) loadingInternal.value = false
73
- })
74
- }
70
+ const submit = debounce(
71
+ () => {
72
+ if (props.loading === void 0) loadingInternal.value = true
73
+ const p = new Promise((resolve, reject) => {
74
+ emit('submit', { done: () => resolve(true) })
75
+ }).finally(() => {
76
+ if (props.loading === void 0) loadingInternal.value = false
77
+ })
78
+ },
79
+ 1000,
80
+ true
81
+ )
75
82
  </script>