add pocketbase schema

This commit is contained in:
Travis Shears 2024-07-07 13:55:25 +02:00
parent 979196c50c
commit 3ffbfd9cd4

View file

@ -0,0 +1,334 @@
[
{
"id": "q2muzbfbe0prwtq",
"name": "micro_blog_images",
"type": "base",
"system": false,
"schema": [
{
"system": false,
"id": "vxk5nvpj",
"name": "image",
"type": "file",
"required": true,
"presentable": false,
"unique": false,
"options": {
"mimeTypes": [],
"thumbs": [],
"maxSelect": 1,
"maxSize": 5242880,
"protected": false
}
},
{
"system": false,
"id": "bfchfpvg",
"name": "remoteURL",
"type": "text",
"required": true,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
},
{
"system": false,
"id": "x0w71b0f",
"name": "alt",
"type": "text",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
}
],
"indexes": [],
"listRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"viewRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"createRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"updateRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"deleteRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"options": {}
},
{
"id": "et5xkc3wskwgn6z",
"name": "micro_blog_posts",
"type": "base",
"system": false,
"schema": [
{
"system": false,
"id": "rhj5yu4o",
"name": "remoteId",
"type": "text",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
},
{
"system": false,
"id": "0v0xfrcw",
"name": "authorId",
"type": "text",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
},
{
"system": false,
"id": "1wotvsft",
"name": "posted",
"type": "date",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": "",
"max": ""
}
},
{
"system": false,
"id": "tiibtb0a",
"name": "source",
"type": "select",
"required": false,
"presentable": false,
"unique": false,
"options": {
"maxSelect": 1,
"values": [
"pleroma",
"blue_sky",
"mastodon",
"pixelfed",
"nostr"
]
}
},
{
"system": false,
"id": "i5mp2rta",
"name": "tags",
"type": "relation",
"required": false,
"presentable": false,
"unique": false,
"options": {
"collectionId": "5v5587x9ykiwtx0",
"cascadeDelete": false,
"minSelect": null,
"maxSelect": null,
"displayFields": null
}
},
{
"system": false,
"id": "gbpqqbex",
"name": "fullPost",
"type": "json",
"required": false,
"presentable": false,
"unique": false,
"options": {
"maxSize": 2000000
}
},
{
"system": false,
"id": "hgvtvwz7",
"name": "images",
"type": "relation",
"required": false,
"presentable": false,
"unique": false,
"options": {
"collectionId": "q2muzbfbe0prwtq",
"cascadeDelete": false,
"minSelect": null,
"maxSelect": null,
"displayFields": null
}
}
],
"indexes": [],
"listRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"viewRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"createRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"updateRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"deleteRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"options": {}
},
{
"id": "5v5587x9ykiwtx0",
"name": "micro_blog_tags",
"type": "base",
"system": false,
"schema": [
{
"system": false,
"id": "qfycdngr",
"name": "tag",
"type": "text",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
}
],
"indexes": [
"CREATE UNIQUE INDEX `idx_UKnAnvX` ON `micro_blog_tags` (`tag`)"
],
"listRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"viewRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"createRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"updateRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"deleteRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_write\"",
"options": {}
},
{
"id": "4v3trkzpxx0uhh1",
"name": "micro_blog_tags_aggregated",
"type": "view",
"system": false,
"schema": [
{
"system": false,
"id": "eupcfslk",
"name": "tag",
"type": "text",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
},
{
"system": false,
"id": "op8ev1wi",
"name": "totalPosts",
"type": "json",
"required": false,
"presentable": false,
"unique": false,
"options": {
"maxSize": 1
}
}
],
"indexes": [],
"listRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"viewRule": "@request.auth.access_v2 ~ \"all\" || @request.auth.access_v2 ~ \"micro_blog_read\"",
"createRule": null,
"updateRule": null,
"deleteRule": null,
"options": {
"query": "SELECT tt.id, tt.tag, \n (SELECT COUNT(*) FROM micro_blog_posts pt WHERE pt.tags LIKE '%'|| tt.id ||'%') AS totalPosts\nFROM micro_blog_tags tt;"
}
},
{
"id": "_pb_users_auth_",
"name": "users",
"type": "auth",
"system": false,
"schema": [
{
"system": false,
"id": "users_name",
"name": "name",
"type": "text",
"required": false,
"presentable": false,
"unique": false,
"options": {
"min": null,
"max": null,
"pattern": ""
}
},
{
"system": false,
"id": "users_avatar",
"name": "avatar",
"type": "file",
"required": false,
"presentable": false,
"unique": false,
"options": {
"mimeTypes": [
"image/jpeg",
"image/png",
"image/svg+xml",
"image/gif",
"image/webp"
],
"thumbs": null,
"maxSelect": 1,
"maxSize": 5242880,
"protected": false
}
},
{
"system": false,
"id": "my2h03kt",
"name": "access_v2",
"type": "select",
"required": false,
"presentable": false,
"unique": false,
"options": {
"maxSelect": 5,
"values": [
"all",
"micro_blog_read",
"micro_blog_write",
"cooking_read",
"cooking_write"
]
}
}
],
"indexes": [],
"listRule": "id = @request.auth.id",
"viewRule": "id = @request.auth.id",
"createRule": "",
"updateRule": "id = @request.auth.id",
"deleteRule": "id = @request.auth.id",
"options": {
"allowEmailAuth": true,
"allowOAuth2Auth": true,
"allowUsernameAuth": true,
"exceptEmailDomains": null,
"manageRule": null,
"minPasswordLength": 8,
"onlyEmailDomains": null,
"onlyVerified": false,
"requireEmail": false
}
}
]