diff --git a/migrations/0000_hard_mach_iv.sql b/migrations/0000_hard_mach_iv.sql deleted file mode 100644 index 5c9c0d1..0000000 --- a/migrations/0000_hard_mach_iv.sql +++ /dev/null @@ -1,86 +0,0 @@ -CREATE TABLE IF NOT EXISTS "featuredAdventures" ( - "id" serial PRIMARY KEY NOT NULL, - "name" text NOT NULL, - "location" text, - CONSTRAINT "featuredAdventures_name_unique" UNIQUE("name") -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "session" ( - "id" text PRIMARY KEY NOT NULL, - "user_id" text NOT NULL, - "expires_at" timestamp with time zone NOT NULL -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "sharedAdventures" ( - "id" text PRIMARY KEY NOT NULL, - "data" json NOT NULL, - "name" text NOT NULL, - "date" text NOT NULL -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "user" ( - "id" text PRIMARY KEY NOT NULL, - "username" text NOT NULL, - "first_name" text NOT NULL, - "last_name" text NOT NULL, - "icon" text, - "hashed_password" varchar NOT NULL -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "userVisitedAdventures" ( - "adventure_id" serial PRIMARY KEY NOT NULL, - "user_id" text NOT NULL, - "adventure_name" text NOT NULL, - "location" text, - "visited_date" text -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "userVisitedWorldTravel" ( - "id" serial PRIMARY KEY NOT NULL, - "user_id" text NOT NULL, - "region_id" varchar NOT NULL -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "worldTravelCountries" ( - "id" serial PRIMARY KEY NOT NULL, - "name" text NOT NULL, - "country_code" text NOT NULL, - "continent" text NOT NULL, - CONSTRAINT "worldTravelCountries_country_code_unique" UNIQUE("country_code") -); ---> statement-breakpoint -CREATE TABLE IF NOT EXISTS "worldTravelCountryRegions" ( - "id" varchar PRIMARY KEY NOT NULL, - "name" text NOT NULL, - "country_code" text NOT NULL -); ---> statement-breakpoint -DO $$ BEGIN - ALTER TABLE "session" ADD CONSTRAINT "session_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "user"("id") ON DELETE no action ON UPDATE no action; -EXCEPTION - WHEN duplicate_object THEN null; -END $$; ---> statement-breakpoint -DO $$ BEGIN - ALTER TABLE "userVisitedAdventures" ADD CONSTRAINT "userVisitedAdventures_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "user"("id") ON DELETE no action ON UPDATE no action; -EXCEPTION - WHEN duplicate_object THEN null; -END $$; ---> statement-breakpoint -DO $$ BEGIN - ALTER TABLE "userVisitedWorldTravel" ADD CONSTRAINT "userVisitedWorldTravel_user_id_user_id_fk" FOREIGN KEY ("user_id") REFERENCES "user"("id") ON DELETE no action ON UPDATE no action; -EXCEPTION - WHEN duplicate_object THEN null; -END $$; ---> statement-breakpoint -DO $$ BEGIN - ALTER TABLE "userVisitedWorldTravel" ADD CONSTRAINT "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk" FOREIGN KEY ("region_id") REFERENCES "worldTravelCountryRegions"("id") ON DELETE no action ON UPDATE no action; -EXCEPTION - WHEN duplicate_object THEN null; -END $$; ---> statement-breakpoint -DO $$ BEGIN - ALTER TABLE "worldTravelCountryRegions" ADD CONSTRAINT "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk" FOREIGN KEY ("country_code") REFERENCES "worldTravelCountries"("country_code") ON DELETE no action ON UPDATE no action; -EXCEPTION - WHEN duplicate_object THEN null; -END $$; diff --git a/migrations/0001_closed_wendell_vaughn.sql b/migrations/0001_closed_wendell_vaughn.sql deleted file mode 100644 index 9f9d831..0000000 --- a/migrations/0001_closed_wendell_vaughn.sql +++ /dev/null @@ -1,6 +0,0 @@ -ALTER TABLE "userVisitedWorldTravel" ADD COLUMN "country_code" text NOT NULL;--> statement-breakpoint -DO $$ BEGIN - ALTER TABLE "userVisitedWorldTravel" ADD CONSTRAINT "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk" FOREIGN KEY ("country_code") REFERENCES "worldTravelCountries"("country_code") ON DELETE no action ON UPDATE no action; -EXCEPTION - WHEN duplicate_object THEN null; -END $$; diff --git a/migrations/0002_far_mephistopheles.sql b/migrations/0002_far_mephistopheles.sql deleted file mode 100644 index 5a0139a..0000000 --- a/migrations/0002_far_mephistopheles.sql +++ /dev/null @@ -1 +0,0 @@ -ALTER TABLE "worldTravelCountryRegions" ADD COLUMN "info" json; \ No newline at end of file diff --git a/migrations/0003_easy_iron_monger.sql b/migrations/0003_easy_iron_monger.sql deleted file mode 100644 index 8d6046e..0000000 --- a/migrations/0003_easy_iron_monger.sql +++ /dev/null @@ -1,3 +0,0 @@ -ALTER TABLE "user" ADD COLUMN "signup_date" timestamp with time zone NOT NULL;--> statement-breakpoint -ALTER TABLE "user" ADD COLUMN "last_login" timestamp with time zone;--> statement-breakpoint -ALTER TABLE "user" ADD COLUMN "role" text NOT NULL; \ No newline at end of file diff --git a/migrations/meta/0000_snapshot.json b/migrations/meta/0000_snapshot.json deleted file mode 100644 index f038117..0000000 --- a/migrations/meta/0000_snapshot.json +++ /dev/null @@ -1,366 +0,0 @@ -{ - "id": "b6ab23b7-42f0-4475-aa5d-23b92c00e97f", - "prevId": "00000000-0000-0000-0000-000000000000", - "version": "5", - "dialect": "pg", - "tables": { - "featuredAdventures": { - "name": "featuredAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "featuredAdventures_name_unique": { - "name": "featuredAdventures_name_unique", - "nullsNotDistinct": false, - "columns": [ - "name" - ] - } - } - }, - "session": { - "name": "session", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "expires_at": { - "name": "expires_at", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "session_user_id_user_id_fk": { - "name": "session_user_id_user_id_fk", - "tableFrom": "session", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "sharedAdventures": { - "name": "sharedAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "data": { - "name": "data", - "type": "json", - "primaryKey": false, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "date": { - "name": "date", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "user": { - "name": "user", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "username": { - "name": "username", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "first_name": { - "name": "first_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "last_name": { - "name": "last_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "icon": { - "name": "icon", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "hashed_password": { - "name": "hashed_password", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedAdventures": { - "name": "userVisitedAdventures", - "schema": "", - "columns": { - "adventure_id": { - "name": "adventure_id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "adventure_name": { - "name": "adventure_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "visited_date": { - "name": "visited_date", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedAdventures_user_id_user_id_fk": { - "name": "userVisitedAdventures_user_id_user_id_fk", - "tableFrom": "userVisitedAdventures", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedWorldTravel": { - "name": "userVisitedWorldTravel", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "region_id": { - "name": "region_id", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedWorldTravel_user_id_user_id_fk": { - "name": "userVisitedWorldTravel_user_id_user_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk": { - "name": "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountryRegions", - "columnsFrom": [ - "region_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "worldTravelCountries": { - "name": "worldTravelCountries", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "continent": { - "name": "continent", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "worldTravelCountries_country_code_unique": { - "name": "worldTravelCountries_country_code_unique", - "nullsNotDistinct": false, - "columns": [ - "country_code" - ] - } - } - }, - "worldTravelCountryRegions": { - "name": "worldTravelCountryRegions", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "varchar", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk": { - "name": "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "worldTravelCountryRegions", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - } - }, - "enums": {}, - "schemas": {}, - "_meta": { - "columns": {}, - "schemas": {}, - "tables": {} - } -} \ No newline at end of file diff --git a/migrations/meta/0001_snapshot.json b/migrations/meta/0001_snapshot.json deleted file mode 100644 index 6c4e538..0000000 --- a/migrations/meta/0001_snapshot.json +++ /dev/null @@ -1,385 +0,0 @@ -{ - "id": "4c095e1a-9f13-4899-aa83-f56864191f51", - "prevId": "b6ab23b7-42f0-4475-aa5d-23b92c00e97f", - "version": "5", - "dialect": "pg", - "tables": { - "featuredAdventures": { - "name": "featuredAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "featuredAdventures_name_unique": { - "name": "featuredAdventures_name_unique", - "nullsNotDistinct": false, - "columns": [ - "name" - ] - } - } - }, - "session": { - "name": "session", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "expires_at": { - "name": "expires_at", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "session_user_id_user_id_fk": { - "name": "session_user_id_user_id_fk", - "tableFrom": "session", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "sharedAdventures": { - "name": "sharedAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "data": { - "name": "data", - "type": "json", - "primaryKey": false, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "date": { - "name": "date", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "user": { - "name": "user", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "username": { - "name": "username", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "first_name": { - "name": "first_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "last_name": { - "name": "last_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "icon": { - "name": "icon", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "hashed_password": { - "name": "hashed_password", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedAdventures": { - "name": "userVisitedAdventures", - "schema": "", - "columns": { - "adventure_id": { - "name": "adventure_id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "adventure_name": { - "name": "adventure_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "visited_date": { - "name": "visited_date", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedAdventures_user_id_user_id_fk": { - "name": "userVisitedAdventures_user_id_user_id_fk", - "tableFrom": "userVisitedAdventures", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedWorldTravel": { - "name": "userVisitedWorldTravel", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "region_id": { - "name": "region_id", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk": { - "name": "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_user_id_user_id_fk": { - "name": "userVisitedWorldTravel_user_id_user_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk": { - "name": "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountryRegions", - "columnsFrom": [ - "region_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "worldTravelCountries": { - "name": "worldTravelCountries", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "continent": { - "name": "continent", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "worldTravelCountries_country_code_unique": { - "name": "worldTravelCountries_country_code_unique", - "nullsNotDistinct": false, - "columns": [ - "country_code" - ] - } - } - }, - "worldTravelCountryRegions": { - "name": "worldTravelCountryRegions", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "varchar", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk": { - "name": "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "worldTravelCountryRegions", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - } - }, - "enums": {}, - "schemas": {}, - "_meta": { - "columns": {}, - "schemas": {}, - "tables": {} - } -} \ No newline at end of file diff --git a/migrations/meta/0002_snapshot.json b/migrations/meta/0002_snapshot.json deleted file mode 100644 index f84336c..0000000 --- a/migrations/meta/0002_snapshot.json +++ /dev/null @@ -1,391 +0,0 @@ -{ - "id": "91692e84-91ec-4411-ad9d-7b8b14f67dda", - "prevId": "4c095e1a-9f13-4899-aa83-f56864191f51", - "version": "5", - "dialect": "pg", - "tables": { - "featuredAdventures": { - "name": "featuredAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "featuredAdventures_name_unique": { - "name": "featuredAdventures_name_unique", - "nullsNotDistinct": false, - "columns": [ - "name" - ] - } - } - }, - "session": { - "name": "session", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "expires_at": { - "name": "expires_at", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "session_user_id_user_id_fk": { - "name": "session_user_id_user_id_fk", - "tableFrom": "session", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "sharedAdventures": { - "name": "sharedAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "data": { - "name": "data", - "type": "json", - "primaryKey": false, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "date": { - "name": "date", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "user": { - "name": "user", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "username": { - "name": "username", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "first_name": { - "name": "first_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "last_name": { - "name": "last_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "icon": { - "name": "icon", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "hashed_password": { - "name": "hashed_password", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedAdventures": { - "name": "userVisitedAdventures", - "schema": "", - "columns": { - "adventure_id": { - "name": "adventure_id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "adventure_name": { - "name": "adventure_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "visited_date": { - "name": "visited_date", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedAdventures_user_id_user_id_fk": { - "name": "userVisitedAdventures_user_id_user_id_fk", - "tableFrom": "userVisitedAdventures", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedWorldTravel": { - "name": "userVisitedWorldTravel", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "region_id": { - "name": "region_id", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk": { - "name": "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_user_id_user_id_fk": { - "name": "userVisitedWorldTravel_user_id_user_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk": { - "name": "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountryRegions", - "columnsFrom": [ - "region_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "worldTravelCountries": { - "name": "worldTravelCountries", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "continent": { - "name": "continent", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "worldTravelCountries_country_code_unique": { - "name": "worldTravelCountries_country_code_unique", - "nullsNotDistinct": false, - "columns": [ - "country_code" - ] - } - } - }, - "worldTravelCountryRegions": { - "name": "worldTravelCountryRegions", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "varchar", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "info": { - "name": "info", - "type": "json", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": { - "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk": { - "name": "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "worldTravelCountryRegions", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - } - }, - "enums": {}, - "schemas": {}, - "_meta": { - "columns": {}, - "schemas": {}, - "tables": {} - } -} \ No newline at end of file diff --git a/migrations/meta/0003_snapshot.json b/migrations/meta/0003_snapshot.json deleted file mode 100644 index dc62400..0000000 --- a/migrations/meta/0003_snapshot.json +++ /dev/null @@ -1,409 +0,0 @@ -{ - "id": "72cc9a9a-a12e-4ca2-b644-b704673af4d7", - "prevId": "91692e84-91ec-4411-ad9d-7b8b14f67dda", - "version": "5", - "dialect": "pg", - "tables": { - "featuredAdventures": { - "name": "featuredAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "featuredAdventures_name_unique": { - "name": "featuredAdventures_name_unique", - "nullsNotDistinct": false, - "columns": [ - "name" - ] - } - } - }, - "session": { - "name": "session", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "expires_at": { - "name": "expires_at", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "session_user_id_user_id_fk": { - "name": "session_user_id_user_id_fk", - "tableFrom": "session", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "sharedAdventures": { - "name": "sharedAdventures", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "data": { - "name": "data", - "type": "json", - "primaryKey": false, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "date": { - "name": "date", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "user": { - "name": "user", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "text", - "primaryKey": true, - "notNull": true - }, - "username": { - "name": "username", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "first_name": { - "name": "first_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "last_name": { - "name": "last_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "icon": { - "name": "icon", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "hashed_password": { - "name": "hashed_password", - "type": "varchar", - "primaryKey": false, - "notNull": true - }, - "signup_date": { - "name": "signup_date", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": true - }, - "last_login": { - "name": "last_login", - "type": "timestamp with time zone", - "primaryKey": false, - "notNull": false - }, - "role": { - "name": "role", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedAdventures": { - "name": "userVisitedAdventures", - "schema": "", - "columns": { - "adventure_id": { - "name": "adventure_id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "adventure_name": { - "name": "adventure_name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "location": { - "name": "location", - "type": "text", - "primaryKey": false, - "notNull": false - }, - "visited_date": { - "name": "visited_date", - "type": "text", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedAdventures_user_id_user_id_fk": { - "name": "userVisitedAdventures_user_id_user_id_fk", - "tableFrom": "userVisitedAdventures", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "userVisitedWorldTravel": { - "name": "userVisitedWorldTravel", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "user_id": { - "name": "user_id", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "region_id": { - "name": "region_id", - "type": "varchar", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": { - "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk": { - "name": "userVisitedWorldTravel_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_user_id_user_id_fk": { - "name": "userVisitedWorldTravel_user_id_user_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "user", - "columnsFrom": [ - "user_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - }, - "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk": { - "name": "userVisitedWorldTravel_region_id_worldTravelCountryRegions_id_fk", - "tableFrom": "userVisitedWorldTravel", - "tableTo": "worldTravelCountryRegions", - "columnsFrom": [ - "region_id" - ], - "columnsTo": [ - "id" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - }, - "worldTravelCountries": { - "name": "worldTravelCountries", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "serial", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "continent": { - "name": "continent", - "type": "text", - "primaryKey": false, - "notNull": true - } - }, - "indexes": {}, - "foreignKeys": {}, - "compositePrimaryKeys": {}, - "uniqueConstraints": { - "worldTravelCountries_country_code_unique": { - "name": "worldTravelCountries_country_code_unique", - "nullsNotDistinct": false, - "columns": [ - "country_code" - ] - } - } - }, - "worldTravelCountryRegions": { - "name": "worldTravelCountryRegions", - "schema": "", - "columns": { - "id": { - "name": "id", - "type": "varchar", - "primaryKey": true, - "notNull": true - }, - "name": { - "name": "name", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "country_code": { - "name": "country_code", - "type": "text", - "primaryKey": false, - "notNull": true - }, - "info": { - "name": "info", - "type": "json", - "primaryKey": false, - "notNull": false - } - }, - "indexes": {}, - "foreignKeys": { - "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk": { - "name": "worldTravelCountryRegions_country_code_worldTravelCountries_country_code_fk", - "tableFrom": "worldTravelCountryRegions", - "tableTo": "worldTravelCountries", - "columnsFrom": [ - "country_code" - ], - "columnsTo": [ - "country_code" - ], - "onDelete": "no action", - "onUpdate": "no action" - } - }, - "compositePrimaryKeys": {}, - "uniqueConstraints": {} - } - }, - "enums": {}, - "schemas": {}, - "_meta": { - "columns": {}, - "schemas": {}, - "tables": {} - } -} \ No newline at end of file diff --git a/migrations/meta/_journal.json b/migrations/meta/_journal.json deleted file mode 100644 index a1f987e..0000000 --- a/migrations/meta/_journal.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "version": "5", - "dialect": "pg", - "entries": [ - { - "idx": 0, - "version": "5", - "when": 1713037717607, - "tag": "0000_hard_mach_iv", - "breakpoints": true - }, - { - "idx": 1, - "version": "5", - "when": 1713050481064, - "tag": "0001_closed_wendell_vaughn", - "breakpoints": true - }, - { - "idx": 2, - "version": "5", - "when": 1713125110816, - "tag": "0002_far_mephistopheles", - "breakpoints": true - }, - { - "idx": 3, - "version": "5", - "when": 1713402092365, - "tag": "0003_easy_iron_monger", - "breakpoints": true - } - ] -} \ No newline at end of file diff --git a/sql/001_countries.sql b/sql/001_countries.sql deleted file mode 100644 index 0608443..0000000 --- a/sql/001_countries.sql +++ /dev/null @@ -1,18 +0,0 @@ -INSERT INTO "worldTravelCountries" (name, country_code, continent) -VALUES - ('United States', 'us', 'North America'), - ('Canada', 'ca', 'North America'), - ('Mexico', 'mx', 'North America'), - ('Brazil', 'br', 'South America'), - ('Argentina', 'ar', 'South America'), - ('United Kingdom', 'gb', 'Europe'), - ('Germany', 'de', 'Europe'), - ('France', 'fr', 'Europe'), - ('Japan', 'jp', 'Asia'), - ('China', 'cn', 'Asia'), - ('India', 'in', 'Asia'), - ('Australia', 'au', 'Oceania'), - ('New Zealand', 'nz', 'Oceania'), - ('South Africa', 'za', 'Africa'), - ('Egypt', 'eg', 'Africa') -ON CONFLICT (country_code) DO NOTHING; \ No newline at end of file diff --git a/sql/002_us.sql b/sql/002_us.sql deleted file mode 100644 index efa1082..0000000 --- a/sql/002_us.sql +++ /dev/null @@ -1,270 +0,0 @@ --- INSERT INTO "worldTravelCountryRegions" (id, name, country_code) --- VALUES --- ('US-AL', 'Alabama', 'us', '{ --- "name": "Alabama", --- "abbreviation": "AL", --- "description": "Alabama is a state located in the southeastern region of the United States. Known for its rich history, including its role in the American Civil War and the Civil Rights Movement, Alabama offers a diverse landscape of mountains, plains, and coastal areas. The state boasts a humid subtropical climate and is known for its strong tradition in college sports, particularly football. Alabama''s economy is diverse, with major industries including automotive manufacturing, agriculture, and aerospace. Tourists are drawn to Alabama''s natural beauty, historical sites, and cultural landmarks.", --- "capital": "Montgomery", --- "largest_city": "Birmingham", --- "area": { --- "total": 52420, --- "units": "square miles" --- }, --- "population": { --- "estimate": 4903185, --- "year": 2020 --- }, --- "state_flower": "Camellia", --- "state_bird": "Yellowhammer", --- "state_tree": "Southern Longleaf Pine", --- "climate": { --- "description": "Humid subtropical", --- "summer_highs": "80-90°F", --- "winter_lows": "30-50°F", --- "precipitation": "Abundant throughout the year" --- }, --- "economy": { --- "industries": [ --- "Automotive Manufacturing", --- "Agriculture", --- "Mining", --- "Technology", --- "Aerospace" --- ], --- "agricultural_products": [ --- "Poultry", --- "Cotton", --- "Peanuts", --- "Soybeans", --- "Corn" --- ] --- }, --- "tourism": { --- "attractions": [ --- "U.S. Space & Rocket Center", --- "Gulf Shores and Orange Beach", --- "Rosa Parks Museum", --- "Civil Rights Institute", --- "Little River Canyon National Preserve" --- ] --- }, --- "major_sports_teams": [ --- "Alabama Crimson Tide (NCAA)", --- "Auburn Tigers (NCAA)" --- ] --- }'), --- ('US-AK', 'Alaska', 'us', '{ --- "name": "Alaska", --- "abbreviation": "AK", --- "description": "Alaska is the largest state in the United States by area, known for its rugged and breathtaking natural beauty. It is situated in the northwesternmost region of North America and is bordered by Canada to the east, the Arctic Ocean to the north, and the Pacific Ocean to the west and south. Alaska is renowned for its diverse wildlife, glaciers, and majestic mountains. The state is sparsely populated, with the majority of its residents living in and around Anchorage and Fairbanks. Alaska''s economy is heavily dependent on oil and gas production, as well as fishing, tourism, and mining.", --- "capital": "Juneau", --- "largest_city": "Anchorage", --- "area": { --- "total": 663267, --- "units": "square miles" --- }, --- "population": { --- "estimate": 731158, --- "year": 2020 --- }, --- "state_flower": "Forget-Me-Not", --- "state_bird": "Willow Ptarmigan", --- "state_tree": "Sitka Spruce", --- "climate": { --- "description": "Varies by region, with subarctic and arctic climates in the interior and north and more temperate maritime climates along the coast.", --- "summer_highs": "50-70°F (varies by region)", --- "winter_lows": "-40 to 20°F (varies by region)", --- "precipitation": "Ranges from low in the interior to high along the coast" --- }, --- "economy": { --- "industries": [ --- "Oil and Gas", --- "Fishing", --- "Mining", --- "Tourism", --- "Forestry" --- ], --- "agricultural_products": [ --- "Cattle", --- "Hay", --- "Vegetables", --- "Barley", --- "Dairy products" --- ] --- }, --- "tourism": { --- "attractions": [ --- "Denali National Park", --- "Glacier Bay National Park", --- "Kenai Fjords National Park", --- "Sitka National Historical Park", --- "Anchorage Museum" --- ] --- }, --- "major_sports_teams": [ --- "Anchorage Wolverines (NAHL)", --- "Alaska Aces (ECHL, formerly)" --- ] --- } --- '), --- ('US-AZ', 'Arizona', 'us', '{ --- "name": "Arizona", --- "abbreviation": "AZ", --- "description": "Arizona is a state located in the southwestern region of the United States, known for its dramatic desert landscapes and vibrant history. The state is home to iconic landmarks such as the Grand Canyon and Monument Valley. Arizona''s diverse geography includes mountain ranges, forests, and high plateaus. The state has a warm desert climate in the southern and central areas and cooler mountain climates in the northern region. Arizona''s economy is driven by industries such as healthcare, technology, manufacturing, and tourism.", --- "capital": "Phoenix", --- "largest_city": "Phoenix", --- "area": { --- "total": 113990, --- "units": "square miles" --- }, --- "population": { --- "estimate": 7151502, --- "year": 2020 --- }, --- "state_flower": "Saguaro Cactus Blossom", --- "state_bird": "Cactus Wren", --- "state_tree": "Palo Verde", --- "climate": { --- "description": "Mostly arid and semi-arid, with desert climates in the southern and central regions and temperate climates in the north.", --- "summer_highs": "85-120°F (varies by region)", --- "winter_lows": "30-60°F (varies by region)", --- "precipitation": "Low in most areas, with higher amounts in mountain regions" --- }, --- "economy": { --- "industries": [ --- "Healthcare", --- "Technology", --- "Manufacturing", --- "Tourism", --- "Agriculture" --- ], --- "agricultural_products": [ --- "Cattle", --- "Dairy", --- "Lettuce", --- "Cotton", --- "Alfalfa" --- ] --- }, --- "tourism": { --- "attractions": [ --- "Grand Canyon National Park", --- "Sedona", --- "Monument Valley", --- "Saguaro National Park", --- "Petrified Forest National Park" --- ] --- }, --- "major_sports_teams": [ --- "Arizona Cardinals (NFL)", --- "Phoenix Suns (NBA)", --- "Arizona Diamondbacks (MLB)", --- "Arizona Coyotes (NHL)" --- ] --- } --- '), --- ('US-AR', 'Arkansas', 'us', '{ --- "name": "Arkansas", --- "abbreviation": "AR", --- "description": "Arkansas is a state located in the southeastern region of the United States, known for its natural beauty and diverse landscapes that include mountains, forests, and rivers. The state is nicknamed ''The Natural State'' due to its abundant natural resources and outdoor recreational opportunities. Arkansas has a rich history and played a significant role during the American Civil War. The state''s economy is driven by agriculture, manufacturing, and tourism, with key agricultural products including rice, poultry, and soybeans.", --- "capital": "Little Rock", --- "largest_city": "Little Rock", --- "area": { --- "total": 53179, --- "units": "square miles" --- }, --- "population": { --- "estimate": 3013756, --- "year": 2020 --- }, --- "state_flower": "Apple Blossom", --- "state_bird": "Northern Mockingbird", --- "state_tree": "Pine", --- "climate": { --- "description": "Humid subtropical climate, with hot summers and mild winters.", --- "summer_highs": "80-90°F", --- "winter_lows": "20-40°F", --- "precipitation": "High, especially in the spring" --- }, --- "economy": { --- "industries": [ --- "Agriculture", --- "Manufacturing", --- "Retail", --- "Tourism", --- "Education" --- ], --- "agricultural_products": [ --- "Rice", --- "Poultry", --- "Soybeans", --- "Cotton", --- "Catfish" --- ] --- }, --- "tourism": { --- "attractions": [ --- "Hot Springs National Park", --- "Buffalo National River", --- "Crater of Diamonds State Park", --- "Little Rock Central High School National Historic Site", --- "Ozark National Forest" --- ] --- }, --- "major_sports_teams": [ --- "Arkansas Razorbacks (NCAA)" --- ] --- } --- '), -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) VALUES - ('US-AL', 'Alabama', 'us'), - ('US-AK', 'Alaska', 'us'), - ('US-AZ', 'Arizona', 'us'), - ('US-AR', 'Arkansas', 'us'), - ('US-CA', 'California', 'us'), - ('US-CO', 'Colorado', 'us'), - ('US-CT', 'Connecticut', 'us'), - ('US-DE', 'Delaware', 'us'), - ('US-FL', 'Florida', 'us'), - ('US-GA', 'Georgia', 'us'), - ('US-HI', 'Hawaii', 'us'), - ('US-ID', 'Idaho', 'us'), - ('US-IL', 'Illinois', 'us'), - ('US-IN', 'Indiana', 'us'), - ('US-IA', 'Iowa', 'us'), - ('US-KS', 'Kansas', 'us'), - ('US-KY', 'Kentucky', 'us'), - ('US-LA', 'Louisiana', 'us'), - ('US-ME', 'Maine', 'us'), - ('US-MD', 'Maryland', 'us'), - ('US-MA', 'Massachusetts', 'us'), - ('US-MI', 'Michigan', 'us'), - ('US-MN', 'Minnesota', 'us'), - ('US-MS', 'Mississippi', 'us'), - ('US-MO', 'Missouri', 'us'), - ('US-MT', 'Montana', 'us'), - ('US-NE', 'Nebraska', 'us'), - ('US-NV', 'Nevada', 'us'), - ('US-NH', 'New Hampshire', 'us'), - ('US-NJ', 'New Jersey', 'us'), - ('US-NM', 'New Mexico', 'us'), - ('US-NY', 'New York', 'us'), - ('US-NC', 'North Carolina', 'us'), - ('US-ND', 'North Dakota', 'us'), - ('US-OH', 'Ohio', 'us'), - ('US-OK', 'Oklahoma', 'us'), - ('US-OR', 'Oregon', 'us'), - ('US-PA', 'Pennsylvania', 'us'), - ('US-RI', 'Rhode Island', 'us'), - ('US-SC', 'South Carolina', 'us'), - ('US-SD', 'South Dakota', 'us'), - ('US-TN', 'Tennessee', 'us'), - ('US-TX', 'Texas', 'us'), - ('US-UT', 'Utah', 'us'), - ('US-VT', 'Vermont', 'us'), - ('US-VA', 'Virginia', 'us'), - ('US-WA', 'Washington', 'us'), - ('US-WV', 'West Virginia', 'us'), - ('US-WI', 'Wisconsin', 'us'), - ('US-WY', 'Wyoming', 'us') -ON CONFLICT (id) DO NOTHING; diff --git a/sql/003_ca.sql b/sql/003_ca.sql deleted file mode 100644 index 14c777d..0000000 --- a/sql/003_ca.sql +++ /dev/null @@ -1,16 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('CA-AB', 'Alberta', 'ca'), - ('CA-BC', 'British Columbia', 'ca'), - ('CA-MB', 'Manitoba', 'ca'), - ('CA-NB', 'New Brunswick', 'ca'), - ('CA-NL', 'Newfoundland and Labrador', 'ca'), - ('CA-NS', 'Nova Scotia', 'ca'), - ('CA-ON', 'Ontario', 'ca'), - ('CA-PE', 'Prince Edward Island', 'ca'), - ('CA-QC', 'Quebec', 'ca'), - ('CA-SK', 'Saskatchewan', 'ca'), - ('CA-NT', 'Northwest Territories', 'ca'), - ('CA-NU', 'Nunavut', 'ca'), - ('CA-YT', 'Yukon', 'ca') -ON CONFLICT (id) DO NOTHING; diff --git a/sql/004_de.sql b/sql/004_de.sql deleted file mode 100644 index a8be86c..0000000 --- a/sql/004_de.sql +++ /dev/null @@ -1,20 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('DE-BW', 'Baden-Württemberg', 'de'), - ('DE-BY', 'Bavaria', 'de'), - ('DE-BE', 'Berlin', 'de'), - ('DE-BB', 'Brandenburg', 'de'), - ('DE-HB', 'Bremen', 'de'), - ('DE-HH', 'Hamburg', 'de'), - ('DE-HE', 'Hesse', 'de'), - ('DE-NI', 'Lower Saxony', 'de'), - ('DE-MV', 'Mecklenburg-Vorpommern', 'de'), - ('DE-NW', 'North Rhine-Westphalia', 'de'), - ('DE-RP', 'Rhineland-Palatinate', 'de'), - ('DE-SL', 'Saarland', 'de'), - ('DE-SN', 'Saxony', 'de'), - ('DE-ST', 'Saxony-Anhalt', 'de'), - ('DE-SH', 'Schleswig-Holstein', 'de'), - ('DE-TH', 'Thuringia', 'de') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/005_fr.sql b/sql/005_fr.sql deleted file mode 100644 index 08cabf5..0000000 --- a/sql/005_fr.sql +++ /dev/null @@ -1,22 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('FR-ARA', 'Auvergne-Rhône-Alpes', 'fr'), - ('FR-BFC', 'Bourgogne-Franche-Comté', 'fr'), - ('FR-BRE', 'Brittany', 'fr'), - ('FR-CVL', 'Centre-Val de Loire', 'fr'), - ('FR-GES', 'Grand Est', 'fr'), - ('FR-HDF', 'Hauts-de-France', 'fr'), - ('FR-IDF', 'Île-de-France', 'fr'), - ('FR-NOR', 'Normandy', 'fr'), - ('FR-NAQ', 'Nouvelle-Aquitaine', 'fr'), - ('FR-OCC', 'Occitanie', 'fr'), - ('FR-PDL', 'Pays de la Loire', 'fr'), - ('FR-PAC', 'Provence-Alpes-Côte d''Azur', 'fr'), - ('FR-COR', 'Corsica', 'fr'), - ('FR-MQ', 'Martinique', 'fr'), - ('FR-GF', 'French Guiana', 'fr'), - ('FR-RÉ', 'Réunion', 'fr'), - ('FR-YT', 'Mayotte', 'fr'), - ('FR-GP', 'Guadeloupe', 'fr') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/006_gb.sql b/sql/006_gb.sql deleted file mode 100644 index c1a0ef9..0000000 --- a/sql/006_gb.sql +++ /dev/null @@ -1,8 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('GB-ENG', 'England', 'gb'), - ('GB-NIR', 'Northern Ireland', 'gb'), - ('GB-SCT', 'Scotland', 'gb'), - ('GB-WLS', 'Wales', 'gb') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/007_ar.sql b/sql/007_ar.sql deleted file mode 100644 index 627335d..0000000 --- a/sql/007_ar.sql +++ /dev/null @@ -1,28 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('AR-C', 'Ciudad Autónoma de Buenos Aires', 'ar'), - ('AR-B', 'Buenos Aires', 'ar'), - ('AR-K', 'Catamarca', 'ar'), - ('AR-H', 'Chaco', 'ar'), - ('AR-U', 'Chubut', 'ar'), - ('AR-W', 'Córdoba', 'ar'), - ('AR-X', 'Corrientes', 'ar'), - ('AR-E', 'Entre Ríos', 'ar'), - ('AR-P', 'Formosa', 'ar'), - ('AR-Y', 'Jujuy', 'ar'), - ('AR-L', 'La Pampa', 'ar'), - ('AR-F', 'La Rioja', 'ar'), - ('AR-M', 'Mendoza', 'ar'), - ('AR-N', 'Misiones', 'ar'), - ('AR-Q', 'Neuquén', 'ar'), - ('AR-R', 'Río Negro', 'ar'), - ('AR-A', 'Salta', 'ar'), - ('AR-J', 'San Juan', 'ar'), - ('AR-D', 'San Luis', 'ar'), - ('AR-Z', 'Santa Cruz', 'ar'), - ('AR-S', 'Santa Fe', 'ar'), - ('AR-G', 'Santiago del Estero', 'ar'), - ('AR-V', 'Tierra del Fuego', 'ar'), - ('AR-T', 'Tucumán', 'ar') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/008_mx.sql b/sql/008_mx.sql deleted file mode 100644 index 4f57691..0000000 --- a/sql/008_mx.sql +++ /dev/null @@ -1,35 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('MX-AGU', 'Aguascalientes', 'mx'), - ('MX-BCN', 'Baja California', 'mx'), - ('MX-BCS', 'Baja California Sur', 'mx'), - ('MX-CAM', 'Campeche', 'mx'), - ('MX-CHP', 'Chiapas', 'mx'), - ('MX-CHH', 'Chihuahua', 'mx'), - ('MX-COA', 'Coahuila', 'mx'), - ('MX-COL', 'Colima', 'mx'), - ('MX-DUR', 'Durango', 'mx'), - ('MX-GUA', 'Guanajuato', 'mx'), - ('MX-GRO', 'Guerrero', 'mx'), - ('MX-HID', 'Hidalgo', 'mx'), - ('MX-JAL', 'Jalisco', 'mx'), - ('MX-MEX', 'State of Mexico', 'mx'), - ('MX-MIC', 'Michoacán', 'mx'), - ('MX-MOR', 'Morelos', 'mx'), - ('MX-NAY', 'Nayarit', 'mx'), - ('MX-NLE', 'Nuevo León', 'mx'), - ('MX-OAX', 'Oaxaca', 'mx'), - ('MX-PUE', 'Puebla', 'mx'), - ('MX-QUE', 'Querétaro', 'mx'), - ('MX-ROO', 'Quintana Roo', 'mx'), - ('MX-SLP', 'San Luis Potosí', 'mx'), - ('MX-SIN', 'Sinaloa', 'mx'), - ('MX-SON', 'Sonora', 'mx'), - ('MX-TAB', 'Tabasco', 'mx'), - ('MX-TAM', 'Tamaulipas', 'mx'), - ('MX-TLA', 'Tlaxcala', 'mx'), - ('MX-VER', 'Veracruz', 'mx'), - ('MX-YUC', 'Yucatán', 'mx'), - ('MX-ZAC', 'Zacatecas', 'mx') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/009_jp.sql b/sql/009_jp.sql deleted file mode 100644 index dda90b9..0000000 --- a/sql/009_jp.sql +++ /dev/null @@ -1,51 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('JP-01', 'Hokkaido', 'jp'), - ('JP-02', 'Aomori', 'jp'), - ('JP-03', 'Iwate', 'jp'), - ('JP-04', 'Miyagi', 'jp'), - ('JP-05', 'Akita', 'jp'), - ('JP-06', 'Yamagata', 'jp'), - ('JP-07', 'Fukushima', 'jp'), - ('JP-08', 'Ibaraki', 'jp'), - ('JP-09', 'Tochigi', 'jp'), - ('JP-10', 'Gunma', 'jp'), - ('JP-11', 'Saitama', 'jp'), - ('JP-12', 'Chiba', 'jp'), - ('JP-13', 'Tokyo', 'jp'), - ('JP-14', 'Kanagawa', 'jp'), - ('JP-15', 'Niigata', 'jp'), - ('JP-16', 'Toyama', 'jp'), - ('JP-17', 'Ishikawa', 'jp'), - ('JP-18', 'Fukui', 'jp'), - ('JP-19', 'Yamanashi', 'jp'), - ('JP-20', 'Nagano', 'jp'), - ('JP-21', 'Gifu', 'jp'), - ('JP-22', 'Shizuoka', 'jp'), - ('JP-23', 'Aichi', 'jp'), - ('JP-24', 'Mie', 'jp'), - ('JP-25', 'Shiga', 'jp'), - ('JP-26', 'Kyoto', 'jp'), - ('JP-27', 'Osaka', 'jp'), - ('JP-28', 'Hyogo', 'jp'), - ('JP-29', 'Nara', 'jp'), - ('JP-30', 'Wakayama', 'jp'), - ('JP-31', 'Tottori', 'jp'), - ('JP-32', 'Shimane', 'jp'), - ('JP-33', 'Okayama', 'jp'), - ('JP-34', 'Hiroshima', 'jp'), - ('JP-35', 'Yamaguchi', 'jp'), - ('JP-36', 'Tokushima', 'jp'), - ('JP-37', 'Kagawa', 'jp'), - ('JP-38', 'Ehime', 'jp'), - ('JP-39', 'Kochi', 'jp'), - ('JP-40', 'Fukuoka', 'jp'), - ('JP-41', 'Saga', 'jp'), - ('JP-42', 'Nagasaki', 'jp'), - ('JP-43', 'Kumamoto', 'jp'), - ('JP-44', 'Oita', 'jp'), - ('JP-45', 'Miyazaki', 'jp'), - ('JP-46', 'Kagoshima', 'jp'), - ('JP-47', 'Okinawa', 'jp') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/010_cn.sql b/sql/010_cn.sql deleted file mode 100644 index c7353ae..0000000 --- a/sql/010_cn.sql +++ /dev/null @@ -1,35 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('CN-BJ', 'Beijing', 'cn'), - ('CN-TJ', 'Tianjin', 'cn'), - ('CN-HE', 'Hebei', 'cn'), - ('CN-SX', 'Shanxi', 'cn'), - ('CN-NM', 'Inner Mongolia', 'cn'), - ('CN-LN', 'Liaoning', 'cn'), - ('CN-JL', 'Jilin', 'cn'), - ('CN-HL', 'Heilongjiang', 'cn'), - ('CN-SH', 'Shanghai', 'cn'), - ('CN-JS', 'Jiangsu', 'cn'), - ('CN-ZJ', 'Zhejiang', 'cn'), - ('CN-AH', 'Anhui', 'cn'), - ('CN-FJ', 'Fujian', 'cn'), - ('CN-JX', 'Jiangxi', 'cn'), - ('CN-SD', 'Shandong', 'cn'), - ('CN-HA', 'Henan', 'cn'), - ('CN-HB', 'Hubei', 'cn'), - ('CN-HN', 'Hunan', 'cn'), - ('CN-GD', 'Guangdong', 'cn'), - ('CN-GX', 'Guangxi', 'cn'), - ('CN-HI', 'Hainan', 'cn'), - ('CN-CQ', 'Chongqing', 'cn'), - ('CN-SC', 'Sichuan', 'cn'), - ('CN-GZ', 'Guizhou', 'cn'), - ('CN-YN', 'Yunnan', 'cn'), - ('CN-XZ', 'Tibet', 'cn'), - ('CN-SA', 'Shaanxi', 'cn'), - ('CN-GS', 'Gansu', 'cn'), - ('CN-QH', 'Qinghai', 'cn'), - ('CN-NX', 'Ningxia', 'cn'), - ('CN-XJ', 'Xinjiang', 'cn') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/011_in.sql b/sql/011_in.sql deleted file mode 100644 index 45c76b6..0000000 --- a/sql/011_in.sql +++ /dev/null @@ -1,39 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('IN-AN', 'Andaman and Nicobar Islands', 'in'), - ('IN-AP', 'Andhra Pradesh', 'in'), - ('IN-AR', 'Arunachal Pradesh', 'in'), - ('IN-AS', 'Assam', 'in'), - ('IN-BR', 'Bihar', 'in'), - ('IN-CH', 'Chandigarh', 'in'), - ('IN-CT', 'Chhattisgarh', 'in'), - ('IN-DN', 'Dadra and Nagar Haveli and Daman and Diu', 'in'), - ('IN-DD', 'Daman and Diu', 'in'), -- These IDs are consolidated now, but adding separately for compatibility - ('IN-DL', 'Delhi', 'in'), - ('IN-GA', 'Goa', 'in'), - ('IN-GJ', 'Gujarat', 'in'), - ('IN-HR', 'Haryana', 'in'), - ('IN-HP', 'Himachal Pradesh', 'in'), - ('IN-JH', 'Jharkhand', 'in'), - ('IN-KA', 'Karnataka', 'in'), - ('IN-KL', 'Kerala', 'in'), - ('IN-LD', 'Lakshadweep', 'in'), - ('IN-MP', 'Madhya Pradesh', 'in'), - ('IN-MH', 'Maharashtra', 'in'), - ('IN-MN', 'Manipur', 'in'), - ('IN-ML', 'Meghalaya', 'in'), - ('IN-MZ', 'Mizoram', 'in'), - ('IN-NL', 'Nagaland', 'in'), - ('IN-OR', 'Odisha', 'in'), - ('IN-PY', 'Puducherry', 'in'), - ('IN-PB', 'Punjab', 'in'), - ('IN-RJ', 'Rajasthan', 'in'), - ('IN-SK', 'Sikkim', 'in'), - ('IN-TN', 'Tamil Nadu', 'in'), - ('IN-TG', 'Telangana', 'in'), - ('IN-TR', 'Tripura', 'in'), - ('IN-UP', 'Uttar Pradesh', 'in'), - ('IN-UT', 'Uttarakhand', 'in'), - ('IN-WB', 'West Bengal', 'in') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/012_au.sql b/sql/012_au.sql deleted file mode 100644 index 8882314..0000000 --- a/sql/012_au.sql +++ /dev/null @@ -1,12 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('AU-NSW', 'New South Wales', 'au'), - ('AU-VIC', 'Victoria', 'au'), - ('AU-QLD', 'Queensland', 'au'), - ('AU-SA', 'South Australia', 'au'), - ('AU-WA', 'Western Australia', 'au'), - ('AU-TAS', 'Tasmania', 'au'), - ('AU-NT', 'Northern Territory', 'au'), - ('AU-ACT', 'Australian Capital Territory', 'au') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/013_nz.sql b/sql/013_nz.sql deleted file mode 100644 index 9d20865..0000000 --- a/sql/013_nz.sql +++ /dev/null @@ -1,20 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('NZ-N', 'Northland', 'nz'), - ('NZ-AUK', 'Auckland', 'nz'), - ('NZ-WKO', 'Waikato', 'nz'), - ('NZ-BOP', 'Bay of Plenty', 'nz'), - ('NZ-GIS', 'Gisborne', 'nz'), - ('NZ-HKB', 'Hawke''s Bay', 'nz'), - ('NZ-TKI', 'Taranaki', 'nz'), - ('NZ-MWT', 'Manawatū-Whanganui', 'nz'), - ('NZ-WGN', 'Wellington', 'nz'), - ('NZ-TAS', 'Tasman', 'nz'), - ('NZ-NEL', 'Nelson', 'nz'), - ('NZ-MBH', 'Marlborough', 'nz'), - ('NZ-WTC', 'West Coast', 'nz'), - ('NZ-CAN', 'Canterbury', 'nz'), - ('NZ-OTA', 'Otago', 'nz'), - ('NZ-STL', 'Southland', 'nz') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/014_za.sql b/sql/014_za.sql deleted file mode 100644 index 44b493c..0000000 --- a/sql/014_za.sql +++ /dev/null @@ -1,13 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('ZA-EC', 'Eastern Cape', 'za'), - ('ZA-FS', 'Free State', 'za'), - ('ZA-GP', 'Gauteng', 'za'), - ('ZA-KZN', 'KwaZulu-Natal', 'za'), - ('ZA-LP', 'Limpopo', 'za'), - ('ZA-MP', 'Mpumalanga', 'za'), - ('ZA-NW', 'North West', 'za'), - ('ZA-NC', 'Northern Cape', 'za'), - ('ZA-WC', 'Western Cape', 'za') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/015_eg.sql b/sql/015_eg.sql deleted file mode 100644 index 21c5e66..0000000 --- a/sql/015_eg.sql +++ /dev/null @@ -1,31 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('EG-ALX', 'Alexandria', 'eg'), - ('EG-ASN', 'Aswan', 'eg'), - ('EG-ASY', 'Asyut', 'eg'), - ('EG-BHR', 'Beheira', 'eg'), - ('EG-BNS', 'Beni Suef', 'eg'), - ('EG-C', 'Cairo', 'eg'), - ('EG-DK', 'Dakahlia', 'eg'), - ('EG-DAM', 'Damietta', 'eg'), - ('EG-FYM', 'Faiyum', 'eg'), - ('EG-GH', 'Gharbia', 'eg'), - ('EG-GZ', 'Giza', 'eg'), - ('EG-IS', 'Ismailia', 'eg'), - ('EG-KB', 'Kafr El Sheikh', 'eg'), - ('EG-LX', 'Luxor', 'eg'), - ('EG-MN', 'Minya', 'eg'), - ('EG-MT', 'Matrouh', 'eg'), - ('EG-QH', 'Qalyubia', 'eg'), - ('EG-KFS', 'Qena', 'eg'), - ('EG-SHG', 'Sohag', 'eg'), - ('EG-SHR', 'Sharqia', 'eg'), - ('EG-SIN', 'South Sinai', 'eg'), - ('EG-SW', 'Suez', 'eg'), - ('EG-WAD', 'New Valley', 'eg'), - ('EG-ASD', 'North Sinai', 'eg'), - ('EG-PTS', 'Port Said', 'eg'), - ('EG-SKB', 'Suez', 'eg'), - ('EG-ESI', 'Ismailia', 'eg') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/016_br.sql b/sql/016_br.sql deleted file mode 100644 index 6bbbd2b..0000000 --- a/sql/016_br.sql +++ /dev/null @@ -1,31 +0,0 @@ -INSERT INTO "worldTravelCountryRegions" (id, name, country_code) -VALUES - ('BR-AC', 'Acre', 'br'), - ('BR-AL', 'Alagoas', 'br'), - ('BR-AP', 'Amapá', 'br'), - ('BR-AM', 'Amazonas', 'br'), - ('BR-BA', 'Bahia', 'br'), - ('BR-CE', 'Ceará', 'br'), - ('BR-DF', 'Federal District', 'br'), - ('BR-ES', 'Espírito Santo', 'br'), - ('BR-GO', 'Goiás', 'br'), - ('BR-MA', 'Maranhão', 'br'), - ('BR-MT', 'Mato Grosso', 'br'), - ('BR-MS', 'Mato Grosso do Sul', 'br'), - ('BR-MG', 'Minas Gerais', 'br'), - ('BR-PA', 'Pará', 'br'), - ('BR-PB', 'Paraíba', 'br'), - ('BR-PR', 'Paraná', 'br'), - ('BR-PE', 'Pernambuco', 'br'), - ('BR-PI', 'Piauí', 'br'), - ('BR-RJ', 'Rio de Janeiro', 'br'), - ('BR-RN', 'Rio Grande do Norte', 'br'), - ('BR-RS', 'Rio Grande do Sul', 'br'), - ('BR-RO', 'Rondônia', 'br'), - ('BR-RR', 'Roraima', 'br'), - ('BR-SC', 'Santa Catarina', 'br'), - ('BR-SP', 'São Paulo', 'br'), - ('BR-SE', 'Sergipe', 'br'), - ('BR-TO', 'Tocantins', 'br') - -ON CONFLICT (id) DO NOTHING; diff --git a/sql/parks.sql b/sql/parks.sql deleted file mode 100644 index b8697f4..0000000 --- a/sql/parks.sql +++ /dev/null @@ -1,15 +0,0 @@ -INSERT INTO "featuredAdventures" (name, location) VALUES - ('Yellowstone National Park', 'Wyoming, Montana, Idaho, USA'), - ('Yosemite National Park', 'California, USA'), - ('Banff National Park', 'Alberta, Canada'), - ('Kruger National Park', 'Limpopo, South Africa'), - ('Grand Canyon National Park', 'Arizona, USA'), - ('Great Smoky Mountains National Park', 'North Carolina, Tennessee, USA'), - ('Zion National Park', 'Utah, USA'), - ('Glacier National Park', 'Montana, USA'), - ('Rocky Mountain National Park', 'Colorado, USA'), - ('Everglades National Park', 'Florida, USA'), - ('Arches National Park', 'Utah, USA'), - ('Acadia National Park', 'Maine, USA'), - ('Sequoia National Park', 'California, USA') -ON CONFLICT (name) DO NOTHING; \ No newline at end of file diff --git a/src/hooks.server.ts b/src/hooks.server.ts index caa3471..d6a50eb 100644 --- a/src/hooks.server.ts +++ b/src/hooks.server.ts @@ -1,6 +1,6 @@ import { lucia } from "$lib/server/auth"; import { redirect, type Handle } from "@sveltejs/kit"; -import { sequence } from '@sveltejs/kit/hooks'; +import { sequence } from "@sveltejs/kit/hooks"; import { db } from "$lib/db/db.server"; import { userTable } from "$lib/db/schema"; import { eq } from "drizzle-orm"; @@ -24,7 +24,7 @@ export const authHook: Handle = async ({ event, resolve }) => { }); } if (!session) { - const sessionCookie:any = lucia.createBlankSessionCookie(); + const sessionCookie: any = lucia.createBlankSessionCookie(); event.cookies.set(sessionCookie.name, sessionCookie.value, { path: ".", ...sessionCookie.attributes, @@ -36,12 +36,12 @@ export const authHook: Handle = async ({ event, resolve }) => { }; export const themeHook: Handle = async ({ event, resolve }) => { - let theme:String | null = null; + let theme: String | null = null; const newTheme = event.url.searchParams.get("theme"); const cookieTheme = event.cookies.get("colortheme"); - if(newTheme) { + if (newTheme) { theme = newTheme; } else if (cookieTheme) { theme = cookieTheme; @@ -49,25 +49,20 @@ export const themeHook: Handle = async ({ event, resolve }) => { if (theme) { return await resolve(event, { transformPageChunk: ({ html }) => - html.replace('data-theme=""', `data-theme="${theme}"`) - }) + html.replace('data-theme=""', `data-theme="${theme}"`), + }); } return await resolve(event); -} +}; export const setupAdminUser: Handle = async ({ event, resolve }) => { // Check if an admin user exists - /* let result = await db - .select() - .from(userVisitedAdventures) - .where(eq(userVisitedAdventures.userId, event.locals.user.id)) - .execute();*/ let adminUser = await db - .select() - .from(userTable) - .where(eq(userTable.role, 'admin')) - .execute(); + .select() + .from(userTable) + .where(eq(userTable.role, "admin")) + .execute(); // If an admin user exists, return the resolved event if (adminUser != null && adminUser.length > 0) { event.locals.isServerSetup = true; diff --git a/src/lib/components/AdventureCard.svelte b/src/lib/components/AdventureCard.svelte index 79684f2..4adc189 100644 --- a/src/lib/components/AdventureCard.svelte +++ b/src/lib/components/AdventureCard.svelte @@ -3,13 +3,14 @@ import locationDot from "$lib/assets/locationDot.svg"; import calendar from "$lib/assets/calendar.svg"; import { goto } from "$app/navigation"; + import { desc } from "drizzle-orm"; const dispatch = createEventDispatcher(); export let type: String; export let name: String | undefined = undefined; export let location: String | undefined = undefined; - export let created: String | undefined = undefined; + export let date: String | undefined = undefined; export let id: Number | undefined = undefined; export let regionId: String | undefined = undefined; export let visited: Boolean | undefined = undefined; @@ -38,91 +39,31 @@ } -{#if type === "mylog"} -
-
-

{name}

- {#if location !== ""} -
- -

{location}

-
- {/if} - {#if created !== ""} -
- -

{created}

-
- {/if} -
+
+
+

{name}

+ {#if location && location !== ""} +
+ +

{location}

+
+ {/if} + {#if date && date !== ""} +
+ +

{date}

+
+ {/if} +
+ {#if type == "mylog"} -
-
-
-{/if} - -{#if type === "featured"} -
-
-

{name}

- {#if location != ""} -
- -

{location}

-
{/if} -
+ {#if type == "featured"} -
-
-
-{/if} - -{#if type === "shared"} -
-
-

{name}

- {#if location !== ""} -
- -

{location}

-
- {/if} - {#if created !== ""} -
- -

{created}

-
{/if}
-{/if} - -{#if type === "worldtravelregion"} -
-
-

{name}

-

{regionId}

-
- - {#if !visited} - - {/if} - {#if visited} - - {/if} -
-
-
-{/if} +
diff --git a/src/lib/components/ConfirmModal.svelte b/src/lib/components/ConfirmModal.svelte new file mode 100644 index 0000000..e807e7d --- /dev/null +++ b/src/lib/components/ConfirmModal.svelte @@ -0,0 +1,43 @@ + + + + + + + diff --git a/src/lib/components/DeleteConfirmation.svelte b/src/lib/components/DeleteConfirmation.svelte index 96d5b85..e227f74 100644 --- a/src/lib/components/DeleteConfirmation.svelte +++ b/src/lib/components/DeleteConfirmation.svelte @@ -51,10 +51,10 @@ />
- +
diff --git a/src/lib/components/EditModal.svelte b/src/lib/components/EditModal.svelte index 59a813b..baecd7b 100644 --- a/src/lib/components/EditModal.svelte +++ b/src/lib/components/EditModal.svelte @@ -2,7 +2,7 @@ export let editId: number = NaN; export let editName: string = ""; export let editLocation: string = ""; - export let editCreated: string = ""; + export let editdate: string = ""; import { createEventDispatcher } from "svelte"; import type { Adventure } from "$lib/utils/types"; const dispatch = createEventDispatcher(); @@ -23,7 +23,7 @@ id: editId, name: editName, location: editLocation, - created: editCreated, + date: editdate, }; dispatch("submit", adventureEdited); console.log(adventureEdited); @@ -70,11 +70,11 @@ />
- +
diff --git a/src/lib/components/UserCard.svelte b/src/lib/components/UserCard.svelte new file mode 100644 index 0000000..64ee94b --- /dev/null +++ b/src/lib/components/UserCard.svelte @@ -0,0 +1,19 @@ + + +
+
+

{user.first_name} {user.last_name}

+

{user.username} - {user.icon}

+

Last Login: {user.last_login}

+

date: {user.signup_date}

+

{user.role}

+

{user.id}

+
+ +
+
+
diff --git a/src/lib/components/WorldTravelCard.svelte b/src/lib/components/WorldTravelCard.svelte new file mode 100644 index 0000000..99acd6b --- /dev/null +++ b/src/lib/components/WorldTravelCard.svelte @@ -0,0 +1,42 @@ + + +
+
+

{name}

+

{regionId}

+
+ + {#if !visited} + + {/if} + {#if visited} + + {/if} +
+
+
diff --git a/src/lib/db/insertData.ts b/src/lib/db/insertData.ts new file mode 100644 index 0000000..f6ab875 --- /dev/null +++ b/src/lib/db/insertData.ts @@ -0,0 +1,505 @@ +import { sql } from "drizzle-orm"; +import { db } from "./db.server"; + +export async function insertData() { + // insets default featured adventures + console.log("Inserting default featured adventures..."); + await db.execute(sql`INSERT INTO "adventures" (name, location, type) VALUES + ('Yellowstone National Park', 'Wyoming, Montana, Idaho, USA', 'featured'), + ('Yosemite National Park', 'California, USA', 'featured'), + ('Banff National Park', 'Alberta, Canada', 'featured'), + ('Kruger National Park', 'Limpopo, South Africa', 'featured'), + ('Grand Canyon National Park', 'Arizona, USA', 'featured'), + ('Great Smoky Mountains National Park', 'North Carolina, Tennessee, USA', 'featured'), + ('Zion National Park', 'Utah, USA', 'featured'), + ('Glacier National Park', 'Montana, USA', 'featured'), + ('Rocky Mountain National Park', 'Colorado, USA', 'featured'), + ('Everglades National Park', 'Florida, USA', 'featured'), + ('Arches National Park', 'Utah, USA', 'featured'), + ('Acadia National Park', 'Maine, USA', 'featured'), + ('Sequoia National Park', 'California, USA', 'featured');`); + + console.log("Inserting countries..."); + await db.execute(sql`INSERT INTO "worldTravelCountries" (name, country_code, continent) + VALUES + ('United States', 'us', 'North America'), + ('Canada', 'ca', 'North America'), + ('Mexico', 'mx', 'North America'), + ('Brazil', 'br', 'South America'), + ('Argentina', 'ar', 'South America'), + ('United Kingdom', 'gb', 'Europe'), + ('Germany', 'de', 'Europe'), + ('France', 'fr', 'Europe'), + ('Japan', 'jp', 'Asia'), + ('China', 'cn', 'Asia'), + ('India', 'in', 'Asia'), + ('Australia', 'au', 'Oceania'), + ('New Zealand', 'nz', 'Oceania'), + ('South Africa', 'za', 'Africa'), + ('Egypt', 'eg', 'Africa') + ON CONFLICT (country_code) DO NOTHING;`); + + console.log("Inserting regions..."); + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) VALUES + ('US-AL', 'Alabama', 'us'), + ('US-AK', 'Alaska', 'us'), + ('US-AZ', 'Arizona', 'us'), + ('US-AR', 'Arkansas', 'us'), + ('US-CA', 'California', 'us'), + ('US-CO', 'Colorado', 'us'), + ('US-CT', 'Connecticut', 'us'), + ('US-DE', 'Delaware', 'us'), + ('US-FL', 'Florida', 'us'), + ('US-GA', 'Georgia', 'us'), + ('US-HI', 'Hawaii', 'us'), + ('US-ID', 'Idaho', 'us'), + ('US-IL', 'Illinois', 'us'), + ('US-IN', 'Indiana', 'us'), + ('US-IA', 'Iowa', 'us'), + ('US-KS', 'Kansas', 'us'), + ('US-KY', 'Kentucky', 'us'), + ('US-LA', 'Louisiana', 'us'), + ('US-ME', 'Maine', 'us'), + ('US-MD', 'Maryland', 'us'), + ('US-MA', 'Massachusetts', 'us'), + ('US-MI', 'Michigan', 'us'), + ('US-MN', 'Minnesota', 'us'), + ('US-MS', 'Mississippi', 'us'), + ('US-MO', 'Missouri', 'us'), + ('US-MT', 'Montana', 'us'), + ('US-NE', 'Nebraska', 'us'), + ('US-NV', 'Nevada', 'us'), + ('US-NH', 'New Hampshire', 'us'), + ('US-NJ', 'New Jersey', 'us'), + ('US-NM', 'New Mexico', 'us'), + ('US-NY', 'New York', 'us'), + ('US-NC', 'North Carolina', 'us'), + ('US-ND', 'North Dakota', 'us'), + ('US-OH', 'Ohio', 'us'), + ('US-OK', 'Oklahoma', 'us'), + ('US-OR', 'Oregon', 'us'), + ('US-PA', 'Pennsylvania', 'us'), + ('US-RI', 'Rhode Island', 'us'), + ('US-SC', 'South Carolina', 'us'), + ('US-SD', 'South Dakota', 'us'), + ('US-TN', 'Tennessee', 'us'), + ('US-TX', 'Texas', 'us'), + ('US-UT', 'Utah', 'us'), + ('US-VT', 'Vermont', 'us'), + ('US-VA', 'Virginia', 'us'), + ('US-WA', 'Washington', 'us'), + ('US-WV', 'West Virginia', 'us'), + ('US-WI', 'Wisconsin', 'us'), + ('US-WY', 'Wyoming', 'us') +ON CONFLICT (id) DO NOTHING; +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('CA-AB', 'Alberta', 'ca'), + ('CA-BC', 'British Columbia', 'ca'), + ('CA-MB', 'Manitoba', 'ca'), + ('CA-NB', 'New Brunswick', 'ca'), + ('CA-NL', 'Newfoundland and Labrador', 'ca'), + ('CA-NS', 'Nova Scotia', 'ca'), + ('CA-ON', 'Ontario', 'ca'), + ('CA-PE', 'Prince Edward Island', 'ca'), + ('CA-QC', 'Quebec', 'ca'), + ('CA-SK', 'Saskatchewan', 'ca'), + ('CA-NT', 'Northwest Territories', 'ca'), + ('CA-NU', 'Nunavut', 'ca'), + ('CA-YT', 'Yukon', 'ca') + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('DE-BW', 'Baden-Württemberg', 'de'), + ('DE-BY', 'Bavaria', 'de'), + ('DE-BE', 'Berlin', 'de'), + ('DE-BB', 'Brandenburg', 'de'), + ('DE-HB', 'Bremen', 'de'), + ('DE-HH', 'Hamburg', 'de'), + ('DE-HE', 'Hesse', 'de'), + ('DE-NI', 'Lower Saxony', 'de'), + ('DE-MV', 'Mecklenburg-Vorpommern', 'de'), + ('DE-NW', 'North Rhine-Westphalia', 'de'), + ('DE-RP', 'Rhineland-Palatinate', 'de'), + ('DE-SL', 'Saarland', 'de'), + ('DE-SN', 'Saxony', 'de'), + ('DE-ST', 'Saxony-Anhalt', 'de'), + ('DE-SH', 'Schleswig-Holstein', 'de'), + ('DE-TH', 'Thuringia', 'de') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('FR-ARA', 'Auvergne-Rhône-Alpes', 'fr'), + ('FR-BFC', 'Bourgogne-Franche-Comté', 'fr'), + ('FR-BRE', 'Brittany', 'fr'), + ('FR-CVL', 'Centre-Val de Loire', 'fr'), + ('FR-GES', 'Grand Est', 'fr'), + ('FR-HDF', 'Hauts-de-France', 'fr'), + ('FR-IDF', 'Île-de-France', 'fr'), + ('FR-NOR', 'Normandy', 'fr'), + ('FR-NAQ', 'Nouvelle-Aquitaine', 'fr'), + ('FR-OCC', 'Occitanie', 'fr'), + ('FR-PDL', 'Pays de la Loire', 'fr'), + ('FR-PAC', 'Provence-Alpes-Côte d''Azur', 'fr'), + ('FR-COR', 'Corsica', 'fr'), + ('FR-MQ', 'Martinique', 'fr'), + ('FR-GF', 'French Guiana', 'fr'), + ('FR-RÉ', 'Réunion', 'fr'), + ('FR-YT', 'Mayotte', 'fr'), + ('FR-GP', 'Guadeloupe', 'fr') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('GB-ENG', 'England', 'gb'), + ('GB-NIR', 'Northern Ireland', 'gb'), + ('GB-SCT', 'Scotland', 'gb'), + ('GB-WLS', 'Wales', 'gb') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('AR-C', 'Ciudad Autónoma de Buenos Aires', 'ar'), + ('AR-B', 'Buenos Aires', 'ar'), + ('AR-K', 'Catamarca', 'ar'), + ('AR-H', 'Chaco', 'ar'), + ('AR-U', 'Chubut', 'ar'), + ('AR-W', 'Córdoba', 'ar'), + ('AR-X', 'Corrientes', 'ar'), + ('AR-E', 'Entre Ríos', 'ar'), + ('AR-P', 'Formosa', 'ar'), + ('AR-Y', 'Jujuy', 'ar'), + ('AR-L', 'La Pampa', 'ar'), + ('AR-F', 'La Rioja', 'ar'), + ('AR-M', 'Mendoza', 'ar'), + ('AR-N', 'Misiones', 'ar'), + ('AR-Q', 'Neuquén', 'ar'), + ('AR-R', 'Río Negro', 'ar'), + ('AR-A', 'Salta', 'ar'), + ('AR-J', 'San Juan', 'ar'), + ('AR-D', 'San Luis', 'ar'), + ('AR-Z', 'Santa Cruz', 'ar'), + ('AR-S', 'Santa Fe', 'ar'), + ('AR-G', 'Santiago del Estero', 'ar'), + ('AR-V', 'Tierra del Fuego', 'ar'), + ('AR-T', 'Tucumán', 'ar') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('MX-AGU', 'Aguascalientes', 'mx'), + ('MX-BCN', 'Baja California', 'mx'), + ('MX-BCS', 'Baja California Sur', 'mx'), + ('MX-CAM', 'Campeche', 'mx'), + ('MX-CHP', 'Chiapas', 'mx'), + ('MX-CHH', 'Chihuahua', 'mx'), + ('MX-COA', 'Coahuila', 'mx'), + ('MX-COL', 'Colima', 'mx'), + ('MX-DUR', 'Durango', 'mx'), + ('MX-GUA', 'Guanajuato', 'mx'), + ('MX-GRO', 'Guerrero', 'mx'), + ('MX-HID', 'Hidalgo', 'mx'), + ('MX-JAL', 'Jalisco', 'mx'), + ('MX-MEX', 'State of Mexico', 'mx'), + ('MX-MIC', 'Michoacán', 'mx'), + ('MX-MOR', 'Morelos', 'mx'), + ('MX-NAY', 'Nayarit', 'mx'), + ('MX-NLE', 'Nuevo León', 'mx'), + ('MX-OAX', 'Oaxaca', 'mx'), + ('MX-PUE', 'Puebla', 'mx'), + ('MX-QUE', 'Querétaro', 'mx'), + ('MX-ROO', 'Quintana Roo', 'mx'), + ('MX-SLP', 'San Luis Potosí', 'mx'), + ('MX-SIN', 'Sinaloa', 'mx'), + ('MX-SON', 'Sonora', 'mx'), + ('MX-TAB', 'Tabasco', 'mx'), + ('MX-TAM', 'Tamaulipas', 'mx'), + ('MX-TLA', 'Tlaxcala', 'mx'), + ('MX-VER', 'Veracruz', 'mx'), + ('MX-YUC', 'Yucatán', 'mx'), + ('MX-ZAC', 'Zacatecas', 'mx') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('JP-01', 'Hokkaido', 'jp'), + ('JP-02', 'Aomori', 'jp'), + ('JP-03', 'Iwate', 'jp'), + ('JP-04', 'Miyagi', 'jp'), + ('JP-05', 'Akita', 'jp'), + ('JP-06', 'Yamagata', 'jp'), + ('JP-07', 'Fukushima', 'jp'), + ('JP-08', 'Ibaraki', 'jp'), + ('JP-09', 'Tochigi', 'jp'), + ('JP-10', 'Gunma', 'jp'), + ('JP-11', 'Saitama', 'jp'), + ('JP-12', 'Chiba', 'jp'), + ('JP-13', 'Tokyo', 'jp'), + ('JP-14', 'Kanagawa', 'jp'), + ('JP-15', 'Niigata', 'jp'), + ('JP-16', 'Toyama', 'jp'), + ('JP-17', 'Ishikawa', 'jp'), + ('JP-18', 'Fukui', 'jp'), + ('JP-19', 'Yamanashi', 'jp'), + ('JP-20', 'Nagano', 'jp'), + ('JP-21', 'Gifu', 'jp'), + ('JP-22', 'Shizuoka', 'jp'), + ('JP-23', 'Aichi', 'jp'), + ('JP-24', 'Mie', 'jp'), + ('JP-25', 'Shiga', 'jp'), + ('JP-26', 'Kyoto', 'jp'), + ('JP-27', 'Osaka', 'jp'), + ('JP-28', 'Hyogo', 'jp'), + ('JP-29', 'Nara', 'jp'), + ('JP-30', 'Wakayama', 'jp'), + ('JP-31', 'Tottori', 'jp'), + ('JP-32', 'Shimane', 'jp'), + ('JP-33', 'Okayama', 'jp'), + ('JP-34', 'Hiroshima', 'jp'), + ('JP-35', 'Yamaguchi', 'jp'), + ('JP-36', 'Tokushima', 'jp'), + ('JP-37', 'Kagawa', 'jp'), + ('JP-38', 'Ehime', 'jp'), + ('JP-39', 'Kochi', 'jp'), + ('JP-40', 'Fukuoka', 'jp'), + ('JP-41', 'Saga', 'jp'), + ('JP-42', 'Nagasaki', 'jp'), + ('JP-43', 'Kumamoto', 'jp'), + ('JP-44', 'Oita', 'jp'), + ('JP-45', 'Miyazaki', 'jp'), + ('JP-46', 'Kagoshima', 'jp'), + ('JP-47', 'Okinawa', 'jp') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('CN-BJ', 'Beijing', 'cn'), + ('CN-TJ', 'Tianjin', 'cn'), + ('CN-HE', 'Hebei', 'cn'), + ('CN-SX', 'Shanxi', 'cn'), + ('CN-NM', 'Inner Mongolia', 'cn'), + ('CN-LN', 'Liaoning', 'cn'), + ('CN-JL', 'Jilin', 'cn'), + ('CN-HL', 'Heilongjiang', 'cn'), + ('CN-SH', 'Shanghai', 'cn'), + ('CN-JS', 'Jiangsu', 'cn'), + ('CN-ZJ', 'Zhejiang', 'cn'), + ('CN-AH', 'Anhui', 'cn'), + ('CN-FJ', 'Fujian', 'cn'), + ('CN-JX', 'Jiangxi', 'cn'), + ('CN-SD', 'Shandong', 'cn'), + ('CN-HA', 'Henan', 'cn'), + ('CN-HB', 'Hubei', 'cn'), + ('CN-HN', 'Hunan', 'cn'), + ('CN-GD', 'Guangdong', 'cn'), + ('CN-GX', 'Guangxi', 'cn'), + ('CN-HI', 'Hainan', 'cn'), + ('CN-CQ', 'Chongqing', 'cn'), + ('CN-SC', 'Sichuan', 'cn'), + ('CN-GZ', 'Guizhou', 'cn'), + ('CN-YN', 'Yunnan', 'cn'), + ('CN-XZ', 'Tibet', 'cn'), + ('CN-SA', 'Shaanxi', 'cn'), + ('CN-GS', 'Gansu', 'cn'), + ('CN-QH', 'Qinghai', 'cn'), + ('CN-NX', 'Ningxia', 'cn'), + ('CN-XJ', 'Xinjiang', 'cn') + + ON CONFLICT (id) DO NOTHING; + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('IN-AN', 'Andaman and Nicobar Islands', 'in'), + ('IN-AP', 'Andhra Pradesh', 'in'), + ('IN-AR', 'Arunachal Pradesh', 'in'), + ('IN-AS', 'Assam', 'in'), + ('IN-BR', 'Bihar', 'in'), + ('IN-CH', 'Chandigarh', 'in'), + ('IN-CT', 'Chhattisgarh', 'in'), + ('IN-DN', 'Dadra and Nagar Haveli and Daman and Diu', 'in'), + ('IN-DD', 'Daman and Diu', 'in'), -- These IDs are consolidated now, but adding separately for compatibility + ('IN-DL', 'Delhi', 'in'), + ('IN-GA', 'Goa', 'in'), + ('IN-GJ', 'Gujarat', 'in'), + ('IN-HR', 'Haryana', 'in'), + ('IN-HP', 'Himachal Pradesh', 'in'), + ('IN-JH', 'Jharkhand', 'in'), + ('IN-KA', 'Karnataka', 'in'), + ('IN-KL', 'Kerala', 'in'), + ('IN-LD', 'Lakshadweep', 'in'), + ('IN-MP', 'Madhya Pradesh', 'in'), + ('IN-MH', 'Maharashtra', 'in'), + ('IN-MN', 'Manipur', 'in'), + ('IN-ML', 'Meghalaya', 'in'), + ('IN-MZ', 'Mizoram', 'in'), + ('IN-NL', 'Nagaland', 'in'), + ('IN-OR', 'Odisha', 'in'), + ('IN-PY', 'Puducherry', 'in'), + ('IN-PB', 'Punjab', 'in'), + ('IN-RJ', 'Rajasthan', 'in'), + ('IN-SK', 'Sikkim', 'in'), + ('IN-TN', 'Tamil Nadu', 'in'), + ('IN-TG', 'Telangana', 'in'), + ('IN-TR', 'Tripura', 'in'), + ('IN-UP', 'Uttar Pradesh', 'in'), + ('IN-UT', 'Uttarakhand', 'in'), + ('IN-WB', 'West Bengal', 'in') + + ON CONFLICT (id) DO NOTHING; + + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) +VALUES + ('AU-NSW', 'New South Wales', 'au'), + ('AU-VIC', 'Victoria', 'au'), + ('AU-QLD', 'Queensland', 'au'), + ('AU-SA', 'South Australia', 'au'), + ('AU-WA', 'Western Australia', 'au'), + ('AU-TAS', 'Tasmania', 'au'), + ('AU-NT', 'Northern Territory', 'au'), + ('AU-ACT', 'Australian Capital Territory', 'au') + +ON CONFLICT (id) DO NOTHING; + + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('NZ-N', 'Northland', 'nz'), + ('NZ-AUK', 'Auckland', 'nz'), + ('NZ-WKO', 'Waikato', 'nz'), + ('NZ-BOP', 'Bay of Plenty', 'nz'), + ('NZ-GIS', 'Gisborne', 'nz'), + ('NZ-HKB', 'Hawke''s Bay', 'nz'), + ('NZ-TKI', 'Taranaki', 'nz'), + ('NZ-MWT', 'Manawatū-Whanganui', 'nz'), + ('NZ-WGN', 'Wellington', 'nz'), + ('NZ-TAS', 'Tasman', 'nz'), + ('NZ-NEL', 'Nelson', 'nz'), + ('NZ-MBH', 'Marlborough', 'nz'), + ('NZ-WTC', 'West Coast', 'nz'), + ('NZ-CAN', 'Canterbury', 'nz'), + ('NZ-OTA', 'Otago', 'nz'), + ('NZ-STL', 'Southland', 'nz') + + ON CONFLICT (id) DO NOTHING; + + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('ZA-EC', 'Eastern Cape', 'za'), + ('ZA-FS', 'Free State', 'za'), + ('ZA-GP', 'Gauteng', 'za'), + ('ZA-KZN', 'KwaZulu-Natal', 'za'), + ('ZA-LP', 'Limpopo', 'za'), + ('ZA-MP', 'Mpumalanga', 'za'), + ('ZA-NW', 'North West', 'za'), + ('ZA-NC', 'Northern Cape', 'za'), + ('ZA-WC', 'Western Cape', 'za') + + ON CONFLICT (id) DO NOTHING; + + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) + VALUES + ('EG-ALX', 'Alexandria', 'eg'), + ('EG-ASN', 'Aswan', 'eg'), + ('EG-ASY', 'Asyut', 'eg'), + ('EG-BHR', 'Beheira', 'eg'), + ('EG-BNS', 'Beni Suef', 'eg'), + ('EG-C', 'Cairo', 'eg'), + ('EG-DK', 'Dakahlia', 'eg'), + ('EG-DAM', 'Damietta', 'eg'), + ('EG-FYM', 'Faiyum', 'eg'), + ('EG-GH', 'Gharbia', 'eg'), + ('EG-GZ', 'Giza', 'eg'), + ('EG-IS', 'Ismailia', 'eg'), + ('EG-KB', 'Kafr El Sheikh', 'eg'), + ('EG-LX', 'Luxor', 'eg'), + ('EG-MN', 'Minya', 'eg'), + ('EG-MT', 'Matrouh', 'eg'), + ('EG-QH', 'Qalyubia', 'eg'), + ('EG-KFS', 'Qena', 'eg'), + ('EG-SHG', 'Sohag', 'eg'), + ('EG-SHR', 'Sharqia', 'eg'), + ('EG-SIN', 'South Sinai', 'eg'), + ('EG-SW', 'Suez', 'eg'), + ('EG-WAD', 'New Valley', 'eg'), + ('EG-ASD', 'North Sinai', 'eg'), + ('EG-PTS', 'Port Said', 'eg'), + ('EG-SKB', 'Suez', 'eg'), + ('EG-ESI', 'Ismailia', 'eg') + + ON CONFLICT (id) DO NOTHING; + + +`); + + await db.execute(sql`INSERT INTO "worldTravelCountryRegions" (id, name, country_code) +VALUES + ('BR-AC', 'Acre', 'br'), + ('BR-AL', 'Alagoas', 'br'), + ('BR-AP', 'Amapá', 'br'), + ('BR-AM', 'Amazonas', 'br'), + ('BR-BA', 'Bahia', 'br'), + ('BR-CE', 'Ceará', 'br'), + ('BR-DF', 'Federal District', 'br'), + ('BR-ES', 'Espírito Santo', 'br'), + ('BR-GO', 'Goiás', 'br'), + ('BR-MA', 'Maranhão', 'br'), + ('BR-MT', 'Mato Grosso', 'br'), + ('BR-MS', 'Mato Grosso do Sul', 'br'), + ('BR-MG', 'Minas Gerais', 'br'), + ('BR-PA', 'Pará', 'br'), + ('BR-PB', 'Paraíba', 'br'), + ('BR-PR', 'Paraná', 'br'), + ('BR-PE', 'Pernambuco', 'br'), + ('BR-PI', 'Piauí', 'br'), + ('BR-RJ', 'Rio de Janeiro', 'br'), + ('BR-RN', 'Rio Grande do Norte', 'br'), + ('BR-RS', 'Rio Grande do Sul', 'br'), + ('BR-RO', 'Rondônia', 'br'), + ('BR-RR', 'Roraima', 'br'), + ('BR-SC', 'Santa Catarina', 'br'), + ('BR-SP', 'São Paulo', 'br'), + ('BR-SE', 'Sergipe', 'br'), + ('BR-TO', 'Tocantins', 'br') + +ON CONFLICT (id) DO NOTHING; + + +`); +} diff --git a/src/lib/db/schema.ts b/src/lib/db/schema.ts index f600f11..24e5129 100644 --- a/src/lib/db/schema.ts +++ b/src/lib/db/schema.ts @@ -1,3 +1,4 @@ +import { desc } from "drizzle-orm"; import { pgTable, text, @@ -52,16 +53,6 @@ export const sessionTable = pgTable("session", { }).notNull(), }); -export const userVisitedAdventures = pgTable("userVisitedAdventures", { - adventureID: serial("adventure_id").primaryKey(), - userId: text("user_id") - .notNull() - .references(() => userTable.id), - adventureName: text("adventure_name").notNull(), - location: text("location"), - visitedDate: text("visited_date"), -}); - export const worldTravelCountries = pgTable("worldTravelCountries", { id: serial("id").primaryKey(), name: text("name").notNull(), @@ -89,4 +80,30 @@ export const userVisitedWorldTravel = pgTable("userVisitedWorldTravel", { region_id: varchar("region_id") .notNull() .references(() => worldTravelCountryRegions.id), -}); \ No newline at end of file +}); + +export const userPlannedAdventures = pgTable("userPlannedAdventures", { + id: serial("id").primaryKey(), + userId: text("userId") + .notNull() + .references(() => userTable.id), + name: text("adventureName").notNull(), + location: text("location"), + activityTypes: json("activityTypes"), + description: text("description"), + date: text("plannedDate"), +}); + +export const adventureTable = pgTable("adventures", { + id: serial("id").primaryKey(), + type: text("type").notNull(), + userId: text("userId").references(() => userTable.id), + name: text("name").notNull(), + location: text("location"), + activityTypes: json("activityTypes"), + description: text("description"), + rating: integer("rating"), + link: text("link"), + imageUrl: text("imageUrl"), + date: text("date"), +}); diff --git a/src/lib/utils/types.ts b/src/lib/utils/types.ts index 645621c..831c609 100644 --- a/src/lib/utils/types.ts +++ b/src/lib/utils/types.ts @@ -1,39 +1,12 @@ export interface Adventure { id: number; + type: string; name: string; - location: string; - created: string; + location?: string | undefined; + activityTypes?: string[] | undefined; + description?: string | undefined; + rating?: number | undefined; + link?: string | undefined; + imageUrl?: string | undefined; + date?: string | undefined; } - -export interface RegionInfo { - name: string; - abbreviation: string; - description: string; - capital: string; - largest_city: string; - area: { - total: number; - units: string; - }; - population: { - estimate: number; - year: number; - }; - state_flower: string; - state_bird: string; - state_tree: string; - climate: { - description: string; - summer_highs: string; - winter_lows: string; - precipitation: string; - }; - economy: { - industries: string[]; - agricultural_products: string[]; - }; - tourism: { - attractions: string[]; - }; - major_sports_teams: string[]; -}; diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 673d702..5e8b46c 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -32,3 +32,11 @@ + + + Home | AdventureLog + + diff --git a/src/routes/api/clearvisits/+server.ts b/src/routes/api/clearvisits/+server.ts index 64fed2f..c033943 100644 --- a/src/routes/api/clearvisits/+server.ts +++ b/src/routes/api/clearvisits/+server.ts @@ -1,27 +1,25 @@ import type { RequestEvent } from "@sveltejs/kit"; import { db } from "$lib/db/db.server"; import { eq } from "drizzle-orm"; -import { userVisitedAdventures } from "$lib/db/schema"; +import { adventureTable } from "$lib/db/schema"; export async function DELETE(event: RequestEvent): Promise { - if (!event.locals.user) { - return new Response(JSON.stringify({ error: "No user found" }), { - status: 401, - headers: { - "Content-Type": "application/json", - }, - }); - } - let res = await db - .delete(userVisitedAdventures) - .where( - eq(userVisitedAdventures.userId, event.locals.user.id), - ) - .execute(); - return new Response(JSON.stringify({ res: res }), { - status: 200, + if (!event.locals.user) { + return new Response(JSON.stringify({ error: "No user found" }), { + status: 401, headers: { "Content-Type": "application/json", }, }); - } \ No newline at end of file + } + let res = await db + .delete(adventureTable) + .where(eq(adventureTable.userId, event.locals.user.id)) + .execute(); + return new Response(JSON.stringify({ res: res }), { + status: 200, + headers: { + "Content-Type": "application/json", + }, + }); +} diff --git a/src/routes/api/regionvisit/+server.ts b/src/routes/api/regionvisit/+server.ts index 0c18c19..4d419f9 100644 --- a/src/routes/api/regionvisit/+server.ts +++ b/src/routes/api/regionvisit/+server.ts @@ -1,78 +1,78 @@ import type { RequestEvent } from "@sveltejs/kit"; import { db } from "$lib/db/db.server"; -import { userVisitedAdventures, userVisitedWorldTravel } from "$lib/db/schema"; +import { userVisitedWorldTravel } from "$lib/db/schema"; import { and, eq } from "drizzle-orm"; export async function POST(event: RequestEvent): Promise { - if (!event.locals.user) { - return new Response(JSON.stringify({ error: "Unauthorized" }), { - status: 401, - headers: { - "Content-Type": "application/json", - }, - }); - } - let body = await event.request.json(); - let res = await db + if (!event.locals.user) { + return new Response(JSON.stringify({ error: "Unauthorized" }), { + status: 401, + headers: { + "Content-Type": "application/json", + }, + }); + } + let body = await event.request.json(); + let res = await db .insert(userVisitedWorldTravel) .values({ - userId: event.locals.user.id, - region_id: body.region_id, - country_code: body.country_code, + userId: event.locals.user.id, + region_id: body.region_id, + country_code: body.country_code, }) .execute(); - return new Response(JSON.stringify({ res: res }), { - status: 200, - headers: { - "Content-Type": "application/json", - }, - }); + return new Response(JSON.stringify({ res: res }), { + status: 200, + headers: { + "Content-Type": "application/json", + }, + }); } export async function GET(event: RequestEvent): Promise { - if (!event.locals.user) { - return new Response(JSON.stringify({ error: "Unauthorized" }), { - status: 401, - headers: { - "Content-Type": "application/json", - }, - }); - } - let res = await db + if (!event.locals.user) { + return new Response(JSON.stringify({ error: "Unauthorized" }), { + status: 401, + headers: { + "Content-Type": "application/json", + }, + }); + } + let res = await db .select() .from(userVisitedWorldTravel) - .where(eq(userVisitedWorldTravel.userId,event.locals.user.id)); - return new Response(JSON.stringify({ res: res }), { - status: 200, - headers: { - "Content-Type": "application/json", - }, - }); + .where(eq(userVisitedWorldTravel.userId, event.locals.user.id)); + return new Response(JSON.stringify({ res: res }), { + status: 200, + headers: { + "Content-Type": "application/json", + }, + }); } export async function DELETE(event: RequestEvent): Promise { - if (!event.locals.user) { - return new Response(JSON.stringify({ error: "Unauthorized" }), { - status: 401, - headers: { - "Content-Type": "application/json", - }, - }); - } - let body = await event.request.json(); - let res = await db + if (!event.locals.user) { + return new Response(JSON.stringify({ error: "Unauthorized" }), { + status: 401, + headers: { + "Content-Type": "application/json", + }, + }); + } + let body = await event.request.json(); + let res = await db .delete(userVisitedWorldTravel) .where( - and( - eq(userVisitedWorldTravel.userId, event.locals.user.id), - eq(userVisitedWorldTravel.region_id, body.region_id), - ) + and( + eq(userVisitedWorldTravel.userId, event.locals.user.id), + eq(userVisitedWorldTravel.region_id, body.region_id) + ) ) .execute(); - return new Response(JSON.stringify({ res: res }), { - status: 200, - headers: { - "Content-Type": "application/json", - }, - }); -} \ No newline at end of file + return new Response(JSON.stringify({ res: res }), { + status: 200, + headers: { + "Content-Type": "application/json", + }, + }); +} diff --git a/src/routes/api/visitcount/+server.ts b/src/routes/api/visitcount/+server.ts index 7d28582..6b2ab1c 100644 --- a/src/routes/api/visitcount/+server.ts +++ b/src/routes/api/visitcount/+server.ts @@ -1,34 +1,34 @@ import type { RequestEvent } from "@sveltejs/kit"; -import { count } from 'drizzle-orm'; +import { count } from "drizzle-orm"; import { eq } from "drizzle-orm"; -import { userVisitedAdventures } from "$lib/db/schema"; +import { adventureTable } from "$lib/db/schema"; import { db } from "$lib/db/db.server"; export async function GET(event: RequestEvent): Promise { - if (!event.locals.user) { - return new Response(JSON.stringify({ error: "No user found" }), { - status: 401, - headers: { - "Content-Type": "application/json", - }, - }); - } - // get the count of the number of adventures the user has visited - let result = await db - .select({ count: count() }) - .from(userVisitedAdventures) - .where(eq(userVisitedAdventures.userId,event.locals.user.id)) - .execute(); + if (!event.locals.user) { + return new Response(JSON.stringify({ error: "No user found" }), { + status: 401, + headers: { + "Content-Type": "application/json", + }, + }); + } + // get the count of the number of adventures the user has visited + let result = await db + .select({ count: count() }) + .from(adventureTable) + .where(eq(adventureTable.userId, event.locals.user.id)) + .execute(); - return new Response( - JSON.stringify({ - visitCount: result[0].count, - }), - { - status: 200, - headers: { - "Content-Type": "application/json", - }, - } - ); - } \ No newline at end of file + return new Response( + JSON.stringify({ + visitCount: result[0].count, + }), + { + status: 200, + headers: { + "Content-Type": "application/json", + }, + } + ); +} diff --git a/src/routes/api/visits/+server.ts b/src/routes/api/visits/+server.ts index 72db320..0350389 100644 --- a/src/routes/api/visits/+server.ts +++ b/src/routes/api/visits/+server.ts @@ -1,6 +1,6 @@ import { lucia } from "$lib/server/auth"; import type { RequestEvent } from "@sveltejs/kit"; -import { userVisitedAdventures } from "$lib/db/schema"; +import { adventureTable } from "$lib/db/schema"; import { db } from "$lib/db/db.server"; import { and, eq } from "drizzle-orm"; import type { Adventure } from "$lib/utils/types"; @@ -17,18 +17,12 @@ export async function GET(event: RequestEvent): Promise { } let result = await db .select() - .from(userVisitedAdventures) - .where(eq(userVisitedAdventures.userId, event.locals.user.id)) + .from(adventureTable) + .where(eq(adventureTable.userId, event.locals.user.id)) .execute(); return new Response( - JSON.stringify({ - adventures: result.map((item) => ({ - id: item.adventureID, - name: item.adventureName, - location: item.location, - created: item.visitedDate, - })), - }), + // turn the result into an Adventure object array + JSON.stringify(result.map((r) => r as Adventure)), { status: 200, headers: { @@ -62,11 +56,11 @@ export async function DELETE(event: RequestEvent): Promise { } let res = await db - .delete(userVisitedAdventures) + .delete(adventureTable) .where( and( - eq(userVisitedAdventures.userId, event.locals.user.id), - eq(userVisitedAdventures.adventureID, Number(id)) + eq(adventureTable.userId, event.locals.user.id), + eq(adventureTable.id, Number(id)) ) ) .execute(); @@ -90,38 +84,40 @@ export async function POST(event: RequestEvent): Promise { }); } - // get properties from the body - const { name, location, created } = await event.request.json(); + const { newAdventure } = await event.request.json(); + console.log(newAdventure); + const { name, location, date } = newAdventure; // insert the adventure to the user's visited list await db - .insert(userVisitedAdventures) + .insert(adventureTable) .values({ userId: event.locals.user.id, - adventureName: name, + type: "mylog", + name: name, location: location, - visitedDate: created, + date: date, }) .execute(); -let res = await db + let res = await db .select() - .from(userVisitedAdventures) + .from(adventureTable) .where( and( - eq(userVisitedAdventures.userId, event.locals.user.id), - eq(userVisitedAdventures.adventureName, name), - eq(userVisitedAdventures.location, location), - eq(userVisitedAdventures.visitedDate, created) + eq(adventureTable.userId, event.locals.user.id), + eq(adventureTable.name, name), + eq(adventureTable.location, location), + eq(adventureTable.date, date) ) ) .execute(); -// return a response with the adventure object values + // return a response with the adventure object values return new Response( JSON.stringify({ - adventure: { name, location, created }, + adventure: { name, location, date }, message: { message: "Adventure added" }, - id: res[0].adventureID + id: res[0].id, }), { status: 200, @@ -144,27 +140,29 @@ export async function PUT(event: RequestEvent): Promise { } // get properties from the body - const { id, name, location, created } = await event.request.json(); + const { newAdventure } = await event.request.json(); + console.log(newAdventure); + const { name, location, date, id } = newAdventure; // update the adventure in the user's visited list await db - .update(userVisitedAdventures) + .update(adventureTable) .set({ - adventureName: name, + name: name, location: location, - visitedDate: created, + date: date, }) .where( and( - eq(userVisitedAdventures.userId, event.locals.user.id), - eq(userVisitedAdventures.adventureID, Number(id)) + eq(adventureTable.userId, event.locals.user.id), + eq(adventureTable.id, Number(id)) ) ) .execute(); return new Response( JSON.stringify({ - adventure: { id, name, location, created }, + adventure: { id, name, location, date }, message: { message: "Adventure updated" }, }), { @@ -174,4 +172,4 @@ export async function PUT(event: RequestEvent): Promise { }, } ); -} \ No newline at end of file +} diff --git a/src/routes/featured/+page.server.ts b/src/routes/featured/+page.server.ts index eb91938..c60aa47 100644 --- a/src/routes/featured/+page.server.ts +++ b/src/routes/featured/+page.server.ts @@ -1,12 +1,14 @@ import { db } from "$lib/db/db.server"; -import { featuredAdventures } from "$lib/db/schema"; +import { adventureTable, featuredAdventures } from "$lib/db/schema"; import type { Adventure } from "$lib/utils/types"; +import { eq } from "drizzle-orm"; export const load = async () => { const result = await db .select() - .from(featuredAdventures) - .orderBy(featuredAdventures.id); + .from(adventureTable) + .where(eq(adventureTable.type, "featured")) + .orderBy(adventureTable.id); return { result: result as Adventure[], }; diff --git a/src/routes/featured/+page.svelte b/src/routes/featured/+page.svelte index a755ee0..eb8f6a2 100644 --- a/src/routes/featured/+page.svelte +++ b/src/routes/featured/+page.svelte @@ -11,15 +11,21 @@ }); async function add(event: CustomEvent<{ name: string; location: string }>) { + let newAdventure: Adventure = { + name: event.detail.name, + location: event.detail.location, + date: "", + type: "mylog", + id: -1, + }; + const response = await fetch("/api/visits", { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ - name: event.detail.name, - location: event.detail.location, - created: "", + newAdventure, }), }); @@ -46,7 +52,7 @@ on:add={add} name={adventure.name} location={adventure.location} - created="" + date="" id={NaN} /> {/each} diff --git a/src/routes/log/+page.svelte b/src/routes/log/+page.svelte index ec4a203..5849516 100644 --- a/src/routes/log/+page.svelte +++ b/src/routes/log/+page.svelte @@ -20,7 +20,7 @@ let editId: number = NaN; let editName: string = ""; let editLocation: string = ""; - let editCreated: string = ""; + let editdate: string = ""; let isShowingToast: boolean = false; let toastAction: string = ""; @@ -28,7 +28,7 @@ // Sets the adventures array to the data from the server onMount(async () => { console.log(data); - adventures = data.result.adventures; + adventures = data.result; isLoading = false; }); @@ -63,15 +63,22 @@ let currentDate = new Date(); let dateString = currentDate.toISOString().slice(0, 10); // Get date in "yyyy-mm-dd" format // post to /api/visits + + let newAdventure: Adventure = { + type: "mylog", + name: newName, + location: newLocation, + date: dateString, + id: -1, + }; + fetch("/api/visits", { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ - name: newName, - location: newLocation, - created: dateString, + newAdventure, }), }) .then((response) => response.json()) @@ -82,9 +89,10 @@ ...adventures, { id: newId, + type: "mylog", name: newName, location: newLocation, - created: dateString, + date: dateString, }, ]; newName = ""; // Reset newName and newLocation after adding adventure @@ -99,6 +107,15 @@ function saveAdventure(event: { detail: Adventure }) { console.log("Event" + event.detail); + + let newAdventure: Adventure = { + type: "mylog", + name: event.detail.name, + location: event.detail.location, + date: event.detail.date, + id: event.detail.id, + }; + // put request to /api/visits with id and advneture data fetch("/api/visits", { method: "PUT", @@ -106,10 +123,7 @@ "Content-Type": "application/json", }, body: JSON.stringify({ - id: event.detail.id, - name: event.detail.name, - location: event.detail.location, - created: event.detail.created, + newAdventure, }), }) .then((response) => response.json()) @@ -122,7 +136,7 @@ editId = NaN; editName = ""; editLocation = ""; - editCreated = ""; + editdate = ""; showToast("Adventure edited successfully!"); }) .catch((error) => { @@ -135,10 +149,10 @@ (adventure) => adventure.id === event.detail ); if (adventure) { - editId = adventure.id; - editName = adventure.name; - editLocation = adventure.location; - editCreated = adventure.created; + editId = adventure.id || 0; + editName = adventure.name || ""; + editLocation = adventure.location || ""; + editdate = adventure.date || ""; } } @@ -168,7 +182,7 @@ editId = NaN; editName = ""; editLocation = ""; - editCreated = ""; + editdate = ""; } function deleteData() { @@ -263,7 +277,7 @@ bind:editId bind:editName bind:editLocation - bind:editCreated + bind:editdate on:submit={saveAdventure} on:close={handleClose} /> @@ -278,7 +292,7 @@ id={adventure.id} name={adventure.name} location={adventure.location} - created={adventure.created} + date={adventure.date} on:edit={editAdventure} on:remove={removeAdventure} /> diff --git a/src/routes/settings/admin/+page.server.ts b/src/routes/settings/admin/+page.server.ts index 888ea6e..b0bc897 100644 --- a/src/routes/settings/admin/+page.server.ts +++ b/src/routes/settings/admin/+page.server.ts @@ -1,16 +1,47 @@ import { error, redirect, type Actions, type Handle } from "@sveltejs/kit"; import type { PageServerLoad } from "./$types"; import { db } from "$lib/db/db.server"; -import { sessionTable } from "$lib/db/schema"; +import { + adventureTable, + sessionTable, + userTable, + userVisitedWorldTravel, +} from "$lib/db/schema"; +import type { DatabaseUser } from "$lib/server/auth"; +import { count } from "drizzle-orm"; export const load: PageServerLoad = async (event) => { + let users: DatabaseUser[] = []; + let visitCount: number = NaN; + let userCount: number = NaN; + let regionCount: number = NaN; if (!event.locals.user) { return redirect(302, "/login"); - } else { - if (event.locals.user.role !== "admin") { - return redirect(302, "/settings"); - } } + if (event.locals.user.role !== "admin") { + return redirect(302, "/settings"); + } + if (event.locals.user.role === "admin") { + users = (await db.select().from(userTable).execute()) as DatabaseUser[]; + visitCount = (await db + .select({ count: count() }) + .from(adventureTable) + .execute()) as unknown as number; + userCount = (await db + .select({ count: count() }) + .from(userTable) + .execute()) as unknown as number; + regionCount = (await db + .select({ count: count() }) + .from(userVisitedWorldTravel) + .execute()) as unknown as number; + } + return { + users, + visitCount, + userCount, + regionCount, + }; }; export const actions: Actions = { @@ -20,7 +51,7 @@ export const actions: Actions = { message: "You are not authorized to perform this action", }); } else { - console.log("ALL SESSIONS CLEARED"); + console.log("ALL SESSIONS CLEARED by " + event.locals.user?.username); await db.delete(sessionTable).execute(); return { status: 200, diff --git a/src/routes/settings/admin/+page.svelte b/src/routes/settings/admin/+page.svelte index d79147d..dfc9c8c 100644 --- a/src/routes/settings/admin/+page.svelte +++ b/src/routes/settings/admin/+page.svelte @@ -1,13 +1,39 @@

Admin Settings

Add User

-
+
{/if} -

Session Managment

+

Session Managment

- - - +
+ +

User Managment

+
+ {#each $page.data.users as user} +
+ +
+ {/each} +
+ +{#if isModalOpen} + +{/if} + +

Admin Stats (All Users)

+
+
+
+
Total Visits
+
{visitCount}
+
+ +
+
Total Users
+
{userCount}
+
+ +
+
Visited Regions
+
{regionCount}
+
+
+
+ + + Admin Settings | AdventureLog + + diff --git a/src/routes/setup/+page.server.ts b/src/routes/setup/+page.server.ts index 12782f8..26bf6c1 100644 --- a/src/routes/setup/+page.server.ts +++ b/src/routes/setup/+page.server.ts @@ -8,7 +8,8 @@ import type { DatabaseUser } from "$lib/server/auth"; import type { Actions } from "./$types"; import { userTable } from "$lib/db/schema"; -import { eq } from "drizzle-orm"; +import { eq, sql } from "drizzle-orm"; +import { insertData } from "$lib/db/insertData"; export const actions: Actions = { default: async (event) => { @@ -109,8 +110,11 @@ export const actions: Actions = { } as DatabaseUser) .execute(); - const session = await lucia.createSession(userId, {}); - const sessionCookie = lucia.createSessionCookie(session.id); + // inserts the data needed for all of the pre defined adventures and world travel regions + await insertData(); + + const session: any = await lucia.createSession(userId, {}); + const sessionCookie: any = lucia.createSessionCookie(session.id); event.cookies.set(sessionCookie.name, sessionCookie.value, { path: ".", ...sessionCookie.attributes, diff --git a/src/routes/setup/+page.svelte b/src/routes/setup/+page.svelte index 5fc47db..ec815da 100644 --- a/src/routes/setup/+page.svelte +++ b/src/routes/setup/+page.svelte @@ -1,5 +1,7 @@

AdventureLog Setup

@@ -9,39 +11,47 @@ Welcome to AdventureLog! Please follow the steps below to setup your server.

- -

Create Admin User

+{#if !loading} + +

Create Admin User

-
-
- -
- -
- -
- -
- -
-
+
+
+ +
+ +
+ +
+ +
+ +
+
+{/if} + +{#if loading} +
+ +
+{/if} Setup | AdventureLog diff --git a/src/routes/shared/[key]/+page.server.ts b/src/routes/shared/[key]/+page.server.ts index 92f7d08..0d2eeee 100644 --- a/src/routes/shared/[key]/+page.server.ts +++ b/src/routes/shared/[key]/+page.server.ts @@ -25,14 +25,13 @@ export async function load({ params }) { id: item.id, name: item.name, location: item.location, - created: item.created, + date: item.date, } as Adventure; }); let name = rawData.name; let date = rawData.date; - // Return the array of Adventure objects return { adventureArray, diff --git a/src/routes/shared/[key]/+page.svelte b/src/routes/shared/[key]/+page.svelte index 78e591c..7fcff7a 100644 --- a/src/routes/shared/[key]/+page.svelte +++ b/src/routes/shared/[key]/+page.svelte @@ -10,7 +10,7 @@

{adventure.name}

{adventure.location}

-

{adventure.created}

+

{adventure.date}

{adventure.id}

{/each} --> @@ -25,7 +25,7 @@ id={adventure.id} name={adventure.name} location={adventure.location} - created={adventure.created} + date={adventure.date} /> {/each}
diff --git a/src/routes/signup/+page.server.ts b/src/routes/signup/+page.server.ts index e287775..0256749 100644 --- a/src/routes/signup/+page.server.ts +++ b/src/routes/signup/+page.server.ts @@ -129,7 +129,7 @@ export const actions: Actions = { "content-type": "application/json", }, body: JSON.stringify({ - message: "User created", + message: "User date", }), }; } diff --git a/src/routes/worldtravel/+page.svelte b/src/routes/worldtravel/+page.svelte index f0bb274..f67fe0a 100644 --- a/src/routes/worldtravel/+page.svelte +++ b/src/routes/worldtravel/+page.svelte @@ -32,4 +32,4 @@ name="description" content="Explore the world and add countries to your visited list!" /> -; + diff --git a/src/routes/worldtravel/[countrycode]/+page.svelte b/src/routes/worldtravel/[countrycode]/+page.svelte index 5d36a1d..c54c10b 100644 --- a/src/routes/worldtravel/[countrycode]/+page.svelte +++ b/src/routes/worldtravel/[countrycode]/+page.svelte @@ -6,6 +6,7 @@ import { goto } from "$app/navigation"; import { onMount } from "svelte"; import Us from "$lib/components/maps/US.svelte"; + import WorldTravelCard from "$lib/components/WorldTravelCard.svelte"; let viewType: String = "cards"; @@ -87,8 +88,7 @@ class="grid xl:grid-cols-3 lg:grid-cols-3 md:grid-cols-2 sm:grid-cols-1 gap-4 mt-4 content-center auto-cols-auto ml-6 mr-6" > {#each data.regions as region (region.id)} - { - const { regioncode } = params; - - let info = await db - .select({data: worldTravelCountryRegions}) - .from(worldTravelCountryRegions) - .where(eq(worldTravelCountryRegions.id, regioncode)) - .limit(1) - .execute(); - - let visited = false; - if (locals.user) { - let userVisited = await db - .select({data: userVisitedWorldTravel}) - .from(userVisitedWorldTravel) - .where(and(eq(userVisitedWorldTravel.userId, locals.user.id), eq(userVisitedWorldTravel.region_id, regioncode))) - .limit(1) - .execute(); - if (userVisited.length !== 0) { - visited = true; - } - } - - return { - info : info[0], - visited : visited, - }; -} \ No newline at end of file diff --git a/src/routes/worldtravel/[countrycode]/[regioncode]/+page.svelte b/src/routes/worldtravel/[countrycode]/[regioncode]/+page.svelte deleted file mode 100644 index abc5aeb..0000000 --- a/src/routes/worldtravel/[countrycode]/[regioncode]/+page.svelte +++ /dev/null @@ -1,88 +0,0 @@ - - -{#if info} -
-
-

Info About {regionName} in {country}

- {#if visited} -

You have visited this region!

- {/if} - -

Region Info

- {#if info.description} -

{info.description}

- {/if} - {#if info.capital} -

Capital: {info.capital}

- {/if} - {#if info.population} -

- Population: - {info.population.estimate} ({info.population.year}) -

- {/if} - {#if info.area} -

Area: {info.area.total} {info.area.units}

- {/if} - {#if info.state_flower} -

State Flower: {info.state_flower}

- {/if} - {#if info.state_bird} -

State Bird: {info.state_bird}

- {/if} - {#if info.state_tree} -

State Tree: {info.state_tree}

- {/if} - {#if info.climate} -

Climate: {info.climate.description}

-

Summer Highs: {info.climate.summer_highs}

-

Winter Lows: {info.climate.winter_lows}

-

Precipitation: {info.climate.precipitation}

- {/if} - {#if info.economy} - {#if info.economy.industries && info.economy.industries.length} -

- Industries: - {info.economy.industries.join(", ")} -

- {/if} - {#if info.economy.agricultural_products && info.economy.agricultural_products.length} -

- Agricultural Products: - {info.economy.agricultural_products.join(", ")} -

- {/if} - {/if} - {#if info.tourism} - {#if info.tourism.attractions && info.tourism.attractions.length} -

- Tourism Attractions: - {info.tourism.attractions.join(", ")} -

- {/if} - {/if} - {#if info.major_sports_teams && info.major_sports_teams.length} -

- Major Sports Teams: - {info.major_sports_teams.join(", ")} -

- {/if} -
-
-{:else} -
-
-

Region Not Found

-

Sorry, we couldn't find the region you were looking for.

-
-
-{/if} diff --git a/src/services/adventureService.ts b/src/services/adventureService.ts index 9e984f4..53ba034 100644 --- a/src/services/adventureService.ts +++ b/src/services/adventureService.ts @@ -1,40 +1 @@ import type { Adventure } from "$lib/utils/types"; - -let adventures: Adventure[] = []; - -import { visitCount } from "$lib/utils/stores/visitCountStore"; - -// Check if localStorage is available (browser environment) -const isBrowser = typeof window !== "undefined"; - -// - -export function getNextId() { - let nextId = Math.max(0, ...adventures.map((adventure) => adventure.id)) + 1; - return nextId; -} - -export function setAdventures(importArray: Adventure[]) { - adventures = importArray; -} - -export function addAdventure(adventure: Adventure) { - adventures = [...adventures, adventure]; - if (isBrowser) { - localStorage.setItem("adventures", JSON.stringify(adventures)); - visitCount.update((n) => n + 1); - } - console.log(adventures); -} - -export function getAdventures(): Adventure[] { - return adventures; -} - -export function clearAdventures() { - adventures = []; - if (isBrowser) { - localStorage.setItem("adventures", JSON.stringify(adventures)); - visitCount.set(0); - } -} diff --git a/startup.sh b/startup.sh index 2eafe63..1914533 100644 --- a/startup.sh +++ b/startup.sh @@ -44,7 +44,7 @@ fi npm run migrate # Run SQL scripts -run_sql_scripts +# run_sql_scripts echo "The origin to be set is: $ORIGIN" # Start the application