@opengis/fastify-table 1.1.30 → 1.1.31

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/Changelog.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # fastify-table
2
2
 
3
- ## 1.1.30 - 11.10.2024
3
+ ## 1.1.31 - 11.10.2024
4
4
 
5
5
  - move notification api to admin
6
6
 
@@ -40,7 +40,7 @@ export default async function insert(req) {
40
40
  table: add || table, data: req.body, uid,
41
41
  });
42
42
 
43
- // table_properties
43
+ // admin.custom_column
44
44
  await applyHook('afterInsert', { req, res });
45
45
  // form DataTable
46
46
  const extraKeys = Object.keys(formData)?.filter((key) => formData?.[key]?.type === 'DataTable' && formData?.[key]?.table && formData?.[key]?.parent_id && req.body[key].length);
@@ -38,7 +38,7 @@ export default async function update(req) {
38
38
  table: tokenData?.table || table, id: tokenData?.id || id, data: req.body, uid,
39
39
  });
40
40
 
41
- // table_properties
41
+ // admin.custom_column
42
42
  await applyHook('afterUpdate', { req, res });
43
43
 
44
44
  // form DataTable
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengis/fastify-table",
3
- "version": "1.1.30",
3
+ "version": "1.1.31",
4
4
  "type": "module",
5
5
  "description": "core-plugins",
6
6
  "main": "index.js",
@@ -1,7 +1,10 @@
1
1
  create schema if not exists admin;
2
2
  create schema if not exists setting;
3
3
 
4
- -- DROP TABLE admin.properties;
4
+ -- drop old
5
+ DROP TABLE IF EXISTS setting.extra_data;
6
+ DROP TABLE IF EXISTS admin.table_properties;
7
+
5
8
  CREATE TABLE IF NOT EXISTS admin.properties();
6
9
  ALTER TABLE admin.properties DROP CONSTRAINT IF EXISTS admin_properties_property_id_pkey;
7
10
  ALTER TABLE admin.properties ADD COLUMN IF NOT EXISTS property_id text NOT NULL DEFAULT next_id();
@@ -31,7 +34,6 @@ ALTER TABLE admin.properties ADD CONSTRAINT admin_properties_property_id_pkey PR
31
34
 
32
35
  COMMENT ON TABLE admin.properties IS 'Налаштування';
33
36
 
34
- -- DROP TABLE admin.user_properties;
35
37
  CREATE TABLE IF NOT EXISTS admin.user_properties();
36
38
  ALTER TABLE admin.user_properties DROP CONSTRAINT IF EXISTS admin_user_properties_property_id_pkey;
37
39
  alter table admin.user_properties drop constraint if exists user_properties_key_uid_unique;
@@ -40,13 +42,20 @@ ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS property_id text NOT
40
42
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS property_key text;
41
43
  COMMENT ON COLUMN admin.user_properties.property_key IS 'Ключ';
42
44
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS property_json json;
43
- COMMENT ON COLUMN admin.user_properties.property_json IS 'Значення налаштування';
45
+ COMMENT ON COLUMN admin.user_properties.property_json IS 'Налаштування json';
46
+ ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS property_text text;
47
+ COMMENT ON COLUMN admin.user_properties.property_text IS 'Налаштування text';
44
48
 
45
49
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS property_entity text;
46
50
  COMMENT ON COLUMN admin.user_properties.property_entity IS 'Сутність';
47
51
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS property_title text;
48
52
  COMMENT ON COLUMN admin.user_properties.property_title IS 'Назва';
49
53
 
54
+ ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS private boolean;
55
+ ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS private SET NOT NULL;
56
+ ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS private boolean default SET default true;
57
+ COMMENT ON COLUMN admin.user_properties.private IS 'Доступ лише для користувача, який додав дане налаштування';
58
+
50
59
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS uid text NOT NULL DEFAULT '1'::text;
51
60
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS editor_id text;
52
61
  ALTER TABLE admin.user_properties ADD COLUMN IF NOT EXISTS editor_date timestamp without time zone;
@@ -58,71 +67,74 @@ ALTER TABLE admin.user_properties ADD CONSTRAINT user_properties_key_uid_unique
58
67
 
59
68
  COMMENT ON TABLE admin.user_properties IS 'Налаштування користувача';
60
69
 
