@getcommunity/gc-validators 0.0.188 → 0.0.190
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/dist/{client-content-pillar.document-BOeU2enH.d.cts → client-content-pillar.document-BmtrCuzt.d.cts} +1 -1
- package/dist/{client-content-pillar.document-BkkB5xMX.d.ts → client-content-pillar.document-XoX1rNnY.d.ts} +1 -1
- package/dist/constants/index.cjs +7 -0
- package/dist/constants/index.d.cts +1 -0
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.js +1 -0
- package/dist/constants/permission.constants.cjs.map +1 -0
- package/dist/constants/permission.constants.js.map +1 -0
- package/dist/index.cjs +0 -7
- package/dist/index.d.cts +3 -5
- package/dist/index.d.ts +3 -5
- package/dist/index.js +0 -1
- package/dist/schemas/client-user.schemas.cjs +4 -5
- package/dist/schemas/client-user.schemas.cjs.map +1 -1
- package/dist/schemas/client-user.schemas.d.cts +1 -1
- package/dist/schemas/client-user.schemas.d.ts +1 -1
- package/dist/schemas/client-user.schemas.js +1 -2
- package/dist/schemas/client-user.schemas.js.map +1 -1
- package/dist/schemas/index.d.cts +1 -1
- package/dist/schemas/index.d.ts +1 -1
- package/dist/types/documents/client-content-pillar.document.d.cts +2 -2
- package/dist/types/documents/client-content-pillar.document.d.ts +2 -2
- package/dist/types/documents/client-media-platform-content-type.document.d.cts +2 -2
- package/dist/types/documents/client-media-platform-content-type.document.d.ts +2 -2
- package/dist/types/documents/client-media-platform.document.d.cts +2 -2
- package/dist/types/documents/client-media-platform.document.d.ts +2 -2
- package/dist/types/documents/client-project.document.d.cts +2 -2
- package/dist/types/documents/client-project.document.d.ts +2 -2
- package/dist/types/documents/client-report.document.d.cts +2 -2
- package/dist/types/documents/client-report.document.d.ts +2 -2
- package/dist/types/documents/client-styleguide.document.d.cts +2 -2
- package/dist/types/documents/client-styleguide.document.d.ts +2 -2
- package/dist/types/documents/client-user.document.d.cts +2 -2
- package/dist/types/documents/client-user.document.d.ts +2 -2
- package/dist/types/documents/client.document.d.cts +2 -2
- package/dist/types/documents/client.document.d.ts +2 -2
- package/dist/types/documents/comment.document.d.cts +1 -1
- package/dist/types/documents/comment.document.d.ts +1 -1
- package/dist/types/documents/content-pillar.document.d.cts +2 -2
- package/dist/types/documents/content-pillar.document.d.ts +2 -2
- package/dist/types/documents/gcflytour-snap.document.d.cts +2 -2
- package/dist/types/documents/gcflytour-snap.document.d.ts +2 -2
- package/dist/types/documents/gcflytour.document.d.cts +2 -2
- package/dist/types/documents/gcflytour.document.d.ts +2 -2
- package/dist/types/documents/index.d.cts +2 -2
- package/dist/types/documents/index.d.ts +2 -2
- package/dist/types/documents/media-content-type.document.d.cts +2 -2
- package/dist/types/documents/media-content-type.document.d.ts +2 -2
- package/dist/types/documents/media-platform.document.d.cts +2 -2
- package/dist/types/documents/media-platform.document.d.ts +2 -2
- package/dist/types/documents/permission.document.d.cts +2 -2
- package/dist/types/documents/permission.document.d.ts +2 -2
- package/dist/types/documents/product-highlight.document.d.cts +2 -2
- package/dist/types/documents/product-highlight.document.d.ts +2 -2
- package/dist/types/documents/role.document.d.cts +2 -2
- package/dist/types/documents/role.document.d.ts +2 -2
- package/dist/types/documents/user-account.document.d.cts +2 -2
- package/dist/types/documents/user-account.document.d.ts +2 -2
- package/dist/types/documents/user.document.d.cts +2 -2
- package/dist/types/documents/user.document.d.ts +2 -2
- package/dist/types/documents/utm-tracking-link.document.d.cts +2 -2
- package/dist/types/documents/utm-tracking-link.document.d.ts +2 -2
- package/dist/types/index.cjs +7 -0
- package/dist/types/index.d.cts +3 -2
- package/dist/types/index.d.ts +3 -2
- package/dist/types/index.js +1 -0
- package/dist/types/permissions/index.cjs +14 -0
- package/dist/types/permissions/index.d.cts +19 -0
- package/dist/types/permissions/index.d.ts +19 -0
- package/dist/types/permissions/index.js +3 -0
- package/dist/{permissions → types/permissions}/permission.types.d.cts +18 -18
- package/dist/{permissions → types/permissions}/permission.types.d.ts +18 -18
- package/dist/{permissions/permission.abac.cjs → utilities/permission.utilities.cjs} +10 -2
- package/dist/utilities/permission.utilities.cjs.map +1 -0
- package/dist/{permissions/permission.abac.d.cts → utilities/permission.utilities.d.cts} +5 -8
- package/dist/{permissions/permission.abac.d.ts → utilities/permission.utilities.d.ts} +5 -8
- package/dist/{permissions/permission.abac.js → utilities/permission.utilities.js} +10 -3
- package/dist/utilities/permission.utilities.js.map +1 -0
- package/package.json +30 -11
- package/dist/permissions/index.cjs +0 -35
- package/dist/permissions/index.d.cts +0 -21
- package/dist/permissions/index.d.ts +0 -21
- package/dist/permissions/index.js +0 -6
- package/dist/permissions/permission.abac.cjs.map +0 -1
- package/dist/permissions/permission.abac.js.map +0 -1
- package/dist/permissions/permission.constants.cjs.map +0 -1
- package/dist/permissions/permission.constants.js.map +0 -1
- package/dist/permissions/permission.utilities.cjs +0 -15
- package/dist/permissions/permission.utilities.cjs.map +0 -1
- package/dist/permissions/permission.utilities.d.cts +0 -29
- package/dist/permissions/permission.utilities.d.ts +0 -29
- package/dist/permissions/permission.utilities.js +0 -13
- package/dist/permissions/permission.utilities.js.map +0 -1
- /package/dist/{permissions → constants}/permission.constants.cjs +0 -0
- /package/dist/{permissions → constants}/permission.constants.d.cts +0 -0
- /package/dist/{permissions → constants}/permission.constants.d.ts +0 -0
- /package/dist/{permissions → constants}/permission.constants.js +0 -0
- /package/dist/{permissions → types/permissions}/index.cjs.map +0 -0
- /package/dist/{permissions → types/permissions}/index.js.map +0 -0
- /package/dist/{permissions → types/permissions}/permission.types.cjs +0 -0
- /package/dist/{permissions → types/permissions}/permission.types.cjs.map +0 -0
- /package/dist/{permissions → types/permissions}/permission.types.js +0 -0
- /package/dist/{permissions → types/permissions}/permission.types.js.map +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/permissions/permission.abac.ts"],"names":[],"mappings":"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","file":"permission.abac.cjs","sourcesContent":["/**\n * Attribute-based access control (ABAC) permissions\n *\n * @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts\n */\n\nimport { RolesWithPermissions } from \"./permission.types\"\n\nexport const ROLE_PERMISSIONS = {\n authenticated: {\n \"user-account\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: false,\n billing: false,\n owner: false,\n manager: false,\n admin: false,\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-user\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-project\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false,\n assign: false\n },\n \"client-report\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-styleguide\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n gcflytour: {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"gcflytour-snap\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n }\n },\n public: {\n \"user-account\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n comment: {\n list: true,\n create: false,\n update: false,\n delete: false,\n report: false\n },\n client: {\n access: false,\n billing: false,\n owner: false,\n manager: false,\n admin: false,\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-user\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-project\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false,\n assign: false\n },\n \"client-report\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-styleguide\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n gcflytour: {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"gcflytour-snap\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n }\n },\n employee: {\n \"user-account\": {\n list: true,\n create: false,\n read: true,\n update: (u, p, d) => u.account.documentId === d?.documentId,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: (u, p, d) => p.scopes.includes(\"client:access\"),\n billing: (u, p, d) => p.scopes.includes(\"client:billing\"),\n owner: (u, p, d) => p.scopes.includes(\"client:owner\"),\n manager: (u, p, d) => p.scopes.includes(\"client:manager\"),\n admin: (u, p, d) => p.scopes.includes(\"client:admin\"),\n list: (u, p, d) => p.scopes.includes(\"client:access\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client:access\"),\n update: (u, p, d) => p.scopes.includes(\"client:manager\"),\n delete: false\n },\n \"client-user\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false,\n verify: true\n },\n \"client-content-pillar\": {\n list: (u, p, d) => p.scopes.includes(\"client-content-pillar:list\"),\n create: (u, p) => p.scopes.includes(\"client-content-pillar:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-content-pillar:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-content-pillar:update\"),\n delete: false\n },\n \"client-media-platform\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-media-platform:update\"),\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform-content-type:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:read\"),\n update: (u, p, d) =>\n p.scopes.includes(\"client-media-platform-content-type:update\"),\n delete: false\n },\n \"client-project\": {\n list: (u, p, d) => p.scopes.includes(\"client-project:list\"),\n create: (u, p) => p.scopes.includes(\"client-project:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-project:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-project:update\"),\n delete: false,\n assign: (u, p, d) => p.scopes.includes(\"client-project:assign\")\n },\n \"client-report\": {\n list: (u, p, d) => p.scopes.includes(\"client-report:list\"),\n create: (u, p) => p.scopes.includes(\"client-report:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-report:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-report:update\"),\n delete: false\n },\n \"client-styleguide\": {\n list: (u, p, d) => p.scopes.includes(\"client-styleguide:list\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client-styleguide:read\"),\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: (u, p, d) => p.scopes.includes(\"utm-tracking-link:list\"),\n create: (u, p) => p.scopes.includes(\"utm-tracking-link:create\"),\n read: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:read\"),\n update: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:update\"),\n delete: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:delete\")\n },\n gcflytour: {\n list: true,\n create: (u, p) => p.scopes.includes(\"gcflytour:create\"),\n read: true,\n update: (u, p, d) => p.scopes.includes(\"gcflytour:update\"),\n delete: (u, p, d) => p.scopes.includes(\"gcflytour:delete\")\n },\n \"gcflytour-snap\": {\n list: true,\n create: (u, p) => p.scopes.includes(\"gcflytour-snap:create\"),\n read: true,\n update: (u, p, d) => p.scopes.includes(\"gcflytour-snap:update\"),\n delete: (u, p, d) => p.scopes.includes(\"gcflytour-snap:delete\")\n }\n },\n manager: {\n \"user-account\": {\n list: true,\n create: false,\n read: true,\n update: (u, p, d) => u.account.documentId === d?.documentId,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: true,\n billing: true,\n owner: true,\n manager: true,\n admin: true,\n list: true,\n create: true,\n read: true,\n update: true,\n delete: false\n },\n \"client-user\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true,\n verify: true\n },\n \"client-content-pillar\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-media-platform\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-media-platform-content-type\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-project\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true,\n assign: true\n },\n \"client-report\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-styleguide\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"content-pillar\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"media-platform\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"media-content-type\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"utm-tracking-link\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n gcflytour: {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"gcflytour-snap\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n }\n },\n client: {\n \"user-account\": {\n list: true,\n create: false,\n read: true,\n update: (u, p, d) => u.account.documentId === d?.documentId,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: (u, p, d) => p.scopes.includes(\"client:access\"),\n billing: (u, p, d) => p.scopes.includes(\"client:billing\"),\n owner: (u, p, d) => p.scopes.includes(\"client:owner\"),\n manager: (u, p, d) => p.scopes.includes(\"client:manager\"),\n admin: (u, p, d) => p.scopes.includes(\"client:admin\"),\n list: (u, p, d) => p.scopes.includes(\"client:access\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client:access\"),\n update: (u, p, d) => p.scopes.includes(\"client:manager\"),\n delete: false\n },\n \"client-user\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false,\n verify: true\n },\n \"client-content-pillar\": {\n list: (u, p, d) => p.scopes.includes(\"client-content-pillar:list\"),\n create: (u, p) => p.scopes.includes(\"client-content-pillar:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-content-pillar:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-content-pillar:update\"),\n delete: false\n },\n \"client-media-platform\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-media-platform:update\"),\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform-content-type:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:read\"),\n update: (u, p, d) =>\n p.scopes.includes(\"client-media-platform-content-type:update\"),\n delete: false\n },\n \"client-project\": {\n list: (u, p, d) => p.scopes.includes(\"client-project:list\"),\n create: (u, p) => p.scopes.includes(\"client-project:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-project:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-project:update\"),\n delete: false,\n assign: (u, p, d) => p.scopes.includes(\"client-project:assign\")\n },\n \"client-report\": {\n list: (u, p, d) => p.scopes.includes(\"client-report:list\"),\n create: (u, p) => p.scopes.includes(\"client-report:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-report:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-report:update\"),\n delete: false\n },\n \"client-styleguide\": {\n list: (u, p, d) => p.scopes.includes(\"client-styleguide:list\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client-styleguide:read\"),\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: (u, p, d) => p.scopes.includes(\"utm-tracking-link:list\"),\n create: (u, p) => p.scopes.includes(\"utm-tracking-link:create\"),\n read: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:read\"),\n update: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:update\"),\n delete: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:delete\")\n },\n gcflytour: {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"gcflytour-snap\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n }\n }\n} as const satisfies RolesWithPermissions\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/permissions/permission.abac.ts"],"names":[],"mappings":"AAQO,MAAM,gBAAA,GAAmB;AAAA,EAC9B,aAAA,EAAe;AAAA,IACb,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AApBxB,QAAA,IAAA,EAAA;AAoB2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AArBxB,QAAA,IAAA,EAAA;AAqB2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,OAAA,EAAS,KAAA;AAAA,MACT,KAAA,EAAO,KAAA;AAAA,MACP,OAAA,EAAS,KAAA;AAAA,MACT,KAAA,EAAO,KAAA;AAAA,MACP,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,aAAA,EAAe;AAAA,MACb,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oCAAA,EAAsC;AAAA,MACpC,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oBAAA,EAAsB;AAAA,MACpB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA;AACV,GACF;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,OAAA,EAAS,KAAA;AAAA,MACT,KAAA,EAAO,KAAA;AAAA,MACP,OAAA,EAAS,KAAA;AAAA,MACT,KAAA,EAAO,KAAA;AAAA,MACP,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,aAAA,EAAe;AAAA,MACb,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oCAAA,EAAsC;AAAA,MACpC,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oBAAA,EAAsB;AAAA,MACpB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,KAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA;AACV,GACF;AAAA,EACA,QAAA,EAAU;AAAA,IACR,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,OAAA,CAAQ,gBAAe,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,UAAA,CAAA;AAAA,MACjD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AApQxB,QAAA,IAAA,EAAA;AAoQ2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AArQxB,QAAA,IAAA,EAAA;AAqQ2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,eAAe,CAAA;AAAA,MACtD,OAAA,EAAS,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,gBAAgB,CAAA;AAAA,MACxD,KAAA,EAAO,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,cAAc,CAAA;AAAA,MACpD,OAAA,EAAS,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,gBAAgB,CAAA;AAAA,MACxD,KAAA,EAAO,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,cAAc,CAAA;AAAA,MACpD,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,eAAe,CAAA;AAAA,MACpD,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,eAAe,CAAA;AAAA,MACpD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,gBAAgB,CAAA;AAAA,MACvD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,aAAA,EAAe;AAAA,MACb,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MAClE,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MACrE,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MAClE,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MACrE,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oCAAA,EAAsC;AAAA,MACpC,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,yCAAyC,CAAA;AAAA,MAC9E,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,2CAA2C,CAAA;AAAA,MAC/E,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,yCAAyC,CAAA;AAAA,MAC9E,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MACb,CAAA,CAAE,MAAA,CAAO,SAAS,2CAA2C,CAAA;AAAA,MAC/D,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,qBAAqB,CAAA;AAAA,MAC1D,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB,CAAA;AAAA,MAC3D,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,qBAAqB,CAAA;AAAA,MAC1D,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB,CAAA;AAAA,MAC9D,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB;AAAA,KAChE;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,oBAAoB,CAAA;AAAA,MACzD,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,sBAAsB,CAAA;AAAA,MAC1D,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,oBAAoB,CAAA;AAAA,MACzD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,sBAAsB,CAAA;AAAA,MAC7D,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAC7D,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAC7D,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oBAAA,EAAsB;AAAA,MACpB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAC7D,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,0BAA0B,CAAA;AAAA,MAC9D,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AAhWtB,QAAA,IAAA,EAAA;AAiWQ,QAAA,OAAA,CAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAA,KAAH,mBAAY,UAAA,MAAe,CAAA,CAAE,cAC7B,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAAA,CAAA;AAAA,MAC5C,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AAnWxB,QAAA,IAAA,EAAA;AAoWQ,QAAA,OAAA,CAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAA,KAAH,mBAAY,UAAA,MAAe,CAAA,CAAE,cAC7B,CAAA,CAAE,MAAA,CAAO,SAAS,0BAA0B,CAAA;AAAA,MAAA,CAAA;AAAA,MAC9C,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AAtWxB,QAAA,IAAA,EAAA;AAuWQ,QAAA,OAAA,CAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAA,KAAH,mBAAY,UAAA,MAAe,CAAA,CAAE,cAC7B,CAAA,CAAE,MAAA,CAAO,SAAS,0BAA0B,CAAA;AAAA,MAAA;AAAA,KAChD;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,IAAA;AAAA,MACN,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,kBAAkB,CAAA;AAAA,MACtD,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,kBAAkB,CAAA;AAAA,MACzD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,kBAAkB;AAAA,KAC3D;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB,CAAA;AAAA,MAC3D,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB,CAAA;AAAA,MAC9D,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB;AAAA;AAChE,GACF;AAAA,EACA,OAAA,EAAS;AAAA,IACP,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,OAAA,CAAQ,gBAAe,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,UAAA,CAAA;AAAA,MACjD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AApYxB,QAAA,IAAA,EAAA;AAoY2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AArYxB,QAAA,IAAA,EAAA;AAqY2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,OAAA,EAAS,IAAA;AAAA,MACT,KAAA,EAAO,IAAA;AAAA,MACP,OAAA,EAAS,IAAA;AAAA,MACT,KAAA,EAAO,IAAA;AAAA,MACP,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,aAAA,EAAe;AAAA,MACb,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oCAAA,EAAsC;AAAA,MACpC,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oBAAA,EAAsB;AAAA,MACpB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ;AAAA;AACV,GACF;AAAA,EACA,MAAA,EAAQ;AAAA,IACN,cAAA,EAAgB;AAAA,MACd,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,OAAA,CAAQ,gBAAe,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,UAAA,CAAA;AAAA,MACjD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,OAAA,EAAS;AAAA,MACP,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,IAAA;AAAA,MACR,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AA7fxB,QAAA,IAAA,EAAA;AA6f2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AA9fxB,QAAA,IAAA,EAAA;AA8f2B,QAAA,OAAA,CAAA,CAAE,EAAA,KAAO,MAAA,CAAA,CAAO,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,MAAA,KAAH,mBAAW,EAAE,CAAA;AAAA,MAAA,CAAA;AAAA,MAClD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,MAAA,EAAQ;AAAA,MACN,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,eAAe,CAAA;AAAA,MACtD,OAAA,EAAS,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,gBAAgB,CAAA;AAAA,MACxD,KAAA,EAAO,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,cAAc,CAAA;AAAA,MACpD,OAAA,EAAS,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,gBAAgB,CAAA;AAAA,MACxD,KAAA,EAAO,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,cAAc,CAAA;AAAA,MACpD,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,eAAe,CAAA;AAAA,MACpD,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,eAAe,CAAA;AAAA,MACpD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,gBAAgB,CAAA;AAAA,MACvD,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,aAAA,EAAe;AAAA,MACb,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MAClE,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MACrE,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,uBAAA,EAAyB;AAAA,MACvB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MAClE,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,4BAA4B,CAAA;AAAA,MACjE,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,8BAA8B,CAAA;AAAA,MACrE,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oCAAA,EAAsC;AAAA,MACpC,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,yCAAyC,CAAA;AAAA,MAC9E,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,2CAA2C,CAAA;AAAA,MAC/E,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,yCAAyC,CAAA;AAAA,MAC9E,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MACb,CAAA,CAAE,MAAA,CAAO,SAAS,2CAA2C,CAAA;AAAA,MAC/D,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,qBAAqB,CAAA;AAAA,MAC1D,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB,CAAA;AAAA,MAC3D,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,qBAAqB,CAAA;AAAA,MAC1D,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB,CAAA;AAAA,MAC9D,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,uBAAuB;AAAA,KAChE;AAAA,IACA,eAAA,EAAiB;AAAA,MACf,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,oBAAoB,CAAA;AAAA,MACzD,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,sBAAsB,CAAA;AAAA,MAC1D,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,oBAAoB,CAAA;AAAA,MACzD,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,sBAAsB,CAAA;AAAA,MAC7D,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAC7D,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAC7D,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,oBAAA,EAAsB;AAAA,MACpB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,mBAAA,EAAqB;AAAA,MACnB,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAC7D,QAAQ,CAAC,CAAA,EAAG,MAAM,CAAA,CAAE,MAAA,CAAO,SAAS,0BAA0B,CAAA;AAAA,MAC9D,IAAA,EAAM,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AAzlBtB,QAAA,IAAA,EAAA;AA0lBQ,QAAA,OAAA,CAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAA,KAAH,mBAAY,UAAA,MAAe,CAAA,CAAE,cAC7B,CAAA,CAAE,MAAA,CAAO,SAAS,wBAAwB,CAAA;AAAA,MAAA,CAAA;AAAA,MAC5C,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AA5lBxB,QAAA,IAAA,EAAA;AA6lBQ,QAAA,OAAA,CAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAA,KAAH,mBAAY,UAAA,MAAe,CAAA,CAAE,cAC7B,CAAA,CAAE,MAAA,CAAO,SAAS,0BAA0B,CAAA;AAAA,MAAA,CAAA;AAAA,MAC9C,MAAA,EAAQ,CAAC,CAAA,EAAG,CAAA,EAAG,CAAA,KAAG;AA/lBxB,QAAA,IAAA,EAAA;AAgmBQ,QAAA,OAAA,CAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAA,KAAH,mBAAY,UAAA,MAAe,CAAA,CAAE,cAC7B,CAAA,CAAE,MAAA,CAAO,SAAS,0BAA0B,CAAA;AAAA,MAAA;AAAA,KAChD;AAAA,IACA,SAAA,EAAW;AAAA,MACT,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA,KACV;AAAA,IACA,gBAAA,EAAkB;AAAA,MAChB,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,IAAA,EAAM,IAAA;AAAA,MACN,MAAA,EAAQ,KAAA;AAAA,MACR,MAAA,EAAQ;AAAA;AACV;AAEJ","file":"permission.abac.js","sourcesContent":["/**\n * Attribute-based access control (ABAC) permissions\n *\n * @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts\n */\n\nimport { RolesWithPermissions } from \"./permission.types\"\n\nexport const ROLE_PERMISSIONS = {\n authenticated: {\n \"user-account\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: false,\n billing: false,\n owner: false,\n manager: false,\n admin: false,\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-user\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-project\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false,\n assign: false\n },\n \"client-report\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-styleguide\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n gcflytour: {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"gcflytour-snap\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n }\n },\n public: {\n \"user-account\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n comment: {\n list: true,\n create: false,\n update: false,\n delete: false,\n report: false\n },\n client: {\n access: false,\n billing: false,\n owner: false,\n manager: false,\n admin: false,\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-user\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-project\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false,\n assign: false\n },\n \"client-report\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"client-styleguide\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: false,\n create: false,\n read: false,\n update: false,\n delete: false\n },\n gcflytour: {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"gcflytour-snap\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n }\n },\n employee: {\n \"user-account\": {\n list: true,\n create: false,\n read: true,\n update: (u, p, d) => u.account.documentId === d?.documentId,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: (u, p, d) => p.scopes.includes(\"client:access\"),\n billing: (u, p, d) => p.scopes.includes(\"client:billing\"),\n owner: (u, p, d) => p.scopes.includes(\"client:owner\"),\n manager: (u, p, d) => p.scopes.includes(\"client:manager\"),\n admin: (u, p, d) => p.scopes.includes(\"client:admin\"),\n list: (u, p, d) => p.scopes.includes(\"client:access\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client:access\"),\n update: (u, p, d) => p.scopes.includes(\"client:manager\"),\n delete: false\n },\n \"client-user\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false,\n verify: true\n },\n \"client-content-pillar\": {\n list: (u, p, d) => p.scopes.includes(\"client-content-pillar:list\"),\n create: (u, p) => p.scopes.includes(\"client-content-pillar:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-content-pillar:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-content-pillar:update\"),\n delete: false\n },\n \"client-media-platform\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-media-platform:update\"),\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform-content-type:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:read\"),\n update: (u, p, d) =>\n p.scopes.includes(\"client-media-platform-content-type:update\"),\n delete: false\n },\n \"client-project\": {\n list: (u, p, d) => p.scopes.includes(\"client-project:list\"),\n create: (u, p) => p.scopes.includes(\"client-project:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-project:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-project:update\"),\n delete: false,\n assign: (u, p, d) => p.scopes.includes(\"client-project:assign\")\n },\n \"client-report\": {\n list: (u, p, d) => p.scopes.includes(\"client-report:list\"),\n create: (u, p) => p.scopes.includes(\"client-report:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-report:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-report:update\"),\n delete: false\n },\n \"client-styleguide\": {\n list: (u, p, d) => p.scopes.includes(\"client-styleguide:list\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client-styleguide:read\"),\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: (u, p, d) => p.scopes.includes(\"utm-tracking-link:list\"),\n create: (u, p) => p.scopes.includes(\"utm-tracking-link:create\"),\n read: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:read\"),\n update: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:update\"),\n delete: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:delete\")\n },\n gcflytour: {\n list: true,\n create: (u, p) => p.scopes.includes(\"gcflytour:create\"),\n read: true,\n update: (u, p, d) => p.scopes.includes(\"gcflytour:update\"),\n delete: (u, p, d) => p.scopes.includes(\"gcflytour:delete\")\n },\n \"gcflytour-snap\": {\n list: true,\n create: (u, p) => p.scopes.includes(\"gcflytour-snap:create\"),\n read: true,\n update: (u, p, d) => p.scopes.includes(\"gcflytour-snap:update\"),\n delete: (u, p, d) => p.scopes.includes(\"gcflytour-snap:delete\")\n }\n },\n manager: {\n \"user-account\": {\n list: true,\n create: false,\n read: true,\n update: (u, p, d) => u.account.documentId === d?.documentId,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: true,\n billing: true,\n owner: true,\n manager: true,\n admin: true,\n list: true,\n create: true,\n read: true,\n update: true,\n delete: false\n },\n \"client-user\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true,\n verify: true\n },\n \"client-content-pillar\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-media-platform\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-media-platform-content-type\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-project\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true,\n assign: true\n },\n \"client-report\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"client-styleguide\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"content-pillar\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"media-platform\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"media-content-type\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"utm-tracking-link\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n gcflytour: {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n },\n \"gcflytour-snap\": {\n list: true,\n create: true,\n read: true,\n update: true,\n delete: true\n }\n },\n client: {\n \"user-account\": {\n list: true,\n create: false,\n read: true,\n update: (u, p, d) => u.account.documentId === d?.documentId,\n delete: false\n },\n comment: {\n list: true,\n create: true,\n update: (u, p, d) => u.id === Number(d?.author?.id),\n delete: (u, p, d) => u.id === Number(d?.author?.id),\n report: true\n },\n client: {\n access: (u, p, d) => p.scopes.includes(\"client:access\"),\n billing: (u, p, d) => p.scopes.includes(\"client:billing\"),\n owner: (u, p, d) => p.scopes.includes(\"client:owner\"),\n manager: (u, p, d) => p.scopes.includes(\"client:manager\"),\n admin: (u, p, d) => p.scopes.includes(\"client:admin\"),\n list: (u, p, d) => p.scopes.includes(\"client:access\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client:access\"),\n update: (u, p, d) => p.scopes.includes(\"client:manager\"),\n delete: false\n },\n \"client-user\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false,\n verify: true\n },\n \"client-content-pillar\": {\n list: (u, p, d) => p.scopes.includes(\"client-content-pillar:list\"),\n create: (u, p) => p.scopes.includes(\"client-content-pillar:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-content-pillar:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-content-pillar:update\"),\n delete: false\n },\n \"client-media-platform\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-media-platform:update\"),\n delete: false\n },\n \"client-media-platform-content-type\": {\n list: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:list\"),\n create: (u, p) => p.scopes.includes(\"client-media-platform-content-type:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-media-platform-content-type:read\"),\n update: (u, p, d) =>\n p.scopes.includes(\"client-media-platform-content-type:update\"),\n delete: false\n },\n \"client-project\": {\n list: (u, p, d) => p.scopes.includes(\"client-project:list\"),\n create: (u, p) => p.scopes.includes(\"client-project:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-project:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-project:update\"),\n delete: false,\n assign: (u, p, d) => p.scopes.includes(\"client-project:assign\")\n },\n \"client-report\": {\n list: (u, p, d) => p.scopes.includes(\"client-report:list\"),\n create: (u, p) => p.scopes.includes(\"client-report:create\"),\n read: (u, p, d) => p.scopes.includes(\"client-report:read\"),\n update: (u, p, d) => p.scopes.includes(\"client-report:update\"),\n delete: false\n },\n \"client-styleguide\": {\n list: (u, p, d) => p.scopes.includes(\"client-styleguide:list\"),\n create: false,\n read: (u, p, d) => p.scopes.includes(\"client-styleguide:read\"),\n update: false,\n delete: false\n },\n \"content-pillar\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-platform\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"media-content-type\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"utm-tracking-link\": {\n list: (u, p, d) => p.scopes.includes(\"utm-tracking-link:list\"),\n create: (u, p) => p.scopes.includes(\"utm-tracking-link:create\"),\n read: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:read\"),\n update: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:update\"),\n delete: (u, p, d) =>\n d?.creator?.documentId === u.documentId ||\n p.scopes.includes(\"utm-tracking-link:delete\")\n },\n gcflytour: {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n },\n \"gcflytour-snap\": {\n list: true,\n create: false,\n read: true,\n update: false,\n delete: false\n }\n }\n} as const satisfies RolesWithPermissions\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/permissions/permission.constants.ts"],"names":[],"mappings":";;AAQO,MAAM,yBAAA,GAA4B;AAAA,EACvC,QAAQ,CAAC,OAAA,EAAS,OAAA,EAAS,SAAA,EAAW,WAAW,QAAQ,CAAA;AAAA,EACzD,kBAAkB,CAAC,MAAA,EAAQ,UAAU,MAAA,EAAQ,QAAA,EAAU,UAAU,QAAQ,CAAA;AAAA,EACzE,yBAAyB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACtE,sCAAsC,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACnF,yBAAyB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACtE,iBAAiB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EAC9D,qBAAqB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EAClE,qBAAqB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EAClE,WAAW,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACxD,kBAAkB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ;AACjE;AAgBO,MAAM,qBAAqB,MAAA,CAAO,IAAA;AAAA,EACvC;AACF;AAEO,MAAM,uBAA4C,MAAA,CAAO,OAAA;AAAA,EAC9D;AACF,CAAA,CAAE,OAAA;AAAA,EAAQ,CAAC,CAAC,MAAA,EAAQ,OAAO,CAAA,KACzB,OAAA,CAAQ,GAAA,CAAI,CAAC,MAAA,KAAW,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,MAAM,CAAA,CAAuB;AACpE","file":"permission.constants.cjs","sourcesContent":["/**\n * Example usage of ClientEntityScope type\n * @reference https://youtube.com/shorts/zOseJFD447U?si=xX8DYEHdl9YtN7S4\n *\n * > const validScope: ClientEntityScope = \"utm-tracking-link:list\"; // ✅\n * > const invalidScope: ClientEntityScope = \"blog-post:import\"; // ❌ Type error!\n */\n\nexport const CLIENT_ENTITY_PERMISSIONS = {\n client: [\"admin\", \"owner\", \"manager\", \"billing\", \"access\"],\n \"client-project\": [\"list\", \"create\", \"read\", \"update\", \"delete\", \"assign\"],\n \"client-media-platform\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-media-platform-content-type\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-content-pillar\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-report\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-styleguide\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"utm-tracking-link\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n gcflytour: [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"gcflytour-snap\": [\"list\", \"create\", \"read\", \"update\", \"delete\"]\n} as const\n\nexport type ClientEntityKey = keyof typeof CLIENT_ENTITY_PERMISSIONS\n\nexport type ClientEntityActions<K extends ClientEntityKey = ClientEntityKey> =\n (typeof CLIENT_ENTITY_PERMISSIONS)[K][number]\n\ntype EntityActionJoin<K extends string, V extends string> = `${K}:${V}`\n\nexport type ClientEntityScope = {\n [K in ClientEntityKey]: EntityActionJoin<\n K,\n (typeof CLIENT_ENTITY_PERMISSIONS)[K][number]\n >\n}[ClientEntityKey]\n\nexport const CLIENT_ENTITY_KEYS = Object.keys(\n CLIENT_ENTITY_PERMISSIONS\n) as ClientEntityKey[]\n\nexport const CLIENT_ENTITY_SCOPES: ClientEntityScope[] = Object.entries(\n CLIENT_ENTITY_PERMISSIONS\n).flatMap(([entity, actions]) =>\n actions.map((action) => `${entity}:${action}` as ClientEntityScope)\n)\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/permissions/permission.constants.ts"],"names":[],"mappings":"AAQO,MAAM,yBAAA,GAA4B;AAAA,EACvC,QAAQ,CAAC,OAAA,EAAS,OAAA,EAAS,SAAA,EAAW,WAAW,QAAQ,CAAA;AAAA,EACzD,kBAAkB,CAAC,MAAA,EAAQ,UAAU,MAAA,EAAQ,QAAA,EAAU,UAAU,QAAQ,CAAA;AAAA,EACzE,yBAAyB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACtE,sCAAsC,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACnF,yBAAyB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACtE,iBAAiB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EAC9D,qBAAqB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EAClE,qBAAqB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EAClE,WAAW,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ,CAAA;AAAA,EACxD,kBAAkB,CAAC,MAAA,EAAQ,QAAA,EAAU,MAAA,EAAQ,UAAU,QAAQ;AACjE;AAgBO,MAAM,qBAAqB,MAAA,CAAO,IAAA;AAAA,EACvC;AACF;AAEO,MAAM,uBAA4C,MAAA,CAAO,OAAA;AAAA,EAC9D;AACF,CAAA,CAAE,OAAA;AAAA,EAAQ,CAAC,CAAC,MAAA,EAAQ,OAAO,CAAA,KACzB,OAAA,CAAQ,GAAA,CAAI,CAAC,MAAA,KAAW,CAAA,EAAG,MAAM,CAAA,CAAA,EAAI,MAAM,CAAA,CAAuB;AACpE","file":"permission.constants.js","sourcesContent":["/**\n * Example usage of ClientEntityScope type\n * @reference https://youtube.com/shorts/zOseJFD447U?si=xX8DYEHdl9YtN7S4\n *\n * > const validScope: ClientEntityScope = \"utm-tracking-link:list\"; // ✅\n * > const invalidScope: ClientEntityScope = \"blog-post:import\"; // ❌ Type error!\n */\n\nexport const CLIENT_ENTITY_PERMISSIONS = {\n client: [\"admin\", \"owner\", \"manager\", \"billing\", \"access\"],\n \"client-project\": [\"list\", \"create\", \"read\", \"update\", \"delete\", \"assign\"],\n \"client-media-platform\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-media-platform-content-type\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-content-pillar\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-report\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"client-styleguide\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"utm-tracking-link\": [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n gcflytour: [\"list\", \"create\", \"read\", \"update\", \"delete\"],\n \"gcflytour-snap\": [\"list\", \"create\", \"read\", \"update\", \"delete\"]\n} as const\n\nexport type ClientEntityKey = keyof typeof CLIENT_ENTITY_PERMISSIONS\n\nexport type ClientEntityActions<K extends ClientEntityKey = ClientEntityKey> =\n (typeof CLIENT_ENTITY_PERMISSIONS)[K][number]\n\ntype EntityActionJoin<K extends string, V extends string> = `${K}:${V}`\n\nexport type ClientEntityScope = {\n [K in ClientEntityKey]: EntityActionJoin<\n K,\n (typeof CLIENT_ENTITY_PERMISSIONS)[K][number]\n >\n}[ClientEntityKey]\n\nexport const CLIENT_ENTITY_KEYS = Object.keys(\n CLIENT_ENTITY_PERMISSIONS\n) as ClientEntityKey[]\n\nexport const CLIENT_ENTITY_SCOPES: ClientEntityScope[] = Object.entries(\n CLIENT_ENTITY_PERMISSIONS\n).flatMap(([entity, actions]) =>\n actions.map((action) => `${entity}:${action}` as ClientEntityScope)\n)\n"]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var permission_abac = require('./permission.abac');
|
|
4
|
-
|
|
5
|
-
function hasPermission(user, permissions, resource, action, data) {
|
|
6
|
-
var _a;
|
|
7
|
-
const permission = (_a = permission_abac.ROLE_PERMISSIONS[user.role.type][resource]) == null ? void 0 : _a[action];
|
|
8
|
-
if (permission == null) return false;
|
|
9
|
-
if (typeof permission === "boolean") return permission;
|
|
10
|
-
return permission(user, permissions, data);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
exports.hasPermission = hasPermission;
|
|
14
|
-
//# sourceMappingURL=permission.utilities.cjs.map
|
|
15
|
-
//# sourceMappingURL=permission.utilities.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/permissions/permission.utilities.ts"],"names":[],"mappings":";;;;AAUO,SAAS,aAAA,CACd,IAAA,EACA,WAAA,EACA,QAAA,EACA,QACA,IAAA,EACA;AAhBF,EAAA,IAAA,EAAA;AAiBE,EAAA,MAAM,UAAA,GAAA,CAAc,sCAClB,IAAA,CAAK,IAAA,CAAK,IACZ,CAAA,CAAE,QAAQ,MAFU,IAAA,GAAA,MAAA,GAAA,EAAA,CAEN,MAAA,CAAA;AACd,EAAA,IAAI,UAAA,IAAc,MAAM,OAAO,KAAA;AAE/B,EAAA,IAAI,OAAO,UAAA,KAAe,SAAA,EAAW,OAAO,UAAA;AAC5C,EAAA,OAAO,UAAA,CAAW,IAAA,EAAM,WAAA,EAAa,IAAI,CAAA;AAC3C","file":"permission.utilities.cjs","sourcesContent":["/**\n * Attribute-based access control (ABAC) permissions\n *\n * @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts\n */\n\nimport { AuthorizedUserDocument, ClientUserDocumentStatus, RoleType } from \"../types\"\nimport { ROLE_PERMISSIONS } from \"./permission.abac\"\nimport { Permissions, RolesWithPermissions } from \"./permission.types\"\n\nexport function hasPermission<Resource extends keyof Permissions>(\n user: AuthorizedUserDocument,\n permissions: ClientUserDocumentStatus,\n resource: Resource,\n action: Permissions[Resource][\"action\"],\n data?: Permissions[Resource][\"dataType\"]\n) {\n const permission = (ROLE_PERMISSIONS as RolesWithPermissions)[\n user.role.type as RoleType\n ][resource]?.[action]\n if (permission == null) return false\n\n if (typeof permission === \"boolean\") return permission\n return permission(user, permissions, data)\n}\n"]}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { A as AuthorizedUserDocument, g as ClientUserDocumentStatus } from '../client-content-pillar.document-BOeU2enH.cjs';
|
|
2
|
-
import { Permissions } from './permission.types.cjs';
|
|
3
|
-
import '../types/core/document.cjs';
|
|
4
|
-
import '../types/components/blocks/brand-logos.cjs';
|
|
5
|
-
import '../types/core/media.cjs';
|
|
6
|
-
import '../types/components/utm/utm-option.cjs';
|
|
7
|
-
import '../types/components/shared/rich-text-block.cjs';
|
|
8
|
-
import '../constants/client-project.constants.cjs';
|
|
9
|
-
import '../types/components/brand/styleguide-color.cjs';
|
|
10
|
-
import '../types/components/brand/styleguide-font.cjs';
|
|
11
|
-
import '../constants/font.constants.cjs';
|
|
12
|
-
import './permission.constants.cjs';
|
|
13
|
-
import '../types/components/blocks/fullscreen-content.cjs';
|
|
14
|
-
import '../types/components/blocks/video.cjs';
|
|
15
|
-
import '../types/documents/product.document.cjs';
|
|
16
|
-
import '../types/components/shared/seo.cjs';
|
|
17
|
-
import '../types/documents/tag.document.cjs';
|
|
18
|
-
import '../types/documents/comment.document.cjs';
|
|
19
|
-
import '../constants/comment.constants.cjs';
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Attribute-based access control (ABAC) permissions
|
|
23
|
-
*
|
|
24
|
-
* @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
declare function hasPermission<Resource extends keyof Permissions>(user: AuthorizedUserDocument, permissions: ClientUserDocumentStatus, resource: Resource, action: Permissions[Resource]["action"], data?: Permissions[Resource]["dataType"]): boolean;
|
|
28
|
-
|
|
29
|
-
export { hasPermission };
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { A as AuthorizedUserDocument, g as ClientUserDocumentStatus } from '../client-content-pillar.document-BkkB5xMX.js';
|
|
2
|
-
import { Permissions } from './permission.types.js';
|
|
3
|
-
import '../types/core/document.js';
|
|
4
|
-
import '../types/components/blocks/brand-logos.js';
|
|
5
|
-
import '../types/core/media.js';
|
|
6
|
-
import '../types/components/utm/utm-option.js';
|
|
7
|
-
import '../types/components/shared/rich-text-block.js';
|
|
8
|
-
import '../constants/client-project.constants.js';
|
|
9
|
-
import '../types/components/brand/styleguide-color.js';
|
|
10
|
-
import '../types/components/brand/styleguide-font.js';
|
|
11
|
-
import '../constants/font.constants.js';
|
|
12
|
-
import './permission.constants.js';
|
|
13
|
-
import '../types/components/blocks/fullscreen-content.js';
|
|
14
|
-
import '../types/components/blocks/video.js';
|
|
15
|
-
import '../types/documents/product.document.js';
|
|
16
|
-
import '../types/components/shared/seo.js';
|
|
17
|
-
import '../types/documents/tag.document.js';
|
|
18
|
-
import '../types/documents/comment.document.js';
|
|
19
|
-
import '../constants/comment.constants.js';
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Attribute-based access control (ABAC) permissions
|
|
23
|
-
*
|
|
24
|
-
* @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts
|
|
25
|
-
*/
|
|
26
|
-
|
|
27
|
-
declare function hasPermission<Resource extends keyof Permissions>(user: AuthorizedUserDocument, permissions: ClientUserDocumentStatus, resource: Resource, action: Permissions[Resource]["action"], data?: Permissions[Resource]["dataType"]): boolean;
|
|
28
|
-
|
|
29
|
-
export { hasPermission };
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { ROLE_PERMISSIONS } from './permission.abac';
|
|
2
|
-
|
|
3
|
-
function hasPermission(user, permissions, resource, action, data) {
|
|
4
|
-
var _a;
|
|
5
|
-
const permission = (_a = ROLE_PERMISSIONS[user.role.type][resource]) == null ? void 0 : _a[action];
|
|
6
|
-
if (permission == null) return false;
|
|
7
|
-
if (typeof permission === "boolean") return permission;
|
|
8
|
-
return permission(user, permissions, data);
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
export { hasPermission };
|
|
12
|
-
//# sourceMappingURL=permission.utilities.js.map
|
|
13
|
-
//# sourceMappingURL=permission.utilities.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/permissions/permission.utilities.ts"],"names":[],"mappings":";;AAUO,SAAS,aAAA,CACd,IAAA,EACA,WAAA,EACA,QAAA,EACA,QACA,IAAA,EACA;AAhBF,EAAA,IAAA,EAAA;AAiBE,EAAA,MAAM,UAAA,GAAA,CAAc,sBAClB,IAAA,CAAK,IAAA,CAAK,IACZ,CAAA,CAAE,QAAQ,MAFU,IAAA,GAAA,MAAA,GAAA,EAAA,CAEN,MAAA,CAAA;AACd,EAAA,IAAI,UAAA,IAAc,MAAM,OAAO,KAAA;AAE/B,EAAA,IAAI,OAAO,UAAA,KAAe,SAAA,EAAW,OAAO,UAAA;AAC5C,EAAA,OAAO,UAAA,CAAW,IAAA,EAAM,WAAA,EAAa,IAAI,CAAA;AAC3C","file":"permission.utilities.js","sourcesContent":["/**\n * Attribute-based access control (ABAC) permissions\n *\n * @reference https://github.com/WebDevSimplified/permission-system/blob/main/auth-abac.ts\n */\n\nimport { AuthorizedUserDocument, ClientUserDocumentStatus, RoleType } from \"../types\"\nimport { ROLE_PERMISSIONS } from \"./permission.abac\"\nimport { Permissions, RolesWithPermissions } from \"./permission.types\"\n\nexport function hasPermission<Resource extends keyof Permissions>(\n user: AuthorizedUserDocument,\n permissions: ClientUserDocumentStatus,\n resource: Resource,\n action: Permissions[Resource][\"action\"],\n data?: Permissions[Resource][\"dataType\"]\n) {\n const permission = (ROLE_PERMISSIONS as RolesWithPermissions)[\n user.role.type as RoleType\n ][resource]?.[action]\n if (permission == null) return false\n\n if (typeof permission === \"boolean\") return permission\n return permission(user, permissions, data)\n}\n"]}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|