comand-component-library 4.0.9 → 4.0.11

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.
@@ -1,5 +1,6 @@
1
1
  <template>
2
2
  <div class="cmd-pages-basic-form">
3
+ <!-- being CmdForm -->
3
4
  <CmdForm :action="formAction"
4
5
  @submit="onSubmit"
5
6
  novalidate="novalidate"
@@ -12,9 +13,9 @@
12
13
  element="input"
13
14
  type="radio"
14
15
  :labelText="getMessage('basic_form.labeltext.salutation_male')"
15
- name="salutation"
16
- inputValue="M"
17
- :replace-input-type="true"
16
+ :name="configuration.salutation?.name || salutation"
17
+ inputValue="m"
18
+ :replaceInputType="configuration.salutation?.replaceInputType"
18
19
  v-model="formData.salutation"
19
20
  @validate="onValidate"
20
21
  />
@@ -25,52 +26,65 @@
25
26
  element="input"
26
27
  type="radio"
27
28
  :labelText="getMessage('basic_form.labeltext.salutation_female')"
28
- name="salutation"
29
- :replace-input-type="true"
29
+ :name="configuration.salutation?.name || salutation"
30
+ inputValue="f"
31
+ :replaceInputType="configuration.salutation?.replaceInputType"
30
32
  v-model="formData.salutation"
31
33
  @validate="onValidate"
32
34
  />
33
35
  <!-- end cmd-form-element -->
34
36
  </div>
37
+
38
+ <!-- begin slot (top) -->
39
+ <slot name="top"></slot>
40
+ <!-- end slot (top) -->
41
+
35
42
  <div class="flex-container">
36
43
  <!-- begin cmd-form-element -->
37
44
  <CmdFormElement
45
+ v-if="configuration.lastName"
38
46
  element="input"
39
- type="text"
47
+ :type="configuration.lastName?.type || 'text'"
40
48
  iconClass="icon-user-profile"
41
49
  :labelText="getMessage('basic_form.labeltext.last_name')"
42
- :tooltipText="formData.last_name.error ? formData.last_name.errorMessage : 'Type your surname!'"
43
- required="required"
50
+ :tooltipText="formData.lastName.error ? formData.lastName.errorMessage : 'Type your surname!'"
51
+ :required="configuration.lastName?.required"
52
+ :name="configuration.lastName?.name || 'last-name'"
44
53
  :placeholder="getMessage('basic_form.placeholder.last_name')"
45
- v-model="formData.last_name.value"
46
- :status="formData.last_name.error ? 'error' : ''"
54
+ v-model="formData.lastName.value"
55
+ :status="formData.lastName.error ? 'error' : ''"
47
56
  @validate="onValidate"
48
57
  />
49
58
  <!-- end cmd-form-element -->
50
59
 
51
60
  <!-- begin cmd-form-element -->
52
61
  <CmdFormElement
62
+ v-if="configuration.firstName"
53
63
  element="input"
54
- type="text"
64
+ :type="configuration.firstName?.type || 'text'"
55
65
  iconClass="icon-user-profile"
56
66
  :labelText="getMessage('basic_form.labeltext.first_name')"
57
- :tooltipText="formData.first_name.error ? formData.first_name.errorMessage : 'Type your first name!'"
67
+ :tooltipText="formData.firstName.error ? formData.firstName.errorMessage : 'Type your first name!'"
58
68
  :placeholder="getMessage('basic_form.placeholder.first_name')"
59
- v-model="formData.first_name.value"
60
- :status="formData.first_name.error ? 'error' : ''"
69
+ :required="configuration.firstName?.required"
70
+ :name="configuration.firstName?.name || 'first-name'"
71
+ v-model="formData.firstName.value"
72
+ :status="formData.firstName.error ? 'error' : ''"
61
73
  @validate="onValidate"
62
74
  />
63
75
  <!-- end cmd-form-element -->
64
76
  </div>
65
- <div class="flex-container">
77
+ <div v-if="configuration.email || configuration.phone" class="flex-container">
66
78
  <!-- begin cmd-form-element -->
67
79
  <CmdFormElement
80
+ v-if="configuration.email"
68
81
  element="input"
69
- type="email"
82
+ :type="configuration.email?.type || 'email'"
70
83
  iconClass="icon-mail"
71
84
  :labelText="getMessage('basic_form.labeltext.email')"
72
85
  :placeholder="getMessage('basic_form.placeholder.email')"
