@finema/finework-layer 1.0.63 → 1.0.65

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,13 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.0.65](https://gitlab.finema.co/finema/finework/finework-frontend-layer/compare/1.0.64...1.0.65) (2026-05-26)
4
+
5
+ ## [1.0.64](https://gitlab.finema.co/finema/finework/finework-frontend-layer/compare/1.0.63...1.0.64) (2026-05-25)
6
+
7
+ ### Features
8
+
9
+ * enhance hasPermission to support array-based module permissions ([869121a](https://gitlab.finema.co/finema/finework/finework-frontend-layer/commit/869121afc544939c6b578fef84b0ca82cad6d270))
10
+
3
11
  ## [1.0.63](https://gitlab.finema.co/finema/finework/finework-frontend-layer/compare/1.0.62...1.0.63) (2026-05-23)
4
12
 
5
13
  ### Features
@@ -225,12 +225,26 @@ export const useAuth = () => {
225
225
  me.set(null)
226
226
  })
227
227
 
228
- const hasPermission = (module: UserModule, ...permission: Permission[]) => {
229
- if (!me.value?.access_level) {
228
+ const hasPermission = (module: UserModule, ...permissions: Permission[]) => {
229
+ const accessLevel = me.value?.access_level
230
+
231
+ if (!accessLevel) {
230
232
  return false
231
233
  }
232
234
 
233
- return permission.includes(me.value.access_level[module])
235
+ const modulePermission = accessLevel[module]
236
+
237
+ if (!modulePermission) {
238
+ return false
239
+ }
240
+
241
+ if (Array.isArray(modulePermission)) {
242
+ return modulePermission.some((permission) =>
243
+ permissions.includes(permission),
244
+ )
245
+ }
246
+
247
+ return permissions.includes(modulePermission)
234
248
  }
235
249
 
236
250
  const isSuperAdmin = computed(() => {
package/bun.lock CHANGED
@@ -5,7 +5,7 @@
5
5
  "": {
6
6
  "name": "@finema/finework-layer",
7
7
  "dependencies": {
8
- "@finema/core": "^3.16.5",
8
+ "@finema/core": "^3.16.9",
9
9
  },
10
10
  "devDependencies": {
11
11
  "@finema/eslint-config": "^2.0.3",
@@ -184,7 +184,7 @@
184
184
 
185
185
  "@eslint/plugin-kit": ["@eslint/plugin-kit@0.4.1", "", { "dependencies": { "@eslint/core": "^0.17.0", "levn": "^0.4.1" } }, "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA=="],
186
186
 
187
- "@finema/core": ["@finema/core@3.16.5", "", { "dependencies": { "@iconify-json/heroicons": "^1.2.2", "@iconify-json/ph": "^1.2.2", "@iconify-json/svg-spinners": "^1.2.2", "@nuxt/kit": "^4.1.3", "@nuxt/ui": "^4.5.0", "@pinia/nuxt": "^0.11.0", "@tailwindcss/typography": "^0.5.0-alpha.3", "@tiptap/extension-text-align": "^3.18.0", "@vee-validate/nuxt": "^4.15.1", "@vee-validate/valibot": "^4.15.1", "@vuepic/vue-datepicker": "^11.0.2", "@vueuse/components": "^13.9.0", "@vueuse/core": "^13.9.0", "@wdns/vue-code-block": "^2.3.5", "axios": "^1.10.0", "date-fns": "^4.1.0", "date-fns-tz": "^3.2.0", "defu": "^6.1.4", "lodash-es": "^4.17.21", "maska": "^3.1.1", "url-join": "^5.0.0" } }, "sha512-NT8m5Q4pDIL0ktLOecd6aN9NKB5Jh4eAQaGEmYNDpz7zdFRETUpl+AihxoZRK9ok3X+lkIfId7Z3EAjxUpeuiA=="],
187
+ "@finema/core": ["@finema/core@3.16.9", "", { "dependencies": { "@iconify-json/heroicons": "^1.2.2", "@iconify-json/ph": "^1.2.2", "@iconify-json/svg-spinners": "^1.2.2", "@nuxt/kit": "^4.1.3", "@nuxt/ui": "^4.5.0", "@pinia/nuxt": "^0.11.0", "@tailwindcss/typography": "^0.5.0-alpha.3", "@tiptap/extension-text-align": "^3.18.0", "@vee-validate/nuxt": "^4.15.1", "@vee-validate/valibot": "^4.15.1", "@vuepic/vue-datepicker": "^11.0.2", "@vueuse/components": "^13.9.0", "@vueuse/core": "^13.9.0", "@wdns/vue-code-block": "^2.3.5", "axios": "^1.10.0", "date-fns": "^4.1.0", "date-fns-tz": "^3.2.0", "defu": "^6.1.4", "lodash-es": "^4.17.21", "maska": "^3.1.1", "url-join": "^5.0.0" } }, "sha512-QrdAJg//6zUHSHIu/w4XW/ObDeU6PP3vg4PruNi9rS+DQ4cJ242iBQ30bxmHH5yHrtWgqITrxMNz4JFweR0ymA=="],
188
188
 
189
189
  "@finema/eslint-config": ["@finema/eslint-config@2.0.4", "", { "dependencies": { "eslint-plugin-better-tailwindcss": "^3.7.10", "eslint-plugin-tailwindcss": "^3.18.2", "eslint-plugin-unused-imports": "^4.2.0" }, "peerDependencies": { "eslint": "^9.37.0" } }, "sha512-kKznMgbsOfPPg+td53dK36I3YFo6Ji4GAwKbVS2pimuQfcJT4mbgnEXCuW1Q/uNvUaFItr1NCSSD1LtEQTNNug=="],
190
190
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@finema/finework-layer",
3
3
  "type": "module",
4
- "version": "1.0.63",
4
+ "version": "1.0.65",
5
5
  "main": "./nuxt.config.ts",
6
6
  "scripts": {
7
7
  "dev": "nuxi dev .playground -o",
@@ -30,7 +30,7 @@
30
30
  "vue": "latest"
31
31
  },
32
32
  "dependencies": {
33
- "@finema/core": "^3.16.5"
33
+ "@finema/core": "^3.16.9"
34
34
  },
35
35
  "lint-staged": {
36
36
  "*": "eslint"