@duffcloudservices/site-forms 0.4.2 → 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/composables/useFormSubmission.d.ts +5 -1
- package/dist/fields/DcsFormDate.vue.d.ts +2 -2
- package/dist/fields/DcsFormSelect.vue.d.ts +2 -2
- package/dist/fields/DcsFormText.vue.d.ts +2 -2
- package/dist/fields/DcsFormTextarea.vue.d.ts +2 -2
- package/dist/index.js +899 -536
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/DcsForm.vue +37 -4
- package/src/__tests__/missing-form-error-surfacing.test.ts +119 -0
- package/src/__tests__/submission.test.ts +24 -0
- package/src/composables/useFormSubmission.ts +11 -4
|
@@ -10,7 +10,11 @@ export interface SubmitOptions {
|
|
|
10
10
|
}
|
|
11
11
|
/**
|
|
12
12
|
* POSTs a form submission to
|
|
13
|
-
* `${apiBase}/sites/{siteSlug}/forms/{formId}/submissions
|
|
13
|
+
* `${apiBase}/sites/{siteSlug}/forms/{formId}/submissions`, or — when no site
|
|
14
|
+
* slug is configured — to the slug-free
|
|
15
|
+
* `${apiBase}/forms/{formId}/submissions`, where the server infers the site
|
|
16
|
+
* from the request origin/host. A missing slug used to produce the broken
|
|
17
|
+
* `/sites//forms/...` shape (kimduffhomes.com 405, 2026-07-20).
|
|
14
18
|
*
|
|
15
19
|
* Uses JSON for plain values and `multipart/form-data` when any
|
|
16
20
|
* value is a `File` (file-upload fields).
|
|
@@ -5,10 +5,10 @@ type __VLS_Props = {
|
|
|
5
5
|
error?: string;
|
|
6
6
|
};
|
|
7
7
|
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
8
|
-
"update:modelValue": (value: string) => any;
|
|
9
8
|
blur: () => any;
|
|
9
|
+
"update:modelValue": (value: string) => any;
|
|
10
10
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
11
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
12
11
|
onBlur?: (() => any) | undefined;
|
|
12
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
13
13
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
14
14
|
export default _default;
|
|
@@ -20,11 +20,11 @@ declare function __VLS_template(): {
|
|
|
20
20
|
};
|
|
21
21
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
22
22
|
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
23
|
-
"update:modelValue": (value: string | string[]) => any;
|
|
24
23
|
blur: () => any;
|
|
24
|
+
"update:modelValue": (value: string | string[]) => any;
|
|
25
25
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
26
|
-
"onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
|
|
27
26
|
onBlur?: (() => any) | undefined;
|
|
27
|
+
"onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
|
|
28
28
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
29
29
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
30
30
|
export default _default;
|
|
@@ -19,11 +19,11 @@ declare function __VLS_template(): {
|
|
|
19
19
|
};
|
|
20
20
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
21
21
|
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
22
|
-
"update:modelValue": (value: string) => any;
|
|
23
22
|
blur: () => any;
|
|
23
|
+
"update:modelValue": (value: string) => any;
|
|
24
24
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
25
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
26
25
|
onBlur?: (() => any) | undefined;
|
|
26
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
27
27
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
28
28
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
29
29
|
export default _default;
|
|
@@ -19,11 +19,11 @@ declare function __VLS_template(): {
|
|
|
19
19
|
};
|
|
20
20
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
21
21
|
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
22
|
-
"update:modelValue": (value: string) => any;
|
|
23
22
|
blur: () => any;
|
|
23
|
+
"update:modelValue": (value: string) => any;
|
|
24
24
|
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
25
|
-
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
26
25
|
onBlur?: (() => any) | undefined;
|
|
26
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
27
27
|
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
28
28
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
29
29
|
export default _default;
|