comand-component-library 3.1.45 → 3.1.46

Sign up to get free protection for your applications and to get access to all the features.
Files changed (233) hide show
  1. package/dist/comand-component-library.css +1 -1
  2. package/dist/comand-component-library.umd.min.js +1 -1
  3. package/package.json +47 -41
  4. package/src/App.vue +373 -135
  5. package/src/ComponentDocumentation.vue +156 -0
  6. package/src/ComponentLibraryHelp.vue +20 -0
  7. package/src/assets/data/accordion.json +21 -24
  8. package/src/assets/data/address-data.json +34 -0
  9. package/src/assets/data/bank-account-data.json +22 -0
  10. package/src/assets/data/box-product.json +14 -4
  11. package/src/assets/data/box-user.json +48 -22
  12. package/src/assets/data/breadcrumbs.json +11 -3
  13. package/src/assets/data/cookie-disclaimer.json +4 -4
  14. package/src/assets/data/fake-select-colors.json +4 -0
  15. package/src/assets/data/fake-select-filter-options.json +14 -0
  16. package/src/assets/data/fake-select-options-with-icons.json +6 -12
  17. package/src/assets/data/fake-select-options.json +3 -3
  18. package/src/assets/data/list-of-links-section-anchors.json +23 -0
  19. package/src/assets/data/list-of-links-top-header-navigation.json +20 -0
  20. package/src/assets/data/list-of-links.json +42 -0
  21. package/src/assets/data/main-navigation.json +48 -0
  22. package/src/assets/data/multistep-form-progress-bar.json +33 -0
  23. package/src/assets/data/select-options.json +4 -0
  24. package/src/assets/data/{share-buttons.json → share-buttons-page-by-json.json} +8 -8
  25. package/src/assets/data/share-buttons-page-by-property.json +30 -0
  26. package/src/assets/data/switch-language.json +20 -0
  27. package/src/assets/data/table-large.json +1 -1
  28. package/src/assets/data/table-small.json +1 -1
  29. package/src/assets/styles/global-styles.scss +43 -13
  30. package/src/assets/styles/transitions.scss +21 -1
  31. package/src/components/CmdAccordion.vue +43 -42
  32. package/src/components/CmdAddressData.vue +124 -56
  33. package/src/components/CmdBackToTopButton.vue +3 -3
  34. package/src/components/CmdBankAccountData.vue +104 -0
  35. package/src/components/CmdBox.vue +253 -56
  36. package/src/components/CmdBoxSiteSearch.vue +138 -39
  37. package/src/components/CmdBoxWrapper.vue +206 -0
  38. package/src/components/CmdBreadcrumbs.vue +29 -13
  39. package/src/components/CmdCompanyLogo.vue +6 -4
  40. package/src/components/CmdCookieDisclaimer.vue +99 -75
  41. package/src/components/CmdCopyrightInformation.vue +1 -1
  42. package/src/components/CmdCustomHeadline.vue +93 -0
  43. package/src/components/CmdFakeSelect.vue +285 -60
  44. package/src/components/CmdFancyBox.vue +47 -33
  45. package/src/components/CmdForm.vue +107 -0
  46. package/src/components/CmdFormElement.vue +515 -81
  47. package/src/components/CmdFormFilters.vue +25 -11
  48. package/src/components/CmdGoogleMaps.vue +9 -3
  49. package/src/components/CmdImageGallery.vue +28 -5
  50. package/src/components/CmdImageZoom.vue +9 -1
  51. package/src/components/CmdListOfLinks.vue +169 -0
  52. package/src/components/CmdLoginForm.vue +143 -63
  53. package/src/components/CmdMainNavigation.vue +140 -42
  54. package/src/components/CmdMultipleSwitch.vue +33 -2
  55. package/src/components/CmdMultistepFormProgressBar.vue +60 -10
  56. package/src/components/CmdOpeningHours.vue +36 -10
  57. package/src/components/CmdPager.vue +7 -5
  58. package/src/components/CmdProgressBar.vue +20 -3
  59. package/src/components/CmdShareButtons.vue +64 -9
  60. package/src/components/CmdSiteHeader.vue +25 -12
  61. package/src/components/CmdSlideButton.vue +5 -2
  62. package/src/components/CmdSlideshow.vue +23 -7
  63. package/src/components/CmdSwitchButton.vue +10 -3
  64. package/src/components/CmdSwitchLanguage.vue +18 -10
  65. package/src/components/CmdSystemMessage.vue +30 -17
  66. package/src/components/CmdTable.vue +15 -7
  67. package/src/components/CmdTabs.vue +43 -3
  68. package/src/components/CmdThumbnailScroller.vue +22 -6
  69. package/src/components/CmdTooltip.vue +184 -11
  70. package/src/components/CmdUploadForm.vue +198 -92
  71. package/src/components/CmdWidthLimitationWrapper.vue +9 -6
  72. package/src/composables/event.js +8 -0
  73. package/src/composables/scrollspy.js +52 -0
  74. package/src/directives/focus.js +19 -0
  75. package/src/directives/telephone.js +1 -1
  76. package/src/documentation/commonProps.js +6 -0
  77. package/src/documentation/components/ComponentCode.vue +50 -0
  78. package/src/documentation/components/ComponentProperties.vue +237 -0
  79. package/src/documentation/components/ExampleSectionWrapper.vue +46 -0
  80. package/src/documentation/components/ViewCodeData.vue +113 -0
  81. package/src/documentation/data/CmdAccordionHelp.js +22 -0
  82. package/src/documentation/data/CmdAddressDataHelp.js +17 -0
  83. package/src/documentation/data/CmdBackToTopButtonHelp.js +3 -0
  84. package/src/documentation/data/CmdBankAccountDataHelp.js +8 -0
  85. package/src/documentation/data/CmdBoxHelp.js +45 -0
  86. package/src/documentation/data/CmdBoxSiteSearchHelp.js +11 -0
  87. package/src/documentation/data/CmdBreadcrumbsHelp.js +6 -0
  88. package/src/documentation/data/CmdCompanyLogoHelp.js +8 -0
  89. package/src/documentation/data/CmdCookieDisclaimerHelp.js +9 -0
  90. package/src/documentation/data/CmdCopyrightInformation.js +2 -0
  91. package/src/documentation/data/CmdCustomHeadlineHelp.js +8 -0
  92. package/src/documentation/data/CmdFakeSelectHelp.js +60 -0
  93. package/src/documentation/data/CmdFancyBoxHelp.js +7 -0
  94. package/src/documentation/data/CmdFooterNavigationHelp.js +5 -0
  95. package/src/documentation/data/CmdFormElementHelp.js +189 -0
  96. package/src/documentation/data/CmdFormFiltersHelp.js +6 -0
  97. package/src/documentation/data/CmdFormHelp.js +10 -0
  98. package/src/documentation/data/CmdGoogleMapsHelp.js +5 -0
  99. package/src/documentation/data/CmdImageGalleryHelp.js +5 -0
  100. package/src/documentation/data/CmdImageZoomHelp.js +6 -0
  101. package/src/documentation/data/CmdListOfLinksHelp.js +24 -0
  102. package/src/documentation/data/CmdLoginFormHelp.js +6 -0
  103. package/src/documentation/data/CmdMainNavigationHelp.js +7 -0
  104. package/src/documentation/data/CmdMultistepFormProgressBarHelp.js +6 -0
  105. package/src/documentation/data/CmdOpeningHoursHelp.js +10 -0
  106. package/src/documentation/data/CmdPagerHelp.js +7 -0
  107. package/src/documentation/data/CmdProgressBarHelp.js +13 -0
  108. package/src/documentation/data/CmdShareButtonsHelp.js +13 -0
  109. package/src/documentation/data/CmdSiteHeaderHelp.js +21 -0
  110. package/src/documentation/data/CmdSlideButtonHelp.js +10 -0
  111. package/src/documentation/data/CmdSlideshowHelp.js +7 -0
  112. package/src/documentation/data/CmdSwitchLanguageHelp.js +6 -0
  113. package/src/documentation/data/CmdSystemMessageHelp.js +32 -0
  114. package/src/documentation/data/CmdTableHelp.js +14 -0
  115. package/src/documentation/data/CmdTabsHelp.js +10 -0
  116. package/src/documentation/data/CmdThumbnailScrollerHelp.js +5 -0
  117. package/src/documentation/data/CmdTooltipHelp.js +13 -0
  118. package/src/documentation/data/CmdUploadFormHelp.js +17 -0
  119. package/src/documentation/data/CmdWidthLimitationWrapperHelp.js +7 -0
  120. package/src/documentation/data/componentsDescription.json +158 -0
  121. package/src/documentation/generated/CmdAccordionPropertyDescriptions.json +57 -0
  122. package/src/documentation/generated/CmdAddressDataPropertyDescriptions.json +32 -0
  123. package/src/documentation/generated/CmdBackToTopButtonPropertyDescriptions.json +12 -0
  124. package/src/documentation/generated/CmdBankAccountDataPropertyDescriptions.json +34 -0
  125. package/src/documentation/generated/CmdBoxPropertyDescriptions.json +91 -0
  126. package/src/documentation/generated/CmdBoxSiteSearchPropertyDescriptions.json +41 -0
  127. package/src/documentation/generated/CmdBoxWrapperPropertyDescriptions.json +47 -0
  128. package/src/documentation/generated/CmdBreadcrumbsPropertyDescriptions.json +17 -0
  129. package/src/documentation/generated/CmdCompanyLogoPropertyDescriptions.json +27 -0
  130. package/src/documentation/generated/CmdCookieDisclaimerPropertyDescriptions.json +22 -0
  131. package/src/documentation/generated/CmdCustomHeadlinePropertyDescriptions.json +22 -0
  132. package/src/documentation/generated/CmdFakeSelectPropertyDescriptions.json +79 -0
  133. package/src/documentation/generated/CmdFancyBoxPropertyDescriptions.json +62 -0
  134. package/src/documentation/generated/CmdFooterNavigationPropertyDescriptions.json +17 -0
  135. package/src/documentation/generated/CmdFormElementPropertyDescriptions.json +178 -0
  136. package/src/documentation/generated/CmdFormFiltersPropertyDescriptions.json +32 -0
  137. package/src/documentation/generated/CmdFormPropertyDescriptions.json +40 -0
  138. package/src/documentation/generated/CmdGoogleMapsPropertyDescriptions.json +7 -0
  139. package/src/documentation/generated/CmdImageGalleryPropertyDescriptions.json +22 -0
  140. package/src/documentation/generated/CmdImageZoomPropertyDescriptions.json +12 -0
  141. package/src/documentation/generated/CmdListOfLinksPropertyDescriptions.json +60 -0
  142. package/src/documentation/generated/CmdLoginFormPropertyDescriptions.json +90 -0
  143. package/src/documentation/generated/CmdMainNavigationPropertyDescriptions.json +62 -0
  144. package/src/documentation/generated/CmdMultipleSwitchPropertyDescriptions.json +52 -0
  145. package/src/documentation/generated/CmdMultistepFormProgressBarPropertyDescriptions.json +17 -0
  146. package/src/documentation/generated/CmdOpeningHoursPropertyDescriptions.json +42 -0
  147. package/src/documentation/generated/CmdPagerPropertyDescriptions.json +37 -0
  148. package/src/documentation/generated/CmdProgressBarPropertyDescriptions.json +32 -0
  149. package/src/documentation/generated/CmdShareButtonsPropertyDescriptions.json +34 -0
  150. package/src/documentation/generated/CmdSiteHeaderPropertyDescriptions.json +27 -0
  151. package/src/documentation/generated/CmdSlideButtonPropertyDescriptions.json +25 -0
  152. package/src/documentation/generated/CmdSlideshowPropertyDescriptions.json +42 -0
  153. package/src/documentation/generated/CmdSwitchButtonPropertyDescriptions.json +79 -0
  154. package/src/documentation/generated/CmdSwitchLanguagePropertyDescriptions.json +7 -0
  155. package/src/documentation/generated/CmdSystemMessagePropertyDescriptions.json +40 -0
  156. package/src/documentation/generated/CmdTablePropertyDescriptions.json +62 -0
  157. package/src/documentation/generated/CmdTabsPropertyDescriptions.json +27 -0
  158. package/src/documentation/generated/CmdThumbnailScrollerPropertyDescriptions.json +32 -0
  159. package/src/documentation/generated/CmdTooltipPropertyDescriptions.json +17 -0
  160. package/src/documentation/generated/CmdUploadFormPropertyDescriptions.json +90 -0
  161. package/src/documentation/generated/CmdWidthLimitationWrapperPropertyDescriptions.json +41 -0
  162. package/src/documentation/generated/frameworkIcons.json +730 -0
  163. package/src/documentation/generated/logosIcons.json +110 -0
  164. package/src/documentation/tabs.js +46 -0
  165. package/src/documentation/views/ContainerPage.vue +237 -0
  166. package/src/documentation/views/HelpHome.vue +13 -0
  167. package/src/documentation/views/IconFont.vue +80 -0
  168. package/src/documentation/views/components/CmdAccordionHelp.vue +78 -0
  169. package/src/documentation/views/components/CmdAddressDataHelp.vue +65 -0
  170. package/src/documentation/views/components/CmdBackToTopButtonHelp.vue +62 -0
  171. package/src/documentation/views/components/CmdBankAccountDataHelp.vue +88 -0
  172. package/src/documentation/views/components/CmdBoxHelp.vue +137 -0
  173. package/src/documentation/views/components/CmdBoxSiteSearchHelp.vue +60 -0
  174. package/src/documentation/views/components/CmdBoxWrapperHelp.vue +111 -0
  175. package/src/documentation/views/components/CmdBreadcrumbsHelp.vue +51 -0
  176. package/src/documentation/views/components/CmdCompanyLogoHelp.vue +48 -0
  177. package/src/documentation/views/components/CmdCookieDisclaimerHelp.vue +105 -0
  178. package/src/documentation/views/components/CmdCustomHeadlineHelp.vue +53 -0
  179. package/src/documentation/views/components/CmdFakeSelectHelp.vue +175 -0
  180. package/src/documentation/views/components/CmdFancyBoxHelp.vue +79 -0
  181. package/src/documentation/views/components/CmdFormElementHelp.vue +412 -0
  182. package/src/documentation/views/components/CmdFormFiltersHelp.vue +69 -0
  183. package/src/documentation/views/components/CmdFormHelp.vue +41 -0
  184. package/src/documentation/views/components/CmdGoogleMapsHelp.vue +55 -0
  185. package/src/documentation/views/components/CmdImageGalleryHelp.vue +46 -0
  186. package/src/documentation/views/components/CmdImageZoomHelp.vue +34 -0
  187. package/src/documentation/views/components/CmdListOfLinksHelp.vue +64 -0
  188. package/src/documentation/views/components/CmdLoginFormHelp.vue +117 -0
  189. package/src/documentation/views/components/CmdMainNavigationHelp.vue +94 -0
  190. package/src/documentation/views/components/CmdMultistepFormProgressBarHelp.vue +49 -0
  191. package/src/documentation/views/components/CmdOpeningHoursHelp.vue +49 -0
  192. package/src/documentation/views/components/CmdPagerHelp.vue +57 -0
  193. package/src/documentation/views/components/CmdProgressBarHelp.vue +47 -0
  194. package/src/documentation/views/components/CmdShareButtonsHelp.vue +65 -0
  195. package/src/documentation/views/components/CmdSiteHeaderHelp.vue +72 -0
  196. package/src/documentation/views/components/CmdSlideButtonHelp.vue +90 -0
  197. package/src/documentation/views/components/CmdSlideshowHelp.vue +60 -0
  198. package/src/documentation/views/components/CmdSwitchLanguageHelp.vue +64 -0
  199. package/src/documentation/views/components/CmdSystemMessageHelp.vue +86 -0
  200. package/src/documentation/views/components/CmdTableHelp.vue +84 -0
  201. package/src/documentation/views/components/CmdTabsHelp.vue +52 -0
  202. package/src/documentation/views/components/CmdThumbnailScrollerHelp.vue +50 -0
  203. package/src/documentation/views/components/CmdTooltipHelp.vue +59 -0
  204. package/src/documentation/views/components/CmdUploadFormHelp.vue +59 -0
  205. package/src/documentation/views/components/CmdWidthLimitationWrapperHelp.vue +46 -0
  206. package/src/index.js +6 -3
  207. package/src/main.js +25 -15
  208. package/src/mixins/CmdAddressData/DefaultMessageProperties.js +17 -0
  209. package/src/mixins/CmdBox/DefaultMessageProperties.js +10 -0
  210. package/src/mixins/CmdFakeSelect/DefaultMessageProperties.js +9 -0
  211. package/src/mixins/CmdFormElement/DefaultMessageProperties.js +9 -0
  212. package/src/mixins/CmdImageGallery/DefaultMessageProperties.js +9 -0
  213. package/src/mixins/CmdSiteSearch/DefaultMessageProperties.js +14 -0
  214. package/src/mixins/CmdUploadForm/DefaultMessageProperties.js +5 -1
  215. package/src/mixins/FieldValidation.js +220 -0
  216. package/src/mixins/GlobalDefaultMessageProperties.js +15 -0
  217. package/src/mixins/Tooltip.js +26 -0
  218. package/src/router/index.js +67 -0
  219. package/src/utilities.js +3 -6
  220. package/src/utils/common.js +6 -0
  221. package/src/utils/dom.js +8 -0
  222. package/src/utils/globalSequence.js +13 -0
  223. package/src/utils/string.js +8 -0
  224. package/src/assets/data/address.json +0 -13
  225. package/src/assets/data/footer-navigation.json +0 -38
  226. package/src/assets/data/languages.json +0 -31
  227. package/src/assets/data/multisteps.json +0 -27
  228. package/src/assets/data/navigation.json +0 -47
  229. package/src/assets/data/pager.json +0 -11
  230. package/src/assets/data/top-header-navigation.json +0 -27
  231. package/src/components/CmdFooterNavigation.vue +0 -71
  232. package/src/components/CmdMainHeadline.vue +0 -75
  233. package/src/components/CmdTopHeaderNavigation.vue +0 -88