73
- required="required"
86
+ :required="configuration.email?.required"
87
+ :name="configuration.email?.name || 'email'"
74
88
  v-model="formData.email.value"
75
89
  :status="formData.email.error ? 'error' : ''"
76
90
  :tooltipText="formData.email.error ? formData.email.errorMessage : 'Type your email!'"
@@ -80,12 +94,15 @@
80
94
 
81
95
  <!-- begin cmd-form-element -->
82
96
  <CmdFormElement
97
+ v-if="configuration.phone"
83
98
  element="input"
84
- type="phone"
99
+ :type="configuration.phone?.type || 'tel'"
85
100
  iconClass="icon-phone"
86
101
  :labelText="getMessage('basic_form.labeltext.phone')"
87
102
  :placeholder="getMessage('basic_form.placeholder.phone')"
88
103
  v-model="formData.phone.value"
104
+ :required="configuration.phone?.required"
105
+ :name="configuration.phone?.name || 'phone'"
89
106
  :status="formData.phone.error ? 'error' : ''"
90
107
  :tooltipText="formData.phone.error ? formData.phone.errorMessage : 'Type your phone number!'"
91
108
  @validate="onValidate"
@@ -97,13 +114,14 @@
97
114
  <!-- begin cmd-form-element -->
98
115
  <CmdFormElement
99
116
  element="input"
100
- type="text"
117
+ :type="configuration.streetNo?.type || 'text'"
101
118
  :labelText="getMessage('basic_form.labeltext.street_no')"
102
119
  :placeholder="getMessage('basic_form.placeholder.street_no')"
103
- required="required"
104
- v-model="formData.street_no.value"
105
- :status="formData.street_no.error ? 'error' : ''"
106
- :tooltipText="formData.street_no.error ? formData.street_no.errorMessage : 'Type your street and number!'"
120
+ :required="configuration.streetNo?.required"
121
+ :name="configuration.streetNo?.name || 'street-no'"
122
+ v-model="formData.streetNo.value"
123
+ :status="formData.streetNo.error ? 'error' : ''"
124
+ :tooltipText="formData.streetNo.error ? formData.streetNo.errorMessage : 'Type your street and number!'"
107
125
  @validate="onValidate"
108
126
  />
109
127
  <!-- end cmd-form-element -->
@@ -112,9 +130,11 @@
112
130
  <!-- begin cmd-form-element -->
113
131
  <CmdFormElement
114
132
  element="input"
115
- type="number"
133
+ :type="configuration.zip?.type || 'number'"
116
134
  :labelText="getMessage('basic_form.labeltext.zip')"
117
135
  :placeholder="getMessage('basic_form.placeholder.zip')"
136
+ :required="configuration.zip?.required"
137
+ :name="configuration.zip?.name || 'zip'"
118
138
  v-model="formData.zip.value"
119
139
  :status="formData.zip.error ? 'error' : ''"
120
140
  :tooltipText="formData.zip.error ? formData.zip.errorMessage : 'Type your zip/postal code!'"
@@ -124,9 +144,11 @@
124
144
  <!-- begin cmd-form-element -->
125
145
  <CmdFormElement
126
146
  element="input"
127
- type="text"
147
+ :type="configuration.city?.type || 'text'"
128
148
  :labelText="getMessage('basic_form.labeltext.city')"
129
149
  :placeholder="getMessage('basic_form.placeholder.city')"
150
+ :required="configuration.city?.required"
151
+ :name="configuration.city?.name || 'zip'"
130
152
  v-model="formData.city.value"
131
153
  :status="formData.city.error ? 'error' : ''"
132
154
  :tooltipText="formData.city.error ? formData.city.errorMessage : 'Type your city!'"
@@ -138,25 +160,45 @@
138
160
  <!-- begin cmd-form-element -->
139
161
  <CmdFormElement
140
162
  element="input"
141
- type="text"
163
+ :type="configuration.additionalAddressInfo?.type || 'text'"
142
164
  :labelText="getMessage('basic_form.labeltext.additional_address_info')"
143
165
  :placeholder="getMessage('basic_form.placeholder.additional_address_info')"
