ketekny-ui-kit 1.0.66 → 1.0.68

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ketekny-ui-kit",
3
3
  "type": "module",
4
- "version": "1.0.66",
4
+ "version": "1.0.68",
5
5
  "description": "A Vue 3 UI component library with Tailwind CSS styling",
6
6
  "main": "index.js",
7
7
  "files": [
@@ -25,22 +25,39 @@
25
25
  >
26
26
  <div class="relative border-b border-white/10">
27
27
  <button
28
- v-if="logoSrc || title"
28
+ v-if="logoSrc"
29
29
  type="button"
30
30
  class="block w-full text-left"
31
31
  v-tooltip.right.html="isSidebarCollapsed ? collapsedContactTooltip : logoAlt"
32
32
  @click="$emit('logo-click')"
33
33
  >
34
34
  <img
35
- v-if="logoSrc"
36
35
  :alt="logoAlt"
37
36
  :src="isSidebarCollapsed ? collapsedLogoSrc : logoSrc"
38
37
  class="cursor-pointer px-4 py-4 transition-all duration-300"
39
38
  />
40
- <div v-if="title && !isSidebarCollapsed" class="py-3 mt-3 text-lg text-center bg-white/10">
41
- {{ title }}
42
- </div>
43
39
  </button>
40
+ <div v-if="title && !isSidebarCollapsed"
41
+ :class="showSponsors ? 'border-b border-white/30 ' : ''"
42
+ class="py-3 mt-3 text-xl font-bold text-center bg-[#0f4e8d]">
43
+ {{ title }}
44
+ </div>
45
+ <div v-if="showSponsors && !isSidebarCollapsed" class="flex flex-col gap-3 px-4 py-4 bg-[#0f4e8d]">
46
+ <div>
47
+ <img
48
+ src="https://s3.ketekny.gr/public/web-apps/sponsors/Greece 2.0_NextGeneration_White_gr.png"
49
+ alt="Tameio Anakampsis"
50
+ class="mx-auto max-h-16 w-auto object-contain"
51
+ />
52
+ </div>
53
+ <div>
54
+ <img
55
+ src="https://s3.ketekny.gr/public/web-apps/sponsors/yp_ygeias_dark.png"
56
+ alt="Ypourgeio Ygeias"
57
+ class="mx-auto max-h-16 w-auto object-contain"
58
+ />
59
+ </div>
60
+ </div>
44
61
 
45
62
  <slot name="sidebar-header" />
46
63
 
@@ -126,28 +143,28 @@
126
143
  <p v-if="account.loggedIn" class="mt-2 truncate text-lg font-semibold text-white">
127
144
  {{ accountDisplayName }}
128
145
  </p>
129
- <p v-if="account.loggedIn && account.email" class="truncate text-sm text-slate-300">
130
- {{ account.email }}
146
+ <p v-if="account.loggedIn && displayEmail" class="truncate text-sm text-slate-300">
147
+ {{ displayEmail }}
131
148
  </p>
132
149
  </div>
133
- <div class="flex flex-wrap gap-2">
150
+ <div class="flex flex-wrap justify-between gap-2">
134
151
  <kButton
135
152
  v-if="!account.loggedIn"
136
153
  secondary
137
154
  icon="LogIn"
138
- label="Sign in"
155
+ label="Σύνδεση"
139
156
  @click="$emit('signin')"
140
157
  />
141
158
  <kButton
142
159
  v-if="!account.loggedIn"
143
160
  secondary
144
161
  icon="UserPlus"
145
- label="Sign up"
162
+ label="Εγγραφή"
146
163
  @click="$emit('signup')"
147
164
  />
148
165
  <kButton
149
166
  v-if="account.loggedIn"
150
- secondary
167
+ variant="soft"
151
168
  icon="UserRoundCog"
152
169
  label="Επεξεργασία προφίλ"
153
170
  @click="$emit('edit-profile')"
@@ -176,8 +193,8 @@
176
193
  <span class="whitespace-nowrap">Βερανζέρου 13, 10677, Αθήνα</span>
177
194
  <span class="whitespace-nowrap">210 3648 337</span>
178
195
  <span class="whitespace-nowrap">
179
- <a href="mailto:grammateia@ketekny.gr" class="whitespace-nowrap hover:underline">
180
- grammateia@ketekny.gr
196
+ <a :href="`mailto:${contactEmail}`" class="whitespace-nowrap hover:underline">
197
+ {{ contactEmail }}
181
198
  </a>
182
199
  </span>
183
200
  <a
@@ -277,11 +294,13 @@ export default {
277
294
  expandLabel: { type: String, default: 'Expand sidebar' },
278
295
  collapseIcon: { type: String, default: 'ArrowLeftToLine' },
279
296
  expandIcon: { type: String, default: 'ArrowRightToLine' },
297
+ showSponsors: { type: Boolean, default: false },
280
298
  storageKey: { type: String, default: DEFAULT_STORAGE_KEY },
281
- defaultCollapsed: { type: Boolean, default: false },
282
- mainMenu: { type: Array, default: () => [] },
283
- showContactInfo: { type: Boolean, default: false },
284
- account: { type: Object, default: null },
299
+ defaultCollapsed: { type: Boolean, default: false },
300
+ mainMenu: { type: Array, default: () => [] },
301
+ showContactInfo: { type: Boolean, default: false },
302
+ account: { type: Object, default: null },
303
+ contactEmail: { type: String, default: 'grammateia@ketekny.gr' },
285
304
  },
286
305
  data() {
287
306
  return {
@@ -383,6 +402,9 @@ export default {
383
402
  if (!this.account) return ''
384
403
  return [this.account.firstName, this.account.lastName].filter(Boolean).join(' ').trim() || 'Account'
385
404
  },
405
+ displayEmail() {
406
+ return this.account?.email || ''
407
+ },
386
408
  collapsedContactTooltip() {
387
409
  return `
388
410
  <div style="min-width: 220px;">
@@ -392,7 +414,7 @@ export default {
392
414
  <div style="display: flex; flex-direction: column; gap: 4px; font-size: 13px; line-height: 1.4; color: rgba(255,255,255,0.9);">
393
415
  <div>Βερανζέρου 13, 10677, Αθήνα</div>
394
416
  <div>210 3648 337</div>
395
- <div>grammateia@ketekny.gr</div>
417
+ <div>${this.contactEmail}</div>
396
418
  <div>https://ketekny.gr</div>
397
419
  </div>
398
420
  </div>