@@ -0,0 +1,175 @@
1
+ <script setup>
2
+ // import functions
3
+ import {ref} from "vue"
4
+ import {tabProps, tabHandlers} from "../../tabs"
5
+ import {isFrameMode} from "../../../utils/common"
6
+
7
+ // import components
8
+ import CmdFakeSelect from "../../../components/CmdFakeSelect"
9
+ import ComponentProperties from "../../components/ComponentProperties"
10
+ import ViewCodeData from "../../components/ViewCodeData"
11
+ import CmdTabs from "../../../components/CmdTabs"
12
+ import ExampleSectionWrapper from "../../components/ExampleSectionWrapper"
13
+
14
+ // import example-data
15
+ import CmdCode from "../../data/CmdFakeSelectHelp"
16
+ import fakeSelectOptions from "../../../assets/data/fake-select-options.json"
17
+ import fakeSelectColors from '../../../assets/data/fake-select-colors.json'
18
+ import fakeSelectCountries from '../../../assets/data/fake-select-countries.json'
19
+ import fakeSelectOptionsWithIcons from '../../../assets/data/fake-select-options-with-icons.json'
20
+ import propertyDescriptions from "../../generated/CmdFakeSelectPropertyDescriptions.json"
21
+
22
+ const propertyStructures = {
23
+ dropdownIcon: {
24
+ "iconClass": "<string>",
25
+ "tooltip": "<string>"
26
+ },
27
+ selectData: [
28
+ {
29
+ "text": "<string>",
30
+ "value": "<number>"
31
+ }
32
+ ]
33
+ }
34
+
35
+ // set consts for v-models
36
+ const fakeSelectDefault = ref("")
37
+ const fakeSelectDefaultWithIcons = ref("2")
38
+ const fakeSelectCheckbox = ref([])
39
+ const formElementStatus = ref("")
40
+ const fakeSelectCountry = ref("")
41
+ const fakeSelectColor = ref("")
42
+ </script>
43
+
44
+ <template>
45
+ <CmdTabs v-show="!isFrameMode()" v-bind="tabProps" :active-tab="tabProps.activeTab" v-on="tabHandlers">
46
+ <template v-slot:tab-content-0>
47
+ <h2>Component</h2>
48
+ <ExampleSectionWrapper componentName="CmdFakeSelect" headlineText="Selectbox 'default'">
49
+ <ViewCodeData :isFirstComponent="true" :code="CmdCode[0]" :data="fakeSelectOptions">
50
+ <teleport to="#frame-component-target" :disabled="!isFrameMode()">
51
+ <CmdFakeSelect
52
+ labelText="Labeltext for default selectbox:"
53
+ :status="formElementStatus"
54
+ :selectData="fakeSelectOptions"
55
+ v-model="fakeSelectDefault"
56
+ required
57
+ defaultOptionName="Select an option:"
58
+ />
59
+ <dl class="vmodel">
60
+ <dt>v-model:</dt>
61
+ <dd>
62
+ <output>{{ fakeSelectDefault }}</output>
63
+ </dd>
64
+ </dl>
65
+ </teleport>
66
+ </ViewCodeData>
67
+ </ExampleSectionWrapper>
68
+ <hr/>
69
+ <ExampleSectionWrapper componentName="CmdFakeSelect" headlineText="Selectbox 'default' (with icons)">
70
+ <ViewCodeData :code="CmdCode[1]">
71
+ <CmdFakeSelect
72
+ labelText="Selectbox with icons:"
73
+ :status="formElementStatus"
74
+ :selectData="fakeSelectOptionsWithIcons"
75
+ v-model="fakeSelectDefaultWithIcons"
76
+ defaultOptionName="Select an option:"
77
+ />
78
+ <dl class="vmodel">
79
+ <dt>v-model:</dt>
80
+ <dd>
81
+ <output>{{ fakeSelectDefaultWithIcons }}</output>
82
+ </dd>
83
+ </dl>
84
+ </ViewCodeData>
85
+ </ExampleSectionWrapper>
86
+ <hr/>
87
+ <ExampleSectionWrapper componentName="CmdFakeSelect" headlineText="Selectbox 'checkboxOptions' (shows checkboxes)">
88
+ <ViewCodeData :code="CmdCode[2]">
89
+ <CmdFakeSelect
90
+ labelText="Selectbox with checkboxes:"
91
+ :status="formElementStatus"
92
+ :selectData="fakeSelectOptions"
93
+ v-model="fakeSelectCheckbox"
94
+ defaultOptionName="Options:"
95
+ :required="true"
96
+ id="selectbox-with-checkboxes"
97
+ type="checkboxOptions"
98
+ :useCustomTooltip="true"
99
+ />
100
+ <p>
101
+ fakeSelectOptions: {{ fakeSelectOptions }}
102
+ </p>
103
+ <dl class="vmodel">
104
+ <dt>v-model:</dt>
105
+ <dd>
106
+ <output>{{ fakeSelectCheckbox }}</output>
107
+ </dd>
108
+ </dl>
109
+ </ViewCodeData>
110
+ </ExampleSectionWrapper>
111
+ <hr/>
112
+ <ExampleSectionWrapper componentName="CmdFakeSelect" headlineText="Selectbox 'content' (content given by slot)">
113
+ <ViewCodeData :code="CmdCode[3]">
114
+ <CmdFakeSelect
115
+ labelText="Selectbox with slot-content:"
116
+ :status="formElementStatus"
117
+ type="content"
118
+ defaultOptionName="HTML-Content:"
119
+ >
120
+ <ul class="custom-fake-select-content">
121
+ <li>
122
+ <div>
123
+ <h3>Headline</h3>
124
+ <p>Some content inside a paragraph</p>
125
+ </div>
126
+ <img src="media/images/thumbnail-scroller/thumbnail/logo-cmd-blue-landscape.jpg" alt="image"/>
127
+ </li>
128
+ </ul>
129
+ </CmdFakeSelect>
130
+ </ViewCodeData>
131
+ </ExampleSectionWrapper>
132
+ <hr/>
133
+ <ExampleSectionWrapper componentName="CmdFakeSelect" headlineText="Selectbox 'country' (shows country flags)">
134
+ <ViewCodeData :code="CmdCode[4]">
135
+ <CmdFakeSelect
136
+ labelText="Selectbox with country flags:"
137
+ :status="formElementStatus"
138
+ :selectData="fakeSelectCountries"
139
+ v-model="fakeSelectCountry"
140
+ defaultOptionName="Select country:"
141
+ type="country"
142
+ />
143
+ <dl class="vmodel">
144
+ <dt>v-model:</dt>
145
+ <dd>
146
+ <output>{{ fakeSelectCountry }}</output>
147
+ </dd>
148
+ </dl>
149
+ </ViewCodeData>
150
+ </ExampleSectionWrapper>
151
+ <hr/>
152
+ <ExampleSectionWrapper componentName="CmdFakeSelect" headlineText="Selectbox 'colors' (show squares with colors)">
153
+ <ViewCodeData :code="CmdCode[5]">
154
+ <CmdFakeSelect
155
+ labelText="Selectbox with colors:"
156
+ :status="formElementStatus"
157
+ :selectData="fakeSelectColors"
158
+ v-model="fakeSelectColor"
159
+ required="required"
160
+ type="color"
161
+ />
162
+ <dl class="vmodel">
163
+ <dt>v-model:</dt>
164
+ <dd>
165
+ <output>{{ fakeSelectColor }}</output>
166
+ </dd>
167
+ </dl>
168
+ </ViewCodeData>
169
+ </ExampleSectionWrapper>
170
+ </template>
171
+ <template v-slot:tab-content-1>
172
+ <ComponentProperties :properties="CmdFakeSelect.props" :propertyDescriptions="propertyDescriptions" :propertyStructures="propertyStructures"/>
173
+ </template>
174
+ </CmdTabs>
175
+ </template>
@@ -0,0 +1,79 @@
1
+ <script setup>
2
+ // import functions
3
+ import {tabProps, tabHandlers} from "../../tabs"
4
+ import {openFancyBox} from "@/components/CmdFancyBox"
5
+ import {isFrameMode} from "../../../utils/common"
6
+
7
+ // import components
8
+ import CmdFancyBox from "../../../components/CmdFancyBox"
9
+ import ComponentProperties from "../../components/ComponentProperties"
10
+ import ViewCodeData from "../../components/ViewCodeData"
11
+ import CmdTabs from "../../../components/CmdTabs"
12
+ import ExampleSectionWrapper from "../../components/ExampleSectionWrapper"
13
+
14
+ // import example-data
15
+ import CmdCode from "../../data/CmdFancyBoxHelp"
16
+ import propertyDescriptions from "../../generated/CmdFancyBoxPropertyDescriptions.json"
17
+
18
+ const propertyStructures = {
19
+ fancyboxOptions: {
20
+ closeIcon: {
21
+ "iconClass": "<string>",
22
+ "tooltip": "<string>"
23
+ },
24
+ printButtons: {
25
+ "color": {
26
+ "iconClass": "<string>",
27
+ "tooltip": "<string>"
28
+ },
29
+ "grayscale": {
30
+ "iconClass": "<string>",
31
+ "tooltip": "<string>"
32
+ }
33
+ }
34
+ }
35
+ }
36
+
37
+ function showFancyBox(type, content, altText) {
38
+ if (type === 'text') {
39
+ openFancyBox({content: content})
40
+ } else if (type === 'image') {
41
+ openFancyBox({url: content, altText: altText})
42
+ }
43
+ }
44
+ </script>
45
+
46
+ <template>
47
+ <CmdTabs v-show="!isFrameMode()" v-bind="tabProps" :active-tab="tabProps.activeTab" v-on="tabHandlers">
48
+ <template v-slot:tab-content-0>
49
+ <h2>Component</h2>
50
+ <ExampleSectionWrapper componentName="CmdFancyBox" headlineText="Fancybox with text">
51
+ <ViewCodeData :isFirstComponent="true" :code="CmdCode[0]">
52
+ <teleport to="#frame-component-target" :disabled="!isFrameMode()">
53
+ <div>
54
+ <a href="#" @click.prevent="showFancyBox('text','Some text')">Open Fancybox with text</a><br/>
55
+ <CmdFancyBox
56
+ :allowEscapeKey="false"
57
+ >
58
+ Content
59
+ </CmdFancyBox>
60
+ </div>
61
+ </teleport>
62
+ </ViewCodeData>
63
+ </ExampleSectionWrapper>
64
+ <hr/>
65
+ <ExampleSectionWrapper componentName="CmdFancyBox" headlineText="Fancybox with image">
66
+ <ViewCodeData :code="CmdCode[0]">
67
+ <a href="#"
68
+ @click.prevent="showFancyBox('image', '/media/images/content-images/logo-business-edition-landscape.jpg', 'Alternative text')"
69
+ title="Open Fancybox with large image">
70
+ Open Fancybox with image
71
+ </a>
72
+ </ViewCodeData>
73
+ </ExampleSectionWrapper>
74
+ </template>
75
+ <template v-slot:tab-content-1>
76
+ <ComponentProperties :properties="CmdFancyBox.props" :propertyDescriptions="propertyDescriptions" :propertyStructures="propertyStructures"/>
77
+ </template>
78
+ </CmdTabs>
79
+ </template>
@@ -0,0 +1,412 @@
1
+ <script setup>
2
+ // import functions
3
+ import {ref} from "vue"
4
+ import {tabProps, tabHandlers} from "../../tabs"
5
+ import {isFrameMode} from "../../../utils/common"
6
+ import {nextSequenceValue, currentSequenceValue} from "../../../utils/globalSequence"
7
+
8
+ // import components
9
+ import CmdFormElement from "../../../components/CmdFormElement"
10
+ import ComponentProperties from "../../components/ComponentProperties"
11
+ import ViewCodeData from "../../components/ViewCodeData"
12
+ import CmdTabs from "../../../components/CmdTabs"
13
+ import CmdCustomHeadline from "../../../components/CmdCustomHeadline"
14
+
15
+ // import example-data
16
+ import CmdCode from "../../data/CmdFormElementHelp"
17
+ import selectOptions from '../../../assets/data/select-options.json'
18
+ import propertyDescriptions from "../../generated/CmdFormElementPropertyDescriptions.json"
19
+
20
+ const propertyStructures = {
21
+ datalist: {
22
+ "id": "<string>",
23
+ "options": "<array>"
24
+ },
25
+ nativeButton: {
26
+ "text": "<string>",
27
+ "icon": {
28
+ "show": "<boolean>",
29
+ "iconClass": "<string>",
30
+ "position": "<string>",
31
+ "tooltip": "<string>"
32
+ }
33
+ },
34
+ selectOptions: [
35
+ {
36
+ "text": "<string>",
37
+ "value": "<string>"
38
+ }
39
+ ]
40
+ }
41
+
42
+ const datalist = {
43
+ id: "datalist-id",
44
+ options: [
45
+ "Option 1",
46
+ "Option 2",
47
+ "Option 3"
48
+ ]
49
+ }
50
+
51
+ // set consts for v-models
52
+ const checkbox = ref(false)
53
+ const radio = ref("radiobutton1")
54
+ const replacedRadio = ref("radiobutton2")
55
+ const range = ref(50)
56
+ const select = ref("2")
57
+ const textarea = ref("")
58
+ const formElementStatus = ref("")
59
+ // TODO: formElementStatus
60
+
61
+ function getExampleId() {
62
+ return "example" + nextSequenceValue("CmdFormElementHelp")
63
+ }
64
+
65
+ function getPreHeadlineText() {
66
+ return "Example #" + currentSequenceValue("CmdFormElementHelp")
67
+ }
68
+ </script>
69
+
70
+ <template>
71
+ <CmdTabs v-show="!isFrameMode()" v-bind="tabProps" :active-tab="tabProps.activeTab" v-on="tabHandlers">
72
+ <template v-slot:tab-content-0>
73
+ <h2>Component</h2>
74
+ <section class="example-section">
75
+ <a :id="getExampleId()"></a>
76
+ <CmdCustomHeadline :preHeadlineText="getPreHeadlineText()" headlineText="Input (type text)" :headlineLevel="2"/>
77
+ <ViewCodeData :isFirstComponent="true" :code="CmdCode[0]">
78
+ <teleport to="#frame-component-target" :disabled="!isFrameMode()">
79
+ <CmdFormElement
80
+ labelText="Input (type text):"
81
+ element="input"
82
+ type="text"
83
+ :status="formElementStatus"
84
+ placeholder="Type in text"
85
+ tooltipText="This is a tooltip"
86
+ :useCustomTooltip="false"
87
+ />
88
+ </teleport>
89
+ </ViewCodeData>
90
+ </section>
91
+ <hr/>
92
+ <section class="example-section">
93
+ <a :id="getExampleId()"></a>
94
+ <CmdCustomHeadline :preHeadlineText="getPreHeadlineText()" headlineText="Input (type number)" :headlineLevel="2"/>
95
+ <ViewCodeData :code="CmdCode[1]">
96
+ <CmdFormElement
97
+ labelText="Input (type number):"
98
+ element="input"
99
+ type="number"
100
+ :status="formElementStatus"
101
+ placeholder="Type in number"
102
+ tooltipText="This is a tooltip"
103
+ :useCustomTooltip="false"
104
+ />
105
+ </ViewCodeData>
106
+ </section>
107
+ <hr/>
108
+ <section class="example-section">
109
+ <a id="example3"></a>
110
+ <CmdCustomHeadline preHeadlineText="Example #3" headlineText="Input (type color)" :headlineLevel="2"/>
111
+ <ViewCodeData :code="CmdCode[2]">
112
+ <CmdFormElement
113
+ labelText="Input (type color):"
114
+ element="input"
115
+ type="color"
116
+ :status="formElementStatus"
117
+ tooltipText="This is a tooltip"
118
+ :useCustomTooltip="false"
119
+ />
120
+ </ViewCodeData>
121
+ </section>
122
+ <hr/>
123
+ <section class="example-section">
124
+ <a id="example4"></a>
125
+ <CmdCustomHeadline preHeadlineText="Example #4" headlineText="Input (type date)" :headlineLevel="2"/>
126
+ <ViewCodeData :code="CmdCode[3]">
127
+ <CmdFormElement
128
+ labelText="Input (type date):"
129
+ element="input"
130
+ type="date"
131
+ :status="formElementStatus"
132
+ tooltipText="This is a tooltip"
133
+ :useCustomTooltip="false"
134
+ />
135
+ </ViewCodeData>
136
+ </section>
137
+
138
+ <hr/>
139
+ <section class="example-section">
140
+ <a id="example5"></a>
141
+ <CmdCustomHeadline preHeadlineText="Example #5" headlineText="Input (type datetime-local)" :headlineLevel="2"/>
142
+ <ViewCodeData :code="CmdCode[4]">
143
+ <CmdFormElement
144
+ labelText="Input (type datetime-local):"
145
+ element="input"
146
+ type="datetime-local"
147
+ :status="formElementStatus"
148
+ tooltipText="This is a tooltip"
149
+ :useCustomTooltip="false"
150
+ />
151
+ </ViewCodeData>
152
+ </section>
153
+ <hr/>
154
+ <section class="example-section">
155
+ <a id="example6"></a>
156
+ <CmdCustomHeadline preHeadlineText="Example #6" headlineText="Input (type password)" :headlineLevel="2"/>
157
+ <ViewCodeData :code="CmdCode[5]">
158
+ <CmdFormElement
159
+ labelText="Input (type password):"
160
+ element="input"
161
+ type="password"
162
+ fieldIconClass="icon-security-settings"
163
+ :status="formElementStatus"
164
+ placeholder="Type in password"
165
+ tooltipText="This is a tooltip"
166
+ :useCustomTooltip="false"
167
+ />
168
+ </ViewCodeData>
169
+ </section>
170
+ <hr/>
171
+ <section class="example-section">
172
+ <a id="example7"></a>
173
+ <CmdCustomHeadline preHeadlineText="Example #7" headlineText="Input (type file)" :headlineLevel="2"/>
174
+ <ViewCodeData :code="CmdCode[6]">
175
+ <CmdFormElement
176
+ labelText="Input (type file):"
177
+ element="input"
178
+ type="file"
179
+ :status="formElementStatus"
180
+ tooltipText="This is a tooltip"
181
+ :useCustomTooltip="false"
182
+ />
183
+ </ViewCodeData>
184
+ </section>
185
+ <hr/>
186
+ <section class="example-section">
187
+ <a id="example8"></a>
188
+ <CmdCustomHeadline preHeadlineText="Example #8" headlineText="Input (type range)" :headlineLevel="2"/>
189
+ <ViewCodeData :code="CmdCode[7]">
190
+ <CmdFormElement
191
+ labelText="Input (type range):"
192
+ element="input"
193
+ type="range"
194
+ :status="formElementStatus"
195
+ :useCustomTooltip="false"
196
+ v-model="range"
197
+ />
198
+ <dl class="vmodel">
199
+ <dt>v-model:</dt>
200
+ <dd>
201
+ <output>{{ range }}</output>
202
+ </dd>
203
+ </dl>
204
+ </ViewCodeData>
205
+ </section>
206
+ <hr/>
207
+ <section class="example-section">
208
+ <a id="example9"></a>
209
+ <CmdCustomHeadline preHeadlineText="Example #9" headlineText="Input (type submit)" :headlineLevel="2"/>
210
+ <ViewCodeData :code="CmdCode[8]">
211
+ <CmdFormElement
212
+ :nativeButton="{ text: 'Submit', icon: {iconClass: 'icon-edit', show: true}}"
213
+ element="button"
214
+ type="submit"
215
+ :status="formElementStatus"
216
+ :useCustomTooltip="false"
217
+ />
218
+ </ViewCodeData>
219
+ </section>
220
+ <hr/>
221
+ <section class="example-section">
222
+ <a id="example10"></a>
223
+ <CmdCustomHeadline preHeadlineText="Example #10" headlineText="Input (type button)" :headlineLevel="2"/>
224
+ <ViewCodeData :code="CmdCode[9]">
225
+ <CmdFormElement
226
+ :nativeButton="{ icon: {iconClass: 'icon-edit', show: true, tooltip: 'I am a tooltip'}}"
227
+ element="button"
228
+ type="button"
229
+ :status="formElementStatus"
230
+ :useCustomTooltip="false"
231
+ />
232
+ </ViewCodeData>
233
+ </section>
234
+ <hr/>
235
+ <section class="example-section">
236
+ <a id="example11"></a>
237
+ <CmdCustomHeadline preHeadlineText="Example #11" headlineText="Input (type checkbox)" :headlineLevel="2"/>
238
+ <ViewCodeData :code="CmdCode[10]">
239
+ <CmdFormElement
240
+ labelText="Input (type checkbox)"
241
+ element="input"
242
+ type="checkbox"
243
+ :status="formElementStatus"
244
+ tooltipText="This is a tooltip"
245
+ :useCustomTooltip="false"
246
+ v-model="checkbox"
247
+ />
248
+ <dl class="vmodel">
249
+ <dt>v-model:</dt>
250
+ <dd>
251
+ <output>{{ checkbox }}</output>
252
+ </dd>
253
+ </dl>
254
+ </ViewCodeData>
255
+ </section>
256
+ <hr/>
257
+ <section class="example-section">
258
+ <a id="example12"></a>
259
+ <CmdCustomHeadline preHeadlineText="Example #12" headlineText="Input (type radio)" :headlineLevel="2"/>
260
+ <ViewCodeData :code="CmdCode[11]">
261
+ <CmdFormElement
262
+ labelText="Input #1 (type radio)"
263
+ element="input"
264
+ type="radio"
265
+ name="radio-group"
266
+ id="example-radio1"
267
+ :status="formElementStatus"
268
+ tooltipText="This is a tooltip"
269
+ :useCustomTooltip="false"
270
+ v-model="radio"
271
+ inputValue="radiobutton1"
272
+ />
273
+ <CmdFormElement
274
+ labelText="Input #2 (type radio)"
275
+ element="input"
276
+ type="radio"
277
+ name="radio-group"
278
+ id="example-radio2"
279
+ :status="formElementStatus"
280
+ tooltipText="This is a tooltip"
281
+ :useCustomTooltip="false"
282
+ v-model="radio"
283
+ inputValue="radiobutton2"
284
+ />
285
+ <dl class="vmodel">
286
+ <dt>v-model:</dt>
287
+ <dd>
288
+ <output>{{ radio }}</output>
289
+ </dd>
290
+ </dl>
291
+ </ViewCodeData>
292
+ </section>
293
+ <hr/>
294
+ <section class="example-section">
295
+ <a id="example13"></a>
296
+ <CmdCustomHeadline preHeadlineText="Example #13" headlineText="Input (type checkbox, replaced)" :headlineLevel="2"/>
297
+ <ViewCodeData :code="CmdCode[12]">
298
+ <CmdFormElement
299
+ labelText="Input (type checkbox)"
300
+ element="input"
301
+ type="checkbox"
302
+ :replace-input-type="true"
303
+ :status="formElementStatus"
304
+ tooltipText="This is a tooltip"
305
+ :useCustomTooltip="false"
306
+ v-model="checkbox"
307
+ />
308
+ <dl class="vmodel">
309
+ <dt>v-model:</dt>
310
+ <dd>
311
+ <output>{{ checkbox }}</output>
312
+ </dd>
313
+ </dl>
314
+ </ViewCodeData>
315
+ </section>
316
+ <hr/>
317
+ <section class="example-section">
318
+ <a id="example14"></a>
319
+ <CmdCustomHeadline preHeadlineText="Example #14" headlineText="Input (type radio, replaced)" :headlineLevel="2"/>
320
+ <ViewCodeData :code="CmdCode[13]">
321
+ <CmdFormElement
322
+ labelText="Input #1 (type radio)"
323
+ element="input"
324
+ type="radio"
325
+ :replace-input-type="true"
326
+ name="replaced-radio-group"
327
+ id="example-replaced-radio1"
328
+ :status="formElementStatus"
329
+ tooltipText="This is a tooltip"
330
+ :useCustomTooltip="false"
331
+ v-model="replacedRadio"
332
+ inputValue="radiobutton1"
333
+ />
334
+ <CmdFormElement
335
+ labelText="Input #2 (type radio)"
336
+ element="input"
337
+ type="radio"
338
+ name="replaced-radio-group"
339
+ :replace-input-type="true"
340
+ id="example-replaced-radio2"
341
+ :status="formElementStatus"
342
+ tooltipText="This is a tooltip"
343
+ :useCustomTooltip="false"
344
+ v-model="replacedRadio"
345
+ inputValue="radiobutton2"
346
+ />
347
+ <dl class="vmodel">
348
+ <dt>v-model:</dt>
349
+ <dd>
350
+ <output>{{ replacedRadio }}</output>
351
+ </dd>
352
+ </dl>
353
+ </ViewCodeData>
354
+ </section>
355
+ <hr/>
356
+ <section class="example-section">
357
+ <a id="example15"></a>
358
+ <CmdCustomHeadline preHeadlineText="Example #15" headlineText="Select" :headlineLevel="2"/>
359
+ <ViewCodeData :code="CmdCode[14]">
360
+ <CmdFormElement
361
+ labelText="Selectbox"
362
+ element="select"
363
+ required="required"
364
+ :status="formElementStatus"
365
+ v-model="select"
366
+ :selectOptions="selectOptions"
367
+ />
368
+ <dl>
369
+ <dt>v-model:</dt>
370
+ <dd>
371
+ <output>{{ select }}</output>
372
+ </dd>
373
+ </dl>
374
+ </ViewCodeData>
375
+ </section>
376
+ <hr/>
377
+ <section class="example-section">
378
+ <a id="example16"></a>
379
+ <CmdCustomHeadline preHeadlineText="Example #16" headlineText="Datalist" :headlineLevel="2"/>
380
+ <ViewCodeData :code="CmdCode[15]">
381
+ <CmdFormElement
382
+ labelText="Datalist:"
383
+ element="input"
384
+ type="text"
385
+ :status="formElementStatus"
386
+ placeholder="Type in option"
387
+ :datalist="datalist"
388
+ tooltipText="This is a tooltip"
389
+ />
390
+ </ViewCodeData>
391
+ </section>
392
+ <hr/>
393
+ <section class="example-section">
394
+ <a id="example171"></a>
395
+ <CmdCustomHeadline preHeadlineText="Example #17" headlineText="Textarea" :headlineLevel="2"/>
396
+ <ViewCodeData :code="CmdCode[16]">
397
+ <CmdFormElement
398
+ labelText="Textarea:"
399
+ element="textarea"
400
+ :status="formElementStatus"
401
+ placeholder="Type in text"
402
+ tooltipText="This is a tooltip"
403
+ v-model="textarea"
404
+ />
405
+ </ViewCodeData>
406
+ </section>
407
+ </template>
408
+ <template v-slot:tab-content-1>
409
+ <ComponentProperties :properties="CmdFormElement.props" :propertyDescriptions="propertyDescriptions" :propertyStructures="propertyStructures"/>
410
+ </template>
411
+ </CmdTabs>
412
+ </template>