mirror of https://github.com/wg-easy/wg-easy
Browse Source
* AmneziaWG 2.0: support for H1-H4 ranges ## Changes: ``` - [+] Added support for H1-H4 ranges - [!] Fixed interface fields order (H1-H4 goes before I1-I5) ``` ## Known issues: ``` - [!] no check for unique/overlap of H1-H4 values on settings apply: settings will be applied but wg interface will crash with "Invalid argument" error ``` * AmneziaWG 2.0: support for H1-H4 ranges ## Changes: ``` - [+] Added support for H1-H4 ranges - [!] Fixed interface fields order (H1-H4 goes before I1-I5) ``` ## Known issues: ``` - [!] no check for unique/overlap of H1-H4 values on settings apply: settings will be applied but wg interface will crash with "Invalid argument" error ``` * AmneziaWG 2.0: support for H1-H4 ranges ## Changes: ``` - [+] Added support for H1-H4 ranges - [!] Fixed interface fields order (H1-H4 goes before I1-I5) ``` ## Known issues: ``` - [!] no check for unique/overlap of H1-H4 values on settings apply: settings will be applied but wg interface will crash with "Invalid argument" error ``` * Update types.ts Lint fixes --------- Co-authored-by: CthulhuVRN <[email protected]>pull/2490/head
committed by
GitHub
19 changed files with 1174 additions and 126 deletions
@ -0,0 +1,36 @@ |
|||
PRAGMA foreign_keys=OFF;--> statement-breakpoint |
|||
CREATE TABLE `__new_interfaces_table` ( |
|||
`name` text PRIMARY KEY NOT NULL, |
|||
`device` text NOT NULL, |
|||
`port` integer NOT NULL, |
|||
`private_key` text NOT NULL, |
|||
`public_key` text NOT NULL, |
|||
`ipv4_cidr` text NOT NULL, |
|||
`ipv6_cidr` text NOT NULL, |
|||
`mtu` integer NOT NULL, |
|||
`j_c` integer DEFAULT 7, |
|||
`j_min` integer DEFAULT 10, |
|||
`j_max` integer DEFAULT 1000, |
|||
`s1` integer DEFAULT 128, |
|||
`s2` integer DEFAULT 56, |
|||
`s3` integer, |
|||
`s4` integer, |
|||
`h1` text, |
|||
`h2` text, |
|||
`h3` text, |
|||
`h4` text, |
|||
`i1` text, |
|||
`i2` text, |
|||
`i3` text, |
|||
`i4` text, |
|||
`i5` text, |
|||
`enabled` integer NOT NULL, |
|||
`created_at` text DEFAULT (CURRENT_TIMESTAMP) NOT NULL, |
|||
`updated_at` text DEFAULT (CURRENT_TIMESTAMP) NOT NULL |
|||
); |
|||
--> statement-breakpoint |
|||
INSERT INTO `__new_interfaces_table`("name", "device", "port", "private_key", "public_key", "ipv4_cidr", "ipv6_cidr", "mtu", "j_c", "j_min", "j_max", "s1", "s2", "s3", "s4", "h1", "h2", "h3", "h4", "i1", "i2", "i3", "i4", "i5", "enabled", "created_at", "updated_at") SELECT "name", "device", "port", "private_key", "public_key", "ipv4_cidr", "ipv6_cidr", "mtu", "j_c", "j_min", "j_max", "s1", "s2", "s3", "s4", "h1", "h2", "h3", "h4", "i1", "i2", "i3", "i4", "i5", "enabled", "created_at", "updated_at" FROM `interfaces_table`;--> statement-breakpoint |
|||
DROP TABLE `interfaces_table`;--> statement-breakpoint |
|||
ALTER TABLE `__new_interfaces_table` RENAME TO `interfaces_table`;--> statement-breakpoint |
|||
PRAGMA foreign_keys=ON;--> statement-breakpoint |
|||
CREATE UNIQUE INDEX `interfaces_table_port_unique` ON `interfaces_table` (`port`); |
|||
@ -0,0 +1,972 @@ |
|||
{ |
|||
"version": "6", |
|||
"dialect": "sqlite", |
|||
"id": "68c43b7a-772d-4c34-8278-e9fce5b53df1", |
|||
"prevId": "e09bc17a-dab6-45a3-a09c-57af222b08fb", |
|||
"tables": { |
|||
"clients_table": { |
|||
"name": "clients_table", |
|||
"columns": { |
|||
"id": { |
|||
"name": "id", |
|||
"type": "integer", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": true |
|||
}, |
|||
"user_id": { |
|||
"name": "user_id", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"interface_id": { |
|||
"name": "interface_id", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"name": { |
|||
"name": "name", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"ipv4_address": { |
|||
"name": "ipv4_address", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"ipv6_address": { |
|||
"name": "ipv6_address", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"pre_up": { |
|||
"name": "pre_up", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "''" |
|||
}, |
|||
"post_up": { |
|||
"name": "post_up", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "''" |
|||
}, |
|||
"pre_down": { |
|||
"name": "pre_down", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "''" |
|||
}, |
|||
"post_down": { |
|||
"name": "post_down", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "''" |
|||
}, |
|||
"private_key": { |
|||
"name": "private_key", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"public_key": { |
|||
"name": "public_key", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"pre_shared_key": { |
|||
"name": "pre_shared_key", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"expires_at": { |
|||
"name": "expires_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"allowed_ips": { |
|||
"name": "allowed_ips", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"server_allowed_ips": { |
|||
"name": "server_allowed_ips", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"persistent_keepalive": { |
|||
"name": "persistent_keepalive", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"mtu": { |
|||
"name": "mtu", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"j_c": { |
|||
"name": "j_c", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"j_min": { |
|||
"name": "j_min", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"j_max": { |
|||
"name": "j_max", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i1": { |
|||
"name": "i1", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i2": { |
|||
"name": "i2", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i3": { |
|||
"name": "i3", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i4": { |
|||
"name": "i4", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i5": { |
|||
"name": "i5", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"dns": { |
|||
"name": "dns", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"server_endpoint": { |
|||
"name": "server_endpoint", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"enabled": { |
|||
"name": "enabled", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": { |
|||
"clients_table_ipv4_address_unique": { |
|||
"name": "clients_table_ipv4_address_unique", |
|||
"columns": [ |
|||
"ipv4_address" |
|||
], |
|||
"isUnique": true |
|||
}, |
|||
"clients_table_ipv6_address_unique": { |
|||
"name": "clients_table_ipv6_address_unique", |
|||
"columns": [ |
|||
"ipv6_address" |
|||
], |
|||
"isUnique": true |
|||
} |
|||
}, |
|||
"foreignKeys": { |
|||
"clients_table_user_id_users_table_id_fk": { |
|||
"name": "clients_table_user_id_users_table_id_fk", |
|||
"tableFrom": "clients_table", |
|||
"tableTo": "users_table", |
|||
"columnsFrom": [ |
|||
"user_id" |
|||
], |
|||
"columnsTo": [ |
|||
"id" |
|||
], |
|||
"onDelete": "restrict", |
|||
"onUpdate": "cascade" |
|||
}, |
|||
"clients_table_interface_id_interfaces_table_name_fk": { |
|||
"name": "clients_table_interface_id_interfaces_table_name_fk", |
|||
"tableFrom": "clients_table", |
|||
"tableTo": "interfaces_table", |
|||
"columnsFrom": [ |
|||
"interface_id" |
|||
], |
|||
"columnsTo": [ |
|||
"name" |
|||
], |
|||
"onDelete": "cascade", |
|||
"onUpdate": "cascade" |
|||
} |
|||
}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
}, |
|||
"general_table": { |
|||
"name": "general_table", |
|||
"columns": { |
|||
"id": { |
|||
"name": "id", |
|||
"type": "integer", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": 1 |
|||
}, |
|||
"setup_step": { |
|||
"name": "setup_step", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"session_password": { |
|||
"name": "session_password", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"session_timeout": { |
|||
"name": "session_timeout", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"metrics_prometheus": { |
|||
"name": "metrics_prometheus", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"metrics_json": { |
|||
"name": "metrics_json", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"metrics_password": { |
|||
"name": "metrics_password", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": {}, |
|||
"foreignKeys": {}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
}, |
|||
"hooks_table": { |
|||
"name": "hooks_table", |
|||
"columns": { |
|||
"id": { |
|||
"name": "id", |
|||
"type": "text", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"pre_up": { |
|||
"name": "pre_up", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"post_up": { |
|||
"name": "post_up", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"pre_down": { |
|||
"name": "pre_down", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"post_down": { |
|||
"name": "post_down", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": {}, |
|||
"foreignKeys": { |
|||
"hooks_table_id_interfaces_table_name_fk": { |
|||
"name": "hooks_table_id_interfaces_table_name_fk", |
|||
"tableFrom": "hooks_table", |
|||
"tableTo": "interfaces_table", |
|||
"columnsFrom": [ |
|||
"id" |
|||
], |
|||
"columnsTo": [ |
|||
"name" |
|||
], |
|||
"onDelete": "cascade", |
|||
"onUpdate": "cascade" |
|||
} |
|||
}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
}, |
|||
"interfaces_table": { |
|||
"name": "interfaces_table", |
|||
"columns": { |
|||
"name": { |
|||
"name": "name", |
|||
"type": "text", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"device": { |
|||
"name": "device", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"port": { |
|||
"name": "port", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"private_key": { |
|||
"name": "private_key", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"public_key": { |
|||
"name": "public_key", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"ipv4_cidr": { |
|||
"name": "ipv4_cidr", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"ipv6_cidr": { |
|||
"name": "ipv6_cidr", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"mtu": { |
|||
"name": "mtu", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"j_c": { |
|||
"name": "j_c", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 7 |
|||
}, |
|||
"j_min": { |
|||
"name": "j_min", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 10 |
|||
}, |
|||
"j_max": { |
|||
"name": "j_max", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 1000 |
|||
}, |
|||
"s1": { |
|||
"name": "s1", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 128 |
|||
}, |
|||
"s2": { |
|||
"name": "s2", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 56 |
|||
}, |
|||
"s3": { |
|||
"name": "s3", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"s4": { |
|||
"name": "s4", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"h1": { |
|||
"name": "h1", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"h2": { |
|||
"name": "h2", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"h3": { |
|||
"name": "h3", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"h4": { |
|||
"name": "h4", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i1": { |
|||
"name": "i1", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i2": { |
|||
"name": "i2", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i3": { |
|||
"name": "i3", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i4": { |
|||
"name": "i4", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"i5": { |
|||
"name": "i5", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"enabled": { |
|||
"name": "enabled", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": { |
|||
"interfaces_table_port_unique": { |
|||
"name": "interfaces_table_port_unique", |
|||
"columns": [ |
|||
"port" |
|||
], |
|||
"isUnique": true |
|||
} |
|||
}, |
|||
"foreignKeys": {}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
}, |
|||
"one_time_links_table": { |
|||
"name": "one_time_links_table", |
|||
"columns": { |
|||
"id": { |
|||
"name": "id", |
|||
"type": "integer", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"one_time_link": { |
|||
"name": "one_time_link", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"expires_at": { |
|||
"name": "expires_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": { |
|||
"one_time_links_table_one_time_link_unique": { |
|||
"name": "one_time_links_table_one_time_link_unique", |
|||
"columns": [ |
|||
"one_time_link" |
|||
], |
|||
"isUnique": true |
|||
} |
|||
}, |
|||
"foreignKeys": { |
|||
"one_time_links_table_id_clients_table_id_fk": { |
|||
"name": "one_time_links_table_id_clients_table_id_fk", |
|||
"tableFrom": "one_time_links_table", |
|||
"tableTo": "clients_table", |
|||
"columnsFrom": [ |
|||
"id" |
|||
], |
|||
"columnsTo": [ |
|||
"id" |
|||
], |
|||
"onDelete": "cascade", |
|||
"onUpdate": "cascade" |
|||
} |
|||
}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
}, |
|||
"users_table": { |
|||
"name": "users_table", |
|||
"columns": { |
|||
"id": { |
|||
"name": "id", |
|||
"type": "integer", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": true |
|||
}, |
|||
"username": { |
|||
"name": "username", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"password": { |
|||
"name": "password", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"email": { |
|||
"name": "email", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"name": { |
|||
"name": "name", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"role": { |
|||
"name": "role", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"totp_key": { |
|||
"name": "totp_key", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"totp_verified": { |
|||
"name": "totp_verified", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"enabled": { |
|||
"name": "enabled", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": { |
|||
"users_table_username_unique": { |
|||
"name": "users_table_username_unique", |
|||
"columns": [ |
|||
"username" |
|||
], |
|||
"isUnique": true |
|||
} |
|||
}, |
|||
"foreignKeys": {}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
}, |
|||
"user_configs_table": { |
|||
"name": "user_configs_table", |
|||
"columns": { |
|||
"id": { |
|||
"name": "id", |
|||
"type": "text", |
|||
"primaryKey": true, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"default_mtu": { |
|||
"name": "default_mtu", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"default_persistent_keepalive": { |
|||
"name": "default_persistent_keepalive", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"default_dns": { |
|||
"name": "default_dns", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"default_allowed_ips": { |
|||
"name": "default_allowed_ips", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"default_j_c": { |
|||
"name": "default_j_c", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 7 |
|||
}, |
|||
"default_j_min": { |
|||
"name": "default_j_min", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 10 |
|||
}, |
|||
"default_j_max": { |
|||
"name": "default_j_max", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false, |
|||
"default": 1000 |
|||
}, |
|||
"default_i1": { |
|||
"name": "default_i1", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"default_i2": { |
|||
"name": "default_i2", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"default_i3": { |
|||
"name": "default_i3", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"default_i4": { |
|||
"name": "default_i4", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"default_i5": { |
|||
"name": "default_i5", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": false, |
|||
"autoincrement": false |
|||
}, |
|||
"host": { |
|||
"name": "host", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"port": { |
|||
"name": "port", |
|||
"type": "integer", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false |
|||
}, |
|||
"created_at": { |
|||
"name": "created_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
}, |
|||
"updated_at": { |
|||
"name": "updated_at", |
|||
"type": "text", |
|||
"primaryKey": false, |
|||
"notNull": true, |
|||
"autoincrement": false, |
|||
"default": "(CURRENT_TIMESTAMP)" |
|||
} |
|||
}, |
|||
"indexes": {}, |
|||
"foreignKeys": { |
|||
"user_configs_table_id_interfaces_table_name_fk": { |
|||
"name": "user_configs_table_id_interfaces_table_name_fk", |
|||
"tableFrom": "user_configs_table", |
|||
"tableTo": "interfaces_table", |
|||
"columnsFrom": [ |
|||
"id" |
|||
], |
|||
"columnsTo": [ |
|||
"name" |
|||
], |
|||
"onDelete": "cascade", |
|||
"onUpdate": "cascade" |
|||
} |
|||
}, |
|||
"compositePrimaryKeys": {}, |
|||
"uniqueConstraints": {}, |
|||
"checkConstraints": {} |
|||
} |
|||
}, |
|||
"views": {}, |
|||
"enums": {}, |
|||
"_meta": { |
|||
"schemas": {}, |
|||
"tables": {}, |
|||
"columns": {} |
|||
}, |
|||
"internal": { |
|||
"indexes": {} |
|||
} |
|||
} |
|||
Loading…
Reference in new issue