{"version":3,"file":"plugin.cjs","sources":["../../src/runtime/plugin.ts"],"sourcesContent":["// @ts-ignore\r\nimport { defineNuxtPlugin, useRuntimeConfig } from \"#app\";\r\n// @ts-ignore\r\nimport type { NuxtApp } from \"#app\";\r\nimport { PermissionPlugin } from \"../index\";\r\n\r\nexport default defineNuxtPlugin(async (nuxtApp: NuxtApp) => {\r\n  const cfg = useRuntimeConfig().public.permission as any;\r\n\r\n  if (!cfg) {\r\n    console.warn(\"[v-permission] No configuration found\");\r\n    return;\r\n  }\r\n\r\n  let fetchFn: (() => Promise<string[]>) | undefined;\r\n\r\n  if (typeof cfg.fetchPermissions === \"string\") {\r\n    fetchFn = async () => {\r\n      try {\r\n        const r = await fetch(cfg.fetchPermissions);\r\n        if (!r.ok) {\r\n          throw new Error(`HTTP ${r.status}: ${r.statusText}`);\r\n        }\r\n        return await r.json();\r\n      } catch (e) {\r\n        console.error(\"[v-permission] Failed to fetch permissions:\", e);\r\n        return [];\r\n      }\r\n    };\r\n  } else if (typeof cfg.fetchPermissions === \"function\") {\r\n    fetchFn = cfg.fetchPermissions;\r\n  }\r\n\r\n  try {\r\n    nuxtApp.vueApp.use(PermissionPlugin as any, {\r\n      permissions: cfg.permissions,\r\n      developmentMode: cfg.developmentMode,\r\n      fetchPermissions: fetchFn,\r\n      persist: cfg.persist,\r\n    });\r\n  } catch (e) {\r\n    console.error(\"[v-permission] Failed to install plugin:\", e);\r\n  }\r\n});\r\n"],"names":["plugin","defineNuxtPlugin","nuxtApp","cfg","useRuntimeConfig","fetchFn","r","e","PermissionPlugin"],"mappings":"uLAMA,MAAAA,EAAeC,EAAAA,iBAAiB,MAAOC,GAAqB,CAC1D,MAAMC,EAAMC,EAAAA,mBAAmB,OAAO,WAEtC,GAAI,CAACD,EAAK,CACR,QAAQ,KAAK,uCAAuC,EACpD,MACF,CAEA,IAAIE,EAEA,OAAOF,EAAI,kBAAqB,SAClCE,EAAU,SAAY,CACpB,GAAI,CACF,MAAMC,EAAI,MAAM,MAAMH,EAAI,gBAAgB,EAC1C,GAAI,CAACG,EAAE,GACL,MAAM,IAAI,MAAM,QAAQA,EAAE,MAAM,KAAKA,EAAE,UAAU,EAAE,EAErD,OAAO,MAAMA,EAAE,KAAA,CACjB,OAASC,EAAG,CACV,eAAQ,MAAM,8CAA+CA,CAAC,EACvD,CAAA,CACT,CACF,EACS,OAAOJ,EAAI,kBAAqB,aACzCE,EAAUF,EAAI,kBAGhB,GAAI,CACFD,EAAQ,OAAO,IAAIM,mBAAyB,CAC1C,YAAaL,EAAI,YACjB,gBAAiBA,EAAI,gBACrB,iBAAkBE,EAClB,QAASF,EAAI,OAAA,CACd,CACH,OAASI,EAAG,CACV,QAAQ,MAAM,2CAA4CA,CAAC,CAC7D,CACF,CAAC"}