mirror of
https://github.com/penpot/penpot.git
synced 2025-08-03 16:08:34 +02:00
♻️ Rename collections to libraries.
And make them team dependent.
This commit is contained in:
parent
0ad2b13d76
commit
3ce9c8820f
19 changed files with 1068 additions and 766 deletions
|
@ -69,6 +69,12 @@ CREATE TRIGGER team__modified_at__tgr
|
|||
BEFORE UPDATE ON team
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
INSERT INTO team (id, name, photo, is_default)
|
||||
VALUES ('00000000-0000-0000-0000-000000000000'::uuid,
|
||||
'System Team',
|
||||
'',
|
||||
true);
|
||||
|
||||
|
||||
|
||||
CREATE TABLE team_profile_rel (
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
CREATE TABLE image_collection (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
profile_id uuid NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX image_collection__profile_id__idx
|
||||
ON image_collection(profile_id);
|
||||
|
||||
CREATE TRIGGER image_collection__modified_at__tgr
|
||||
BEFORE UPDATE ON image_collection
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE image (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
profile_id uuid NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
|
||||
collection_id uuid NOT NULL REFERENCES image_collection(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL,
|
||||
|
||||
path text NOT NULL,
|
||||
width int NOT NULL,
|
||||
height int NOT NULL,
|
||||
mtype text NOT NULL,
|
||||
|
||||
thumb_path text NOT NULL,
|
||||
thumb_width int NOT NULL,
|
||||
thumb_height int NOT NULL,
|
||||
thumb_quality int NOT NULL,
|
||||
thumb_mtype text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX image__profile_id__idx
|
||||
ON image(profile_id);
|
||||
|
||||
CREATE INDEX image__collection_id__idx
|
||||
ON image(collection_id);
|
||||
|
||||
CREATE TRIGGER image__modified_at__tgr
|
||||
BEFORE UPDATE ON image
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
CREATE TRIGGER image__on_delete__tgr
|
||||
AFTER DELETE ON image
|
||||
FOR EACH ROW EXECUTE PROCEDURE handle_delete();
|
||||
|
136
backend/resources/migrations/0005.libraries.sql
Normal file
136
backend/resources/migrations/0005.libraries.sql
Normal file
|
@ -0,0 +1,136 @@
|
|||
CREATE TABLE image_library (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
team_id uuid NOT NULL REFERENCES team(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX image_library__team_id__idx
|
||||
ON image_library(team_id);
|
||||
|
||||
CREATE TRIGGER image_library__modified_at__tgr
|
||||
BEFORE UPDATE ON image_library
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE image (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
library_id uuid NOT NULL REFERENCES image_library(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL,
|
||||
|
||||
path text NOT NULL,
|
||||
width int NOT NULL,
|
||||
height int NOT NULL,
|
||||
mtype text NOT NULL,
|
||||
|
||||
thumb_path text NOT NULL,
|
||||
thumb_width int NOT NULL,
|
||||
thumb_height int NOT NULL,
|
||||
thumb_quality int NOT NULL,
|
||||
thumb_mtype text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX image__library_id__idx
|
||||
ON image(library_id);
|
||||
|
||||
CREATE TRIGGER image__modified_at__tgr
|
||||
BEFORE UPDATE ON image
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
CREATE TRIGGER image__on_delete__tgr
|
||||
AFTER DELETE ON image
|
||||
FOR EACH ROW EXECUTE PROCEDURE handle_delete();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE icon_library (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
team_id uuid NOT NULL REFERENCES team(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX icon_colection__team_id__idx
|
||||
ON icon_library (team_id);
|
||||
|
||||
CREATE TRIGGER icon_library__modified_at__tgr
|
||||
BEFORE UPDATE ON icon_library
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE icon (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
library_id uuid REFERENCES icon_library(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
|
||||
name text NOT NULL,
|
||||
content text NOT NULL,
|
||||
metadata bytea NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX icon__library_id__idx
|
||||
ON icon(library_id);
|
||||
|
||||
CREATE TRIGGER icon__modified_at__tgr
|
||||
BEFORE UPDATE ON icon
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE color_library (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
team_id uuid NOT NULL REFERENCES team(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX color_colection__team_id__idx
|
||||
ON color_library (team_id);
|
||||
|
||||
CREATE TRIGGER color_library__modified_at__tgr
|
||||
BEFORE UPDATE ON color_library
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE color (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
library_id uuid REFERENCES color_library(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL,
|
||||
content text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX color__library_id__idx
|
||||
ON color(library_id);
|
||||
|
||||
CREATE TRIGGER color__modified_at__tgr
|
||||
BEFORE UPDATE ON color
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
|
@ -1,44 +0,0 @@
|
|||
CREATE TABLE icon_collection (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
profile_id uuid NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX icon_colection__profile_id__idx
|
||||
ON icon_collection (profile_id);
|
||||
|
||||
CREATE TRIGGER icon_collection__modified_at__tgr
|
||||
BEFORE UPDATE ON icon_collection
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE icon (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
profile_id uuid NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
collection_id uuid REFERENCES icon_collection(id)
|
||||
ON DELETE CASCADE,
|
||||
|
||||
name text NOT NULL,
|
||||
content text NOT NULL,
|
||||
metadata bytea NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX icon__profile_id__idx
|
||||
ON icon(profile_id);
|
||||
CREATE INDEX icon__collection_id__idx
|
||||
ON icon(collection_id);
|
||||
|
||||
CREATE TRIGGER icon__modified_at__tgr
|
||||
BEFORE UPDATE ON icon
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
|
@ -1,43 +0,0 @@
|
|||
CREATE TABLE color_collection (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
profile_id uuid NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
name text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX color_colection__profile_id__idx
|
||||
ON color_collection (profile_id);
|
||||
|
||||
CREATE TRIGGER color_collection__modified_at__tgr
|
||||
BEFORE UPDATE ON color_collection
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
||||
|
||||
|
||||
|
||||
CREATE TABLE color (
|
||||
id uuid PRIMARY KEY DEFAULT uuid_generate_v4(),
|
||||
profile_id uuid NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
|
||||
|
||||
created_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
|
||||
deleted_at timestamptz DEFAULT NULL,
|
||||
|
||||
collection_id uuid REFERENCES color_collection(id)
|
||||
ON DELETE CASCADE,
|
||||
|
||||
name text NOT NULL,
|
||||
content text NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX color__profile_id__idx
|
||||
ON color(profile_id);
|
||||
CREATE INDEX color__collection_id__idx
|
||||
ON color(collection_id);
|
||||
|
||||
CREATE TRIGGER color__modified_at__tgr
|
||||
BEFORE UPDATE ON color
|
||||
FOR EACH ROW EXECUTE PROCEDURE update_modified_at();
|
Loading…
Add table
Add a link
Reference in a new issue