@finema/finework-layer 0.2.88 → 0.2.90

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.2.90](https://gitlab.finema.co/finema/finework/finework-frontend-layer/compare/0.2.89...0.2.90) (2025-12-18)
4
+
5
+ ### Bug Fixes
6
+
7
+ * legal link ([fae0468](https://gitlab.finema.co/finema/finework/finework-frontend-layer/commit/fae0468ee67d4d0809e78d55562ab4c2e1835309))
8
+
9
+ ## [0.2.89](https://gitlab.finema.co/finema/finework/finework-frontend-layer/compare/0.2.88...0.2.89) (2025-12-17)
10
+
11
+ ### Bug Fixes
12
+
13
+ * update app link rendering based on status ([bfab126](https://gitlab.finema.co/finema/finework/finework-frontend-layer/commit/bfab126f3c552613ebbde82ed93f65b6a3419da0))
14
+
3
15
  ## [0.2.88](https://gitlab.finema.co/finema/finework/finework-frontend-layer/compare/0.2.87...0.2.88) (2025-12-17)
4
16
 
5
17
  ### Bug Fixes
@@ -25,19 +25,18 @@
25
25
  Management
26
26
  </div>
27
27
 
28
- <NuxtLink
28
+ <component
29
+ :is="app.status === StatusPortal.DEVELOPING ? 'div' : NuxtLink"
29
30
  v-for="app in managementApps"
30
31
  :key="app.name"
31
- :to="app.to"
32
- :class="[
33
- 'relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]',
34
- app.status === 'developing'
35
- ? 'cursor-not-allowed bg-gray-200 opacity-60'
36
- : 'bg-gray-100',
37
- ]"
32
+ :to="app.status !== StatusPortal.DEVELOPING ? app.to : undefined"
33
+ class="relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]"
34
+ :class="app.status === StatusPortal.DEVELOPING
35
+ ? 'cursor-not-allowed bg-gray-200 opacity-60'
36
+ : 'bg-gray-100 hover:bg-gray-200'"
38
37
  >
39
38
  <div
40
- v-if="app.status === 'developing'"
39
+ v-if="app.status === StatusPortal.DEVELOPING"
41
40
  class="absolute top-2 right-2 rounded-full bg-orange-100 px-2 py-0.5 text-xs font-semibold text-orange-600"
42
41
  >
43
42
  กำลังพัฒนา
@@ -45,13 +44,17 @@
45
44
  <img
46
45
  :src="app.logo"
47
46
  :alt="app.label"
48
- class="h-[45px] w-[45px] rounded-sm bg-white"
47
+ class="h-[45px] w-[45px] bg-white"
49
48
  />
50
49
  <div>
51
- <div class="text-lg font-bold">{{ app.label }}</div>
52
- <div class="text-sm text-gray-500">{{ app.description }}</div>
50
+ <div class="text-lg font-bold">
51
+ {{ app.label }}
52
+ </div>
53
+ <div class="text-sm text-gray-500">
54
+ {{ app.description }}
55
+ </div>
53
56
  </div>
54
- </NuxtLink>
57
+ </component>
55
58
  </div>
56
59
 
57
60
  <div
@@ -61,19 +64,19 @@
61
64
  <div class="text-lg font-bold text-gray-600">
62
65
  Finance
63
66
  </div>
64
- <NuxtLink
67
+
68
+ <component
69
+ :is="app.status === StatusPortal.DEVELOPING ? 'div' : NuxtLink"
65
70
  v-for="app in financeApps"
66
71
  :key="app.name"
67
- :to="app.to"
68
- :class="[
69
- 'relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]',
70
- app.status === 'developing'
71
- ? 'cursor-not-allowed bg-gray-200 opacity-60'
72
- : 'bg-gray-100',
73
- ]"
72
+ :to="app.status !== StatusPortal.DEVELOPING ? app.to : undefined"
73
+ class="relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]"
74
+ :class="app.status === StatusPortal.DEVELOPING
75
+ ? 'cursor-not-allowed bg-gray-200 opacity-60'
76
+ : 'bg-gray-100 hover:bg-gray-200'"
74
77
  >
75
78
  <div
76
- v-if="app.status === 'developing'"
79
+ v-if="app.status === StatusPortal.DEVELOPING"
77
80
  class="absolute top-2 right-2 rounded-full bg-orange-100 px-2 py-0.5 text-xs font-semibold text-orange-600"
78
81
  >
79
82
  กำลังพัฒนา
@@ -82,13 +85,18 @@
82
85
  <img
83
86
  :src="app.logo"
84
87
  :alt="app.label"
85
- class="h-[45px] w-[45px] rounded-sm bg-white"
88
+ class="h-[45px] w-[45px] bg-white"
86
89
  />
90
+
87
91
  <div>
88
- <div class="text-lg font-bold">{{ app.label }}</div>
89
- <div class="text-sm text-gray-500">{{ app.description }}</div>
92
+ <div class="text-lg font-bold">
93
+ {{ app.label }}
94
+ </div>
95
+ <div class="text-sm text-gray-500">
96
+ {{ app.description }}
97
+ </div>
90
98
  </div>
91
- </NuxtLink>
99
+ </component>
92
100
  </div>
93
101
 
94
102
  <div
@@ -99,19 +107,18 @@
99
107
  People
100
108
  </div>
101
109
 
102
- <NuxtLink
110
+ <component
111
+ :is="app.status === StatusPortal.DEVELOPING ? 'div' : NuxtLink"
103
112
  v-for="app in peopleApps"
104
113
  :key="app.name"
105
- :to="app.to"
106
- :class="[
107
- 'relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]',
108
- app.status === 'developing'
109
- ? 'cursor-not-allowed bg-gray-200 opacity-60'
110
- : 'bg-gray-100',
111
- ]"
114
+ :to="app.status !== StatusPortal.DEVELOPING ? app.to : undefined"
115
+ class="relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]"
116
+ :class="app.status === StatusPortal.DEVELOPING
117
+ ? 'cursor-not-allowed bg-gray-200 opacity-60'
118
+ : 'bg-gray-100 hover:bg-gray-200'"
112
119
  >
113
120
  <div
114
- v-if="app.status === 'developing'"
121
+ v-if="app.status === StatusPortal.DEVELOPING"
115
122
  class="absolute top-2 right-2 rounded-full bg-orange-100 px-2 py-0.5 text-xs font-semibold text-orange-600"
116
123
  >
117
124
  กำลังพัฒนา
@@ -119,13 +126,17 @@
119
126
  <img
120
127
  :src="app.logo"
121
128
  :alt="app.label"
122
- class="h-[45px] w-[45px] rounded-sm bg-white"
129
+ class="h-[45px] w-[45px] bg-white"
123
130
  />
124
131
  <div>
125
- <div class="text-lg font-bold">{{ app.label }}</div>
126
- <div class="text-sm text-gray-500">{{ app.description }}</div>
132
+ <div class="text-lg font-bold">
133
+ {{ app.label }}
134
+ </div>
135
+ <div class="text-sm text-gray-500">
136
+ {{ app.description }}
137
+ </div>
127
138
  </div>
128
- </NuxtLink>
139
+ </component>
129
140
  </div>
130
141
 
131
142
  <div
@@ -136,19 +147,18 @@
136
147
  Legal
137
148
  </div>
138
149
 
139
- <NuxtLink
150
+ <component
151
+ :is="app.status === StatusPortal.DEVELOPING ? 'div' : NuxtLink"
140
152
  v-for="app in legalApps"
141
153
  :key="app.name"
142
- :to="app.to"
143
- :class="[
144
- 'relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]',
145
- app.status === 'developing'
146
- ? 'cursor-not-allowed bg-gray-200 opacity-60'
147
- : 'bg-gray-100',
148
- ]"
154
+ :to="app.status !== StatusPortal.DEVELOPING ? app.to : undefined"
155
+ class="relative flex items-center gap-3 rounded-lg px-2.5 py-[15px]"
156
+ :class="app.status === StatusPortal.DEVELOPING
157
+ ? 'cursor-not-allowed bg-gray-200 opacity-60'
158
+ : 'bg-gray-100 hover:bg-gray-200'"
149
159
  >
150
160
  <div
151
- v-if="app.status === 'developing'"
161
+ v-if="app.status === StatusPortal.DEVELOPING"
152
162
  class="absolute top-2 right-2 rounded-full bg-orange-100 px-2 py-0.5 text-xs font-semibold text-orange-600"
153
163
  >
154
164
  กำลังพัฒนา
@@ -156,28 +166,35 @@
156
166
  <img
157
167
  :src="app.logo"
158
168
  :alt="app.label"
159
- class="h-[45px] w-[45px] rounded-sm bg-white"
169
+ class="h-[45px] w-[45px] bg-white"
160
170
  />
161
171
  <div>
162
- <div class="text-lg font-bold">{{ app.label }}</div>
163
- <div class="text-sm text-gray-500">{{ app.description }}</div>
172
+ <div class="text-lg font-bold">
173
+ {{ app.label }}
174
+ </div>
175
+ <div class="text-sm text-gray-500">
176
+ {{ app.description }}
177
+ </div>
164
178
  </div>
165
- </NuxtLink>
179
+ </component>
166
180
  </div>
167
181
  </div>
168
182
  </div>
169
183
  </template>
170
184
 
171
185
  <script lang="ts" setup>
186
+ import { resolveComponent } from 'vue'
187
+
172
188
  defineProps<{
173
189
  isNavbar?: boolean
174
190
  }>()
175
191
 
176
- const auth = useAuth()
177
192
  const enum StatusPortal {
178
193
  ACTIVE = 'active',
179
194
  DEVELOPING = 'developing',
180
195
  }
196
+ const NuxtLink = resolveComponent('NuxtLink')
197
+ const auth = useAuth()
181
198
  const managementApps = computed(() => [
182
199
  ...(auth.hasPermission(
183
200
  UserModule.PMO,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@finema/finework-layer",
3
3
  "type": "module",
4
- "version": "0.2.88",
4
+ "version": "0.2.90",
5
5
  "main": "./nuxt.config.ts",
6
6
  "scripts": {
7
7
  "dev": "nuxi dev .playground -o",