144
- required="required"
145
- v-model="formData.additional_address_info.value"
146
- :status="formData.additional_address_info.error ? 'error' : ''"
147
- :tooltipText="formData.additional_address_info.error ? formData.additional_address_info.errorMessage : 'Type additional address information!'"
166
+ :required="configuration.additionalAddressInfo?.required"
167
+ :name="configuration.additionalAddressInfo?.name || 'additional-address-info'"
168
+ v-model="formData.additionalAddressInfo.value"
169
+ :status="formData.additionalAddressInfo.error ? 'error' : ''"
170
+ :tooltipText="formData.additionalAddressInfo.error ? formData.additionalAddressInfo.errorMessage : 'Type additional address information!'"
148
171
  @validate="onValidate"
149
172
  />
150
173
  <!-- end cmd-form-element -->
151
174
  </div>
152
175
 
176
+ <!-- begin cmd-form-element -->
177
+ <CmdFormElement
178
+ :type="configuration.additionalText?.type || 'textarea'"
179
+ :labelText="getMessage('basic_form.labeltext.additional_text')"
180
+ :placeholder="getMessage('basic_form.placeholder.additional_text')"
181
+ :required="configuration.additionalText?.required"
182
+ :name="configuration.additionalText?.name || 'additional-text'"
183
+ v-model="formData.additionalText.value"
184
+ :status="formData.additionalText.error ? 'error' : ''"
185
+ @validate="onValidate"
186
+ />
187
+ <!-- end cmd-form-element -->
188
+
189
+ <!-- begin slot (bottom) -->
190
+ <slot name="bottom"></slot>
191
+ <!-- end slot (bottom) -->
192
+
153
193
  <!-- begin cmd-form-element -->
154
194
  <CmdFormElement
155
195
  element="input"
156
196
  type="checkbox"
157
- :required="true"
158
- v-model="formData.privacy.value"
159
- :status="formData.privacy.error ? 'error' : ''"
197
+ :required="configuration.acceptPrivacy?.required"
198
+ :name="configuration.acceptPrivacy?.name || 'accept-privacy'"
199
+ :replaceInputType="configuration.acceptPrivacy?.replaceInputType"
200
+ v-model="formData.acceptPrivacy.value"
201
+ :status="formData.acceptPrivacy.error ? 'error' : ''"
160
202
  @validate="onValidate">
161
203
  <template v-slot:labeltext>
162
204
  <span ref="dataPrivacy" v-html="getMessage('basic_form.labeltext.data_privacy')"></span>
@@ -164,12 +206,12 @@
164
206
  </CmdFormElement>
165
207
  <!-- end cmd-form-element -->
166
208
  </CmdForm>
209
+ <!-- end CmdForm -->
167
210
  </div>
168
211
  </template>
169
212
 
170
213
  <script>
171
214
  // import mixins
172
- // import mixins
173
215
  import I18n from "../mixins/I18n"
174
216
  import DefaultMessageProperties from "../mixins/pages/BasicForm/DefaultMessageProperties"
175
217
  import FieldValidation from "../mixins/FieldValidation"