61
- -- DROP TABLE admin.table_properties;
62
- CREATE TABLE IF NOT EXISTS admin.table_properties();
63
- ALTER TABLE admin.table_properties DROP CONSTRAINT IF EXISTS admin_table_properties_property_id_pkey cascade;
64
- alter table admin.table_properties drop constraint if exists table_properties_key_type_entity_uid_unique;
65
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_id text NOT NULL DEFAULT next_id();
66
-
67
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_key text;
68
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_type text;
69
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_entity text;
70
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_title text;
71
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_format text;
72
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS property_data text;
73
-
74
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS uid text NOT NULL DEFAULT '1'::text;
75
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS editor_id text;
76
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS editor_date timestamp without time zone;
77
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS cdate timestamp without time zone DEFAULT now();
78
- ALTER TABLE admin.table_properties ADD COLUMN IF NOT EXISTS files json;
79
-
80
- ALTER TABLE admin.table_properties ADD CONSTRAINT admin_table_properties_property_id_pkey PRIMARY KEY(property_id);
81
- ALTER TABLE admin.table_properties ADD CONSTRAINT table_properties_key_type_entity_uid_unique UNIQUE (property_key,property_type,property_entity,uid);
82
-
83
- COMMENT ON TABLE admin.table_properties IS 'Налаштування таблиць користувача';
84
- COMMENT ON COLUMN admin.table_properties.property_key IS 'Ключ';
85
- COMMENT ON COLUMN admin.table_properties.property_type IS 'Тип (колонка/фільтр)';
86
- COMMENT ON COLUMN admin.table_properties.property_entity IS 'Сутність';
87
- COMMENT ON COLUMN admin.table_properties.property_title IS 'Назва';
88
- COMMENT ON COLUMN admin.table_properties.property_format IS 'Формат';
89
- COMMENT ON COLUMN admin.table_properties.property_data IS 'Класифікатор';
90
-
91
- CREATE TABLE if not exists setting.extra_data();
92
- ALTER TABLE setting.extra_data DROP CONSTRAINT IF EXISTS setting_extra_data_pkey;
93
- ALTER TABLE setting.extra_data DROP CONSTRAINT IF EXISTS setting_extra_data_property_id_fkey;
94
- ALTER TABLE setting.extra_data DROP CONSTRAINT IF EXISTS setting_extra_data_property_key_object_id_entity_unique;
95
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS extra_data_id text;
96
- ALTER TABLE setting.extra_data ALTER COLUMN extra_data_id SET NOT NULL;
97
- ALTER TABLE setting.extra_data ALTER COLUMN extra_data_id SET DEFAULT next_id();
98
-
99
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS property_id text;
100
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS property_key text;
101
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS property_entity text;
102
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS object_id text;
103
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS value_text text;
104
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS value_date timestamp without time zone;
105
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS uid text;
106
- ALTER TABLE setting.extra_data ALTER COLUMN uid SET DEFAULT '1'::text;
107
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS cdate timestamp without time zone;
108
- ALTER TABLE setting.extra_data ALTER COLUMN cdate SET DEFAULT date_trunc('seconds'::text, now());
109
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS editor_id text;
110
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS editor_date timestamp without time zone;
111
- ALTER TABLE setting.extra_data ADD COLUMN IF NOT EXISTS files json;
112
- ALTER TABLE setting.extra_data ADD CONSTRAINT setting_extra_data_pkey PRIMARY KEY (extra_data_id);
113
- ALTER TABLE setting.extra_data ADD CONSTRAINT setting_extra_data_property_id_fkey FOREIGN KEY (property_id) REFERENCES admin.table_properties (property_id) MATCH SIMPLE;
114
- ALTER TABLE setting.extra_data ADD CONSTRAINT setting_extra_data_property_key_object_id_entity_unique UNIQUE (property_key, object_id, property_entity);
115
-
116
- COMMENT ON TABLE setting.extra_data IS 'Значення користувацьких полів';
117
- COMMENT ON COLUMN setting.extra_data.property_id IS 'ID поля користувача';
118
- COMMENT ON COLUMN setting.extra_data.property_key IS 'Назва колонки';
119
- COMMENT ON COLUMN setting.extra_data.property_entity IS 'Таблиця';
120
- COMMENT ON COLUMN setting.extra_data.object_id IS 'Ідентифікатор об''єкту';
121
- COMMENT ON COLUMN setting.extra_data.value_text IS 'Значення';
122
- COMMENT ON COLUMN setting.extra_data.value_date IS 'Дата';
123
- COMMENT ON COLUMN setting.extra_data.uid IS 'ID користувача';
124
-
125
- CREATE INDEX IF NOT EXISTS setting_extra_data_cdate_btree_idx ON setting.extra_data USING btree (cdate);
126
- CREATE INDEX IF NOT EXISTS setting_extra_data_property_id_btree_idx ON setting.extra_data USING btree (property_id COLLATE pg_catalog."default");
127
- CREATE INDEX IF NOT EXISTS setting_extra_data_property_entity_btree_idx ON setting.extra_data USING btree (property_entity COLLATE pg_catalog."default");
128
- CREATE INDEX IF NOT EXISTS setting_extra_data_object_id_btree_idx ON setting.extra_data USING btree (object_id COLLATE pg_catalog."default");
70
+ drop table if exists admin.custom_column cascade;
71
+
72
+ CREATE TABLE IF NOT EXISTS admin.custom_column();
73
+ ALTER TABLE admin.custom_column DROP CONSTRAINT IF EXISTS admin_custom_column_column_id_pkey cascade;
74
+ alter table admin.custom_column drop constraint if exists admin_custom_column_key_entity_uid_unique;
75
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS column_id text NOT NULL DEFAULT next_id();
76
+
77
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS name text;
78
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS entity text;
79
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS title text;
80
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS format text;
81
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS data text;
82
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS filter boolean;
83
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS _table boolean;
84
+
85
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS uid text NOT NULL DEFAULT '1'::text;
86
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS editor_id text;
87
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS editor_date timestamp without time zone;
88
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS cdate timestamp without time zone DEFAULT now();
89
+ ALTER TABLE admin.custom_column ADD COLUMN IF NOT EXISTS files json;
90
+
91
+ ALTER TABLE admin.custom_column ADD CONSTRAINT admin_custom_column_column_id_pkey PRIMARY KEY(column_id);
92
+ ALTER TABLE admin.custom_column ADD CONSTRAINT admin_custom_column_name_entity_uid_unique UNIQUE (name,entity,uid);
93
+
94
+ COMMENT ON TABLE admin.custom_column IS 'Налаштування таблиць користувача';
95
+ COMMENT ON COLUMN admin.custom_column.name IS 'Ключ';
96
+ COMMENT ON COLUMN admin.custom_column.entity IS 'Таблиця';
97
+ COMMENT ON COLUMN admin.custom_column.title IS 'Підпис';
98
+ COMMENT ON COLUMN admin.custom_column.format IS 'Формат';
99
+ COMMENT ON COLUMN admin.custom_column.data IS 'Класифікатор';
100
+ COMMENT ON COLUMN admin.custom_column.filter IS 'Виводити у фільтрах';
101
+ COMMENT ON COLUMN admin.custom_column._table IS 'Відображати у таблиці';
102
+
103
+ CREATE TABLE if not exists crm.extra_data();
104
+ ALTER TABLE crm.extra_data DROP CONSTRAINT IF EXISTS crm_extra_data_pkey;
105
+ ALTER TABLE crm.extra_data DROP CONSTRAINT IF EXISTS crm_extra_data_property_id_fkey;
106
+ ALTER TABLE crm.extra_data DROP CONSTRAINT IF EXISTS crm_extra_data_property_key_object_id_entity_unique;
107
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS extra_data_id text;
108
+ ALTER TABLE crm.extra_data ALTER COLUMN extra_data_id SET NOT NULL;
109
+ ALTER TABLE crm.extra_data ALTER COLUMN extra_data_id SET DEFAULT next_id();
110
+
111
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS property_id text;
112
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS property_key text;
113
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS property_entity text;
114
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS object_id text;
115
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS value_text text;
116
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS value_date timestamp without time zone;
117
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS uid text;
118
+ ALTER TABLE crm.extra_data ALTER COLUMN uid SET DEFAULT '1'::text;
119
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS cdate timestamp without time zone;
120
+ ALTER TABLE crm.extra_data ALTER COLUMN cdate SET DEFAULT date_trunc('seconds'::text, now());
121
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS editor_id text;
122
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS editor_date timestamp without time zone;
123
+ ALTER TABLE crm.extra_data ADD COLUMN IF NOT EXISTS files json;
124
+ ALTER TABLE crm.extra_data ADD CONSTRAINT crm_extra_data_pkey PRIMARY KEY (extra_data_id);
125
+ ALTER TABLE crm.extra_data ADD CONSTRAINT crm_extra_data_property_id_fkey FOREIGN KEY (property_id) REFERENCES admin.custom_column (column_id) MATCH SIMPLE;
126
+ ALTER TABLE crm.extra_data ADD CONSTRAINT crm_extra_data_property_key_object_id_entity_unique UNIQUE (property_key, object_id, property_entity);
127
+
128
+ COMMENT ON TABLE crm.extra_data IS 'Значення користувацьких полів';
129
+ COMMENT ON COLUMN crm.extra_data.property_id IS 'ID поля користувача';
130
+ COMMENT ON COLUMN crm.extra_data.property_key IS 'Назва колонки';
131
+ COMMENT ON COLUMN crm.extra_data.property_entity IS 'Таблиця';
132
+ COMMENT ON COLUMN crm.extra_data.object_id IS 'Ідентифікатор об''єкту';
133
+ COMMENT ON COLUMN crm.extra_data.value_text IS 'Значення';
134
+ COMMENT ON COLUMN crm.extra_data.value_date IS 'Дата';
135
+ COMMENT ON COLUMN crm.extra_data.uid IS 'ID користувача';
136
+
137
+ CREATE INDEX IF NOT EXISTS crm_extra_data_cdate_btree_idx ON crm.extra_data USING btree (cdate);
138
+ CREATE INDEX IF NOT EXISTS crm_extra_data_property_id_btree_idx ON crm.extra_data USING btree (property_id COLLATE pg_catalog."default");
139
+ CREATE INDEX IF NOT EXISTS crm_extra_data_property_entity_btree_idx ON crm.extra_data USING btree (property_entity COLLATE pg_catalog."default");
140
+ CREATE INDEX IF NOT EXISTS crm_extra_data_object_id_btree_idx ON crm.extra_data USING btree (object_id COLLATE pg_catalog."default");
@@ -1,4 +1,6 @@
1
1
  create schema if not exists admin;
2
+ create schema if not exists public;
3
+ CREATE EXTENSION if not exists pg_trgm SCHEMA public VERSION "1.5";
2
4
 
3
5
  -- Role (Group)
4
6
  -- drop table if exists admin.roles;