@plutocms/supabase 0.11.3 → 0.12.0
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/.env.example +14 -0
- package/CHANGELOG.md +7 -0
- package/FEATURES.md +5 -1
- package/README.md +66 -0
- package/app/components/access/CopyButton.vue +24 -0
- package/app/components/access/DeleteRoleModal.vue +73 -0
- package/app/components/access/EditRolesSlideover.vue +134 -0
- package/app/components/access/InviteModal.vue +288 -0
- package/app/components/access/LinkField.vue +19 -0
- package/app/components/access/LinkModal.vue +29 -0
- package/app/components/access/RevokeModal.vue +83 -0
- package/app/components/access/RoleSlideover.vue +251 -0
- package/app/components/mail/AuthEmailsPanel.vue +108 -0
- package/app/pages/admin/(auth)/accept-invite.vue +155 -0
- package/app/pages/admin/settings/roles.vue +187 -0
- package/app/pages/admin/settings/users.vue +372 -0
- package/app/plugins/pluto-extension.ts +38 -1
- package/app/utils/access-ui.ts +100 -0
- package/app/utils/auth-driver.ts +3 -0
- package/app/utils/invite-link.ts +70 -0
- package/app/utils/supabase-project.ts +54 -0
- package/db/migrations/008_users_and_roles_admin.sql +462 -0
- package/i18n/locales/en.json +194 -1
- package/i18n/locales/pt-BR.json +194 -1
- package/package.json +3 -2
- package/server/api/access/capabilities.get.ts +17 -0
- package/server/api/access/roles/[key].delete.ts +18 -0
- package/server/api/access/roles/[key].put.ts +26 -0
- package/server/api/access/roles.get.ts +17 -0
- package/server/api/access/roles.post.ts +25 -0
- package/server/api/access/users/[id]/resend.post.ts +172 -0
- package/server/api/access/users/[id]/roles.delete.ts +22 -0
- package/server/api/access/users/[id]/roles.put.ts +24 -0
- package/server/api/access/users/invite-link.post.ts +50 -0
- package/server/api/access/users/invite.post.ts +201 -0
- package/server/api/access/users.get.ts +17 -0
- package/server/utils/access-errors.ts +148 -0
- package/server/utils/access-invite.ts +66 -0
- package/server/utils/access-mail.ts +354 -0
- package/server/utils/admin-guard.ts +4 -3
- package/server/utils/admin-role-guard.ts +44 -0
- package/server/utils/rate-limit.ts +84 -0
- package/server/utils/service-client.ts +18 -0
- package/server/utils/sign-in-link.ts +129 -0
- package/shared/types/access.d.ts +41 -0
- package/shared/types/supabase.ts +50 -9
package/shared/types/supabase.ts
CHANGED
|
@@ -355,20 +355,61 @@ export type Database = {
|
|
|
355
355
|
[_ in never]: never
|
|
356
356
|
}
|
|
357
357
|
Functions: {
|
|
358
|
-
|
|
359
|
-
Args: {
|
|
360
|
-
Returns:
|
|
358
|
+
add_user_roles: {
|
|
359
|
+
Args: { role_keys: string[]; target: string }
|
|
360
|
+
Returns: undefined
|
|
361
|
+
}
|
|
362
|
+
create_role: {
|
|
363
|
+
Args: {
|
|
364
|
+
p_capabilities: string[]
|
|
365
|
+
p_description: string
|
|
366
|
+
p_key: string
|
|
367
|
+
p_label: string
|
|
368
|
+
}
|
|
369
|
+
Returns: undefined
|
|
361
370
|
}
|
|
362
|
-
|
|
371
|
+
delete_role: { Args: { p_key: string }; Returns: number }
|
|
372
|
+
find_user_id_by_email: { Args: { p_email: string }; Returns: string }
|
|
373
|
+
has_capability: { Args: { cap: string }; Returns: boolean }
|
|
374
|
+
is_admin: { Args: Record<PropertyKey, never>; Returns: boolean }
|
|
375
|
+
list_roles: {
|
|
363
376
|
Args: Record<PropertyKey, never>
|
|
364
|
-
Returns:
|
|
377
|
+
Returns: {
|
|
378
|
+
capabilities: string[]
|
|
379
|
+
description: string
|
|
380
|
+
is_builtin: boolean
|
|
381
|
+
key: string
|
|
382
|
+
label: string
|
|
383
|
+
user_count: number
|
|
384
|
+
}[]
|
|
365
385
|
}
|
|
366
|
-
|
|
386
|
+
list_staff_users: {
|
|
367
387
|
Args: Record<PropertyKey, never>
|
|
368
|
-
Returns:
|
|
388
|
+
Returns: {
|
|
389
|
+
display_name: string
|
|
390
|
+
email: string
|
|
391
|
+
email_confirmed_at: string
|
|
392
|
+
id: string
|
|
393
|
+
invited_at: string
|
|
394
|
+
is_admin: boolean
|
|
395
|
+
last_sign_in_at: string
|
|
396
|
+
roles: string[]
|
|
397
|
+
username: string
|
|
398
|
+
}[]
|
|
369
399
|
}
|
|
370
|
-
|
|
371
|
-
|
|
400
|
+
my_capabilities: { Args: Record<PropertyKey, never>; Returns: string[] }
|
|
401
|
+
set_my_locale: { Args: { new_locale: string }; Returns: undefined }
|
|
402
|
+
set_user_roles: {
|
|
403
|
+
Args: { role_keys: string[]; target: string }
|
|
404
|
+
Returns: undefined
|
|
405
|
+
}
|
|
406
|
+
update_role: {
|
|
407
|
+
Args: {
|
|
408
|
+
p_capabilities: string[]
|
|
409
|
+
p_description: string
|
|
410
|
+
p_key: string
|
|
411
|
+
p_label: string
|
|
412
|
+
}
|
|
372
413
|
Returns: undefined
|
|
373
414
|
}
|
|
374
415
|
}
|