@@ -189,16 +231,17 @@ export default {
189
231
  return {
190
232
  //validator: new ContactFormValidator(name => this.label(name)),
191
233
  formData: {
192
- salutation: 'M',
193
- last_name: {value: ''},
194
- first_name: {value: ''},
234
+ salutation: this.configuration.salutation.default,
235
+ lastName: {value: ''},
236
+ firstName: {value: ''},
195
237
  email: {value: ''},
196
238
  phone: {value: ''},
197
- street_no: {value: ''},
239
+ streetNo: {value: ''},
198
240
  zip: {value: ''},
199
241
  city: {value: ''},
200
- additional_address_info: {value: ''},
201
- privacy: {value: false}
242
+ additionalAddressInfo: {value: ''},
243
+ additionalText: {value: ''},
244
+ acceptPrivacy: {value: false}
202
245
  },
203
246
  nativeButton: {
204
247
  icon: {
@@ -211,8 +254,58 @@ export default {
211
254
  }
212
255
  },
213
256
  props: {
214
- hiddenFormElements: {
215
-
257
+ configuration: {
258
+ type: Object,
259
+ default() {
260
+ return {
261
+ salutation: {
262
+ name: "salutation",
263
+ default: "m",
264
+ replaceInputType: true
265
+ },
266
+ lastName: {
267
+ name: "surname",
268
+ required: true,
269
+ type: "text"
270
+ },
271
+ firstName: {
272
+ required: false,
273
+ type: "text"
274
+ },
275
+ email: {
276
+ required: true,
277
+ type: "email"
278
+ },
279
+ phone: {
280
+ required: false,
281
+ type: "phone"
282
+ },
283
+ streetNo: {
284
+ required: false,
285
+ type: "text"
286
+ },
287
+ zip: {
288
+ required: false,
289
+ type: "number"
290
+ },
291
+ city: {
292
+ required: false,
293
+ type: "text"
294
+ },
295
+ additionalAddressInfo: {
296
+ required: false,
297
+ type: "text"
298
+ },
299
+ additionalText: {
300
+ required: false,
301
+ type: "textarea"
302
+ },
303
+ acceptPrivacy: {
304
+ required: true,
305
+ replaceInputType: true
306
+ }
307
+ }
308
+ }
216
309
  },
217
310
  receiverEmailAddress: {
218
311
  type: String,
@@ -234,18 +327,13 @@ export default {
234
327
  }
235
328
  }
236
329
  },
237
- /*
238
330
  mounted() {
239
- usePiniaStore().$subscribe(() => {
240
- this.$nextTick(() => {
241
- this.$refs.dataPrivacy?.querySelector('.fancybox')?.addEventListener('click', event => {
242
- event.preventDefault()
243
- openFancyBox({url: event.target.getAttribute('href')})
244
- })
245
- })
331
+ this.$refs.dataPrivacy?.querySelector('.fancybox')?.addEventListener('click', event => {
332
+ event.preventDefault()
333
+ openFancyBox({url: event.target.getAttribute('href')})
246
334
  })
247
335
  },
248
- */
336
+
249
337
  methods: {
250
338
  onSubmit(event) {
251
339
  this.onValidate();
@@ -256,20 +344,6 @@ export default {
256
344
  return;
257
345
  }
258
346
 
259
- alert(`
260
- Form submit:
261
- salutation: ${this.formData.salutation}
262
- last_name: ${this.formData.last_name.value}
263
- first_name: ${this.formData.first_name.value}
264
- email: ${this.formData.email.value}
265
- phone: ${this.formData.phone.value}
266
- street_no: ${this.formData.street_no.value}
267
- zip: ${this.formData.zip.value}
268
- city: ${this.formData.city.value}
269
- additional_address_info: ${this.formData.additional_address_info.value}
270
- privacy: ${this.formData.privacy.value}
271
- `);
272
-
273
347
  event.preventDefault();
274
348
  },
275
349
  onValidate() {
@@ -281,54 +355,11 @@ export default {
281
355
  openFancyBox({url: link})
282
356
  }
283
357
  },
284
- // onPersist(data) {
285
- // return {
286
- // editModeContextData: {
287
- // ...(this.editModeContextData || {})
288
- // },
289
- // update(props) {
290
- // props.cmdHeadline = {
291
- // ...(props.cmdHeadline || {}),
292
- // }
293
- // props.cmdHeadline.headlineText = data[0].headlineText
294
- // }
295
- // }
296
- // },
297
- // onDelete() {
298
- // console.log("ContactForm.onDelete()")
299
- // return {
300
- // editModeContextData: {
301
- // ...(this.editModeContextData || {})
302
- // }
303
- // }
304
- // }
305
- // openDataPrivacy(url) {
306
- // openFancyBox({url})
307
- // }
358
+ openDataPrivacy(url) {
359
+ openFancyBox({url})
360
+ }
308
361
  }
309
362
  }
310
-
311
- // @Watch('$store.state.currentLanguage')
312
- // private languageChanged(): void {
313
- // this.formData = Object.assign({}, {
314
- // salutation: 'M',
315
- // surname: {value: ''},
316
- // email: {value: ''},
317
- // message: {value: ''},
318
- // privacy: {value: false}
319
- // } as ContactFormData);
320
- // this.labelsChanged()
321
- // }
322
- //
323
- // @Watch('$store.state.labels')
324
- // private labelsChanged(): void {
325
- // this.$nextTick(() => {
326
- // this.$el.querySelectorAll('.fancybox').forEach(link => link.addEventListener('click', e => {
327
- // e.preventDefault()
328
- // this.openDataPrivacy(link.getAttribute('href'))
329
- // }))
330
- // })
331
- // }
332
363
  </script>
333
364
 
334
365
  <style>
@@ -0,0 +1,59 @@
1
+ <template>
2
+ <!-- begin CmdBasicForm -->
3
+ <BasicForm v-if="contactFormOnly" v-bind="basicForm" />
4
+ <!-- end CmdBasicForm -->
5
+
6
+ <div v-else class="flex-container">
7
+ <!-- begin CmdBasicForm -->
8
+ <BasicForm v-bind="basicForm" />
9
+ <!-- end CmdBasicForm -->
10
+
11
+ <!-- begin additional-columns -->
12
+ <div class="flex-container vertical">
13
+ <!-- begin CmdAddressData -->
14
+ <CmdAddressData v-if="cmdAddressData" v-bind="cmdAddressData" />
15
+ <!-- end CmdAddressData -->
16
+
17
+ <!-- begin CmdGoogleMaps -->
18
+ <CmdGoogleMaps v-if="cmdGoogleMaps" v-bind="cmdGoogleMaps" />
19
+ <!-- end CmdGoogleMaps -->
20
+
21
+ <!-- begin slot-content -->
22
+ <slot name="additional-info"></slot>
23
+ <!-- end slot-content -->
24
+ </div>
25
+ <!-- end additional-columns -->
26
+ </div>
27
+ </template>
28
+
29
+ <script>
30
+ export default {
31
+ name: "ContactInformation",
32
+ props: {
33
+ basicForm: {
34
+ type: Object,
35
+ default: null
36
+ },
37
+ cmdAddressData: {
38
+ type: Object,
39
+ default: null
40
+ },
41
+ cmdGoogleMaps: {
42
+ type: Object,
43
+ default: null
44
+ }
45
+ },
46
+ computed: {
47
+ contactFormOnly() {
48
+ return !(this.cmdAddressData || this.cmdGoogleMaps || !this.isSlotEmpty)
49
+ },
50
+ isSlotEmpty() {
51
+ return !this.$scopedSlots['custom-info']
52
+ }
53
+ }
54
+ }
55
+ </script>
56
+
57
+ <style>
58
+
59
+ </style>
@@ -0,0 +1,48 @@
1
+ <template>
2
+ <div class="cmd-page-multiple-box-wrapper flex-container vertical">
3
+ <template v-for="(segment, index) in segments" :key="index">
4
+ <!-- begin CmdBoxWrapper -->
5
+ <CmdBoxWrapper
6
+ :boxesPerRow="segment.boxesPerRow"
7
+ :useRowViewAsDefault="segment.useRowViewAsDefault"
8
+ :useGap="segment.useGap"
9
+ :cmdHeadline="segment.cmdHeadline"
10
+ >
11
+ <template v-slot="slotProps">
12
+ <!-- begin CmdBox -->
13
+ <CmdBox
14
+ :use-slots="['box-body']"
15
+ v-for="(box, index) in segment.boxes"
16
+ :key="index"
17
+ v-bind="box"
18
+ :rowView="slotProps.rowView"
19
+ >
20
+ box {{box}}
21
+ </CmdBox>
22
+ <!-- end CmdBox -->
23
+ </template>
24
+ </CmdBoxWrapper>
25
+ <!-- end CmdBoxWrapper -->
26
+
27
+ <!-- begin slot-content -->
28
+ <slot name="multiple-box-wrapper-slot-${index}"></slot>
29
+ <!-- end slot-content -->
30
+ </template>
31
+ </div>
32
+ </template>
33
+
34
+ <script>
35
+ export default {
36
+ name: "MultipleBoxWrapper",
37
+ props: {
38
+ segments: {
39
+ type: Array,
40
+ default: null
41
+ }
42
+ }
43
+ }
44
+ </script>
45
+
46
+ <style>
47
+
48
+ </style>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div class="cmd-page-segmented-lists-of-links flex-container vertical">
2
+ <div class="cmd-page-multiple-lists-of-links flex-container vertical">
3
3
  <template v-for="(segment, index) in segments" :key="index">
4
4
  <!-- begin CmdListOfLinks -->
5
5
  <CmdListOfLinks
@@ -11,7 +11,7 @@
11
11
  <!-- end CmdListOfLinks -->
12
12
 
13
13
  <!-- begin slot-content -->
14
- <slot name="segmented-lists-of-links-slot-${index}"></slot>
14
+ <slot name="multiple-lists-of-links-slot-${index}"></slot>
15
15
  <!-- end slot-content -->
16
16
  </template>
17
17
  </div>
@@ -19,7 +19,7 @@
19
19
 
20
20
  <script>
21
21
  export default {
22
- name: "SegmentedListsOfLinks",
22
+ name: "MultipleListsOfLinks",
23
23
  props: {
24
24
  segments: {
25
25
  type: Array,
@@ -8,36 +8,63 @@
8
8
  </CmdWidthLimitationWrapper>
9
9
  <!-- end basic-form ------------------------------------------------------------------------------------------------------------------------------------------------------->
10
10
 
11
- <!-- begin segmented-lists-of-links ------------------------------------------------------------------------------------------------------------------------------------------------------->
11
+ <!-- begin basic-form ------------------------------------------------------------------------------------------------------------------------------------------------------->
12
+ <CmdWidthLimitationWrapper>
13
+ <h2 class="headline-demopage" id="section-contact-information">
14
+ <span>Contact Information</span>
15
+ </h2>
16
+ <ContactInformation
17
+ :cmdBasicForm="{}"
18
+ :cmdAddressData="{}"
19
+ :cmdGoogleMaps="{}">
20
+ <template v-slot:additional-info>
21
+ Additional information given by slot
22
+ </template>
23
+ </ContactInformation>
24
+ </CmdWidthLimitationWrapper>
25
+ <!-- end basic-form ------------------------------------------------------------------------------------------------------------------------------------------------------->
26
+
27
+ <!-- begin multiple-lists-of-links ------------------------------------------------------------------------------------------------------------------------------------------------------->
12
28
  <CmdWidthLimitationWrapper>
13
- <h2 class="headline-demopage" id="section-segmented-lists-of-links-downloads">
14
- <span>Segmented Lists of links</span>
29
+ <h2 class="headline-demopage" id="section-multiple-lists-of-links-downloads">
30
+ <span>Multiple Lists of links</span>
15
31
  </h2>
16
32
  <h3>Downloads</h3>
17
- <SegmentedListsOfLinks :segments="listOfDownloadsData" />
33
+ <MultipleListsOfLinks :segments="listOfDownloadsData" />
18
34
  <hr />
19
35
  <h3>SiteMap</h3>
20
- <SegmentedListsOfLinks :segments="listOfSiteLinksData" />
36
+ <MultipleListsOfLinks :segments="listOfSiteLinksData" />
21
37
  </CmdWidthLimitationWrapper>
22
- <!-- end segmented-lists-of-links ------------------------------------------------------------------------------------------------------------------------------------------------------->
38
+ <!-- end multiple-lists-of-links ------------------------------------------------------------------------------------------------------------------------------------------------------->
39
+
40
+ <!-- begin multiple-box-wrapper ------------------------------------------------------------------------------------------------------------------------------------------------------->
41
+ <CmdWidthLimitationWrapper>
42
+ <h2 class="headline-demopage" id="section-multiple-box-wrapper">
43
+ <span>Multiple Box Wrapper</span>
44
+ </h2>
45
+ <h3>FAQs</h3>
46
+ <MultipleBoxWrapper :segments="faqsData" />
47
+ <hr />
48
+ <h3>Team Overview</h3>
49
+ <MultipleBoxWrapper :segments="boxesTeamOverviewData" />
50
+ </CmdWidthLimitationWrapper>
51
+ <!-- end multiple-box-wrapper ------------------------------------------------------------------------------------------------------------------------------------------------------->
23
52
  </template>
24
53
 
25
54
  <script>
26
- // import page-templates
27
- import BasicForm from "@/pages/BasicForm.vue"
28
- import SegmentedListsOfLinks from "@/pages/SegmentedListsOfLinks.vue"
29
-
30
55
  // import example data
56
+ import addressData from "@/assets/data/address-data.json"
57
+ import faqsData from "@/assets/data/pages/boxes-faqs.json"
58
+ import boxesTeamOverviewData from "@/assets/data/pages/boxes-team-overview.json"
31
59
  import listOfDownloadsData from "@/assets/data/pages/list-of-downloads.json"
32
60
  import listOfSiteLinksData from "@/assets/data/pages/list-of-site-links.json"
33
61
  export default {
34
62
  name: "PageOverview",
35
- components: {
36
- BasicForm,
37
- SegmentedListsOfLinks
38
- },
39
63
  data() {
40
64
  return {
65
+ addressData,
66
+ faqsData,
67
+ boxesTeamOverviewData,
41
68
  listOfDownloadsData,
42
69
  listOfSiteLinksData,
43
70
  basicForm: {