hr-design-system-handlebars 1.113.1 → 1.113.3
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/CHANGELOG.md +25 -0
- package/dist/assets/brand/hessenschau/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr-bigband/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr-fernsehen/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr-inforadio/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr-rundfunkrat/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr-sinfonieorchester/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr-werbung/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr1/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr2/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr3/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/hr4/conf/locatags.merged.json +3 -0
- package/dist/assets/brand/you-fm/conf/locatags.merged.json +3 -0
- package/dist/assets/index.css +45 -8
- package/dist/assets/js/alpine.js +2 -1
- package/dist/assets/js/components/forms/js/contactForm.alpine.js +34 -99
- package/dist/assets/js/components/forms/js/inputHandler.alpine.js +2 -36
- package/dist/views/components/forms/components/controls.hbs +1 -1
- package/dist/views/components/forms/components/input.hbs +1 -1
- package/dist/views/components/forms/components/message.hbs +22 -10
- package/dist/views/components/forms/components/textarea.hbs +1 -2
- package/dist/views/components/forms/webform.hbs +33 -12
- package/dist/views_static/components/forms/components/controls.hbs +1 -1
- package/dist/views_static/components/forms/components/input.hbs +1 -1
- package/dist/views_static/components/forms/components/message.hbs +22 -10
- package/dist/views_static/components/forms/components/textarea.hbs +1 -2
- package/dist/views_static/components/forms/webform.hbs +33 -12
- package/package.json +1 -1
- package/src/assets/brand/_default/conf/locatags.json +4 -1
- package/src/assets/brand/hessenschau/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr-bigband/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr-fernsehen/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr-inforadio/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr-rundfunkrat/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr-sinfonieorchester/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr-werbung/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr1/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr2/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr3/conf/locatags.merged.json +3 -0
- package/src/assets/brand/hr4/conf/locatags.merged.json +3 -0
- package/src/assets/brand/you-fm/conf/locatags.merged.json +3 -0
- package/src/assets/css/custom-utilities.css +1 -1
- package/src/assets/fixtures/content/copytext/copytext_webform.json +9 -1
- package/src/assets/fixtures/content/copytext/copytext_webform_simple.json +36 -0
- package/src/assets/fixtures/forms/error_messages.inc.json +3 -0
- package/src/assets/js/alpine.js +2 -1
- package/src/stories/views/components/content/copytext/copytext-form.stories.js +52 -1
- package/src/stories/views/components/content/copytext/fixtures/copytext_webform.json +1 -1
- package/src/stories/views/components/content/copytext/fixtures/copytext_webform_simple.json +1 -0
- package/src/stories/views/components/forms/components/controls.hbs +1 -1
- package/src/stories/views/components/forms/components/input.hbs +1 -1
- package/src/stories/views/components/forms/components/message.hbs +22 -10
- package/src/stories/views/components/forms/components/textarea.hbs +1 -2
- package/src/stories/views/components/forms/js/contactForm.alpine.js +34 -99
- package/src/stories/views/components/forms/js/inputHandler.alpine.js +2 -36
- package/src/stories/views/components/forms/webform.hbs +33 -12
|
@@ -1,16 +1,28 @@
|
|
|
1
|
-
<div class="flex flex-
|
|
1
|
+
<div class="flex flex-col justify-between w-full gap-6 md:gap-10">
|
|
2
2
|
<div class="flex items-center gap-x-2 md:gap-x-3">
|
|
3
3
|
{{#if _success}}
|
|
4
4
|
{{> components/forms/components/success_icon}}
|
|
5
|
-
<
|
|
5
|
+
<h3 class="font-bold text-success">{{~loca "webform_send_title_success"}}</h3>
|
|
6
6
|
{{else}}
|
|
7
7
|
{{> components/forms/components/error_icon _class="!block"}}
|
|
8
|
-
<
|
|
8
|
+
<h3 class="font-bold text-error dark:text-error-dark">{{~loca "webform_send_title_error"}}</h3>
|
|
9
9
|
{{/if}}
|
|
10
|
-
</div>
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
<span class="font-copy">
|
|
13
|
+
{{#if _locaKeyText}}
|
|
14
|
+
{{loca _locaKeyText}}
|
|
15
|
+
{{else}}
|
|
16
|
+
{{{_text}}}
|
|
17
|
+
{{/if}}
|
|
18
|
+
</span>
|
|
19
|
+
{{#unless _success}}
|
|
20
|
+
<div class="flex justify-end">
|
|
21
|
+
{{#> components/button/button _variant="primary" _size="lg" }}
|
|
22
|
+
<span class="text-base ds-button-label ">{{loca "webform_send_form_back"}}</span>
|
|
23
|
+
{{/components/button/button}}
|
|
24
|
+
{{#*inline "htmlProperties"}}
|
|
25
|
+
@click="retryHandler"
|
|
26
|
+
{{/inline}}
|
|
27
|
+
</div>
|
|
28
|
+
{{/unless}}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
>
|
|
7
7
|
<div class="w-full h-4 bg-white dark:bg-black dark:text-text-dark"></div>
|
|
8
8
|
<textarea
|
|
9
|
-
class="relative w-full pl-4 placeholder-transparent bg-white text-text dark:bg-black dark:text-text-dark autofill:shadow-autofill border-form-highlight dark:form-highlight-dark pr-9
|
|
9
|
+
class="relative w-full py-px pl-4 placeholder-transparent bg-white placeholder:select-none dark:border-form-highlight-dark min-h-12 peer focus:border-b-2 focus:py-0 text-text dark:bg-black dark:text-text-dark autofill:shadow-autofill border-form-highlight dark:form-highlight-dark pr-9 border-y focus:border-y-2 border-t-transparent dark:border-t-transparent focus:outline-none"
|
|
10
10
|
x-model="textarea{{getRandom}}"
|
|
11
11
|
id="textarea{{getRandom}}"
|
|
12
12
|
{{#if _required}}
|
|
@@ -35,7 +35,6 @@
|
|
|
35
35
|
maxlength="{{_maxLength}}"
|
|
36
36
|
{{/if~}}
|
|
37
37
|
{{#if _required}}required{{/if}}
|
|
38
|
-
class="relative w-full px-4 pb-px text-black placeholder-transparent bg-white border-form-highlight dark:border-form-highlight-dark min-h-12 peer border-y focus:border-b-2 focus:pb-0 border-t-transparent focus:outline-none"
|
|
39
38
|
{{#if _required}}
|
|
40
39
|
:class="{'border-form-highlight dark:border-form-highlight-dark': hideError(),'border-error dark:border-error-dark': hideDescription() }"
|
|
41
40
|
{{/if}}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
{{~#if _newWebForm ~}}
|
|
2
|
-
{{#>components/forms/components/backgroundBox }}
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
{{#>components/forms/components/backgroundBox }}
|
|
5
3
|
<h3 class="mb-6 text-2xl font-headingSerif sm:mb-12 text-text dark:text-text-dark">
|
|
6
4
|
{{this.title}}
|
|
7
5
|
</h3>
|
|
@@ -21,20 +19,43 @@
|
|
|
21
19
|
enctype="{{if this.isMultipart 'multipart/form-data' 'application/x-www-form-urlencoded'}}"
|
|
22
20
|
accept-charset="utf-8"
|
|
23
21
|
|
|
22
|
+
>
|
|
23
|
+
<div x-show="!wasPosted"
|
|
24
|
+
x-transition:enter="transition ease-out duration-300 delay-300"
|
|
25
|
+
x-transition:enter-start="opacity-0 transform scale-90"
|
|
26
|
+
x-transition:enter-end="opacity-100 transform scale-100"
|
|
27
|
+
x-transition:leave="transition ease-in duration-75 delay-0"
|
|
28
|
+
x-transition:leave-start="opacity-100 transform scale-100"
|
|
29
|
+
x-transition:leave-end="opacity-0 transform scale-90"
|
|
24
30
|
>
|
|
25
|
-
|
|
31
|
+
{{> components/forms/components/fields _formId=(joinStrings 'form' (getRandom)) }}
|
|
26
32
|
|
|
27
|
-
|
|
33
|
+
{{> components/forms/components/controls }}
|
|
34
|
+
</div>
|
|
35
|
+
<div class="flex flex-col gap-6 md:gap-10" id="successMessage" x-show="wasPostedWithSuccess"
|
|
36
|
+
x-transition:enter="transition ease-out duration-300 delay-75"
|
|
37
|
+
x-transition:enter-start="opacity-0 transform scale-90"
|
|
38
|
+
x-transition:enter-end="opacity-100 transform scale-100"
|
|
39
|
+
x-cloak
|
|
40
|
+
>
|
|
41
|
+
{{#if this.successText}}
|
|
42
|
+
{{> components/forms/components/message _success=true _locaKeyTitle="webform_send_title_success" _text=this.successText.richtext }}
|
|
43
|
+
{{else}}
|
|
44
|
+
{{> components/forms/components/message _success=true _locaKeyTitle="webform_send_title_success" _locaKeyText="webform_send_text_success" }}
|
|
45
|
+
{{/if}}
|
|
46
|
+
</div>
|
|
28
47
|
|
|
29
|
-
<
|
|
30
|
-
|
|
31
|
-
|
|
48
|
+
<div class="flex flex-col gap-6 md:gap-10" id="errorMessage" x-show="wasPostedWithError"
|
|
49
|
+
x-transition:enter="transition ease-out duration-300 delay-75"
|
|
50
|
+
x-transition:enter-start="opacity-0 transform scale-90"
|
|
51
|
+
x-transition:enter-end="opacity-100 transform scale-100"
|
|
52
|
+
x-cloak>
|
|
53
|
+
{{> components/forms/components/message _success=false _locaKeyTitle="webform_send_title_error" _locaKeyText="webform_send_text_error"}}
|
|
54
|
+
</div>
|
|
32
55
|
|
|
33
|
-
<template id="errorMessage">
|
|
34
|
-
{{> components/forms/components/message _success=false }}
|
|
35
|
-
</template>
|
|
36
|
-
|
|
37
56
|
</form>
|
|
57
|
+
|
|
58
|
+
|
|
38
59
|
</div>
|
|
39
60
|
{{/components/forms/components/backgroundBox }}
|
|
40
61
|
{{~else~}}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<label class="order-2 cursor-pointer {{> components/button/utilities/button_base_classes}} {{> components/button/utilities/button_variation_classes _variant='primary'}} {{> components/button/utilities/button_dimension_classes _size='lg'}}">
|
|
5
5
|
<span class="hidden" :class="{'hidden': !isPosting}">{{> components/base/image/icon _icon="reload" _addClass="w-5 h-5 fill-white dark:fill-text-dark animate-spin"}}</span>
|
|
6
6
|
<span class="" :class="{'hidden': isPosting}">{{> components/base/image/icon _icon="send-ds" _addClass="w-5 h-5 fill-white dark:fill-text-dark "}}</span>
|
|
7
|
-
<input type="submit" class="pl-2 cursor-pointer" value="Absenden" @click.prevent="
|
|
7
|
+
<input type="submit" class="pl-2 cursor-pointer" value="Absenden" @click.prevent="submitButtonHandler($event)"/>
|
|
8
8
|
</label>
|
|
9
9
|
|
|
10
10
|
{{#> components/button/button _variant="tertiary"_size="lg" _css="order-1 mr-4" _type="reset"}}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
x-init="validateField()"
|
|
5
5
|
x-ignore
|
|
6
6
|
>
|
|
7
|
-
<input class="relative w-full h-12 pt-4 pl-4 placeholder-transparent bg-white text-text dark:bg-black dark:text-text-dark autofill:shadow-autofill border-form-highlight dark:form-highlight-dark pr-9 peer border-y focus:border-y-2 border-t-transparent dark:border-t-transparent focus:outline-none"
|
|
7
|
+
<input class="relative w-full h-12 pt-4 pl-4 placeholder-transparent bg-white placeholder:select-none text-text dark:bg-black dark:text-text-dark autofill:shadow-autofill border-form-highlight dark:form-highlight-dark pr-9 peer border-y focus:border-y-2 border-t-transparent dark:border-t-transparent focus:outline-none"
|
|
8
8
|
:class="{'border-form-highlight dark:form-highlight-dark': hideError(),'border-error dark:border-error-dark': hideDescription() }"
|
|
9
9
|
x-model="input{{getRandom}}"
|
|
10
10
|
id="input{{getRandom}}"
|
|
@@ -1,16 +1,28 @@
|
|
|
1
|
-
<div class="flex flex-
|
|
1
|
+
<div class="flex flex-col justify-between w-full gap-6 md:gap-10">
|
|
2
2
|
<div class="flex items-center gap-x-2 md:gap-x-3">
|
|
3
3
|
{{#if _success}}
|
|
4
4
|
{{> components/forms/components/success_icon}}
|
|
5
|
-
<
|
|
5
|
+
<h3 class="font-bold text-success">{{~loca "webform_send_title_success"}}</h3>
|
|
6
6
|
{{else}}
|
|
7
7
|
{{> components/forms/components/error_icon _class="!block"}}
|
|
8
|
-
<
|
|
8
|
+
<h3 class="font-bold text-error dark:text-error-dark">{{~loca "webform_send_title_error"}}</h3>
|
|
9
9
|
{{/if}}
|
|
10
|
-
</div>
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
</div>
|
|
11
|
+
</div>
|
|
12
|
+
<span class="font-copy">
|
|
13
|
+
{{#if _locaKeyText}}
|
|
14
|
+
{{loca _locaKeyText}}
|
|
15
|
+
{{else}}
|
|
16
|
+
{{{_text}}}
|
|
17
|
+
{{/if}}
|
|
18
|
+
</span>
|
|
19
|
+
{{#unless _success}}
|
|
20
|
+
<div class="flex justify-end">
|
|
21
|
+
{{#> components/button/button _variant="primary" _size="lg" }}
|
|
22
|
+
<span class="text-base ds-button-label ">{{loca "webform_send_form_back"}}</span>
|
|
23
|
+
{{/components/button/button}}
|
|
24
|
+
{{#*inline "htmlProperties"}}
|
|
25
|
+
@click="retryHandler"
|
|
26
|
+
{{/inline}}
|
|
27
|
+
</div>
|
|
28
|
+
{{/unless}}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
>
|
|
7
7
|
<div class="w-full h-4 bg-white dark:bg-black dark:text-text-dark"></div>
|
|
8
8
|
<textarea
|
|
9
|
-
class="relative w-full pl-4 placeholder-transparent bg-white text-text dark:bg-black dark:text-text-dark autofill:shadow-autofill border-form-highlight dark:form-highlight-dark pr-9
|
|
9
|
+
class="relative w-full py-px pl-4 placeholder-transparent bg-white placeholder:select-none dark:border-form-highlight-dark min-h-12 peer focus:border-b-2 focus:py-0 text-text dark:bg-black dark:text-text-dark autofill:shadow-autofill border-form-highlight dark:form-highlight-dark pr-9 border-y focus:border-y-2 border-t-transparent dark:border-t-transparent focus:outline-none"
|
|
10
10
|
x-model="textarea{{getRandom}}"
|
|
11
11
|
id="textarea{{getRandom}}"
|
|
12
12
|
{{#if _required}}
|
|
@@ -35,7 +35,6 @@
|
|
|
35
35
|
maxlength="{{_maxLength}}"
|
|
36
36
|
{{/if~}}
|
|
37
37
|
{{#if _required}}required{{/if}}
|
|
38
|
-
class="relative w-full px-4 pb-px text-black placeholder-transparent bg-white border-form-highlight dark:border-form-highlight-dark min-h-12 peer border-y focus:border-b-2 focus:pb-0 border-t-transparent focus:outline-none"
|
|
39
38
|
{{#if _required}}
|
|
40
39
|
:class="{'border-form-highlight dark:border-form-highlight-dark': hideError(),'border-error dark:border-error-dark': hideDescription() }"
|
|
41
40
|
{{/if}}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
{{~#if _newWebForm ~}}
|
|
2
|
-
{{#>components/forms/components/backgroundBox }}
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
{{#>components/forms/components/backgroundBox }}
|
|
5
3
|
<h3 class="mb-6 text-2xl font-headingSerif sm:mb-12 text-text dark:text-text-dark">
|
|
6
4
|
{{this.title}}
|
|
7
5
|
</h3>
|
|
@@ -21,20 +19,43 @@
|
|
|
21
19
|
enctype="{{if this.isMultipart 'multipart/form-data' 'application/x-www-form-urlencoded'}}"
|
|
22
20
|
accept-charset="utf-8"
|
|
23
21
|
|
|
22
|
+
>
|
|
23
|
+
<div x-show="!wasPosted"
|
|
24
|
+
x-transition:enter="transition ease-out duration-300 delay-300"
|
|
25
|
+
x-transition:enter-start="opacity-0 transform scale-90"
|
|
26
|
+
x-transition:enter-end="opacity-100 transform scale-100"
|
|
27
|
+
x-transition:leave="transition ease-in duration-75 delay-0"
|
|
28
|
+
x-transition:leave-start="opacity-100 transform scale-100"
|
|
29
|
+
x-transition:leave-end="opacity-0 transform scale-90"
|
|
24
30
|
>
|
|
25
|
-
|
|
31
|
+
{{> components/forms/components/fields _formId=(joinStrings 'form' (getRandom)) }}
|
|
26
32
|
|
|
27
|
-
|
|
33
|
+
{{> components/forms/components/controls }}
|
|
34
|
+
</div>
|
|
35
|
+
<div class="flex flex-col gap-6 md:gap-10" id="successMessage" x-show="wasPostedWithSuccess"
|
|
36
|
+
x-transition:enter="transition ease-out duration-300 delay-75"
|
|
37
|
+
x-transition:enter-start="opacity-0 transform scale-90"
|
|
38
|
+
x-transition:enter-end="opacity-100 transform scale-100"
|
|
39
|
+
x-cloak
|
|
40
|
+
>
|
|
41
|
+
{{#if this.successText}}
|
|
42
|
+
{{> components/forms/components/message _success=true _locaKeyTitle="webform_send_title_success" _text=this.successText.richtext }}
|
|
43
|
+
{{else}}
|
|
44
|
+
{{> components/forms/components/message _success=true _locaKeyTitle="webform_send_title_success" _locaKeyText="webform_send_text_success" }}
|
|
45
|
+
{{/if}}
|
|
46
|
+
</div>
|
|
28
47
|
|
|
29
|
-
<
|
|
30
|
-
|
|
31
|
-
|
|
48
|
+
<div class="flex flex-col gap-6 md:gap-10" id="errorMessage" x-show="wasPostedWithError"
|
|
49
|
+
x-transition:enter="transition ease-out duration-300 delay-75"
|
|
50
|
+
x-transition:enter-start="opacity-0 transform scale-90"
|
|
51
|
+
x-transition:enter-end="opacity-100 transform scale-100"
|
|
52
|
+
x-cloak>
|
|
53
|
+
{{> components/forms/components/message _success=false _locaKeyTitle="webform_send_title_error" _locaKeyText="webform_send_text_error"}}
|
|
54
|
+
</div>
|
|
32
55
|
|
|
33
|
-
<template id="errorMessage">
|
|
34
|
-
{{> components/forms/components/message _success=false }}
|
|
35
|
-
</template>
|
|
36
|
-
|
|
37
56
|
</form>
|
|
57
|
+
|
|
58
|
+
|
|
38
59
|
</div>
|
|
39
60
|
{{/components/forms/components/backgroundBox }}
|
|
40
61
|
{{~else~}}
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"main": "dist/index.js",
|
|
8
8
|
"repository": "https://github.com/szuelch/hr-design-system-handlebars",
|
|
9
|
-
"version": "1.113.
|
|
9
|
+
"version": "1.113.3",
|
|
10
10
|
"scripts": {
|
|
11
11
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
12
12
|
"storybook": "storybook dev -p 6006 public",
|
|
@@ -204,5 +204,8 @@
|
|
|
204
204
|
"votingform_vote_result": "Anzahl der abgegebenen Stimmen: ",
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
|
-
"webform_upload_label": "Datei auswählen"
|
|
207
|
+
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular"
|
|
208
211
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hessenschau . d e",
|
|
209
212
|
"meta_application_name": "hessenschau.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr . d e",
|
|
209
212
|
"meta_application_name": "hr.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr-bigband . d e",
|
|
209
212
|
"meta_application_name": "hr-bigband.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr-fernsehen . d e",
|
|
209
212
|
"meta_application_name": "hr-fernsehen.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr-inforadio . d e",
|
|
209
212
|
"meta_application_name": "hr-inforadio.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr-rundfunkrat . d e",
|
|
209
212
|
"meta_application_name": "hr-rundfunkrat.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr-sinfonieorchester . d e",
|
|
209
212
|
"meta_application_name": "hr-sinfonieorchester.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr-werbung . d e",
|
|
209
212
|
"meta_application_name": "hr-werbung.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr1 . d e",
|
|
209
212
|
"meta_application_name": "hr1.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr2 . d e",
|
|
209
212
|
"meta_application_name": "hr2.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr3 . d e",
|
|
209
212
|
"meta_application_name": "hr3.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite hr4 . d e",
|
|
209
212
|
"meta_application_name": "hr4.de"
|
|
210
213
|
}
|
|
@@ -205,6 +205,9 @@
|
|
|
205
205
|
"webform_send_text_success": "Das Formular wurde erfolgreich versendet.",
|
|
206
206
|
"webform_send_text_error": "Das Formular konnte nicht versendet werden.",
|
|
207
207
|
"webform_upload_label": "Datei auswählen",
|
|
208
|
+
"webform_send_title_error": "Das hat leider nicht geklappt!",
|
|
209
|
+
"webform_send_title_success": "Vielen Dank! Die Nachricht wurde verschickt.",
|
|
210
|
+
"webform_send_form_back": "Zurück zum Formular",
|
|
208
211
|
"header_homepage_link_title": "Startseite you-fm . d e",
|
|
209
212
|
"meta_application_name": "you-fm.de"
|
|
210
213
|
}
|
|
@@ -10,7 +10,15 @@
|
|
|
10
10
|
"hasNewWebForm": true,
|
|
11
11
|
"title": "Kontaktformular",
|
|
12
12
|
"jsonUrl": "https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de",
|
|
13
|
-
"
|
|
13
|
+
"successText":
|
|
14
|
+
{
|
|
15
|
+
"richtext":"Liebe Nutzerin, lieber Nutzer,<br><br>ich werde mich so schnell wie möglich um Ihr Anliegen kümmern. Hier geht's zur <a class='' href='https://www.hessenschau.de/index.html'>hessenschau.de-Startseite</a> mit aktuellen Nachrichten aus Hessen.<br><br>Viele Grüße, <br><br>Karsten Hufer"
|
|
16
|
+
},
|
|
17
|
+
"errorMessages":
|
|
18
|
+
{
|
|
19
|
+
"@->jsoninclude": "forms/error_messages.inc.json",
|
|
20
|
+
"@->contentpath": "error-messages"
|
|
21
|
+
},
|
|
14
22
|
"isMultipart": "isMultipart",
|
|
15
23
|
"trackingInformations": "trackingInformations",
|
|
16
24
|
"fields":[
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"copytextParagraph": [
|
|
3
|
+
{
|
|
4
|
+
"isHeadline": true,
|
|
5
|
+
"text": "Copytext mit Formular"
|
|
6
|
+
},
|
|
7
|
+
{
|
|
8
|
+
"paragraphBoxItem": {
|
|
9
|
+
"isWebForm": true,
|
|
10
|
+
"hasNewWebForm": true,
|
|
11
|
+
"title": "Kontaktformular",
|
|
12
|
+
"successText":
|
|
13
|
+
{
|
|
14
|
+
"richtext":"Liebe Nutzerin, lieber Nutzer,<br><br>ich werde mich so schnell wie möglich um Ihr Anliegen kümmern. Hier geht's zur <a class='' href='https://www.hessenschau.de/index.html'>hessenschau.de-Startseite</a> mit aktuellen Nachrichten aus Hessen.<br><br>Viele Grüße, <br><br>Karsten Hufer"
|
|
15
|
+
},
|
|
16
|
+
"jsonUrl": "https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de",
|
|
17
|
+
"errorMessages":
|
|
18
|
+
{
|
|
19
|
+
"@->jsoninclude": "forms/error_messages.inc.json",
|
|
20
|
+
"@->contentpath": "error-messages"
|
|
21
|
+
|
|
22
|
+
},
|
|
23
|
+
"isMultipart": "isMultipart",
|
|
24
|
+
"trackingInformations": "trackingInformations",
|
|
25
|
+
"fields":[
|
|
26
|
+
{
|
|
27
|
+
"@->jsoninclude": "forms/form_fields.inc.json",
|
|
28
|
+
"@->contentpath": "input-text-vorname"
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
]
|
|
36
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
{
|
|
2
|
+
"error-messages": ""form_error_required":"Server: Pflichtfeld","form_error_max":"Server: Zu viele Zeichen","form_error_validurl":"Server: Ungültige URL","form_error_empty":"Server: Darf nicht ausgefüllt werden","form_error_constants_or_null":"Server: Ungültiger Wert","form_error_constants":"Server: Ungültiger Wert","form_error_max_multivalue":"Server: Die maximale Anzahl an Antwortmöglichkeiten wurde überschritten","vote_error_identity_already_used":"Server: Unter dieser E-Mail-Adresse wurde bereits abgestimmt. Eine weitere Abstimmung ist nicht möglich.","vote_error_token_request_count_exceeded":"Server: Die maximale Anzahl an Bestätigungs-E-Mails wurde bereits verschickt.","form_error_email":"Server: Ungültige E-Mail-Adresse""
|
|
3
|
+
}
|
package/src/assets/js/alpine.js
CHANGED
|
@@ -54,7 +54,8 @@ Alpine.store('sharingBottomPos', {
|
|
|
54
54
|
})
|
|
55
55
|
Alpine.store('forms', {
|
|
56
56
|
submissionAttempted: [],
|
|
57
|
-
serverErrorFields: [{}]
|
|
57
|
+
serverErrorFields: [{}],
|
|
58
|
+
errorMessages: [{}]
|
|
58
59
|
})
|
|
59
60
|
// Initialization of data handlers
|
|
60
61
|
Alpine.data('mainNavigationHandler', mainNavigationHandler)
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import copytext from './copytext.hbs'
|
|
2
2
|
|
|
3
3
|
import copytext_webform_json from './fixtures/copytext_webform.json'
|
|
4
|
+
import copytext_webform_simple_json from './fixtures/copytext_webform_simple.json'
|
|
4
5
|
|
|
5
6
|
const Template = ({ ...args }) => {
|
|
6
7
|
return copytext({ ...args })
|
|
@@ -40,4 +41,54 @@ export const WithWebform = {
|
|
|
40
41
|
name: 'Formular',
|
|
41
42
|
args: copytext_webform_json,
|
|
42
43
|
}
|
|
43
|
-
|
|
44
|
+
export const WithWebformStatusOk = {
|
|
45
|
+
render: Template.bind({}),
|
|
46
|
+
name: 'Formular Status OK',
|
|
47
|
+
args: copytext_webform_simple_json,
|
|
48
|
+
parameters: {
|
|
49
|
+
mockData: [
|
|
50
|
+
{
|
|
51
|
+
url: 'https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de',
|
|
52
|
+
method: 'POST',
|
|
53
|
+
status: 200,
|
|
54
|
+
response: {
|
|
55
|
+
"status":"OK"
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
export const WithWebformStatusNone = {
|
|
62
|
+
render: Template.bind({}),
|
|
63
|
+
name: 'Formular Status None',
|
|
64
|
+
args: copytext_webform_simple_json,
|
|
65
|
+
parameters: {
|
|
66
|
+
mockData: [
|
|
67
|
+
{
|
|
68
|
+
url: 'https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de',
|
|
69
|
+
method: 'POST',
|
|
70
|
+
status: 200,
|
|
71
|
+
response: {
|
|
72
|
+
"status":""
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export const WithWebformStatusValidationError = {
|
|
79
|
+
render: Template.bind({}),
|
|
80
|
+
name: 'Formular Status Validation Error',
|
|
81
|
+
args: copytext_webform_simple_json,
|
|
82
|
+
parameters: {
|
|
83
|
+
mockData: [
|
|
84
|
+
{
|
|
85
|
+
url: 'https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de',
|
|
86
|
+
method: 'POST',
|
|
87
|
+
status: 200,
|
|
88
|
+
response: {
|
|
89
|
+
"status":"VALIDATION_ERROR", "errors":{"vorname":"form_error_required"}
|
|
90
|
+
},
|
|
91
|
+
},
|
|
92
|
+
]
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"copytextParagraph":[{"isHeadline":true,"text":"Copytext mit Formular"},{"paragraphBoxItem":{"isWebForm":true,"hasNewWebForm":true,"title":"Kontaktformular","jsonUrl":"https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de","
|
|
1
|
+
{"copytextParagraph":[{"isHeadline":true,"text":"Copytext mit Formular"},{"paragraphBoxItem":{"isWebForm":true,"hasNewWebForm":true,"title":"Kontaktformular","jsonUrl":"https://ugc-hessenschau.dev-ext.hrcms.gcp.cloud.hr.de","successText":{"richtext":"Liebe Nutzerin, lieber Nutzer,<br><br>ich werde mich so schnell wie möglich um Ihr Anliegen kümmern. Hier geht's zur <a class='' href='https://www.hessenschau.de/index.html'>hessenschau.de-Startseite</a> mit aktuellen Nachrichten aus Hessen.<br><br>Viele Grüße, <br><br>Karsten Hufer"},"errorMessages":""form_error_required":"Server: Pflichtfeld","form_error_max":"Server: Zu viele Zeichen","form_error_validurl":"Server: Ungültige URL","form_error_empty":"Server: Darf nicht ausgefüllt werden","form_error_constants_or_null":"Server: Ungültiger Wert","form_error_constants":"Server: Ungültiger Wert","form_error_max_multivalue":"Server: Die maximale Anzahl an Antwortmöglichkeiten wurde überschritten","vote_error_identity_already_used":"Server: Unter dieser E-Mail-Adresse wurde bereits abgestimmt. Eine weitere Abstimmung ist nicht möglich.","vote_error_token_request_count_exceeded":"Server: Die maximale Anzahl an Bestätigungs-E-Mails wurde bereits verschickt.","form_error_email":"Server: Ungültige E-Mail-Adresse"","isMultipart":"isMultipart","trackingInformations":"trackingInformations","fields":[{"type":{"isText":true,"asString":"text"},"name":"vorname","label":"Vorname","description":"Das ist der Beschreibungstext (*Pflichtfeld)","defaultValue":"","isHidden":false,"isRequired":true,"maxLength":"140"},{"type":{"isText":true,"asString":"text"},"name":"nachname","label":"Nachname","description":"","defaultValue":"","isHidden":false,"isRequired":true,"maxLength":"140"},{"type":{"isUpload":true,"asString":"upload"},"name":"Datei Hochladen","label":"Wählen Sie eine Datei zum Hochladen","description":"Maximale Dateigröße: 35 MB.","isRequired":true},{"type":{"isSelect":true,"asString":"select"},"name":"Select Name","label":"Wen möchten Sie erreichen?","description":"Das ist der Beschreibungstext von Select","defaultValue":"","isHidden":false,"isRequired":true,"options":[{"id":"option1","value":"option1","selected":false,"label":"Option 1"},{"id":"option2","value":"option2","selected":false,"label":"Option 2"},{"id":"option3","value":"option3","selected":false,"label":"Option 3"},{"id":"option4","value":"option4","selected":false,"label":"Option 4"}]},{"isGrouped":true,"type":{"isChoice":true,"asString":"checkbox"},"name":"interessen","label":"Wählen Sie Ihre Interessen","isMeta":false,"description":"Bitte kreuzen Sie alle Interessen an, die auf Sie zutreffen. Ihre Auswahl hilft uns, Ihnen relevante Inhalte anzubieten.","isRequired":false,"options":[{"value":"sport","label":"sport","title":"sport","isSelected":false},{"value":"musik","label":"musik","title":"musik","isSelected":false},{"value":"lesen","label":"lesen","title":"lesen","isSelected":false},{"value":"reisen","label":"reisen","title":"reisen","isSelected":false},{"value":"kochen","label":"kochen","title":"kochen","isSelected":false},{"value":"filme","label":"filme","title":"filme","isSelected":false},{"value":"tanzen","label":"tanzen","title":"tanzen","isSelected":false},{"value":"fotografie","label":"fotografie","title":"fotografie","isSelected":false}]},{"isGrouped":true,"type":{"isChoice":true,"isRadioChoice":true,"asString":"radio"},"name":"lieblingsfarbe","label":"Wählen Sie Ihre Lieblingsfarbe","isMeta":false,"description":"Bitte wählen Sie eine der folgenden Farben aus.","isRequired":true,"options":[{"value":"rot","label":"rot","title":"rot","isSelected":false},{"value":"blau","label":"blau","title":"blau","isSelected":false},{"value":"grün","label":"grün","title":"grün","isSelected":false}]},{"isGrouped":true,"type":{"isChoice":true,"isRadioChoice":true,"asString":"radio"},"name":"lieblingsfarbe","label":"Wählen Sie Ihre Lieblingsfarbe","isMeta":false,"description":"Bitte wählen Sie eine der folgenden Farben aus.","isRequired":false,"options":[{"value":"rot","label":"rot","title":"rot","isSelected":false},{"value":"blau","label":"blau","title":"blau","isSelected":false},{"value":"grün","label":"grün","title":"grün","isSelected":false}]},{"isGrouped":false,"type":{"isChoice":true,"asString":"checkbox"},"name":"checkbox","label":"Ich bin damit einverstanden.","isMeta":false,"description":"Das ist der Beschreibungstext von Checkbox","isRequired":false},{"isGrouped":false,"type":{"isChoice":true,"asString":"checkbox"},"name":"checkbox","label":"Ich bin damit einverstanden, dass der hr die von mir im vorstehenden Formular angegebenen personenbezogenen Daten für den Zweck der Kontaktaufnahme mit Upload verarbeitet. Eine Weitergabe an Dritte findet nicht statt, es sei denn, es wird ausdrücklich darauf hingewiesen. Unsere Datenschutzerklärung mit sämtlichen Informationen gemäß Art 13 DSGVO zur Datenverarbeitung durch den hr und zu Ihren Rechten können Sie unter Datenschutzerklärung einsehen. Den Datenschutzbeauftragten des hr erreichen Sie unter datenschutz@hr.de.","isMeta":false,"description":"Das ist der Beschreibungstext von Checkbox","isRequired":true}]}}]}
|