comand-component-library 4.1.89 → 4.1.91

Sign up to get free protection for your applications and to get access to all the features.
@@ -177,14 +177,28 @@
177
177
  :id="htmlId"
178
178
  @blur="onBlur"
179
179
  @change="$emit('update:modelValue', $event.target.value)">
180
- <option
181
- v-for="(option, index) in selectOptions"
182
- :key="index"
183
- :value="option.value"
184
- :selected="option.value === modelValue"
185
- >
186
- {{ option.text }}
187
- </option>
180
+
181
+ <option v-if="!groupSelectOptionsByInitialLetters"
182
+ v-for="(option, index) in selectOptions"
183
+ :key="index"
184
+ :value="option.value"
185
+ :selected="option.value === modelValue"
186
+ >
187
+ {{ option.text }}
188
+ </option>
189
+ <optgroup v-else :label="key"
190
+ v-for="(options, key) in initialLetters"
191
+ :key="key"
192
+ >
193
+ <option
194
+ v-for="(option, optionIndex) in options"
195
+ :key="optionIndex"
196
+ :value="option.value"
197
+ :selected="option.value === modelValue"
198
+ >
199
+ {{ option.text }}
200
+ </option>
201
+ </optgroup>
188
202
  </select>
189
203
  <!-- end selectbox -->
190
204
 
@@ -284,6 +298,10 @@ export default {
284
298
  }
285
299
  },
