From efeeeca8f526c2dc8dfe597270ac54fc2d5ee28e Mon Sep 17 00:00:00 2001
From: Vadym Samoilenko
Date: Fri, 15 May 2026 16:43:36 +0100
Subject: [PATCH] feat(cms): unify SEO via plugin for all globals + fix migrate
CLI
- seoPlugin extended to cover 7 globals (home, dyvolis, group-visits,
birthday, tickets, checkout, thank-you) with tabbedUI, generateURL,
generateTitle from heroTitle, generateDescription from heroSubtitle
- Remove manual metaTitle/metaDescription fields from 4 globals
(BirthdayPage, GroupVisitsPage, TicketsPage, DyvoLisPage)
- Update 5 page files to read meta?.title/description from seoPlugin
- blog/[slug] now uses post.meta?.title from plugin instead of raw title
- pnpm migrate/migrate:create/migrate:status scripts fixed with
NODE_OPTIONS='--import tsx' (resolves Node.js v26 + tsx incompatibility)
- Initial full-schema migration 20260515_153940.ts created as baseline
Co-Authored-By: Claude Sonnet 4.6
---
migrations/20260515_153940.json | 10120 ++++++++++++++++
migrations/20260515_153940.ts | 1389 +++
migrations/index.ts | 9 +
package.json | 7 +-
payload.config.ts | 80 +-
src/app/(frontend)/blog/[slug]/page.tsx | 7 +-
src/app/(frontend)/dni-narodzhennia/page.tsx | 6 +-
.../(frontend)/grupovi-vidviduvannia/page.tsx | 4 +-
src/app/(frontend)/kvytky/page.tsx | 4 +-
src/app/(frontend)/lokatsii/dyvolis/page.tsx | 13 +-
src/globals/BirthdayPage.ts | 13 -
src/globals/DyvoLisPage.ts | 13 -
src/globals/GroupVisitsPage.ts | 13 -
src/globals/TicketsPage.ts | 12 -
14 files changed, 11598 insertions(+), 92 deletions(-)
create mode 100644 migrations/20260515_153940.json
create mode 100644 migrations/20260515_153940.ts
create mode 100644 migrations/index.ts
diff --git a/migrations/20260515_153940.json b/migrations/20260515_153940.json
new file mode 100644
index 0000000..defd1e4
--- /dev/null
+++ b/migrations/20260515_153940.json
@@ -0,0 +1,10120 @@
+{
+ "version": "7",
+ "dialect": "postgresql",
+ "tables": {
+ "public.users_sessions": {
+ "name": "users_sessions",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "expires_at": {
+ "name": "expires_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "users_sessions_order_idx": {
+ "name": "users_sessions_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "users_sessions_parent_id_idx": {
+ "name": "users_sessions_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "users_sessions_parent_id_fk": {
+ "name": "users_sessions_parent_id_fk",
+ "tableFrom": "users_sessions",
+ "tableTo": "users",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.users": {
+ "name": "users",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "role": {
+ "name": "role",
+ "type": "enum_users_role",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "'editor'"
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "email": {
+ "name": "email",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "reset_password_token": {
+ "name": "reset_password_token",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "reset_password_expiration": {
+ "name": "reset_password_expiration",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "salt": {
+ "name": "salt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hash": {
+ "name": "hash",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "login_attempts": {
+ "name": "login_attempts",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 0
+ },
+ "lock_until": {
+ "name": "lock_until",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "users_updated_at_idx": {
+ "name": "users_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "users_created_at_idx": {
+ "name": "users_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "users_email_idx": {
+ "name": "users_email_idx",
+ "columns": [
+ {
+ "expression": "email",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.media": {
+ "name": "media",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "alt": {
+ "name": "alt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "url": {
+ "name": "url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "thumbnail_u_r_l": {
+ "name": "thumbnail_u_r_l",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "filename": {
+ "name": "filename",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "mime_type": {
+ "name": "mime_type",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "filesize": {
+ "name": "filesize",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "width": {
+ "name": "width",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "height": {
+ "name": "height",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "focal_x": {
+ "name": "focal_x",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "focal_y": {
+ "name": "focal_y",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "media_updated_at_idx": {
+ "name": "media_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "media_created_at_idx": {
+ "name": "media_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "media_filename_idx": {
+ "name": "media_filename_idx",
+ "columns": [
+ {
+ "expression": "filename",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_hero": {
+ "name": "pages_blocks_hero",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_href": {
+ "name": "cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "background_type": {
+ "name": "background_type",
+ "type": "enum_pages_blocks_hero_background_type",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'image'"
+ },
+ "background_image_id": {
+ "name": "background_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "background_video_url": {
+ "name": "background_video_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_hero_order_idx": {
+ "name": "pages_blocks_hero_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_hero_parent_id_idx": {
+ "name": "pages_blocks_hero_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_hero_path_idx": {
+ "name": "pages_blocks_hero_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_hero_background_image_idx": {
+ "name": "pages_blocks_hero_background_image_idx",
+ "columns": [
+ {
+ "expression": "background_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_hero_background_image_id_media_id_fk": {
+ "name": "pages_blocks_hero_background_image_id_media_id_fk",
+ "tableFrom": "pages_blocks_hero",
+ "tableTo": "media",
+ "columnsFrom": ["background_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "pages_blocks_hero_parent_id_fk": {
+ "name": "pages_blocks_hero_parent_id_fk",
+ "tableFrom": "pages_blocks_hero",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_locations_teaser_locations": {
+ "name": "pages_blocks_locations_teaser_locations",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "href": {
+ "name": "href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_locations_teaser_locations_order_idx": {
+ "name": "pages_blocks_locations_teaser_locations_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_locations_teaser_locations_parent_id_idx": {
+ "name": "pages_blocks_locations_teaser_locations_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_locations_teaser_locations_image_idx": {
+ "name": "pages_blocks_locations_teaser_locations_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_locations_teaser_locations_image_id_media_id_fk": {
+ "name": "pages_blocks_locations_teaser_locations_image_id_media_id_fk",
+ "tableFrom": "pages_blocks_locations_teaser_locations",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "pages_blocks_locations_teaser_locations_parent_id_fk": {
+ "name": "pages_blocks_locations_teaser_locations_parent_id_fk",
+ "tableFrom": "pages_blocks_locations_teaser_locations",
+ "tableTo": "pages_blocks_locations_teaser",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_locations_teaser": {
+ "name": "pages_blocks_locations_teaser",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_locations_teaser_order_idx": {
+ "name": "pages_blocks_locations_teaser_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_locations_teaser_parent_id_idx": {
+ "name": "pages_blocks_locations_teaser_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_locations_teaser_path_idx": {
+ "name": "pages_blocks_locations_teaser_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_locations_teaser_parent_id_fk": {
+ "name": "pages_blocks_locations_teaser_parent_id_fk",
+ "tableFrom": "pages_blocks_locations_teaser",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_features_items": {
+ "name": "pages_blocks_features_items",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "icon": {
+ "name": "icon",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_features_items_order_idx": {
+ "name": "pages_blocks_features_items_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_features_items_parent_id_idx": {
+ "name": "pages_blocks_features_items_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_features_items_parent_id_fk": {
+ "name": "pages_blocks_features_items_parent_id_fk",
+ "tableFrom": "pages_blocks_features_items",
+ "tableTo": "pages_blocks_features",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_features": {
+ "name": "pages_blocks_features",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_features_order_idx": {
+ "name": "pages_blocks_features_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_features_parent_id_idx": {
+ "name": "pages_blocks_features_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_features_path_idx": {
+ "name": "pages_blocks_features_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_features_parent_id_fk": {
+ "name": "pages_blocks_features_parent_id_fk",
+ "tableFrom": "pages_blocks_features",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_news_block": {
+ "name": "pages_blocks_news_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Новини'"
+ },
+ "limit": {
+ "name": "limit",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 3
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_news_block_order_idx": {
+ "name": "pages_blocks_news_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_news_block_parent_id_idx": {
+ "name": "pages_blocks_news_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_news_block_path_idx": {
+ "name": "pages_blocks_news_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_news_block_parent_id_fk": {
+ "name": "pages_blocks_news_block_parent_id_fk",
+ "tableFrom": "pages_blocks_news_block",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_newsletter_form": {
+ "name": "pages_blocks_newsletter_form",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Підписатися'"
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_newsletter_form_order_idx": {
+ "name": "pages_blocks_newsletter_form_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_newsletter_form_parent_id_idx": {
+ "name": "pages_blocks_newsletter_form_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_newsletter_form_path_idx": {
+ "name": "pages_blocks_newsletter_form_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_newsletter_form_parent_id_fk": {
+ "name": "pages_blocks_newsletter_form_parent_id_fk",
+ "tableFrom": "pages_blocks_newsletter_form",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_gallery_images": {
+ "name": "pages_blocks_gallery_images",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "caption": {
+ "name": "caption",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_gallery_images_order_idx": {
+ "name": "pages_blocks_gallery_images_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_gallery_images_parent_id_idx": {
+ "name": "pages_blocks_gallery_images_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_gallery_images_image_idx": {
+ "name": "pages_blocks_gallery_images_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_gallery_images_image_id_media_id_fk": {
+ "name": "pages_blocks_gallery_images_image_id_media_id_fk",
+ "tableFrom": "pages_blocks_gallery_images",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "pages_blocks_gallery_images_parent_id_fk": {
+ "name": "pages_blocks_gallery_images_parent_id_fk",
+ "tableFrom": "pages_blocks_gallery_images",
+ "tableTo": "pages_blocks_gallery",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_gallery": {
+ "name": "pages_blocks_gallery",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_gallery_order_idx": {
+ "name": "pages_blocks_gallery_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_gallery_parent_id_idx": {
+ "name": "pages_blocks_gallery_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_gallery_path_idx": {
+ "name": "pages_blocks_gallery_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_gallery_parent_id_fk": {
+ "name": "pages_blocks_gallery_parent_id_fk",
+ "tableFrom": "pages_blocks_gallery",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_rich_text": {
+ "name": "pages_blocks_rich_text",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "content": {
+ "name": "content",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_rich_text_order_idx": {
+ "name": "pages_blocks_rich_text_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_rich_text_parent_id_idx": {
+ "name": "pages_blocks_rich_text_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_rich_text_path_idx": {
+ "name": "pages_blocks_rich_text_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_rich_text_parent_id_fk": {
+ "name": "pages_blocks_rich_text_parent_id_fk",
+ "tableFrom": "pages_blocks_rich_text",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_image_block": {
+ "name": "pages_blocks_image_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "caption": {
+ "name": "caption",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "full_width": {
+ "name": "full_width",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_image_block_order_idx": {
+ "name": "pages_blocks_image_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_image_block_parent_id_idx": {
+ "name": "pages_blocks_image_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_image_block_path_idx": {
+ "name": "pages_blocks_image_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_image_block_image_idx": {
+ "name": "pages_blocks_image_block_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_image_block_image_id_media_id_fk": {
+ "name": "pages_blocks_image_block_image_id_media_id_fk",
+ "tableFrom": "pages_blocks_image_block",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "pages_blocks_image_block_parent_id_fk": {
+ "name": "pages_blocks_image_block_parent_id_fk",
+ "tableFrom": "pages_blocks_image_block",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_video_block": {
+ "name": "pages_blocks_video_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "video_url": {
+ "name": "video_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "caption": {
+ "name": "caption",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "autoplay": {
+ "name": "autoplay",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_video_block_order_idx": {
+ "name": "pages_blocks_video_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_video_block_parent_id_idx": {
+ "name": "pages_blocks_video_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_video_block_path_idx": {
+ "name": "pages_blocks_video_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_video_block_parent_id_fk": {
+ "name": "pages_blocks_video_block_parent_id_fk",
+ "tableFrom": "pages_blocks_video_block",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_lead_form": {
+ "name": "pages_blocks_lead_form",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "form_source": {
+ "name": "form_source",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "show_phone": {
+ "name": "show_phone",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "show_email": {
+ "name": "show_email",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Відправити'"
+ },
+ "success_message": {
+ "name": "success_message",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Дякуємо! Ми зв''яжемося з вами найближчим часом.'"
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_lead_form_order_idx": {
+ "name": "pages_blocks_lead_form_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_lead_form_parent_id_idx": {
+ "name": "pages_blocks_lead_form_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_lead_form_path_idx": {
+ "name": "pages_blocks_lead_form_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_lead_form_parent_id_fk": {
+ "name": "pages_blocks_lead_form_parent_id_fk",
+ "tableFrom": "pages_blocks_lead_form",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_pricing_block": {
+ "name": "pages_blocks_pricing_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "show_only_visible": {
+ "name": "show_only_visible",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Купити квиток'"
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_pricing_block_order_idx": {
+ "name": "pages_blocks_pricing_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_pricing_block_parent_id_idx": {
+ "name": "pages_blocks_pricing_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_pricing_block_path_idx": {
+ "name": "pages_blocks_pricing_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_pricing_block_parent_id_fk": {
+ "name": "pages_blocks_pricing_block_parent_id_fk",
+ "tableFrom": "pages_blocks_pricing_block",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages_blocks_cta": {
+ "name": "pages_blocks_cta",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_href": {
+ "name": "cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "variant": {
+ "name": "variant",
+ "type": "enum_pages_blocks_cta_variant",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'primary'"
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "pages_blocks_cta_order_idx": {
+ "name": "pages_blocks_cta_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_cta_parent_id_idx": {
+ "name": "pages_blocks_cta_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_blocks_cta_path_idx": {
+ "name": "pages_blocks_cta_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_blocks_cta_parent_id_fk": {
+ "name": "pages_blocks_cta_parent_id_fk",
+ "tableFrom": "pages_blocks_cta",
+ "tableTo": "pages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.pages": {
+ "name": "pages",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "slug": {
+ "name": "slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "status": {
+ "name": "status",
+ "type": "enum_pages_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "_status": {
+ "name": "_status",
+ "type": "enum_pages_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ }
+ },
+ "indexes": {
+ "pages_slug_idx": {
+ "name": "pages_slug_idx",
+ "columns": [
+ {
+ "expression": "slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_meta_meta_image_idx": {
+ "name": "pages_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_updated_at_idx": {
+ "name": "pages_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages_created_at_idx": {
+ "name": "pages_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "pages__status_idx": {
+ "name": "pages__status_idx",
+ "columns": [
+ {
+ "expression": "_status",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "pages_meta_image_id_media_id_fk": {
+ "name": "pages_meta_image_id_media_id_fk",
+ "tableFrom": "pages",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_hero": {
+ "name": "_pages_v_blocks_hero",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_href": {
+ "name": "cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "background_type": {
+ "name": "background_type",
+ "type": "enum__pages_v_blocks_hero_background_type",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'image'"
+ },
+ "background_image_id": {
+ "name": "background_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "background_video_url": {
+ "name": "background_video_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_hero_order_idx": {
+ "name": "_pages_v_blocks_hero_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_hero_parent_id_idx": {
+ "name": "_pages_v_blocks_hero_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_hero_path_idx": {
+ "name": "_pages_v_blocks_hero_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_hero_background_image_idx": {
+ "name": "_pages_v_blocks_hero_background_image_idx",
+ "columns": [
+ {
+ "expression": "background_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_hero_background_image_id_media_id_fk": {
+ "name": "_pages_v_blocks_hero_background_image_id_media_id_fk",
+ "tableFrom": "_pages_v_blocks_hero",
+ "tableTo": "media",
+ "columnsFrom": ["background_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_pages_v_blocks_hero_parent_id_fk": {
+ "name": "_pages_v_blocks_hero_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_hero",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_locations_teaser_locations": {
+ "name": "_pages_v_blocks_locations_teaser_locations",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "href": {
+ "name": "href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_locations_teaser_locations_order_idx": {
+ "name": "_pages_v_blocks_locations_teaser_locations_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_locations_teaser_locations_parent_id_idx": {
+ "name": "_pages_v_blocks_locations_teaser_locations_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_locations_teaser_locations_image_idx": {
+ "name": "_pages_v_blocks_locations_teaser_locations_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_locations_teaser_locations_image_id_media_id_fk": {
+ "name": "_pages_v_blocks_locations_teaser_locations_image_id_media_id_fk",
+ "tableFrom": "_pages_v_blocks_locations_teaser_locations",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_pages_v_blocks_locations_teaser_locations_parent_id_fk": {
+ "name": "_pages_v_blocks_locations_teaser_locations_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_locations_teaser_locations",
+ "tableTo": "_pages_v_blocks_locations_teaser",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_locations_teaser": {
+ "name": "_pages_v_blocks_locations_teaser",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_locations_teaser_order_idx": {
+ "name": "_pages_v_blocks_locations_teaser_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_locations_teaser_parent_id_idx": {
+ "name": "_pages_v_blocks_locations_teaser_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_locations_teaser_path_idx": {
+ "name": "_pages_v_blocks_locations_teaser_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_locations_teaser_parent_id_fk": {
+ "name": "_pages_v_blocks_locations_teaser_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_locations_teaser",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_features_items": {
+ "name": "_pages_v_blocks_features_items",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "icon": {
+ "name": "icon",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_features_items_order_idx": {
+ "name": "_pages_v_blocks_features_items_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_features_items_parent_id_idx": {
+ "name": "_pages_v_blocks_features_items_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_features_items_parent_id_fk": {
+ "name": "_pages_v_blocks_features_items_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_features_items",
+ "tableTo": "_pages_v_blocks_features",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_features": {
+ "name": "_pages_v_blocks_features",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_features_order_idx": {
+ "name": "_pages_v_blocks_features_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_features_parent_id_idx": {
+ "name": "_pages_v_blocks_features_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_features_path_idx": {
+ "name": "_pages_v_blocks_features_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_features_parent_id_fk": {
+ "name": "_pages_v_blocks_features_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_features",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_news_block": {
+ "name": "_pages_v_blocks_news_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Новини'"
+ },
+ "limit": {
+ "name": "limit",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 3
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_news_block_order_idx": {
+ "name": "_pages_v_blocks_news_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_news_block_parent_id_idx": {
+ "name": "_pages_v_blocks_news_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_news_block_path_idx": {
+ "name": "_pages_v_blocks_news_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_news_block_parent_id_fk": {
+ "name": "_pages_v_blocks_news_block_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_news_block",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_newsletter_form": {
+ "name": "_pages_v_blocks_newsletter_form",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Підписатися'"
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_newsletter_form_order_idx": {
+ "name": "_pages_v_blocks_newsletter_form_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_newsletter_form_parent_id_idx": {
+ "name": "_pages_v_blocks_newsletter_form_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_newsletter_form_path_idx": {
+ "name": "_pages_v_blocks_newsletter_form_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_newsletter_form_parent_id_fk": {
+ "name": "_pages_v_blocks_newsletter_form_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_newsletter_form",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_gallery_images": {
+ "name": "_pages_v_blocks_gallery_images",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "caption": {
+ "name": "caption",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_gallery_images_order_idx": {
+ "name": "_pages_v_blocks_gallery_images_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_gallery_images_parent_id_idx": {
+ "name": "_pages_v_blocks_gallery_images_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_gallery_images_image_idx": {
+ "name": "_pages_v_blocks_gallery_images_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_gallery_images_image_id_media_id_fk": {
+ "name": "_pages_v_blocks_gallery_images_image_id_media_id_fk",
+ "tableFrom": "_pages_v_blocks_gallery_images",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_pages_v_blocks_gallery_images_parent_id_fk": {
+ "name": "_pages_v_blocks_gallery_images_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_gallery_images",
+ "tableTo": "_pages_v_blocks_gallery",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_gallery": {
+ "name": "_pages_v_blocks_gallery",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_gallery_order_idx": {
+ "name": "_pages_v_blocks_gallery_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_gallery_parent_id_idx": {
+ "name": "_pages_v_blocks_gallery_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_gallery_path_idx": {
+ "name": "_pages_v_blocks_gallery_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_gallery_parent_id_fk": {
+ "name": "_pages_v_blocks_gallery_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_gallery",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_rich_text": {
+ "name": "_pages_v_blocks_rich_text",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "content": {
+ "name": "content",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_rich_text_order_idx": {
+ "name": "_pages_v_blocks_rich_text_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_rich_text_parent_id_idx": {
+ "name": "_pages_v_blocks_rich_text_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_rich_text_path_idx": {
+ "name": "_pages_v_blocks_rich_text_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_rich_text_parent_id_fk": {
+ "name": "_pages_v_blocks_rich_text_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_rich_text",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_image_block": {
+ "name": "_pages_v_blocks_image_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "caption": {
+ "name": "caption",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "full_width": {
+ "name": "full_width",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_image_block_order_idx": {
+ "name": "_pages_v_blocks_image_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_image_block_parent_id_idx": {
+ "name": "_pages_v_blocks_image_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_image_block_path_idx": {
+ "name": "_pages_v_blocks_image_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_image_block_image_idx": {
+ "name": "_pages_v_blocks_image_block_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_image_block_image_id_media_id_fk": {
+ "name": "_pages_v_blocks_image_block_image_id_media_id_fk",
+ "tableFrom": "_pages_v_blocks_image_block",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_pages_v_blocks_image_block_parent_id_fk": {
+ "name": "_pages_v_blocks_image_block_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_image_block",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_video_block": {
+ "name": "_pages_v_blocks_video_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "video_url": {
+ "name": "video_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "caption": {
+ "name": "caption",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "autoplay": {
+ "name": "autoplay",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_video_block_order_idx": {
+ "name": "_pages_v_blocks_video_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_video_block_parent_id_idx": {
+ "name": "_pages_v_blocks_video_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_video_block_path_idx": {
+ "name": "_pages_v_blocks_video_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_video_block_parent_id_fk": {
+ "name": "_pages_v_blocks_video_block_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_video_block",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_lead_form": {
+ "name": "_pages_v_blocks_lead_form",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "form_source": {
+ "name": "form_source",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "show_phone": {
+ "name": "show_phone",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "show_email": {
+ "name": "show_email",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Відправити'"
+ },
+ "success_message": {
+ "name": "success_message",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Дякуємо! Ми зв''яжемося з вами найближчим часом.'"
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_lead_form_order_idx": {
+ "name": "_pages_v_blocks_lead_form_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_lead_form_parent_id_idx": {
+ "name": "_pages_v_blocks_lead_form_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_lead_form_path_idx": {
+ "name": "_pages_v_blocks_lead_form_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_lead_form_parent_id_fk": {
+ "name": "_pages_v_blocks_lead_form_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_lead_form",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_pricing_block": {
+ "name": "_pages_v_blocks_pricing_block",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "show_only_visible": {
+ "name": "show_only_visible",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Купити квиток'"
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_pricing_block_order_idx": {
+ "name": "_pages_v_blocks_pricing_block_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_pricing_block_parent_id_idx": {
+ "name": "_pages_v_blocks_pricing_block_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_pricing_block_path_idx": {
+ "name": "_pages_v_blocks_pricing_block_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_pricing_block_parent_id_fk": {
+ "name": "_pages_v_blocks_pricing_block_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_pricing_block",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v_blocks_cta": {
+ "name": "_pages_v_blocks_cta",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_path": {
+ "name": "_path",
+ "type": "text",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "subtitle": {
+ "name": "subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_href": {
+ "name": "cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "variant": {
+ "name": "variant",
+ "type": "enum__pages_v_blocks_cta_variant",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'primary'"
+ },
+ "_uuid": {
+ "name": "_uuid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "block_name": {
+ "name": "block_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_blocks_cta_order_idx": {
+ "name": "_pages_v_blocks_cta_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_cta_parent_id_idx": {
+ "name": "_pages_v_blocks_cta_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_blocks_cta_path_idx": {
+ "name": "_pages_v_blocks_cta_path_idx",
+ "columns": [
+ {
+ "expression": "_path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_blocks_cta_parent_id_fk": {
+ "name": "_pages_v_blocks_cta_parent_id_fk",
+ "tableFrom": "_pages_v_blocks_cta",
+ "tableTo": "_pages_v",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._pages_v": {
+ "name": "_pages_v",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "parent_id": {
+ "name": "parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_title": {
+ "name": "version_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_slug": {
+ "name": "version_slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_status": {
+ "name": "version_status",
+ "type": "enum__pages_v_version_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ },
+ "version_meta_title": {
+ "name": "version_meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_meta_description": {
+ "name": "version_meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_meta_image_id": {
+ "name": "version_meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_updated_at": {
+ "name": "version_updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_created_at": {
+ "name": "version_created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version__status": {
+ "name": "version__status",
+ "type": "enum__pages_v_version_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "latest": {
+ "name": "latest",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_pages_v_parent_idx": {
+ "name": "_pages_v_parent_idx",
+ "columns": [
+ {
+ "expression": "parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_version_version_slug_idx": {
+ "name": "_pages_v_version_version_slug_idx",
+ "columns": [
+ {
+ "expression": "version_slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_version_meta_version_meta_image_idx": {
+ "name": "_pages_v_version_meta_version_meta_image_idx",
+ "columns": [
+ {
+ "expression": "version_meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_version_version_updated_at_idx": {
+ "name": "_pages_v_version_version_updated_at_idx",
+ "columns": [
+ {
+ "expression": "version_updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_version_version_created_at_idx": {
+ "name": "_pages_v_version_version_created_at_idx",
+ "columns": [
+ {
+ "expression": "version_created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_version_version__status_idx": {
+ "name": "_pages_v_version_version__status_idx",
+ "columns": [
+ {
+ "expression": "version__status",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_created_at_idx": {
+ "name": "_pages_v_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_updated_at_idx": {
+ "name": "_pages_v_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_pages_v_latest_idx": {
+ "name": "_pages_v_latest_idx",
+ "columns": [
+ {
+ "expression": "latest",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_pages_v_parent_id_pages_id_fk": {
+ "name": "_pages_v_parent_id_pages_id_fk",
+ "tableFrom": "_pages_v",
+ "tableTo": "pages",
+ "columnsFrom": ["parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_pages_v_version_meta_image_id_media_id_fk": {
+ "name": "_pages_v_version_meta_image_id_media_id_fk",
+ "tableFrom": "_pages_v",
+ "tableTo": "media",
+ "columnsFrom": ["version_meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.blog_posts": {
+ "name": "blog_posts",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "slug": {
+ "name": "slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "published_at": {
+ "name": "published_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_id": {
+ "name": "hero_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "body": {
+ "name": "body",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "excerpt": {
+ "name": "excerpt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "status": {
+ "name": "status",
+ "type": "enum_blog_posts_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "_status": {
+ "name": "_status",
+ "type": "enum_blog_posts_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ }
+ },
+ "indexes": {
+ "blog_posts_slug_idx": {
+ "name": "blog_posts_slug_idx",
+ "columns": [
+ {
+ "expression": "slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_hero_idx": {
+ "name": "blog_posts_hero_idx",
+ "columns": [
+ {
+ "expression": "hero_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_meta_meta_image_idx": {
+ "name": "blog_posts_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_updated_at_idx": {
+ "name": "blog_posts_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_created_at_idx": {
+ "name": "blog_posts_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts__status_idx": {
+ "name": "blog_posts__status_idx",
+ "columns": [
+ {
+ "expression": "_status",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "blog_posts_hero_id_media_id_fk": {
+ "name": "blog_posts_hero_id_media_id_fk",
+ "tableFrom": "blog_posts",
+ "tableTo": "media",
+ "columnsFrom": ["hero_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "blog_posts_meta_image_id_media_id_fk": {
+ "name": "blog_posts_meta_image_id_media_id_fk",
+ "tableFrom": "blog_posts",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.blog_posts_rels": {
+ "name": "blog_posts_rels",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "order": {
+ "name": "order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "parent_id": {
+ "name": "parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "path": {
+ "name": "path",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "categories_id": {
+ "name": "categories_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "tags_id": {
+ "name": "tags_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "blog_posts_rels_order_idx": {
+ "name": "blog_posts_rels_order_idx",
+ "columns": [
+ {
+ "expression": "order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_rels_parent_idx": {
+ "name": "blog_posts_rels_parent_idx",
+ "columns": [
+ {
+ "expression": "parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_rels_path_idx": {
+ "name": "blog_posts_rels_path_idx",
+ "columns": [
+ {
+ "expression": "path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_rels_categories_id_idx": {
+ "name": "blog_posts_rels_categories_id_idx",
+ "columns": [
+ {
+ "expression": "categories_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "blog_posts_rels_tags_id_idx": {
+ "name": "blog_posts_rels_tags_id_idx",
+ "columns": [
+ {
+ "expression": "tags_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "blog_posts_rels_parent_fk": {
+ "name": "blog_posts_rels_parent_fk",
+ "tableFrom": "blog_posts_rels",
+ "tableTo": "blog_posts",
+ "columnsFrom": ["parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "blog_posts_rels_categories_fk": {
+ "name": "blog_posts_rels_categories_fk",
+ "tableFrom": "blog_posts_rels",
+ "tableTo": "categories",
+ "columnsFrom": ["categories_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "blog_posts_rels_tags_fk": {
+ "name": "blog_posts_rels_tags_fk",
+ "tableFrom": "blog_posts_rels",
+ "tableTo": "tags",
+ "columnsFrom": ["tags_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._blog_posts_v": {
+ "name": "_blog_posts_v",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "parent_id": {
+ "name": "parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_title": {
+ "name": "version_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_slug": {
+ "name": "version_slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_published_at": {
+ "name": "version_published_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_hero_id": {
+ "name": "version_hero_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_body": {
+ "name": "version_body",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_excerpt": {
+ "name": "version_excerpt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_status": {
+ "name": "version_status",
+ "type": "enum__blog_posts_v_version_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ },
+ "version_meta_title": {
+ "name": "version_meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_meta_description": {
+ "name": "version_meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_meta_image_id": {
+ "name": "version_meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_updated_at": {
+ "name": "version_updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version_created_at": {
+ "name": "version_created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "version__status": {
+ "name": "version__status",
+ "type": "enum__blog_posts_v_version_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'draft'"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "latest": {
+ "name": "latest",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_blog_posts_v_parent_idx": {
+ "name": "_blog_posts_v_parent_idx",
+ "columns": [
+ {
+ "expression": "parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_version_version_slug_idx": {
+ "name": "_blog_posts_v_version_version_slug_idx",
+ "columns": [
+ {
+ "expression": "version_slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_version_version_hero_idx": {
+ "name": "_blog_posts_v_version_version_hero_idx",
+ "columns": [
+ {
+ "expression": "version_hero_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_version_meta_version_meta_image_idx": {
+ "name": "_blog_posts_v_version_meta_version_meta_image_idx",
+ "columns": [
+ {
+ "expression": "version_meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_version_version_updated_at_idx": {
+ "name": "_blog_posts_v_version_version_updated_at_idx",
+ "columns": [
+ {
+ "expression": "version_updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_version_version_created_at_idx": {
+ "name": "_blog_posts_v_version_version_created_at_idx",
+ "columns": [
+ {
+ "expression": "version_created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_version_version__status_idx": {
+ "name": "_blog_posts_v_version_version__status_idx",
+ "columns": [
+ {
+ "expression": "version__status",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_created_at_idx": {
+ "name": "_blog_posts_v_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_updated_at_idx": {
+ "name": "_blog_posts_v_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_latest_idx": {
+ "name": "_blog_posts_v_latest_idx",
+ "columns": [
+ {
+ "expression": "latest",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_blog_posts_v_parent_id_blog_posts_id_fk": {
+ "name": "_blog_posts_v_parent_id_blog_posts_id_fk",
+ "tableFrom": "_blog_posts_v",
+ "tableTo": "blog_posts",
+ "columnsFrom": ["parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_blog_posts_v_version_hero_id_media_id_fk": {
+ "name": "_blog_posts_v_version_hero_id_media_id_fk",
+ "tableFrom": "_blog_posts_v",
+ "tableTo": "media",
+ "columnsFrom": ["version_hero_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "_blog_posts_v_version_meta_image_id_media_id_fk": {
+ "name": "_blog_posts_v_version_meta_image_id_media_id_fk",
+ "tableFrom": "_blog_posts_v",
+ "tableTo": "media",
+ "columnsFrom": ["version_meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public._blog_posts_v_rels": {
+ "name": "_blog_posts_v_rels",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "order": {
+ "name": "order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "parent_id": {
+ "name": "parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "path": {
+ "name": "path",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "categories_id": {
+ "name": "categories_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "tags_id": {
+ "name": "tags_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "_blog_posts_v_rels_order_idx": {
+ "name": "_blog_posts_v_rels_order_idx",
+ "columns": [
+ {
+ "expression": "order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_rels_parent_idx": {
+ "name": "_blog_posts_v_rels_parent_idx",
+ "columns": [
+ {
+ "expression": "parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_rels_path_idx": {
+ "name": "_blog_posts_v_rels_path_idx",
+ "columns": [
+ {
+ "expression": "path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_rels_categories_id_idx": {
+ "name": "_blog_posts_v_rels_categories_id_idx",
+ "columns": [
+ {
+ "expression": "categories_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "_blog_posts_v_rels_tags_id_idx": {
+ "name": "_blog_posts_v_rels_tags_id_idx",
+ "columns": [
+ {
+ "expression": "tags_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "_blog_posts_v_rels_parent_fk": {
+ "name": "_blog_posts_v_rels_parent_fk",
+ "tableFrom": "_blog_posts_v_rels",
+ "tableTo": "_blog_posts_v",
+ "columnsFrom": ["parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "_blog_posts_v_rels_categories_fk": {
+ "name": "_blog_posts_v_rels_categories_fk",
+ "tableFrom": "_blog_posts_v_rels",
+ "tableTo": "categories",
+ "columnsFrom": ["categories_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "_blog_posts_v_rels_tags_fk": {
+ "name": "_blog_posts_v_rels_tags_fk",
+ "tableFrom": "_blog_posts_v_rels",
+ "tableTo": "tags",
+ "columnsFrom": ["tags_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.categories": {
+ "name": "categories",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "slug": {
+ "name": "slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "categories_slug_idx": {
+ "name": "categories_slug_idx",
+ "columns": [
+ {
+ "expression": "slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "categories_updated_at_idx": {
+ "name": "categories_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "categories_created_at_idx": {
+ "name": "categories_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.tags": {
+ "name": "tags",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "slug": {
+ "name": "slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "tags_slug_idx": {
+ "name": "tags_slug_idx",
+ "columns": [
+ {
+ "expression": "slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "tags_updated_at_idx": {
+ "name": "tags_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "tags_created_at_idx": {
+ "name": "tags_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.tariffs": {
+ "name": "tariffs",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "ezy_id": {
+ "name": "ezy_id",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "display_name": {
+ "name": "display_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "icon": {
+ "name": "icon",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "category_tag": {
+ "name": "category_tag",
+ "type": "enum_tariffs_category_tag",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "sort": {
+ "name": "sort",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 0
+ },
+ "visible": {
+ "name": "visible",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "last_synced_name": {
+ "name": "last_synced_name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "last_synced_price": {
+ "name": "last_synced_price",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "last_synced_at": {
+ "name": "last_synced_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "tariffs_ezy_id_idx": {
+ "name": "tariffs_ezy_id_idx",
+ "columns": [
+ {
+ "expression": "ezy_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "tariffs_image_idx": {
+ "name": "tariffs_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "tariffs_updated_at_idx": {
+ "name": "tariffs_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "tariffs_created_at_idx": {
+ "name": "tariffs_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "tariffs_image_id_media_id_fk": {
+ "name": "tariffs_image_id_media_id_fk",
+ "tableFrom": "tariffs",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.leads": {
+ "name": "leads",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "phone": {
+ "name": "phone",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "email": {
+ "name": "email",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "form_source": {
+ "name": "form_source",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "utm_source": {
+ "name": "utm_source",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "utm_medium": {
+ "name": "utm_medium",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "utm_campaign": {
+ "name": "utm_campaign",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "utm_content": {
+ "name": "utm_content",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "utm_term": {
+ "name": "utm_term",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "gclid": {
+ "name": "gclid",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "status": {
+ "name": "status",
+ "type": "enum_leads_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'new'"
+ },
+ "message": {
+ "name": "message",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "group_size": {
+ "name": "group_size",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "preferred_date": {
+ "name": "preferred_date",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "package_slug": {
+ "name": "package_slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "notes": {
+ "name": "notes",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "last_call_at": {
+ "name": "last_call_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "leads_updated_at_idx": {
+ "name": "leads_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "leads_created_at_idx": {
+ "name": "leads_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.orders_items": {
+ "name": "orders_items",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "tariff_id": {
+ "name": "tariff_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "count": {
+ "name": "count",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "orders_items_order_idx": {
+ "name": "orders_items_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "orders_items_parent_id_idx": {
+ "name": "orders_items_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "orders_items_parent_id_fk": {
+ "name": "orders_items_parent_id_fk",
+ "tableFrom": "orders_items",
+ "tableTo": "orders",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.orders": {
+ "name": "orders",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "phone": {
+ "name": "phone",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "email": {
+ "name": "email",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "amount": {
+ "name": "amount",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "monobank_url": {
+ "name": "monobank_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "status": {
+ "name": "status",
+ "type": "enum_orders_status",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'redirected_to_payment'"
+ },
+ "ezy_activity": {
+ "name": "ezy_activity",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "orders_updated_at_idx": {
+ "name": "orders_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "orders_created_at_idx": {
+ "name": "orders_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.locations_gallery": {
+ "name": "locations_gallery",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "locations_gallery_order_idx": {
+ "name": "locations_gallery_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "locations_gallery_parent_id_idx": {
+ "name": "locations_gallery_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "locations_gallery_image_idx": {
+ "name": "locations_gallery_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "locations_gallery_image_id_media_id_fk": {
+ "name": "locations_gallery_image_id_media_id_fk",
+ "tableFrom": "locations_gallery",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "locations_gallery_parent_id_fk": {
+ "name": "locations_gallery_parent_id_fk",
+ "tableFrom": "locations_gallery",
+ "tableTo": "locations",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.locations": {
+ "name": "locations",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "slug": {
+ "name": "slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "tagline": {
+ "name": "tagline",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "short_desc": {
+ "name": "short_desc",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "href": {
+ "name": "href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "show_in_menu": {
+ "name": "show_in_menu",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "show_on_home": {
+ "name": "show_on_home",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "sort": {
+ "name": "sort",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 0
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "locations_slug_idx": {
+ "name": "locations_slug_idx",
+ "columns": [
+ {
+ "expression": "slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "locations_image_idx": {
+ "name": "locations_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "locations_meta_meta_image_idx": {
+ "name": "locations_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "locations_updated_at_idx": {
+ "name": "locations_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "locations_created_at_idx": {
+ "name": "locations_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "locations_image_id_media_id_fk": {
+ "name": "locations_image_id_media_id_fk",
+ "tableFrom": "locations",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "locations_meta_image_id_media_id_fk": {
+ "name": "locations_meta_image_id_media_id_fk",
+ "tableFrom": "locations",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.reviews": {
+ "name": "reviews",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "initial": {
+ "name": "initial",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "avatar_bg_id": {
+ "name": "avatar_bg_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "ago": {
+ "name": "ago",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "rating": {
+ "name": "rating",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 5
+ },
+ "text": {
+ "name": "text",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "source": {
+ "name": "source",
+ "type": "enum_reviews_source",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'google'"
+ },
+ "video_url": {
+ "name": "video_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "video_poster": {
+ "name": "video_poster",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "show_on_home": {
+ "name": "show_on_home",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": true
+ },
+ "sort": {
+ "name": "sort",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 0
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "reviews_avatar_bg_idx": {
+ "name": "reviews_avatar_bg_idx",
+ "columns": [
+ {
+ "expression": "avatar_bg_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "reviews_updated_at_idx": {
+ "name": "reviews_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "reviews_created_at_idx": {
+ "name": "reviews_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "reviews_avatar_bg_id_media_id_fk": {
+ "name": "reviews_avatar_bg_id_media_id_fk",
+ "tableFrom": "reviews",
+ "tableTo": "media",
+ "columnsFrom": ["avatar_bg_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.birthday_packages_features": {
+ "name": "birthday_packages_features",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "text": {
+ "name": "text",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "birthday_packages_features_order_idx": {
+ "name": "birthday_packages_features_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "birthday_packages_features_parent_id_idx": {
+ "name": "birthday_packages_features_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "birthday_packages_features_parent_id_fk": {
+ "name": "birthday_packages_features_parent_id_fk",
+ "tableFrom": "birthday_packages_features",
+ "tableTo": "birthday_packages",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.birthday_packages": {
+ "name": "birthday_packages",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "slug": {
+ "name": "slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "price": {
+ "name": "price",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "currency": {
+ "name": "currency",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'₴'"
+ },
+ "price_label": {
+ "name": "price_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "featured": {
+ "name": "featured",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "badge": {
+ "name": "badge",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Обрати пакет'"
+ },
+ "cta_href": {
+ "name": "cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "sort": {
+ "name": "sort",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 0
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "birthday_packages_slug_idx": {
+ "name": "birthday_packages_slug_idx",
+ "columns": [
+ {
+ "expression": "slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "birthday_packages_updated_at_idx": {
+ "name": "birthday_packages_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "birthday_packages_created_at_idx": {
+ "name": "birthday_packages_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.payload_kv": {
+ "name": "payload_kv",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "key": {
+ "name": "key",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "data": {
+ "name": "data",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "payload_kv_key_idx": {
+ "name": "payload_kv_key_idx",
+ "columns": [
+ {
+ "expression": "key",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": true,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.payload_locked_documents": {
+ "name": "payload_locked_documents",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "global_slug": {
+ "name": "global_slug",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "payload_locked_documents_global_slug_idx": {
+ "name": "payload_locked_documents_global_slug_idx",
+ "columns": [
+ {
+ "expression": "global_slug",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_updated_at_idx": {
+ "name": "payload_locked_documents_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_created_at_idx": {
+ "name": "payload_locked_documents_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.payload_locked_documents_rels": {
+ "name": "payload_locked_documents_rels",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "order": {
+ "name": "order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "parent_id": {
+ "name": "parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "path": {
+ "name": "path",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "users_id": {
+ "name": "users_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "media_id": {
+ "name": "media_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "pages_id": {
+ "name": "pages_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "blog_posts_id": {
+ "name": "blog_posts_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "categories_id": {
+ "name": "categories_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "tags_id": {
+ "name": "tags_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "tariffs_id": {
+ "name": "tariffs_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "leads_id": {
+ "name": "leads_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "orders_id": {
+ "name": "orders_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "locations_id": {
+ "name": "locations_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "reviews_id": {
+ "name": "reviews_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "birthday_packages_id": {
+ "name": "birthday_packages_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "payload_locked_documents_rels_order_idx": {
+ "name": "payload_locked_documents_rels_order_idx",
+ "columns": [
+ {
+ "expression": "order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_parent_idx": {
+ "name": "payload_locked_documents_rels_parent_idx",
+ "columns": [
+ {
+ "expression": "parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_path_idx": {
+ "name": "payload_locked_documents_rels_path_idx",
+ "columns": [
+ {
+ "expression": "path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_users_id_idx": {
+ "name": "payload_locked_documents_rels_users_id_idx",
+ "columns": [
+ {
+ "expression": "users_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_media_id_idx": {
+ "name": "payload_locked_documents_rels_media_id_idx",
+ "columns": [
+ {
+ "expression": "media_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_pages_id_idx": {
+ "name": "payload_locked_documents_rels_pages_id_idx",
+ "columns": [
+ {
+ "expression": "pages_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_blog_posts_id_idx": {
+ "name": "payload_locked_documents_rels_blog_posts_id_idx",
+ "columns": [
+ {
+ "expression": "blog_posts_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_categories_id_idx": {
+ "name": "payload_locked_documents_rels_categories_id_idx",
+ "columns": [
+ {
+ "expression": "categories_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_tags_id_idx": {
+ "name": "payload_locked_documents_rels_tags_id_idx",
+ "columns": [
+ {
+ "expression": "tags_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_tariffs_id_idx": {
+ "name": "payload_locked_documents_rels_tariffs_id_idx",
+ "columns": [
+ {
+ "expression": "tariffs_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_leads_id_idx": {
+ "name": "payload_locked_documents_rels_leads_id_idx",
+ "columns": [
+ {
+ "expression": "leads_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_orders_id_idx": {
+ "name": "payload_locked_documents_rels_orders_id_idx",
+ "columns": [
+ {
+ "expression": "orders_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_locations_id_idx": {
+ "name": "payload_locked_documents_rels_locations_id_idx",
+ "columns": [
+ {
+ "expression": "locations_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_reviews_id_idx": {
+ "name": "payload_locked_documents_rels_reviews_id_idx",
+ "columns": [
+ {
+ "expression": "reviews_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_locked_documents_rels_birthday_packages_id_idx": {
+ "name": "payload_locked_documents_rels_birthday_packages_id_idx",
+ "columns": [
+ {
+ "expression": "birthday_packages_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "payload_locked_documents_rels_parent_fk": {
+ "name": "payload_locked_documents_rels_parent_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "payload_locked_documents",
+ "columnsFrom": ["parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_users_fk": {
+ "name": "payload_locked_documents_rels_users_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "users",
+ "columnsFrom": ["users_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_media_fk": {
+ "name": "payload_locked_documents_rels_media_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "media",
+ "columnsFrom": ["media_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_pages_fk": {
+ "name": "payload_locked_documents_rels_pages_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "pages",
+ "columnsFrom": ["pages_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_blog_posts_fk": {
+ "name": "payload_locked_documents_rels_blog_posts_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "blog_posts",
+ "columnsFrom": ["blog_posts_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_categories_fk": {
+ "name": "payload_locked_documents_rels_categories_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "categories",
+ "columnsFrom": ["categories_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_tags_fk": {
+ "name": "payload_locked_documents_rels_tags_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "tags",
+ "columnsFrom": ["tags_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_tariffs_fk": {
+ "name": "payload_locked_documents_rels_tariffs_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "tariffs",
+ "columnsFrom": ["tariffs_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_leads_fk": {
+ "name": "payload_locked_documents_rels_leads_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "leads",
+ "columnsFrom": ["leads_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_orders_fk": {
+ "name": "payload_locked_documents_rels_orders_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "orders",
+ "columnsFrom": ["orders_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_locations_fk": {
+ "name": "payload_locked_documents_rels_locations_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "locations",
+ "columnsFrom": ["locations_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_reviews_fk": {
+ "name": "payload_locked_documents_rels_reviews_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "reviews",
+ "columnsFrom": ["reviews_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_locked_documents_rels_birthday_packages_fk": {
+ "name": "payload_locked_documents_rels_birthday_packages_fk",
+ "tableFrom": "payload_locked_documents_rels",
+ "tableTo": "birthday_packages",
+ "columnsFrom": ["birthday_packages_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.payload_preferences": {
+ "name": "payload_preferences",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "key": {
+ "name": "key",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "value": {
+ "name": "value",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "payload_preferences_key_idx": {
+ "name": "payload_preferences_key_idx",
+ "columns": [
+ {
+ "expression": "key",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_preferences_updated_at_idx": {
+ "name": "payload_preferences_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_preferences_created_at_idx": {
+ "name": "payload_preferences_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.payload_preferences_rels": {
+ "name": "payload_preferences_rels",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "order": {
+ "name": "order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "parent_id": {
+ "name": "parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "path": {
+ "name": "path",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "users_id": {
+ "name": "users_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "payload_preferences_rels_order_idx": {
+ "name": "payload_preferences_rels_order_idx",
+ "columns": [
+ {
+ "expression": "order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_preferences_rels_parent_idx": {
+ "name": "payload_preferences_rels_parent_idx",
+ "columns": [
+ {
+ "expression": "parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_preferences_rels_path_idx": {
+ "name": "payload_preferences_rels_path_idx",
+ "columns": [
+ {
+ "expression": "path",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_preferences_rels_users_id_idx": {
+ "name": "payload_preferences_rels_users_id_idx",
+ "columns": [
+ {
+ "expression": "users_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "payload_preferences_rels_parent_fk": {
+ "name": "payload_preferences_rels_parent_fk",
+ "tableFrom": "payload_preferences_rels",
+ "tableTo": "payload_preferences",
+ "columnsFrom": ["parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ },
+ "payload_preferences_rels_users_fk": {
+ "name": "payload_preferences_rels_users_fk",
+ "tableFrom": "payload_preferences_rels",
+ "tableTo": "users",
+ "columnsFrom": ["users_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.payload_migrations": {
+ "name": "payload_migrations",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "name": {
+ "name": "name",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "batch": {
+ "name": "batch",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": true,
+ "default": "now()"
+ }
+ },
+ "indexes": {
+ "payload_migrations_updated_at_idx": {
+ "name": "payload_migrations_updated_at_idx",
+ "columns": [
+ {
+ "expression": "updated_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "payload_migrations_created_at_idx": {
+ "name": "payload_migrations_created_at_idx",
+ "columns": [
+ {
+ "expression": "created_at",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {},
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.home_page_why_parents_items": {
+ "name": "home_page_why_parents_items",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "home_page_why_parents_items_order_idx": {
+ "name": "home_page_why_parents_items_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_why_parents_items_parent_id_idx": {
+ "name": "home_page_why_parents_items_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "home_page_why_parents_items_parent_id_fk": {
+ "name": "home_page_why_parents_items_parent_id_fk",
+ "tableFrom": "home_page_why_parents_items",
+ "tableTo": "home_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.home_page_why_parents_side_gallery": {
+ "name": "home_page_why_parents_side_gallery",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "home_page_why_parents_side_gallery_order_idx": {
+ "name": "home_page_why_parents_side_gallery_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_why_parents_side_gallery_parent_id_idx": {
+ "name": "home_page_why_parents_side_gallery_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_why_parents_side_gallery_image_idx": {
+ "name": "home_page_why_parents_side_gallery_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "home_page_why_parents_side_gallery_image_id_media_id_fk": {
+ "name": "home_page_why_parents_side_gallery_image_id_media_id_fk",
+ "tableFrom": "home_page_why_parents_side_gallery",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_why_parents_side_gallery_parent_id_fk": {
+ "name": "home_page_why_parents_side_gallery_parent_id_fk",
+ "tableFrom": "home_page_why_parents_side_gallery",
+ "tableTo": "home_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.home_page_gallery_images": {
+ "name": "home_page_gallery_images",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "alt": {
+ "name": "alt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "home_page_gallery_images_order_idx": {
+ "name": "home_page_gallery_images_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_gallery_images_parent_id_idx": {
+ "name": "home_page_gallery_images_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_gallery_images_image_idx": {
+ "name": "home_page_gallery_images_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "home_page_gallery_images_image_id_media_id_fk": {
+ "name": "home_page_gallery_images_image_id_media_id_fk",
+ "tableFrom": "home_page_gallery_images",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_gallery_images_parent_id_fk": {
+ "name": "home_page_gallery_images_parent_id_fk",
+ "tableFrom": "home_page_gallery_images",
+ "tableTo": "home_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.home_page": {
+ "name": "home_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "hero_title": {
+ "name": "hero_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_subtitle": {
+ "name": "hero_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_cta_label": {
+ "name": "hero_cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_cta_href": {
+ "name": "hero_cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_background_video": {
+ "name": "hero_background_video",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_background_image_id": {
+ "name": "hero_background_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_foreground_overlay_id": {
+ "name": "hero_foreground_overlay_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "hero_silhouette_overlay_id": {
+ "name": "hero_silhouette_overlay_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "page_hero_background_image_id": {
+ "name": "page_hero_background_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "section_titles_locations": {
+ "name": "section_titles_locations",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "section_titles_why_parents": {
+ "name": "section_titles_why_parents",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "section_titles_birthday": {
+ "name": "section_titles_birthday",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "section_titles_gallery": {
+ "name": "section_titles_gallery",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "section_titles_reviews": {
+ "name": "section_titles_reviews",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "section_titles_news": {
+ "name": "section_titles_news",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "video_poster_id": {
+ "name": "video_poster_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "video_src": {
+ "name": "video_src",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "birthday_intro_text": {
+ "name": "birthday_intro_text",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "news_title": {
+ "name": "news_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "news_subtitle": {
+ "name": "news_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "news_limit": {
+ "name": "news_limit",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false,
+ "default": 3
+ },
+ "map_embed_url": {
+ "name": "map_embed_url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "map_address": {
+ "name": "map_address",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "map_lat": {
+ "name": "map_lat",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "map_lng": {
+ "name": "map_lng",
+ "type": "numeric",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "home_page_hero_hero_background_image_idx": {
+ "name": "home_page_hero_hero_background_image_idx",
+ "columns": [
+ {
+ "expression": "hero_background_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_hero_hero_foreground_overlay_idx": {
+ "name": "home_page_hero_hero_foreground_overlay_idx",
+ "columns": [
+ {
+ "expression": "hero_foreground_overlay_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_hero_hero_silhouette_overlay_idx": {
+ "name": "home_page_hero_hero_silhouette_overlay_idx",
+ "columns": [
+ {
+ "expression": "hero_silhouette_overlay_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_page_hero_page_hero_background_image_idx": {
+ "name": "home_page_page_hero_page_hero_background_image_idx",
+ "columns": [
+ {
+ "expression": "page_hero_background_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_video_video_poster_idx": {
+ "name": "home_page_video_video_poster_idx",
+ "columns": [
+ {
+ "expression": "video_poster_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "home_page_meta_meta_image_idx": {
+ "name": "home_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "home_page_hero_background_image_id_media_id_fk": {
+ "name": "home_page_hero_background_image_id_media_id_fk",
+ "tableFrom": "home_page",
+ "tableTo": "media",
+ "columnsFrom": ["hero_background_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_hero_foreground_overlay_id_media_id_fk": {
+ "name": "home_page_hero_foreground_overlay_id_media_id_fk",
+ "tableFrom": "home_page",
+ "tableTo": "media",
+ "columnsFrom": ["hero_foreground_overlay_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_hero_silhouette_overlay_id_media_id_fk": {
+ "name": "home_page_hero_silhouette_overlay_id_media_id_fk",
+ "tableFrom": "home_page",
+ "tableTo": "media",
+ "columnsFrom": ["hero_silhouette_overlay_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_page_hero_background_image_id_media_id_fk": {
+ "name": "home_page_page_hero_background_image_id_media_id_fk",
+ "tableFrom": "home_page",
+ "tableTo": "media",
+ "columnsFrom": ["page_hero_background_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_video_poster_id_media_id_fk": {
+ "name": "home_page_video_poster_id_media_id_fk",
+ "tableFrom": "home_page",
+ "tableTo": "media",
+ "columnsFrom": ["video_poster_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "home_page_meta_image_id_media_id_fk": {
+ "name": "home_page_meta_image_id_media_id_fk",
+ "tableFrom": "home_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.checkout_page": {
+ "name": "checkout_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Оформлення замовлення'"
+ },
+ "instructions": {
+ "name": "instructions",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "terms": {
+ "name": "terms",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "checkout_page_meta_meta_image_idx": {
+ "name": "checkout_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "checkout_page_meta_image_id_media_id_fk": {
+ "name": "checkout_page_meta_image_id_media_id_fk",
+ "tableFrom": "checkout_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.thank_you_page": {
+ "name": "thank_you_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Дякуємо за замовлення!'"
+ },
+ "message": {
+ "name": "message",
+ "type": "jsonb",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "contact_phone": {
+ "name": "contact_phone",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'+380 (67) 000-00-00'"
+ },
+ "contact_email": {
+ "name": "contact_email",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "thank_you_page_meta_meta_image_idx": {
+ "name": "thank_you_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "thank_you_page_meta_image_id_media_id_fk": {
+ "name": "thank_you_page_meta_image_id_media_id_fk",
+ "tableFrom": "thank_you_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.header_nav_links_children": {
+ "name": "header_nav_links_children",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "label": {
+ "name": "label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "href": {
+ "name": "href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "header_nav_links_children_order_idx": {
+ "name": "header_nav_links_children_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "header_nav_links_children_parent_id_idx": {
+ "name": "header_nav_links_children_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "header_nav_links_children_parent_id_fk": {
+ "name": "header_nav_links_children_parent_id_fk",
+ "tableFrom": "header_nav_links_children",
+ "tableTo": "header_nav_links",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.header_nav_links": {
+ "name": "header_nav_links",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "label": {
+ "name": "label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "href": {
+ "name": "href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "open_in_new_tab": {
+ "name": "open_in_new_tab",
+ "type": "boolean",
+ "primaryKey": false,
+ "notNull": false,
+ "default": false
+ },
+ "auto_children_from": {
+ "name": "auto_children_from",
+ "type": "enum_header_nav_links_auto_children_from",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'none'"
+ }
+ },
+ "indexes": {
+ "header_nav_links_order_idx": {
+ "name": "header_nav_links_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "header_nav_links_parent_id_idx": {
+ "name": "header_nav_links_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "header_nav_links_parent_id_fk": {
+ "name": "header_nav_links_parent_id_fk",
+ "tableFrom": "header_nav_links",
+ "tableTo": "header",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.header": {
+ "name": "header",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "logo_id": {
+ "name": "logo_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "logo_alt": {
+ "name": "logo_alt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_label": {
+ "name": "cta_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "cta_href": {
+ "name": "cta_href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "header_logo_idx": {
+ "name": "header_logo_idx",
+ "columns": [
+ {
+ "expression": "logo_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "header_logo_id_media_id_fk": {
+ "name": "header_logo_id_media_id_fk",
+ "tableFrom": "header",
+ "tableTo": "media",
+ "columnsFrom": ["logo_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.footer_nav_links": {
+ "name": "footer_nav_links",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "label": {
+ "name": "label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "href": {
+ "name": "href",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "footer_nav_links_order_idx": {
+ "name": "footer_nav_links_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "footer_nav_links_parent_id_idx": {
+ "name": "footer_nav_links_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "footer_nav_links_parent_id_fk": {
+ "name": "footer_nav_links_parent_id_fk",
+ "tableFrom": "footer_nav_links",
+ "tableTo": "footer",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.footer_socials": {
+ "name": "footer_socials",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "platform": {
+ "name": "platform",
+ "type": "enum_footer_socials_platform",
+ "typeSchema": "public",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "url": {
+ "name": "url",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "footer_socials_order_idx": {
+ "name": "footer_socials_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "footer_socials_parent_id_idx": {
+ "name": "footer_socials_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "footer_socials_parent_id_fk": {
+ "name": "footer_socials_parent_id_fk",
+ "tableFrom": "footer_socials",
+ "tableTo": "footer",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.footer": {
+ "name": "footer",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "logo_id": {
+ "name": "logo_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "logo_alt": {
+ "name": "logo_alt",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "contacts_phone": {
+ "name": "contacts_phone",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "contacts_email": {
+ "name": "contacts_email",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "contacts_address": {
+ "name": "contacts_address",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "copyright_text": {
+ "name": "copyright_text",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "footer_logo_idx": {
+ "name": "footer_logo_idx",
+ "columns": [
+ {
+ "expression": "logo_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "footer_logo_id_media_id_fk": {
+ "name": "footer_logo_id_media_id_fk",
+ "tableFrom": "footer",
+ "tableTo": "media",
+ "columnsFrom": ["logo_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.site_settings_tariff_category_labels": {
+ "name": "site_settings_tariff_category_labels",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "key": {
+ "name": "key",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "label": {
+ "name": "label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "site_settings_tariff_category_labels_order_idx": {
+ "name": "site_settings_tariff_category_labels_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "site_settings_tariff_category_labels_parent_id_idx": {
+ "name": "site_settings_tariff_category_labels_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "site_settings_tariff_category_labels_parent_id_fk": {
+ "name": "site_settings_tariff_category_labels_parent_id_fk",
+ "tableFrom": "site_settings_tariff_category_labels",
+ "tableTo": "site_settings",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.site_settings": {
+ "name": "site_settings",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "ga4_id": {
+ "name": "ga4_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "binotel_id": {
+ "name": "binotel_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "telegram_chat_id": {
+ "name": "telegram_chat_id",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "resend_from": {
+ "name": "resend_from",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "default_meta_title": {
+ "name": "default_meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "default_meta_description": {
+ "name": "default_meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "default_og_image_id": {
+ "name": "default_og_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "site_settings_default_og_image_idx": {
+ "name": "site_settings_default_og_image_idx",
+ "columns": [
+ {
+ "expression": "default_og_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "site_settings_default_og_image_id_media_id_fk": {
+ "name": "site_settings_default_og_image_id_media_id_fk",
+ "tableFrom": "site_settings",
+ "tableTo": "media",
+ "columnsFrom": ["default_og_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.dyvolis_page_hero_tips": {
+ "name": "dyvolis_page_hero_tips",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "text": {
+ "name": "text",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "dyvolis_page_hero_tips_order_idx": {
+ "name": "dyvolis_page_hero_tips_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "dyvolis_page_hero_tips_parent_id_idx": {
+ "name": "dyvolis_page_hero_tips_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "dyvolis_page_hero_tips_parent_id_fk": {
+ "name": "dyvolis_page_hero_tips_parent_id_fk",
+ "tableFrom": "dyvolis_page_hero_tips",
+ "tableTo": "dyvolis_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.dyvolis_page_gallery_images": {
+ "name": "dyvolis_page_gallery_images",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "image_id": {
+ "name": "image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "dyvolis_page_gallery_images_order_idx": {
+ "name": "dyvolis_page_gallery_images_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "dyvolis_page_gallery_images_parent_id_idx": {
+ "name": "dyvolis_page_gallery_images_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "dyvolis_page_gallery_images_image_idx": {
+ "name": "dyvolis_page_gallery_images_image_idx",
+ "columns": [
+ {
+ "expression": "image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "dyvolis_page_gallery_images_image_id_media_id_fk": {
+ "name": "dyvolis_page_gallery_images_image_id_media_id_fk",
+ "tableFrom": "dyvolis_page_gallery_images",
+ "tableTo": "media",
+ "columnsFrom": ["image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ },
+ "dyvolis_page_gallery_images_parent_id_fk": {
+ "name": "dyvolis_page_gallery_images_parent_id_fk",
+ "tableFrom": "dyvolis_page_gallery_images",
+ "tableTo": "dyvolis_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.dyvolis_page_why_visit_items": {
+ "name": "dyvolis_page_why_visit_items",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "dyvolis_page_why_visit_items_order_idx": {
+ "name": "dyvolis_page_why_visit_items_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "dyvolis_page_why_visit_items_parent_id_idx": {
+ "name": "dyvolis_page_why_visit_items_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "dyvolis_page_why_visit_items_parent_id_fk": {
+ "name": "dyvolis_page_why_visit_items_parent_id_fk",
+ "tableFrom": "dyvolis_page_why_visit_items",
+ "tableTo": "dyvolis_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.dyvolis_page_review_videos": {
+ "name": "dyvolis_page_review_videos",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "src": {
+ "name": "src",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "poster": {
+ "name": "poster",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "label": {
+ "name": "label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "dyvolis_page_review_videos_order_idx": {
+ "name": "dyvolis_page_review_videos_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "dyvolis_page_review_videos_parent_id_idx": {
+ "name": "dyvolis_page_review_videos_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "dyvolis_page_review_videos_parent_id_fk": {
+ "name": "dyvolis_page_review_videos_parent_id_fk",
+ "tableFrom": "dyvolis_page_review_videos",
+ "tableTo": "dyvolis_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.dyvolis_page": {
+ "name": "dyvolis_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "hero_title": {
+ "name": "hero_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'ДивоЛіс – територія магії та фантазії'"
+ },
+ "hero_description": {
+ "name": "hero_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Топіарні фігури зроблені з урахуванням важливих деталей, тому ви одразу впізнаєте в них улюблених казкових героїв. Тут можна бігати, стрибати, лазити по фігурках і ставати героями власної казки.'"
+ },
+ "hero_stat": {
+ "name": "hero_stat",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'60+'"
+ },
+ "hero_stat_label": {
+ "name": "hero_stat_label",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'експонатів з безпечних для дітей матеріалів'"
+ },
+ "working_hours": {
+ "name": "working_hours",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'щодня з 11:00 до 20:00'"
+ },
+ "gallery_quote": {
+ "name": "gallery_quote",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Це місце – де малеча зустрічає героїв улюблених казок. Простір справжнього дитинства.'"
+ },
+ "why_visit_title": {
+ "name": "why_visit_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Чому варто відвідати ДивоЛіс'"
+ },
+ "combo_description": {
+ "name": "combo_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Динопарк + Диволіс із казковими топіарними фігурами + Дзеркальний лабіринт'"
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "dyvolis_page_meta_meta_image_idx": {
+ "name": "dyvolis_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "dyvolis_page_meta_image_id_media_id_fk": {
+ "name": "dyvolis_page_meta_image_id_media_id_fk",
+ "tableFrom": "dyvolis_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.group_visits_page_groups": {
+ "name": "group_visits_page_groups",
+ "schema": "",
+ "columns": {
+ "_order": {
+ "name": "_order",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "_parent_id": {
+ "name": "_parent_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "id": {
+ "name": "id",
+ "type": "varchar",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "icon": {
+ "name": "icon",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "title": {
+ "name": "title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "description": {
+ "name": "description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "min_people": {
+ "name": "min_people",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ },
+ "discount": {
+ "name": "discount",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": true
+ }
+ },
+ "indexes": {
+ "group_visits_page_groups_order_idx": {
+ "name": "group_visits_page_groups_order_idx",
+ "columns": [
+ {
+ "expression": "_order",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ },
+ "group_visits_page_groups_parent_id_idx": {
+ "name": "group_visits_page_groups_parent_id_idx",
+ "columns": [
+ {
+ "expression": "_parent_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "group_visits_page_groups_parent_id_fk": {
+ "name": "group_visits_page_groups_parent_id_fk",
+ "tableFrom": "group_visits_page_groups",
+ "tableTo": "group_visits_page",
+ "columnsFrom": ["_parent_id"],
+ "columnsTo": ["id"],
+ "onDelete": "cascade",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.group_visits_page": {
+ "name": "group_visits_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "hero_title": {
+ "name": "hero_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Групові відвідування'"
+ },
+ "hero_subtitle": {
+ "name": "hero_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Спеціальні умови для організованих груп. Мінімум 10 осіб — максимум вражень.'"
+ },
+ "form_title": {
+ "name": "form_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Подати заявку на групове відвідування'"
+ },
+ "form_subtitle": {
+ "name": "form_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Вкажіть кількість учасників та бажану дату — менеджер зателефонує і погодить деталі.'"
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "group_visits_page_meta_meta_image_idx": {
+ "name": "group_visits_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "group_visits_page_meta_image_id_media_id_fk": {
+ "name": "group_visits_page_meta_image_id_media_id_fk",
+ "tableFrom": "group_visits_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.birthday_page": {
+ "name": "birthday_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "hero_title": {
+ "name": "hero_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Дні народження'"
+ },
+ "hero_subtitle": {
+ "name": "hero_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Зробіть свято незабутнім! Оберіть пакет і наші менеджери зв''яжуться з вами для уточнення деталей.'"
+ },
+ "form_title": {
+ "name": "form_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Замовити святкування'"
+ },
+ "form_subtitle": {
+ "name": "form_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Залиште заявку і наш менеджер зв''яжеться з вами протягом 30 хвилин'"
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "birthday_page_meta_meta_image_idx": {
+ "name": "birthday_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "birthday_page_meta_image_id_media_id_fk": {
+ "name": "birthday_page_meta_image_id_media_id_fk",
+ "tableFrom": "birthday_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ },
+ "public.tickets_page": {
+ "name": "tickets_page",
+ "schema": "",
+ "columns": {
+ "id": {
+ "name": "id",
+ "type": "serial",
+ "primaryKey": true,
+ "notNull": true
+ },
+ "hero_title": {
+ "name": "hero_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Купити квиток'"
+ },
+ "hero_subtitle": {
+ "name": "hero_subtitle",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Оберіть квиток та придбайте онлайн — без черги на касі'"
+ },
+ "section_title_birthday": {
+ "name": "section_title_birthday",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Дні народження'"
+ },
+ "section_title_groups": {
+ "name": "section_title_groups",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false,
+ "default": "'Групові відвідування'"
+ },
+ "meta_title": {
+ "name": "meta_title",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_description": {
+ "name": "meta_description",
+ "type": "varchar",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "meta_image_id": {
+ "name": "meta_image_id",
+ "type": "integer",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "updated_at": {
+ "name": "updated_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ },
+ "created_at": {
+ "name": "created_at",
+ "type": "timestamp(3) with time zone",
+ "primaryKey": false,
+ "notNull": false
+ }
+ },
+ "indexes": {
+ "tickets_page_meta_meta_image_idx": {
+ "name": "tickets_page_meta_meta_image_idx",
+ "columns": [
+ {
+ "expression": "meta_image_id",
+ "isExpression": false,
+ "asc": true,
+ "nulls": "last"
+ }
+ ],
+ "isUnique": false,
+ "concurrently": false,
+ "method": "btree",
+ "with": {}
+ }
+ },
+ "foreignKeys": {
+ "tickets_page_meta_image_id_media_id_fk": {
+ "name": "tickets_page_meta_image_id_media_id_fk",
+ "tableFrom": "tickets_page",
+ "tableTo": "media",
+ "columnsFrom": ["meta_image_id"],
+ "columnsTo": ["id"],
+ "onDelete": "set null",
+ "onUpdate": "no action"
+ }
+ },
+ "compositePrimaryKeys": {},
+ "uniqueConstraints": {},
+ "policies": {},
+ "checkConstraints": {},
+ "isRLSEnabled": false
+ }
+ },
+ "enums": {
+ "public.enum_users_role": {
+ "name": "enum_users_role",
+ "schema": "public",
+ "values": ["admin", "editor"]
+ },
+ "public.enum_pages_blocks_hero_background_type": {
+ "name": "enum_pages_blocks_hero_background_type",
+ "schema": "public",
+ "values": ["image", "video"]
+ },
+ "public.enum_pages_blocks_cta_variant": {
+ "name": "enum_pages_blocks_cta_variant",
+ "schema": "public",
+ "values": ["primary", "secondary", "dark"]
+ },
+ "public.enum_pages_status": {
+ "name": "enum_pages_status",
+ "schema": "public",
+ "values": ["draft", "published"]
+ },
+ "public.enum__pages_v_blocks_hero_background_type": {
+ "name": "enum__pages_v_blocks_hero_background_type",
+ "schema": "public",
+ "values": ["image", "video"]
+ },
+ "public.enum__pages_v_blocks_cta_variant": {
+ "name": "enum__pages_v_blocks_cta_variant",
+ "schema": "public",
+ "values": ["primary", "secondary", "dark"]
+ },
+ "public.enum__pages_v_version_status": {
+ "name": "enum__pages_v_version_status",
+ "schema": "public",
+ "values": ["draft", "published"]
+ },
+ "public.enum_blog_posts_status": {
+ "name": "enum_blog_posts_status",
+ "schema": "public",
+ "values": ["draft", "published"]
+ },
+ "public.enum__blog_posts_v_version_status": {
+ "name": "enum__blog_posts_v_version_status",
+ "schema": "public",
+ "values": ["draft", "published"]
+ },
+ "public.enum_tariffs_category_tag": {
+ "name": "enum_tariffs_category_tag",
+ "schema": "public",
+ "values": ["dyno", "dyvolis", "maze", "combo", "family"]
+ },
+ "public.enum_leads_status": {
+ "name": "enum_leads_status",
+ "schema": "public",
+ "values": ["new", "contacted", "qualified", "closed"]
+ },
+ "public.enum_orders_status": {
+ "name": "enum_orders_status",
+ "schema": "public",
+ "values": ["redirected_to_payment", "paid", "failed", "cancelled"]
+ },
+ "public.enum_reviews_source": {
+ "name": "enum_reviews_source",
+ "schema": "public",
+ "values": ["google", "facebook", "instagram", "manual"]
+ },
+ "public.enum_header_nav_links_auto_children_from": {
+ "name": "enum_header_nav_links_auto_children_from",
+ "schema": "public",
+ "values": ["none", "locations"]
+ },
+ "public.enum_footer_socials_platform": {
+ "name": "enum_footer_socials_platform",
+ "schema": "public",
+ "values": ["instagram", "facebook", "youtube", "tiktok"]
+ }
+ },
+ "schemas": {},
+ "sequences": {},
+ "roles": {},
+ "policies": {},
+ "views": {},
+ "_meta": {
+ "schemas": {},
+ "tables": {},
+ "columns": {}
+ },
+ "id": "320d7b7b-1cdc-465d-89eb-1e327ff7de91",
+ "prevId": "00000000-0000-0000-0000-000000000000"
+}
diff --git a/migrations/20260515_153940.ts b/migrations/20260515_153940.ts
new file mode 100644
index 0000000..112eff8
--- /dev/null
+++ b/migrations/20260515_153940.ts
@@ -0,0 +1,1389 @@
+import { MigrateUpArgs, MigrateDownArgs, sql } from '@payloadcms/db-postgres'
+
+export async function up({ db, payload, req }: MigrateUpArgs): Promise {
+ await db.execute(sql`
+ CREATE TYPE "public"."enum_users_role" AS ENUM('admin', 'editor');
+ CREATE TYPE "public"."enum_pages_blocks_hero_background_type" AS ENUM('image', 'video');
+ CREATE TYPE "public"."enum_pages_blocks_cta_variant" AS ENUM('primary', 'secondary', 'dark');
+ CREATE TYPE "public"."enum_pages_status" AS ENUM('draft', 'published');
+ CREATE TYPE "public"."enum__pages_v_blocks_hero_background_type" AS ENUM('image', 'video');
+ CREATE TYPE "public"."enum__pages_v_blocks_cta_variant" AS ENUM('primary', 'secondary', 'dark');
+ CREATE TYPE "public"."enum__pages_v_version_status" AS ENUM('draft', 'published');
+ CREATE TYPE "public"."enum_blog_posts_status" AS ENUM('draft', 'published');
+ CREATE TYPE "public"."enum__blog_posts_v_version_status" AS ENUM('draft', 'published');
+ CREATE TYPE "public"."enum_tariffs_category_tag" AS ENUM('dyno', 'dyvolis', 'maze', 'combo', 'family');
+ CREATE TYPE "public"."enum_leads_status" AS ENUM('new', 'contacted', 'qualified', 'closed');
+ CREATE TYPE "public"."enum_orders_status" AS ENUM('redirected_to_payment', 'paid', 'failed', 'cancelled');
+ CREATE TYPE "public"."enum_reviews_source" AS ENUM('google', 'facebook', 'instagram', 'manual');
+ CREATE TYPE "public"."enum_header_nav_links_auto_children_from" AS ENUM('none', 'locations');
+ CREATE TYPE "public"."enum_footer_socials_platform" AS ENUM('instagram', 'facebook', 'youtube', 'tiktok');
+ CREATE TABLE "users_sessions" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "created_at" timestamp(3) with time zone,
+ "expires_at" timestamp(3) with time zone NOT NULL
+ );
+
+ CREATE TABLE "users" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "role" "enum_users_role" DEFAULT 'editor' NOT NULL,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "email" varchar NOT NULL,
+ "reset_password_token" varchar,
+ "reset_password_expiration" timestamp(3) with time zone,
+ "salt" varchar,
+ "hash" varchar,
+ "login_attempts" numeric DEFAULT 0,
+ "lock_until" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "media" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "alt" varchar NOT NULL,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "url" varchar,
+ "thumbnail_u_r_l" varchar,
+ "filename" varchar,
+ "mime_type" varchar,
+ "filesize" numeric,
+ "width" numeric,
+ "height" numeric,
+ "focal_x" numeric,
+ "focal_y" numeric
+ );
+
+ CREATE TABLE "pages_blocks_hero" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "cta_label" varchar,
+ "cta_href" varchar,
+ "background_type" "enum_pages_blocks_hero_background_type" DEFAULT 'image',
+ "background_image_id" integer,
+ "background_video_url" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_locations_teaser_locations" (
+ "_order" integer NOT NULL,
+ "_parent_id" varchar NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "name" varchar,
+ "description" varchar,
+ "image_id" integer,
+ "href" varchar,
+ "cta_label" varchar
+ );
+
+ CREATE TABLE "pages_blocks_locations_teaser" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_features_items" (
+ "_order" integer NOT NULL,
+ "_parent_id" varchar NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "icon" varchar,
+ "title" varchar,
+ "description" varchar
+ );
+
+ CREATE TABLE "pages_blocks_features" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_news_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar DEFAULT 'Новини',
+ "limit" numeric DEFAULT 3,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_newsletter_form" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "cta_label" varchar DEFAULT 'Підписатися',
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_gallery_images" (
+ "_order" integer NOT NULL,
+ "_parent_id" varchar NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "image_id" integer,
+ "caption" varchar
+ );
+
+ CREATE TABLE "pages_blocks_gallery" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_rich_text" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "content" jsonb,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_image_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "image_id" integer,
+ "caption" varchar,
+ "full_width" boolean DEFAULT false,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_video_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "video_url" varchar,
+ "caption" varchar,
+ "autoplay" boolean DEFAULT false,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_lead_form" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "form_source" varchar,
+ "show_phone" boolean DEFAULT true,
+ "show_email" boolean DEFAULT false,
+ "cta_label" varchar DEFAULT 'Відправити',
+ "success_message" varchar DEFAULT 'Дякуємо! Ми зв''яжемося з вами найближчим часом.',
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_pricing_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "show_only_visible" boolean DEFAULT true,
+ "cta_label" varchar DEFAULT 'Купити квиток',
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages_blocks_cta" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "cta_label" varchar,
+ "cta_href" varchar,
+ "variant" "enum_pages_blocks_cta_variant" DEFAULT 'primary',
+ "block_name" varchar
+ );
+
+ CREATE TABLE "pages" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "slug" varchar,
+ "status" "enum_pages_status" DEFAULT 'draft',
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "_status" "enum_pages_status" DEFAULT 'draft'
+ );
+
+ CREATE TABLE "_pages_v_blocks_hero" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "cta_label" varchar,
+ "cta_href" varchar,
+ "background_type" "enum__pages_v_blocks_hero_background_type" DEFAULT 'image',
+ "background_image_id" integer,
+ "background_video_url" varchar,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_locations_teaser_locations" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar,
+ "description" varchar,
+ "image_id" integer,
+ "href" varchar,
+ "cta_label" varchar,
+ "_uuid" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_locations_teaser" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_features_items" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "icon" varchar,
+ "title" varchar,
+ "description" varchar,
+ "_uuid" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_features" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_news_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar DEFAULT 'Новини',
+ "limit" numeric DEFAULT 3,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_newsletter_form" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "cta_label" varchar DEFAULT 'Підписатися',
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_gallery_images" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "image_id" integer,
+ "caption" varchar,
+ "_uuid" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_gallery" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_rich_text" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "content" jsonb,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_image_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "image_id" integer,
+ "caption" varchar,
+ "full_width" boolean DEFAULT false,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_video_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "video_url" varchar,
+ "caption" varchar,
+ "autoplay" boolean DEFAULT false,
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_lead_form" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "form_source" varchar,
+ "show_phone" boolean DEFAULT true,
+ "show_email" boolean DEFAULT false,
+ "cta_label" varchar DEFAULT 'Відправити',
+ "success_message" varchar DEFAULT 'Дякуємо! Ми зв''яжемося з вами найближчим часом.',
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_pricing_block" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "show_only_visible" boolean DEFAULT true,
+ "cta_label" varchar DEFAULT 'Купити квиток',
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v_blocks_cta" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "_path" text NOT NULL,
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "subtitle" varchar,
+ "cta_label" varchar,
+ "cta_href" varchar,
+ "variant" "enum__pages_v_blocks_cta_variant" DEFAULT 'primary',
+ "_uuid" varchar,
+ "block_name" varchar
+ );
+
+ CREATE TABLE "_pages_v" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "parent_id" integer,
+ "version_title" varchar,
+ "version_slug" varchar,
+ "version_status" "enum__pages_v_version_status" DEFAULT 'draft',
+ "version_meta_title" varchar,
+ "version_meta_description" varchar,
+ "version_meta_image_id" integer,
+ "version_updated_at" timestamp(3) with time zone,
+ "version_created_at" timestamp(3) with time zone,
+ "version__status" "enum__pages_v_version_status" DEFAULT 'draft',
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "latest" boolean
+ );
+
+ CREATE TABLE "blog_posts" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "slug" varchar,
+ "published_at" timestamp(3) with time zone,
+ "hero_id" integer,
+ "body" jsonb,
+ "excerpt" varchar,
+ "status" "enum_blog_posts_status" DEFAULT 'draft',
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "_status" "enum_blog_posts_status" DEFAULT 'draft'
+ );
+
+ CREATE TABLE "blog_posts_rels" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "order" integer,
+ "parent_id" integer NOT NULL,
+ "path" varchar NOT NULL,
+ "categories_id" integer,
+ "tags_id" integer
+ );
+
+ CREATE TABLE "_blog_posts_v" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "parent_id" integer,
+ "version_title" varchar,
+ "version_slug" varchar,
+ "version_published_at" timestamp(3) with time zone,
+ "version_hero_id" integer,
+ "version_body" jsonb,
+ "version_excerpt" varchar,
+ "version_status" "enum__blog_posts_v_version_status" DEFAULT 'draft',
+ "version_meta_title" varchar,
+ "version_meta_description" varchar,
+ "version_meta_image_id" integer,
+ "version_updated_at" timestamp(3) with time zone,
+ "version_created_at" timestamp(3) with time zone,
+ "version__status" "enum__blog_posts_v_version_status" DEFAULT 'draft',
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "latest" boolean
+ );
+
+ CREATE TABLE "_blog_posts_v_rels" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "order" integer,
+ "parent_id" integer NOT NULL,
+ "path" varchar NOT NULL,
+ "categories_id" integer,
+ "tags_id" integer
+ );
+
+ CREATE TABLE "categories" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "slug" varchar,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "tags" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "slug" varchar,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "tariffs" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "ezy_id" numeric NOT NULL,
+ "display_name" varchar,
+ "description" jsonb,
+ "image_id" integer,
+ "icon" varchar,
+ "category_tag" "enum_tariffs_category_tag" NOT NULL,
+ "sort" numeric DEFAULT 0,
+ "visible" boolean DEFAULT true,
+ "last_synced_name" varchar,
+ "last_synced_price" numeric,
+ "last_synced_at" timestamp(3) with time zone,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "leads" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "phone" varchar NOT NULL,
+ "email" varchar,
+ "form_source" varchar NOT NULL,
+ "utm_source" varchar,
+ "utm_medium" varchar,
+ "utm_campaign" varchar,
+ "utm_content" varchar,
+ "utm_term" varchar,
+ "gclid" varchar,
+ "status" "enum_leads_status" DEFAULT 'new',
+ "message" varchar,
+ "group_size" numeric,
+ "preferred_date" timestamp(3) with time zone,
+ "package_slug" varchar,
+ "notes" varchar,
+ "last_call_at" timestamp(3) with time zone,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "orders_items" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "tariff_id" varchar NOT NULL,
+ "count" numeric NOT NULL
+ );
+
+ CREATE TABLE "orders" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar,
+ "phone" varchar,
+ "email" varchar NOT NULL,
+ "amount" numeric NOT NULL,
+ "monobank_url" varchar NOT NULL,
+ "status" "enum_orders_status" DEFAULT 'redirected_to_payment',
+ "ezy_activity" varchar,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "locations_gallery" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "image_id" integer
+ );
+
+ CREATE TABLE "locations" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "slug" varchar NOT NULL,
+ "tagline" varchar,
+ "short_desc" varchar,
+ "description" jsonb,
+ "image_id" integer,
+ "href" varchar,
+ "show_in_menu" boolean DEFAULT true,
+ "show_on_home" boolean DEFAULT true,
+ "sort" numeric DEFAULT 0,
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "reviews" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "initial" varchar,
+ "avatar_bg_id" integer,
+ "ago" varchar,
+ "rating" numeric DEFAULT 5,
+ "text" varchar NOT NULL,
+ "source" "enum_reviews_source" DEFAULT 'google',
+ "video_url" varchar,
+ "video_poster" varchar,
+ "show_on_home" boolean DEFAULT true,
+ "sort" numeric DEFAULT 0,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "birthday_packages_features" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "text" varchar NOT NULL
+ );
+
+ CREATE TABLE "birthday_packages" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar NOT NULL,
+ "slug" varchar NOT NULL,
+ "price" numeric NOT NULL,
+ "currency" varchar DEFAULT '₴',
+ "price_label" varchar,
+ "featured" boolean DEFAULT false,
+ "badge" varchar,
+ "cta_label" varchar DEFAULT 'Обрати пакет',
+ "cta_href" varchar,
+ "sort" numeric DEFAULT 0,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "payload_kv" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "key" varchar NOT NULL,
+ "data" jsonb NOT NULL
+ );
+
+ CREATE TABLE "payload_locked_documents" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "global_slug" varchar,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "payload_locked_documents_rels" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "order" integer,
+ "parent_id" integer NOT NULL,
+ "path" varchar NOT NULL,
+ "users_id" integer,
+ "media_id" integer,
+ "pages_id" integer,
+ "blog_posts_id" integer,
+ "categories_id" integer,
+ "tags_id" integer,
+ "tariffs_id" integer,
+ "leads_id" integer,
+ "orders_id" integer,
+ "locations_id" integer,
+ "reviews_id" integer,
+ "birthday_packages_id" integer
+ );
+
+ CREATE TABLE "payload_preferences" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "key" varchar,
+ "value" jsonb,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "payload_preferences_rels" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "order" integer,
+ "parent_id" integer NOT NULL,
+ "path" varchar NOT NULL,
+ "users_id" integer
+ );
+
+ CREATE TABLE "payload_migrations" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "name" varchar,
+ "batch" numeric,
+ "updated_at" timestamp(3) with time zone DEFAULT now() NOT NULL,
+ "created_at" timestamp(3) with time zone DEFAULT now() NOT NULL
+ );
+
+ CREATE TABLE "home_page_why_parents_items" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar,
+ "description" varchar
+ );
+
+ CREATE TABLE "home_page_why_parents_side_gallery" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "image_id" integer
+ );
+
+ CREATE TABLE "home_page_gallery_images" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "image_id" integer,
+ "alt" varchar
+ );
+
+ CREATE TABLE "home_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "hero_title" varchar,
+ "hero_subtitle" varchar,
+ "hero_cta_label" varchar,
+ "hero_cta_href" varchar,
+ "hero_background_video" varchar,
+ "hero_background_image_id" integer,
+ "hero_foreground_overlay_id" integer,
+ "hero_silhouette_overlay_id" integer,
+ "page_hero_background_image_id" integer,
+ "section_titles_locations" varchar,
+ "section_titles_why_parents" varchar,
+ "section_titles_birthday" varchar,
+ "section_titles_gallery" varchar,
+ "section_titles_reviews" varchar,
+ "section_titles_news" varchar,
+ "video_poster_id" integer,
+ "video_src" varchar,
+ "birthday_intro_text" varchar,
+ "news_title" varchar,
+ "news_subtitle" varchar,
+ "news_limit" numeric DEFAULT 3,
+ "map_embed_url" varchar,
+ "map_address" varchar,
+ "map_lat" numeric,
+ "map_lng" numeric,
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "checkout_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar DEFAULT 'Оформлення замовлення',
+ "instructions" jsonb,
+ "terms" jsonb,
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "thank_you_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "title" varchar DEFAULT 'Дякуємо за замовлення!',
+ "message" jsonb,
+ "contact_phone" varchar DEFAULT '+380 (67) 000-00-00',
+ "contact_email" varchar,
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "header_nav_links_children" (
+ "_order" integer NOT NULL,
+ "_parent_id" varchar NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "label" varchar,
+ "href" varchar
+ );
+
+ CREATE TABLE "header_nav_links" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "label" varchar,
+ "href" varchar,
+ "open_in_new_tab" boolean DEFAULT false,
+ "auto_children_from" "enum_header_nav_links_auto_children_from" DEFAULT 'none'
+ );
+
+ CREATE TABLE "header" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "logo_id" integer,
+ "logo_alt" varchar,
+ "cta_label" varchar,
+ "cta_href" varchar,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "footer_nav_links" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "label" varchar,
+ "href" varchar
+ );
+
+ CREATE TABLE "footer_socials" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "platform" "enum_footer_socials_platform",
+ "url" varchar
+ );
+
+ CREATE TABLE "footer" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "logo_id" integer,
+ "logo_alt" varchar,
+ "contacts_phone" varchar,
+ "contacts_email" varchar,
+ "contacts_address" varchar,
+ "copyright_text" varchar,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "site_settings_tariff_category_labels" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "key" varchar NOT NULL,
+ "label" varchar NOT NULL
+ );
+
+ CREATE TABLE "site_settings" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "ga4_id" varchar,
+ "binotel_id" varchar,
+ "telegram_chat_id" varchar,
+ "resend_from" varchar,
+ "default_meta_title" varchar,
+ "default_meta_description" varchar,
+ "default_og_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "dyvolis_page_hero_tips" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "text" varchar NOT NULL
+ );
+
+ CREATE TABLE "dyvolis_page_gallery_images" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "image_id" integer NOT NULL
+ );
+
+ CREATE TABLE "dyvolis_page_why_visit_items" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "title" varchar NOT NULL,
+ "description" varchar NOT NULL
+ );
+
+ CREATE TABLE "dyvolis_page_review_videos" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "src" varchar NOT NULL,
+ "poster" varchar,
+ "label" varchar
+ );
+
+ CREATE TABLE "dyvolis_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "hero_title" varchar DEFAULT 'ДивоЛіс – територія магії та фантазії',
+ "hero_description" varchar DEFAULT 'Топіарні фігури зроблені з урахуванням важливих деталей, тому ви одразу впізнаєте в них улюблених казкових героїв. Тут можна бігати, стрибати, лазити по фігурках і ставати героями власної казки.',
+ "hero_stat" varchar DEFAULT '60+',
+ "hero_stat_label" varchar DEFAULT 'експонатів з безпечних для дітей матеріалів',
+ "working_hours" varchar DEFAULT 'щодня з 11:00 до 20:00',
+ "gallery_quote" varchar DEFAULT 'Це місце – де малеча зустрічає героїв улюблених казок. Простір справжнього дитинства.',
+ "why_visit_title" varchar DEFAULT 'Чому варто відвідати ДивоЛіс',
+ "combo_description" varchar DEFAULT 'Динопарк + Диволіс із казковими топіарними фігурами + Дзеркальний лабіринт',
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "group_visits_page_groups" (
+ "_order" integer NOT NULL,
+ "_parent_id" integer NOT NULL,
+ "id" varchar PRIMARY KEY NOT NULL,
+ "icon" varchar NOT NULL,
+ "title" varchar NOT NULL,
+ "description" varchar NOT NULL,
+ "min_people" varchar NOT NULL,
+ "discount" varchar NOT NULL
+ );
+
+ CREATE TABLE "group_visits_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "hero_title" varchar DEFAULT 'Групові відвідування',
+ "hero_subtitle" varchar DEFAULT 'Спеціальні умови для організованих груп. Мінімум 10 осіб — максимум вражень.',
+ "form_title" varchar DEFAULT 'Подати заявку на групове відвідування',
+ "form_subtitle" varchar DEFAULT 'Вкажіть кількість учасників та бажану дату — менеджер зателефонує і погодить деталі.',
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "birthday_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "hero_title" varchar DEFAULT 'Дні народження',
+ "hero_subtitle" varchar DEFAULT 'Зробіть свято незабутнім! Оберіть пакет і наші менеджери зв''яжуться з вами для уточнення деталей.',
+ "form_title" varchar DEFAULT 'Замовити святкування',
+ "form_subtitle" varchar DEFAULT 'Залиште заявку і наш менеджер зв''яжеться з вами протягом 30 хвилин',
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ CREATE TABLE "tickets_page" (
+ "id" serial PRIMARY KEY NOT NULL,
+ "hero_title" varchar DEFAULT 'Купити квиток',
+ "hero_subtitle" varchar DEFAULT 'Оберіть квиток та придбайте онлайн — без черги на касі',
+ "section_title_birthday" varchar DEFAULT 'Дні народження',
+ "section_title_groups" varchar DEFAULT 'Групові відвідування',
+ "meta_title" varchar,
+ "meta_description" varchar,
+ "meta_image_id" integer,
+ "updated_at" timestamp(3) with time zone,
+ "created_at" timestamp(3) with time zone
+ );
+
+ ALTER TABLE "users_sessions" ADD CONSTRAINT "users_sessions_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_hero" ADD CONSTRAINT "pages_blocks_hero_background_image_id_media_id_fk" FOREIGN KEY ("background_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "pages_blocks_hero" ADD CONSTRAINT "pages_blocks_hero_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_locations_teaser_locations" ADD CONSTRAINT "pages_blocks_locations_teaser_locations_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "pages_blocks_locations_teaser_locations" ADD CONSTRAINT "pages_blocks_locations_teaser_locations_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages_blocks_locations_teaser"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_locations_teaser" ADD CONSTRAINT "pages_blocks_locations_teaser_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_features_items" ADD CONSTRAINT "pages_blocks_features_items_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages_blocks_features"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_features" ADD CONSTRAINT "pages_blocks_features_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_news_block" ADD CONSTRAINT "pages_blocks_news_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_newsletter_form" ADD CONSTRAINT "pages_blocks_newsletter_form_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_gallery_images" ADD CONSTRAINT "pages_blocks_gallery_images_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "pages_blocks_gallery_images" ADD CONSTRAINT "pages_blocks_gallery_images_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages_blocks_gallery"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_gallery" ADD CONSTRAINT "pages_blocks_gallery_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_rich_text" ADD CONSTRAINT "pages_blocks_rich_text_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_image_block" ADD CONSTRAINT "pages_blocks_image_block_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "pages_blocks_image_block" ADD CONSTRAINT "pages_blocks_image_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_video_block" ADD CONSTRAINT "pages_blocks_video_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_lead_form" ADD CONSTRAINT "pages_blocks_lead_form_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_pricing_block" ADD CONSTRAINT "pages_blocks_pricing_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages_blocks_cta" ADD CONSTRAINT "pages_blocks_cta_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "pages" ADD CONSTRAINT "pages_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_hero" ADD CONSTRAINT "_pages_v_blocks_hero_background_image_id_media_id_fk" FOREIGN KEY ("background_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_hero" ADD CONSTRAINT "_pages_v_blocks_hero_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_locations_teaser_locations" ADD CONSTRAINT "_pages_v_blocks_locations_teaser_locations_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_locations_teaser_locations" ADD CONSTRAINT "_pages_v_blocks_locations_teaser_locations_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v_blocks_locations_teaser"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_locations_teaser" ADD CONSTRAINT "_pages_v_blocks_locations_teaser_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_features_items" ADD CONSTRAINT "_pages_v_blocks_features_items_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v_blocks_features"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_features" ADD CONSTRAINT "_pages_v_blocks_features_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_news_block" ADD CONSTRAINT "_pages_v_blocks_news_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_newsletter_form" ADD CONSTRAINT "_pages_v_blocks_newsletter_form_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_gallery_images" ADD CONSTRAINT "_pages_v_blocks_gallery_images_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_gallery_images" ADD CONSTRAINT "_pages_v_blocks_gallery_images_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v_blocks_gallery"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_gallery" ADD CONSTRAINT "_pages_v_blocks_gallery_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_rich_text" ADD CONSTRAINT "_pages_v_blocks_rich_text_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_image_block" ADD CONSTRAINT "_pages_v_blocks_image_block_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_image_block" ADD CONSTRAINT "_pages_v_blocks_image_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_video_block" ADD CONSTRAINT "_pages_v_blocks_video_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_lead_form" ADD CONSTRAINT "_pages_v_blocks_lead_form_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_pricing_block" ADD CONSTRAINT "_pages_v_blocks_pricing_block_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v_blocks_cta" ADD CONSTRAINT "_pages_v_blocks_cta_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."_pages_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_pages_v" ADD CONSTRAINT "_pages_v_parent_id_pages_id_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."pages"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_pages_v" ADD CONSTRAINT "_pages_v_version_meta_image_id_media_id_fk" FOREIGN KEY ("version_meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "blog_posts" ADD CONSTRAINT "blog_posts_hero_id_media_id_fk" FOREIGN KEY ("hero_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "blog_posts" ADD CONSTRAINT "blog_posts_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "blog_posts_rels" ADD CONSTRAINT "blog_posts_rels_parent_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."blog_posts"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "blog_posts_rels" ADD CONSTRAINT "blog_posts_rels_categories_fk" FOREIGN KEY ("categories_id") REFERENCES "public"."categories"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "blog_posts_rels" ADD CONSTRAINT "blog_posts_rels_tags_fk" FOREIGN KEY ("tags_id") REFERENCES "public"."tags"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_blog_posts_v" ADD CONSTRAINT "_blog_posts_v_parent_id_blog_posts_id_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."blog_posts"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_blog_posts_v" ADD CONSTRAINT "_blog_posts_v_version_hero_id_media_id_fk" FOREIGN KEY ("version_hero_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_blog_posts_v" ADD CONSTRAINT "_blog_posts_v_version_meta_image_id_media_id_fk" FOREIGN KEY ("version_meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "_blog_posts_v_rels" ADD CONSTRAINT "_blog_posts_v_rels_parent_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."_blog_posts_v"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_blog_posts_v_rels" ADD CONSTRAINT "_blog_posts_v_rels_categories_fk" FOREIGN KEY ("categories_id") REFERENCES "public"."categories"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "_blog_posts_v_rels" ADD CONSTRAINT "_blog_posts_v_rels_tags_fk" FOREIGN KEY ("tags_id") REFERENCES "public"."tags"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "tariffs" ADD CONSTRAINT "tariffs_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "orders_items" ADD CONSTRAINT "orders_items_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."orders"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "locations_gallery" ADD CONSTRAINT "locations_gallery_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "locations_gallery" ADD CONSTRAINT "locations_gallery_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."locations"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "locations" ADD CONSTRAINT "locations_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "locations" ADD CONSTRAINT "locations_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "reviews" ADD CONSTRAINT "reviews_avatar_bg_id_media_id_fk" FOREIGN KEY ("avatar_bg_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "birthday_packages_features" ADD CONSTRAINT "birthday_packages_features_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."birthday_packages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_parent_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."payload_locked_documents"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_users_fk" FOREIGN KEY ("users_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_media_fk" FOREIGN KEY ("media_id") REFERENCES "public"."media"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_pages_fk" FOREIGN KEY ("pages_id") REFERENCES "public"."pages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_blog_posts_fk" FOREIGN KEY ("blog_posts_id") REFERENCES "public"."blog_posts"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_categories_fk" FOREIGN KEY ("categories_id") REFERENCES "public"."categories"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_tags_fk" FOREIGN KEY ("tags_id") REFERENCES "public"."tags"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_tariffs_fk" FOREIGN KEY ("tariffs_id") REFERENCES "public"."tariffs"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_leads_fk" FOREIGN KEY ("leads_id") REFERENCES "public"."leads"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_orders_fk" FOREIGN KEY ("orders_id") REFERENCES "public"."orders"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_locations_fk" FOREIGN KEY ("locations_id") REFERENCES "public"."locations"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_reviews_fk" FOREIGN KEY ("reviews_id") REFERENCES "public"."reviews"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_locked_documents_rels" ADD CONSTRAINT "payload_locked_documents_rels_birthday_packages_fk" FOREIGN KEY ("birthday_packages_id") REFERENCES "public"."birthday_packages"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_preferences_rels" ADD CONSTRAINT "payload_preferences_rels_parent_fk" FOREIGN KEY ("parent_id") REFERENCES "public"."payload_preferences"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "payload_preferences_rels" ADD CONSTRAINT "payload_preferences_rels_users_fk" FOREIGN KEY ("users_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "home_page_why_parents_items" ADD CONSTRAINT "home_page_why_parents_items_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."home_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "home_page_why_parents_side_gallery" ADD CONSTRAINT "home_page_why_parents_side_gallery_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page_why_parents_side_gallery" ADD CONSTRAINT "home_page_why_parents_side_gallery_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."home_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "home_page_gallery_images" ADD CONSTRAINT "home_page_gallery_images_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page_gallery_images" ADD CONSTRAINT "home_page_gallery_images_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."home_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "home_page" ADD CONSTRAINT "home_page_hero_background_image_id_media_id_fk" FOREIGN KEY ("hero_background_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page" ADD CONSTRAINT "home_page_hero_foreground_overlay_id_media_id_fk" FOREIGN KEY ("hero_foreground_overlay_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page" ADD CONSTRAINT "home_page_hero_silhouette_overlay_id_media_id_fk" FOREIGN KEY ("hero_silhouette_overlay_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page" ADD CONSTRAINT "home_page_page_hero_background_image_id_media_id_fk" FOREIGN KEY ("page_hero_background_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page" ADD CONSTRAINT "home_page_video_poster_id_media_id_fk" FOREIGN KEY ("video_poster_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "home_page" ADD CONSTRAINT "home_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "checkout_page" ADD CONSTRAINT "checkout_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "thank_you_page" ADD CONSTRAINT "thank_you_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "header_nav_links_children" ADD CONSTRAINT "header_nav_links_children_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."header_nav_links"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "header_nav_links" ADD CONSTRAINT "header_nav_links_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."header"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "header" ADD CONSTRAINT "header_logo_id_media_id_fk" FOREIGN KEY ("logo_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "footer_nav_links" ADD CONSTRAINT "footer_nav_links_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."footer"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "footer_socials" ADD CONSTRAINT "footer_socials_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."footer"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "footer" ADD CONSTRAINT "footer_logo_id_media_id_fk" FOREIGN KEY ("logo_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "site_settings_tariff_category_labels" ADD CONSTRAINT "site_settings_tariff_category_labels_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."site_settings"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "site_settings" ADD CONSTRAINT "site_settings_default_og_image_id_media_id_fk" FOREIGN KEY ("default_og_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "dyvolis_page_hero_tips" ADD CONSTRAINT "dyvolis_page_hero_tips_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."dyvolis_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "dyvolis_page_gallery_images" ADD CONSTRAINT "dyvolis_page_gallery_images_image_id_media_id_fk" FOREIGN KEY ("image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "dyvolis_page_gallery_images" ADD CONSTRAINT "dyvolis_page_gallery_images_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."dyvolis_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "dyvolis_page_why_visit_items" ADD CONSTRAINT "dyvolis_page_why_visit_items_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."dyvolis_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "dyvolis_page_review_videos" ADD CONSTRAINT "dyvolis_page_review_videos_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."dyvolis_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "dyvolis_page" ADD CONSTRAINT "dyvolis_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "group_visits_page_groups" ADD CONSTRAINT "group_visits_page_groups_parent_id_fk" FOREIGN KEY ("_parent_id") REFERENCES "public"."group_visits_page"("id") ON DELETE cascade ON UPDATE no action;
+ ALTER TABLE "group_visits_page" ADD CONSTRAINT "group_visits_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "birthday_page" ADD CONSTRAINT "birthday_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ ALTER TABLE "tickets_page" ADD CONSTRAINT "tickets_page_meta_image_id_media_id_fk" FOREIGN KEY ("meta_image_id") REFERENCES "public"."media"("id") ON DELETE set null ON UPDATE no action;
+ CREATE INDEX "users_sessions_order_idx" ON "users_sessions" USING btree ("_order");
+ CREATE INDEX "users_sessions_parent_id_idx" ON "users_sessions" USING btree ("_parent_id");
+ CREATE INDEX "users_updated_at_idx" ON "users" USING btree ("updated_at");
+ CREATE INDEX "users_created_at_idx" ON "users" USING btree ("created_at");
+ CREATE UNIQUE INDEX "users_email_idx" ON "users" USING btree ("email");
+ CREATE INDEX "media_updated_at_idx" ON "media" USING btree ("updated_at");
+ CREATE INDEX "media_created_at_idx" ON "media" USING btree ("created_at");
+ CREATE UNIQUE INDEX "media_filename_idx" ON "media" USING btree ("filename");
+ CREATE INDEX "pages_blocks_hero_order_idx" ON "pages_blocks_hero" USING btree ("_order");
+ CREATE INDEX "pages_blocks_hero_parent_id_idx" ON "pages_blocks_hero" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_hero_path_idx" ON "pages_blocks_hero" USING btree ("_path");
+ CREATE INDEX "pages_blocks_hero_background_image_idx" ON "pages_blocks_hero" USING btree ("background_image_id");
+ CREATE INDEX "pages_blocks_locations_teaser_locations_order_idx" ON "pages_blocks_locations_teaser_locations" USING btree ("_order");
+ CREATE INDEX "pages_blocks_locations_teaser_locations_parent_id_idx" ON "pages_blocks_locations_teaser_locations" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_locations_teaser_locations_image_idx" ON "pages_blocks_locations_teaser_locations" USING btree ("image_id");
+ CREATE INDEX "pages_blocks_locations_teaser_order_idx" ON "pages_blocks_locations_teaser" USING btree ("_order");
+ CREATE INDEX "pages_blocks_locations_teaser_parent_id_idx" ON "pages_blocks_locations_teaser" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_locations_teaser_path_idx" ON "pages_blocks_locations_teaser" USING btree ("_path");
+ CREATE INDEX "pages_blocks_features_items_order_idx" ON "pages_blocks_features_items" USING btree ("_order");
+ CREATE INDEX "pages_blocks_features_items_parent_id_idx" ON "pages_blocks_features_items" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_features_order_idx" ON "pages_blocks_features" USING btree ("_order");
+ CREATE INDEX "pages_blocks_features_parent_id_idx" ON "pages_blocks_features" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_features_path_idx" ON "pages_blocks_features" USING btree ("_path");
+ CREATE INDEX "pages_blocks_news_block_order_idx" ON "pages_blocks_news_block" USING btree ("_order");
+ CREATE INDEX "pages_blocks_news_block_parent_id_idx" ON "pages_blocks_news_block" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_news_block_path_idx" ON "pages_blocks_news_block" USING btree ("_path");
+ CREATE INDEX "pages_blocks_newsletter_form_order_idx" ON "pages_blocks_newsletter_form" USING btree ("_order");
+ CREATE INDEX "pages_blocks_newsletter_form_parent_id_idx" ON "pages_blocks_newsletter_form" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_newsletter_form_path_idx" ON "pages_blocks_newsletter_form" USING btree ("_path");
+ CREATE INDEX "pages_blocks_gallery_images_order_idx" ON "pages_blocks_gallery_images" USING btree ("_order");
+ CREATE INDEX "pages_blocks_gallery_images_parent_id_idx" ON "pages_blocks_gallery_images" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_gallery_images_image_idx" ON "pages_blocks_gallery_images" USING btree ("image_id");
+ CREATE INDEX "pages_blocks_gallery_order_idx" ON "pages_blocks_gallery" USING btree ("_order");
+ CREATE INDEX "pages_blocks_gallery_parent_id_idx" ON "pages_blocks_gallery" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_gallery_path_idx" ON "pages_blocks_gallery" USING btree ("_path");
+ CREATE INDEX "pages_blocks_rich_text_order_idx" ON "pages_blocks_rich_text" USING btree ("_order");
+ CREATE INDEX "pages_blocks_rich_text_parent_id_idx" ON "pages_blocks_rich_text" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_rich_text_path_idx" ON "pages_blocks_rich_text" USING btree ("_path");
+ CREATE INDEX "pages_blocks_image_block_order_idx" ON "pages_blocks_image_block" USING btree ("_order");
+ CREATE INDEX "pages_blocks_image_block_parent_id_idx" ON "pages_blocks_image_block" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_image_block_path_idx" ON "pages_blocks_image_block" USING btree ("_path");
+ CREATE INDEX "pages_blocks_image_block_image_idx" ON "pages_blocks_image_block" USING btree ("image_id");
+ CREATE INDEX "pages_blocks_video_block_order_idx" ON "pages_blocks_video_block" USING btree ("_order");
+ CREATE INDEX "pages_blocks_video_block_parent_id_idx" ON "pages_blocks_video_block" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_video_block_path_idx" ON "pages_blocks_video_block" USING btree ("_path");
+ CREATE INDEX "pages_blocks_lead_form_order_idx" ON "pages_blocks_lead_form" USING btree ("_order");
+ CREATE INDEX "pages_blocks_lead_form_parent_id_idx" ON "pages_blocks_lead_form" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_lead_form_path_idx" ON "pages_blocks_lead_form" USING btree ("_path");
+ CREATE INDEX "pages_blocks_pricing_block_order_idx" ON "pages_blocks_pricing_block" USING btree ("_order");
+ CREATE INDEX "pages_blocks_pricing_block_parent_id_idx" ON "pages_blocks_pricing_block" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_pricing_block_path_idx" ON "pages_blocks_pricing_block" USING btree ("_path");
+ CREATE INDEX "pages_blocks_cta_order_idx" ON "pages_blocks_cta" USING btree ("_order");
+ CREATE INDEX "pages_blocks_cta_parent_id_idx" ON "pages_blocks_cta" USING btree ("_parent_id");
+ CREATE INDEX "pages_blocks_cta_path_idx" ON "pages_blocks_cta" USING btree ("_path");
+ CREATE UNIQUE INDEX "pages_slug_idx" ON "pages" USING btree ("slug");
+ CREATE INDEX "pages_meta_meta_image_idx" ON "pages" USING btree ("meta_image_id");
+ CREATE INDEX "pages_updated_at_idx" ON "pages" USING btree ("updated_at");
+ CREATE INDEX "pages_created_at_idx" ON "pages" USING btree ("created_at");
+ CREATE INDEX "pages__status_idx" ON "pages" USING btree ("_status");
+ CREATE INDEX "_pages_v_blocks_hero_order_idx" ON "_pages_v_blocks_hero" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_hero_parent_id_idx" ON "_pages_v_blocks_hero" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_hero_path_idx" ON "_pages_v_blocks_hero" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_hero_background_image_idx" ON "_pages_v_blocks_hero" USING btree ("background_image_id");
+ CREATE INDEX "_pages_v_blocks_locations_teaser_locations_order_idx" ON "_pages_v_blocks_locations_teaser_locations" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_locations_teaser_locations_parent_id_idx" ON "_pages_v_blocks_locations_teaser_locations" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_locations_teaser_locations_image_idx" ON "_pages_v_blocks_locations_teaser_locations" USING btree ("image_id");
+ CREATE INDEX "_pages_v_blocks_locations_teaser_order_idx" ON "_pages_v_blocks_locations_teaser" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_locations_teaser_parent_id_idx" ON "_pages_v_blocks_locations_teaser" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_locations_teaser_path_idx" ON "_pages_v_blocks_locations_teaser" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_features_items_order_idx" ON "_pages_v_blocks_features_items" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_features_items_parent_id_idx" ON "_pages_v_blocks_features_items" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_features_order_idx" ON "_pages_v_blocks_features" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_features_parent_id_idx" ON "_pages_v_blocks_features" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_features_path_idx" ON "_pages_v_blocks_features" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_news_block_order_idx" ON "_pages_v_blocks_news_block" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_news_block_parent_id_idx" ON "_pages_v_blocks_news_block" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_news_block_path_idx" ON "_pages_v_blocks_news_block" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_newsletter_form_order_idx" ON "_pages_v_blocks_newsletter_form" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_newsletter_form_parent_id_idx" ON "_pages_v_blocks_newsletter_form" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_newsletter_form_path_idx" ON "_pages_v_blocks_newsletter_form" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_gallery_images_order_idx" ON "_pages_v_blocks_gallery_images" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_gallery_images_parent_id_idx" ON "_pages_v_blocks_gallery_images" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_gallery_images_image_idx" ON "_pages_v_blocks_gallery_images" USING btree ("image_id");
+ CREATE INDEX "_pages_v_blocks_gallery_order_idx" ON "_pages_v_blocks_gallery" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_gallery_parent_id_idx" ON "_pages_v_blocks_gallery" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_gallery_path_idx" ON "_pages_v_blocks_gallery" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_rich_text_order_idx" ON "_pages_v_blocks_rich_text" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_rich_text_parent_id_idx" ON "_pages_v_blocks_rich_text" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_rich_text_path_idx" ON "_pages_v_blocks_rich_text" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_image_block_order_idx" ON "_pages_v_blocks_image_block" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_image_block_parent_id_idx" ON "_pages_v_blocks_image_block" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_image_block_path_idx" ON "_pages_v_blocks_image_block" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_image_block_image_idx" ON "_pages_v_blocks_image_block" USING btree ("image_id");
+ CREATE INDEX "_pages_v_blocks_video_block_order_idx" ON "_pages_v_blocks_video_block" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_video_block_parent_id_idx" ON "_pages_v_blocks_video_block" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_video_block_path_idx" ON "_pages_v_blocks_video_block" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_lead_form_order_idx" ON "_pages_v_blocks_lead_form" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_lead_form_parent_id_idx" ON "_pages_v_blocks_lead_form" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_lead_form_path_idx" ON "_pages_v_blocks_lead_form" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_pricing_block_order_idx" ON "_pages_v_blocks_pricing_block" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_pricing_block_parent_id_idx" ON "_pages_v_blocks_pricing_block" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_pricing_block_path_idx" ON "_pages_v_blocks_pricing_block" USING btree ("_path");
+ CREATE INDEX "_pages_v_blocks_cta_order_idx" ON "_pages_v_blocks_cta" USING btree ("_order");
+ CREATE INDEX "_pages_v_blocks_cta_parent_id_idx" ON "_pages_v_blocks_cta" USING btree ("_parent_id");
+ CREATE INDEX "_pages_v_blocks_cta_path_idx" ON "_pages_v_blocks_cta" USING btree ("_path");
+ CREATE INDEX "_pages_v_parent_idx" ON "_pages_v" USING btree ("parent_id");
+ CREATE INDEX "_pages_v_version_version_slug_idx" ON "_pages_v" USING btree ("version_slug");
+ CREATE INDEX "_pages_v_version_meta_version_meta_image_idx" ON "_pages_v" USING btree ("version_meta_image_id");
+ CREATE INDEX "_pages_v_version_version_updated_at_idx" ON "_pages_v" USING btree ("version_updated_at");
+ CREATE INDEX "_pages_v_version_version_created_at_idx" ON "_pages_v" USING btree ("version_created_at");
+ CREATE INDEX "_pages_v_version_version__status_idx" ON "_pages_v" USING btree ("version__status");
+ CREATE INDEX "_pages_v_created_at_idx" ON "_pages_v" USING btree ("created_at");
+ CREATE INDEX "_pages_v_updated_at_idx" ON "_pages_v" USING btree ("updated_at");
+ CREATE INDEX "_pages_v_latest_idx" ON "_pages_v" USING btree ("latest");
+ CREATE UNIQUE INDEX "blog_posts_slug_idx" ON "blog_posts" USING btree ("slug");
+ CREATE INDEX "blog_posts_hero_idx" ON "blog_posts" USING btree ("hero_id");
+ CREATE INDEX "blog_posts_meta_meta_image_idx" ON "blog_posts" USING btree ("meta_image_id");
+ CREATE INDEX "blog_posts_updated_at_idx" ON "blog_posts" USING btree ("updated_at");
+ CREATE INDEX "blog_posts_created_at_idx" ON "blog_posts" USING btree ("created_at");
+ CREATE INDEX "blog_posts__status_idx" ON "blog_posts" USING btree ("_status");
+ CREATE INDEX "blog_posts_rels_order_idx" ON "blog_posts_rels" USING btree ("order");
+ CREATE INDEX "blog_posts_rels_parent_idx" ON "blog_posts_rels" USING btree ("parent_id");
+ CREATE INDEX "blog_posts_rels_path_idx" ON "blog_posts_rels" USING btree ("path");
+ CREATE INDEX "blog_posts_rels_categories_id_idx" ON "blog_posts_rels" USING btree ("categories_id");
+ CREATE INDEX "blog_posts_rels_tags_id_idx" ON "blog_posts_rels" USING btree ("tags_id");
+ CREATE INDEX "_blog_posts_v_parent_idx" ON "_blog_posts_v" USING btree ("parent_id");
+ CREATE INDEX "_blog_posts_v_version_version_slug_idx" ON "_blog_posts_v" USING btree ("version_slug");
+ CREATE INDEX "_blog_posts_v_version_version_hero_idx" ON "_blog_posts_v" USING btree ("version_hero_id");
+ CREATE INDEX "_blog_posts_v_version_meta_version_meta_image_idx" ON "_blog_posts_v" USING btree ("version_meta_image_id");
+ CREATE INDEX "_blog_posts_v_version_version_updated_at_idx" ON "_blog_posts_v" USING btree ("version_updated_at");
+ CREATE INDEX "_blog_posts_v_version_version_created_at_idx" ON "_blog_posts_v" USING btree ("version_created_at");
+ CREATE INDEX "_blog_posts_v_version_version__status_idx" ON "_blog_posts_v" USING btree ("version__status");
+ CREATE INDEX "_blog_posts_v_created_at_idx" ON "_blog_posts_v" USING btree ("created_at");
+ CREATE INDEX "_blog_posts_v_updated_at_idx" ON "_blog_posts_v" USING btree ("updated_at");
+ CREATE INDEX "_blog_posts_v_latest_idx" ON "_blog_posts_v" USING btree ("latest");
+ CREATE INDEX "_blog_posts_v_rels_order_idx" ON "_blog_posts_v_rels" USING btree ("order");
+ CREATE INDEX "_blog_posts_v_rels_parent_idx" ON "_blog_posts_v_rels" USING btree ("parent_id");
+ CREATE INDEX "_blog_posts_v_rels_path_idx" ON "_blog_posts_v_rels" USING btree ("path");
+ CREATE INDEX "_blog_posts_v_rels_categories_id_idx" ON "_blog_posts_v_rels" USING btree ("categories_id");
+ CREATE INDEX "_blog_posts_v_rels_tags_id_idx" ON "_blog_posts_v_rels" USING btree ("tags_id");
+ CREATE UNIQUE INDEX "categories_slug_idx" ON "categories" USING btree ("slug");
+ CREATE INDEX "categories_updated_at_idx" ON "categories" USING btree ("updated_at");
+ CREATE INDEX "categories_created_at_idx" ON "categories" USING btree ("created_at");
+ CREATE UNIQUE INDEX "tags_slug_idx" ON "tags" USING btree ("slug");
+ CREATE INDEX "tags_updated_at_idx" ON "tags" USING btree ("updated_at");
+ CREATE INDEX "tags_created_at_idx" ON "tags" USING btree ("created_at");
+ CREATE UNIQUE INDEX "tariffs_ezy_id_idx" ON "tariffs" USING btree ("ezy_id");
+ CREATE INDEX "tariffs_image_idx" ON "tariffs" USING btree ("image_id");
+ CREATE INDEX "tariffs_updated_at_idx" ON "tariffs" USING btree ("updated_at");
+ CREATE INDEX "tariffs_created_at_idx" ON "tariffs" USING btree ("created_at");
+ CREATE INDEX "leads_updated_at_idx" ON "leads" USING btree ("updated_at");
+ CREATE INDEX "leads_created_at_idx" ON "leads" USING btree ("created_at");
+ CREATE INDEX "orders_items_order_idx" ON "orders_items" USING btree ("_order");
+ CREATE INDEX "orders_items_parent_id_idx" ON "orders_items" USING btree ("_parent_id");
+ CREATE INDEX "orders_updated_at_idx" ON "orders" USING btree ("updated_at");
+ CREATE INDEX "orders_created_at_idx" ON "orders" USING btree ("created_at");
+ CREATE INDEX "locations_gallery_order_idx" ON "locations_gallery" USING btree ("_order");
+ CREATE INDEX "locations_gallery_parent_id_idx" ON "locations_gallery" USING btree ("_parent_id");
+ CREATE INDEX "locations_gallery_image_idx" ON "locations_gallery" USING btree ("image_id");
+ CREATE UNIQUE INDEX "locations_slug_idx" ON "locations" USING btree ("slug");
+ CREATE INDEX "locations_image_idx" ON "locations" USING btree ("image_id");
+ CREATE INDEX "locations_meta_meta_image_idx" ON "locations" USING btree ("meta_image_id");
+ CREATE INDEX "locations_updated_at_idx" ON "locations" USING btree ("updated_at");
+ CREATE INDEX "locations_created_at_idx" ON "locations" USING btree ("created_at");
+ CREATE INDEX "reviews_avatar_bg_idx" ON "reviews" USING btree ("avatar_bg_id");
+ CREATE INDEX "reviews_updated_at_idx" ON "reviews" USING btree ("updated_at");
+ CREATE INDEX "reviews_created_at_idx" ON "reviews" USING btree ("created_at");
+ CREATE INDEX "birthday_packages_features_order_idx" ON "birthday_packages_features" USING btree ("_order");
+ CREATE INDEX "birthday_packages_features_parent_id_idx" ON "birthday_packages_features" USING btree ("_parent_id");
+ CREATE UNIQUE INDEX "birthday_packages_slug_idx" ON "birthday_packages" USING btree ("slug");
+ CREATE INDEX "birthday_packages_updated_at_idx" ON "birthday_packages" USING btree ("updated_at");
+ CREATE INDEX "birthday_packages_created_at_idx" ON "birthday_packages" USING btree ("created_at");
+ CREATE UNIQUE INDEX "payload_kv_key_idx" ON "payload_kv" USING btree ("key");
+ CREATE INDEX "payload_locked_documents_global_slug_idx" ON "payload_locked_documents" USING btree ("global_slug");
+ CREATE INDEX "payload_locked_documents_updated_at_idx" ON "payload_locked_documents" USING btree ("updated_at");
+ CREATE INDEX "payload_locked_documents_created_at_idx" ON "payload_locked_documents" USING btree ("created_at");
+ CREATE INDEX "payload_locked_documents_rels_order_idx" ON "payload_locked_documents_rels" USING btree ("order");
+ CREATE INDEX "payload_locked_documents_rels_parent_idx" ON "payload_locked_documents_rels" USING btree ("parent_id");
+ CREATE INDEX "payload_locked_documents_rels_path_idx" ON "payload_locked_documents_rels" USING btree ("path");
+ CREATE INDEX "payload_locked_documents_rels_users_id_idx" ON "payload_locked_documents_rels" USING btree ("users_id");
+ CREATE INDEX "payload_locked_documents_rels_media_id_idx" ON "payload_locked_documents_rels" USING btree ("media_id");
+ CREATE INDEX "payload_locked_documents_rels_pages_id_idx" ON "payload_locked_documents_rels" USING btree ("pages_id");
+ CREATE INDEX "payload_locked_documents_rels_blog_posts_id_idx" ON "payload_locked_documents_rels" USING btree ("blog_posts_id");
+ CREATE INDEX "payload_locked_documents_rels_categories_id_idx" ON "payload_locked_documents_rels" USING btree ("categories_id");
+ CREATE INDEX "payload_locked_documents_rels_tags_id_idx" ON "payload_locked_documents_rels" USING btree ("tags_id");
+ CREATE INDEX "payload_locked_documents_rels_tariffs_id_idx" ON "payload_locked_documents_rels" USING btree ("tariffs_id");
+ CREATE INDEX "payload_locked_documents_rels_leads_id_idx" ON "payload_locked_documents_rels" USING btree ("leads_id");
+ CREATE INDEX "payload_locked_documents_rels_orders_id_idx" ON "payload_locked_documents_rels" USING btree ("orders_id");
+ CREATE INDEX "payload_locked_documents_rels_locations_id_idx" ON "payload_locked_documents_rels" USING btree ("locations_id");
+ CREATE INDEX "payload_locked_documents_rels_reviews_id_idx" ON "payload_locked_documents_rels" USING btree ("reviews_id");
+ CREATE INDEX "payload_locked_documents_rels_birthday_packages_id_idx" ON "payload_locked_documents_rels" USING btree ("birthday_packages_id");
+ CREATE INDEX "payload_preferences_key_idx" ON "payload_preferences" USING btree ("key");
+ CREATE INDEX "payload_preferences_updated_at_idx" ON "payload_preferences" USING btree ("updated_at");
+ CREATE INDEX "payload_preferences_created_at_idx" ON "payload_preferences" USING btree ("created_at");
+ CREATE INDEX "payload_preferences_rels_order_idx" ON "payload_preferences_rels" USING btree ("order");
+ CREATE INDEX "payload_preferences_rels_parent_idx" ON "payload_preferences_rels" USING btree ("parent_id");
+ CREATE INDEX "payload_preferences_rels_path_idx" ON "payload_preferences_rels" USING btree ("path");
+ CREATE INDEX "payload_preferences_rels_users_id_idx" ON "payload_preferences_rels" USING btree ("users_id");
+ CREATE INDEX "payload_migrations_updated_at_idx" ON "payload_migrations" USING btree ("updated_at");
+ CREATE INDEX "payload_migrations_created_at_idx" ON "payload_migrations" USING btree ("created_at");
+ CREATE INDEX "home_page_why_parents_items_order_idx" ON "home_page_why_parents_items" USING btree ("_order");
+ CREATE INDEX "home_page_why_parents_items_parent_id_idx" ON "home_page_why_parents_items" USING btree ("_parent_id");
+ CREATE INDEX "home_page_why_parents_side_gallery_order_idx" ON "home_page_why_parents_side_gallery" USING btree ("_order");
+ CREATE INDEX "home_page_why_parents_side_gallery_parent_id_idx" ON "home_page_why_parents_side_gallery" USING btree ("_parent_id");
+ CREATE INDEX "home_page_why_parents_side_gallery_image_idx" ON "home_page_why_parents_side_gallery" USING btree ("image_id");
+ CREATE INDEX "home_page_gallery_images_order_idx" ON "home_page_gallery_images" USING btree ("_order");
+ CREATE INDEX "home_page_gallery_images_parent_id_idx" ON "home_page_gallery_images" USING btree ("_parent_id");
+ CREATE INDEX "home_page_gallery_images_image_idx" ON "home_page_gallery_images" USING btree ("image_id");
+ CREATE INDEX "home_page_hero_hero_background_image_idx" ON "home_page" USING btree ("hero_background_image_id");
+ CREATE INDEX "home_page_hero_hero_foreground_overlay_idx" ON "home_page" USING btree ("hero_foreground_overlay_id");
+ CREATE INDEX "home_page_hero_hero_silhouette_overlay_idx" ON "home_page" USING btree ("hero_silhouette_overlay_id");
+ CREATE INDEX "home_page_page_hero_page_hero_background_image_idx" ON "home_page" USING btree ("page_hero_background_image_id");
+ CREATE INDEX "home_page_video_video_poster_idx" ON "home_page" USING btree ("video_poster_id");
+ CREATE INDEX "home_page_meta_meta_image_idx" ON "home_page" USING btree ("meta_image_id");
+ CREATE INDEX "checkout_page_meta_meta_image_idx" ON "checkout_page" USING btree ("meta_image_id");
+ CREATE INDEX "thank_you_page_meta_meta_image_idx" ON "thank_you_page" USING btree ("meta_image_id");
+ CREATE INDEX "header_nav_links_children_order_idx" ON "header_nav_links_children" USING btree ("_order");
+ CREATE INDEX "header_nav_links_children_parent_id_idx" ON "header_nav_links_children" USING btree ("_parent_id");
+ CREATE INDEX "header_nav_links_order_idx" ON "header_nav_links" USING btree ("_order");
+ CREATE INDEX "header_nav_links_parent_id_idx" ON "header_nav_links" USING btree ("_parent_id");
+ CREATE INDEX "header_logo_idx" ON "header" USING btree ("logo_id");
+ CREATE INDEX "footer_nav_links_order_idx" ON "footer_nav_links" USING btree ("_order");
+ CREATE INDEX "footer_nav_links_parent_id_idx" ON "footer_nav_links" USING btree ("_parent_id");
+ CREATE INDEX "footer_socials_order_idx" ON "footer_socials" USING btree ("_order");
+ CREATE INDEX "footer_socials_parent_id_idx" ON "footer_socials" USING btree ("_parent_id");
+ CREATE INDEX "footer_logo_idx" ON "footer" USING btree ("logo_id");
+ CREATE INDEX "site_settings_tariff_category_labels_order_idx" ON "site_settings_tariff_category_labels" USING btree ("_order");
+ CREATE INDEX "site_settings_tariff_category_labels_parent_id_idx" ON "site_settings_tariff_category_labels" USING btree ("_parent_id");
+ CREATE INDEX "site_settings_default_og_image_idx" ON "site_settings" USING btree ("default_og_image_id");
+ CREATE INDEX "dyvolis_page_hero_tips_order_idx" ON "dyvolis_page_hero_tips" USING btree ("_order");
+ CREATE INDEX "dyvolis_page_hero_tips_parent_id_idx" ON "dyvolis_page_hero_tips" USING btree ("_parent_id");
+ CREATE INDEX "dyvolis_page_gallery_images_order_idx" ON "dyvolis_page_gallery_images" USING btree ("_order");
+ CREATE INDEX "dyvolis_page_gallery_images_parent_id_idx" ON "dyvolis_page_gallery_images" USING btree ("_parent_id");
+ CREATE INDEX "dyvolis_page_gallery_images_image_idx" ON "dyvolis_page_gallery_images" USING btree ("image_id");
+ CREATE INDEX "dyvolis_page_why_visit_items_order_idx" ON "dyvolis_page_why_visit_items" USING btree ("_order");
+ CREATE INDEX "dyvolis_page_why_visit_items_parent_id_idx" ON "dyvolis_page_why_visit_items" USING btree ("_parent_id");
+ CREATE INDEX "dyvolis_page_review_videos_order_idx" ON "dyvolis_page_review_videos" USING btree ("_order");
+ CREATE INDEX "dyvolis_page_review_videos_parent_id_idx" ON "dyvolis_page_review_videos" USING btree ("_parent_id");
+ CREATE INDEX "dyvolis_page_meta_meta_image_idx" ON "dyvolis_page" USING btree ("meta_image_id");
+ CREATE INDEX "group_visits_page_groups_order_idx" ON "group_visits_page_groups" USING btree ("_order");
+ CREATE INDEX "group_visits_page_groups_parent_id_idx" ON "group_visits_page_groups" USING btree ("_parent_id");
+ CREATE INDEX "group_visits_page_meta_meta_image_idx" ON "group_visits_page" USING btree ("meta_image_id");
+ CREATE INDEX "birthday_page_meta_meta_image_idx" ON "birthday_page" USING btree ("meta_image_id");
+ CREATE INDEX "tickets_page_meta_meta_image_idx" ON "tickets_page" USING btree ("meta_image_id");`)
+}
+
+export async function down({ db, payload, req }: MigrateDownArgs): Promise {
+ await db.execute(sql`
+ DROP TABLE "users_sessions" CASCADE;
+ DROP TABLE "users" CASCADE;
+ DROP TABLE "media" CASCADE;
+ DROP TABLE "pages_blocks_hero" CASCADE;
+ DROP TABLE "pages_blocks_locations_teaser_locations" CASCADE;
+ DROP TABLE "pages_blocks_locations_teaser" CASCADE;
+ DROP TABLE "pages_blocks_features_items" CASCADE;
+ DROP TABLE "pages_blocks_features" CASCADE;
+ DROP TABLE "pages_blocks_news_block" CASCADE;
+ DROP TABLE "pages_blocks_newsletter_form" CASCADE;
+ DROP TABLE "pages_blocks_gallery_images" CASCADE;
+ DROP TABLE "pages_blocks_gallery" CASCADE;
+ DROP TABLE "pages_blocks_rich_text" CASCADE;
+ DROP TABLE "pages_blocks_image_block" CASCADE;
+ DROP TABLE "pages_blocks_video_block" CASCADE;
+ DROP TABLE "pages_blocks_lead_form" CASCADE;
+ DROP TABLE "pages_blocks_pricing_block" CASCADE;
+ DROP TABLE "pages_blocks_cta" CASCADE;
+ DROP TABLE "pages" CASCADE;
+ DROP TABLE "_pages_v_blocks_hero" CASCADE;
+ DROP TABLE "_pages_v_blocks_locations_teaser_locations" CASCADE;
+ DROP TABLE "_pages_v_blocks_locations_teaser" CASCADE;
+ DROP TABLE "_pages_v_blocks_features_items" CASCADE;
+ DROP TABLE "_pages_v_blocks_features" CASCADE;
+ DROP TABLE "_pages_v_blocks_news_block" CASCADE;
+ DROP TABLE "_pages_v_blocks_newsletter_form" CASCADE;
+ DROP TABLE "_pages_v_blocks_gallery_images" CASCADE;
+ DROP TABLE "_pages_v_blocks_gallery" CASCADE;
+ DROP TABLE "_pages_v_blocks_rich_text" CASCADE;
+ DROP TABLE "_pages_v_blocks_image_block" CASCADE;
+ DROP TABLE "_pages_v_blocks_video_block" CASCADE;
+ DROP TABLE "_pages_v_blocks_lead_form" CASCADE;
+ DROP TABLE "_pages_v_blocks_pricing_block" CASCADE;
+ DROP TABLE "_pages_v_blocks_cta" CASCADE;
+ DROP TABLE "_pages_v" CASCADE;
+ DROP TABLE "blog_posts" CASCADE;
+ DROP TABLE "blog_posts_rels" CASCADE;
+ DROP TABLE "_blog_posts_v" CASCADE;
+ DROP TABLE "_blog_posts_v_rels" CASCADE;
+ DROP TABLE "categories" CASCADE;
+ DROP TABLE "tags" CASCADE;
+ DROP TABLE "tariffs" CASCADE;
+ DROP TABLE "leads" CASCADE;
+ DROP TABLE "orders_items" CASCADE;
+ DROP TABLE "orders" CASCADE;
+ DROP TABLE "locations_gallery" CASCADE;
+ DROP TABLE "locations" CASCADE;
+ DROP TABLE "reviews" CASCADE;
+ DROP TABLE "birthday_packages_features" CASCADE;
+ DROP TABLE "birthday_packages" CASCADE;
+ DROP TABLE "payload_kv" CASCADE;
+ DROP TABLE "payload_locked_documents" CASCADE;
+ DROP TABLE "payload_locked_documents_rels" CASCADE;
+ DROP TABLE "payload_preferences" CASCADE;
+ DROP TABLE "payload_preferences_rels" CASCADE;
+ DROP TABLE "payload_migrations" CASCADE;
+ DROP TABLE "home_page_why_parents_items" CASCADE;
+ DROP TABLE "home_page_why_parents_side_gallery" CASCADE;
+ DROP TABLE "home_page_gallery_images" CASCADE;
+ DROP TABLE "home_page" CASCADE;
+ DROP TABLE "checkout_page" CASCADE;
+ DROP TABLE "thank_you_page" CASCADE;
+ DROP TABLE "header_nav_links_children" CASCADE;
+ DROP TABLE "header_nav_links" CASCADE;
+ DROP TABLE "header" CASCADE;
+ DROP TABLE "footer_nav_links" CASCADE;
+ DROP TABLE "footer_socials" CASCADE;
+ DROP TABLE "footer" CASCADE;
+ DROP TABLE "site_settings_tariff_category_labels" CASCADE;
+ DROP TABLE "site_settings" CASCADE;
+ DROP TABLE "dyvolis_page_hero_tips" CASCADE;
+ DROP TABLE "dyvolis_page_gallery_images" CASCADE;
+ DROP TABLE "dyvolis_page_why_visit_items" CASCADE;
+ DROP TABLE "dyvolis_page_review_videos" CASCADE;
+ DROP TABLE "dyvolis_page" CASCADE;
+ DROP TABLE "group_visits_page_groups" CASCADE;
+ DROP TABLE "group_visits_page" CASCADE;
+ DROP TABLE "birthday_page" CASCADE;
+ DROP TABLE "tickets_page" CASCADE;
+ DROP TYPE "public"."enum_users_role";
+ DROP TYPE "public"."enum_pages_blocks_hero_background_type";
+ DROP TYPE "public"."enum_pages_blocks_cta_variant";
+ DROP TYPE "public"."enum_pages_status";
+ DROP TYPE "public"."enum__pages_v_blocks_hero_background_type";
+ DROP TYPE "public"."enum__pages_v_blocks_cta_variant";
+ DROP TYPE "public"."enum__pages_v_version_status";
+ DROP TYPE "public"."enum_blog_posts_status";
+ DROP TYPE "public"."enum__blog_posts_v_version_status";
+ DROP TYPE "public"."enum_tariffs_category_tag";
+ DROP TYPE "public"."enum_leads_status";
+ DROP TYPE "public"."enum_orders_status";
+ DROP TYPE "public"."enum_reviews_source";
+ DROP TYPE "public"."enum_header_nav_links_auto_children_from";
+ DROP TYPE "public"."enum_footer_socials_platform";`)
+}
diff --git a/migrations/index.ts b/migrations/index.ts
new file mode 100644
index 0000000..97bed40
--- /dev/null
+++ b/migrations/index.ts
@@ -0,0 +1,9 @@
+import * as migration_20260515_153940 from './20260515_153940'
+
+export const migrations = [
+ {
+ up: migration_20260515_153940.up,
+ down: migration_20260515_153940.down,
+ name: '20260515_153940',
+ },
+]
diff --git a/package.json b/package.json
index dae4f10..8590e74 100644
--- a/package.json
+++ b/package.json
@@ -2,6 +2,7 @@
"name": "shumiland-site",
"version": "0.1.0",
"private": true,
+ "type": "module",
"packageManager": "pnpm@11.0.9",
"engines": {
"node": ">=20.0.0",
@@ -20,6 +21,10 @@
"test:e2e": "playwright test",
"test:e2e:ui": "playwright test --ui",
"payload": "payload",
+ "migrate": "NODE_OPTIONS='--import tsx' payload migrate",
+ "migrate:create": "NODE_OPTIONS='--import tsx' payload migrate:create",
+ "migrate:status": "NODE_OPTIONS='--import tsx' payload migrate:status",
+ "generate:types": "NODE_OPTIONS='--import tsx' payload generate:types",
"prepare": "husky",
"seed": "tsx src/seed.ts"
},
@@ -83,7 +88,7 @@
"prettier-plugin-tailwindcss": "^0.8.0",
"supertest": "^7.1.0",
"tailwindcss": "^4.3.0",
- "tsx": "^4.22.0",
+ "tsx": "^4.21.1",
"typescript": "^6.0.3",
"vite-tsconfig-paths": "^6.1.1",
"vitest": "^4.1.6"
diff --git a/payload.config.ts b/payload.config.ts
index 3287d7d..d38086d 100644
--- a/payload.config.ts
+++ b/payload.config.ts
@@ -7,29 +7,29 @@ import sharp from 'sharp'
import path from 'path'
import { fileURLToPath } from 'url'
-import { Users } from './src/collections/Users'
-import { Media } from './src/collections/Media'
-import { Pages } from './src/collections/Pages'
-import { BlogPosts } from './src/collections/BlogPosts'
-import { Categories } from './src/collections/Categories'
-import { Tags } from './src/collections/Tags'
-import { Tariffs } from './src/collections/Tariffs'
-import { Leads } from './src/collections/Leads'
-import { Orders } from './src/collections/Orders'
-import { Locations } from './src/collections/Locations'
-import { Reviews } from './src/collections/Reviews'
-import { BirthdayPackages } from './src/collections/BirthdayPackages'
+import { Users } from './src/collections/Users.js'
+import { Media } from './src/collections/Media.js'
+import { Pages } from './src/collections/Pages.js'
+import { BlogPosts } from './src/collections/BlogPosts.js'
+import { Categories } from './src/collections/Categories.js'
+import { Tags } from './src/collections/Tags.js'
+import { Tariffs } from './src/collections/Tariffs.js'
+import { Leads } from './src/collections/Leads.js'
+import { Orders } from './src/collections/Orders.js'
+import { Locations } from './src/collections/Locations.js'
+import { Reviews } from './src/collections/Reviews.js'
+import { BirthdayPackages } from './src/collections/BirthdayPackages.js'
-import { HomePage } from './src/globals/HomePage'
-import { CheckoutPage } from './src/globals/CheckoutPage'
-import { ThankYouPage } from './src/globals/ThankYouPage'
-import { Header } from './src/globals/Header'
-import { Footer } from './src/globals/Footer'
-import { SiteSettings } from './src/globals/SiteSettings'
-import { DyvoLisPage } from './src/globals/DyvoLisPage'
-import { GroupVisitsPage } from './src/globals/GroupVisitsPage'
-import { BirthdayPage } from './src/globals/BirthdayPage'
-import { TicketsPage } from './src/globals/TicketsPage'
+import { HomePage } from './src/globals/HomePage.js'
+import { CheckoutPage } from './src/globals/CheckoutPage.js'
+import { ThankYouPage } from './src/globals/ThankYouPage.js'
+import { Header } from './src/globals/Header.js'
+import { Footer } from './src/globals/Footer.js'
+import { SiteSettings } from './src/globals/SiteSettings.js'
+import { DyvoLisPage } from './src/globals/DyvoLisPage.js'
+import { GroupVisitsPage } from './src/globals/GroupVisitsPage.js'
+import { BirthdayPage } from './src/globals/BirthdayPage.js'
+import { TicketsPage } from './src/globals/TicketsPage.js'
const filename = fileURLToPath(import.meta.url)
const dirname = path.dirname(filename)
@@ -87,13 +87,43 @@ export default buildConfig({
plugins: [
seoPlugin({
collections: ['pages', 'blog-posts', 'locations'],
+ globals: [
+ 'home-page',
+ 'dyvolis-page',
+ 'group-visits-page',
+ 'birthday-page',
+ 'tickets-page',
+ 'checkout-page',
+ 'thank-you-page',
+ ],
uploadsCollection: 'media',
+ tabbedUI: true,
+ generateURL: ({ doc, collectionSlug, globalSlug }) => {
+ const base = 'https://shumiland.com.ua'
+ const d = doc as { slug?: string }
+ if (collectionSlug === 'blog-posts') return `${base}/blog/${d.slug ?? ''}`
+ if (collectionSlug === 'locations') return `${base}/lokatsii/${d.slug ?? ''}`
+ if (collectionSlug === 'pages') return `${base}/${d.slug ?? ''}`
+ const globalURLs: Record = {
+ 'home-page': base,
+ 'dyvolis-page': `${base}/lokatsii/dyvolis`,
+ 'group-visits-page': `${base}/grupovi-vidviduvannia`,
+ 'birthday-page': `${base}/dni-narodzhennia`,
+ 'tickets-page': `${base}/kvytky`,
+ 'checkout-page': `${base}/kvytky/checkout`,
+ 'thank-you-page': `${base}/kvytky/dyakuiemo`,
+ }
+ return globalURLs[globalSlug ?? ''] ?? base
+ },
generateTitle: ({ doc }) => {
- const title =
- (doc as { title?: string; name?: string }).title ?? (doc as { name?: string }).name ?? ''
+ const d = doc as { title?: string; name?: string; heroTitle?: string }
+ const title = d.title ?? d.name ?? d.heroTitle ?? ''
return title ? `${title} — Шуміленд` : 'Шуміленд'
},
- generateDescription: ({ doc }) => (doc as { excerpt?: string }).excerpt ?? '',
+ generateDescription: ({ doc }) => {
+ const d = doc as { excerpt?: string; shortDesc?: string; heroSubtitle?: string }
+ return d.excerpt ?? d.shortDesc ?? d.heroSubtitle ?? ''
+ },
}),
],
diff --git a/src/app/(frontend)/blog/[slug]/page.tsx b/src/app/(frontend)/blog/[slug]/page.tsx
index ed5aa00..e4e0a3a 100644
--- a/src/app/(frontend)/blog/[slug]/page.tsx
+++ b/src/app/(frontend)/blog/[slug]/page.tsx
@@ -16,7 +16,8 @@ interface BlogPost {
slug: string
excerpt?: string | null
publishedAt?: string | null
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ meta?: { title?: string | null; description?: string | null } | null
+
body?: any
hero?: { url?: string | null; alt?: string | null } | null
}
@@ -41,8 +42,8 @@ export async function generateMetadata({ params }: Props): Promise {
const post = await getPost(slug)
if (!post) return { title: 'Не знайдено — Шуміленд' }
return {
- title: `${post.title} — Шуміленд`,
- description: post.excerpt ?? '',
+ title: post.meta?.title ?? `${post.title} — Шуміленд`,
+ description: post.meta?.description ?? post.excerpt ?? '',
}
}
diff --git a/src/app/(frontend)/dni-narodzhennia/page.tsx b/src/app/(frontend)/dni-narodzhennia/page.tsx
index f2c903b..a051a97 100644
--- a/src/app/(frontend)/dni-narodzhennia/page.tsx
+++ b/src/app/(frontend)/dni-narodzhennia/page.tsx
@@ -36,9 +36,9 @@ function formatPrice(price: number): string {
export async function generateMetadata(): Promise {
const pageData = await getBirthdayPageData()
return {
- title: pageData?.metaTitle ?? 'Дні народження — Шуміленд',
+ title: pageData?.meta?.title ?? 'Дні народження — Шуміленд',
description:
- pageData?.metaDescription ??
+ pageData?.meta?.description ??
'Святкуйте день народження у Шуміленді! Пакети для дітей та дорослих з розвагами, аніматорами та кейтерингом.',
}
}
@@ -97,7 +97,7 @@ export default async function BirthdayPage({
- {pkg.features?.map((f: { id?: string; text: string }) => (
+ {pkg.features?.map((f: { id?: string | null; text: string }) => (
- {
const data = await getGroupVisitsData()
return {
- title: data?.metaTitle ?? 'Групові відвідування — Шуміленд',
+ title: data?.meta?.title ?? 'Групові відвідування — Шуміленд',
description:
- data?.metaDescription ??
+ data?.meta?.description ??
'Організуйте групове відвідування Шуміленду. Спеціальні ціни для шкіл, дитячих садків і корпоративних груп.',
}
}
diff --git a/src/app/(frontend)/kvytky/page.tsx b/src/app/(frontend)/kvytky/page.tsx
index 1121841..60f1d93 100644
--- a/src/app/(frontend)/kvytky/page.tsx
+++ b/src/app/(frontend)/kvytky/page.tsx
@@ -64,9 +64,9 @@ async function getGroupVisitsData() {
export async function generateMetadata(): Promise {
const pageData = await getPageData()
return {
- title: pageData?.metaTitle ?? 'Купити квиток — Шуміленд',
+ title: pageData?.meta?.title ?? 'Купити квиток — Шуміленд',
description:
- pageData?.metaDescription ??
+ pageData?.meta?.description ??
'Придбайте квитки до Шуміленду онлайн. Вхідні квитки на всі зони парку.',
}
}
diff --git a/src/app/(frontend)/lokatsii/dyvolis/page.tsx b/src/app/(frontend)/lokatsii/dyvolis/page.tsx
index d461897..e084078 100644
--- a/src/app/(frontend)/lokatsii/dyvolis/page.tsx
+++ b/src/app/(frontend)/lokatsii/dyvolis/page.tsx
@@ -21,9 +21,10 @@ export async function generateMetadata(): Promise {
const data = await getDyvoLisData()
return {
title:
- data?.metaTitle ?? (data?.heroTitle ? `${data.heroTitle} — Шуміленд` : 'ДивоЛіс — Шуміленд'),
+ data?.meta?.title ??
+ (data?.heroTitle ? `${data.heroTitle} — Шуміленд` : 'ДивоЛіс — Шуміленд'),
description:
- data?.metaDescription ??
+ data?.meta?.description ??
'Казковий топіарний ліс у Шуміленді: фігури з безпечних матеріалів, унікальна ландшафтна композиція та повна свобода для дітей.',
}
}
@@ -43,9 +44,11 @@ export default async function DyvoLisPage() {
{
- if (!item.image || typeof item.image === 'string') return null
- return item.image.url ?? null
+
+ ?.map((item: any) => {
+ if (!item.image || typeof item.image === 'number' || typeof item.image === 'string')
+ return null
+ return (item.image as { url?: string | null }).url ?? null
})
.filter((u: string | null): u is string => u !== null)}
/>
diff --git a/src/globals/BirthdayPage.ts b/src/globals/BirthdayPage.ts
index 314213f..5d9e13e 100644
--- a/src/globals/BirthdayPage.ts
+++ b/src/globals/BirthdayPage.ts
@@ -29,18 +29,5 @@ export const BirthdayPage: GlobalConfig = {
type: 'text',
defaultValue: "Залиште заявку і наш менеджер зв'яжеться з вами протягом 30 хвилин",
},
- {
- name: 'metaTitle',
- type: 'text',
- label: 'SEO: Meta Title',
- defaultValue: 'Дні народження — Шуміленд',
- },
- {
- name: 'metaDescription',
- type: 'textarea',
- label: 'SEO: Meta Description',
- defaultValue:
- 'Святкуйте день народження у Шуміленді! Пакети для дітей та дорослих з розвагами, аніматорами та кейтерингом.',
- },
],
}
diff --git a/src/globals/DyvoLisPage.ts b/src/globals/DyvoLisPage.ts
index ecc1f8b..beb85d2 100644
--- a/src/globals/DyvoLisPage.ts
+++ b/src/globals/DyvoLisPage.ts
@@ -120,18 +120,5 @@ export const DyvoLisPage: GlobalConfig = {
defaultValue: 'Динопарк + Диволіс із казковими топіарними фігурами + Дзеркальний лабіринт',
admin: { description: 'Підзаголовок під секцією "Комбо" в блоці квитків' },
},
- {
- name: 'metaTitle',
- type: 'text',
- label: 'SEO: Meta Title',
- defaultValue: 'ДивоЛіс — Шуміленд',
- },
- {
- name: 'metaDescription',
- type: 'textarea',
- label: 'SEO: Meta Description',
- defaultValue:
- 'Казковий топіарний ліс у Шуміленді: фігури з безпечних матеріалів, унікальна ландшафтна композиція та повна свобода для дітей.',
- },
],
}
diff --git a/src/globals/GroupVisitsPage.ts b/src/globals/GroupVisitsPage.ts
index f110ddf..ea5e95e 100644
--- a/src/globals/GroupVisitsPage.ts
+++ b/src/globals/GroupVisitsPage.ts
@@ -71,18 +71,5 @@ export const GroupVisitsPage: GlobalConfig = {
},
],
},
- {
- name: 'metaTitle',
- type: 'text',
- label: 'SEO: Meta Title',
- defaultValue: 'Групові відвідування — Шуміленд',
- },
- {
- name: 'metaDescription',
- type: 'textarea',
- label: 'SEO: Meta Description',
- defaultValue:
- 'Організуйте групове відвідування Шуміленду. Спеціальні ціни для шкіл, дитячих садків і корпоративних груп.',
- },
],
}
diff --git a/src/globals/TicketsPage.ts b/src/globals/TicketsPage.ts
index 13aef73..9d44287 100644
--- a/src/globals/TicketsPage.ts
+++ b/src/globals/TicketsPage.ts
@@ -30,17 +30,5 @@ export const TicketsPage: GlobalConfig = {
label: 'Заголовок секції "Групові відвідування"',
defaultValue: 'Групові відвідування',
},
- {
- name: 'metaTitle',
- type: 'text',
- label: 'SEO: Meta Title',
- defaultValue: 'Купити квиток — Шуміленд',
- },
- {
- name: 'metaDescription',
- type: 'textarea',
- label: 'SEO: Meta Description',
- defaultValue: 'Придбайте квитки до Шуміленду онлайн. Вхідні квитки на всі зони парку.',
- },
],
}