286
300
  props: {
301
+ groupSelectOptionsByInitialLetters: {
302
+ type: Boolean,
303
+ default: false
304
+ },
287
305
  /**
288
306
  * specify a scroll-container which scrolling hides the tooltip
289
307
  */
@@ -376,7 +394,7 @@ export default {
376
394
  *
377
395
  * @affectsStyling: true
378
396
  */
379
- f: {
397
+ colored: {
380
398
  type: Boolean,
381
399
  required: false
382
400
  },
@@ -680,6 +698,9 @@ export default {
680
698
  }
681
699
  },
682
700
  computed: {
701
+ initialLetters() {
702
+ return this.getInitialLetters(this.selectOptions)
703
+ },
683
704
  elementAttributes() {
684
705
  const commonAttributes = ["name", "required", "readonly", "disabled", "autofocus"]
685
706
  const attributes = {
@@ -761,6 +782,20 @@ export default {
761
782
  }
762
783
  },
763
784
  methods: {
785
+ getInitialLetters(listOfOptions) {
786
+ const groupedListOfOptions = {}
787
+ // compare the text-keys (in lower case) and sort them
788
+ listOfOptions.sort((a, b) => a.text.toLowerCase().localeCompare(b.text.toLowerCase()))
789
+
790
+ for (let i = 0; i < listOfOptions.length; i++) {
791
+ const initialLetter = listOfOptions[i].text.slice(0,1)
792
+ if (!groupedListOfOptions[initialLetter]) {
793
+ groupedListOfOptions[initialLetter] = []
794
+ }
795
+ groupedListOfOptions[initialLetter].push(listOfOptions[i])
796
+ }
797
+ return groupedListOfOptions
798
+ },
764
799
  setFocus() {
765
800
  this.$refs.label.querySelector("input, select, textarea")?.focus()
766
801
  },
@@ -63,11 +63,9 @@ export default {
63
63
  computed: {
64
64
  locateAddress() {
65
65
  if(this.address) {
66
- // const url = new URL("https://maps.google.de/maps?ie=UTF8&t=&z=17&iwloc=B&output=embed")
67
- let url = new URL("https://www.google.de/maps/place/")
68
- url += this.address.streetNo + this.address.zip + "," + this.address.city + this.address.country
69
- /* url.searchParams.set("hl", "de")
70
- url.searchParams.set("q", [this.address.streetNo, this.address.zip, this.address.city, this.address.country, this.address.latitude, this.address.longitude, this.address.location].join(" ").trim())*/
66
+ const url = new URL("https://maps.google.de/maps?ie=UTF8&t=&z=17&iwloc=B&output=embed")
67
+ url.searchParams.set("hl", "de")
68
+ url.searchParams.set("q", [this.address.streetNo, this.address.zip, this.address.city, this.address.country, this.address.latitude, this.address.longitude, this.address.location].join(" ").trim())
71
69
  return url
72
70
  }
73
71
  return "https://maps.google.de/maps?ie=UTF8&t=&z=17&iwloc=B&output=embed"
@@ -97,8 +95,12 @@ export default {
97
95
  border: var(--default-border);
98
96
  border-radius: var(--default-border-radius);
99
97
 
98
+ &:hover, &:active, &:focus {
99
+ border-color: var(--hyperlink-color-highlighted);
100
+ }
101
+
100
102
  iframe {
101
- border-radius: var(--default-border-radius);
103
+ border-radius: inherit;
102
104
  }
103
105
 
104
106
  .cmd-system-message {
@@ -120,17 +120,18 @@
120
120
  <!-- end slot for send-login-form -->
121
121
 
122
122
  <div class="option-wrapper flex-container">
123
- <a v-if="linkForgotPassword" href="#" @click.prevent="toggleSendLoginView">
123
+ <a href="#" @click.prevent="toggleSendLoginView">
124
124
  <!-- begin CmdIcon -->
125
125
  <CmdIcon
126
- v-if="linkForgotPassword && linkForgotPassword.icon && linkForgotPassword.icon.show && linkForgotPassword.icon.iconClass"
127
- :iconClass="linkForgotPassword.icon.iconClass"
128
- :type="linkForgotPassword.icon.iconType"
129
- :title="linkForgotPassword.icon.tooltip"
126
+ v-if="linkBackToLogin.icon && linkBackToLogin.icon.show && linkBackToLogin.icon.iconClass"
127
+ :iconClass="linkBackToLogin.icon.iconClass"
128
+ :type="linkBackToLogin.icon.iconType"
129
+ :title="linkBackToLogin.icon.tooltip"
130
130
  />
131
131
  <!-- end CmdIcon -->
132
- <span v-if="linkForgotPassword.text">
133
- {{ linkForgotPassword.text }}
132
+
133
+ <span>
134
+ {{linkBackToLogin.text}}
134
135
  </span>
135
136
  </a>
136
137
 
@@ -286,6 +287,9 @@ export default {
286
287
  }
287
288
  }
288
289
  },
290
+ /**
291
+ * define link to create an account (that is linked to a register-form i.e.)
292
+ */
289
293
  linkCreateAccount: {
290
294
  type: Object,
291
295
  default() {
@@ -301,7 +305,10 @@ export default {
301
305
  }
302
306
  }
303
307
  },
304
- linkBackToLoginForm: {
308
+ /**
309
+ * define link from "forgot-login-form"-view back to the default login-form
310
+ */
311
+ linkBackToLogin: {
305
312
  type: Object,
306
313
  default() {
307
314
  return {
@@ -310,7 +317,7 @@ export default {
310
317
  iconClass: "icon-chevron-one-stripe-left",
311
318
  tooltip: ""
312
319
  },
313
- text: "Back to login form"
320
+ text: "Back to login"
314
321
  }
315
322
  }
316
323
  },
package/src/css.js CHANGED
@@ -18,6 +18,9 @@ import 'comand-ui-iconfonts/src/fonts/medical-iconfont/medical-iconfont.css'
18
18
  /* end imports from comand-ui-iconfonts---------------------------------------------------------------------------------------- */
19
19
 
20
20
  /* begin imports from comand-component-library ---------------------------------------------------------------------------------------- */
21
+ /* import css for scss-variables */
22
+ import './assets/styles/variables.scss'
23
+
21
24
  /* import css for global-styles */
22
25
  import './assets/styles/component-library-global-styles.scss'
23
26
 
@@ -1,227 +0,0 @@
1
- /* editmode-iconfont-iconfont.css - last update: 2024/01/04 - IT IS NOT RECOMMENDED TO EDIT THIS FILE (TO AVOID TROUBLESHOOTING AFTER UPDATING) - DO CHANGES IN template.css OR YOUR OWN iconfont-css-file */
2
-
3
- @font-face {
4
- font-family: 'icomoon';
5
- src: url('../fonts/iconfonts/editmode-iconfont/icomoon-editmode.woff?ai9tjp') format('woff');
6
- font-weight: normal;
7
- font-style: normal;
8
- font-display: block;
9
- unicode-range: U+c???;
10
- }
11
-
12
- [class^="icon-"], [class*=" icon-"] {
13
- /* use !important to prevent issues with browser extensions that change fonts */
14
- font-family: 'icomoon' !important;
15
- speak: never;
16
- font-style: normal;
17
- font-weight: normal;
18
- font-variant: normal;
19
- text-transform: none;
20
- line-height: 1;
21
-
22
- /* Better Font Rendering =========== */
23
- -webkit-font-smoothing: antialiased;
24
- -moz-osx-font-smoothing: grayscale;
25
- }
26
-
27
- .icon-add-component:before {
28
- content: "\c900";
29
- }
30
- .icon-add-image:before {
31
- content: "\c901";
32
- }
33
- .icon-add-images:before {
34
- content: "\c902";
35
- }
36
- .icon-add-user:before {
37
- content: "\c903";
38
- }
39
- .icon-add-user-circle:before {
40
- content: "\c904";
41
- }
42
- .icon-add-user-group:before {
43
- content: "\c905";
44
- }
45
- .icon-cmd-cl:before {
46
- content: "\c906";
47
- }
48
- .icon-cmd-cms:before {
49
- content: "\c907";
50
- }
51
- .icon-cmd-ff:before {
52
- content: "\c908";
53
- }
54
- .icon-cmd-op:before {
55
- content: "\c909";
56
- }
57
- .icon-component:before {
58
- content: "\c90a";
59
- }
60
- .icon-contentpage:before {
61
- content: "\c90b";
62
- }
63
- .icon-create:before {
64
- content: "\c90c";
65
- }
66
- .icon-create-box:before {
67
- content: "\c90d";
68
- }
69
- .icon-create-content:before {
70
- content: "\c90e";
71
- }
72
- .icon-create-content-sub-level:before {
73
- content: "\c90f";
74
- }
75
- .icon-create-navigation-entry:before {
76
- content: "\c910";
77
- }
78
- .icon-create-newspage:before {
79
- content: "\c911";
80
- }
81
- .icon-create-page:before {
82
- content: "\c912";
83
- }
84
- .icon-create-translation:before {
85
- content: "\c913";
86
- }
87
- .icon-delete-component:before {
88
- content: "\c914";
89
- }
90
- .icon-delete-image:before {
91
- content: "\c915";
92
- }
93
- .icon-delete-page:before {
94
- content: "\c916";
95
- }
96
- .icon-dependencies:before {
97
- content: "\c917";
98
- }
99
- .icon-edit-box:before {
100
- content: "\c918";
101
- }
102
- .icon-edit-component:before {
103
- content: "\c919";
104
- }
105
- .icon-edit-content:before {
106
- content: "\c91a";
107
- }
108
- .icon-edit-images:before {
109
- content: "\c91b";
110
- }
111
- .icon-edit-language:before {
112
- content: "\c91c";
113
- }
114
- .icon-edit-modulepage:before {
115
- content: "\c91d";
116
- }
117
- .icon-edit-modules:before {
118
- content: "\c91e";
119
- }
120
- .icon-edit-navigation-entry:before {
121
- content: "\c91f";
122
- }
123
- .icon-edit-newspage:before {
124
- content: "\c920";
125
- }
126
- .icon-edit-page:before {
127
- content: "\c921";
128
- }
129
- .icon-edit-slideshowimages:before {
130
- content: "\c922";
131
- }
132
- .icon-edit-template:before {
133
- content: "\c923";
134
- }
135
- .icon-edit-translations:before {
136
- content: "\c924";
137
- }
138
- .icon-edit-user:before {
139
- content: "\c925";
140
- }
141
- .icon-edit-user-groups:before {
142
- content: "\c926";
143
- }
144
- .icon-edit-users:before {
145
- content: "\c927";
146
- }
147
- .icon-folder-add:before {
148
- content: "\c928";
149
- }
150
- .icon-folder-delete:before {
151
- content: "\c929";
152
- }
153
- .icon-folder-rename:before {
154
- content: "\c92a";
155
- }
156
- .icon-hexagon-thin:before {
157
- content: "\c92b";
158
- }
159
- .icon-link-content:before {
160
- content: "\c92c";
161
- }
162
- .icon-link-file:before {
163
- content: "\c92d";
164
- }
165
- .icon-link-website:before {
166
- content: "\c92e";
167
- }
168
- .icon-manage-files:before {
169
- content: "\c92f";
170
- }
171
- .icon-manage-languages:before {
172
- content: "\c930";
173
- }
174
- .icon-manage-modules:before {
175
- content: "\c931";
176
- }
177
- .icon-manage-slideshow-images:before {
178
- content: "\c932";
179
- }
180
- .icon-manage-system:before {
181
- content: "\c933";
182
- }
183
- .icon-mediacenter:before {
184
- content: "\c934";
185
- }
186
- .icon-module:before {
187
- content: "\c935";
188
- }
189
- .icon-modulepage:before {
190
- content: "\c936";
191
- }
192
- .icon-navigation-entry:before {
193
- content: "\c937";
194
- }
195
- .icon-newspage:before {
196
- content: "\c938";
197
- }
198
- .icon-replace-image:before {
199
- content: "\c939";
200
- }
201
- .icon-settings-component:before {
202
- content: "\c93a";
203
- }
204
- .icon-settings-page:before {
205
- content: "\c93b";
206
- }
207
- .icon-settings-template:before {
208
- content: "\c93c";
209
- }
210
- .icon-show-image:before {
211
- content: "\c93d";
212
- }
213
- .icon-table-of-contents:before {
214
- content: "\c93e";
215
- }
216
- .icon-template:before {
217
- content: "\c93f";
218
- }
219
- .icon-text:before {
220
- content: "\c940";
221
- }
222
- .icon-update-component:before {
223
- content: "\c941";
224
- }
225
- .icon-update-page:before {
226
- content: "\c942";
227
- }