From a3a20f64313d94e77fd83cfe0b2f0cb70608abbd Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 3 Oct 2024 19:46:41 +0100 Subject: [PATCH 01/34] Initial commit of Linearlite demo, read/write to local PGlite working --- demos/linearlite/.eslintrc.cjs | 41 + demos/linearlite/.gitignore | 3 + demos/linearlite/.prettierrc | 6 + demos/linearlite/README.md | 22 + demos/linearlite/db/generate_data.js | 53 + demos/linearlite/db/load_data.js | 55 + .../db/migrations/01-create_tables.sql | 23 + demos/linearlite/index.html | 21 + demos/linearlite/package.json | 87 + demos/linearlite/postcss.config.mjs | 6 + demos/linearlite/public/electric-icon.png | Bin 0 -> 3600 bytes demos/linearlite/public/favicon.ico | Bin 0 -> 18094 bytes demos/linearlite/public/logo192.png | Bin 0 -> 32662 bytes demos/linearlite/public/logo512.png | Bin 0 -> 32662 bytes demos/linearlite/public/netlify.toml | 5 + demos/linearlite/public/robots.txt | 3 + demos/linearlite/src/App.tsx | 78 + .../src/assets/fonts/27237475-28043385 | Bin 0 -> 805911 bytes .../src/assets/fonts/Inter-UI-ExtraBold.woff | Bin 0 -> 167488 bytes .../src/assets/fonts/Inter-UI-ExtraBold.woff2 | Bin 0 -> 127632 bytes .../src/assets/fonts/Inter-UI-Medium.woff | Bin 0 -> 163384 bytes .../src/assets/fonts/Inter-UI-Medium.woff2 | Bin 0 -> 124296 bytes .../src/assets/fonts/Inter-UI-Regular.woff | Bin 0 -> 155088 bytes .../src/assets/fonts/Inter-UI-Regular.woff2 | Bin 0 -> 117480 bytes .../src/assets/fonts/Inter-UI-SemiBold.woff | Bin 0 -> 125244 bytes .../src/assets/fonts/Inter-UI-SemiBold.woff2 | Bin 0 -> 125244 bytes .../src/assets/icons/add-subissue.svg | 3 + demos/linearlite/src/assets/icons/add.svg | 6 + demos/linearlite/src/assets/icons/archive.svg | 2 + .../linearlite/src/assets/icons/assignee.svg | 3 + .../src/assets/icons/attachment.svg | 1 + demos/linearlite/src/assets/icons/avatar.svg | 2 + demos/linearlite/src/assets/icons/cancel.svg | 3 + demos/linearlite/src/assets/icons/chat.svg | 1 + .../src/assets/icons/circle-dot.svg | 3 + demos/linearlite/src/assets/icons/circle.svg | 2 + demos/linearlite/src/assets/icons/claim.svg | 3 + demos/linearlite/src/assets/icons/close.svg | 3 + demos/linearlite/src/assets/icons/delete.svg | 3 + demos/linearlite/src/assets/icons/done.svg | 3 + demos/linearlite/src/assets/icons/dots.svg | 5 + .../linearlite/src/assets/icons/due-date.svg | 3 + .../src/assets/icons/dupplication.svg | 3 + demos/linearlite/src/assets/icons/filter.svg | 2 + .../linearlite/src/assets/icons/git-issue.svg | 4 + demos/linearlite/src/assets/icons/guide.svg | 1 + .../src/assets/icons/half-circle.svg | 2 + demos/linearlite/src/assets/icons/help.svg | 2 + demos/linearlite/src/assets/icons/inbox.svg | 3 + demos/linearlite/src/assets/icons/issue.svg | 3 + demos/linearlite/src/assets/icons/label.svg | 1 + demos/linearlite/src/assets/icons/menu.svg | 1 + .../src/assets/icons/parent-issue.svg | 1 + demos/linearlite/src/assets/icons/plus.svg | 3 + demos/linearlite/src/assets/icons/project.svg | 6 + .../linearlite/src/assets/icons/question.svg | 1 + .../src/assets/icons/relationship.svg | 3 + .../src/assets/icons/rounded-claim.svg | 1 + demos/linearlite/src/assets/icons/search.svg | 3 + .../src/assets/icons/signal-medium.svg | 6 + .../src/assets/icons/signal-strong.svg | 6 + .../src/assets/icons/signal-strong.xsd | 22 + .../src/assets/icons/signal-weak.svg | 2 + demos/linearlite/src/assets/icons/slack.svg | 1 + demos/linearlite/src/assets/icons/view.svg | 3 + demos/linearlite/src/assets/icons/zoom.svg | 1 + .../src/assets/images/icon.inverse.svg | 4 + demos/linearlite/src/assets/images/logo.svg | 1 + .../linearlite/src/components/AboutModal.tsx | 43 + demos/linearlite/src/components/Avatar.tsx | 84 + .../linearlite/src/components/IssueModal.tsx | 179 + demos/linearlite/src/components/ItemGroup.tsx | 27 + demos/linearlite/src/components/LeftMenu.tsx | 175 + demos/linearlite/src/components/Modal.tsx | 100 + demos/linearlite/src/components/Portal.tsx | 14 + .../src/components/PriorityIcon.tsx | 13 + .../linearlite/src/components/ProfileMenu.tsx | 98 + demos/linearlite/src/components/Select.tsx | 29 + .../linearlite/src/components/StatusIcon.tsx | 15 + demos/linearlite/src/components/Toggle.tsx | 41 + demos/linearlite/src/components/TopFilter.tsx | 171 + .../src/components/ViewOptionMenu.tsx | 92 + .../src/components/contextmenu/FilterMenu.tsx | 121 + .../components/contextmenu/PriorityMenu.tsx | 70 + .../src/components/contextmenu/StatusMenu.tsx | 56 + .../src/components/contextmenu/menu.tsx | 103 + .../src/components/editor/Editor.tsx | 82 + .../src/components/editor/EditorMenu.tsx | 117 + demos/linearlite/src/config.ts | 3 + demos/linearlite/src/electric.tsx | 1 + demos/linearlite/src/hooks/useClickOutside.ts | 28 + .../linearlite/src/hooks/useLockBodyScroll.ts | 14 + demos/linearlite/src/main.tsx | 18 + demos/linearlite/src/migrations.ts | 6 + .../linearlite/src/pages/Board/IssueBoard.tsx | 225 ++ demos/linearlite/src/pages/Board/IssueCol.tsx | 120 + .../linearlite/src/pages/Board/IssueItem.tsx | 87 + demos/linearlite/src/pages/Board/index.tsx | 21 + demos/linearlite/src/pages/Issue/Comments.tsx | 92 + .../src/pages/Issue/DeleteModal.tsx | 46 + demos/linearlite/src/pages/Issue/index.tsx | 249 ++ demos/linearlite/src/pages/List/IssueList.tsx | 48 + demos/linearlite/src/pages/List/IssueRow.tsx | 73 + demos/linearlite/src/pages/List/index.tsx | 53 + demos/linearlite/src/pages/root.tsx | 31 + demos/linearlite/src/pglite-worker.ts | 13 + demos/linearlite/src/pglite.ts | 0 .../src/shims/react-contextmenu.d.ts | 107 + demos/linearlite/src/style.css | 73 + demos/linearlite/src/types/types.ts | 113 + demos/linearlite/src/utils/date.ts | 6 + demos/linearlite/src/utils/filterState.ts | 95 + demos/linearlite/src/utils/notification.tsx | 49 + demos/linearlite/src/vite-env.d.ts | 1 + demos/linearlite/tailwind.config.js | 88 + demos/linearlite/tsconfig.json | 25 + demos/linearlite/vite.config.ts | 25 + pnpm-lock.yaml | 3426 ++++++++++++++++- pnpm-workspace.yaml | 1 + 119 files changed, 7266 insertions(+), 36 deletions(-) create mode 100644 demos/linearlite/.eslintrc.cjs create mode 100644 demos/linearlite/.gitignore create mode 100644 demos/linearlite/.prettierrc create mode 100644 demos/linearlite/README.md create mode 100644 demos/linearlite/db/generate_data.js create mode 100644 demos/linearlite/db/load_data.js create mode 100644 demos/linearlite/db/migrations/01-create_tables.sql create mode 100644 demos/linearlite/index.html create mode 100644 demos/linearlite/package.json create mode 100644 demos/linearlite/postcss.config.mjs create mode 100644 demos/linearlite/public/electric-icon.png create mode 100644 demos/linearlite/public/favicon.ico create mode 100644 demos/linearlite/public/logo192.png create mode 100644 demos/linearlite/public/logo512.png create mode 100644 demos/linearlite/public/netlify.toml create mode 100644 demos/linearlite/public/robots.txt create mode 100644 demos/linearlite/src/App.tsx create mode 100644 demos/linearlite/src/assets/fonts/27237475-28043385 create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-ExtraBold.woff create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-ExtraBold.woff2 create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-Medium.woff create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-Medium.woff2 create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-Regular.woff create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-Regular.woff2 create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-SemiBold.woff create mode 100644 demos/linearlite/src/assets/fonts/Inter-UI-SemiBold.woff2 create mode 100644 demos/linearlite/src/assets/icons/add-subissue.svg create mode 100644 demos/linearlite/src/assets/icons/add.svg create mode 100644 demos/linearlite/src/assets/icons/archive.svg create mode 100644 demos/linearlite/src/assets/icons/assignee.svg create mode 100644 demos/linearlite/src/assets/icons/attachment.svg create mode 100644 demos/linearlite/src/assets/icons/avatar.svg create mode 100644 demos/linearlite/src/assets/icons/cancel.svg create mode 100644 demos/linearlite/src/assets/icons/chat.svg create mode 100644 demos/linearlite/src/assets/icons/circle-dot.svg create mode 100644 demos/linearlite/src/assets/icons/circle.svg create mode 100644 demos/linearlite/src/assets/icons/claim.svg create mode 100644 demos/linearlite/src/assets/icons/close.svg create mode 100644 demos/linearlite/src/assets/icons/delete.svg create mode 100644 demos/linearlite/src/assets/icons/done.svg create mode 100644 demos/linearlite/src/assets/icons/dots.svg create mode 100644 demos/linearlite/src/assets/icons/due-date.svg create mode 100644 demos/linearlite/src/assets/icons/dupplication.svg create mode 100644 demos/linearlite/src/assets/icons/filter.svg create mode 100644 demos/linearlite/src/assets/icons/git-issue.svg create mode 100644 demos/linearlite/src/assets/icons/guide.svg create mode 100644 demos/linearlite/src/assets/icons/half-circle.svg create mode 100644 demos/linearlite/src/assets/icons/help.svg create mode 100644 demos/linearlite/src/assets/icons/inbox.svg create mode 100644 demos/linearlite/src/assets/icons/issue.svg create mode 100644 demos/linearlite/src/assets/icons/label.svg create mode 100644 demos/linearlite/src/assets/icons/menu.svg create mode 100644 demos/linearlite/src/assets/icons/parent-issue.svg create mode 100644 demos/linearlite/src/assets/icons/plus.svg create mode 100644 demos/linearlite/src/assets/icons/project.svg create mode 100644 demos/linearlite/src/assets/icons/question.svg create mode 100644 demos/linearlite/src/assets/icons/relationship.svg create mode 100644 demos/linearlite/src/assets/icons/rounded-claim.svg create mode 100644 demos/linearlite/src/assets/icons/search.svg create mode 100644 demos/linearlite/src/assets/icons/signal-medium.svg create mode 100644 demos/linearlite/src/assets/icons/signal-strong.svg create mode 100644 demos/linearlite/src/assets/icons/signal-strong.xsd create mode 100644 demos/linearlite/src/assets/icons/signal-weak.svg create mode 100644 demos/linearlite/src/assets/icons/slack.svg create mode 100644 demos/linearlite/src/assets/icons/view.svg create mode 100644 demos/linearlite/src/assets/icons/zoom.svg create mode 100644 demos/linearlite/src/assets/images/icon.inverse.svg create mode 100644 demos/linearlite/src/assets/images/logo.svg create mode 100644 demos/linearlite/src/components/AboutModal.tsx create mode 100644 demos/linearlite/src/components/Avatar.tsx create mode 100644 demos/linearlite/src/components/IssueModal.tsx create mode 100644 demos/linearlite/src/components/ItemGroup.tsx create mode 100644 demos/linearlite/src/components/LeftMenu.tsx create mode 100644 demos/linearlite/src/components/Modal.tsx create mode 100644 demos/linearlite/src/components/Portal.tsx create mode 100644 demos/linearlite/src/components/PriorityIcon.tsx create mode 100644 demos/linearlite/src/components/ProfileMenu.tsx create mode 100644 demos/linearlite/src/components/Select.tsx create mode 100644 demos/linearlite/src/components/StatusIcon.tsx create mode 100644 demos/linearlite/src/components/Toggle.tsx create mode 100644 demos/linearlite/src/components/TopFilter.tsx create mode 100644 demos/linearlite/src/components/ViewOptionMenu.tsx create mode 100644 demos/linearlite/src/components/contextmenu/FilterMenu.tsx create mode 100644 demos/linearlite/src/components/contextmenu/PriorityMenu.tsx create mode 100644 demos/linearlite/src/components/contextmenu/StatusMenu.tsx create mode 100644 demos/linearlite/src/components/contextmenu/menu.tsx create mode 100644 demos/linearlite/src/components/editor/Editor.tsx create mode 100644 demos/linearlite/src/components/editor/EditorMenu.tsx create mode 100644 demos/linearlite/src/config.ts create mode 100644 demos/linearlite/src/electric.tsx create mode 100644 demos/linearlite/src/hooks/useClickOutside.ts create mode 100644 demos/linearlite/src/hooks/useLockBodyScroll.ts create mode 100644 demos/linearlite/src/main.tsx create mode 100644 demos/linearlite/src/migrations.ts create mode 100644 demos/linearlite/src/pages/Board/IssueBoard.tsx create mode 100644 demos/linearlite/src/pages/Board/IssueCol.tsx create mode 100644 demos/linearlite/src/pages/Board/IssueItem.tsx create mode 100644 demos/linearlite/src/pages/Board/index.tsx create mode 100644 demos/linearlite/src/pages/Issue/Comments.tsx create mode 100644 demos/linearlite/src/pages/Issue/DeleteModal.tsx create mode 100644 demos/linearlite/src/pages/Issue/index.tsx create mode 100644 demos/linearlite/src/pages/List/IssueList.tsx create mode 100644 demos/linearlite/src/pages/List/IssueRow.tsx create mode 100644 demos/linearlite/src/pages/List/index.tsx create mode 100644 demos/linearlite/src/pages/root.tsx create mode 100644 demos/linearlite/src/pglite-worker.ts create mode 100644 demos/linearlite/src/pglite.ts create mode 100644 demos/linearlite/src/shims/react-contextmenu.d.ts create mode 100644 demos/linearlite/src/style.css create mode 100644 demos/linearlite/src/types/types.ts create mode 100644 demos/linearlite/src/utils/date.ts create mode 100644 demos/linearlite/src/utils/filterState.ts create mode 100644 demos/linearlite/src/utils/notification.tsx create mode 100644 demos/linearlite/src/vite-env.d.ts create mode 100644 demos/linearlite/tailwind.config.js create mode 100644 demos/linearlite/tsconfig.json create mode 100644 demos/linearlite/vite.config.ts diff --git a/demos/linearlite/.eslintrc.cjs b/demos/linearlite/.eslintrc.cjs new file mode 100644 index 00000000..5bc53084 --- /dev/null +++ b/demos/linearlite/.eslintrc.cjs @@ -0,0 +1,41 @@ +module.exports = { + env: { + browser: true, + es2021: true, + node: true, + }, + extends: [ + `eslint:recommended`, + `plugin:@typescript-eslint/recommended`, + `plugin:prettier/recommended`, + ], + parserOptions: { + ecmaVersion: 2022, + requireConfigFile: false, + sourceType: `module`, + ecmaFeatures: { + jsx: true, + }, + }, + parser: `@typescript-eslint/parser`, + plugins: [`prettier`], + rules: { + quotes: [`error`, `backtick`], + 'no-unused-vars': `off`, + '@typescript-eslint/no-unused-vars': [ + `error`, + { + argsIgnorePattern: `^_`, + varsIgnorePattern: `^_`, + caughtErrorsIgnorePattern: `^_`, + }, + ], + }, + ignorePatterns: [ + '**/node_modules/**', + '**/dist/**', + 'tsup.config.ts', + 'vitest.config.ts', + '.eslintrc.js' + ], +} diff --git a/demos/linearlite/.gitignore b/demos/linearlite/.gitignore new file mode 100644 index 00000000..c05ac135 --- /dev/null +++ b/demos/linearlite/.gitignore @@ -0,0 +1,3 @@ +dist +.env.local +db/data/ \ No newline at end of file diff --git a/demos/linearlite/.prettierrc b/demos/linearlite/.prettierrc new file mode 100644 index 00000000..f685078f --- /dev/null +++ b/demos/linearlite/.prettierrc @@ -0,0 +1,6 @@ +{ + "trailingComma": "es5", + "semi": false, + "tabWidth": 2, + "singleQuote": true +} diff --git a/demos/linearlite/README.md b/demos/linearlite/README.md new file mode 100644 index 00000000..88f23c4b --- /dev/null +++ b/demos/linearlite/README.md @@ -0,0 +1,22 @@ +# Linearlite + +## Setup + +1. Make sure you've installed all dependencies for the monorepo and built packages + +From the root directory: + +- `pnpm i` +- `pnpm run -r build` + +2. Start the docker containers + +`pnpm run backend:up` + +3. Start the dev server + +`pnpm run dev` + +4. When done, tear down the backend containers so you can run other examples + +`pnpm run backend:down` diff --git a/demos/linearlite/db/generate_data.js b/demos/linearlite/db/generate_data.js new file mode 100644 index 00000000..9ec19c12 --- /dev/null +++ b/demos/linearlite/db/generate_data.js @@ -0,0 +1,53 @@ +import { faker } from '@faker-js/faker' +import { generateNKeysBetween } from 'fractional-indexing' +import { v4 as uuidv4 } from 'uuid' + +export function generateIssues(numIssues) { + // generate properly spaced kanban keys and shuffle them + const kanbanKeys = faker.helpers.shuffle( + generateNKeysBetween(null, null, numIssues) + ) + return Array.from({ length: numIssues }, (_, idx) => + generateIssue(kanbanKeys[idx]) + ) +} + +function generateIssue(kanbanKey) { + const issueId = uuidv4() + const createdAt = faker.date.past() + return { + id: issueId, + title: faker.lorem.sentence({ min: 3, max: 8 }), + description: faker.lorem.sentences({ min: 2, max: 6 }, `\n`), + priority: faker.helpers.arrayElement([`none`, `low`, `medium`, `high`]), + status: faker.helpers.arrayElement([ + `backlog`, + `todo`, + `in_progress`, + `done`, + `canceled`, + ]), + created: createdAt.toISOString(), + modified: faker.date + .between({ from: createdAt, to: new Date() }) + .toISOString(), + kanbanorder: kanbanKey, + username: faker.internet.userName(), + comments: faker.helpers.multiple( + () => generateComment(issueId, createdAt), + { count: faker.number.int({ min: 0, max: 10 }) } + ), + } +} + +function generateComment(issueId, issueCreatedAt) { + return { + id: uuidv4(), + body: faker.lorem.text(), + username: faker.internet.userName(), + issue_id: issueId, + created_at: faker.date + .between({ from: issueCreatedAt, to: new Date() }) + .toISOString(), + } +} diff --git a/demos/linearlite/db/load_data.js b/demos/linearlite/db/load_data.js new file mode 100644 index 00000000..52d9136b --- /dev/null +++ b/demos/linearlite/db/load_data.js @@ -0,0 +1,55 @@ +import createPool, { sql } from '@databases/pg' +import { generateIssues } from './generate_data.js' + +if (!process.env.DATABASE_URL) { + throw new Error(`DATABASE_URL is not set`) +} + +const DATABASE_URL = process.env.DATABASE_URL +const ISSUES_TO_LOAD = process.env.ISSUES_TO_LOAD || 512 +const issues = generateIssues(ISSUES_TO_LOAD) + +console.info(`Connecting to Postgres at ${DATABASE_URL}`) +const db = createPool(DATABASE_URL) + +async function makeInsertQuery(db, table, data) { + const columns = Object.keys(data) + const columnsNames = columns.join(`, `) + const values = columns.map((column) => data[column]) + return await db.query(sql` + INSERT INTO ${sql.ident(table)} (${sql(columnsNames)}) + VALUES (${sql.join(values.map(sql.value), `, `)}) + `) +} + +async function importIssue(db, issue) { + const { comments: _, ...rest } = issue + return await makeInsertQuery(db, `issue`, rest) +} + +async function importComment(db, comment) { + return await makeInsertQuery(db, `comment`, comment) +} + +const issueCount = issues.length +let commentCount = 0 +const batchSize = 100 +for (let i = 0; i < issueCount; i += batchSize) { + await db.tx(async (db) => { + db.query(sql`SET CONSTRAINTS ALL DEFERRED;`) // disable FK checks + for (let j = i; j < i + batchSize && j < issueCount; j++) { + process.stdout.write(`Loading issue ${j + 1} of ${issueCount}\r`) + const issue = issues[j] + await importIssue(db, issue) + for (const comment of issue.comments) { + commentCount++ + await importComment(db, comment) + } + } + }) +} + +process.stdout.write(`\n`) + +db.dispose() +console.info(`Loaded ${issueCount} issues with ${commentCount} comments.`) diff --git a/demos/linearlite/db/migrations/01-create_tables.sql b/demos/linearlite/db/migrations/01-create_tables.sql new file mode 100644 index 00000000..dfd1dafc --- /dev/null +++ b/demos/linearlite/db/migrations/01-create_tables.sql @@ -0,0 +1,23 @@ +-- Create the tables for the linearlite example +CREATE TABLE IF NOT EXISTS "issue" ( + "id" UUID NOT NULL, + "title" TEXT NOT NULL, + "description" TEXT NOT NULL, + "priority" TEXT NOT NULL, + "status" TEXT NOT NULL, + "modified" TIMESTAMPTZ NOT NULL, + "created" TIMESTAMPTZ NOT NULL, + "kanbanorder" TEXT NOT NULL, + "username" TEXT NOT NULL, + CONSTRAINT "issue_pkey" PRIMARY KEY ("id") +); + +CREATE TABLE IF NOT EXISTS "comment" ( + "id" UUID NOT NULL, + "body" TEXT NOT NULL, + "username" TEXT NOT NULL, + "issue_id" UUID NOT NULL, + "created_at" TIMESTAMPTZ NOT NULL, + CONSTRAINT "comment_pkey" PRIMARY KEY ("id"), + FOREIGN KEY (issue_id) REFERENCES issue(id) ON DELETE CASCADE +); \ No newline at end of file diff --git a/demos/linearlite/index.html b/demos/linearlite/index.html new file mode 100644 index 00000000..124f0f97 --- /dev/null +++ b/demos/linearlite/index.html @@ -0,0 +1,21 @@ + + + + + + + LinearLite + + + + + + +
+
+ + + diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json new file mode 100644 index 00000000..1e271089 --- /dev/null +++ b/demos/linearlite/package.json @@ -0,0 +1,87 @@ +{ + "name": "@pglite-demos/linearlite", + "version": "0.0.1", + "license": "Apache-2.0", + "private": true, + "type": "module", + "scripts": { + "backend:up": "PROJECT_NAME=linearlite pnpm -C ../../ run example-backend:up && pnpm db:migrate && pnpm db:load-data", + "backend:down": "PROJECT_NAME=linearlite pnpm -C ../../ run example-backend:down", + "db:migrate": "dotenv -e ../../.env.dev -- pnpm exec pg-migrations apply --directory ./db/migrations", + "db:load-data": "dotenv -e ../../.env.dev -- node ./db/load_data.js", + "dev": "vite", + "build": "vite build", + "stylecheck": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", + "preview": "vite preview", + "typecheck": "tsc --noEmit", + "process-data": "node ./db/process_data.js", + "format": "prettier --write ./src" + }, + "dependencies": { + "@electric-sql/pglite": "workspace:*", + "@electric-sql/pglite-react": "workspace:*", + "@firefox-devtools/react-contextmenu": "^5.1.1", + "@headlessui/react": "^1.7.17", + "@svgr/plugin-jsx": "^8.1.0", + "@svgr/plugin-svgo": "^8.1.0", + "@tailwindcss/forms": "^0.5.6", + "@tiptap/extension-placeholder": "^2.4.0", + "@tiptap/extension-table": "^2.4.0", + "@tiptap/extension-table-cell": "^2.4.0", + "@tiptap/extension-table-header": "^2.4.0", + "@tiptap/extension-table-row": "^2.4.0", + "@tiptap/pm": "^2.4.0", + "@tiptap/react": "^2.4.0", + "@tiptap/starter-kit": "^2.4.0", + "animate.css": "^4.1.1", + "classnames": "^2.5.1", + "dayjs": "^1.11.11", + "dotenv": "^16.4.5", + "fractional-indexing": "^3.2.0", + "jsonwebtoken": "^9.0.2", + "lodash.debounce": "^4.0.8", + "react": "^18.3.1", + "react-beautiful-dnd": "^13.1.1", + "react-dom": "^18.3.1", + "react-icons": "^4.10.1", + "react-markdown": "^8.0.7", + "react-router-dom": "^6.24.1", + "react-toastify": "^9.1.3", + "react-virtualized-auto-sizer": "^1.0.24", + "react-window": "^1.8.10", + "tiptap-markdown": "^0.8.2", + "uuid": "^9.0.0", + "vite-plugin-svgr": "^3.2.0" + }, + "devDependencies": { + "@databases/pg": "^5.5.0", + "@databases/pg-migrations": "^5.0.3", + "@faker-js/faker": "^8.4.1", + "@tailwindcss/typography": "^0.5.10", + "@types/jest": "^29.5.12", + "@types/lodash.debounce": "^4.0.9", + "@types/node": "^20.14.10", + "@types/react": "^18.3.3", + "@types/react-beautiful-dnd": "^13.1.8", + "@types/react-dom": "^18.3.0", + "@types/react-router-dom": "^5.3.3", + "@types/react-window": "^1.8.8", + "@types/uuid": "^9.0.3", + "@types/vite-plugin-react-svg": "^0.2.5", + "@typescript-eslint/eslint-plugin": "^6.0.0", + "@typescript-eslint/parser": "^6.0.0", + "@vitejs/plugin-react": "^4.3.1", + "autoprefixer": "^10.4.19", + "dotenv-cli": "^7.4.2", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-prettier": "^5.1.3", + "eslint-plugin-react-hooks": "^4.6.2", + "eslint-plugin-react-refresh": "^0.4.3", + "fs-extra": "^10.0.0", + "postcss": "^8.4.39", + "tailwindcss": "^3.4.4", + "typescript": "^5.5.3", + "vite": "^5.4.8" + } +} diff --git a/demos/linearlite/postcss.config.mjs b/demos/linearlite/postcss.config.mjs new file mode 100644 index 00000000..2e7af2b7 --- /dev/null +++ b/demos/linearlite/postcss.config.mjs @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} diff --git a/demos/linearlite/public/electric-icon.png b/demos/linearlite/public/electric-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4ed9e1e14200742a528c0a6f480383d47210b368 GIT binary patch literal 3600 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 literal 0 HcmV?d00001 diff --git a/demos/linearlite/public/favicon.ico b/demos/linearlite/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..d1db33bc73047b53b875aa81d63557aaf649b1b6 GIT binary patch literal 18094 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 void +} + +export const MenuContext = createContext(null as MenuContextInterface | null) + +type PGliteWorkerWithLive = PGliteWorker & { live: LiveNamespace } + +let pgPromise: Promise + +const router = createBrowserRouter([ + { + path: `/`, + element: , + children: [ + { + path: `/`, + element: , + }, + { + path: `/search`, + element: , + }, + { + path: `/board`, + element: , + }, + { + path: `/issue/:id`, + element: , + }, + ], + }, +]) + +const App = () => { + const [showMenu, setShowMenu] = useState(false) + const [pg, setPg] = useState(null) + + useEffect(() => { + console.time(`preload`) + if (!pgPromise) { + pgPromise = PGliteWorker.create(new PGWorker(), { + extensions: { + live, + }, + }) + } + pgPromise.then(setPg) + console.timeEnd(`preload`) + }, []) + + if (!pg) return
Loading...
+ + return ( + + + + + + ) +} + +export default App diff --git a/demos/linearlite/src/assets/fonts/27237475-28043385 b/demos/linearlite/src/assets/fonts/27237475-28043385 new file mode 100644 index 0000000000000000000000000000000000000000..21a8f50783fd9826913a375b1bcc559e137a1dae GIT binary patch literal 805911 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

r_xlRwAKG8lj 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

JA@s&qA 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 z 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�};&XyG6r9l1u3JtRfp@CD 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

rj9s-YT8WF&S$ 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 literal 0 HcmV?d00001 diff --git a/demos/linearlite/src/assets/fonts/Inter-UI-ExtraBold.woff2 b/demos/linearlite/src/assets/fonts/Inter-UI-ExtraBold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..19b58e07c3bb9f3825a7e272b80caf14ac104423 GIT binary patch literal 127632 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

w^H)B8ngT*%l)fhH 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 P^FkRvK^(h5K|uZ=%AP2Y literal 0 HcmV?d00001 diff --git a/demos/linearlite/src/assets/fonts/Inter-UI-Medium.woff b/demos/linearlite/src/assets/fonts/Inter-UI-Medium.woff new file mode 100644 index 0000000000000000000000000000000000000000..860da965f6d8ff286ecfa6eaeabe069a6bc16636 GIT binary patch literal 163384 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�nET%-Xh~U$buA=5_Dhv_B17vcGnX8nr)N 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⁡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%0Do( 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%0DQWp%W>nw3jI!@Np z_JbI&IX=hgi*DL?=J|F&MQv_i5L>N6|vKkrDObMo01vuOCZ9 z`bk2IqV-etubVaL)x#5BCjFCgjAQ8y2@&)`c2&1;vvS{H%rG9V_fncwd(Q3@H4fs6 zJFZ&({poeY-w&hz-Mgus&!358D$ohGo`)Z$>x2~besjIev-s)J%BL`;55p5${+F1f z`5`x%)2#HLurRwfqDwbJ7-lp6eAxOq{-4uh?YBZJbn01)AJTrxTq-Vc?J^x_oPMDE ziTn@x_^T9C2hD8S>HCZyPGOoF97{|Sv^`PpfB1ySzhPU#^rXIeU-sicn9Li$&;|bY zTR$AamR6W|siaclcNLDCECcN4fFU`2^)y*J%V#gL9{yZ;8XVon|6pxC{mKpX;h6i^ zUD3Jaw9qh!Ib9rys9kc`p5emi{rjvt_;79FR6w`?+s4p;wf*V3ZQp*WoLcBEG#zg} zaS>h@A2?Qe`$~^|SGT)pOYh)O5anrEu+LDp+_rjmPHYVFr?3DdzV|z!YdX-m!XQQ z=lpJvXM2}J&dMvfyiSqA1@;jn15>s^pczUD=ETUiP(yX>XmMmTGm6Qy z8pIFlOI8y*6bQEPx{aaFV1wE-tksQ6Z>Op?y%1kW4dNtAw5SuE(eOGCxK%--p_U3+ zZVLo8pDe&Tq3_qVLwbxCi-nTAC3I+m!Ey8pH6%U^zs{7&Ng9GZV)fNNUjV@+>Fl@@}aaqc1Obt^}fR4Kw=!j zVm-gKMP3N{g?3*~kYwbQV8qFBs)2fj)wX?!(OqmrW@Sr!HRlmH#&(W**;0+RFKf7g z=+1CjcPjn7a94_-R!3irJFYm$mBgCCtaAe_N+TftH|*KR_w=y4VK6k+GqDz$rk?^& zm^Ock38a|=vVJI^SP{AGw(xCXg8kBQX%3AunN->4|^?ZF0`n z$7~XSm$nilZ758mnTB$o?!*Em!~^RN7oiBeA9n^;k%SiG4A~ z&>kkA)+kn)*(iCgipccQ;xi!g17SWie8%MaKsl@hP;jdp8V5Up0=I;qG_VG!$>cKL z0w9I|iq5LLXKIDK2PrbqlhQ0mG>E%_C?MQGRFgD-wAgzK{JtA*3GI)HO$QPr zbcDyH2qJo0zEFyNZaHaAVTO{GRBmpwYsRLb#(4}9=?~C7$WPc9WAoyb{Blk+ng-KO zV{=AhL*B_*d>4qfPGE~48jH-gNg-KcU^Z&a7Gz}?<7O%ciSz62k`C;x@Wh<&tg_Uq zkRi}R`l#dupI`M+>2U^b%3HWN&;U}mk_4qh>f(wmfD5Kj4WOhwRj?TFIszt>tH!}c zKaS-zyiZq6c$PZBo~UG(hFLX86&Uvej*ydD2RY?6b?&J)ynX>u2q)mO$5SP zh>^;hcwV$NN(IXW@-GoE@Mrv#qKU4kkAQRuiyEYXya3MULiT?Qf4 zsm$X-ArW;J9n)xvxNKK@lHy4|k!_y^haymtZq7##>0t_ZIQjtDG#Uf8W^71SLGz&e zvB&z~=-0Cj(0eEz(_cuQjEhurz$R`CJ%VyhH~Zi?*@=G$diX=D(uv4~d>sb2ct|S8 zX}z&*WQqerb(SQixCf*#6ua<%EM1Xh)&x^_;RFCl{f;CgS(lAWTLUXKy85cJb)_m( z2Sv`g$S@yna&F`;((B@^JyQkn5RWXSUhxIt#Wz^=A6j7k{ckpLmZ#v85rvM(@w{%I+ZM${c97s=J zz-}G?2BZhNW0!#c=c8OlZ+d9R0mEiXioIsDv}n{pq)$r%Wh$AW%62F`!N;sl#?%sQ z4{IrC6g#D`v^?SgGGVU+LCsP|u(5m-dfzk*VXb~^)Yo7NPNpc3e06hNA4WAU4Jgh* zizDte-|-Q3q!^baaXhhV6(eWhz7-cZNC5kB{G$e~$_RU+96>CKYuwV00Re_`5V-oT zpNu*fA23>GT(`0L=m=&kAs8{jrw#Jx8dB=fFw`g0al<^gOn$k@D=Ilihqz0wD=h{H zp~l>3Ifvd0uf~M~&hh&o;S_myJGfW69WcJ zFAfM5B}o*&$s#%vBvBsritOi^uHK~kNO>H)ivbua2NYN+Ud-;6Smg|s!U!!e2B$NF z`0K<^)Syzt8%@YOoD5MmlB*R$$H9BG>8_K1EMX-F`|X*Q{*M#H{3wFTz#cW zj**o%?sw%Kt~t@IXO$8B>e@y>89KvTGCSA;nIB?jL9>55A8AuA>xZ!Sv8fq2&sqF5 zie&6vBRVlip%$f|6@*CD(kvUuOZ35)>?3(H7;(#-@}T2)?%ThJx?QxmbIuJTmSUZ3 z*gr|4XjdHzJRwU+w1Q2CVI=H=Mu%DIMH0vwR$yXXGM-r@DV$OxdMc!2eiTmFSWh~u*exmU>TZX^uf%hpAP$&yQlHHj(=JoVqOGhmP6q})Nkx#8C zR#R`qavLzsKY;41>G8oH7P@p%+k(3_eq*`yy^H1YKLhSxKhF;m0&>sSLxaLka2kX} z<2BfL)@Si}iUR9yRz&i)22k|G87daei2F$JKtV=B4B)WN6iM+~DoZO}9z^OkD^Ow{ z29*u}fS>l+LSR{fyJ>+CaBS*tVW3*eoJt-079t#<*hp2(Q>c~Os>FB>^{S| zMF$lk!!;gwtJj#gNoYfP=&P~arx~}3zKuu=@&!uudO_v8%5Y1Bi2B%3UBd&|a^{Bk zvCz2n;2oFb?RyxJ`5dU|{wgX1TVRw|?3T?faV+kVzoYfcp`llM`tcf*G0_m{X8MN7pn?id`YW29Q%LKV8I@Ph>1`t#9U zqf_{D3bRN*qoAo5Z6s^UH9;#iIjz*7=tuwrsFgc>M1;Z&h&N%X#JjLt#K(5yxE%Cu zJv=@7oex7U(%y6uWe<@>O?hfPPrF)u4PS{)yu#q;CjN}U$(n!)d@uS}{efvN>HuO~ z&uF@C$ionvZj46M=Vhq9XSZ9%`GTsvG+R!H40bWNGSGcbu9gF0;9bi5UUFE+NWqqP zVjNP>i;^0GE8sLjRY^-1hBVf(^%)ac<`}fYYOXEQ_rI9>Ux3SY1-QOffZK{X{dsMo z0!1s+oFc?N8FsVq$6LubPAkt@Lu)%6vksI03++088R?W7RGm_s`{+Ar21Ff?3^CnZ z?3gyLa@&@~(2FKIzG3$NK|{TRuOj%NdPXI{p&tadKN8*c83w?+4@tW72Sm#7`76GB zj4B%S1q;K!73hi{bCAoogGhoW1Y-OoFW$pc!6->$hW-57P|ln$agT6%#fCj{E+BR+ z=XnmCWcB$Oq8{h8@nwd!hKD#ioirP7TA;G9jp3jkUvX?&CR(zd`&srKkWLG00fmzB z*M}q(Wo!IhLQ~yK$h!Voac$0Li3r*PFpR&zdgD4G8O@F;exe6ts~m$qfZ?I+%FZ~n zPsbGz_65V?Uve5nA_OfV8{CLo2N$3!HX6v(@*PU`x%RYFuh#vD-xNJ;b*{x z?6q-#>T-&6@XN_#sLYBXspWubdN~OUry0Dmpq$Nx#uuA!JVxK1z7J|cUUx{3vZ0s# zVA3pxp=bp~%`vOiNv?iNbwO*_y~YX~{Gr=P>GS!5Jgn1Qy`4&f=0P$c*@7}YqZd(@ zqqU$am|muuxC(8sJchxgSUWip5~4@uIzbX=LHB>~hl6pUSV5EfFzxhiu^851%iWs` znM<}9xn6sycDNM&h+tJGI9hG24bx7G7K`EAu}HkRka6aRxmCFcRadS>E@RJfk65+n zbg&Bg@g;gWN0NF1JBE@%3p_MAZx)H3`zLr&!U56{%VU&PqL9oi<#AKcV31V{_QW=l z^F)jY-T#DFBIF^xAy*9=^p+`q3E(=8bhQsgc5XO`4|^RP>uS_QSCG*{0M}2Ah8i@% zPw1;fF^qn&-rNax1l=oa5ooh`HFrXSi@#b5D7XRdO_66sP~<^Afhy?6(;EO|cwZ2s zrzX}cG6M&?3)%3GEW?G|wcL>FGl42Rm(b&L11IwL)tudoq&(Rnn(TYyEeSDoRoEiK zp5oP<5Q!-6Wl7BSZg_0+F6#oVHuerEhQ2*z*+&Q!pZQxr4DJt_ z`yBWKLd+F=HLl~y*my57DTNyY#NuwD*O1PT{rXwc5pXBG)FianDt`sQo3$dgd~LvT zLnkilOo$|Z(n8ePkH?=9noumGwT8m5+7w-}B$@<^4IWYsj^eSIEDt&V?9r7vT_Q5> zOW`We3w52N9}PU!g=RyPt(y9km7}NhMu7PdmFqvfgjP4~@ElF1h(=FN?LZE^c82bYZpm ziDF4MfUj2X1xk!|q(2JUS2Tuky3`Egq14UUI^6AMKdCTU8TL3nPAkKQwi=Y};GY&4 zUEsT#JhjF!T{2fjKfY7uPHH0M>H}f$ro9G@o5jz^k-`~yctb)*T^4r7sHk``MM$DY zP{$;MKkk{UIEkvaod^kM!rK$N>zc5^Cf|w|(`zJpgml0mf^juVE~M+dszl@PHoQ5( z30XmL{6hRnKl5TqwwO<7<(d9%P$ONuWGP0v>mDGwBa z*aLO9mY~;Reo)Y4EY1i}jr)kcRR=NELO~$TM(~nI130`Ry-{Qd4Vk=!zk~jtusDxcDstmGf*jAhhbc75Uww1KzI!T>hA$%*J3!J0? zm9v|{FQAi*{}lgD|1JTiYX`TgxYSxaz)-YYKn;~EaVBV*x&o|^NmVglwweT-I@lzT zb>W$X6Nb7)iCE!dR_{^5mzQYS$Vp~uc|`2-F+<5g3c&YEWYW4NRVjiE8*eX^Pv5`@ zR%$`x?Nsp0KELY)A>$zJl9sG!Nmc$GP^0cb*|Z;qzp@Y-V|O1XGX9sF;q%2v>GMlk8~m6h34WB}DLw*YhSbOGa@Dg8Zb->I;z{M)eUt(S<1S z(HkHzOe>{OOhrJ@@;5*$^DABC?UpH`hB6BO7d=tOF`9261?$VS5>w%-w)lOe;J=zh z%C_v`0(_j1Q;>wB36WQP)sQ}6tvn0LNVUomqJZ)gt{1(6Ixtl?-h_vw%8Q&T^c7G0 zM6%5n5g)*Oi0qSB#v4q)&19i&3}RPz%aoRA1}i1XPKx#+09<{U7~@$O+GMsQnivNI z{tKoIC<+1O=&P3$ri4i581)nvUJZmfpq`S88_QNO?qvfl?mjp`urDt%DDvvRawN-E zE72V$MAV&}!JPwi@RaB_6fGnUnPobw&jKfz6cu;m2uWR3(k=os{=#lg_R zak-I#Bp}w9bYlxbyazKUYEHuO2k5{$9@8X!1z2m2yVyB@T&05?iD7FM--ZrE&6-}O zxJxvIjC_xL16^KVaUf8&^cqBPQ4};b_s9#=@|`Y+bQ)wgih- zHgY;iiX_wWnW&qEx<_C3o)_+5#4 z&9nz~(HD-Nxx7)zw%jTaQ4g)(x8CID<`p>n=QUUyA^HSng)n#i1p3Ywi*=n>LhSJ7d5J>|Not?|N{C76uNHR} z4Q6>5r-~9o|I zzX9h^OtTq_qYJmjnPv~iN&)3Ec=3@w&h=YZIYX4p?KHo-7eGYGlL(+TBzYtGnV6ak zg7LqDENa}_V&Q%|mt@!b7!l6lST2lWuOF0+fy<>7RKzWQ%1#rn6_J`hM@J6jm=jWAYG0cg&lz`Hl#NzqdEsi){GPWTY*?A7AYS#$kFP9#SN$uCpV1BS-Zzqq z+8;N=xnw+R6DH(l{ysQTa4Yr7;eNkm9nNQl!vhu!7rcF5H|CqSdRB5(^n z-l&4n&xZVP%WO5#s++-PYHSPnLDw;w^Z%fXT?04;?5xp{SP%O-V%v_yzu$ll#hw>* z1B6+EjdwW~5KHbDrui1={cvi0v`>=$B0MxdT0~fQ$FzfKA!jKTqjDku<=LOdcMx77 zmq(LQqNOf17t&lo7^#!zP=)<_xD|p5Dq++gbP6jnIW4g+I+Cho7Sz|3(<*+#sg?Z% zpmj6TGd@x}Hj7#OR9s8IQcI*2W zpVL&+N4%)YM$d3En;0^H>&m~z0p&9c@&7oP4LEG>3R@cd3zhvQHFdx2JTl>>FqwBLzTQX|3>BMGtG#JW7dp(s#XDUQAZ;&K6(i+Kx)uo zuqfFgthvvd*495+vTcD`Oxpn2)s=>`DW)rnX1%Weo$cbK1Xc38dHIT|mOot<*|&zd z*mk2cH9z=G;0zCOtXa>oh*s7d(_KYXKZEqewMr-6$l|C({*Mc7h$ER>|~~# zGqH$Pg~15ZgS3rv77xADMXyr5XRJBLd9@V=l3oDV$7099vY)$^A`clj zHS`^)&(qoC;6fl(`edk$8K>{qy{?x={jTXBjrzshO76ry<-g3x(puxuXa)~|(yAPa ze;_6zCdaG)#cp8x8!$s*>3L}a@Y;d)sw($E)Hhn1tl9p%+LjBOF{2kOg%haQi)a}= z91@=NZm8(<6u9W0x#z9;FtYAp6Nj?z(wTK|#kVP_2}0k*W+lKS*@?P94l8tj1kEJm zZNDZ}_}cs9qW45$ZPCx0q4~Yu=vN~`pYtA-DT%su3WhXQDeeNimn>VVs%cZ|&g1`@ z%d#e?&a~$-&YnJ_@~oWej~GR0)WWYz4boG3jb~Q;bCTEeurr?oW8RTYYJ3o-uUa$95Io4 z`#+=Dr6b07YgQ8#D20x!o6%)aT3d{qB8!6!HjO1COl9xw-sigx3koxE*oboEY|AYj z=H|MVn=-37Q}t9)N?r@r#CQyycuIXQATWgu-8u70=hakR)&K(hx$KGLYqEQPn z!?Op%?$yOWp%szvbNpSMTWaCHpPsfsJNZDQAgc=fN$g+3mx_9Q+eb?o|2?WOOKzr$ z{;O{6R3^yB3hH4s`*f|On_eI_-H(MtdrBbBNs=3}0ggg#>v*CF3{@~k(VdsaLwPrUV=Lnq(dF?M| zLl=C%4H9_N65Ab?FH9h`{dox=E_Z)R$F3b6&u6hvq_~f+B@O5cJrG9t&ir|Nj|bN8 z+%xe@kQY&IW&okOjuDwqSK$ImFzJ7|*5a9F0M}}<~uZxFm51w)zJ zeRqDKr%wC(rAL6Q4C^ZZyt|O;;NJBo>U?UOHN?|mlPW*?D7yzZ8|4(q?XgSxwIHcVxKrXKdx36PY(o0!0hB0 z0Gjm8VpwV_x@{>3xaw7H-MvYlfZD=mUo77iVU5#SS2|&U&*bPOo=N-IL@bs~rsQV; zv%nTx%SK({y>bcTtPwy{W1|7-v4T_sgdLr`QgkD$hMzf6rtiOfL7x9X(p5#p(RAAc zcX#)}b#M!=gF|qFyW8Lp+}+*XHMqOG6Cgkc?hcp#yAQpp*Xn+%uCBB9KD*9AI`zm~ z;b%W-M-J%GbvXuef4F=svl4VWVWaqWq>;Mm!;%Kf{2fhWyC3I0U1)s}=s2|i7pyHH zuI?Or9t7eW!M!F52HfQ5v>to1xhvitTzc-tC`tIsetR(VIsGN~_?y~6m~@0z7lr)w!ii1Nuusf5sJId3Jypmo>!F%6w4xxFu0{q7 zLrqTgv*<+yJZFeVaw0L;nifSF2lo)Al#Y?}t3UE=x5K$03OY$uAUw$a4@s;VdRe|J zD`|!>=?~}t?=pYuU8$;=rN%A3Cl;OI?H}2UCmTXwlA51evqqPwZQmbVMGK@Me)X2<7kbnv=PWWt+ry%_A!`QTYi2@f z7T4}h__nKqr{R_tueYxpe!eSe)X-Vo;esB*a7?BLQfqgo!M?#ITX!~@YCWnrc@cAW7kARgPMemeD?-8 zkei-a%e4;ipZLhlw2wt>S!o4kQ2dYv;D5Buj~t7QId&ucfiwLB2Vnn6kLOLM5{!VN zl1j1>7gq}{xf^cAGVUphM(ylFgJv;m|m`oIG|!61*9Vgycn zJ8e2Pxx}+Hw$1R!8aAD8qxo;0mswj01(+Sw*$E*Yh^x3N;a{INMV8R{1?G*lSfbpT$)Rk^hU&B33pbTlpbXoj+vu{*$uFvZAW#xhGl0 zC}s@a~J{!C96Gy&2`^9k~Q2|xNqwfmTL8PCP;eoRI8qCP8m!a;h^); zpXH3}pM;&vcva4#KZfoN9~SqRdFW_Pw^VuI+k?o}KzuQa3t?CZtI_BullgrI;}MTp zw@-+Fhn%D5mnf_7DBss~>WH0!869}#f8ZZ@YZWB3GJqD?05_k00c`Il4G{y;u=U#S z@xTUb6S1G_wjul4bp3KjbYlB(E!A|Ubr$UM8KPqCvlb!zve6F5{%{}mf!GR@4z=VU zybVy8I*QL|lyf+6XIay7Z^|JTj?(1QCl4$s`!($NBgmv9$7_NI?*3`5^5erFvAhS5Zb*Qbr3ELAv~ljNivN zemz<&q!;0xr1xKo6&+HU7`y3P9akaRp-oRpMq0H%8qx5-xuXNgk^tZqii%BFo4&* zhjkySXkbR#-2ElJRv0q>&gsWDr}uy@?=N4l~urB~MqmAlN^kr_evfvEfL z?k^n&?tN0ZfHheA^dqtCRG+WBTd7i1Yvgh<^hE0!Vms&rqMX=a1@Xk4tG5)Q$3v^| z4(MN3Q8Xi=O+-Ak+xP`I!&e5+2BFF6wUPzZRzAS!9Y2ZF)!x}K zbQfMwa;LbI=|YTb^_mJ!2K*Fiq#a!S)RtYhQ@XpSPQqN@tB>yZNn8TuTuVNSZ^$Vo zQ1zqs4iiKeS}CP@A#8~!AQN)orB5~UX+fTvV$--brhjyXn?RLcR(hfy59C*aI^P^JGlfMqv8j*>c0VQzWB0I4e}kG zV!s$xd$`%dlexOb3WSX(r{-8n5e5?}4G@E0aSoj3- z#n)^WVW32zC&pOo%3rX-3BcUcFF6Va#A-I96{5;kT*()Q)(n2s`x4h-S={XGuc%sIpfhVwrRpl+Lr3>XG#ATS|zS($+0_%8zh&#t@W|HZ_QP-_;qOj(jWqJA$XOhnNoEzz508$Se&)QzZ;5_({R%Mv~iD!Dj#`$wHCP zghyR=g#(RHVS2nrCYsD)YzXBX6MkuSMR8NSK?2pcv4dg#4T(Dw)2Wt|y?e{#%rDug zrAN1^Tuw@V*hV$f=4vy*kod&#KGZm-B9=3aveeLfG6c&h1K%XyUPu`ZTEfQT8V6L| zAfO0*@ZR2(W*@LHX9S9SOu7yChhjay)OmP>yUugZhfY}~X$TnGkYRb$trbniDbir1 z`_m7gKvRXYxMj55F&0$(p{P(LZw$ZjD5cDATFqM!iL<>N`XaJ6jRg3XGvcBsq0_kixoIN*K-GjY00w_oWO6;o~Hv^X~z@o0j~NGIa!)AjcpH}_jlU19_(5;yeoPhIi_D&A%8#u!SGge(MVa=l4^-8K*K$u*sQ z1Z9wjIJ;32+tdpl$rcCOpCW{08L@uM49wC1DRx8~#LTDKN|-W1~-*tM2_K2nYPPH@_i4VH>- za@)vgnvx_`%qNC7fvQc^_P^I=C&6330`gAaf<&Z|f~(?wr2R>G^ufI}L>-{y11w(& zYz`MT47Go>YdUu^W@_$wmIozup*r!%S6!wv2S}j#pcj=zgFe&U2#%L_FhV7-1hG{Ow)4o%Z ztN4zBedg2sD3X=!=-8>2OVUSPRly0X-#C`e_$vQh-3@PVM7J}N|8iT09`uTO{<8** zELje1#t_{QYp~5IPVg(39A!2S2RZ-TN9Taz;TfzKDfU&JRy z(JU24JRfHiK{zMsK?~|+dKgx|P|1t3n$(nY5YXKH|IbiEgt`)r zj#BYl7@wC6wV%$|s(IBGLo2v{EIRq>K#U)mJ0Fv1d6@9?|Iw21z=*b#4S}vi$xP@f z@YtAgBrp7bDonJt3%haf@4Pw(CD z`NoohKav*qibJX{bw6J%4*7YM7~!!#L)(%YFOb4(%CsuTmG}FpS0dr@Di~uiu!bGV zDZymyX97in9y{*62#)?FwTEh|3BG(|RcsyinqTJHoEJ)u@5;c;@gEDJ7fP?2i~v|W z@MX3^Otj&<71uP|7vmU^pfDx!@<_=Ox@&^3G4)^WjYWEZ`qz?oE-)#!hc!Uvjyg2N zB0(M=>&p+2Nw|u({0dr>TZmK}_7S6F!#D)$Z$ICxh~$6dGdonaMxhYA#scO&%+Zf> zl7vNW%cQi;=eLVrl@*qf=-Ns~vBY^r|D$0?6*B*eKEYj|7<<7t#qs;R`N`L{-M#L5 zgGJ$Gq6H4+X+FrXd_;+FH2iSP|G;W{u%KiD02fsjudmUKKMy|36&|R71nKdWQoeNH zK!vO51y%N>7{?FY;Pj32b+ggEX`L}rZs1oIJu&-qifrK$u696mjkJ=C&=QrKP#f`4l!rAmi_y+ZZ=;Ry`Pw&O^24>>nv?oz7+T@EE>C8*3CRmpj_Pg<^IxocSJXVN^q}l+bo6sL z!zr}g07f(;BI)4(eu(2H!IT!U=N~3{6~ao`yk&`$nTsXp1(GEA{kTFK;E=xyJgO-x zyv>Txpc+u)w~9VCMt%P!(IutYQ5u$3-pYlV~pKNj7`@!Ce85===>g0xp zDxzzM5b6anh$3vL48M}#M`oT0WSd2$1GtIK$wZSm25UY4Now7rv8fz-`Bw*;$5&~t zM*`Y(ZAFp)K#EB_um6EqhVi&owDdg!W%)d9ld|004kpu6{pe*}x76#b@aVH4s{4Z+sN+$F&!)pWw3P!1n0h}qPcJTU9 z_=0RQb^uRP%=_`SzszM`6t=tB+qBPPN!&&sBMH>qLj+0?yJVQ$(hXF%Z5pw;H?}gy z;Z4JtLx9M-*ZR-_D)Itt8|0V)H^YjN5$QN8^o=o+&{DC697SnB#je6>>wb6Xj?pJs zn`I9sW&a=KLSY&i1?=SY-9Y2lnWnqFQ%#K;i~>0xUlCh#Zv;32pB>Q4A}ncM6gMw4Mu#Qo)?9-Isk{bzQ_D8P3SMvS>`^fj{#%A zG60_-s2vpe{MlFwEt7_LzohtoaYN(<%ZD_uWVS@62pR@CTRzczfia^-AV4z9nQQ8* z$WDy6gQUho88`(*GuwV3C}KnS$QjggWq&p?{qEaoyGKU zqTfjsRBckK!4RP2-BO^)waKKxrY|`h$ZBgLpDOaTU|R{m1SF|u2$U!t;fd#ds&6|3v=hNuL}Do? z4gGhbf;mNw?VfWH@W%MYsQS_V7BqDDqt{NPs$m@v<0G=I>l# zMO-zqSx!MAMZZ~|F7;AjL?W;P8a^8{c0qYS}@ZR3<<6T)JFVTE; zgr#fHGZ#@@R*&*b_#@UMgazIB!AX^?!FRlk+rr5<0~%-y0djcKqYB9S!%uFg&_*Sv z01M3v3{r_x;)75-JaeU9eLh~@nt!GhOICvi8-R^g z2j5?dy3R9R(qc8i$QQT$3x*zPL~;6U76psV*PD;W%uT;KS3=#r ztaxepp+a#{6A7A*%V9kgT2j&m8~iV6A(|wC;^llaQ!oZ$D<_VnX1{=TL$D=7$y*#_ zAq|3>#8B84CdnMzGL#lz36836jEMXFEo!VYNaQ{r8t~CXI334|Lsn_ufs#!XbT-Vz zDQ2fLlnf={F{M~SRYHXtp$wJw>RGx|$l{7enbfv&EUnlPyHwiH{GfmU4E_#Pzx+E~ zlc3uK!n{S^`T~q4x^@|<*d-V~bYB{HvM(qMZ#G>+p9p_qZoWB4g2$XTX$kAJX1-x~ z_M2*(af!&>)+lRAbSx9HjNGG;Y=MkHT)m-4ztMR}7E7Fk(ef5}iri1ajh=3mxJF~~Klo0c-Y<;*^j{her1}U5q**CJ_smc|V>x9f zyl(I{3JulVwZyZ#t}-Fm7?%A+aewt(@Gnf8>q*OrP&@KiUJYxTw6u~CH*Dw1_LDW=Tv8u+&RDjO2(>#$JG+H%l zMsJEwTFY}XD4I}$r9XSM2Ns_BA#Cf9!8Hlnn^HhsMHYG|x_bopQxEYt6MA;i!kcw^ zx1cq%;r2m#2N;KZ_syR4Zmu{lQ;cwa6waQznT$2im$&hvSOmq;kmw@1#*qt59>JPNdKPw0nsiYqRb@7zqF5niW&B@GlY_zUI3y>cd7_zE{aF3 zrwll3+LCs;zMP;|Ku3DQ|TQhZDI$$Eg1J{5Nx z|4aLd!Sw=b(y%|IH$?0OPaPgqw#7#tZxX|kjG$_X{SAiV>sp`JY?I)UEpj`rBb#!T zP{Isz>qfve>f#;WAra)tz`x0p?FyePVqY|;*NzK8;~PxujY+fGZYN3C}Y@mF|UrK8N zoIkqebcMM<@dJ3kV=fRvTsbhn%!V*9B(JNOD9JA;+ilLp@~zrUTdd|B^%fr(&<$@o z+H8q4J83!2%0r&Juvo*!ky{V{6hxy9j7hhOooVQ)}H%ydp-bifq|MUaG1p6hSfkJ$T~B zaHCMof0ZWNCeb*|oGE|*p(b05UZQ<~+j_&V>Iy#SHPXBh@G7--K5FSdxZBu%bvT-_ zQ#}3ooXqq>kfU9WHGiJ^0G%t zm>ar#2wp1PUU)`bvy6UAl8+A{eEKidG`;AZ<}8Y@pxP0RzHJdo_@WW3WyZhRd1OhW zkr@@%k@VCJq(IkYuB6S|qgi*jY+(bV7p39vqK6Qr%$p^c=G4Yqav6b4%^&=(GZe(- zwpwcP8me>gX5d^R+}!hp8YvVl+~wdvtm_9dTqI=Lq{&Q;1&@!?dPXi{wvHm8p-f?% z?0D7m9rxXdC2j8Op~>219+MmqsI^^Z2WP4{YzXL(`8QqBuNJ|EO;ux9=p9sIXm;x& z)D8&kA8Am8-gZG9z1P8rlh}sKNMLA!_~2!QG60~j!Gt!rq*tHUX`z>9c1`v4EndMw z_(uLPl{CS39@gT|AHV4yG&AV#S*}j0;gP7{p%=g-``i>dn;(1L^`b}oV8u&G&*}+R zHrGzIzXcJ;14FmGl%$Pbo?dH$q_K;nT_-h#cYM6-_taj^#n1{bDs(*S%a5g`Z+{h| z51n0lx>F}bDtCF(WfzlN3iM}!%q2Z37v$+mBdrz$aC?~bDx^?+AJ2+LV%2a@yw;TO zMSgw&R3r1T>OQ7DtZgRC8ds%ASP#fl&(}*nb1J+4uM#M^BV~9OvCV9Rj)K80*<9EW zG4Uy%a>1+v(tj!{P`;}N4M^#Rk24SYR4tnpXy)Z9nUG}(E&8qu7l;%qk+#6BuKQ>I z(UK9X&{>Tlwu3ki6M@b-lvuU>z<%dy0b+9Pn)=%OEC;JDD9|KUM)_H%nr)iZ4E=wo z5V!-puNuHyCpS1DB4oYBC##s7z&Va6_j63KMy#T{ysS^l`i8%`Fr|?{9k9U;xQKNUl8O#IUmo)DT zkwp7hviEP@>C3aB7`rV(SRt?(oJZic`+!dOSFN9l;0=<-_PUOEDF#pHV3&bkewJ>VGleF43YSWkD>WBzvUYPDpNY zKmUq7i0`ZkP|>BjtVQ|p$qQWBVW9KHxn1ctsSwWADAZ*7Mb3Jgf#RhYU&E6sM6x`= zJmkB|yUGH=0cd!3)kTssOuLoep*|p~DHuc^>}OE@!$@ zSP&wo+ehP*sF(!FL6dMNY(*E68vJ$8{c!*d_@WYe#o9 z*w!MPh*G(_fr4JlB^ulqF1n?{>gy7&=7QQY>FU`l;5Cl1OK+B(s_P2!f2kLc01W6; zSPVlV{cpC@V?ucAYov{*Lvf6PxYu`we>E*x5H1%U?mtTE3L*QekYPxaw?$cml*}sV zcGBXc%}wHyw^xi}I0ouqJ4kA9FvZ{i=GA^JvFIR6qITWOe5{!j-nFXZRCP>MMe30( z3PT-Xy@^FiN)RwI2tVK=ybL6FV{`b+a=0P@VNAlHDJGx?o5EO2D6AslBI{;Tf8-ZZ z3}$Ej3<=h>kk+Q624q4jqQP7#S5zb!yli~mA*f*CmfP|E_&tGqcamDGc;kRR5^Lan zH6kfdv0s__Pp+TH$51(Bv&F4Saji%)0jnX&=8hM~LDfzR$08p66^Tgh%OI!Bu@?Q0 zda7Uy70ICFa^m1t5wlJR3eP|mdM0e?fAdYn;m+nGAsx~PMR30v1d`2js-8IKt5@LPaN-;VzMuWZ(GI$m z;I;|c%n4?lJgv2A$#u)v)IWJm9&V2X@TL~^{mmVV33->0ZjVct{S4LYJT7I_(V8&j z&2#i(5)K;(HU%hqz*E$0%#FJLW$&42nkDtD0P}y=P4&M(nh|$6$Zwcd2Jum5@qStr zqUliS8y9?+!#kPv_qDe3%*)SWz#aO`djR(NsEw4^W+NdHAWHYbAR+Lo?@62w!6w6D zUcl^MQWP>pyj~7bqNMBO_%Rnk-wn=483_hMP2)r6}8R+)QEHS0r z6c^ac1%k4qK8E?!Oen{(tyATqL|7*{EgA1)km*1bxc$F#ty--13TEAsp_(D@QzJay zX0L3g&9Rk8Mf-PRU^o;0#Bq#jH%xy|Vh8BYACKkzl}nXQsE~#h2Sijb@DuqPNo*>} z%^)n%u6u}u)o*6k5sj{yR|`2m;RCYbU0)p|4~wa(r(;|#s9>G4U~&uy3_25H>)R!y z2&I!=E11VIK@L+f$_GjCa>U?6EE zFkMAE#2xl{glqwgZIp~g+A2&hQP8nbi3Tk`V{aKc2<>B_hP4T^u5dn~kV1F2lchh^ zM0NYSiwUjM{o&EM2jo1dUzX3N)`RHPDflT8^<=vnys`0cdw)XpTfWC_gRp9MCvD<`OCsQT8^+Z(-T=9b`-Rw@&*Iu^AzG6IvXZpS3)EeRv~;&4!`A zC3By01y2m>>D)*MwU0!{sG5{*fG}{NnGlq&bfzh6U~pwdST9>%B>maJ{PG;RUUoz( zqL+Ti6$S3QT!d5Tlmj1-9rjRDv-tka!Kp&aM|Yq>O+Dq>OY8d$M_ttsdK_siQN)YK zfLB1_#m=?$jM5)S8^(IV7H8dM;-2c$Y9_Cww~X)CJ*TOy7nM)@t~4L`f7NCWSH%wF zZ+wnuAeOL@!?+adM&s2W{=~wgA*gp+L6nE3rlTdJdSI51{@rXu`oThUAi%At4R&hd zR?+<>J*VlQhQ^H;y;?sOXQjbF0}&-VMB8kTsu7AhB@}7P>r<^BTza2^>h^QLCbTXA z*WNSMC#CDPs~3_FzO!Mk+Gj(N^zFq)nbbZna9Iy&$Zz=Hbb&0Hbx7I81u55y=$Z1# zn84tV&Ut^7?_JBfHyFkWXM)MXHTAAo{(gWyU6* zqLv=l38GQnzFJcLE%-Xnj$^pq#U>Y7Zdyc5=U zn$ATJpVJ@gID-d{`H#4!c67kgMQnf9U?X#UkET3_HJ>?qIuGt98fq>9b~{8jZw!l-R!#VqP^@qJ}YkiK0Ily)_2XEV&Eq4kv>XWP0g0%nP%vkL&-(F z64^a=10%qf%rp<+_BtqmbBMd)j;oK>pGtR~ONFFPtDR$>I#ACnESfw=TME&4wL3Kd zhv{5(Vu=qlS+TUa=qJwI_UcLU>QFB!mS0Jf&U{)Hw*!VcIXqjSyzbkAE$OZt>)GJI z@(I0#ksJ&?5fbmCBn94*X5pFNZe9_XO?;K=lR|?k)u#gE8zT+MPE1IJ-+7999A}&} z&81M(v89SbhqC(+Uc4?myf%jHS9~5N@@@)S^W5HDH@1T!Q9lS}w^!Y4`2=6jO2+RZ z77yaENR@b=gt(riF<&kq9op*;fAI6%i7Sur`*2W-e0C#Ez)Z>$l%7)qDOdhP;yLYF z`Z`KD-tLN}?_y(QOv$DCcX^j*Iupsnm+$jM+w6)A8<`fPMcKsjp#+hLI9x-*)Tv3egrlQ<;DY?_lNyS{90| zgARyDs(ybzOqxd$swOd&k%nP(AOu6YX+$C%;+u@ds(fkH9R8OKT{Hm2VmW%rximt& zDO=SbMT`-QC{m6@)2_zADbsYSNSLg;XeG@Yrh2w$4DA(N`IvI~O&81$J**bPB*To7 z;yxEKNHI1>d)hD0{3GhwL-7j&xChz98aq#{Du*BsCBdL z-Zx?euQU1GiEO@*4l0rq7MkqMA}to#_Wb#&&JaPAk2v`&;)P;b-Eg522t9SCYZbJw z?KBFOX3$mPny>T4qJQ$@ zkO`y0JEAPa0U0sc6ER9d$}}lVfS@3_WqjP4StTcQe^#?a*8q2LcstEB_&r=4lDM0L zS24^3FLI}dv97AJWa=kRwi}8tEyqsz$aHAh+Ne$#qrIRTGeig5brLp!*&v~dhl7rS zdXqRgV^1`TPw_h87{>&);yb=TEjK3<1K;{Q1{Q@>@0uZtknGO4)6;6(edpaLrba!n z22~WIp#9%PBdes_o^i;olO$o!6;C14a^t@4invRVYlYE91z~g?Ko1Sp`BPGO^BH1G zW6I{t9qYBb$7$Tw)Xs*|R5#e?sBoiN)x%YKyqyK7lK~X4+T*PIX^~e=N^Mc+fZ&C zL=O{y2_o!cI6Ea!i}d$jQn9BUtk~nq9Arh99fDLqun+`v$ZRMP74&Vg`Z8avzhWb( zhld9_e3kMv(l*NAhG$Y*=vPfB$O3C86+C^pmY$R3ENz%W7ll+*74QZI{24oZy^WrM zK7UzS%be2o^SL?iQTSaP>t{C>-ihv_Iqpk|TT}3>Ij$nHSI&B^@-!18g;fVAsr~!t zwv@W=io*sltsQ$F{N3!->!RYE5aqcjxACQ$LgZ}GqBYU{hgDmjlmtw0>BcTyksxi> z>h5t72dx0k0O(2eNbM;xZ>)KN*?r#ns~EF9AN= zShVk;mrncKAmnL!h2M__T?ZS2>7%2oXLy2wIg*HJow7dMiuggf7{JPNmUEVxvNBV~ zJVYS0EJcNt%)BdWY}C*y{;V)1^d0PJgQ@y^0_%qlg1APe!B% zSWn0`HZ0ofR(Qf~?rr72N+>|f?AjJt6-57muqKOCEzt51AcOg?&rRR+2qxo|ixsxK zlDS#vB56ENkHcrz+luwEdClF(-$}83uY(ELYKgm%o?9$oyGNR0SiUn-y>|dJZZ%zk zavip%r3jpb&nfqJ>)qBpOn&@Zr?GH4YeFn@7TAopD|Q`J_W4IbH-Gqf&iBpQk`O>Gwa}=KGhpWQG!vn2+PQwei1u<|v;2zWpS=nG2nP%t+-KzDmdri~RD(vye!w zxC44x-X~8ri6L8eKa&?SjFQ9!12%&>J#GHRBoDz~Hn{wsfLbjUAWU9BdvXLa*bRNI zX^22!gG^h%!V*_85vufTvI*+~qgLk?agLY0CE&f8iUGm(c8X7NFtYw+hOdts%A;z) zCe%@@V~Na4^;5a$XW%92pBeyZO{zCux3{YSbprG7> zbeoB$#>I(_#g1zt0nc36CB3K2vKkF-Z^X#7zN0{QR=)v$PKf2cc2_eLmD6$EZMklS zIO@2khL@5Ga7@cF=H2p-r24{Yx(2c0)nP-NDwr4^L^mtW9Y6;Yy*e8oCok99w|b~5 zV^zVO(80iJ6LNZNTJavz@dW3h+@Bd_WE__AubD>oN>QQn9(749yQ=HuzULhZcH?o< zxY_osTL>@UFoz@s4;TkfQXk|0g5 z(OPoVg7j5M8Y-{endm+5Fcw+TB`dCv(oc=={CA(g{ZM`v;(>$&20QT(OfF@_i@&s1 zlq#iB_;1w$n;$oMR$*M#QTziN0%1d~41s$(LnFlvq+Qs5`y~-;aHftZbP5%;DQi_> ze$CO|%700oJg~1PE5s&%nZ5c_X%{Z8e%79z3MlxqEH5JMUX_T%jm$`-VU2j$uq{iAmGex3O|-m6$VP&g5Tsmh=T{y&2x z7RhwcSfk~qJC=Ov=VuyJ>)R++hW=sGgmKn)B!i)53fuZ@uJm6~O+cP%A@Vc&<{-S? zXty@<%qp(_>NmuJ=+yw-Rl!J@~Yf|K7xc=SARIe@LJNhrU{9U7pro2Vyk#{ku;o)c3;v*Y(uMU^k zmOXVy{*mMM*)Kf7ZdS*KU&G>BG}x@C*>LOjQ||%%Ze0&SfexM_o~UCR4$rX*-q%Fi z_3~)@PRb(2cS3FU?xGpne8L|a3VSj{Ii-|`|Ew0^0@ScuTtVS}-cPxDubYT77q*U9 zhH>*p(=IjNn9-)cL(qcJY(VM|pyrx_zt-<74VWs$cdd2gvCY6dpx=`q(19Vll{Ta* zV^K&v86G(6M%%@K$;A`PzsI9U(td!;F%iSn?_H;6>7&kb|GTfq!7(nU=2Ub)FxP!@ zf7!4C%}1^E$0v0yH3t!9D9=@e_&B7R)0K&l?oZ<<`*$(uUyNx{2qLanp0d#qtlunLu$3)bw%P;+RqF$C|B1Ly zqqkWS%CRT)JkMeGl$8-e2sLmE=c=Xl_?|_$nnUvmx7n{?;?fRD5x(5GcR4dr6Kedy zc{2%KVs$Sky!?~#Rq=~twJD2hQ@5qgTNzlew<@`&@3&``#*JJ)4ZYGOh zP#ZVQHpT2L8vR!$GXI|zhy?iD3>!`(->_TW^4IG62@E#(EGfZ|-{*20#R3cjOA_ZO z)-lR1SLU~0AbJ{dR!T+^HE&sP5U{ey=F;F0*yCyH`V*)~=vIG-{lFL!Awf1Kx25+A zmxw!oggg@yX=iPMV21!T1(2K?IiW!wUzFHt(%ayEkXH%Y&xB5Ol&+7pOd9R*VI_nD zM>bnMp+SWbf!4cCFDY+~_4c+64(8l^Ae^s0_Yxk}xe%ldI0YVIPr! zVj&-h5XQcu7KOdvLAO)z65MQ9VM1f_H1wirW8#MVgqm$l_4Z}8_R{3lN6*y9bIv+5 z$vIcT#uucT_kij*;|LT!oci1z#|$G#RiTX?)28U2i3&v0m4SXU#-Y?A!h7o<`M2x- zg%%twgLQ_PgKxckjzUs^otPUA&&0Uk$JvX3aEavL7#ekW1Yqxapy>D|4fmr3Ws9AC z1HZt~K9`HGk~qMH-tqU)?^i`OJh!IHluE4&rMH7x4e#53&)!0BkYd3S4AUD)27rUd zj-o8&*t7PFz%{iyDH6?Jt~U{zcf;!|qemu1b#%F6vfk&cdF+leF0u&%kl*?tuZ;dA zVOJ6(Z4qwNXl+W&^gD!)n*OBcQONqXXD%gGfVP-f6d{@E@?^8aM0muyZ}&8}GSC0C zb&a-7V$fzb_T+u4%UlzCBHKaGTWapx;dfSHi(56$B2TldPrHQwX1#aE{pdCIeny;2 z>Y_9m3z&LhTf(VW^@D5wIXu5tU;a4%SarADc*#t#414yuTV3k&Ym8;782#t%r0KrR zmr3K7-k_z{_V_K3bb?GmH!B@@Go8o~=C~{%@8vj2!A_r(3H|3mz%jZx8P1^^tK0fy zxQ4jPhHhIee0QC{2|V@caX$GA*Nl_<#QUXYRk~d4*e$4e-(kqZ>X0}v4TeoO>4dAU zQn^XaF*^%jHmpH$Ic2P(a>>SH3=lB)zK0Q<$r=gh2qcl6;Vf+`yI3`JR%j))R*2EP;;}`%Npk8cGH~v1;vi)2sR6(Ayn}uHYfd>oP;j1i#-QqYvKshQIPL8+4e+XyLN#X-;<*1EV1j5|ZjGSYv}$nIP6L#sMP`N$c?;sxCR|vQFYoP(2?GJV#`Z z=*gzKK=}j<2`vL9T6VPbr#Zp99=&ru$G`RNBE+7qJCrO)!mgO#S-+26atc3#LkGU({KwW z;!|HD3$v`!YAC}`(BjOLr3Q9Csm6>TFz>n|Inv0N?_=?CL z4R`Wd5%u?&q|Vgz`)x>1vut**_~4kJ)JuL|LCUZzvrEko-x9^4|e-(ra2{|)7T!R^6Y`s&ZBMRF(Xy3)sI>EPnOvbTm%exq~i zV-zLjc<4Q`cx6wqzx&JW5u$uPLu~cJ?a{K`S(jvDM2u?8OXjN)>WPC<^hR|`P*!C$ z`YW%5OZRSac>hgVImKE4U4kaNfbzT5b!PkOEUrjg+Fh)!pyR07^w_xbaXco~&Mb#3oxgMe? zqjTgaqhW$5n2IT;?>i7@J4uqJDnOTEprnsif7+8##}Xn2B+6F<`uJ^XxwlRZ?l1)` z9NuUeog|?HS9zJrT8fKBqO!{_$s;@D(v=>1r*4LM1!az!NqvU?-0gi<*_b!ID>ty*H zcF1c_N9j7&aP@sz=k$HouP&q&MG)fo?LiD~g!Sq0{bg;GvP1z9yJmpk)f;o*!(=BMCd6-V)7bDa6~W#fM`faFRn5N2JjL9%eJ=`I>D}y2 zp4KnlHO)+OEw5RUAk8&8r0Xu#emzG0?F^Fo5!?DD6E;6-#Z}qtcYS0}K_+ueAE`uf zY>KEX;c{nN&Fvif{YYxv{ZL2!b1ISUevjdSeX&oe5vA^R$da(@KRf+Wpg^JIm|6nU zsjt^X-xjzNC+AnaW#hccf*!qSfQdwfb`x#KmVw0?Y@(-}-B!?{3?Yv7Det}>Y=wM8Kf$UqT z;1Q!XkE3mlyJ@{ytaV_xlF{t!7|_G*J+kTuCc{yGb$29?m_#iHh)$wgV`Xf!KBHT4 zE58(p3H%>s`*&XM{w}?5AwsZF^NXFfb6d7ja9}}_;7LkhQh0^=1p*IV)~k2==HG7t zF@m$p9ePhRpANlg!R5vxnHeXfwS!*)3-U_~1Ft@A@3FMODK(!BEQCOUXi23DzUSdq z2QKX{R;`rV1&(dKoD$~eWQWEJWhkFpO7<@oseo)Lp5wF%4#0nMhdOKZwC?OGXrP|I zSjg3A(vQn@GILk;P&&Kp!+b}}ud}i4TArFyL(8G7_fp2xg6&A}W6`5jlEAu5(5<3M zXtx@d5Nq4&;f95ld`dDsLn6IozHCJl)soXfJ66J(<(Ta{e`Hc>h7ws)=r--i!ru+KBfu3S@mtK$En*jMn08KKYO>jwkDB;qs}$<#X7{E4Jr=r~>KW4YZXemR@X zL`1j@wHrqhtFDx8v86KKP$^w9V*FcGb)SUn>9i^FdzhT?9otT^bJV+kX4+J+`M2!h za}mvbudldK`{A(DjT-o(h9Kxh8u^m0SiM6YR&RLED=1Ravdm}Rs9_Z>*Gd=WEjENd zIB|@ub1bdY%SYz{{}c36#dOClmcz}oGk!8rx*Ze(l@cz0j5QzLGG9JsXUIStAiraB z^1T($=B7qA%hy*{q8>fbuxCaZCe zic%1oFX}2|D^=PMhd{TSK7y6AgIi?BUN4F{#im*s!X-FN6-u^5p^jnZG;ih;1Uu^* zkBp6v6A9&d9|(~{(BAi#`-$jsCPocik%AmM!9;sTH2sW@vW!1Nj%ob4B-r?Kf<5E3#-H&6rVzwm zZyPjDXZv~B)~cb0rOxd12vyR|!PxCxwoZ+lsK%0Ta<(rt1l|ZuJ#=3um30(cGt!!Cki}%I<6z63kSoEX4znC9_O1M3O8?j}4tA#&H}GVUlEw-{4r>`GBC6 za;QU*NdnAK&7nHAly+ay(&oX5B{q8nN21y^Uii^kv+ZqNF02Dzv*K)hA7biw5X-m! z*q~I5vSKMt&Y3DJM&JMP0hN$B=+z{8CY9tUppphaqykj07_aAcdk9_vYY3*8lalIP ztQzBPiuRg~qVAT8`?=k4T!E*#-!<=(13}$##MevJc8B)L9v|`#7LbU;~3$Yo&oG38nx^Gj!^>)!pu)y5jKk@VK)RDt@_#uiq_u)+thtBb4KF zTVqj@Mc&E2L_qIo3EYnL5rRzIUAC9zQ-u9-jT2ObvTP0VSR&A2P8 z72y>at`jpnO@w2)(z}gv?PiU3I^%w<&hGDC(I;oVEV=`PetK|sED)_e-|CJ9c6Vf2 z5q5WYv)zh5VcCfq?~eI>x6ED>={)Z^bJd}ASent@;LkSK98r!0a)B?@UT>%K9Hf9dGBjY1(pZz5BEGL9#I&&Mb>y(E=g=?aMaJZL zVb}9J=7n@v%!`c4^Fl&9K@30EyyzlCmh}>w<^-j7>bwy70LZ9y`5mn=wGkR+7Kr!{ zb-s$UxptllpxH>voD-gPnwmZSEXRhXquV<+H6f+@*Dotq%9#%P^tDynnh1t}h{XQ9_H zSII`4BN;ClwJ5w3QDsx{I6Kw&BEI3`IdU(AKKm5RY-p=}^GF>#+}1zv=&wF{xvlEr zy9>)8yQc9&1=7g&PcC zBmy0x52}gIdnANRG-?F{L%03+{u@RfIicW$i|)ANBKF6>-}Xgr@xq^8eb?h#YiqaW z7UsTqeO-gncCxS@KF7AE0tY+(`lg_-Xd-_hB-!td*%F@EhvfcHUp1-5$ z()IV;-ih^GKQ<)QY87M_>fDA3y)j&p_DevBjQt^4XaIwSMyEcUbQZtSPVw6I!np3( z(-ryWC8&uj?Pl#KZq80y9F`e-{>qYHUOPBAq>?UwRmnDwLptP$IKTBKsj~|zSS^-= z@4fZB9A32hLdCLK;Zy>{!xB*ybw8((2uM{j2v|RK);Z4GmxzLS3BR0<^)4}#dF+xc zTQ>3TcF7_-sfacE0ra>{bWPHQZYFF|jbovv*%)eG_bhLc z+wF325EKv^<-xc52K*S7E?7+yYKI`7wHH^s@z$Sy$#3)vE9y7jx008&yztbE3rbJZ zc=@^l>*oFDp2y$6yR`7ChLQ(zrPW=dcduBrt+4Q<3yiYsrM&D*Ngim1ro3}myhDN+ z^FRf(*BbxnM2jsUwmF`J&=9PWLL}jca|S3g%5+rGrdwu)IwZW=cLIQV5t_r5sg@Rg z?y(b^XEX8L!84%_$K*VGr~Qw~iJck&YOIWq2b@jFDJxFM;q~TCnYB2=o06Io!3Bz8 z*!*H#;IK$_9~llK_?pyGjz4{ck$;hNv>(s1yXT(dcQ;jdxl1dzhkn`)kV>#m!ByX)-ylM4Vo z`b26FgK*TndHH2)PF`7Et@C}Liq%S7&k4e$GiBG*GrPU!cyP4N0*4L-M55Au6-a0Z z)pVlmPyn&YWkYjA*BuuThhw_~XOM?@=EQm3=07KIt_WUx(E_F~-l>yn{UEO)j#PY2 zm{(GMJLHHebg`~>RuMG6pa=J~^?_!oTdSa{(wXLdo=Gqq>(J#OM1%wCNp^v`Zv)m- z&~RS7)=De%E!(H;?V>Flxi-xLQaUvs=Ctz>`@B+3jPOR;H6E_rsMLsXT$cue=<}3f z!AFmXXBFGeN@kVDv#9wj0s?y&6LI zDmM-dxt0z*+sg)rUb}n!E7#K9(t)D{0_>!t0Iu;&Sh#O4V{=fH-V#5660C*YH*>g##r^NB4rw7!5>@6ea7(VHeWSFLp5 zGsmfW$MyAyiaOitUyhnd!S2XdYV{c+Q5XpIic+E=biEmcfwq;a8I6YP1hb3bwyw!; z^q?6LtXP@6#8SHCmN$c)or6O|&XYf_s`}FkC!SyZyMOW5uV2MZ9{BNf*ZtVvCrl~F zhSY=NZ_x|w zw24qSh4=3j7@y~Jb@@3jL%dO!_+ypfG_^7)trNp7O#Ugho?;CYV{DT>#-@fFW6};6 zd2afiJhPF;UT@8E;(9B>?Q#+z#e^uGs_6qv0RqAYn5}hcI|nsy8q+Vbquh;(1~pGwrKQ z%#=bNUM1?aPw$_$UYIW3PL~2BLHRY>;U4f#8$Op71%>C@;R~d6t9`H??C{gHj&XX& zczH8ur)W3cyGkY61*1=}5KXpyf(4tIV{~YExNy1SpdJ9@Kh!`4|8p@H46|WY%m0R9 zkj1JbaDeU(kN}}Yffk8K#OOQmEK%m0$K?)ocrk_>JVAR9y-KKx;n>H47BL20Sk_Qo zmSh};%tNn!jVMN@o%ffa1DIdb*sGaWfu*FTY&8R!QB^-vm_ zzU!&IYi`Z*rLCL4`O;h^_Ne^)o0>!Jlavc@so_I)lkCc=cyIsG`At!C8_|a?wc9P0 z#G}L}ZiYjbZ6{eerM8bOEU2`PusSOGzc6d6e4+_tiSE7wD9<1To=$Mmo~*G*Vaisxp09~D?@7#Uuv(>D{C|BR^mX_TMJY0y4UqsQcKLX8a zHI@nQ9dy$VSd?+;FtsJ{^d_YBmni(+fp?4x%j59`bxm^A1lmFge z-#RM`%=-eX|HQm`a9oaVhv(YiVvV=M^F+8UFSo?Wj-)X$3Bvo8yN|cf_h(a`3(aJ0jWQGkP*#bH>eWoQP#?KDth`}Ka zT~lN-3uZZl=QJs8nbm8kEoO>$Q*28ZIh*x%w3o0>Yfv>;_59|_;>O~WZyjL2xx20H zysRw`vyr_A%rVx+ZYsL#!c~p67xdk+HaF)vEc+lKD&kDfBr(Xn5Fm;S$_^W-*8qjW ziRSgVQ$5(1X!Yx{RM+_7C&FVC$TK(s2R?>H4Grx5kJ;`K{_DdpzW9*s)(Knx5c}^V zkFftf#C){j^=F@b%ar9S=$B6+CmJT!t4 zSn~j;bo;#{!oRtWw6@<^v_|s1qyk>&jXz|WxFRT)z+!+{CE4&Ls0a`IJFE-2lg_eC zHgX6@08UI!OpZ+Dd#>i-`?8A?kD;A}pW%{A=q2HAIg9Hl@j5Qi+P`L{>?r>${rYRD z2bKTTe?9y>`{31A*$2-*4+~#?6&60vx&nDJVI3@e3|p=j^7vmbkTJs2SqFr`o+WF4!a?9f1xaH3S5vk_hh3?;RL`~{Fe!k(j2@i38%nmZyJvR>_h8Z;8q;73}`(5QV)-ej*MX6XJ!h0C7Av_QTYR=IrdLXb{@%fYKhQO19gFRBD6n|(ipvMPX zhCVkTS}QMe6q!T38wXPG)ClKverNSnLXDj4-d<) z!`eT63g>o8Kv=wV@SKOKRTeo+`s)D;*7OLtJiT&UhZ>5M>td&>=j^!@E|?D z#LN&PIuVEi=jEvAXqW7;Jo%$YE!A|YPqVj%?CUsX;n5G`AbP~~H!9YNG_v;P)M!d%t5C7lb>B%Q z_O6QlmvT`1BZ>#$FCuNTiDXlVmPXRj-KlAAzKY;{T9S%uhS!rQqq?USC9YnU2J1OS z$GDrJ<*hFVp&oSpS3mgWThJ0num1F=r`Vx4-e8BGy6MyEKG*fo49VbyUyY5i6|9f_ ziLJlh)d#UTU%@GzAHl}%Zua;`o$Qxi<*-365AGsFFTi?9FOoXb$0}-A5F<|O)T>CU z^r9}j&$2-)Tu;>FF}xJz-U(y!*oeu8jg0%H)~n2XyF|W+$12D34aqm+Xsw9*?-&`6 zbM%{W>4v{r)*BSpZN^24xNq4|P@Lb4%M)=U%pVk&;mE@{*extAj*JzMAaAxNO^!)Z zC1{RLN252Gbs7-Q7#(k`K*o5RkTfkI6_en$p}}p#X@lDasXOg9vh%|>qN$RBlMqm9 ztnlFW!L&-^q;^6YyPZrLr`=vQO>lb&nq0fxY?|P9LmIh!LiZIIS(Ka;l7XvfL4 zq&bj*bBXe{GU`SVv>(j9n5RXIkyvraERX@WEeTAQz6L0vvL?+Po9-5>BV6NtnGoNq zs3L7_yQqGjCIGRbaXQJKL@#ar@-0?GdvUrz#v5-y22K~+%Zm7vVx??^|CJ6(U62gT ze7>;3oUhm~J3nHNcXz|ak2>L$uW}%^&$W-8$7fU@TQN2U0zZn^RqfIS$Xv3{H#5dT z2_(e2kWZxM`Vb)jAt$wizH$l48jStICLz?+&Hsq)p# z;|Ak|pJphC0T`c}2n4s3&Wd7JEDWFL$j&Ux+;;Cu$bsDD`>y9dvcnh8KRK2a(m|;? zYo4n1#k$HH0y(s6-z{NL{myw={`G-aqp$l3(GKc`y#L<8y&KTiG#TqLXLXNlZzk%C zn1-AVsgg;_L`*|MNjyJyAcj{2nTy(~5x5|Zds3Gq>n=PaE!-ueQH>A{B~as@8I^mM zMX0KM#~cq%dKNtwoPne>cAoqeXF_u?TYbawQ&uirx-wTMM-M2wk8FJM%Lh(wXlZF! z**N$N`|!H^v*w?CN?O)EhJQsu)JB0R7EO-#E#e`HOqCth1EY zm;XK2d&P?-cYjET%{M!`h=!O_1PJUWl$u45&8OR}kMU$TzDA_J5x-X_&=uG;(r5Hn z2baxvi*xkOM;)qUHzovQ{>iSU&Vac-2W1S?bGj zVS%7P2cm#PiL@icp-G}(G8G^_1PPAdt2{LFTI`ilEk^c12UjDutUvh?Y2)`Ngpn$nTN=5tsUf3$i`iKbc z;W|UPd~H+Z&#XQdbHRxg?x8>=KxrQViR{3eZC-SR3dkgrtHggAZ$}SW&RAG>N=v}! z9~mi^vLW4nP+Bjw_=|V}Yotp5-qC9NIfn(l_O_Q)kiqhr>2Uz?-wMb(bn!f*D25v9 zS(>FSJa?Q14`>om3|f-{IhM!>x7nsHfmdx7%qXQ*;=8=(R zrIR&F^?u?f(q7g9dH!l%@=~MBtW-rzsc6J_(S#`d7D;`0Zt?f9*IDjACZ9WxLzz)JXlg7_^wX{q ziKIWL~;~o{z}&MgsG=cRpq|9QdKS5*bXC74K7k!x->c_ zI(q5!C(>_f{_@_%#c%)V2G`4w_}o(v_sT5y%j~n~o?>6V5_9uk-YvQ4?N5(+K+Rni zx-enRB01yltmBCXVF~=|Z*c1453+armxe4#h+iZd{q0hR1=gRbE*@+2F9DE>1=~Cy ztGG}$^u;ClrYZ4aFdCvmd#VVn5AjOoozEv?pbF2416uqD!D|MiZ~45e6WDg?z7&T_ zty=)my~Zv0abo%9%UO7&2bW)Ei7jgP0JqVClB%7Rp2R>dIB7POK@a54zx0)c_`z#e z7pRG&x;%2Eptz~Tk}I_6PTfmpktDK!Tx|d`C(#f}oQ_b*I+ZCP$(n>{f5uqDnx_#U zGORlmDF80OAfLU#mz$BUanS{6qgj?c5z2?=y3wYQ8Q4L9-GIuSj4Gn z8JoozTbhVBzDn)sBi;en`kUXd2M4?(=>zP+-~0x)4zN-7cZdLm$ASV8?C)$;b3!Z| z>}GYt!|bki*fq!ALIWNI)5-3Sf zjL>n$ca$`fg@)Mxkx0=LGMHurFVxlPX#aFr58j}gw?nTF-RZKK7V>85m4jr#Rj6!9J!g-b` z&4B@4s6(Q7fkB=09qGh^VIjHnM3fJlgs208f12k@)d9#1kOc%PktLAJ%t;|;Lo!#y za4Ed@VCZ3Zmx+B>*vz@XIr8;eKZDsfj*MK(#$IJ_uzPe8C>m&9m@55cgh(f(X22{s z7xyi2GMCmP_Onlo{Y)*MP?lLF*SA~-qQyF>L{O-Y1CmHMG>J?#d53DuCR`;=El0j* zMDRb+4*WE07ES27cuhT*7`L2v#RnxLBir8I*T)7}=g2P~Q!3bIecl|ShzaRB>x7fT zU=Ey2TLMMDdu|3iX5hl9yu1)5eX8~8_FaT--9^+8qIV%)A>Lj|AVIjXwt{dbTc!Yd z$;FKYSud;1s3O84#FEAKf?dZI?GkNxA6XM#8q|hB!LS6SadOY*T{b&;cG8?Uo+Q@o<>!zPJx(wkCXa0w%V0jhE?Z8{xz`jO@9@g) z!DS3&dc!XK>*uQ1EbG8&FT&|Sq=~KA!wVijzk+LUT`<^;_>!QJzi}0c#-+moi`F(+R+Xr*DR<`{7urP z@lr}%{v5l2mh3=9e#$HSc`LFcD+m@%ffA@95}`z**wDfe%OYecgxi+mv^8nT;ar_9 z$%UL$gvaoM!S8Q8CPIKl1Fr=LusZ@;Ny1 z%cD^K)g6jf6dt;%vHj%zxh8rfmFLR@6K5=SP z(O2<8auO-_g=WN4-tDF}VhAc}YJkE9)OKHVmX2c+P4fi%9Cysf1#A%sumts_y2T?6LWobAM5po+9iFD_E?C)1y z*n8C&Vb}fPL5P37{MqdfKt$^~1rI-e2SCeHKyLqO%>h<%;DL2_u3vxmhL;WwWiQTH z6oBVpCPa?FZC?#P&OUELp6k`uUHf70S5W*BoZs~(d-79OeTdcF=&88~PV9uLhOck9 z`LA`X{`aiIn7gf9zdldc_0J>M_`+pSNCHqL3M3j0yva<%-eiqOP)VWK?c)|K3v8T5 z0aKq!&=i9xRnt-1gt(<7dD2om^OEMJ@cS~Cj|joUpj(q|<*7H^Gd(b0KPX1}uV&>|XY36L)SvbL#Q94kJ<< z-qc4K+yN!BLggK{bJIn(Po3jn4G_=VxY-eIt}Ub^cda3Jok+}uArZAm@t}p0x|1n* zP-c&7iL@6|;ocAW*-c-vi`f=s6I8K({OS3j)p_x^4@jY-Z*Kob_rrrX>G5osEoPtZ zW}mZyZ{T0>L`yep{rGfG4|i-gnw`Cl@%6jlN}C@E1I^B#LBFR{qy4K$6B zfD2?=9IMv6@zKB~+mF=g$Q;!YnMPhHe+!rE&43Qw=L=+Ymi5BaMZK`cS&{kds zYx*6BETq9~K>r(CA}3}3P%lWY!qsd;`$GjG^UMy)2W_x)$#Y`C7?!CsSp|4)Bk zXXi*@FS2Tvp2VJKpRmu^D}BFzrL*q@|Cz|Enf`Bk^eWWTLLMd(s00PcNpln8X3vTR z2b^hfkjOQPHY`Ic`-KaYJMH~8+&<#J^b_6q2QyBq2SfR%G^qrb8Ac8tr_Q~Hy?NP>ZXzEnlEp^0mxJL zd{bNV&!1YjI4E~PFXg`DA}Cb^t{>TA+i40sqzNcEUN5>wHq{8G0l@(q&j$xRcN#Sn z`9>}_uzV2rMkfL1R1hQ^!^gn95&iM0x>t=PQDh!@!RMG49u_JqvNghEZCeDN0lOlp z6fbctHU0SDcuC4Jh*U6WtjlsrPcSP!Jsl?rj-^{fieM5{>5l-uDb9&=yJpUCXe0`v zGzW*>N*xD2%!|~!m_ynZ>^8LUWu&(dLxBD)nYuG

RwuW?0iKT`|NzbBK=e6 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 z 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 Jn*bc*e*iei^z8ru literal 0 HcmV?d00001 diff --git a/demos/linearlite/src/assets/fonts/Inter-UI-Regular.woff2 b/demos/linearlite/src/assets/fonts/Inter-UI-Regular.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..cddb43653142c25ece4d5ccaffa220c02bfaf081 GIT binary patch literal 117480 zcmb5V1CV6Fv+z4JJ9dw4+qP}nwsx>%+cP`1ZQHhOd&heF*ZuCj@5LAKDo%HGcbz!r zRApu6FSDwD%8M}p0RsU60gs;o0shutB(r}%`~UN|zhD1%!3u@P4$Kh4*~J4l0P?@U zfDAx`%0vY~LPu^HM6{v7jDZ3Hvw@KO7y|+&01LK(@b43X_4m|XtZZEQHnF+sYJ+>3 z^bf|<9A}cMdywm>b{S{51B3SCGW+N`h7Dj1kuOQ?W6FqO7NR4X}Iv5G17T zdM$A|bz8n_`2HWoCqeZ0!WysT6W&;TFijvnAOG)>ID-Hv7C9kE`Sn6sZ3X6j2xws$ zHN+wWTohGw#wVq&K(Zn`)e=4-8%0(l#PIITEn#T~iG@ioeyUwk?|@hl40KAFgre?P z;CGVzXC4EfWMS9-g1NiKGvcG_mAqY88yzlC%iK9byM7gXSw?tD8~@WtKekMTNMmLy zS5qxRUH5?DQ^{F~h2z^gLk#0J?yJ}jO!#(GDwgA!CBPC)IoOuEoU7_VJ^4nv*P|Ti zW0G!BPffXIEF^E^;3b#IEnP>Gr}Gd(t8Hy8p69+(VnH?+HpP`;$>R0LnSY_b#b8XR zdYC~j!>>yvnqRl@U~TjHme$vloh-`N4ZgGAz2rv3o!zdd)(0|t2a)ZwH>b-}sw+*i z&|NBNQv%$X1vNOZhFW90&Et);J#^QCibz>s z%&zaC?RL0@5~hJ`JUdkF@|vqg%%6A4{bL|KwAi-rnDH*_gT|j7Q^^0xqkVJp9LYoP z05}@;F61|}OxiiuMj4Oxx!9f%Y_U8S`$+3he-#Mr5r``kj%0q-MLLP17)oFF?=37H)O-cjdGHv zdh#Y1VyckxSD!zA+q= z%?R@5D9b_?MQRWUfcL{T`0+yFUWk8UCUE`a7Y7elX}r^OOIiF?*Uonc;#LXQqyF^r zvwRZwUdhzWjblbV_rk;^)@RN~m-~|P76$|S$|;pO3suI>_r59Ujbv~DG#Dz8W``WKx$TbNGT4zYC6K~)57XvbU!!NJ0NG-DB!+c$CZ=R`r z*&FWipB|UDyQl+$L8g5)p&$FLV>5|TmKn0~qN8+X$U?;_pDv{&G!GXyiz6Rt>xN25 zG$TDH=k~6l9%+C$qs?|t$Xv;r5DG=KCObFAAwszYQoEzOH`pGZ+Me(4U{2>AC5(*MAjMq@1e&6hzjkcT5bum~BRx1@s%!0rxt(22wKvUG~m1);axfJO)rzb|pu#+H+hImU7tN-y@qp7dy)eCzzZNRP`wm5m&-! zSgtaI!BGY}0zyF{{2us^pZNB(TZ3D}v@-XVGRF3_+J4@^tIh#dAq=&eVXnrS6E+L# zmU^LqavaDKZSeZNL~EbDHq5h}Z>pSkF1~V}Ff@^8F*K{_(KO5${f9s^HFFu^(?sdX zz%t`m^U#rRMbKy*{@Frv5T{LyCLzXFufdQu1WH2OX3A{me)HII>&M0a2x>Bc}3HLam|sA1lkz(hB32EN#oi+X4^wxq?~dNj zoy%)%E5J1ZMUW805d$0K%w4=hP?T%Y*Y`)q+RevwSG-C!B5wI2i4(FN86#*E2EpqM znH7y3+KrZ&yFp?ap*&dV$bnO(XhDu3yU%f%9q65h=h^AbG>`B8^r~4W5@2vO0v*fM zo|d13-`pNEUOB)pk+d{4DYe1D!GvhqkN_h?LxHg1Av7cs4I4v4!@40#8k(S&zJ8-f z;d)R)G&F6AT8)6gyR7_h zwWS~?AbFB-nJkfb8t5SkwL|Vncn`kx@5)9{phyO6=oUnV2L2|-XIu8suG9Qq$?Ko| z8&68e!89x-D)pr<;X#O`q+$8YKpyY~GZi4W$imR{O3 zO_pm$>nzv24`vz`Q;OQtyvAXvMXw%dUi2`@>Yk_WyfX)_R3axAOogM0w%+<8DL{ZU z)!E7R>_Pkd5?`voeB2AO;T#h)o!lKN7vE%dvmKGRwMTYpa^xSbUn@~GV}48!mn6p! zf1sK`@yn^pD<8T()@tWlz30gKx>jucEIu=IgvW z-{0~}HC@k~C)?VpK*C8F$uwz&Reu6jt=fdiqV<@Tm+iiz{`{bbW(gU_oFc)&owYqgvwOn0LfaJAI)R=gOd$9;$ZAV7FA z$*K2wAQ=NPazc{)b!N+IrQ>W=*BJfMB5Q~^lbufXu6t*y(%(RVz!G-*#V{O2(a?mI zhlrLf+2it}iWj=*K!_M3!EN+gz@?A0Jy*apHF2cz#PTt5w1h2jwDKt*^+A;Zve`W|3!6}W-l&1M1X zP=JEa31Fju!Vobn!bu$8m5al`GZ+-_YdN8~;e*R8>r!N-)6|K?+MieQ94SBgltT0z| z{&G{&csg4$N{NJDkFTw%=39Fece{^Qtbdk8gEXq>Y$q)RVNMJLt3+5D@TUAVq?d}3 z=;P7xywF}1Y*Yu^Ply|H2WdEKLHp1qYZmNFKu8nEJPC$U?ahVe1bWQARHRt%7i4oo zo>(ruu;L4G{5tabX-{g)%zgHL3qYe}0HIa@Ay*8LHg}R~D0-#@GO;}HzGYD*6L2Wy zE2CbVlQHbtafe_sCtUx(JYA!qHzp>_dU`c==vFB0h6+m93krJ#!58KE@!Bx~Pv^5QdJ<5Lh z?lCj{o{-JDHlgfkxHWCj&dmgnb^Q8(Y_bckD9_2P*5|i;`;lBtDCNv0yr%biZ?aa4 zfUnySN&q04L<3u6?gPC*W z!9y4_bb~cy1Bqwq^ZiMNF}xy<8ioW%vmry9YYc6E8JNo8S!YAO&_C#{Kec3cKW(}p zBTU_??>(B!v$8U2z*J-6(hAfXIx(H^LvsdxkXc{MIMFw6V#lufD)K6Mii z3I>|Y4+(-TT@q~8Ki}W_#cDm?^vFQOf)a2M=a_NlXTT!~wquUgekMy8>a4@pp6myy zfah*>`h#Fe6A=@TC>cKkG64Wo90)UE1gJ$ni9$GNDX@SWe!~18!Xm2!&2lbhD;}u0 zBoQfFiL&x&)#z8dqfV=+4etZD>B??>Yd7yNqsP=PE#DU1?<0Mm{-LbcBgb+mi*)Iy zZ|j<;ovhtUb}u&46D)Os6FvpEe)`rLpj{BZ@}mQ7Vj-&b?jakcRztJ6u+^bVI0>;j2P&{Xj-FKU+j(j(oq^=VW0rBKXpdFpBay#|BTpaTNP2Z zXRNB=b2xr*4Aa11cPYuAWy-r!Cvw6X(h$-YK}c>YJ*6_!f1&87D8JX`HhvHE@jpU z`&@pi4A6KX5s|`pF&yWHnZ1k4@7O+g?S!c+dQMs>je1H#7Ho%9lVnWP)}9)K5CLLU z*Y%iAu>NINHMXkrxuV-l7>gMiNKF#r0Ai%wmzOI|2m-${Zk{00Lf}3~LR2AQ$SOjY zz&JQV;Gks0X(0+Y_=y$?^9=yAErTYWHnMY)ikG3#$Fuf-_`!_%N z&#oS#eSXn^WQkfdC_ExUJrWjVC|l8ff_MgPl1Z3Jd=q*h5*lPEYSI4l-Vn;OtFRzm zBEuXB4jc~VF5M`JO%f#iFbRZbIT{qjc`!&c(*RKq4Cz*Ioa!U4<%h?)ae0D|q?{Od zuHHR8yi>gU{;|M6_YY4595@m~KXEFwJH1AlOiPkm?=&et)MHkchzwmNbct+Jx0Fff zYEZ_oiJNV0ZwTq1Y_)R)NOn-iVh6N3t$+5!w|)?-ey;PI55YT<>ga?=0G!zw@iO1U z^IzvWaEXefqpnk>dL|BsXdlj>+`ahEcMwj$L|{P;n1p7-;@&Q#Al|N1uW;VBwLQQ; zfqZ&`@IZh*Vu27V-*>K;87{uXH%MK8Ab|)VVUautfPz2*u!tHN{0M=NOo2-l6~P|6 zk1MvSuN&4gs@9;(u-ea-n|OwpwZ@X-N&5gYpPk9&fjF}fhcmM=lbu6)HB>sHV%xDKE5`Uk4m(*@p@WSQCYUOG z7JW7nt<$WtGdUVyv!x3!{>Iq!eXqGRoANcq5jFfd0QsS z))R5Og^hUnO#VIzzRtMT_|g*2$KolSIIvpfiK2~3XR5QB?I#C{mgmIDbd_)TP}Ip>N45sl)j z;zJEo$!H-(1OmnxTap`}?b4^@JFjKU);Bz1F*k)un>;v)a9mv|Tg)z$;P5N?wkICl z97*^?E>B|VYNB59+bLzm=;b62X$Ad<#ao6S><4ZqZ#$A|XM-9C#qZ$ncEAI*8Pr}x zpp~clFEdXr;k-AMvZj3zD8)Iiq4<_Nj+Ll*8DAfBU6SlWQ%(2rCb1CZa|Ea>784WE z9lfzcUe^4~?N$fGrbT8JIvIWdcGo1OFf(UT1|cs7czhhl>W(Q?>v$FCb^E)V`)(Ty zG-}7)MY3HFo>)Ybev#@i;e~F_vob2yQ}&~$<_*8Agt4!+I4i!TA<*T<8hz>T=GZ%63Q5uLzSgL@nX>zMgv^J{cDKuYag4#+OVr$W?mP`%rb}+P2({}meLLzgjzK^ zIj&~sCTq>qlk%vcvGZ10<6AIkN<5MvZ14Cu^=S67QXV=a9tJPG9~J|4S}DYbE3iaTaJgz+F^@ zwTyKxcHo6!2c-_^9Z1R$+h4%Y0W?9XfcZBKTj<0AOb}6>2vs6=5)~`RK%)&1fGo+8 zF!_n->Tt3RCbb$E5d$Q+4 z{T)C44FuT-8Lxr2wfo42CZ7YRH|AcSU@(V zWzb}`P(2`?)&A#n38G{NsIw0Pi<8W*Lam^WJn`>kZZX%|WwqTd*Poa23j7`_bf#%| zdHf-u&@SfeX@d6g0yM?K6buuJiaroTX@ttYgU#vG7alx#QTAs3OdPV)-%Lo?>jkX?mnn=$~ zyjJYBZM(l43+dNlM8HrE`{gDk? zT1S3z9HKJ~yHu#nf{s)b2u~oma{@U=990n)ip7!}j$KPVtchf4zQIl(V5N3@N}va! zWm7>rjUIA00bg_F@HrM!Ua0EwePY92)Dth7g&bn&ZtdZ0(Nx^gV6V(bc%dO6PDQuQ z7o@ami||ifpo*S0s9(jQi={`57(^CBu2QCi9Yt0#bMA0O8q|PhOB) zzfE2U_+UZfzj(ri#^PA8@Rts5__G0wIG%|Jlw--b(HiUYw*go-Wq zMv)^MP^DCRSs}5&M*6r!Y0Tv2p)*L-n`A&Y04_0H<{H) zRQtauxs7<8{KbHw6_c|12B}iQK*l_%Xcf5>Mg_>~7Fy}?1_Q@>NHaD6SML_B7KrU(!2HPpE8-eaC|I5VI!vqoq2%vqBP<{lzCHxFj zOY?EOOusC;S;|*az8kWB1UQ2+gQ*|T3NCekbiarpj&b>=nWtSL-?Em7HA(+2HRqXROAUnh??1PfSV?@~F=J~9c3w@1W>I-h+ED^6qWj(mTv8p zB1#R&PrT0*obpirnu4@Go`!KAC=$m@EZXd%1a5rN@vi9mI^lbvkp6W}$;nzQC3-8G z@zyd&Htpc(l%Oa~G{#Cyvje4A4%+DvviU##SS?%R4mQY?nV2LNR8B6D$t1S`X1{ta z4h;gBo9ReAX@s;5B2-n7m4fBW8B1EhLzTX!`wO&M)%w{?3YVO9jLmZvMe8pmSDL!k z`Uyq*?#ra*hi8_erpY~sQ>JnYg>VyjPe)7t#NI#^S`xiJ(qA;nTFjcoca zKIj|O%iYVi)P6X_dYH-mMwF|7BsYs^sh$(m5#3x*>`SdH#$VTkfRpFEk;%B_Ha(tO!_CcdYMrE^>t$9}j2Z5^(;4pZqP9qAQiToQQXnHUXOw_dKAKt-wdqq*~T*YsXwDb*=05 z(S**DR=6vqEvsKKluoA4;G9V$RhlO-mZppd_;+Zg(CzcP&_<;!n+JDEGRvRzUBE&N0Y)7E@$vQfR_%sbY#jq@s`LYUQGT} zCT#88^u?T-^A37uJxaej4rwdMy+F@M_9B5=;G9Xb zhOJxZ!coi#g@}$Jw^$0 znT{bKG@C42>_shxjo|i(KEIp}*I-!P;{2-^!d9qfMv$BoN*w(W!-@h`VciKurc4UL zEr*EvrN`ro^ARc|3gA~L>L>r4=qAJ6=ww?v*Ph8s#Rkr1-is26^BkY%(Nz;C6&Z>H zg2MS?Q|{~ggdP7p*aeC&3Wu~Fo82v(xzK>jUa0c!f4B{wFB*`oK_Z;{KMgN5a(IuC^X#Wq9Ke>BT0EJQfb0#y!|GR1Om}e2oqgIQY}Bm-oV0y#`^2+gdgZ1+Wb$hPcHs%ik$TSQse_q ziz5b5=s@B)3KsCl0pu_ereLXphZm4M37Yuv!y{`J=iEdYwh0@~lr0L9XgK-oF89ad ztx$RW?$4LU6a9jvvwvdLUkN6c7Wn7IGx`vi%lSjm`$;5Mx+swSt1Baqw}0;GzU35l zoc-@c>t)_f)L z()7~z$yzQq3`g#oG$oc@Fwda1&($EltTYXoHxj%G0h0g&8tz}S@_&U*|6=aHorM!i zTr+A~!<9?r&Mx@X>HEbXnU@e;T%7(~i} zW>cVhMK7?vS0Tfa3pW&eq(Z9n; zcm@cc&D*;-sE3s$d$ENWKLHiSQAvz($yNn_n@L`37O!)m1(ul+KuJX;L?D8#cOp99Jh^LXVP;GGO#IZFH<< zE@$CXsCCJ#+;OY3x1?r=7>N!VuHQE6^_iLHBsunw6f1U*v0#n(vQJ+&2V3DDFF{GW z8Z)W3^6_N5=*kh~dVt*nLts+@Ws1hbvII%;WLu6ayw68oyLsYxUi)R{*gQY2wG10Lq z|G)^a7!4qR{I8=tl5|ynHJSDHR7G9^Q3!8B7>Wj|AcH-GeU@{VKVx8+*Q0q1?Q zaUUgkNE7A|_z61RcqzZ0L zy+3sTBkmkS{xb`%{lRtt^X=wQ+F2B<|JGu%A1nN(yfPv#LlEp;4&D*|HJH%|Q>y5PvaQLeIHOU#6@bPX0$r0y{Yip#Oyx zqDwRxfBi}uub%!rvPM4Qzs5u^UL^_@6dpjOm|#MwL|7ylnn0+WV#DclG!{yh?qoeV zg-vFWt}#DBQRr)K%DWzV^ds{CQ-(cmDN+N;5s5@Hp6myZfXF}dF=63+)G^K-*67HKL?R%G4EHZX|Anu=)L*#z7T3EkVG_Zn)O<(7aS7F(I1S|3s#Z+N zY{2#)DuAP%;|j$zX#*ZDvkm68dJ+h)e?{D4l69J_$1l>mfk3Bq8Z^@;e>k`bStdAn z)+ef~0={5nA^k|Q5DUD^7)FQ}B7WIW0HwAnK&j)-pW?`v$z8E4)Hk+B)wcf==NjC* z&oxLQ0kzUYAO z6@R>64zyMg&Nz~1mOv8fe}$;26M!aJ5Xw}iLTdnHrfMJ$=(v_1%c2x6%v zZ^$TEM9b+O+`PaG3lVwxCYR|y$sPasCkN7elYf|dWV^Yw{_9UO4aHTpa?V+~gaU;@ zX(>OF`S6OSTi4<6+aTn1mra)hW`X{Mm%lioa`EDYlcozS-3&|?P)U)SrR_tWQqhg& z`?;~M&(fn2IsNv#Fd}?Pt{z({++$*6_Z8i=>cStaUwo0osCKitv56NJwH)>- z&D{NhT@YRKUa^KJ=e*5X&jeT#pNVi);*br zwI0jKUf7!4{}A`2FTca?;a_NfNakTT%Yw#?P3{U1J7#b%`CW)2Nopi+2v9&s0jI+t zC~>^=Py@OU^-kP>nRZ?2{=^rZURcN&LG&+M4G+j@FDP9F@kE;R^N1KV;Ny-z&?a$C zb?gP>$WTPC8)+3fIpTyvSfq6E9PF#Q-Md!l&?Oz;oRu>DRlH42B~fCwENQo;tJ#Bz z#>AgtD1zFzLmmy>XZvS&&0nuK+*XtQhx2UAh9++~=XeA@gXU#~J(@fkbKKa~!8|=g znb(5T#FmXV52k)MINo_nFyCyI+Y;*q5in^!lVdGdOc3T}wcU%Hf3gP`*aRtYqpgkd z0bX4KX?B%BdZQ!I?n$0BlD*3SyF^imN}C=`V{3g)sVKHD6we;pfcKRs`s%`QX{SGY z!kg>0%9B;>otT*Q;pA~po#@@46=%axdiN7s*I7PsP&3U;s#2smoV4vzoI;$9ya9An z4!3VG!<-|E*QlvXND&q{n0G;=yiDk>R(2iFcxm-KR(1js)kPXyV$5(`?F$kJ2bKUs zX4H&YV)}F2oNkV=3)|IAs0{O%gB$!i2mNl|Zu{R5vI zv4 z6_69??EWY{clr&fvEgTwB%VPl_S^O{DYcwkJJvUo6H%cbV0X0c${%rkE8Nd_Pek`X z?^NHio&ZW8l<=|m{jyoFJ<%h0wimS``Y)bUad8>AH4}MrEAx*WhzI^3{8HY{uQ}EM z>Sx^b7&Z|YwJVWR>5Pmv=KUuOD_`hXfk_n}KNqs{Wt^PC??>T?k{ z^u=4S8T;li_$(%@?sWm3!#0@@Y^(ZSzBEncp|Qk=Q&PyDadGS&u%B^CB_ScNo^wl7 zK8}bmm+~`K;>55JjyMx?u8cp~%&6vS=QFkhIX4J(w}Yxr%bQR4sxN+ek0}XzHkEKS z_Ox8&op{z2c$TGdSF5*jiPSus_1s()yC~t~cg&pPHzB_;-SNPzT$43q+za%3kH|fy z1;x2f+gby?Gy#_KGLrN-oU)?xB&dc|%a=>$IU-S3a5On9&ezG(Atk+|C|#$k^E3%V z42eTbsnI6pU{|Iv+z0(3nNAJ-;HF1)?l6!I_T)BaF)+)JnA#E(h~LYmiynP|&q-)U z6)j=rsLTQPhqUlocl*gy+6hvs(y9e!mRRvAcA7@I-C?fU%omo9QF>8Uw)G!h!|u8G zZfwIu5?}XwyBUP+?8E4lvsMYb*zVK%o7P>LjksjfhT6uN`>?)_a^D;8$NLP?Il}lb z7(?-KkicS;CWTg`Xwi*Efy-P6r}@;@F3kQ>GR|Y8Da7C~mAfHR%?gGWu4%swHn;&N zhmL)wD|U8mvfaP*C`yq?GydA&Qb{6b4uIF)Jpo@~-so*r>3zSYfoX!J!r1F<#`uV( zimFrLsg$93S@L*FT(F6_Ww4o$bzJ(gSzYxyhnj9?wO#B%8o#o)6`(rgbxs1%I$yG0 zSX9MjlzX59!pLj}9-PJuGf3l{)^7tc@>{v^RIQ0J;CDdrsRje%avm+|kpF6?i2tM{ z)2M%mGeH`A5E2n~`ey2Lx-1*C(HEtljnTM;h8opNeW}Potz~$g(E_skfY}kReoCAP zR!SmDHx26T&?NY@r09-%m7hTBL5en;Bl$io2es7B7{w5opPKOCx`}Z{3Ohm?{ z+J%1*rW@0-N5Zr_rSnO>%2EWfdVpW)vz`(9m{PlB^7>6WfpB_bfXi7{Zf*jTiE9Ea z_u(k*Xd?Rk5qfT(uzx^+P_QlvCG=1P4Brc)RFaEgISW)lWrouc7%G);a(RFiYo3~| zVAk8V<*Y)Uru2)=EW7p}f8}M=Q!gG0fC&*#;BJ zHFSNdN{zC5tELX0y6w@BXn4K#vpjV-?6n5{yM zEG9Lxvw{o^f{>8F`-7~4BCrBNRz!M2=%*O2wYBF42QL1R+M!{k@QjYQOlw)A@f+A} zA95&Em(c3xX~s!|yn*NX$#p;|?lP&sc=m)+s6Zs$$PEW7l#eneOC=q8B06 zCxrnHB`6_hiYoFo`wHGt#D50iy9OSX^ z=sH5Jmsq&f9pMfWwp^Qz2!#54xOx=1!gWSLNTe>n)H*@rV1?i*I9>_#(bJ`#k`8E~ zf{9fGw&mnJyE4sIY10W>=0+4Y1jsF-PVv}`++j>oA-}-!!xf)0^TzUEy=-K<1YyW6 z@;OH{5T`9l2}#RQnR~RQE}+a(wsS`+`ww0=8>^N%H|R_~ z6~UZo)|i(!4G|f{k?$TmRd)@GQHz;f5mRFs zN!uuqm1WBaT@-Opc^+3t=!TRiB0(mxWQewKl8RMYt-z)&%Y&~FM+V=rf~xgNYKfEe zTaC+!GptLeH8U)s1WkCO>5_9scuIo<)gG&)PSD)ez@fjYVbk; z*>@`l`D=6s4FoZUA&3~3?g%aaYUB`}W)}oTV|7^n7pC28;17^JKLHMctWMiLT8mCr zo#wH=PFtwQmg3;Wt@Iw3?NvxSqw082Bt@9IusVIc@F4%-mNnP}_)T(Tapky=S+?U-T~=mz%)f@6aEqXqrB>Bw z5|JhlNO`AF(;TrDOwf;(Lj{;}gN7Pw(ZHcnjS^hXuH?@SA{~0!;^{dZ2h)gO#@zcD zNE`E?79T$M@fj{g77v}8!P#TcE-YcXkDL5ZgI!CtSZI{e+z@awhG5J|LonP*!ynqK zeR!T6y^d5QjqmMUay7w2wy!5o>-Pk5y05Qz?=$q5FH6@ZIvn`gm5x`N6QCVGZxLfX zN{q1c=lw(Ojma+6=0elJBf-G&-&GaoUeo?hNt@YXxc&_ zQ*H$Ut396;(WB(fs)B!fR~h>bO1DBM7koJ&xuuLRnk#)PpN~r5RmFyYyh-vFu=#Gi z=k&}81N~xr34p^Hh@i$K1gYi`#j>BxuofBoF&k@x;Mr;e@nRf8fbCYaK&dDW=O{&p zJWml312qN-LG~cKJ@QHiLQiJXZ)IwQhFMpgS1C2K#EYr@Nh;TTl|mp0?&VL4EaYc8Fl#nG8qu0 zm|3U^?}zxo_n+iVk!0jnYL%Tc_r{ib>XqTdv>yHF?f%q=p+?Q5QQ8((`Xe3`*TcaZ;9q zC0y0XD?6F|j&LFm*s(G)!#gAHvh4TbOIFe^NR1o6@zvjHpC^_~->);4T+R7nzB+bE zF{6GEpde-tz^9pwHjg@4+cq!wjAXfv(Y|I=D<1{kyht||#$ldC)C5WAvs}p4No$$9 zHbzv`Ij|}hYL!)Sl_tJvo+xeulz(F`peo&fvs8iwvlrjV+K4r1-!5~2xOx&`++|}z zRZ5tMBatVx#rInalJUm{NFcj$Z$^TU+V#oIZ#!C=j1g&H(_=#)QpJ}Dbz@n;K{rw? z=1IgF{eUGrevI*ExNe~3w+s5s&h2Q|pI}?U9&(fj13KZBxdqB-|GZTsKkD{(*P+q& zRVa00_v*uiS?w=Z+wlnR#SG%(&*@D9E!W*=T7%c?`+ynEjh7#0Nu_ zXER$47a!}=*y%C$bO{^AGq)<*a|I;XJ)fOU3t#uMulxF}hw;x2bJh2p(qu#D?k%8l zF5+YF9>T?Wv`Ohv^H^qp$4_{>t`rVbc1oY#|QhtreQ@6u*kEB3iIbM@Ac z?c|P_M+*^7RF;Aw-fe`ca|iy%iIbP+ov%>eP4mxv{ii1WJM`-bwdS`B9sA>GgH(8* zY|hM#gDlvPgS6yQK$Qk}?++~5tgaLhi6jCnzcL3g(D}y%%d)O&iu){$F&GE|jet=< zAPi6=IfIWz-R;JaTD#9Ly;Sk0S8mH#%>%uq_EByqT!qrk5Nu%I41D7tcpvco zcMqV6&4EC7)>G^IcG2{|OBqmqC-4o$){jCHIrs^(H>9mUz(R@wqbu(J_+NX!xKys^6z zp>#a_Wor4kv}l1?VYpeOMj`9QJb35HT;i`d;8|SXfDXafT>4*rd;J@)h>-XUbNv>UpFdD$nmZ-D;3zHbzv)iGu`*@s)>U{K1q&{4TxfsSR3w@;H5O zJB~Rz37DVwxXY<>SKym*(yvE)2iyZ*d8~gz1z!BQnlt*eCJj$)Ip~HTLkr-$*S{sp zU@c@~Rldsadlqh!^ff=N9`&ty43g%KS0?e(Oue^Wt`CEYrEaA36Yz>|?7ozhVcy1o z6&cD)!r9tSjl&qp;KK4^xUK@MuiZJs>FyF>T2Ve#Fq#Xo)T>2n_Nkn5Ih+bPI2>)! z;1uNpi=+y3!8cTvPrwidD)ZaQ>hpCA-Ldvh!w8UvVz_K13W+j#>tw=B^u{VxC>j3l zQ`bIM#)HBr-1qsBL{nTiKZgT7nJbJdR%m*TM=ej<51LXN$jlRWr@)NycL|y0&N1Cg za;e~vp%(_&LfarKUj^4Y?5Wct6dr$_NaC)f3zos=%d^<>Si_)fiEZ7kW_QGNvQKxm0R|{|bU5RFQD~w2l z7;5rZXq}hkGwz(K?g%B&g4)Zv**L*BT~+J||I_gYx+8?TBd$6Y9g94U)f#tboNRd- zYM0rAFM06R!q{E$B;G+!JYDMr?KiSV>C5~b?O9;S!RhPyClJp7_OJdKC+gXj{!L(Ga70+a`k_)qwS8O-F4UH5<8zes&QqIAhF6GYN2GMw-lc%otol z6mWA2G)0z)?Pj`Oil^d8O_*gQH-*{VnrfRV?y>TScb#BzC8Ki4S(Lj%qvU!mNiEfC z_c@leCe`QdvUbI8+X{q^xDa_QvWlnB^7ND#)h3Un^lay*l!76y17lkY`h`UdgXv@pU>9kaK0;p{Hz^0}B5UdB9T?mwn z$W?#;>=8K&4og+_3q#LSTv2x74xzCC2KU9?t;9^e@@LWC-BR0cye^2~16cVce&dgC zPbRhnU15{}O@?TXNh^407`BJ9Sy4nAYjxU7%bePRAIKZ7xDaJL{0kz~xX0%}H(AQt z#RAvmGHGuylWD^j7yZS4>)0uTlW%{?S2vmMPlSq$6zv6UF?keqea*L`$fqo;%9aJj z`sA{AvMbQyp?HVk>FtD1$=Kt!pzPZ;My9fF!r3$oIwpU^O@M!*uHhgiVEB~?K&)(_ zk|rP)em5cJks`=^Vps)I$u5Q!GMDJ@hxwiq2lX6iX6ORVDGR46IXo*$eTD~(IOJ|T zneOzSeb3omMovckhV;q8NwNj*^i$+&oGUoU_}bkGEHI-@#L?p#_g-d{M=hqZo**YB zz^QYNTLd(p0cyF@3MH=mN5lB0##o_p`LwGlF{LPbr+C7?D2)dP5x`xy9}KkuTq$_g z(6Z1zA{El4om&AsN(xTA4Lsi5Mol)@qRuTRed4Isil)hK;YBy7fprTWqWQYMH{6tG z(41%4$a)Ov!9eWopfhd?TfjKX4)AtKa=fV{f*;Q(CXERy}_GW5$xkxdb@5>;XrY#x^=h+CX^vP%Lyb zSZ6G7bIe-JYju`v^xYt)^qjer*&t+93_|<^JW~;}x=F;CqFXKr+IUc0#rRDLBs_)t ztiS`9c*`+FMrpE021%(rQDht~x$#lv&9av0faN#YmpekG^hAt1Two`OH7Ih0p&rN3f;P3|S+iegZE%&2@l1VmmIi2$`e~>PB+c$d zkxeKnl+p1iAs&+Elq_}oTI(j;r|U{*hlV857JrGBW@*)p@~(nXS6UTRVf7TQM(R^- z)p0mU$f-&8q4B;z*0SClU#qxZueHZs83}-(hBNp_m;fJfq?-WbJ8wXT2CA4uVt?i$ z`yjKB*p3si{mXC^C+%j+up0XEk-$J;G^4di0OlbG&5V%iuzc0TLOyk?xFxUpDyfbl z)LMNHi0LARLu2vNe^PhRX#;>OkiPD$;m6LdIpB_dT1_wVgf#z?>K$+C-S z`i7dAG4QzSaecQbM|Yl?9;cR=#3exzB}tMcMN&y>NrNrq=u_l$(_HvPLxyc`c6+-u z3`~6X9YR_>4%T2GF{=t$P7$@B6YiG!J`F>>6|c3A1p_zZQn|e_S#^HWP(J>G%XS(K zfw2VsMLNroG{~V9zs)yBiz%IeC>B$0e-;uZlyO0nZa|4O|5rjjz)E{Z&XB@|lq(iZ z_{E?Nz7@9Z*tKWhfv+eIeFHj;;|L>(7H?*mLyN8k5oP1fp-Bv(GE$3k;d$PTng+oO zFJn^f#XFez8yt__cDm_DP5YYO=##GuZ!Hux@^*nJ*1HRzS{f^09FQwi$80JP&o$X#v-pDbb+gIYTM=@Uft02)? z2m(P-J_?)%@v6vmtZ5U4A1)@ZJXf>iPR7O{<$&&!JtI%KR z7N&`5%hzhc&RiT44(f;~FmN%jaL6d)QL(Ub@ChVICM1$Vte7%% zMqQL>XAGSr6;g&Ax$^YGy)~Cym>5Te3Xa&w_FI7g~x#A37tIltr&0VpFOV-77-Lf7R@O@ax zN{3n5n%2A)W+}GztLj?+1~#~nNerWkwMz)ZLnFuuKxjp6m#_FK{Yy~+`kn{C!?}3@ zDF$hz3A2I`ibNPCH#?rqh8jtip^2uNX|1hpy6d5*UV7`JuYUT=lx3DVvMsP!t|gXQ z*#K3WC+)cQv(CBblFP2R>YD2y`Ipyy`HGc%oNxz;#$a)jBx)J}gm8l5MM+jv&GmvX z&5N>X+OD4fkYzhrSvQN-db8dAhoBfvaDphwisSl07{y7N<;Cj@Ai_+LRZX}2Agt=9 ztzu?xYSgMzuR)_G&04hjM4{0cOg5LFUdAIaWvZC0a+yOMHG3g(&5TeRZ(@?bR6AHs=nsh>*%3s;Q+`( zh@O!{7=!?9vIcepxuwyc(>-t$bc+y&9>frB-Bclwq+Xs(=|bbof;oaPw2ggmpDZ znzuoq8QgOcHocIcKm${l!2ymd7!+QSVbQm$jqK?JB1{=75^P!AY)au3=PTV7>C)od z7BX<*<4}P)yS-Yh_u*;UUZ@5WUe9mD4z(Vuzp1E*wR$V@~bw987=L;ahgffm7L`hauO*hQHPFC6zTK1E2#{|#0 zk-XDaY@t|;aay9>?Ba|QZr(#@T7b6%#CCkmAkoLBR=tnyxC&SQ1=sH>DqkkryJir? zF<;Ts9tZ*?imKzbUbsony`_TWoD|}|Td>F6EA9VSIuF)Cd#*{gdN>F3mGwIK&-|V9 z`8WR&Jk;dtn$)IVQ;x)@HEn5ce*Q8y%4%_ciI!}smTsB8IxCa3FoIL4v8m>B^icO{ zJ?gf;X)i%6>|7^{Zm*1MK2|g* z*7)6=e^@p@Fp3n*^_6o5X?fMif2IMZ-rvW-eFY$_AhtQjnV&~2wMZapmvcWP5FMF# zJyCU7nX|#|+hUV>NfRphcK%*#>3k_nO|BJdftP|tWE=pZ1go*M;Q>GZ zIP_(;4I@L1%l-d3FgZ6Fz;ys56abij2>?H3;7J?i{P^vy23A)3y&|6vjdnKB1k z3-!I7I=u_KylXqDKlE^~Pr+P>wSV;bYng$J*oX^q#0N7tkrLfe99?l7e=w&a=(Fca z91K`+;8BW}2CxjWfaDv$`7e!DeJV#qDp!qCgjTP}vTEzQ$&R&s7p}T+&tuQL^4jkv znQEPLlQwmxnP(&0InGB4GNrKV6y3jWXSchH>yC6Mx-;F-iw2e6S1+Y+)vxwH`l9~3 z{=ad?m_I3*luy5^`1^A~P-|t$@BTmi|4$es@AMSebigPjNl|K4=RE3!ArjH8}sNeu*rxlF=yd(gvmHv#y0cMC-p}UH^ z7TfUcx5d`AZ=~JYKC6$mL$?T_x3F<*d6`q*n=NDW$)@cl*T&h#(RRM&*e!Om z-3S1D^#8BSx{JAQOzsMEB|#T!`HC0t&L!~X-J`+$r1%X#L?sF%fazO(NUaxDPZACWnyQjLkO|Y2%Ernrb zI3t3+@>(dXCA^FLB$k?YH7lQ8Ht^D>ec0XDzdDI2{a{8vnbR*B9n>UeO>@z#L)zwh zzVXyMxIRVe8$!R3`iHVO7rD7w(lbkYZgp>L%-@wFT@B${?_Dp^jlwP`okh!57bDwr z3}lg};!JaKrRDrGR6J!{DG=0!$?Y`Sfw?ZC9F414{Rg-88;I#AzEI^XU!+#WU3FX}>jhQ)&ZvZQlKSy|Xq%W^9a+gt|uPZ{R7`+VdS z+*@5N&)v3ttE95XivCH?x*Xd8I{MF=F7W@*1{UL1$!?cYMtM`ld0Rp4TEXpB_3c%o z{jzkeTWxLm{(3*G>Fs(%{@7%{`r5^87=Y8m6gI!t?fg-9@~-aYea&=Q8ZzDY(z51D z7K|1-6>sIYR)1LU%~Wq@*2jdPMaOcRuX!t~1&Y)uVU>R@F}yD74X6x@!MpB=;^T0@FL~e59sH1A&IvC6ZhQq_(Wmq2zU!aT>pjOe`@XH@JANnc z@EtwzCx1fk`#X4hZ+}0%-M6#KtF(%{caJxCRafOnzpGF7DLsiNyf@$Ed4DZm?pL@r z_x!eQ=eBQiA1w9t?8CD^YgQ=X3<8X7OZ$sTI;<#Iq}Iw>5U!J}^nx^{eK~ONz~**) z-JbVZY|la~^wP-he*F{JYk!Pj#lk>B1W#Je%%Pywx|`aa`Fru%_Z|Aq%MN;07^Q!X zXFapMGZiN}BX$wt;Ke{e!-|FBLZVXeI3fXy@koyCffQ>owKdyZ^DPA3OnvH7+r|Fs zo8JFsX-&H?M=$Lt1)idpEIZtvrEVQ<9%#4>cdg9%-S(xfvax%*pP`PaP)r?Q7H=XfKT!g~Jt9_E5>K&v_MD(B%l_o`ow+2$-~ z7t-%41wEVe;Pvr0F0B+Vt3M0npENird(Et6x@S={>>lily5jJ-Ln*+xeHYo}Fu+BO zRtQ@(U`J9OY9oIGU>rc{OXJNQDGhawGM!*nUc;GHCuhYvjAY)tu}vGrQT(C^!9ND^ zy5+-n?o@2gc3;#qZU5r7Z+jQN13R+AJGA3Fwxbt)jZJE1{&jk<;D#@z*_X7RcWIZG zykAb^)bHA9p4MHzn|I@MPP+JraqkZo|%-3zvj9mCL8twpx1#g}p&B{caN62{ntGY%=)n44|?_dZ_wbza6zT;`4SkLfAp8!VL@Dv#bl z{cpOwZsyR3yX?-poX)@8Mql3bUF!8*{*Ct3B-X@W4tc#F0yuT1eW))BEwy)i{h;R& zo;9YmxnjaNw#!&988d3cu=CCtGI$Y*6E8+Ag!hR`|H8K_dTO>LLrMdEWB>2JgDzy6 zx%h7jQ9A6X<4*dPWwa7fV>(+#gS7UklfAk*Xr8Nf`DvfO4h85~piTuD9M+Ix4Gm{l zc*7&e>9G}gSX+Q~1zO)btMas=AQy^~S42VBmSSRCiOB0fic0AF~g0q zz@1&fh~kWlXjCMlBO4RN*y4?gYJ4&&}pTFxtK9yxYmsS3$hxuPw=S$gS zt8DZCvdh0^pRd%u0XovJ>uUSgWWTAYep}ykKway=n(lYC-WfIDnYGYawbh-~G4G`(OX>3jqSb3*PX7FZ|$-00d&EU3S}JuYLAAu<8wBkb@fZ#0+Mz9(d@H z$DVlVndh@QzLPV#lQ;6opMojutKHrm{joc{tGl~rXq9bqW(<-nBz`3>6Fv!yD1*!luYTAP5G$0uW{Yq z1C8&&9_ry?9}cxp8$k#`g50(L_I!7DXEa80uFdt)GQ&&<9dc&R-p$>bJA)s>U7UME z^g@9`MJIzpU(ARnb<%EhEQdDflTjPBUK_Pp{%3WZXEU0Kt!I_mHyYa`FXWXjb5mCI zdiTj*GfsK3K&i57)2^>-*IlJSuC=s@`^?rYU-h5WL>?ceU-HyiX1O}o`+B!aFs_Lj zc>OB}E9ox9-ZQ>xbS4fO;bnfyzj2sjUWsf*QyLrMVM%xp2fo|JFg1KBuA#=Ed zJK~%66;H&U*<2)S0lV^$mGSXhD2H|#SWPi6HzymEm6?&AlAM&75Z_SDqVYJEcrNC# z5zq5$OCEc|2__nMyd{qRRX6e#&*)y$AJ^U4jk6@RbZXRVP}ltk+7l#x#z{_knRqK< z0)z+s!hIq)+3IKF0%gz$09I%e3RtO;9mKkqrzeD6%7tpotQN0tUty9Ng{? z@T0{PA}GiZpu&JovY6DvqzN`B#BPZj!O6e?004XqOrHSZC2O-3CyqTLB4;EdVaUj` zP{hkeMWseV(=0)Plj!KKV_=xW#I%fs{*L zLq}BKE{1Y{3HkmqCihn`-d`o1Yuuzex46T_`@5XGyC>x%0PYu&6Zu~sj`cj^5#>DQ zF=cr|n);{>;EiJJ#GB(CaUI}Y@h;%K^3H|#HyrhR5Fd^F;$t8Cl@#h?t9OWY_=SM%f<0ro;^Q&JK`^|5P`tP<;TmJBe5`X$z z=Y2$+f5`0s|H|_L|H(f9|I67x6w^lHM_4g^R@4PiZ93 zOSm2AEsX&B2#*1MrO7});c=k9Gz%CYJOK=pW&>*pPXcR8bAds^Q@~&;6Bwc%3Jk55 zk72NcSF6Ve_0%K%1n3tz=pvEXoqmniPp266^DZ zQj5IO=u3KWRtEi%RPvH?Hkl<{Sqwy0qLs~Haw=uzGL*a$FFEtcuZmT`S_-RaDfs>> z;@1>c-%|22CDp%5d6hCbi$^>#>(2d5BH02b3;O`4C{F>WN_N0$%JabKs-?gg!V$ok z!U4cpk_&LQa4c|+a5QkPvIbzb6bPKBS`W+-&IHa^%>*t`Gk^<)i-3z17lDg!e4kwM zE#MMq2ym$?2Dq$va9oaAR!AFxE2Uk)RcbHb>Q>UYhQO??9*pbgcdaKb8>CX;M%7#3 zrdH0lnPJ%?TLHJW#c><+vt6zW+@V?s+^LEL?y4J(yIGMvExU0qE3bX5&3?H9@PK>` zc<`>H&mr8&;do)<&!|=b&nnjd{B z^VHtJ^Xfw21+@V1qVgv2vT!``iWC97+8!}pL!ax?df<)r$nhqTxg`|A3oUiTYcuqOp_e_)~17Fblw z8jJapl4AB)%HNa;y8z22D`16i8L(3727D=81AJBW9;;CDy4pOxAvJGroqgURE$^i_ zzz^zYz>n$zV70Uc_(?qq_*pm(_*J+T_)Y2q{4U%B{L!o!f8vv0(i7nCV$S%7fBE|# zc0ImTy7509QX>-}2y+3E_#ecCd4RZB14t-NokY?i6{k%yb)po{Oe*F@T|7H!$cf3# zx{oQ|#;mM6ne#4MaU94(_5xXo<3U!kH%KS$1zF1jKsMq&kgYrrWGBu7*~>E82_nUJ<)eEOE_FduJPek2#iewQ{U(u=z zP>iq@pxEN@DGukvi}s)daTO?0js+Rz4WJ~|AW*VuASgxH8G$$xQ=U4{CTDkw!FP3XN%u(@7^j1!dGZQxnY6RP_VYtaWc{j(u7*GpCjqXhm!M z(?)p$)K(n^YWI_W(f+H$Bkca|=yy2KiB9N0ow4}p@>kc_QA9VovEX#4m;vh1YCrX4 zD81;-psNql(pR+?)UVxf>d)?L0DG^2?8%_J>;JKlA?Mmt@4?k;82Q(5?q-DgIcTJ8 z0%(+SC1|wjHE4{=5;RtJ28~no0gabkKoe@WrzXC_kxVjiC5tQ!XA)%|XtHWCXo?&I znyP*Qnx^^&ny&f)nxRet&6G1hv*bpg*>We)991P~uBsZ8EsqDylP7_4tVQL93Kmpw;Sipf&Ha z&suEHI@NU0df5)NLG1|I*vg-l^OmA^VbHwF&`7x=6Rc3M!^#$BV--%RzH^_Sn)SY2 zM;&#fQvYdK+tWCu6tGD#2%9A&*dpbCSY<)j+Tee(?KL)Nr=0>i=%9#?U!4!>oGx+? z*exl+p1Sv;*2nY{28rT=*h9y_|7=v954Za zz4Hn2Hz(y?I3@2uqCy!?E0o}jLJ`g?_Tb!|dxd%CQDcDxRL>%X3MAbg(R}{16jxbh z870V&kpQzQq!7a?N)-<(R^9=Xs0V>cJ6iNq*$XQur<}E?f~qyBQe6gmsjdLMy8HW7 zQCEUq-_3R2>}`)~cHX622YRn+3HqRR0DV-o0#&O zL1Y)5P@TcjmeI&$i4=+`Dk`zm)QmJV!k91--%V{5ff+MjySXKgXj414S+EeplBKy% z_gJNV1=gw7fUVV4U>oHDu&ufY*iLN&wpWLM^~%X$2W1l2v1;0~(;lmE#+jyZq1p^K zsGY#B>epa5)p4+UXB~Ka^^AIW;YD4%@g@Zyd`OOORmNq%jRE-M&$1zzM1^;6&vxu(4XVoU|G3ljKZEBdJn#>uC+mCx?ibHYykxMA(cS+~pRtvRR)b z9F#c3Id#%p%<5ON8W$84&f>*$MMZT84Glzs1pCp^9mK$J027lF78XZrY#TT@d~k7j zGTu#RMjBgo#Y#*vX{PKya2Q0G_6F15a1h2G0;y1D>hT0Prl~Z18O1KJXmj zMR2y*37qr(Yx>N`kt|RofENm@052-`dw4Oq?8*}1EbvnCJ$PAh@4TEnSs}atUMZRb zUM1`Vc(rH%uPGzuwd~Ehvg5p-ecAB-|Nm^l{%jUkgSV8==B*saw({1)+u6av>=a%C z?_>N*Q_^#?F_+I6O z<@mkNmqD1Q7ebgegJ6ak zOJh!c2B8(U0m9<_YQ&PTFNBqPJcRC`YgiM`g|In%LL4MNfUpy5L)eSK5PJC`goFG9 z!claCa4I~o!g+u6!DYD3o{0PKn0}5Yo=nCIFACzVT?8KjC?}BGyh)If`HWyfnYl+? zVPq$~YPpDD9+5;bKhf>ItjJuB9RR-$~F*5mCquXjY;|DZ|ob zOHUg=T8Fl@nQiH!Is?&FbsC~ud&;6a2hyW;{uw=A zrCXj}dO4@J-p=ZykBj>1>wkVpn76lJu&$6!XBzn3KStgcVCaafVdtt%APluDZ_l?}Dp zwnk%1tF^1s+1adfqL>oH7IRsc?7MkC^RPcT;!ueBvL(cV_qTQydXKY+dIrQ|^#O?7 z`u$=F$FlUB^C6azljZ7}5G&LNAy$f}K&*N@tG&O<&l)Vr`qE^vfu-3f+zGMief?}! z+`ZVs+H9>qEVgkx+rPOQVh1O)vpwq>yIz4DvfFO6?XkyUd+jyHKKmT8-+pr)aKKUd z=b-Y&;t*SM_?rtMj&LeRzquIV7&~(On@b>0urnwBbLri;TjP_{oaWQ#3{K~)Ive7g z`WQr>dLG1i^KhOj>&J^rEY9V2$>IvjbG5i*agBAkUfi{~!TQ|1+f&@)7RS$R zrOV(LNUc$KPA5T3q&brQuf0TlvB`@{>k{1@mQ+r@9RUJPOY;QKu~akwc^BSKtj@tjI33>c*oGuwPRp9frF!4vSd?)gyxB)SfU2O zVDI5@Ng|Qrp4noWT&_)_(5h6zs#IFkYW5n9X04W;PNzw)*Jvy`1svRP0tD0&Bq)avA@2|-Yy}Y_{?ip# ztR+g+4r0WtBTk%+1PSX&lC+Z)DXU16_5m3(Hn{4l4zgrjAV$06vtHl769j@c66q-lg@8u;6N3?l#riJ}hlt1fKp-Fyi9V7@WL-AQ zdZIM4sZ=&Jni4vlJAhOeDPyyFayZJlTwXk$8a`jNK%iDAgb<0;iN%l-iF&CN zN+#1FmqRNQjwzLBDwTG%T7pKS!_*XAtJP^{h9PMIxP=fv$Q{NYA?_)K81uk6EQCiX z5vBAUhtt}(Qy&0AAvA!HsGSBLW6^{dq*OR#hBy}^gkeb%E6YX|1wvJgX`1)CZq_iQ zo2EU>Qf}M!9Y=-hI`BM|8#tfn+hAatEpROk#67MdnIt<2dsmEY|uvldr4m}>PLLguu5>-hgjAXJJg#t{as?%s7bh-wE zfr-h~WU(-_*;*V97A{wt$8(9#*AWQZ6AE=jB4%Q-oqf_I+p&Q5+AG|Sjzx6VS+OqZ-58=z z2G>V-h!G4J4;{S?#=}Oq!Fc%S?JyoOq85xtj@|*|Q6uWZc=YI&%V9h%_IKS#=P!N=PQQ`}BflCnmxEqA?-ic~h5d+C+Fs`9oh@yKKQ`WM<2EJIbR!-efPt({b{f#jDHRGhVk!@_5J?wp2Pn7>#BeG|6Kd0l@n0_h1NUQoXnL^ichro_ogVuBX z1wTQR35DD?GBSY0qkUL%qDZBX+cu6*8yydM#*M8>rZvpW0(48)43=3{!guZcB-+?8 z*b74twjKSORU?-%G!DRaqY~PFbQgAbg#6g?*LmUOWV^Gooi5#C;>s1Hz3t*NM!4&) z%S@U2);;(9jTtk;%$fTui&$39V#ON1HXgB}2HV)3jIfVmrRV#|kShU($3tQe3{D^5 z^5yIJ_m%gumR|neIVnhpvqFVABV0JQ2=D!$1WB$-mSPMNQc#*S1Jb1%f`W3nXE;Hb z0KkyBiT_QOTuV+T0O$jO4RqWInTH0kr5Q-1ITQ*RjrIwHv53VY;&8_BcuNEV0+EQ+ zB`5G24S7hzQ$uM?P-*77Zm}eTVVub{&0?G6aLjhs30|P#E#_N&^^6JxMub9xA`y~U z?6X8-NGi2_+0!P~s^2hCp!x+9KT0wyF&v_#G)R|jD-@LfkRbytQ>I2) za>H`hjn*bQphxes&fo+d0N}>9iF@I|VGmB6>ha;zMUbG~uDWU;6DHo~%-O$j^-Q7h z*3}(G$~6EyL?!$vBC>0pK~&%0Dp06ryZ>5Nz=NWB3*(NvAJzh%fGBZ&MqjS#Q+U7Pw$m^lj&FLO5bj&1gM|GT z@yST^mEf5lEAaIa+|^g=n_r$U*4TLpGo)va6c(>M8J4n@BV#SWE8-xd0!$d(kQnG^ zGry`Y1&3I%q6E;LIP*6aT*HD0<&|bJ-?%(C5ANKXgG`)>P3$Ny=S4Ic99+EA_pFV3 zNfs9O_b|GND@Bm=&{z^Y^v7E2fJcUEZiG{%Cum2SX02p{4*V@B)334xmg9Czz2|LX zf$7d~PrOMli-w1n?<^8Vmh;x-lOiKq?6?Wd0+dp6ZBB%K6JUn)bN)g!8xpN=FQ+r@ ze2(UPP_3(lxRGH?Jodz$C)UQ;h?L&bJ&Bi@w2s6}C537im2|I3JyHp*DNcv117ome zu^X*TZh5jsM~_U#+IpOA>KeNm2)Qe}g~J+VQ?pIdnMqN4*|?<|Siuv?N&Or==k0{G zwC%%|i96~=tr`=$@txM}6HPKg4cP=K_6xudF(SiL(Fq8mok&s4$a3WA4tg^Mq|}{b zdnu*Zrj6NVigLn8IXD`HniP&*&jKK65GrvntqZ4k#;BX$yxOLK3_TO(F`R(kQscw>+MZLtk0pvM3+&o8~{ z8LF{nm<#GLB>);kJk=f%#br&(H0Cr6NFUY1CK6EzU-x{L)kq(ct!17ddChJAb@$a^ zY@aGGRY3+4_i;WIBXdXNYL82p%jp}Hd6A0(5;khH?>NeLbNWYzv}FS;dooYihK2;q z>JO(f<+KB&Gi5}oBJry;1ITeilGy%YA-s#LSjgaed!Bi87&Doij3dcB2v$i%0-0a5 z%Zp$}u8Ffu5U_HH!Ar>HaF4(E+9MrOLk6n*;|D##z({atB?OpB4XmUNcG3VRX@Z-O z;3d@A9wZ81Nu7P&^MZ=lTh5f-{yt%;rq7jwrG>u!Cq5Q9b!){JX?wOGc*$wiy~(n$5IkY2T0I!4xsANL-WI zy?LrMj*|&{spO=ymv&omJjnI1F!oQ?L96gh^YrQzcxCkH3=3$5z41zJWKL^p( zBK(o5y=O;P-UMvndQY6b0)h6eU-Hs!$TE^6S>7>Z|2W-8piU(mWbLC;HN-}ubE*sZ zv9g?vuKbDARo_gtv}&rWx6?F{BJLrX3>#{etPC}eElqc+F?7N@V>e{w!!SXHdKb%o zBnld5C7HxE(+4ys%a;1U5v~}}NI`~VWr)O)xVDKm(P*VE8AS-m)$Fc`=b z>IscVy|%vX!Xr(~P5=gk33Rr2w1fp&P4;{0E7W3*c$F~8t`YOvqGg{qFf4+JK<5)B zW4b%lHwK=6$ncO8Yp)*P5d>+00IK}f4gHqcQIA@yoCl>}7`*%B9kaFaUaV>E@AUy( z`C!@OX5HG8uQj}`GQD9tjSW`Jo5{%o8Z@mG^pVJDV0Oc2R_Z5F$(ri=Gcw&Whn6~> ze_l)h4DP@j_MK~4GZrcZt0t1mF|hK07`GzzT(Ht|M}+W223)k+?q0B~0HFv5zkIF2Y0!B5f& zjig+}(s4wY2&Gw^NIyVHIl%IpAu0e?tdo9H39#~Jh$_IZjz@5$=I&TMj;ImAZ_){i zv|Pm6aYUU6x@!_a=n>E-2m=C!1dIq66EGq4PLXAzr)L+f47%u?LVw|LxueKit`ZdF zRzE4!Yq|y7jF(kN+o+{o)aLd(ir9gmfR0%rJ6W*vcsW&ci8{JQ9o?di?peeh7VK%E zUQpxd9rg5ydiq8^{j!MtEf}OfTiEnp@C&!MS4F*6YK`We7i+9){!k=qI@??Gh5At+ zsyzr)Q{xH%CK(Vg+X##i$~>n&IyxzeG@ithEE5hq%Lq|CWRN-wsk2;MZLp){2L!Nc_L`wN@m!R) zA#7e*K&gWPN^y=HL!FIcg<^E^VR~#=Smuo()R1s)cSsA?`+BX*OlL8T2poFHNthuh zpuSyMZI5{?Q;Cg|g}q4WG{tCSJOPLyOp>b#d)G|jVHTCTD#C|@cPn$vMN610#dUh9 z$a05=XW+9I=}k}MZ(EF#fe6?W9wYgBS>h<6+}6MLJfvHM@*@PsxB-D72i5x9s@u@s zV^Pi1p^VVBYgLvZ{9OfVs384|f$_16KtjRr5}@m)?*MQcdv&26oKWjheaR!=xcv}d)Y3dxAA73 zwt2Y7Jw2QD_iLjfHvQPw>5)@2Eoep7XT}B-aWVtHd>orHMQG1lux`jB6+l$7V@Exs z-a1nmrv0h5as44Y7vuYN9ptqz{XB-*xgu}Wt?bnk^}|Goo#p&ux5^Lwt+o_jF^(^w zT)qzH`(rWQ6pMkGcWZ$Ybd5?_vBMbK|M)~VBeXO#cuy*zC>Rr@5oHj7jHY9PBV(42xGKTH5O=vbxpvI~(rMp}gkkltFRZRC2vdLIiM~c#)bTC`?{9bC}O?|LSPbnma zlbZ2cRR<7VMBx1KExWGV%A*@@AE7ujsNZ5Fr!jhW`#%Ln+fI**1R2NjB=G<;H?|x& z4lw-bB1iO3?^PxGHNqoMpy&t+q}@8fKV0^gK4Q2eS$$IwRMTvz;zCyuk;~(QfbeG_ zQ1lsl#x+}?+WN1g$BALiwI#cS+c!Kdr3w@mYF^5S7vrhg?YQ`~`LEu&1KM^~h~t~Y z*WSdAbr2cIxle3W94B1*2&G68=6)?)cMSt^EY7+56p8d8h;QR#m=Mq^^P9?%X7$l` zeOw5*ft|l>b*UBF)p#3mPS0PWgE48JVJzixcvB_B^dk@JTx#HvAG&$9t zUpn~YQs(=ShV12y65WZ2k14JTXVeT}}eRTrzN^L9Rt_p?~ zh|6Ew9Dqk(yXsJW4+LY@p)nc$2*|M2*H1%X$vI{=LsRrWB%O)oTD$pC^Uhe%lwbsw z7|y6Q6{dzscm`csZPBU)@*N$&va}yb=%2zEEyn4CcA0t-`{cA$1{!2S!(lsh~l^Dp>h{xcy59lSpsNM?Uq{UWk1RWgC z*o{c*Wm+AGssMB0mZolagC)+EgE61iorJWL3;Ige5zF=i}S-6n{!aht8?+1`*20PH8wN4 z?FyS<2j*dcUE2U!tMH~5{nY_kjpT3&>e9jJ9(LRnE#8hc(q`Oc2!bvtpfnR`Ty;}!NEex&^mpoLQ?>Y#j0l*wH$~Q9&pdc8N*IfKGQ*4b`3@WG%<1ByD z^fj8^@scgOEV$*D-k_Pz72!($vocGL3FvA1Q#sdY#-^9nW@vj{Gs+$c*e-P2$5OgNSF6k|nO8Ut z!V8+zZoqqC$oA|4^M&QC7{O~LEOs-pYUe{tNbiKy7(Ifo2gqL4FiBHxX$-wqt@>K@ zUtJAgZxhtA*UZ<-E2(g2kw>ad3y1s;ZU$yhdfIt{!wYdJTY{0x*X0athU-b(^L1Jl zE6PfWz2%hClNYOq09Jvv7|?f!*D~P2X2%vGjZ!ce*@MQ4`vfEL!^Ezr_!L_?nTC3M+Tmf1asp)%jcg5CVZM3c5{2jLr#q4hBF$$ z7~D*(5@CYSI6i4OM22{f`xO$BY7-xalC3|#1-R$2-XKY37Ij$!eP{O6cvV2VHLwld z{q8`p46e64g`+05+@&$)+e}XMKScnwFNJ=u0CU0JY$W0Z1CFT>pqchErpDC6o%?7s z$Y4M#LYwBIEtuk{arWvGzGcsfIC+2z4CsxjjLi^_9Q{qcX|9dm$ignS zQ|_8E0kXD_z{564x*oFd z%8tfcuhqR(1!IAe9&mCxG+6~|d7tk!8R1Br(gbelCIrmqp&o5Oy59p; zm?HspSIk{7?c&Nys&Blo?Tsz>ceZATY-(h@3R)j~oh1@PKp#tVjpRF3CAI07SQO)L zw+oIj>JVmKg3t=3+z1AGBU#Z5!k8$2*7`~TUbzB?YaG~>ZAWh2;1wKNzLh=2jK=j{ z@i#*JbOUzt(&4jwyL^&MOV>#xgcXaE7iD0mwNSU|r`qqAYq|#LIyoAN8*x$lrrV=V zGSgL~(w*{L-Kwmn8r9pE5zq3P%a}~M5RyCeP+0o?&KexB3J5fD+1#OIFV%F zyqkiQ2svV3d@`9J|NMpQF>4OU5P$gn+?f9DadUe&8UpBu>@3Id+=7<1QFnlvA`G0 zMVZF4+!W4St?lY@SQ+PaOwpk;h`t9Yw$YI9c8jvt=XXPbi~_zEje(hsJ%9^ChV!6( z9j=MmR5F7=xD{w68z^2s*ON4Ng;<2IG>CmhQJ{UD!u32mImu`cmtuaSKM#U|B-oKa z8_!5dvEHJ_RIOzqwheakaucMWVUr8Habi>C-#vY)-c!s+v~=-oCY4l}J$ccFV%*KN zbC3c|JJj)?S@U^n&_T%>EwlvxW!Gz>`ux+2fm<^ zK=NtwJ*G-xMRL98L_GJ&iQfRd6LD1bn)>4@zA`8IS!kmKY*SIaf z+mdS@>{FlCioaXj319?Bhb?Lq2t%KOyF${pt!{sF3h~^{Wz%^iq^Jc;FT$6#`tdtn zLRU07Qdn#)IzWri_XSR`2}!vJ0zIrK5>P9{Ohe_z?Syvs#2^jr=G?;8#$?5tD2u^! zj_9RzYJQj`>Ss*029!eRlOwE~5EIgcsj=Wven36#iUm?f^IJWfw%SWg67~Ab-oQ=3;_q3 zEo>BYKzlLx&@S&7(X<*$Vuj7<$=8z_g)b|m*yiC4v*02fHx_ZI`6k1I)_OYl%^h26KQ=-cpyVJU)Wu60q3FePQB2M5Wy^dp z^Qgn1cVo<`c|%R7r~E6m1UGvO(b}xD0?yZ9Y?3$d&Qan5Vbi}j{Q=S&N>(yhFhU70 z1S(yCIpc}NrwC!lZYuQCK;iAQhaIvvD{Up!nycW3Im4hlp7{diQb-Y9t0PgCV15Bo zJcPd^VkLV*50#eHq6V!HQy4p^@E7b^8#o`J5#B`A70k>u8NA;nOeMiiPOduBhuwoU zt74pdlb%w5p}H(ZN$9=idw`4VCV~Rzy6c0tnHH`(!7jd4aDjA$R_HxlRFOkiv@LlS z%+8H*dE3zjaScU2qA-uK$K$CuttilnP7QgAwjmhgvl2wIp-5A2l<129t=u5)z^-Y9 znKd0y>_sXOj>G;BUBM+H@o^pK_~kpBfK~HlaQM{`hq374@O|FXBElXucX`tVqf_StEwd&C5|uB+ zKNbyUDKsm_iXL!)uYqLajgI$TqhcpaC=_`0Q&3<2zU?LM(ja{I5-^V{=w@m>?V(^# zv@su&5LxUbD0%Lg1)a^&Q}D4h#FiYs7{u`?3f|161&a)u7EYQl-zb$)gkX`U{N4RX zHaSBO9aEd0sEB&6iqLOSlLbr~4d}bT0D~SwgWr8GdGT7F61hf(&nbhbQ#b-1k9SlGG_KUzsm2kWqPR8?U9SdCBaoLH7Eu>x z?MEWnupvu&4dmUuD!SyyN{daZWDf}{u_1?zl1B412ig|~f_9mPzEqfz>|~ROJ1;@Y z#?$d+vB-X9c%PTuemtR%nd2F9(8tz}opUggxBz6hK}-K~-2wr6LnLeU@^nRq)anzB z>w@%3la4(Gt_`gt`W2JXlM zYx?>DQ|rB+%%0|FSJ!%6cL`wJIzJ%B?$nhBS{$EGA;~`~XvCnu>aGKU_Vqz~pbxWk z#U=gZ^neD^);)Q1@jDaX!1-SY#V-N$q{b;<|B%6B=QGd!3k2GwE@#dP26!T8Rj))5g5)jL^+JciL7S$#Lsp$-i=i59ImoW59e;N zWwuFbD?sEB+l4FJDquHdjN93+sY*;)v;cdCCy8z~2yMeS>8ZiWBDa{aM?;FZSw@`Y zCu(^LEl;#dvn_Km;w}pe?5d{xN>ip1l2l3OH-73&r|0d*+124FOZ63Hi`XqkrK`b| z!`ka1RS5o{-@$m( z6E+Ow_pLw`hX{&TXEsKW@er*{ob1R<`iAu=bA*_&a7^6A5la zC{Nj~t<-}*`6MDt5-t(g)oN@cils=RNLd2TnwYi`x;)WQ7Eog6~ zpFGsb-(_a(2S^#W+5m#iv0&)j7N=U?3$bFaTMJGB2IppHI}$wKQgMcg&ljcaQ3``4 zC*T=icxVK33{%cHVJq&2A8KC*gJjd5tLJweVh@!6W|-CUt(BP9oTV4ki2iE1OVUj^ z2$ft&PJ-B7y7iLrY@G;h$p{wvxM3?5@F-pBrDta85wZ-tZ!GK%i4n&{gS?W@t4qNl z|DX^@ZscEVe(6j9u73aNe>b8)?y~7H8PK6FP0hOwd64chnXc|NxRKV0ETk>UrEop? zVnUb$QS)r3gDtajG#o6buqEMz+Kgk84G{(}>cVy;(AI+DFV;iLW&&r7J=MJkI6%yT zf<<4TD;QQTif#UH+o2f<9T@S(K9sF_iu5>@wmk0jpAennjHl)7oX=o7Ls1r-5*rBm zV9kjZp8(}iQi?m!+0q2N9!gWTnAp{dvQ5y`38oSy$iCW&8Fpl|@vxYT%h4nsj!s+e zt9e<{3iZH_fK{LFE`a2f>__0_67U9_6_k3(bakSA5&mbPkU z4CkX-FJN4pn?*@5TdJ4nb}Iq+!%YzlsQOeYgjk_*2~%lOtDl9}$&6wfe2NNOd`XMD zLQUX)P3okj-tm|Ax(ym>v?3Pe+b3Uc`KZNjcVNgTFkwzU3|X@udS4oPOKzJNL^lMr zSd`_rM*0|@d&k0qmJ2X>n~$^eZ-u*?e=H}f=HfSD=iBg}bho@bm}@^l7v9e9%Q7en zu?ci#5JU*vOK1lkk!>%a-`EBI}JMuQ6ZbReMtg zg4k<`)?C2AhxXGIL@u@)8Rk}p!N$c#OZDu0D&wBB7E$41(ea6pkho+TpMj_AgT6Te zD2zd#wb0ihVGa}CIo)NmIWPo64{@-yMjw1+&RifKBah;Ep!Gbrp6W);cNww zy15oE{VrB;7yAsz&ADo3a4Xzm5@pFOt94B;TqFnEv!uusl_FPRL14jzhi5d-)GCVB z)~bVOdEu|DXpux*YkC&GMvE}??Qa(P4JhirPeiUndnU$?Wgo8G&mOy1O7c5%5*(li zQ7aJ}Ooe-2)9HzKYK=BPFM|}D)Tds=@ffh9Or*5WhksE4tPZzVQ|2Z8ie}^4js^7U z*1&iZSMcsVg%o5NffO9v)>~1%sLb%Mt|YR4;dn z83+h5qUp|7L*8T=7l$24D*nVksGA4{BFyXXFy$1<($Zsj7~78IdW!>kC4_N}bkkb- z7}ZF0qlH9^LxY($F@T4#!IK@@0V}>imZ9HLvK7w5xo8>`Z38>%vIF-louEy<3cv9^ zELM$KWTkr`dg-eGN=2HVJqTGS#8v#Y4${YBRmOVwl4pSbyBD9?mUS>q3u%$M(fE%tR@ z7CIxX;^em$JSX1t7ygBd!&N#BAPfxT+K`v-4!zg`sm)L(ER)acXl&$jYxL9O;)qq5 zdA-PHIJPFA3X@1=h?B}u(mZtf@OjBFq%lfus@(i(^*>7;oaO3JmRZe*aNL`}UJR*y z5PDz@%ZWVKk7(>^Y#!j{zOBnW$WzM}&R(mWk5xZLZi!lx1uH*7{C4e1m)~7f%b+9h zWqP=tdC9MV{J6(mF}1qTzRPtl&cPd{v&Bs;Cq@4tLe~m$*$r~em)H4uoNwl$)z&_H zUvV>gJsP@peJy*OpAxYwl@;-@2YHzEx@BU92fY{`z7`nO*75tTBR_M_LPGF^(p<;0 zy*-uf0e%Un(qPN{z%4rkuKC)eX9+UQ@l#fzE+bHz6$|apaprMELWeaud502F2tNu0 z=q^^kIC6B>CZ3{BNI~N9N6D8PU|NWOD5TDA*K;L`&ZRY=TGti}1@C6(Cy}vvL+w=u z+QnNnoj#O*5Ih5zrPk1rwurHQuIjgRB!A>6On-I#s`ca$t2FfXH`A#|rmjH;s?cW6 z3zfvFgqc*r1zqOJC;2C#JDH{nw=;7}i`s63IdB7~edk-Q+&)f2nByn9QYm)4T5IVs zE&nHR1__ONEBLT1c{rke2GsJ09MfoPuLgT=QYC3{*dmc$1Aj)W>^GSE3Xghibs-(fm5$4F_~$>8L`4v0-Gc4KnN9hciGh?3Ac)WZ5g_zYtg+9 zOhy>mKGF`Wx&!S=^ae+*R(pYGW%`|J<4eJDC?+fz8G)w=BgaXUnJEL?gv9CAz~m*5L}Fk(?BHw0u49KCL&2HAq8ZJo2Mv}m?B-V>5v+!#_u|vcuT0c zg#ztZi;2Z~Z>_vRw|z!8TZUO?>ESA+8rEWw*#Mehq7|Gwni*hi5-53vQD3*+2C9> zQ_JTic&5*FsKqK3!XK^GNLkW84}zSrPOgmky>+CAYmx|{O1DlcwWG0tBS(gKhqrw| zyLB9LB%Nm4Tp%fgQjq`VQz+PRT0GDPgMb%P&E)*B3_N*x<@SIPQPp5L^t}=$9tC5V zN=Pl=#nvaES!KTEH)fS0_Ja=o$>;B=nHU68^x~dZzrzvVxxVHpopbNUzAFM7WQxob zl!qg%!j2XwK;%J9{2ap1R+cHy_+36LYOu;#0oa|e!E#_>{0&j$Q`s0wYjFoS>v*6_ z5OK&?z6;B!?kioVcop|IlE=Xt@p&)z*MQ?nWE;2*Ap{s7)W*IdD>7AH0+*qZ^-lvU z&xY00VJnhgbb85%%c^y%AXq}oT?*@abqr%lnRM>*kxo)EFA>2Ht-D0I#8( z(~^LjROn(BBpw4iWlHF56I5E<&X%PhJ_4dvhT4hnYKjP!6NaMWkb$oXM_4l`J$FDl ze(j);yp)(#&vK8BcHg@*DT{m2fknB^3d~0pMMuDWO-^uUuW!VW3Cd7#@jYx%X(U~% zn({x|GS!n|FR5$ZZ0jcDR@JGYiY5Z*emao}_x1Kw@j8FyiDN2RA55cW`|_HVn;9#{s%*0{^p~g~xZOAv3ydLV3n{ z)H^8&lbpb-$=I$t9A_R{fr^n~^Gb@L9 zz-?!T@~uJ0%xht&5AiY;&e!p^z+l?KsZ!$2tyZAXnF7=Ys5R*LIUzdf3B5t^7K<^) zD?q9>PymJn(R%VYKKcGO8|JoEZzAJzMUFso^V z{s`Iww<6f!z%z3KrKh#U^`XXdW-2PRD8i(vrSV;r*bZ2dHj3n@xaOYsV9@e!0_X)& z^Wys`AWVToPAzv@zA22ptgYYijhXztBp>yPcPh|hJOPw`i{%_@q7w9z#&soF(VIxq zH9;D}5CBXGd##oaiqlS%dnk@TntxjQjc3hasihc@3g7!aBLSIswd2>zLB!;qE9-82 zuAa6&_NpmMPvT5F_rleLe)2xBec(EtH!fW{Sfh$H*=r!4W5=_i{AMpQe;l_gjVGL? z1&@YQCf6u9!pR6ujzap^3v|kn>3TUbF;h9M%x;I)9vdF4NW0y@MO!^v za_&IM?Zf%>?%TO+k{bik`Ue@0-8#MA{CqYy1BZj1jt=+nbE5x zK*N@fL&uNb6XEe1-d@j)>_H{>2scy2@Fgx849l(8+t{+h?piADkZT8xN}Aj5^6ACLQ%bBiBPviW$Ta*=Ce`bL)D@5(|v*5ear=#8ccn5d{r z@9SaGIr7^G=YAXG(wE@oFSckjMGnyOz~J)KR&X7fD}OG_4)f|T&%u$mCn(V4(KdD~ z3pC1*k-RLrcTb*EN~6`>muE8O)21;7IXzR_O?_?h(hPNx`SI^ekE)XtlEr(Z;Pd-W z%G`eA7MwSk{s8m$*`Ie%o6v*Rjk=%3VmSZnp8O7>;b0;kREA&S3JS_zY!#TJ=0DSDrS%uT|UJ}Dhgr6tvtmFX99 zK%tIk@Xz}5DcW1$%N-`23(7b8eWm9*`A9{_O*>=r*8&Bq8U1*rTC2?XWO^FeqQCZpC3x&(H_h+&)b$!W8l0G8_Q_H=azKtkq)E_C5x8?P^;D@RRY`pV)`6Bw* zcMt>%nj%5=@hA#}+Y$|9c~*!Nlo1Unq|P!-?j{kLP`Q#A)1h$Tx`+1VkP!`wBR1*A zcQ!?C>@7Y+0vW9U+YC@{2#^)9{|@zRU=#^1r=_H(dTL9s@;(~7xdsvwpY&Q2cY6Fg zCKvD-0MW{ZzeU3mHUZH_y!#*JGhyk{+WLAv>lQ1n%@D{d^sBWYTZ=nFSKZ1oF)$kn zXar+I7S@kxK?8*oON5gPh5N&8U@Q6NX3A}b<=6FqDpleujra`tlhM3VEVNx>*q7sb zS>Qh*4B2WR0#jca!d)``T$e#T=z8}_@N?D9EFiU7oRQ~{&ugXEfA1{iogZs1@z%1j z1;V$|ztkIz>mDu8bQbV&HX0>i_N0y7d}waNcf9xMS~Ex81QUHzE?DvlR8udO;h7?uC11MfiK{%qui8q996 zfy4(V)rf=80~ZGf$0e{cq3<}J76fn?ko-VRJ~cH}sZV0Qg4UeVWp$Y=c(=Qe{#PDF zmcHe2OJEA=M{nfoV%*IfWDQlWeNjXm{T4Ws3kYR-m73Np+U`Bl)RBtyxW?3m(ZO1a z=hf9&8;(yF%Y$kZygtVkQ&0BD?Cq!%8zYN)ZGo`~i**1`m_~ip=w)LVC?;JEckEBA zqvmRTrKd-Ib1l4#>+iYC-&0tTyF+r5EwbXTl=7pMy4K&Ga z2>r)${#xk8B@1fcv8slrN-kv4S4O_fB{M>_Y7KS3dsQjW-+n;9-BO^;o7$G!?08lJ zP@+SEBw`=TVFLLA$lPX1bKY~@+??@rafGLDkNB`%JPm|NyCP-OEQ0~b;Obpcx$^(W z2wQF#%$ZQJh5Qw70{p#n3VFW#lmggMI4(X!$>AK*%8D*LtPizybsgx&G4vM3xUhnR z));%H)Q`v~KtYNu!{h9vqS;A#JmHa=r*XaSqsemLD9rt0lUt#r$jj2$hY!|QMOhdR zKY4-4OT972n$Z5xPXX8|K2ba)oJFr1@T36I@?A@_5PSlEtT zI)e|jeeK+`@j({4!hf*oZtykte(Wb=9#Fr?Dmvia_qpC$4_s?6N4uMCHC#N&{T9w> z?Ra$(Y!+BkF*r04TwsK433f7fqwA!-vo@~WTDL31n$hHYzT2rL%!Y8Y{9YMJn9t|} zo<^U%hf=OHO1uKDr0HPCn+yqZtI|=wj|%u;Ny5FyEj%m;=pzD4^#cf5hip76FG_#j zA4q?l^r%23yo)*P9#v*Ud8S?|?b&w-_M`$p|LrLNwHLl`#)5@lZ2a@ z4RJNRooto;4$Bw+JE=;9rozmrKwRp`3sIu7V{9heZt6e%4Eim20Mp=z`IZy(qva$M1t zE#}ilSrcgIw|QxIc8>Dz=WRq4t?Xzf9d|fRUUv-{6$!+(qJZDr)N(cu{Oq=j6Rzd`+ zb;Ya{B&AqwM2u&)^mFGkIjs0ZxQ`DHbC|wA!>6taA7*MAslaN*e~G=0D+-pvdezhO zRm9F`LBOgA@Xa;2IDs1+tR~cf<&FKz_%RqhUWPt+B#dTc0zZH7Nsq?;3((zvgx3Afd%D&~z{GM5WTB{w^y& za3o&Il_wkGYGVT`&IH7T`5^ER@X>|)AhyHWz+j*!XkX6bi5dFeaheSW768BkTHHMO ze^s|yV+AnH=RJ2+|3=($F(ewzE)MB9Fc^wHeZ!cOOYX|U#oB@#&Qg;tz_^!MLcmtv zH~u41wRKz)MrGGa5qT1tv}M>6SpJ*PWk%iX$|l+%;9WgXpvQ8^XbFY9Ww6Sw&!ZL& z1ZC(zAXFG4KU_|a|Cyz6tjTh*v9*3g-xCo2tfVsWOs?_!*Ja8NLO0FbV+{Wyj!Gg_ zF7=nty1EH-*B}rKAd?XmrZIc6bqTK#g6ZR7i*G4!-&RFX1sbaQk6jR*vR#cYnV1+n z*NKQBg`5~w{QG?wyTVC^?2G+H0|N%nF-*pg_G3kn`UOA!DN{Ha7Aa;zTRFPne_0UD zP_%kF1m_f8q&GfndtR68*5v)(9`^q&f0OR}iz1@KRG2*Mg01?2)+1*jiR#dqRGBB7 zJ8UF}X7yMMO=$l(E!_49;AkL>-SJ}vX!!;L3b0*Mi)$6tR$|0+2~$6ozwN0C$o_MExZX_J!L;}v9)Mm zu(_D=gMs8!xi2d|q!|(AJNnsqF6BKV#W$d?+T0(0W@-JSblg@nkEL$8kJzj?jk^y6 zh6%6VG4))qa4z!lUNFlnmmQ1?h5X;)MrBBrXR!z)i!}^Dblk91#F)q?qBf#M_BmmUb9t39v% zto`W7CxKpp$Uyf%e2hy>h>FP78Gw%p*@e6Ge}U`&t#6i5L`2$f=LO$G%Fdm_7ZZ|t{CR}GuI z8*7-8vYNrvP)in=*LNN9nU2C5fa2xdtWq%m89rxXhoZH?H6t%L2B;R9`I~jhJ=V|j z%$(2Kg%ldK%y!FO3q~X+{Ni=;Euiv7(&eUq4nZU*{;nIom~{ppE3pxYdmeI#w$N`{ ztYee!Rn#xjpnawkUI*H(1w#YC8I+k1h96W+!{XsLG&$e2ss+E1=kAeoGDZJ0rnxK- zD(8fBUW%+)K-sFYDsMdNKUUi{M8r&251^Xhu*^vL|GuAqUFO?i9e>@t1K*TKP~xqv z>5@wI$2iJp#|H6N$2Zg8|6si!5TXd$6YOi&5!;EVjUb8RRVAh9#WFVDDfc{j4aM!S zHngl;xXDAmwygNjl-Uz?-5J13DF4!D1#199S6fLe(^KN|ah3l_OwNm&QG@KC1^u7t zEcOE72yj0Xq2DYxQ8|O+ZzXgd!QX;^FcY??6N%u*2?NJ}PS18comu&f4fM^q@Q}}9 zzj4~ASz&}R*d^{(P`(hi!4|u)w4^#&Zdd)-60Xt88H=-E73I${zzV5cnPX|6s=H-< z<*8CE8v@vUDnFbgP`x@YKBS-A-=hUH9yIP1ZvEr1u)jk+cbtGz*@qOq?=xtswMXsQU!Ohymj(|vjN9X*KkHl`ba*rnAT8^*vRfvLvM1U({c z;8Ea}(~O8ny3z3&6upljLmlY09O%GgYt9$E zW-LQ2Po0U*ia;CbZU9h$hX|bk0XEXZ0Du5q5D)@z6pikNK^VBa0oIgiDv)fX6T;tk z(y58Ldtdm;Q7-HIrw{^UWD^ySkF&ZKo$cqKH5 z)#`2YLRDvXw(@GoQ&4AwK>is$*bfXug-YWTu)sr1>cPXf0axaZseL>v@4uQB`tw%BL_LzI z_?+O0-vq+ifv{J1Y^Z=C{Sn&X7;^Dx)_`PxS^W3YGLiUATt>@Nr?TU43f+a@Fq+Sh zqZ63q<@PCPIH#1fdeaYL(+w1~K}B}k7J$Rz&w!rohmru~7~Wm!vbI5eDwk7PSDWxN z3N8JHQIcweFiB&gB5~)SHc9$4Ag7?O1HSmbRNZyV?!m2lRNXSUoJWLDlErOdqGWOH-M`0h?^ zy!y8myw-{n_6|+*sjV3s=+DZ}9;NZRVINf8m(Ua8a#xB9%=w!{gt)VH{k!wSNJy?z z*rlf#IPrn9gwyY3Ldp4oEa6kfk`Cx81;BlQ;S7O|d}Flo3@tysE_?MRDNCMn1yq7@ zWg12o&uN@AQK7}1IiR@#}MqF6J}%0l-jK=l{ke5BULIF12k|#0UK`=S8EGzscIzrN@M<4^8gsGDR7?2kWPH2! zwmMy;Io?3W8UK;_T;i2e^_VsgU696NG8%?#ycwDH!}=4K*Hzv;&(8%UkD+D^aE%Fw zS_)T59i_7Dx9%sP7$~L12Z=u-{-t}8rh9UpVrvM7sNQlmkm)oIoR0qe#Ou68V&}J( zIZbHpkBouSxwQz(0RW&o8~cwX5AfdwOOH0E3P8o zb7K3UAfL3VbF@;pjTbP+>K3~cn;mS;JMG7qEtATyD&H>$%^ZT#KBK1@y?`Gh0SH>* z??gyc_fp)&Kdr6TKL1%!B+Gial;!UQLp(QJo1e)|_Z{f8_iY12It}n>YD3DzkGs;C zDe^S~Yr}*=Ei7RSQ=QHSpZvRS1XffdhDg1N@|BHR#FXo(U|kno=lIT#2{LlV~uSBMjRpr~0#gYToW zldIP}ERRGCPPih{%DaRJ%6n<`XWcVMLx2<}_8zgSR93WOgiKuFCDyUjn#h1|D^!v% zZ_iZc<^=s0-{gC!Z_qrVG-n*)9>gB;_G?nzBt4MLrGTnGriGO>4P# z&LgjI);-$#Ctwvr;&c2Up_OpI<}0!%)_!6b^Ebt31Q&d9Ff}zrg<~gX-HHaJw*C{U z7g@_A&c&AGiciq%y>oLjRK{)`&cTs744AHHYfs zk51}Syq0)UC7vAB$9qrB7LI&~W6aB|;3rC}L0K9H!Hj9h!@-svZZFR`xTUyE2(+3& z$GWs4hkJ_a6~PXO;{~y9dBP$uUG7Xg*biMnOm)Q zKEQ5B#;a~{Er;6ISLLjhpm|ziesX7o zi*0#|R%BBn+vSEPYwA+Kg|8|TQutL3?O)<&2a@7TH&rjRW|RhJigMFO{=X{O0*y$b zd`N?8|dox830wAvf~A zroF-@o7xz8pIfTQA9XqqFqjI=>}vnT6jNV)Dg5_eF^^h~QXQcKoK&WT683-QbnF^= zt5k~1uAcwY*1i^znEu?n-x1k6QdULiU<2Yzq>~{Q5CP@yOYv1BZ|jvgC(ioH z-ASthq}_&_tkc%OS+kpWCb1h zjxL>OJuQ4?Jy-`{>YzQ7$w(22d<1Ww7K2iLzCj0ja^WFGD*9K0tbg^+j7H7an0RP3vg>9LgGMc;^a zyI_LQN1Jr)X)>tI#G28dO^_}bi3VE<`yIBwb9q#xjoDjmmIz5a3)%HjW!DHQyv;7; z8v|EUgXr9czt`D<$ia|Flyw{M-O8Q8zTydyPU_slkgL6r>%4MU+M1QrJjZc_@&cNYr6$5LVW>SDZPZkA9Ur=8YR z1iaSZ=CDetXdF1iXB~jth#JX}pwYubhR(IeKm(PKI}AqnEIA6VQc?a$p++J83IhQ4 zF&OR`b`43NS9hzZA!fB|(mJKC)=r*}Ui4^HsMrshbj39 zYgfDl0XDX)wl_}Mu!l00PHeSU^%!S%0y(5x4P;A5$qJA=dvr|&_|`zx6?KqftG>8P zZO|RKxV~3ISKC~^kxhJ^R^wCS{yI9GE#v1wFE_dsV3}#`a*BI^9?jUm4yq^=~Zp7v~;Jr{>3oM|u)cH|^D)qS{+h?%$wk z1UePh-)2PsKmGMfa)tR!B_#~Lo=Ztm>aYCz`Hdc7{l?II62fs5i0Rq1YZ)p`c$Nol zQ<$tNVz|bx3y(~eMiIGNrQl1x51@cNB1Wc?P4rb{82OnG77!Qd!Et@3f88ZwZ_gIM zJ$F1*3J;&N0#Nmn?Jqd}_}%U0IbhPrb!gK3%j&p=%j_22N%hG#o!iAv7GGATAGpu1 z(E`bSt>07XzZR}4^8Ep^f#C4J^pb*K4;A?GUVs6HyWbgLbbXrhjCwZBY1Gqcx(}iX zRMq8aK0sVe1+bdP$8?!`ZHQb89*X$8!b)rxm;E0Yoc(_nCnmaGF%SW+C6i#$8eeu| z(YS@Gh^w~;2Chz2MJ(WA(O-6=-C+0OyA941J?d6VisaKmx2umInLNv zmE~XNY>F;fo_bvxBU&Sxp`kUAisr1Rq0ji0Wk`PfMwNRu5D3jEARy=c#e@A> zRC;gUL~EmmYJ~MXIh$~ zh%;LRCk^e>~j%hlB|S2NjgRfeg&U&Fo`OxqI5~H7&0chIoSfd<%ihg zfJWx%mwKNVIgeNz+1A-{AqOrp2#_E^D1;C3Md=MHL&#e84Y_Eu*6~(WKSEQ!G}c0( zq|CuNsa2hBd2m(W4|}i%D-xq>vUMXOxm5cllN_ynY>mdwm*=!}ip+Z37QP;CNK$cv z&hYWBTTGL(t^$1cEjcn>o+l?`FQ44m5@Vs7NG*+NbD5q~kCmBImtG1@MZ3I(2(rW9@=pOt z4p8zoVfn&L`;iDO?R7wb10d;_n$MBcOD17tXZ96<32g3H$n#BPqr|rpJ#OVC;(&jr zwg-$VjWW#c^JScoa)DcmB@5h=3}w`fY4fw{z_n|SeVseKLJUjU4T#4G5SzIC=%Y5o z_C>mrHP{e4gd%pOU55N@H| zAdHhbj9#>_myWdNmZoJ8ntEB$2z+7mV;uoq0wS%xdWXZd*}cV$r}`_Nbl10f;}!$% zXX0&MLycPE-TdZ6vmzWYEUxeVuKQ2lEiJ zLd1`_KgUG<5}Z8KGzjuOewg^;UEg_oi#}*pF9J76$=#*$R*84@kz4>U>3pHl07@;W z=iljF^QtR*CNKdbpigpMZ+vifXK_qp@UHVhN+@u3r14@P`O-?rTt;eqRHATde4;b@ zIxd1^y^o~W+P1{m?q#G*V||>>>4|H>ulk+|0Cw0+i_iP}W_v9ya_B98DU_wXjlD+2OySW_u{%QkA-D%^cukR&XR>?vmBqb6sj&i=$YPuMB(%ZF>fUem`cS$ahQF zN+(@3Mf{dmB`6m|H%!kRN<3YcOy8(Ck1!M8?`wiITAn^4woCsmlW~0>ZB#&H4B6Y# z3=NC#9{dZ%Q7aPVrp71bdP?suES36S{-)Z$&OD&d-dZN09G;foQlpO&OsI*oGIdL> zu$RB`&KgJU;~xo0ABvCPPRX^qz*kkL_h-hQA$4{~eZ}gR5D-qqzMl?fM6X+}%_^Io zh?Es^!hJLXgo5P#-SR8q-}a54ADDE|Soe~fe+*y59!1mM`!mN^cFQY9tS0N{-P(%- z{fehi9`x1aF5s4&K%c%KpKAugYFUZk{Zb zSO0;VzogBF^uSX7X^RS2Q&{pF)<}mBVbAvOcd|ZioiNi{@x0Q~_1M!<)C8$Bx9jDz z@fWV_%NSqZMI#0V0PGErut6liHFnLB;wWGlN5EZP{^?aM>L~iQeN4m4uQZVom>b<~ zATNQILmegy&q~b_=VbcOws@PItk^q|$~THSo!H_L9`6RY2VuURggKjeU7NtE9u?SUsvD zfaQ&|EPMWT zz}SPqBkn?sG1-BD8IXwO{W{P&Q6^Yj@&WgsCD<6G9~W)9g@v8E7f>3&HftTlcS zuIKRK*;>W9;&XpZ68G4LZWLW>n~s|I{-Y-76Owg}0}Aw&Sf5C!h{2`HWYRNkY;s%E zN@V~bk`#bPZjsXlwE)rhLx~UUY~#2PAvfg!PR#b^nZhLwJT>ANtpL_A$mtgkt4ok^ zbqSVR2pHOmv9Ty2skX>$-&+L)hA0hDs`bLZ_*QKkS=d_^*N%R45~ex9OmnQ~VSh=} z(@$<-{N|}w3B0MndbnsY5t^zZ;fcLN5jutq=LB83D^a>Ad`85?PL9a7s~7ErW6?TN zBQrBHBZZ+{e+f5P{HSe}Ts6wOBOwTjom$2MCqdjg7I8oUsL@stYqUdH>=vA;Gi{(; z0!N^WdR8#2WF=nzJ$bCuwlT%jLN!=$ow=OmmDa%IddtJ)UvvPc;OSNevhE@2+0v+~ZumtUoC@ z5_ttyAxM$g{e|ebyi|feOKbM0E|o(;uVT#Y0cpf%IW1}fUcIkQCF&i-GuQxL1qI-h zw(xJaTssY=Z+nzxTz#%p>eRMAoECNGH8;;YN}!`%OHQ7!J3UeOPH491mm&|5$jzCk z3X|8U92Bl&I*Pn`O{8eu%N17&Ay@l6F>EVVXA1GUhn<`JjkZSrF1s7{qV$voQwe?B z%O~-d&KK(>7eDB2npjEkf6$-AlD#Bd~mKNOccXaDAwIyBk4=N&FZ&jrN&*mA8PR7QjIx|aJ}c&8Cy#-5 zO^}0wAB(3!?_awX)*ymT2^sf3_`4;Y_D;#TW-<)KR;axb1ftuFA*NMRG?5Zxuu6MI z#7*7%eQJyx3o1@T+iwvWs~u?_MW`(kuw*psHZ@i40L98;vhX+V4Ap@%QI<9vf}<7R#oz9;nDktHxdb96D!ZsZy=P2!n0sx zm}*x(`;Sc_Je(aB?;4*=NQ71;Ad*sKXvnoVTaYy!-NgR8AvF9IfM2>M8dV-qroSy8 z&eb(aLT<5iB^sQft+T^?Fk8ypZr#H@xlk(rFF?@041pT~xoa65lAvi0sa;$c!T`kl z0FhiW(wn)%B=5;Sb$B`>W6YS(wP@mO%6UI3K9HqnHiANSC~jko6%p_xd5uiHY<(9I z)hHGU`#wvt;tR~naH4>lSqGCC;s7^2kZEEQjFkUouG=;AB7a94zz(2qcV#5W7%_V0 zK7%GaYUJjIIJz7%)-U$%FO~kI;P$4&LS7%Ut*9p7#v7Df`WVn z#CrA=`9)d&wtRS_uG-?(XAipT8I`B4SutJRWdE6rxJJA&Ks?Q9Xik3-5)I z{hIF7QA{q!0PEj#%(S^kRrhC=;(Z6o+Z3RL1nTY{thYWBB+U?xzi+pT4=}1XK|Xt_ zP|5#;8VE?Rm}45t$u9`^%{m$y8g{XXvr_s=tD;#FS3mNEV(`)k~J>$tmyvDO1?OVyHymOF>%QpwL z5ac`He`&NR`{t<#ulKSIjkPbpgIRRMV98bPi`YE7OAp@5b)bdgUr}yq{_5gE=N^{X)Sx*MD&*2k>+T)Q;v$zQ;4nhr zam>mN;i&XwD?q?sQuup#nb$ctOS=Qht_;a-f5oflaE$^heh@f098?$tavtb(AmFgl z?#*spKyc{9I%iIZ+RnN_i!cx)-+%>N?%`+ry0-P11;zNe-W;BcPThZARHs9NzuMKg zR5clKrch3|7?o)@Sfnkc;@z;e`4%dLjV^h>qR$(;1mNjGh-z^nxB@q7tY% zAHD(CwM3}5)+0j?myh6_e3?;zK7*&;bmSMQ;5^`8XO=7@HEtybJN#3pmOj((Y7G^1 zWE6hJz*wz2hZ`ghVm2`-vH?!5bc?VhS(eIGUJl-?eR+;FwOlCx5z?HY!;-ASh@7yB zitrbR$5rcJCD3?`%GDYtyyyOOuP9fwCB?wm3NzB;i2nkfh#>g`Nwo<2(ldpB&&m2{ z*T``tu-5;F_Aw5~-C0gVK3ObsT}J0;8w z9Z4+@e~D+o_wzFNm=(sg{=k?{ zne5$^2pmq7Ck)Ku-ehHCx&v~3cl&wsBy(#!3@|g`^QGkbk!#q~bYd2CT({`*khkc# z^y!Gp_joMP8`)*Z1~p+6M=-Oc|duD)bCu7U;p zbWQ+bes*A}bd+(5?0^GSM`yHSF!3yi0LrEG4IagB2Rfo5#y?t%$L1#t-yw1b-&;k; zLPv>vMD7^9HkDt4rlQx(ul^_}j9!*c8KLRmr7n|J>MG*P>pr^z48<%!4Z+~!SGK~!?Dt{V%2|ni9oBjZy z9m$G5`;KDMj$-zd((QAJ-2~A>Z@q{GMs*e@^wSDdP}wQBt3=_kIA-QrQDdoqH{Ojo zckao{S5CRDrVDY`#*E;knXc1WXx(rrHcJ|!O3lNTTXzByeTNwqnEDQDunt?KU5w_C`z2&* zNJ)voLm=$UlK$*5v-wllj!IY~;_)PnTka(&$C6}kGqds=el^TS z((y&5lmceIeA{1La^D^*xuUY6pPTbcne|MY_)k<%!i1M@9_Jdx$hbeAUr>A)0k7Kd zvxqxPYxm6P-2PP3ve8+mX3ry!ab#aoa2L@J-yFQc2Bmm1dMSr#H-{y>B(8Q_P_y@! zVQ&|o(2?#xycx^PSs3-T*Zc0JW8`lgsCd#vJ7-|O+nzvP&4-G_NH!VMnj4`o6Dt_a zoCzy&F~5CQv7EGCw`8Z=IfVjpV8P92d}|>Js6~zbZ~Zg)Q+JDx|Txnp7%T&Ffy} zf#0*VcbLFUQTpsJ))M+}V!>)+-^h|{b_@+#)aeMAw9{l(*#*M2oLrT)hLyz(2{h@>|7s38C-kOoj6`|@j}N!7Q+fVzkN zc~G9Q$2zul^KE19pQ4szg>Pt{E3v_)|g|l-gCljMxwb=ZDg?CNvZL+ z$Nk8_1^q|10^s=@y{X0=Je1~d`>CbSw+;uB@7Wt#t#)u9FJYsh{tu#ZeAfnp!^&?*5@&#pj@$>Mk!PXd#!yRP@&f=>;fyeG zbzS(~>*)=&z)4`T8yQ>d!)1{!UiTl^fK^3jum)^1Pjc}YumBtD|EC^e@y@-J;XwxW z09zVqHPZ>p#P7p^4;cQ*rSWG`(S&FImw@50`P=X%6++nr4mb*|B6c;_GCfqkb`EE# z4iXLp{%o82ya~jVdv=BomCoN!h3f}T)JD2kP&| zx!u@)(~B9EbYpKKZ(;qj*&7-8OUf_RG&Hkc&!22_4Db7<)mKVTF+`p!oA?ql5tM9^ zaOcu^8mF~)!vFe|O;mtI@K7yNHpx!0no8;3-g3z+Rh`|U^<|2OEwW82c4G4v&Qqsb z{~^82(CIWdH245oeC=_q$9X=5N&DmAH!%UavV^%;!DBua17t=(*0IMpz$6p?dV87#$j(fE71~cp6@9riso@y~v3u^*U z!?lGEvh|-eGrq|%Ruz8(ho5K!C8qp951_tAU$6_w2s%6*;bR`c)pZ1{p+keuS-n(P zxgB6BnM!>5q&4r3&C6ULzA;|i$dq6C<1Jj#R-t5e7TAoN9iU#n!qgbq$Zh`I6^si`Q?@WMv5CT7U6@ zbvmdnCML1sq(YO3(S`m(Cox!0DQ!dsd5+YG2-b*r)&?OPA~E%Lkca!Ryyb0h^_1wz zG&5;CYG+50QN`8BXUq=;qSoCB)%11r2W`J7-oPe6kIGBfGFj&wq0ub9V~CJPAbvnH~aW{-^Jk=V+CLAgtcg5#)uug;6PK5i;Sz=U6~DDw z^pDVA%gv7(tN-}>ylecz2;6r<<{ULZ8m$QZg+`PuFXShkg1H=vQxN3>Y`Fjq66hO_ zJ!HJQeSV~_ z6JxZwsG_yq$be5&QpNz4jM*vlaZmYiLGNKpOCF%;HqRHe4m5?o6&)WjfG9P@3udI}f_J0dxp^;nptq z8Xn+Oo*Kn+yy?@y&4&P1q{8@2fIK~p7Xkqf2^+7nRIKs}(hJuVYpLxsTy0WtU)WO`YH&R7g6 zVKh~IF$xL9>yg-b8vvp&5fL2%GqCG77F$FTPc`PnS#fEn5#$JW`B~BKA1Q%U^|IXI~qJk#&wn zu2}#m*>3}^-&K`nmra^8toJV8>OChzL$!$wF{O#IFlJydU07mJ@ECPzq{2aFW+E2Gf}N$LWgAp_%j`A~ z1fptaWNT5{TNCgW*#ZE)TND-msNM^J3zY-I^)R3gT~_M2kge@bCa5L!owb9N8#n72 z3-&HxEG4{EtlQy}h;TJh8BX4O<20xpQDEQ+kx%JMGVQ?I)T^({@Z0U2yS^R4bXnMC z;h!v*5-n_+4H(as=AI8a4zSgt=}47`NKJ_Ig$I`f_L;Ve6672mewovu__*sI9T?Nv$@d3`6* zf*f z9K5YDCJNavXlv|Qiq@R^98&kPM#C0yXt*J%jDSoLqQ68xJEprK9xcIQj+N$9Y(amR zb_+^M=a#P@eWmY2k2=E0tHgL{7oVp4)08xUycp-5_bB^U-^BbdN=XuY-up3WYjI{~ zo9iL}-8R>i@vTLYlA4pJ&}jQA_!YE1DoL45_Nrp=KF3q3eo%C8HoskbtNJ_sZ24w- z%Vy4r`&(30XWhSXRB~WsOm;6cCXh=0EAC9?7OHhCuamv`J3Zr!3zOc|bcrb*WJO2E z$0Ytz?n7NQi0)^JnN4(hOFo>OdbleoHTUfF)$N(CJOlAtojH zdgnO0)oiiJlZwprYp#5V)zfp3S=TdK@s0yO;*I|n9F$voS!eNB<=JPy8YEup={JRIvYdJ zvRnr2?R+uo#NAYZnO^CQk3{mzdT>f207r3Rtiz9!=EY|lzCTW(KHo@9eX$jil4Jm+ z;1A=R9{&X^KGUov5Yzs5t$ib-?F-O>ZLvd0w4bvvDrne~`&2Q|2o*5k!8s1hxmz}Y zc37f@yv>Y(D<~j(a1rnk6fh=n&-)?df!_m>eMWB+{-`J|RTebvY&4MV3$di6u-UX6 zy#2B>A(?n;Gq;F=n-B{|Le6XZLRNoZ_3H5rToz=XCA13~T` zt)Moo8g2dD;k}gIRsoL#&1ipJH?yCl)O=S_L6v7Hv1^MmsygGItiC8Jvk-W;<|K^z|+!!Fv=sOxWXsIpBCV!tFa$U@Bt=Jm} zvYXpsL<{b8s?>a2%ApOC6xziI=Y`dI-Ghf5;_vf!?vWMv;^!FO_2g0^B~n2_FK|JM zH_(41TPT{ka5-(go^CpT?_Ts{$EJQ3ru}jS#g(-y->a{6$V@|x4)>K!{>9EG$;0Nfk<=P@_VCGyqr!s9`u`F@Ao`2l`?BLmpw?;J(=|R@M$3*V$(}YfAyzbN_d3q()e#`XvRRm( z-jZ(1vT(FJlP+r-eo`k=GU8LyXoA!twq}(TDavFpvK7J-zqA^5$JD3wiKJwe%E}q} z7WwK9@pm*wfbW@QkeCe_^>-^cjIj(Qa-0f?`mj0&;Hi}TK*+u33QE%|`0IxNzeFjb z13MIGCmp1&-*{KJVI}h7EZd{fhj!a67Kvj&RP|P$3fD$}j&_Yaw&#WrHM-~`)Kw*k zyu(dD;@Mt5j%O2du&|`AgQEzm$aU6Q!({u+Z;+ZXL+9-F$b16K2Z^HY8n&w6TU~^0 zc*1LG8f7C~v4HQI7aAK9X!CJHw2yGzuUc#5PGNXcKWlyNRLvjVxlgExW~b9~kKYK3 z7Z;Wa81<#jFdbl-1~9{ki0@nww%DnLAFx3IImQ5K;VXFL@7%;!aNk!Fr!lZ~drF@~ z5xZ9auc=?%p0od=Wu)Jw5uWo6@%k%aCJT?*t?(TT-k0SHq3);J8r!WIF35sJGB!;X zSqCI%S`V0^fG*nwAkYX`&9q`&YwxBx{1NE8MM1L>PBJi^Z+!StxhRCi-7faQ-ytSI|#9{g8DRf5r z3ZJR{0xTK}IJB^q@HndMv_ZO_mV7K(mftR+(Rw9XQLjkWCZrKdQ^evHp&@mRCcU`l zZiH%K9f!iU)}-zNwLrSLIB{w3PtgQZjYeRt_Oc8cY8Ge|n&va09uz24Y+(&gvqF1H zsYTXgN%Pz5u(Ff7^adj5wkSpk1RHq?L9+TtnqoFZHeOJyxc);b#ufQK=2v2a$q$1> z?_V41Wp9-RElLBjlFe&B{?829+j?3clV1}_FJ@1gyq#{qbv7i4J8N+HT@An-6INr* z8FOPm+}IjCB4V^#FG3F^vi>T5uFaaAUfQk5YV>M|&lx(uX?ZZ3K83=n)? zG}U*nO>lH6chbw5?AFeY^I#9lX<=?J&{(dbV0t~ZaWMUuPTaAY^xRXeKt4!vOnut? zmh6X+GsWMm`lO`UMud0P9EYY^!g#B{e0?D6s^4y%FTE-hrtOXh>*g?*W?ds;HT0XJ zVV?uWT!LUiK$s$MC!V}FBBl!{pV+_Mcms=^aE@-Gp<)m269Rdjev>r^ZAm`$yd=mx z5S}y14d_zoYYvb@wNZ75;zMO&?C@#j-b4Ms9$?<4ea>_6w0%6@~uRx zWmGG!n8y}Z74QT#dE)Ri{~u+D$jC(j#4XYo7UxMx8=;H4)6RZeF!tJ6a^G9^wyQoB z{C$39({#5%jRJ(qAW}5yi4Gv--WX5Zv)0e%eo)G|@frn#p_L1SHA)Z_#466gbVC+c zK*11n2)21ui>Q?@wCFD5^GSgbz4OYy|C_1 zU`1dHX6njd|5nt z1%knL!xFLHabX`NKnlx%VZ(_`*tlW0P)s?=az*>cxrT@1m@F`A1=txHLIkb=^(C`^ zO1o$N%OhS4!W2a3-{B2kaR1^#H!-TDz>f&hOwq}cLq&V}6tN9h{ zyfMA5nBoXDI>kQ+hmFS z@@2_@LhRmL)gEvN7;e^~N$uG0WjeE2Dj`fu^yU)3L#{fYzGUXlZt3ifL2Q|rMIclQ z&OCb|l}^1dgg{n-Sjs3O9`-iJi~h+J6S|LINU1;DtYb{cB#A3{apr!SrZd5XmK(CA zk)=5>qtF!u!sq~z4z&<9eYq+*Iyw3$)V}_HBTSrmMY3Wm-Vs?E6q2ge*Udcdmd+}< z5lKyF7rBEa%U&|EK^nbF5)cx!Y32-a{>g+z%o$2gqoHRCkq1{J;=hD9xJx|&zP{K6qlp{3OuuQ*Ob6!XU>P6+sxLC3VU zL*yjc+yc{-{n=d@(tIzKS{SWff|fr5nagL-P&rK;pZ8&5W$5=c-Ib*edq653vtuRe z^hl8!ahDl%OY;^p$nCDW8rZ;JbVxG#c+OG({C*R89A9!PWFxG2We%@9qX^&jI!2WS zaqPWeOr2Wy9-6ROoa=jxfSrBL{}4pP!e3Ag5mr;X`V9p#zG4<}3#|YTf!9(%v9J~N z(2&lWBN6(YU1S|`|D(q=&>3HO@>u^Bk+`2D=n_biPM?ktPzavh%JJ51ms7Y9JUgL? zO=HV=G@-HpV-@D@@{j?Ma?d9P;=7mxdg9Ai@0Y=@p!h%Y7@?RNBK+{K$zcBT1Uwis zL^}>os>?|ipBj!3pWmF7DyjgFYl-^nriEcvPYm87*xRxS4Gcg!?KWZK{T&;FF((ipg*eY`9Z1_ zI*m{km>U=Y%Q_qlQATFCRX2xlJ^hK%h6+JXX)ZgrDqonM=9;y?4?&}a+)I=T>&pea zq5`ovD`#JvEz0zyWi=+JhwDMwkJcp$@@tFJrDKIXI;S!@3>)Ax3=*Ex= zn~+ZZc`y=9*ov>Tk*9Q}MkS-x0)dqQF==NWO4!Y8rG(29uz`~P*JlG5LT*x-R7}at z#j+fCWskIB2zfUxsgbo^g`U_4KL%NSjg|?T^K{M!EH(@r5byrUN3S}ib&sa=CCFj| zsXr2io0vdPK=x~aZPq~(HHY)zdNO~=WiuLANzO9@6yU3QKtt3>LoFAqbM~CxGbS+3 zvRyY=5F4vQoI{Mw!tEN-jlHK$R_8Iz+Bet!bNi1Zg)<10txzu!qb1bD@aFim4_($O z&v6*!AffB~qYdQivfU==$6)pj7yKr5chm-1?=t<3O`Ur=#ys}?gGT&~b~AlW(jmGi zW!Eq%>|S+FXJ<`L#68k*%5J*wWGFAof4We#dzB+8yBH#YOKCZkqKvp#10^=>NUF$L zreAq-)e$znJia=a@zaVp^+b+3ph1%&9%Txl8Wc=(@g+g%I(H$86#m2eJdqkN=MQlL zGOQu>2RSqnwvO2$O>>izWX_VA;=bZCKlBITANZk%mlYYW`Mb%J2RlV7QL~YW_kELg z5U2W5N!W)JNK^QS=2m({oB2x!{addI!q5wUyUlYI;8S<&(}uFsV`Ib+$PnC)k{G0n zPjwP!)Cgq4!GGk&>qsa1tAeDV1A;9mlO-c|xIl+f^L6bj@%Vy&xCA+;egk^|(! zGDgK$Bj%XCw={1R`MS+52nqSMH{)hNS&sU>piIKGzVvDaT>JulI`JAf^MKw0ltr33 zd$ZOL#r*c7=98e-0MkDF1Ag`s?))Nj`>TmU*{V4vk@UY9)3q5=a5R+~q|3s>d+--A zg zm$h)4Y2gvX*vF$Mukn1-8Pg?x>gzu{*GGg${J=ErI$oc%37CE!)s&;h7p3a}YBQj> z!^^QL4%n2Uj9An1vyyo(g;Qt!!3SE<_#UCNLLLef7?*6G<~RUahciWtB_dLJgy3oS zNpx8ny2B@i{p?-gA(V$DfHig(50uNyPngP1usX@=a&k_Gq=w(8_QTE8Fe1t&)O5S? z(rZkx&SK2s2lq@g0=(f7hs(Z9}ojzL!q!x9SRzBeP{1Kwc3*ER^O#x4@JNnPT zZcJ1W-AFZ|Or=WHlW{ZSqTkOKhePe-0p-Rf75v4Y8{)p^8Y$+`XJYSv-QB~^Uiix_ zjtPr8HU!f6y-wfBs6MLgGrZfgAFI1SqoB4=o?l+KjT<@K=8w0ZJOflZa`(r8MNlfW z+x+CO5k(O>3;gYq!R=L!v4iE&^lRB#wInm;0jP43bU%z>Ij5>Wbh-1=-3XtlkypxA~vzs?~^9X3&cN?vu+^Lv+Hk(e<&5u}2pL ziMO=Kl~-sTY#;G_?KY>3R?VnP-$@T7=mXe53c{I6Y{Yp*irto%jUUx*v&)hblV_#S zZB0O2#7p&7>v43P6E*v3pAbGcq0wo{vG_S``kIFj?o9(*~I9{FTmbV@ts) zUqU5MpO5jRlhtEQI;(_EoqJ=F@g1Tx_g?cO`H9Is(1g_7yrGiuX=m#-QgrHL+_p$M z8J|d@Q4`S!DvL&mXGMV#OJW0G!y8_4I1HXR&<3=skgy~U-c{Cp&uzBW0Krfbk!?2t zwjQIh8>+ON>fi==52(^suWd8_NX7zi3u{1r*UYf)blnJpJ2$6lvRyXMNZYzgUo+3? z7QLKOKYBrWI=g_PFPnYd>qA3Qp?E48OO+BxG_;i|G@dr}tbd4BFz{?Z9u|-f%14BQ zqq^ba?aZ2nmn-W#o4VS&0>ct<+3rlM3G|WJz1t3Wg~kmWQGxPMj8fo-9g?odhy-+j zs{rNMmNXF+=T5ho*o=ud7%LsJ|H3JEP6Y;jBKC0peG-Ip33jQ$x9PCi@SURgrphy( zxvc7Zxvq^au>`d5GQD7N$naCKmNbZ3EVT%Vm6pGWUQsO(--SO;{6KipL-_q>a6-ja z*7xOaeM7nYJ)4|{Ev4q?Z&0IkyHCKo2dC7-J?%71v3fm5dk9XCIP^;N{0BB}Qp$XS zrjbC+(x>Nbn*t{3a|TTirAu^nY%HrR&VlBPFQk){O&x+jAqm+@+fG92lu`l%79JaM zz}Ei3#o}fjYd=aF%Rq2WFiqA7;531sOy(40@tiyvw;NmCfjcsZt@j3C{1yntj|r0w zZymfvmZIw-MIL*v7n%A zd+Qp_Lt)u9`|3j_9`W|7_(l?h+UmTWn$vtP z;t$_LgRodWqZa2`gZ+&C%+_KP8x#=h>4psq#0L7s2zpjt2*HKoe3NjTmoPS*h9&VUq-SNZLOrX2BMH3Pvt%X6-J^pFM6uMd(&*9$%wjWU~X`RA`14+2z{oMtQAUgY1GT+*q1gfQd%%-TocK_p$s3fgJZ@`Vx? zFq(M}I(dq=HT;26JoR z>iNs_vQ*^U;P@^0J8Y|ZU|rxY#A>1WNXUr#o9Amh54vc2lZSapS=SvKvGY5$#9B#x z&%2=RGEuA7jy>&!2M#TAOog6(w??Va0!aj7V(IzjM7x61#evG#Jm0z6nfe-93Tq6q zcSx20G{IS8U;??&53Vf91+(S2|7ECVn{0<2$XhIq@{C-Ev1nC8;;k$kFJlK8=Cyw{ z%h8bcV*<4=H?XYwc=m@9O22`R=ivk|5P8O}8+wm79T{!2{|$GP>^H(oXB+UYc^O7xPt>m=I#a4Iyqicp7S7tD~j&tDt zLE=KgHjlw>4!l41k)tGeNV(8wiDwMI_(r$M3wGgjVI#w~#1z&Fmn|{4HT+EEt}j(Tj;EQbv&g(`aBK&6%S8Pd&6EPxRY=RwhRlLH>MWflqu;A4CV^n0x(l ztN56cR=gSTHt1;=-D9F&1-_Y0yl)Hb?L1ih>|rIXBQ2UfSneO&UNsr)|89(SFcE&G zov1oH4mFSQvj*^XPw{T|ciQXoHk@sphEK~*n;ak@rtQ{{bkQ78ZB8PanO*CM}YQe2oQ|XH|y`R#R=R9*E?Ho&AV7Ie%_e78|teW&7J!bU1`XUJB@J+--bVZrV!g?=&sJE;)*4!=i;EmNe z9Y}(`iw{QC3vRz=Hy)f`E~#hDH2C5A)OTY$Qd4uRF5gaaqax}BpZ-Q`Kdj%M13q7U zW*`dVJj3|oN3{Cm8NfTueFp#mZ6fT!;8?SDRjleY=b6Tc_(d(4Fq-h^qbZ=5<4kp? zF;+5&3VxQ=D!u(+?&Y<3ZtjT~T$pf_8vKaRBwKlKJ@cD*0k1d42W-t41QpqJeu4l8 zp3H44Y){M1n7F*DuA>6bs>Q;LZJi)lpgI{*g-P2&2;7y?6pK|BuL)?H0>xlB!cEr~ z!cEBkts0Kv^bKmrZ))qpID^A$5wE$mVTtwZd-9rr_1*1s-?EunNigp+dG+&k17>Nx zW3S*hay|Y#Rb?))6r6YZK#cIXA>a-(EO>8A?=@J5Em5nV;A2!+wG*V;S+m!k0(nBj zkHIghgolF4`JK4xRZP=$c7Br9watE%l&~*^fkK31GmD&+8sMk5dSfj%;qITMHeq}V z+1EBLLhXZV>yH1bLAsDFQ=Xql$a5z58ckfR`#!X}d2A6Hdow?>+MluQdj%}Ydw!K&}gl*W1_C~p?vuDFx+FM)^-B2srQ9I`U?KB`@_MqOXm?PUL~MOGHdPn27w`( zO9hLSDETz#0hGmVlxT0b`|RCu^86elzcLq-%UOHt?z6k}Ia}n?F^Xb5$c8_oi6k|; zjJ-1&IBw?nIPfI)_dCBAE`6pBi*R>5ChZR1EmdbV$fIY3Pn3EfG46w4(a$b;Utd7F z`%*`nh=l-7KHN<~Y7(#*Y3UZ75UJ7L>IhjfgO1YfUAqwu=gF9wR@l|B>ODLY;bbNrIiW-j1s}fU2ctnQWCJoU zL)M;hE14YaGDgK)$l%5wI*#B+dbQZYhRPC?MVP#ysKP zv@7Eedw$Jh5sKv1L>#A}_X&#U4v|6(LV_ef_^JT7@a$Iw^ z`+rUAgL@KmKfr$o)h$Erw{gD3##To4EVi|>Hc#V@ZC{OWs^*n4a?6!ROT3=KAL}g> zM)j6S@P|LIOb!2h%L5D!1HY{d{v@WYnoRq6JkokqwGJq>fGtFitu|vFKmhbX&C>uo zW9xJ1I8}Vn&e;17*t|+XZL@cPOcAIYJM=$71Dg;XY0$QbM*nfN2S zNSbQDf(B4pg|c1Y@(p4Cy{|4i{Z_uyodBk37&ut!T?47_t-t5j5X#A+_cAE~&~C`+ zHl5b)7A_rB-mAFWMJeuUHR#N9pV-{IJ~yO>+fw#fX)GH7Kc8*8xb*Kb$DH8Rn_;ih zM8+$X!Q{GY8Fv^LtV_%D(e=>u$YejAHQf9Y-NX;4T{6cu9~@z)e#7=b9AmqWt0EEA zW<&Dv#^@#&hul5^^fh6*&5z_%HavVXqmX%rK=AqdDY_HwjX)Go^3C{uAqVUO{(`ZZ z?W+HuSM-ZCvA5;+Pq?P{ddlBYMa8d)3Y$LwL2k{p_v6Oo2>9Scy?K>W7y!BDs**5P z;CZQTUloA2L1XcQOi%kTzjtjtHbc_c-|Jm1&+L4SPXQp>9lO|WbiAblplB82PjC%` z`*a|r%z{Z_Tg8T&Huy?f&lV1OS6+u#Q}LBeKMNc=Tlj+utj{=!+OXeX zWjJTRlH$iW-ske&D>p0m2k!SBnqQ&bqzJ5hodbs!KhWY{{6IA7y{z=#PmvAjy%gB} zrNVOUB5lqBjGiA%nR9=uPpzKqx$E%9^iad4j{LExSbE16bH>?(JNCMZz@?1P$MEOu zQ1EOkMIMYHeTJH16Ye_bW^`urLaqJ}Z#w;FS@S(gL&jmA`f%c)`c7UQ)Bl|(e8i#Y z+`9^99+`X7mwnNfb~>|IH&k@~&)%4uH>OIkRu^p__P zaBRBxXKiynu}9)ZyQN4yB`xVxCH~>Q3v29S{SJ$wvthui*WX|__EAG@lKDXEHOQ8t ztyVtw__7~mW<0~_a-a8_Vo2OyZE(PM!TVYTW?HJbR$vhlg9TBGWa$-ICn_jO?G1S5 zR^}=A%JN7}?#vv%zIytK`f7G!=sbko`A5)OK`chTnxogDX&bRanGPvnjAcc)4m)d2 z+VHS1d9+L`9?WUHej+D2r|J5G8>yPh*(mbxFe)DAb0iT{_>JHk>txxN7u`1>wFn0u zajuqa*_{-e&!6JP9PuN;>N31Z0R=vuCtX8M+V}(%_=l=sch4T1wS5i<1P1_wSKmov z!yiezbQ)eN+wE_opN!sdV0eqVi&z-3jXPEcPYB(&6S?dClN+y`IXr8?7F#s26ABOX zGOdM}^%YBOAK1!C?T>i!6#DnqjsE^=d=Z?Tgl{m14*)^jf3Q;%`rgAb|{I zq41*vq)u;3E#F0XD%FDtpbiLNxP@`ITf$&+o_*~0RF33L^jf}TrX%(Jade>xrgCn0 zHZigzD)bNMKgwc5sz|1Yn-L0)K%+o|Vl9jotJxdBV^5g+xY%Cl0B=|>L()_|b$s9XM$BgZn35hV_;pUse@YmWmz$8}&_k%D*wCx2kRLvV(3F3vc+poDf==$~j4VUO6=k?? zVXw490$IEJI@`)Pogl@uS!Wy9XNT!4o55Crxt40C71XkK!Vjn~h#M-B1g&gMZ!Hr9 z?=odtAPN=eg98-E`he4uG>x=81P7xn@6=OFn|JGiQS*BO0b~tJ&Z~oi;M*P`5Ig5O zwCRt3Uu5x`k6Gxxg0@}@q0L#;HCoSw(AJDn8?9GEm~&>S04(lLGz|m!RAfXulgcTI zi-VNx3xgzbT=@sNSDAKSZE*aQ4CX6oK?rs|mK)6sfzbtMEJJ{^UhW@l9*r_L@6g~n z0>H@D{DBUVVxWtl3XiA3U@RW)88b(kR0F~q^s^T7CfZKyeMcDpfKZqU){)((<996- zI(49ZYo@);J3m}`(su2R|H1RX$lcPn#`#$`l*nTQzO+4SN%nLYa?p*#In;RKuaQiC z{o@?Y9ie>NL!w_(QLhkRMEz9!Z}4gkdkOXGtB~_2tyjxs7SgdjRcPPw$U{XBus3S^ z2MRquNFP7?L;eDNvO48NAr}sHM&B(3Ey`=M(2-kQxG6Bh4t*gwczQur>UQ zd<`y5GW-m9?{DL~)U3rFjhisJ9R-#uj?b|Ho|y=9FHElwY=6y^*%-^m^$Fc|6_K>E z)`ly4mXX$?FHZKE6JN{ruahB+j$T$N<<5CtC;gPOL)4B{to-;-+jZrDr~@ol!4woK z$eW|X*VzB7?6M?IJHmfr`hCGGsJ$X!&{~JKgFkorb4>d!^g^B)XD6WCI{`e^lv7df zS+-a-VgZdx6AL_5LyKmeYVx~RtG>@JfO$oYdu3)lB_o@mVPs@e>Z7&jHFCSP`0&T1 z_1Nr38|`Q1a5+47;?Y8E_IlEhk7D9Bedm;2LC6QXkY1l{DZR9^vv;?wtZA)XEkH{- z<-=*0Y{2HGou-;opXO>0SYsN7vYUi$}4P=|y`iy93b*1$bYGrK&K}{DBG3);BGk{h^-Q^>jSow;t zDtpC00f6j9a}W#*VKhr!(@yT#4W3#kZ4NDrY^!N%5L4mGL$%_(*d-2Oyf%mV>oG4o zb-Xp_`JV`jZrB>f&wXxu+-9!YZw=mme~$`{)$)73-SJ3)5R;R1P&>`s8Vin8Eq3sRoSxY7H6U_k81iMX_@H?+G4{lRMF= zQ;il2z{U$XDtJvRl^IRxh%$Oa8g%^akk5{NQUUO8 z_%jb#`Km_G!mz<6Soc^10wjguhjC`r}4Yh-}+pxfYnN#j8j+;Q~_OOx36}y2(QfG97rxeYKYdg?u z>|}*ZC=hVQ=68diJE=htOowD;WZG2DQ$_m@=N^j9O!lNob9NA z#s4jL{a3{8qvekOu|fovbQ4>*YS5H7)b&qGi!W@g;fr~aQbIJGTR6?g55>Z%ePlWqkuiy!#ehu1%gkK@U%o|7z*C5s zeJuY~D);>-Ra;|2*z|U49ScxU%Eh}4(2q5F+nn&y^fFTRU z=YMbonElV+I0^M=NOOFe)1z7VTX<_N1CxKbo~Y zU&Sea9$HeY9xz!`Kv@np6f`!NrBhjRzz+41l{IaF5bWY(woaABtcyNC8-10vr5CL9 zE^RlJoVPmLX0zv(gQA0o{W4;^^Io%;=Ve(ZPKCzOQ7XMjH_K&p8`AMs!mAHLu)9}( zx6k{^$JX)BLe0#2mmKQWnRmu!gLO>>Y(QRb!Lc^&x23amk8|3#d}@YD<#-gPw+-7B zR@g^t+pIbbTHzK(U;C|C!8rKF)=`-C^w75^@o#jUAmhg?T!lM1uQ$rg>@MHyf^GeA zZ~i~|=>g~LG!-EJ;JY)*!(Bg)2{#9-?0o)HL~yldTf~Wk8z0gJ~Df)hv0XylMI?tk+@7 zBE>e!GX|q7IoRW#Ef~F4+-#82J)0L_b2`KC5c^$9<)D802ujLHK;Q@>aa4|MJmJt_ zhU|iY?E1ge553wSWC&zSUe^{?{oTA@c(hZ6XL}76Oy3=UI>v!z)k$xr^M+bwO%Fo- z;8SITXs*iZqTBWNtsM_^-4c3y)7hV%j6*{iSr@X^mAg+2j&Z~b?Gxu{s;iAfm2}E# zb{o0$_UA(T7$E%o4s!?4iEHC=lac6}RGKW;^eV@^!!eV>*ottq;< z)f<@3Zv&G@&*`dmNXzw0JEbAj4siX`pu#|+n16zclN(1xW{7d_Wp(Bi2b-n zvsB{kE%0ad&8*v@t)HQrzb-^l;OuO9g8N>rhTQ-B)BTqCzQNtkQY%oqV}OCfhz{`R z&TT!#+egY{I?ff)xDEMnjO|%NCw_>I+@SLohKH$BK^No?WFbV{wa@!_>Cg{1LK<`n z@%Npm4KfQ`NI@Xd*@K4@M@PgcB$xJ@-AlXh^mEa9v%5gjLR#0=d{12r0kD_SaKUS*+;_4B5C_qFZax98y< zWgILCp7g_$>W6#wIJTMY+51q1QJ%Y4+>$XM$UjxjMq9&MPcR4q<-nz4Va7SC8ajpU zeI0n2LXKtu@8oPu!{A!-QYG-Q(x|m6wLHV-#T(MZbn&DlRq> zi!SwNV~Rq0n52+6Ol^E&I6E1QX7iy4c9Qo_dY~81NXDY+=X*MgE<$4&q9bld)!TqA z|DU&SLQDoCeE9>(0^!-~iTP$hID(jkfU%kBA{Q)B?N4Za58BlUcj*6!arOgS2RI8W z+LCZAf094cCkhoEso*_vI8T05Gb{`fJnVWjVwfxq*_s2s7lHd26D?F^+)-^ zJ*Vq}%a1tQWYV){@B?}{(-Hwi90|_BR0dznNQJFd*F!~*7oeh311DD9l%W?-SBB;s zL7<>)ONhRq)1RJYlj(dUxExa#+!GrCsgEujr5p~84a;*DmZkU)p>1s}^e^xMav<{eMj!}@ZKhSEbeGdo+hRe{(+|5SnbCej(UnLea3 zisb`Ct>rtg5nTWe zQV@kWcev@Bf|7e7G-gCglMl;>3kv$DTv~yoOTvambV19cjrd9FsW(<~u#v;}zwzk9 zo)N!$9y}i1k2S5L36O;}#y(ZKRNRU?_Dw;J|6=pNeoKDJG z7#-wH{J&#jbh1<275HhyT8oGq>(|6Y5}}?rb1$I>C#?GqP^t^d9B(FVZWI|CRWu5= zRTLRNPqWPKCyi;nI}8`B^e^Us*WDtk!TpC1IJx-JeUn3YU1CkY#o+@7J(wQiQ2sHQ z9~iusaeZt=&0GxkTSyPmTtR+94d;+N`^w&JeQ*G@{?x@jS9cBHD^U1C`A$0nA@zTo zxQQziT5pUNB>?T!QaJjp<2c38VXsU-H86Cdm)(8L`TIK5W)j-Cprl5A8vG^kpe=AZQyvYv`(=1zpe1#8|}sN~L_ z8{l~?-JM+V{%V5V^g#$<0i-^Yo*wKv)dv|n?NjAr$u`*vxj#K#A?O>K&&+_J*L<_B zWQ6p)(n167-n?qLHGnm9{TA$mS|vCjb^S@eRR0WRYE(}za6b#yo_0;mv=E)cj##<} z!4;nXanO)ZoHl-T4!g`_sMwBCmXpnAwqX<+2n3(tO7MuK?+C&nhb1qTFU}|+yO1lR zFvSe{w~iN0>_`pSCkx3<{TTs$G~t9#Il*HV#(hYnL!(4QO4_ zEv0W`u{1g)2({QYlx~O$*wiLT>td97JLtNSdMi}gqS6X)0`!Ff42+j|%3P5BZ(Y

zSaD$od~}_DE%Mu8NT(Yn(7gw*JI29 zt$iodGyCw}$n8vxkQ(Ey@P_E5t)LSn`)=t@aS4w0OA5FL`*5WjYnu1s!p<1_vOMgS zaP4|}B=eaga;mQVg+RK~XeGq>mrlD5Iwh0(*)zxV(3KB|iY$2XIEpuxLKRz!DO9X? zceDO&wMB({*?pz53PnZbEfwT(ncm+on;zBIR*mO`SNeDUQ@=jEhXD{O!gSyAqVlgR zuqx*rH>~REq4;&MyD#jfLSG2qK0%25pa&kVPrpAV~Z|eCkyI<80(89W5 zx2?Y#sqWG`79P2c)!>F%SFPRwj@fQEmB3=Q4g=|srl#N+Q#<+~)fh8jFoR?y8aq=h z*90MRRzv=QMkvDO;2J_BrB0;5EqXoZ)Ninv(JlgU&#nI^x5e=<6&~p(>ds{^hOC8f zZWZ9av1i{*n!`>}S{#=VhySUZ57F^IX4qVjqt&Ip@{b{m_^oIvJ;=$EQB1{ef`z2kcFP=EhzMJ7hZ=KrQy?M-fZ z@d7}>OYol*8+xue$>yB_h72Hq<|ebojj*Tcz->l3011lN)whqvS$ycBT9`#-_v_&+Zp(4dJCI>=JV+dyYq9{hM~7ra75sZ{ zIw#q6D87Un=aeAX0}@o%diD@$*1LMb?!Y0&zUWdPKeMOXPc7mL4<^Zdl~&GHwxXSW zBKhUGtBi`*TEY|Wr7f~AukB`los#Y+cyKgMSO7o(8HfPy@XIDi$9klSwptlJXFIfN zW4$PW@9CoK|7GP&jsEaRx>O^WyOH<3`_kNTyl@+WKMoclhr;gw(`ySv}(7-A%| zu$J?@ntiPjgDB;&fTc6UF<2Oek@v;lD{zsACM2k9yQSV@>7LAIoD+hny|2?#YX^^$ zMiCSrMNCk9A&;%c!ct08U-1O)H3+af|7U^}eCf9dqEIyIHI=Mq8PjRaEn(d1vmE~m z$G1P+drUVy3Nbf23ERT+yZp*adgk@t{&3b$Tk3OtR}SBWtuC+3mrvHE+n&dc}czX(Yu1B`0>V-uYGUbyjoY1 zhuyqlwl=wjbc|+$d-f8SJG^8U{Ewj;9Vy2z7L_7rpja{zM!rmWeZLp(ZErTElB^j? z{4-!$MMlP_aAvFRq{-rVkH z8jYc^D;ye+$418cYmarOcQsS7G6b5i05hQag^x~>vyozQg@fyAqf)s&UIeTGRd*YW zS|#WVfhAzEY}k3MW@$}S8i$43M+zPtMNz{;FuiX<8XWn5stJIGm?&60lr|iCO9~=6 zkK$&%`fPh}3qs?1)D1@J172py9>mf;aa51w53O*|#v^#dU?oDl0d1@hF?V#Mf)2#Me zOGn^orsHt2w^+8FC%pM`%c>6w4bTy@$bERFZ7@$LncW_gE&=6bnfKw6cvUp_u7 z`t`!Vp#xr2Wv$uqRJwv`^GO(O=B&rRnhvw#Uuu@O-VMPcsuR716}cf8&D;yl+rxP8 ziJJ&@a59TBmV2(L*O9@X#I)VHze-|SyYUqfhTi1Rm)_pEQ@u90P49gD-Aw!Gtel_8 zS=o-)4n9qtG|!)?&5(f@5aA=^z{Q3_>f8J*Zn}&_X#^mK)PWHOBmaE!=^8p-0aWm5 zT7T%0itNsGWqv?yRMEQ1Xmf`TRokgNCt;ATPGfEA79_TEY~xMq#s5lbjW5ZBmVu{- z%N0#cVCIGc022>pAuoR7JsBeW`C}p^>*?9@vx`rVk)})3knnga6cL{gt|AO{XD9|* z9fD2P$O`D1s#!GzT~Yb*r!A}TY#W%mU48KupA0*fH6!0F&;?ys*;tgM)y<>yz`Qze z1k5sV0SwpI?v1!kHIrG}Pinu+#U27A(*O4mAjXgkWT8NG0fUV&>%?`UP=NL^Lu}Js z2rkb7`h8Y4&t>NAoA#IJUvGMQ5)SRu0n)%MtLV;&TEL+vo^kc~TR&vI`>bD0g_yqPM>{1rLBkFR?I8PT(f?2;J6c42 zK%G|A0I*-uv5XkuU0`_}f*5tLl6Ni`+WSU;9sy<`0(cVv94-Je$fN>1jCWz4;{?xtxv0xkx`NSQ(aUyX4u!tWg(9HsWYD7qZ)qgVwkk9L zZL(`-x@`zy9BKmrzu!V$fvtOu$qb-jo;}7*WSjV#H%jijE4mX>TC_?Fl$5T%TOhQg z=+4fTEW5Y1ri_*{CZo|FJu(LvjJ*Kl#Td_h7&ZZn2oiGrh>pV zU@lh2P6f@`qv9MhAsRo3G{)Nhl~NHK5W`W%#l>Va1yNL3QVb`E!hVK&x`hr$^h~_9s5j?!K$EyIS^rKl;}* zkD1uN@^p(k3r=X#1%<4?iW*(W55vCcd8416U90@z)^_dartig?w?Z?NsbYP@*8&|7 zpY9Ik-fUD=P;cF|tZwNIE-EV8xR!tS6RiB=*xvFxpWuO*b->o406)9xmn z(R%qhP<;bz%;0Oaie%XWb3ekI0|rNfhq&gDDdZH_)P4dP2wiEvAoQ+vLdZH**D1WB z;Sm$#xe;f6Fed?p5jTW7RQ3hS9k`Au3OwYWxIB+e^pUU2(BW*0I+UeFWjRe;L>ott)!^whg7p zd8QQ_lh!&m%GIBExKw&JE%e|vcE79F%iWfNI}3Au70Gmz#!539kB~!p;G@A|;XHby z!XllXds6n4usZ4r-eAS5Nnh*9baP>Nx@oQ5biN3zMMo;+ z#Y-g$Z%uvkqffHRFF68>HD0bc)v*fYdksaoIe2|{g3Q8KV%s-lS{#YUP)EQ4+SXaS zVVHIIN}*SOWmdNVU_x@>vT`na`E&fYNNj*k+L_L^ zV70-@*E-cVYPSsrzE-Iq+C_`kyHF#bL=GvAtZpHHvNrtasy{t4__F;Jbu|V>@x}Otc*eq9B=(f@T0t1iC*CK> zGd40l5VKCo{^3J+$6vo^Kh{a$ip2?B5_`sI^ok+V(ap2y0NXt8+i@&|Sc1ZVjZ+d?^`io6FE0VcV0{vcT>di7ktF$o&g7Kz(PMJs5pR*11F(O<|>grHsQ zqd{w`1cNLKrP!IJObR`ZvxVw?9V(?>1;cVC)%8t ziu+*BtHV5Bxd?`fx%a_EWj_V?zUSip8YQbmt`hZV?_+Tw@(j^klcCQj9}b;GgPwuy zW4KF|KMQ+lTgu-qiu`9{S?w<&wFc9)ABt4K23smYTcPoWO0TH|97}Y>`k(^QR8Iv0 zhNUO37hd*bB@(UM2HNyjwbeUjFmOjL#hy+&ml|e>6yyy}oikFz-5hF+t8EIYkPEpf z0_G(l8`{OLE7M$+3{#>Asl0)lA;wZm^cDD1b}RjHWc*iX0#GzH2h0`*7F2>&bH1YF z0+=%73K$u@m^qSC4aI_AH53@j8)Tzu=pl|Q`=F8Ep)*1lHt)VhgK#HCd{D&3W3m2| zXgtbwec_z0|KrahIb2uC%25(G{n_PG?+a$Fka&M?N4i7?2L7z(|GNT+o0>Z>DJ|s4 zN$d3mxJE$wqbt0SVD4(()Q2VNsj;q#X^WIA5;Z!aUyJo<=0v71dX(!sDo=`l7Hg|x zeT+nm{VLNY+~XM+xrBcDHR21NgZN(2FQzudBNs!EKO_3c{BggFM<8weX9u#eKYJ|Q z1ygAq7CL%9HzlL_i>PT}oXi}P&?H-nbrZApN>ll|S2o$rfd?{V5^OY@1sipy!KP;O z;DNzY1gQMQxZ3+kE^mqA%v9+BW>?`dYDjx8AJ0^HpOWapt`C(IXYXwBXjPKv8&Pjb zcTd4Jt(YMf1XT^7(g2!`m?3q8%F9h9b3G8$)$9^*V`ct&_-}?OWRZc@j&=EHK9381Uw*dz=*_-RZ1~{4MoJi#?;29>VoG@Dp7+NQ5KJt$VmN4 zGQ-$9Ox@g#EbdXK_*~7tU}In_??7IEM2}FNR;(Hd2VoS>EqGCNqyS7;LC*q?)z8%h zDdeMY{!GKp!E6|bkGs+`QDz zT~%fRKC$eMp$jWrnObHPnSwY_sFLXNT(t;ode*y5?V(f$fw7fB)n0?qeQ!xn?V3Ko zJF>&iFB#9?BAMaqaHO8%czY!2zrQHO)1TN%B5qKRVOK|&QRkIrws{`ChmCMf%G6ZLY%oiFi!gQ+b{KWT- z^r$bj>6u}Tg;UbrV%B|wX*icHBG9tAGssk%2}3Upjic3LaV$aj1`o$@x_D79z^q+- zw_8ehyP!}IwnUOf8B#m2DLx~#MnkH`~s6(lg26#Q7n*dO1Mt+vksQ55DOV3ieqD1f9DVN34)jsIS z;tm- zuw!WvoJl6jCso}lI5~G@-~A&QZqXX-sXLOx8K$-f2wRE)TPb!!VNi(Viok0VaRY0r z1h?%F8=(&76?~lKf*0>ndJq6;8X=vnkfgDR8x^XWL09NTcwWILkO7aEBy9(Pu0KJX zlX^OG;(NnDQYXfE2dB(z4}r-rXm?(SaIoV>H?T65~XtxjKKLbnw%-BEeh4961jaf|D5UBHLdLLu!#^p($-g@EV`v{3j*gJ(WnLz-Dl-Y8x!52W=tQ-k%X`mDtH}# zh2r3p~&T}VtP|pB7Spb?nqnF1c z?BgNh68rXCLZ2sgUhKXhR~_^hDa2DfRiBuIz&A@$SKIr3hOtb5>o+Bqz#C8+VgY%0 zApMqx?7)Gd9!5i>Ar&f+KN`wI^AxgH$U`!nhvM)HFlu)4ZRSefE>rRaVJn>Ns5%Pf zqqFY|8x(x&YX@NyxayCI>vbOK`nYur-darOOCItPvH_99Nf; zlN08M42Lbnh@lV_BKaM{h@}x_ti)^;i<5OjB3&Ak0IQ3v0GnX60e^9}R->p3F(K$w zhoJTMfXD2jPy7Ou)_lA&g6dXIu+GQ^u)-vv#xqwwE(g_kHkXgDkEC2rRJlsjA17zy zkYgFTSL08`R~z}^%1UB>S?#N~(N8@e>AMv=cyS=B#te(Q)!rq`rRh_<)9H}8-*!q%-m{TWK$&{nYSXR#(V-9Xhx}@4_X;vyfcc>|Z7=`%JU!)1gn^rO>g!&Xt6~_`?3y;b| z*fs5BvnSGKGeTV=W}4E=5z#ThMTq^i0!dsV@H3ZnTP#LX>@@tabub(=;S066Lc9+9jx<_#`uUj)7*4)l!#F#8 z3*DB1bp!jmpJC|FY79*$+Z28f-|s9HYFcWy(GtQHo?BA64mjzcICk7;^Qyxe^SkFl zw81BxG46N7ZD9i15+Q{x(mGq=D7)GQkCYm&_IIoYT_S#e&V`HWDfjT>Md@(ZQn+ji zeYQfvZKar!?MVJC^lWvo4PU6A)T^G^ybaakyN>!+vbo#S&V8{cwX(U+@#viTD!NH5 zcuoK=9{Ab7r;_q4fcM)5e%1JTy8!o#RjC~2#fA8GR@bYDxBl`#lnaw1S2M{Lw^Y|} z4+&&N;fX?)^)b;vT~{o{`foc?3#6m-Vu|E$6G>?V|84l!j)oyrf0LxE_k4Cw(V)y>~}*31ILpq6aV+05jU+$fGW$JJBmidGj08X`lul6 z>fE)x^5WXzOqb-`L_6W?$H2{;35&&5P&1{CFvQlD|3Q59caR_m$K-7zvEPd1mxbf) zhPTM~thAHjg~-osPHD;%pnP00yNGuTU;qOczyOBzc2b&RuB*l1c~1eT?*}E5rVSJh z1x6?^M1e613{qf}0>cz)9Q(Bb+cFKN#jVM-_n$;|rGIz|@vKm^*M4ckw2Zxplc>Hs z^Gidfnc12A)g+R2l%)0^$Q@A2pnxz)1VL+)=VX;CExGnlORiRG(drarS{1hJ^e{jb7@@!r z1;!{aNP$rb3{zm7LJL@v>D?P@+nwwF-%Kfyf|cw5o}m|Fp1PVefOv4dYs_{|B3D@} z1bL=rNPG8L5f2>~+%9n#e(6w$3!Yf@7c}G^i7Sux&2EDB>Bw~T(T_9mGghD!kiT^; z?c&ZPMxHf&+8KNoHsd@6jsS(lZdb;x0-W8pW3ORNx^p!TdeDy_sLxLzqH&wOlgCdc zdc3>Cdq=!~zy}kYdRwVCJ&cSWVUUmancm^|<843a^fUlYCgig?Er33|`=@a_gPs?; z))4o;Ja+<}Mm&2V)B6BCC)~P-lVNyCu=ENMuizMO5de$9SuEhiOz;xOd4(nw@g#uJ zNfD0{{EY>cNtR+EE)(h!D5%RLK(~my`K4SA;f<#G@rAUR8CLKzKOj)w!$dxA_T7g1Ein(X~ zaVPwN&q-hTBfnElJ0sw%KRGwI?y+#&9Wmo3Oo~gmJM(MnWfrEq2-0lU%h`^0w4)vE zXvZ_+67J5e+j?%hBWB!$NpXpFcOqRV9QPbDh#BO4BN zCB`Y}5_!*%5^*pSC+TxqdA#{d1sz`WC0{8)$lxT(h^E?>FjLlk<}m}-I^b8lR?{~< zY&xMkhdTGCmA||5rtZB&rcV(+Up8v~4xl61L>1uX?HN7IQ7^=(kK|m8SuS~~p%iXL z))y(jZmPIoXTe#rQ(CB5S(k#ZCIwscUWUPHD=6nCK-b7nQ+U z-+g(N8gk9}EKl2Xu_J~gyY4`pA*Kr}f#c?aZK{X|KqZbSWe|Hr$X|KA5_F}(SpM=D zfO>7F7&2f?{Ol$-Pxseor}Pa1ZMAR*G=E>NiNdWXFuPq+Fkd2jIBPiMnWljIQR!?R zrFaT?;U1Lo$AwT*BJkaeCX}Tc%DA~(Fpqi0s@n=tpO4frr&btZ)yDeXu(?*74~%BB zWj=ol>$7Jyr9*fED%bdU{R_6CVhkCZeSe0n4>c)8);jut)Lo$lI91I8vz?IDY)5-( zVRLb=wRS?f&vp#WY_mNSU=`6x8GzsfCbu;xi7N4)d2LHQ$Ha(cbfl@{4F*!h*ZAp5 ztDRC_F{JvxgJLv11DGi(D|7V4+>C|=N$Q*Pi;4pv2=z0DT2z7(Y}>*y6j}mDF$*R> zU72iG)~cN%+(X^gk>ed52fPS+5_ZL(x5BT_u^G*z|jQ`@WPF2L!%<@#k^0pVG&9; z4KSTmwl|QmQpsPQtdCPlEnw|--vH!)bXp)`}9{Zi4~`200WPJ>!L;P;aEM~dLx`iqC>-?7*!tol5q zP&oKM;czxb003up^=8D5i9-z6=9zXE{-8?6027l^f!!-#Xby73HNkj}_NKjWOk zdchb9qGb1Kw-6)$@Y?qAY?a)vAJR=I|i5PvRAyc(ox z=(fhRw@49)SxFreOIMt55CTvSpdb}LKY~_Z#~EEc(uWbZySmZiHNjpdS?}JRP?78r zN6(zIZGBc)@ErHxm+n+PlgdczH5Mf0LJXUgl3MQLTys39{_tbsQVbqO+z)Fm#>gsS zuhjkNdZ=f6f1=43*vZ6vRJoM9jHN21!PJ>NZ_;t{Lo-}spQ1Lk=T}*6)>{*U=|IZT zSzPiWpd^xzJP zw0c<8KY`hcEG2Kcdp0<7^Q+iIyMRV?7N{ zFm59c;B8I|FL!+L-SCyn&h5t#mSQb*DJN!Uw!m?Y*^qYKN5!x9>`Yw!8Ydb$-4d&f zh%Lb5zi*jUG{K2qJSA_T1gkS+6=y)}@-D=zd}nXO=e~o($UIZi4H3h8c}@$+=N8V@ zY1sYo9)Co5HoWb+FW~m_%!H+zS?>t5z#9W_Pj*pi!d9cWD^4jamdq|Fx;vZO4TD25 zw<FCRR`p@h!dD5!{9H62zt~hXAt5GA4PM4vUg{RT>m7e6*)i6y~vCSY_3g)KAW2{ribrZ|0Jv zg%TfI(ge4{d0yb50W5kW2Sd{+H4lC71!+8Sw*JrblpAu~L; ztzw%y1iEysNI0U$mfkJ8a0PXR5&yB+BO8FO)kexFfCsg;BJFc#O8Ic6c@kw>7k6^t zmQc^MgnR3Es^Js_-Ng`IK)dg^nke0hb-0fb{FoI%5VI@BFfP$c`}lVVL2;)LE{kxF z`H#|6(!#L7I?D{q@dlSKA$7)6QAaXrrqv%(q(dYCjo`2GgJ zxN;|4;;_u0JHjNaO<@4;7rH<&4x|;cj0t}m@@udQitf(l_QQyfFh9e3@>K;sJad>v zsy%ysOYcS*w=wnnK4-iiJjThliku(8eBA>|xU^?geP?PjDpIco^{KFq?Oi=qXNq7J zSP7cPr)sa)qf@{X@57}BDDJc`Mc90Yt;XK%!!pr0wl&Y|M#(c{9JwRR0t0b!H%AJL zwI0(1EWeAJ>gPu{ms%0-hC)12^5esJk@2OT!)EgJj3xYKa?`-wwQteNV(aW62cOrB zV^e|apQf{C^-EfumUNxm$f6+3k+L>ptVPUYfP*eh8_X9-uvvnAg2EZacp@E14JJ-T zdIBQsbShJiCoX2etoN z{z@g`>eIzD4KQ27c@Aqkxn8r#!7Z^DPiA#ksjd3*WY({sF!7pqXUnC^YBSTkI)!<@ zX&&Kzz3&m$wA7f+m}8lL2MnWpY*?BRzeOta?(^vpXaX^`rf@kle3UFXU556&g&&R@eHLO^q;{j#-p!>h+!=DP zfuOq>#vuglzTW|q`wTP85A7JsqDTspiKv^=q*4F4-9@}#{*T>HbQ9*^A=2=0I+bjg zilaE$QR7&rwP|p6{8kcS`HnCP48*zI!(~j_>Eje@Z7F79GnapyGrv}FpX8Cp2L#G2 z!eZ{eyT_7E<|@SotB*CZx8xg!#xV%50a^jhIDAG-<1n?3hyr(n8ztu;y#f=$c?hH6 z)TYjNi5E^8v%o;g{^`-5_b?#FOe^C{GIzxqV5SDUmNJez1Bzf)SOY;1lMX=q+mJeg zXoO!i0t(^SQASh8`dqgnoB7TAF>z{i?&6)k#S)c-5{tzm@SApvP-0*G6LDJeE9wyw z`t@!()pUWkeI-e^7xuoFv%@zg>*__FWznf$tv6X!!Y4BTK?!wbAuH66R zE$AMs9$+?h^>xjs{(@p=<4Z)20Qizy;}E)(n#A_*f*vLbO}H{D_=*@)(Z3vRwsVId z?!oE-W+SCg{Lm^ScL86*jDv46PJGc+hx&v+S-m~O=b(!6EmZ7yNpB))Ww^yS25cJo zqy_nAW$hSAG+_VB&GJIK9GW!c5_tXI;0bQ;}8l4cEtb7vz(*A`YW_ zuzG;m6v>#2kYbOf(VXRTU4pm=s|T2kPS!QgUku4zz?ay%`p}i;$qm;{g}TVyFugRa z)*TWM*1f7ZgD;(z4^#1(rt;B)9(05dgWLi-%$xPoKW`jVU|`<zjsU9 z`h5fH;h)yS$%bzs@TUNJ2H|^lfU!sIYCt)r2~P0F$M1g=;_+uXv?ovH2|H$DxxXky zJ!%=tU+AWnpfA(+)V4wR6Sd)zYP3?WYlM|c1$kGEQ6V-ZoEUU*_aVP@&4C|^LpG| zEAAfGlKB*v3MWn7h_^jGnyNvsCzJ!R$iz&&J;rh4Q}x`Yk)xBRLz%s++5M^Ois^T? zqrWIA*>>5zGoz=RDO~QWfP4&j%9}hEvKQQ>Vj4zo^fEQ|oxWp7Vv=0djJcYPuN_^N zQOuv$c=c_g{Qr$-jqKJDP{}->+9lSLIqmM6pmJ0}f*bOb7vxw}yCirjrpf33l2YLK%#*+4ERCor&8XUv*Syrm_Ok{P&~&ShEmJ5OQaD?i8VIB2#P zgF}}6|M*ZtlMcvrJ@F|;Fz9`jOE)n;xzNME*%uam^X#{_@dLk|cOfX7zm4xi&chOK zU&3RvE-CU`=Kgt5%471gPYXX;7af`P5gJc?h4*2Y|NHA2ztJ$i|8b3v+0Qwd_iN7O zn)m!rzn{PVd(jhuEO`N`bNhVT{@S8|zCmeJB6FH7*GF+xA3!U9AyPji>{$u@0sMDI z`6u(-z>(mr`bE8Z_($Mp7yJ4~eeL^AIeD^`&COw@$^ELSevWgaK0tmH+72TY(I5Lm z|NhHmYyKQO+EFO(!{*Y{(ecBS5-3|P?lp=w>~l=$U#_7$HD&aD!EI2E336u|-Oy5X zg=09UFM=qq=ytMe*yWB-`Ene&Wso*XcYzyELZt8P)3y)2%jFpl5j&IBy{+~X#%|(g z3&E`ZW0X4%OaoJ+xX^3mt9T2|&T{V`0x9qCMc6(+6aO4@#)>ahKi3dTc`H3cTfXI1 zJ~%#k`_2m*X7Z z>SOwU=BtzmXQJxqGtRXl@_o8}s+Z7}*{>Z!>xYib&U)Zyv5S>_kpnr?lOP@>yoQJR zxx33%rpy{!6A8_JOC67MtJDO~t6K0j(1(2{i%)%tHBm~2mH_9W{+B`;JQEoNKbM(i zMC4PB!Id8{4pvyF`()d!&wJ#W*|#j-U1XMvtI&0w7YcI6arp1WPlITE z4WZNwlq(bW`n?wYSixR7U;Y~DW#FX1+QtCMJ4x*OIrwX6b@)?ofJj};dDbynVV$@> zDNv_NRz$_~w#x9ZJkC{#2ZiIGt2Wu#8)ny8(Tk=YlQKRdxgx91kwa;&$vvb{*+fkB z&#=?nxu%NmzSy!&yBKESesK$6yBEqs1Ms6LIy8Vi0lf>q-tTd)_kESGIn?!rV6YF` zDQ`hpuWL<;RSENIIg$$+tHt@F){Kg?JQ)5S6HDjSN_jDh`t8dL+oA7N3g+5#4v!@| z^)<0sSe|mf{BsPx%hVXOc2-buXvmPFH*Aph3=rGYX4ld>j%6Xrt{SG`Id$y?%+8f! z@{VsZKP_&v9Lldj^=xL`bbv4=voR?whYRRiG&Wq;N1(kj7gtyfc)&(ekYG4B2}W?b zy#(Ne-j;x{g*bzD8AY};s_A50sGwq;8X*O}MxUOYXuk@s9;wX9d%FOXKp)d+=pP*} z=$aO2!*PJ&Yc5=!cFWuq1WL&M=i4T zItt7Srk7^`CpH;zxD8r$hk5%E#r@*X(lBR1G>w5{pxaAqnyQ*V=03Ya`x}b*$)0oj zGhh1?;6JxfRM`b%;=U zdT*DfdVnr>aZ)Y0E{2|dTj4MM2erg1m8v6$%${P10*g1*tQUSKg;qd z#T{5F2&0f+4VIUNr72BadG?$F23xIjJBKi!lOr4kw;RZIzyT&)dILbFvzvdG{G#~! z>hpn?0ywn}s+u6K+kPd&X&*b@c8)zQM{RcPN@|4JP$x?9(`Jfar?%wDY3yICu$Rn= zo`a)?6lnoLcQIEs5}7wdv_ma0XU(z*+cn`%iBh@R+)NjlA%&tU@rE3%G4@{+m+5-mVG0QYEHr-(^fz@SCNGxLDvu_ij+5uxZV5?h0u2)*Ugso%9t!J`8CWj5QY%ZRzPQf-^*o0I14zpfl9z^jMDI5^owJ-X*yW^+G>0YD>c z4iimZAY)3z)c_=);(o2mVPsB|WcKo>&-M402tMwZ@c>YxYPmZrp27S8&_+&gmr5mB zlN%YWy0=}_N2vFc$lEz?6I_Q6pC5t&6k`G*3v>4H2MSqvCgrD(q+Ft6OIA5Wv?s&rjcPDEsMxNC}ZWdLD?ycXfJPH?k%3RG(S zB;<3L>Tkh3K)iUPCI*da+UW+S_Bl@sIqQ~5ay%E@OuLcMa@B1z7D)p~l5Ui#WxniO z{Z+N&zPzl1T)CV&!?p@B2se5cU|DJyEe}bh`gGb?~M$$Fh14kvOdriJq`1vI{ND~hOL2!#L%tr=u4B7j@L02cbUCbj!nHi4s*L= zdMkTz#0y{>O<^8j%W3V|LGKGf7YbrPc7eCq%KbA#dvK$YJ^aw3Xt@e9H4en2tpvWQe9WMl zJ`6zTm=N8lE~O-VlA@XjHlWauvQg5S!Os8_98~g2mnYU!l|E|XQs5enRhk=AZ256Q z3Ry)yeGj|m3|QA_E9t^fXC1p@G%*QKgk%ra)p6wypT@fkkB`ktA=^gnK0X5H33FE; zdlHsgV$)6o@q)dj5 zE_c<$&!^xl(%gTJBZa3f6J(4t5o`ktzV8Pify*k*gB(^Koon?}F4qVkC*%&gcuB&Q zyn|GmltjHhT!2zq^%=csj7{9%pc6)PtZbL(NOS8;w0|f?RHA$;B|tX2ITV@!AvA{! zvM&H;VD3uEkpAyhfR}i@*Yu(ss||!#rYTy>*hzqfKc#FW1h(D3Y%W@oyW?nGhdV~k6yV4M;t|W)2OaQB*NmO#V zm*}4wV~S`;YlE-;zAmH1SF)4tr6n3HJV);Fiv$Z^?31sH9Pbz=!3wh?p)zzfn8mKT zj^2%08P%wJ(&Glps|1&XMM0E$azL~vBd_)mcWEkKX4bYnP^{}W#0TA;vA~khQ+_4& zA&M&Kb#GTiaDMoVLk!nD#=y4((@(?61jp=L$q9n@q0HpS&Hy>WD!6u@;|ExxFWL@O zx=&doW|R$ev$gCsklu*-GHaekSgV{88EVuRY1^a`?S(#WTcSy#hHx%wdau@1sMcCa zfknT*uP}E>i7<_D_#H?|iyG5O_}Sf;hIL8dhE?8JElktiD(1T`6;azb?*aD__6c?p zA)Sk9DfG4^HVcg}!-}JJL7?&^cq!L|&WK+fLW`Is9VJfkcmG^HE{s)qNLd!o^e-uxb z^XOGySJ}cT|60ygewmoho5BS#oD|8zrrMrK-iX6_nr1DjR~oD7B#}+jizPHUq5!Qt zzBHRjUn`u2bb=C5ht+mvlKrxrvZaP-3lUDdUb&K~ppeTLq{9aMCYgvd|C_OGq86<= zpo)JN&XFh-m+9G}9bHK3KB))cmGj6Dh45?&8{9tn9GgxEEwU%cO^%Q2NSkzo@2>UL zT%!R);kRwSN7Z0RX8ju=ZGkzY!?2MRdVsrJ5S9W$VrGq&2F^@mrra-5 zY`Y;ngamd{qblK!6M(<>VM1tR;0&3YeE!_pKcW)RmEZp5{eF<$rW733c*<|Q793L- zPO4N|_#h5aK`>kHh7GY(tT6g%zIbux?Y5~(AO8>@sg(cF+<<8l+JG_mRM8M_ncyl7 zVOI61hp35!f(3bMr%04uYtruVHu#U~cI|dkQj#q^;ukTHK0+$cCwzv^++VpAFBYw@+ggBJrGJiinky?~2?T;>Q=O;r6zRv7Afp5sSlZ!p!hWa3rv z%euFQ@6!5nzJ|-ftN}2|uk%CnmGYraN5Krp;tRS;dnm((d=9 zANQ+bmV$7WEQ1k5X-AC;b3<7RY;xy1OlP^ZX2N3V;Ha~Vj1%s>$0y~j`}WBnveI{H zvJ;y*7T&WdlncR(n^v0kX7Y@Ckz@=syYF!O9O1?NIP~8285Nz*Td7qdpIuFrqzr|M zb1ZK0$}w@jNuWK6iXvJ~#Sw*Xp&PtsW_49&D6qc(K4$iUHye-J#dJgXDi#Ge&H{`I zH5|Z@>EmXzA%OQ6V?iR!qmSXX(eypEv%&r7{DVjViF*}ibRnW@=>Wk7q>Hm4-}A3w zb`z6p)4&`{MRF5W80F(3bkh6<5t(-Db*27e*g>3GqwOEAjuIh|sZ+x=i9>3hlFBEx-z z@e^Vju>Zyg2h|1l`D78MK{bU(P~u z+*>7AR(|dJCzK9l(v|X6a@aR=kDGZK_@i!KhdE3*@k7=$t%9%-YAA%OQ)}w9GY?1> z!LxpB8CIk<6312D5kqrs(T+}A6JdXmYeicM)t z$v<1#rHlbdrMq`Vi&c2`#TWNnPCF1fS&(ym>Xjic{7k~ZeGLX$2@@Rj71h5`6FL(K zR|$c7h7tD#JuT~#m{JK!bxnpZm`~R&>5%ayC+_7`Q_Cn%QYJ3{z)%Q}0AJ40m)-xN zXCcJ_P1`-D!zQO^mIo&$li%4&NVab}a6v%XN}XV!hj2ZaxGI{v8-ZF02Kc*+DdkvA#>|JL*=nt# zrD|coT_9CxBFfe+Vpg9*+(tbI9`Ejg_f0Apd;mH&9j2<-K1GERa0Djk?46J0Wj~Th z-Or)ja7JMn%c!wIBcvljXXH3In{BEDs?DtSXt^mMOW&LWCiFxc^j3bbWiM+(%4D_s zwv((5oBiVV=44JyYiTG!5YUvGBwZMq@0vJ+7|LtN8-kmAhVYG3Mpm%~GSAn$@zIpx zKA!GjZbkoU&t=4Sro2)LWI-M22$Jw9{uL^tV(vb>|KqNW%^0*d{LV70HrF}GwNQ%1-D2G3x76tH# zjfLIUxb%jZhhX+Kp=*ufCN+PmZ;$LVg!>KYpvxAPxs0<}>&4ICrgI184u2#4Ru`=^ zmE6evFco4at61hpx!@P%!cgijOLmptcsGz_?mHFDITwFXqy9KX|FL6EhT5NOv`y)$ zDpcbmOhZ@KhWQ#)>_F+|vq?j09k1?j*wq`sNd*-hl~Sf(cMQ%e#NQ|>bpR3?MYH#> zd7pGonPzInsTZFty4$&Ec*`K)?6=iA64x4RX%$c>SZ&??k%FlwB6p%(%vTZpp0)Gx zy6N~0-dd3m8`}2etJgwIZ|>01s%z06`|F6-f7}O);d?OFNZ1JEl#%9e1U-6BVboTg zdziEqPS2z#JeUmMMImOh5teeYTmn_N7kOD4_5q(D^K;BuvLCIP>;bSxR1p41K>vyg zR>-p>ZD_%%=?oL1JBF!O3yESz;KM2w;wcq3gQr@N3JJLY!Wq0x)-t;~wDyn!c57S$ zhb9xL_*m*7BOGt?s;6=k55(5nH5?J5Giw?&D-|ZH!80hxU zMZJ>wCbCSzMuusqyxcVn$nDku`{-t8?#b*x8HEx71f4_pVvyxqc3M^dOA``QEBBAb~ z2kQ>^ptDBX+}irQE=;3;5F*vnX~z|AP;(~RdK+eG?n|V> zJqElDUp)#O52^VATf580AIh$-3{30fO+u&-v>07D+31NAtA|v=GLHM$L4jM`Kpu_$ znfp05u5d8<2UZpm2HM<9pywv1i0Ns5DxvoYrcz~|M)hLrJ=E>n?sTnUdjm{XS;w>P z1#z*VWGj8*A0|O*EfzaQCfHCFfMlzqQ+k&##>_Z8B6$k`N(Po|irN@~>S9X)+x+v; zA!FDVEkNz0s0_M2kbz9oOiH~u)2rNM;vxutzR{|k6soHH-;(y6H3tZIvPB`LZ=V06 z{_@MaFQQj?_44C!XU00ky#AKrPd4mY?7|TyTTsx{$_2SgkZKjUzOO3Pl&-Fu1>hkr zU1Q)6nHNMzMX-G2!qhKtOTNM(P$wpo+==Y)iU=R;%op982YBrUBkI7Ft1-a-g+p}R zx6BqVEc>Rug+D(2a=3(ztb0dW6X4Cejwpyr56v^__OBP-_lfwBJ%;c}&+m@O&~QJc zg>8Nvt_YtPzX#YQTS=)Jm+5upK)Y@ABfYSad1XTF=rS{H?N;|>`zThY>Q`)a38^r1 zp%NHJps|&&oR11Dfn^oxP7`18mOZv>ZGScdR}tJkBAhHeO1A`u;$h81+MArG~qjWD>(dnE3mGwsOqe&L=m z<4dN8Wfx!dq0%M~tDR5jN0%Ca!` z)|Hr>DmI}moYAN{7v832_fml(nHtUzSpq8$j#4-ykUeq_M`22sspceF@gk;F9-X(f zhXAA+?YPfp7OwF^IHPm66#8r2JsWX2f}#aU}HviwXYc{KBrSXazCJ!$!Yes&1xw*b$N8w zyC+%kAy?`K#yaGvy1hs${FmVaG4QfQV%DR^_v(NqIyBi{WtLEyob zAa|(3GqOYAt@$Rr&OOy8Y9@S$Y8$EXS(rvZTp(e=Ej@Q~jwiiS-Q~T7#r2D`*6Dmg zp(MBEhbzT&zR3^*;fjusnXeDrtu?%@5=)+M9vT=S*qSuxIQt*sRx?)_uJ#)Dsk7Xtk}DBv5Ycbg3wnzGh~C z%cOpK8(QfeGL1->lJzXevw9-NI-a`_B`=OGOJ}&M(>l0%TnkGdnUijWp>qEBdJKGH z^Sdm(ytr_ynUMG?9fDVv>2&4`#@S~D>DnN<9rNN)Y{H;wjFZ#_&9hm9*yY+fF#T0I zFZ1=1KJN7Qkd5ran;PNqjov#WyIM7hg;dlA$xRYaNyS401tWN7en!^uD?u6fe%k-q zF#M-HD{#iVJTt~B!L-hoLIE3MLd5YO;=Cq_`)cU_shDjXEMmR@6=>Zr^+*iq)X3-3 z?r#KMgSxF@noJx1E=x(|dqIXKiTWY9Mx4RtggRo@MMB?vlIxr!8?x80-m#-ZQLl%Gnl?xy~zTi zVuo_Zl1NJ91WI!J7MJ@7J7cZdCfcDrQjtQ=Z^XqjhpdYthoIt!yEYK$@CoQ9^}P6jw3a|6iI7TLc0$LTd0&%h7k1R9+D=FDP%uT*F>(hcYsPUfSovT9c`9-juYAJ1s4$yPfg7L=?%Ptx{23GBqIb}%Zj_G zkUBP1stvAeA+7i8ypSqxOE01oof~1wR2{!RQ*(1`xrDaJ>r%cbapidPMiGW9TL6Qy zR28`D7@L$x#?f}@c98;(qvm;shE9wXl)Wi;!RcTg_Tju!YtN{_3K8K!kXxe`iJ{%3 zEIUGJq+YxA?xC7(0}_1xg$rOTTB)~`m)Timv(p>}BjsBCn9$opCl^t-qZzK+!jU_K z9z2=2>A!aaSshizChuKuS;s_{*d@KH&jeywY0-ZUve{NMsV+Kces^&y2W<^pO1Su@_MC9BL{X?F%Z1V1IB7XIB7`5Cs{NG6gf@a3|HKrGVCaJgd z9m#1g$Tf+Ft_HNclaK&&iVpS+O-|>%e0~^@R!#H2(QSi}IpS*;(yo5nUy#%B-9S&b zg+``*ki){GnDIbGxR_Y9Y3jOiycso*NdsA7gLlc_$a`{*#Rou7_Bdc8L{ONsqC_rp zFQ^z9(H}T>gNh~B_3z&(dN%eX%sCi{wTwU0o3<`eO-#6B*0Tk=1`sCJnIexPq&Kj+ z5Zv3;hHaXB%RN)4#doS-J!gU>QlvQnRaaYzK~6W;%?dj zs+QG7Leq1gg^9x?*NGMfwY0Tm@^q7pKE%&QbIo!uX(an??Pm^(b^rM9?Ag@4fKofC$`^~(1Fl4u37?5Zh zIv4#)qnB6*uz`|*1%LpXw$ZnO=aud@#$57`6}xT{Mm~juBSAM6rs{=rGz{}ECIt_9 z#|1o_qYhog;&ycp_T^j_JZ}~_h^otoM++}1>)+233qYf?k-od1z=i$Jp~_O*hbB~n z#An_*m-7}ds=apcNNHEHpd6d#{F*V0TWaQ?g5=anbg?!TtMO?6FXqy_Qh74#{d(jQ zmn!z3gKW0dOsY$pd@LI=l}cV4pC9jD8nSrHX08LlP0)g{+3qgitAcf&%@efjQ&#AK z7jS$Lk~`8W%#$mFtZu%tFmc#A*XN6D1S;o4rWbGfgFO5>ogcGuYOm}?)EjU@k3qdZ zds7vZL@Abl)Nrtk+gckI5aw+$Gr|I0(j@zwFGmVI71nNOi!=%fFDoZRyWALdkdx%+ z{)kE(i4aJtrB0>J3k+h%BaY3z4NsWt+73vI8d+|8NnX)MJ<`ksOF`IPIF5xk9_$^a zG(srk6eG!WIe%o9sE!kQ%%Hc9POT(EYL!_kmn@U!w8DO!CctrxY(X)ZOx>?3L!Lj) z_dv*@+$oLVDE&nnDAUlN`wR&{REKfp$qYFBK$y@j4uU(}lkhwg^`OaX zr?s1_8Up|`(IlBWF|0(5OUd!34&wx95Txvjh7ysm76KmdF53e{CynGa-0{pK7>=}F z6H}dI^lfy0h13Z>4sR5uV>I-X$vK##`tk`w`0u6)@ahXq#P{Z- z_I&k-yMhw-oLQ$X!r|&}k^Qc9KG1T--Xh8nwg7TDMgq#QwZ%1!tu)CpVMk$@zwJCw znv~6z!>P#V3{jMs1PynS--C9v_^cIi=k{}9a*{NSqD`1R>uI|%|1`ilOmL$8r8ala z#v5^&Vx|-l53JvsAZ6XDQV9@Saq#YNPS%7jBzLfrgy*PXZP3Y{Q90NsJM8&=ATb;f zhsvfYe6|Jmnp8_$)x9Q}k(H8}4$tRd6y`~Wh+T(H(N#<~*4LwR6E zwfd4r*f{bCDr{ak-%2CgWv{nx<~h-5c*v8l9BTP{U?m@X5_`0qP4+thB7=D^Pmw$x zw2(Zft^iO~ixH6DmLeWq`fgj71%tSu{onBGP}~6me2FHIN>E+sV?~MpcKV9x^eZO0 zKytByVgPrtB7o5JPM-HG@rXM7R$5y|c+i)wa?v&>nA6ZKRYipFh(t;|E@ej>N(|!y zPj0*BisUJRy)Wv;BRjL77JGDRa>55AL?D#T658Z7gXAbEqAx{d*Vo;}!N5f>5^UY} zGX3h;eSq`8oTlm*&u^L#kUHokc`*C&%(ny!@FkOw?l8Vq-Auz``FyR8K}#Xn^i159uzv{7KaK8!4dt8SHSNE{+1~&grRkBrSnlK z`QEyt5?e%zd`Rm;A$g?!CA`sc;JEe(!>lE|3Uq>hEZiK%J;NEG3#` z&>11h77dWM_9akIHeMj7e;NkvK$T>$$io~)nkIsVj>x?FY&ON>@g!W+=}w30zw5Px z*)|7!%768>at0^Ym;)cxm1HPp8rVx}S-yO~(+U_Yq2p>fHVse`%}js*GSJ>Eg8`=v zo&*=sFUxvctUT^cN{v$bl2ZMc&NzN>ZpylvMEWgnAC@AvXZsri$1p{ZpR~V#|K?8~ zosZiOUwr=YxSR%8SCLW=Om4z&`Fp!ncrHaZ(aVZc>zO~b;xMG8r?)u4e91cYrfO-% zprg0cm#DzCi8N+d$m%P)$mqbpDyEOpSVA+9g#xALUXdFgy&a?4oFhPV^v*~(cw>TSh0@D zMz&}zP}mw=df zl?-X?1_lT|14q6@1J0#=$VlO7UJit>(lPhTahl2<&e~@TYDpfDjio;!qtAg9Be=*- zq<-}dcj`f>87A;?f>;3%Am-}g|5JvyDalWNL;u;T`J{cl!BH)9pz#|~gWo8j#0Ya+ zKo}Gadb*kgqIYisNS&LpQKevNELmV_2miy^O$Z;qzkBoS$=%!M{rau>%su*X+Yj5i zDwlf>Jm#0pd^nUhW8Wd+Nh>Do;cT%pgJ`FDAqeJ-pK$tJ;9^jm0ua|Xln^)kDwPg* zvDU_$F_JXDYazuU-;##L?A*OnQ)akc(EpFLAqP~wpsms`N6}gs-{hn?1xB^)70PES zL*BNe;GoXNc8mMzsh1Qq?UjrLPDRsj7=W9Z4S4OITUUbojH*R<+nD+LkaAEX7KqHg zk%|X}T@@iSGCAx16;&00pG;zHOSlta8anWbTr1;p%XO1KrbicO*!*UuimLiWXZ7tI zAs0NegyHJS| zlZwKDb4H}C&&z7Zi?4UD&d=#g%Xf8kn91H1kMRYi;%m#2-BsR5l6-j=g9&p$1HW+Q zfO_cM``UcCl6N#&8=pe)&j(e^U~NmKIWDfd_2{)$Me$Q>vbs;rgM zlwY$7(S-6`aRxa+TGb9+X%5)+w&Emarr2L&*8|`>?macj30tBQC_#KAT7ep#c4sOi zfMx2rd+!8)VP3t4$0s!5@)L$0?-8fYqCj%6is#SQ>Jb%#@D zRYiOriUlmbR24W_G%}FuO>UneJe|6Izpr_Nk&V3vT!E|%49TZ%2bEkVjZh%#PMGq_ z7kh+I{@gw(Qwll*<>wQ;%MhjF2D4w|+eIGLao5O32t!y|T$|<$^54%3tffMG$PntI zz*92Qr9Q^>viIP+!(jxFEtokcDe=-Y;zrbacM@Xx;`PY;scF#<0x_`;x~M0Bz!eOF z+vzD5`YI6ud#nf`L)m(qI<~@rLX%iIFLOT(sY7K;^zw$}DJ!|uKNwi?pYJ7y6D6$7 z8&W)qe`%2tKH4{Eb-~`oYkToi9>}+@@{npkb(F5+rgGEyaEmX`S&ea#$=PT77P4iI z$(+;pXOQwmzw5{8{d~a0=+DE$b_&JX#AD@JknZrL4?tzdQo9mCJ+0Z zPO{4ex!KKc%8WSDSuG_tH8)$jXItVINm2R9dH0=g>3QgW)GryN1&Mk@yN&0{t^s zHNJABqzu~MycI`iTZmJ0+n@8spOIw;FdZVRel>}|If&0SXf`eV@af$oR@d8x1Mrmp zt|FhpcbPCRKAsMaHnj&#R-Yrb7R9F;DJLp(;%D5Qkk(H8x|FY{OiC$uE^OaxBJ+H8 zyZRPqHYuiqAoj^Eo*x$6SE=iDV~DVonAV$B14dZgcIeH_$UgID!aaUw(oVbEWp4jV z>($ElwHyITbFBW3O2snQcjr8qY0!kGbnDP%giZv}b#V+!+eK~E{6#=g`85l#GdAOd zCb6swqtL^zGP?2kS-?UBu5qp>!Y^r#+XP5`;e{j9kg4PR2)8h3_`&S{Z z<&UDLxieixC17__Y=3J0$lrlVbt?7zoHV)04aVO?pdgis~*4! z?_n6n?S~TWf~}K%?JCd5<-{s;WmmbLH)(40DtFHaXR+cgHnpN*kh6O>!}y!aT)Z4y z>BDX8cs*{OZ4o!Wj%1?yOwGeIN?YB}5s{^V8SVY;5Z_m;1H|3jh)E>x5Gn3n-0fzI zil_{{RI>|B;)kXEZQfgn7CXju3F3e(O0!9sF2x2;ee4N1vQ@`Tjj-fpw#qO^B9&Uf z_y!@e_zCA4M4fQa1^aSTS%e)xxrb%{ZpMsLJ7e8+WVu8eSEcS+g=ulmJzcAB|7=3f zr-WG$EqWcq>9@@sVLwK)ClHG71ljE;X0DZeCU1Z&XG^$cRzCTwvRbR@k zb5(yyT0l<7JsVk%*=n{$$yoFK^T+dPujr^2;xBUlEn(eA2e9o~m~Ft+Gg7IFUQuQ$ zm9|UP@8J!prtdDNrAYq=9ky9sI?AD-lv-Rq4`f1e%%|-TBMQL&m$|UYsM(2qK1Vg} z&HY|jMelH{5*N__09n@;K=JAcq>_iOM_bYHX~${K5do8auNT=Mtu75py3iC;FTAdV z0wS=mhjjxc{wHn;)shU^6qp}r3L8d-e29AMtN$g6&K+PG5#b> z=mfY(&n`WkZa;g@uz_gh#EGBbkn1Y0zmnzSJEH{mV~Qm0jDO@Ou!@)Lb9hy}`f^6R z(MG6>KA!sxg}GJyOz1qU{yNzw+8lv+4G~EU^(Kf$#|HYt-{jDRh=2TRSH1oGbda53 z%N@`7ZOE-0?m(!TpwaQ1;m$)V8cRDxm<4~h7ItyxEPLPA-{h^bK1$-LWPG-rn@~4t z1|2eiCh3P*Lt88PBnhFm2=_s0$|0ZrK^s=IAZVk~6YjuD;@WODD!$CUAxq7CU|2wL zCYS^kj7`yU;&Zx^>3-J>H-;qe^+Q=Ql=6-e+XHNWuxn5^pPGg?=?n7| zdtnbT34G~gJuY_&giP!AnVSX*ueoePd~5-XJ)j1V3~;I#pU7?Mz2cJ7(?vrVb~>`N z5OtBlVy4=mvfmdK+>>loJQs_=QW&|s)Iwr}oly&HUeeuZlFr@IsEmsyKps}xX(4e| zBFZ8x_bsF2LIT;)%4{bi2OrR>1BGLBPNwimzYc z5ZXn-7p15L1sMzWD|B&rwnrtho&rOiO#=hYIr)47?2m%Dlr-8rKMRNmgB)S5>6`H- zyNI14wT>O@t)Ej=%1SUo9NRI5Od&BA&`oP zB88b_^;_82-T<~2Fc8Gu)l@sk14Choj4M9AkNMWql4Fq#-?_Tz2CiPh|C_iS0`c4q zy8-+t+1Oj~NKa#i{fGd9_5;CnLVz_Cs$jZEuNfdfn-Ek(lBV@H$knOd7i^Z&?lC788W%Kwj^Yf~DFMpg5owf@yo#XF(V5kKGZ8k()xG6p`i(_>}%&Rw#f5(30_Gm&hhI+ z)7H11ojMybXM%$d9ce>2|NKbaV3e$B+HT_0C(f=w%}nlFcS`y@p=^j54u% zjzyER%gxG4ZQX8*Nt_bp8pKf#&f(D{x?HWaF}y?<$&aCAF_~$|saHx-i_<+}&FCht zpf_|Ry^z{4sCR+vT9Hz7u@`(qxH-1tZ8kZ(T&=Vjg zbfupo^8oA0ky*YqB6Zz9C*$rlx#-)Zoz3Yu9^SS5sF^>Y_1p2pA>-W;_mnpaftv*v zO1%}fNpb35=;GtAKdwF^1P0LyXjm0gw;V&C8txkcY4^#AGm}VLX-W#?g-9=nPjciu z$yA7_r9I4ky#D+3vnTiOUY^kQ?dK|(GKjmgjRn*{dhpnE8ztR@M;vYu_ z7c1_60>bi8O^xQ38%S;m|@!3o&g@8jNp)d!Z8WI!VTr#q(`!k=g>F~5PTfOT4j+{uU)}rCWDpgE# zY(Q1xhDIt?>Zyn_rbJEZS@DHY^jREymrLY&`YKIerw1|rRrE2Z9>4&7h1`HXr&&NE2QgA z33JaW@8u}ohNfN)pn!W{)z`l9oaWEz*~PrFDrD8=6rJXF|IYl!MWwc2mEi`G*GhxmyVSr-DZjMZbwj)Ea64pZ9_aa;=eb9Lt_XB zy%{zmV;X=KkHK)a*Ej4qV+}NwS)JH`O6t}D^w!)Al*k_v{kp_0k z%uOVcfmV)kuGhLg7)QcX7u^Yk;OwSmNh+ku z^d~V^-LBk%HI_U%;-dVe1!eQ-MqdR{HbNHzN zok?fRL=8VAOdBQJH+Zf}IBSPwj@gpX;8F{Qm2Wo?66IU2uLy$R(QZ8JG-Zy{64G(qr8UfoApJFJC9&D*UmJWq;!C?pFB|`2A3~N)xZqdE ze^V?4M(%0_|30I1!!;7Q!5xCsCMtH^MhA-Co5TyLnyKQOmL-9;ReFF`8f3l~`A5iF z##i2m;EQD4n~$6z z>J}H59S+|F#?9k+o5dc;w~_&u2yBwr?5jiHHG11k^Fhy2PElCJVF5k(q0sQ#EJ?xX z;2is@&)kjivh(HuKJr|Mg1puxd9RA2PUPDCi3axs>yl1BHQ(R07>s}&=B4HVfr5}%E|r;M$S zHq#N>2Q7y1v4&^|Zrd$(@L&`1X=3se zFJcEsNP)I{98Gyu>~k5J9%q0~4uMnc!3K1F0VXGuOjWfJ#5ZJ-P$d0eZWt?v-KM&n zp&Rm)jk$vG20F@Yget32^`$b9$1g@kQjq))u^kZJ zyu4rcgSzO;Z%|-pigu-b?})o(6-kk@@RmW3ec-wRB;^tdP4^T_!HYgd29&-ZK+_Q5 zqzg?wdLLQd@WA(10ZPLa?Xor-9bn+Of@tk@1-S@U1v7CNZdd9F6=)(wE`jk9*Dq=e zL2=HbB`MlJd6YG3R^aqh?zE!i9lkpsAS;g+`3&^j>>7mGgrX+ zVsjue=B=ke0e$I0vIxBt6-?({K8Kme$P21rEZjhwmJ(9-zMHiz1!wfC$4Wl9TYKwq zxZ%vyiFKEkW<6Fhe#3m(C-`X3NK@`(*PblQ8LV8GQao<}fE1i-<})+GFo&y?0PNfj zm~Z!tbxP&%K>tppfzb4G(WVqy{yUjlIBA3kTeW~mqWP=O z?0+qpKSThiiMoR&34hwN z)~d&oz}{~z-HtH{S^$tm9ZtD)BKjzD0TLN0&(Buf0Z}n#Esy0P31i~Y6nX>`P*utO zRF)I`bR<^{sE|Bix|6H_KsgIw2m66K@BpB7k2@g3_R!mNKIrc0=X~LMTl3PaWGY^* zPyRE~9}%k1s7@R^+e+P7^8~*ftRrS3+CZs^|C0j>@sW^BGOz2n)E3f0lC4#`V!(ac;4^t$we2D^a?+`QQA-)Oi) zM#6h+h2NL*J8nO>MUk4NC*qJZgOMEE^JL_^84}r~6q#>FUgDrur7^dM?HM%yYab1H zWx~MAL?Em}BZg6P{fBLDQl}Z_NTYpjdMDO1z|D}DNu5o-j5gl#htpb&73@n$1UtA* zF&|2*Nk4bCUs^i0akMJolBLPD;wlH5;na<}ER6+9uuGZ74<%gbD0E2-hHuM3`)};H zOVgn7CNGU9)2*XK6mA!Sxr-4ON$mX4#X(v(8+G|p$a}}yec>$s)B7q7mJuTHS1KMk z+Hf8D^1SFcR3?U5AnFwEy_nCrJV@QH7XK`Ay3LN2j(zXtmnpVaH~Vj(G~BYJv9(3j zy7x4~o#jhidy!MfEr>bHTMW@4i3WU6iC-> z+sGsA02){CZWSAc!>PNvZ)DHm^XGGug>q4l zT0|)^lN8uWp#!^RJs|9kjp|wk{+sme@WrE-f;)rJhad_OSs@p9Mx%-Do%WYz%Prn9 z&4Bix6FQf4ZUmbM57fKpH2sD{-|l|#NxQ`kZjQ4y#IB1ltXJjr?!S6zI5~BF7J0?r zrsbIwG#`XuNmU1caHpr^TvRaymk(B9AMBpTm=8g3iGOnWXptWq{W|Gv}XG$h5+Jp*ZFepOQf(AR4(vn7f;BQ}C z&)#;2{!kS&CARt7;bs+=DR74M<{Ay4T2y9nYMh$ZF8o)yX|VCByGVxz(iM=2{!NZ} zR#yN3WU+~h)h&ie=EDiHkt?6;;YZL z8XBZ1qN!Qw1Ar>jB!i<9dCQtd11G%&pY3gQOm10M0v5a6@FF-OLJd}rzVMU&g!X*# z*AZ=BCtLH~t5e<7Ya20szi29pdES(!&ds>-$|+>oOjoiktler4I<;m}YGs~D`Tl8? zrsqLS1LZ$Yb*b*Xeyc%H)haeFr;jY~-&6k%_58DXb0`Dh6Lqgc=b)A1@;Bw=Y0;g3~^!uwCsIq3WHRx+3eNp>uSRi2U&@U(y3z zPK7;GZU+hj(rtauL^N|ObW=fDAION@6TlOiQVJ?SIeo7$KD__2yfDaghGmNmYd|`w;o-ulHY{pOC7P|23#mtJjf(`8Kn@Ie8QEUlHKYe9wgCS0)y)v_E>6$DDsY)$27c%S_whPZcS!;0!O-ZMfXPfSaF=yexp*f&d~o$#+6 z5|Jg1zlhMyprPgtI)(ph1mP4IEVHd@JD<;nQS)|pQHE@%Ehz!_DCHC!SC*CcS_Ghy zNeqJu%1%P)Hq;Y>z8eY5OC}DRvCF*u>6YG}UE;uBlaAJ;h)FWx>qIk*}AMxFW zY|NW}Vq_u`Qpqk(8z=knR>>mP6oYG&zH<4IkmMP1?lY>%yti*Y?&ss+B<4UHOmyLt z^}L60C>Go8Xl#Xk5+$PKl5qNSe;sBvyg_@SqGerOw?MW#<7O|qpxb~r$KBD;Ok;Xt z=osR_IR@@dn1FibWs5WXB>o8^&F5o zRgPzKu=5y^fzY81AG{kdJN(;2-yVe61C`9&IE21S2wS;*4gYN+qP}n_t>^=+qP}pW7|G^-}l=;|00`gGMP*!Gd@^<`0l+#4JP7JY?3Q)Z}>c2Oc8ENGvlK^mdg zLJgazk~-)ylG@j-w+fy0m_^3xhjauIsqOteUnK}yqunj8>a$c1kLMyvwh+|w-tF%o zK)7J5$an`NA(XR&mm3?jld%#243P!gN}8#+=C+>Mwk%%k##Et%{rjzM^A4!_mwb_z zM=8SzN~|!p;lxciM8QmZRLiT43wOrlTeQnQC6alzbj9*|Zf$x8DRV-lxd@V2hhOvP7^Uwr^{OY699RhaU`J&j5Hq3575ha=a0>rEglh()shd;1;)|FXy!@3SR%u z^Twl_=&vedB(7iDQ&XNnS(;lHPl_0!)w^kZ6~G_wR1KAHZ|$NR4?l%8y}yK*GLl!< z=(abS373Ht7~*HmDYrfxJFMaD(mNZJWvoX=#@hkW6uG8)u*Ys5_b?W#L(_k9>ckO@{dPhV2G zX>_TrR~AA`58IfA5l{1CT|!Y+K|T*nK;UcBa~%A`T7`+ON4%+-FVDai(-(rPHv(d=EQ39DM;L9l<3xrPi3?UzrER#UOffYX1J}3>-x6ec zmoxM2npgg!(Y`f?V!T|)e8!2UoI86mo)jS5z^6A4akr=A&&Nj#Ysxs(-$!zOqa;ib zMN6FBthJPp@RmY4OX_DF%^yNB-Rzg_F)qofN%j8>V ziAP>U4G^~7?`1^`CM)ei!XbwQ>yf1DRGFgq|w zZhX~>$1Qhl!dZ#7yX4$WD9_TKO*fU4Fo8=p-BJ*lVX>C5(%5y;S9RTz-l%L+9P#e@ zN%3%7gGRC~0pJ7V`LzQ;6s{OMtA$A~-orvrwzQ(>Sb}N1HYBG!7%h`{-Uw_;dd&71 zq)REx!GgSt(p1MdZQpV3KZI3pc5Tvf9FAqsIJ2{g0R~HGBn9MNF5TEg z;}jgug{d6R>wbt2h^fBmSv<=M3#pbA0yWpznEUJ7H@9j)#{^3yD@CVIf7O(zbuTRc zreYelNA8PPKYtgXhb>c`2dX*>kzQF;XBjp(CC*Y?GqC|S1w%PbPvAX|bEywxF%GD|P~*Mc zl{-liwt@srRz(8r<+=;2?ECKe9HVX-g)r~nRKZGM;EBs*nqCb@tB_bI-W3s@t0tyd z>^I+X(v?k%VECIWq8*6Ef!|lN=5-OkaPuv-PqbIDw7&YF*Zq*0F0)`ap|DrWVOX2Of}F{+A-f~X2;&$H@S~qkXA6#@-W_wJ`;`0 zor13&_@+R2p!~>13x$ob!x1$gRd$iR__GHXJu5eql9b0z;sQodZK(w{_E9=^%OIy$ zKYFPT&{OZ1-*eW82I#d=YSWHVY0V1_k3&pz+h~uWPmsNA27hGZBocanVJv#PiJR1@TBlo_s6?jT_Uel(3~?LlQ*tz@5=B$O;n?36fOavdxA+^ z4VGn`vKo)2#?+=|yT^j4F(iRwoiy}!G7!iTw zF;iz`{&{t;?~ou>gK_LfM6ptmVeU{sX%d*MrBfnAdG>&B%)QoDK)OmUaFIYe!J_Rx zD)Vt7_yu-mHkLN;)#&o%pkF90y3@#t)v46CHMVIFnf=Vm@)#q2=`5NKohsAIJUmAP zdJi4AKcMaiN)!P~yqsT+d$EuXU(FOmJUlDdWEf`0^x6Q8EGf|5+g=MXi1H1HvV?!? zS+aHLC@B}rjzVJ8fkld;dgN16x|Q%7^J)`WN~Cw|V=1vIu*JmEmX>G;3XZ0E{_MXh z10#wos^^0BPQgOY4zuFA)2pkvO_E|FSN2AS{>|ZB`B~vsvMa}RACa(;<0?Wd{li`;8KiK9#j$+zF$l7DyW2)We1-|7aaAhRtSVAnPp|*nWIJSuSEvd0b|!9tRrCVMc}|3o zY+gtsU!t zmLOMP$K4$};f6|c!i>GLl|XE8Io)I&Qutd6tV@PLhM*yWn3xk!e#h?8#x0ZPPq`lh z*VGYbruFKsDvgTRC_)ScFZUUEB0NmAd80SBNy3p14!cLT5djBxxDeIY@(DZJK!s4$ z-Oazur^s8y3)SF09V)OP`iUe_aDeh!BRQ?|dr7ksGk>&F-vO|>?H-VhP8aorhtDH~ z5>HqKw(VTwzZ0;26EtG>G?ZiHfJZ^|Izt92QEG2>wXvLHuO9+8HUen@7#qnK^@RN2 zM2HU2`QGDP9Lt6e+IZeK8mhujgd zscTpPzWKYdD5PB9%sKfMFeY=RIk>eHz94P9rKWol%jw9TcMLh&qkzE|kDUb!`VlES zD$F={XaAn1J6KoB#+OSn+;KLpC<}r!+ZdFya@R|g1y)LS=MefCSGj67ohoH|7cz#N zp;^9S0RgQFS@+Asff$p?|*QICeg3ZX_1K*|2o1p5w)20-y4W;m7eOa$td?= z;%Y6!b)xjCv@BSRa z)A{k;!(3K-SL|$gXUcg*x!&uW_AeawzOih@!aZd7_H%Fy$Vx|vR*s%6Uq)1+1XZFl ztlb@4!m4)U1rtuk?dVHD&>yQjWK#+GZ;D*DQK@QW*cU(UBP4Tuq{qQ|J!$XK{H2xP zM(G6(L{S?I&z~WsOCACiTUovJT`W>Q{)I-Tfr#Xw7O(i*20~ef|J2Y@q$g6t^6Htm zr02)KmcFEpE?r4-kq7dL=<53f;%!W8CN4i20yq|*pgeE0?$QSWm_4gmHoGC$v1D3T zZuVf6I6=>e93V6WZUTnEtNI0ux%vS3>IM`-g$t>lZ-~q6Bf_dpHbb^6k17Wj#K$MT zYNaiUOA9f0iLF-=4CsDQJ<8MN9@VoQoIHRye7`Q(qKeXl5x2_=R$*|QXjFLkfODNU++Nc6XXXR6d=Cb;oX%eo2`c!}MTe>~q$m8~J*)+w710gAn3+d0W zj$P)^N=rXE3d6xst08~IKyH}j`p#V)RzSCz&qgDHz=w=KWN|Kn%GL{3%wFa9waVWX zS5T7<DGLlOEsYkgsKDy%TMON}Jf;Og!l{(qlnXhe+ z=TJd?6ScF~ZircSgngpgk8MN;4GmUz0bz8MCDNwao?_qyi@ee%9@I(3i^Bg{B(9M)Qb_#_SoZO-bh}TG_?gCJ#TZAly zLHZz32@-X9Pa-0fAasE{Dd%lnCk{4xHxNQ*Rg_C~HfMorjqW1KF`roJ5|fqG%}P?o z82XMP{-(Uxa^060xs7_1urk>$7ZhoXMJ?jki6GDPXJ%|r0%jl;_7>NN8?6*d-_go= zfl{ZoZbi2ZAn(7S5dNXx5%e_#%gXHcSft_YAxbS<2#aMf{!D9EN!5UFiVxPWCwC>2 z`f6-?y0rzlFkNHE$=AY0_1;JHhFS7A5Dptam|o_6X;LuAV(OW#wRI!cFRoscjI#gq zN+eRw1JQ;&zgpq#iuofGpUaPI4^ zXSg&}m?Uo>#FwnieS-55et82jKjX%fZJ6aKJ4rGd;z&ISII#XBSy?dLSBy(ccq@Q9 z2#YwPkbl@Bz)#`lxX>vWOv3MEnOzVh_i5rfB)CkMvE{D=1RMqtkl3!gpx>&aD(7gD zyQ}CMO6QY95Uh>5a*)^(fE_k zF8inmavCj|4)LQ2(gxDqOCEzW*`vEO<0v*__{3Tlh}){J<6~VPjsV$&;HkWWmKK4Y z7PjN&y0y9d%zR}qUQh4XjyEwxUax&aI=MW=T9*WKB$Y6=r}0!z43z;B6S4^%d(Hqw zmpSg5OoR)hgX*4lS_=OzGvgem92@&!+lZv6oHT8kZChRZf~im#YOEQ-Ib+ULA7*r^tTm z>c|HDy$HD72rWLJF;%=b-z|N#fBUIDedY~sRf0YYzv;2)X@S0@+K3}f zx`l-k*CpN@Nql_d+HjY+{K?btbYUU4@bR~E2h};O@L!ZKWbHoRum3>Jp=J$u-RC(6 zmDx={*glKtEgg%X!n1#RbCUxEpbE% z7#k8i-fIxF8|%RsQRqCEqh+bB=pPbmq8rV(Q{eu1!n2;fKE5hVe|5WWLI}(-yc~Y7 z_I9(X4V({QH^0Vs3=$z0Tsl9DZLgVOQ)-M|KdW}{i*Us$#}x1xUGjrC<--?UMCa`| z5@8Kla<%k97X-g%A{Fm4)yaj6mqtH3xAu>rNi@*7z2N0rU6jDT>5#GCservy79sc_cJdq`1MpEVaS=;-&FA28vMNWP{wh0oG z;R#~(;958i9%^k+rHCwT!?U}8=F9o8gpl7;c=+c?6`vc>Els2E?`UZSdn2yUPKXIf z5MF2^ZD_tush$_9qbE35lA@%}w;44-!&ssEYMXJOnlim{O`2QKwnU(R!(WL~PLX^`Xy7%d9Qv+s1)G%=^Dhgx9fObi?{W1owC#BVGyQT0`~Gjd zyEz|I3E>jkuf#dBI>q$>rg&wAgOV77nCnf!_Jd4OLh(hoE`khk>t_v&8g$#}Yc#1g z&VG4OYR*hes2c^eT$;CJ-+9{nY>&UuYzvbX!=pj+YLrFKrdxGL8i-^6eS(B~0zBM& z$XXFeOZc&$PHbmvuND4S!0oA;fWeli{}!MwX8J_^QS}q`JzZ%6aSLmbm*z84=B#zQ zY2!tX>F{scIYgm=ou*o5M{iDdxkE*0?m_et3W22P5qNAC!zjAMhHJk<17YBrzP)ciUbw<9$)kqZ6@&I|WX>@R(gyham1xz3GDi%LSksG2 z8b}=BB#uadevf5u`?|Tf8%$C$F9yG>rN$x|y2*3bICZR#&xCyUVc{Qw_d`gz7@4j4 zRLau;wRS|rqWH5{-I}5$5xcDD%apA)E{_S49AEPC^;jN|mmic;|cSyE=Z1td4&cMdyp*h@9_``f;;b#Uu* zdzh1;Yd6$oJzG4>SEt;96aCEMfSV`AAj~#sKIEZqp!?|nIoBY@_KqYU5_vxmOIr#% z+B37|PBBIC!%+5N)%LR7hcVH{hW+hQK>pRX99Ux}y$;45kwYoB(&(g?1q*~36GCQz zeVTqe4@%D#2?V+m_u8oxVWH@fd41mxk7F~1vPNMFaU@*$w386`k>gg&Z;P_E z0{oqI_z4qh&)g8>g05r99i~M#|5D+0rDGv1PP7hgyumbkyoPZxbIUchm( zm51#RFY1(P_3Il3iXMrm@VM)e94;+j_gk^K!h=IaIh&wc1P}t#iT!y1$$Nt7ZeP27 z`s8GFMsC9=hhfq4^bdWcYF-!w>&vwU?_n|6T&la#*C(MlZs*=tCz&PE>^@zJ%_t~Z z-@Eh}MSXq=U6Ocv+gmKjk+Lz~kSLRF=N&~k`)kxwL66Yio@JxSa(i+nrsOLO(`Nba z%f2N2OxdOH&l?wn>gJ!#j+(kb_XUfRLtWg9Kfh@LZ~QI!^lMVT>35H^guf?kZ-!xb zRbex6jQlHQL;Tw?d1@UGCC9a-tkq7Hos6FSNF5p!L;*Lx_1&(>jZ9miE4Ql zLYkh1e#_S8hdq2=25fP17+xNuv17P!afn+~+?S$wV8PG^mI+fr z+=6nK3|{nKzuV=|4ciZu$fV$iI5Ft6g)gR!atYSf5zQ?-$$wrWZzm4vKEbE0s)oX6 z@SwNAvW%Ykqyrll?hNtP6+ge~$wZ!h_Di@S%v@p_edFp0(Qp}epTxa(tXmhBosR8Y ztHW(fr@pH-GwQTA);tZ#uN; zn5?nOH>@-aK5?tK0mJj}c9oW3xK3BA*)kNygOZ*r5#clbUiVe%;D^MjtNx%)vQ~34 z*78?}4ab#=5Mp3cq+W$;x2=WX(MABNH)f*oG@o2+u>GY%Hc*<_Y?Y<_)?X-Kv$bh9 zi9U|wYS_KF}|S?|Dj|12ofj|H&TMd?j)kZmmCXQ zz@U&tFm(_1W+f`qWf%71sD=_3a8m-~iV|UOfc@0;ND2U$`xRE_>~_6oMQomX>PqEJ zt&v%hUSA6lP}&uH?8_!hxuAYCzri)2GfBw{cxqNLkQk+Vz?Jb7F{MtUAvs!J5>PpV zTxT)Vncd-4mEin-2S$c>?5Z<<rY{r|>b|G{3e>uijnwS^eG) z_ibHyLPimXb3b3YwwNr5@Vkz>fG^CvCQHThy1@CyS3AUBH6Qow0l03De7IFv#7q=-~Hs;U{X$u;D-|)>P zU>2LR7zWp4K`vi{(K^jDPRN&*@Q!^$q|4rKYla2EN~ zHc3#QrR%H?w1fufe{A;Fu3@LpWyF`u$bkQp&JHJ)B4v2&&yRwX-=Y$`KT8t*QKBjE zJ<;AX_b;bTZB<}!^Xlw_o*(^!L%^nS0ySiCFYuKEm%TXYwNeY=$cho7{;h=C$qj|V zXqRcyxN8=y->DJJM7ZfYHrKEI!$p;=?OYIEp2rP^&a4p_lMi9LX;0y@Yo#sh$rxPR z8O)e7YnE<`nteT$`>la~0B4$QIK;LEi-LdLQE5+!kW*szGCmd`JQdfifkW3Y|4{o< zjvgZ9?t7MNBs5}vf@X7|7h;z9~&<;9L;B*F2zMWwrwZpo;FF6 zXpq+i?^IJLzU($;guS{dc0s@5N+1nC%Ja#^i|g;($E8!16@L?Bjui(HbbyP&3zQt& zq;o<>DzY7);3|W0gYkXY#3k4?q~{G9 z86@R+^$@c}KPw)82+77gvd)R}c~Y@IviZ^@8~MaNZD-~w%-QQX^UMrcoB#j-cj;(< zZu{t0ewH@%fyTzKQwDc{RInrBCPHC+?|#|Z6#a58zcIVF*tzM9hQMN%^es-7{_2@+ z)Lqf(BdHXDcYbwaIJ2)q|8an9W!7#5bM(*xu{j&v57IH#t7*L=Y$ZFgR(WLJ@Ec<& zdW~CZb(GcTL#~i(%GSm9a|4;?xZz?O$JGCm5x9*{rf|3(`rRC4ALs0UuBUU z*+U9BeJ{e3-RmO@yK&0}f^1;sygym;yknyyVb7FYxN88N+289Ae^G5D2{UCFdCXxeyiVOU`;7)P&f@yV2xr7(m-h_}cmch5ar4M{T!afeEvqAtVvm z9JpbqivM*Xy&~tNaU768sw4M~1@>Iq&+S1Wb#eI_#doSDx?534x!O|^?Gcq&|@&*jJ`B-~bu2P8-+!J7YAnRITy>WZ9!FN7;Z(qx?tftuDETQ2JraFE`J zTv0lOiubX!cV&WkaYhU1pRv2ez={_)gLUbZp{>c&dXx$)Ua8KC-;-`xShQkYoCUYa zwnH(f^C*f$oW$A+UhC#56U~im2Hg#=p%OjSuP1Wq07izhSBj)C(5Y{g6v`ftLY|}nv6CrT<_t>lVj-B- ztqk=rUWFXYO|(+Uv~lx&h-x96?kaXV&unnVXY{43v`|;8j<=@Bpkt+dx3+?w-}D6X zDIwyC1VT9E+j%`9il{b|Krzc32jb%pHT-VoNgD-;pjuh~AgfJOC&Mki_8zITYm!yk zsS^5gU-_Y3@JOsKk@D7qe`o%u_xh4%t=uy7On-(7rjm2()U?jTu-(B_rU|clHgJYM zo2Mdb<9$tjPqklY>MVol8(H?bRG~M-uDf z1YTzQP0Q(54ZkEtBvQX=C1X;mJ*~G=Hf5fd*=w&mB24f{CJe;&_~-7k9}DsD}#yQx73dehR+EWbJm9Re$V zpDdZ~Tk5J_WbPmJW~S^Rji{=!TXc7Gy+aZkW4_e>x|0R=+>7|YB|bdvoOWxJ<-;FX zDpf0Q39Vmn119-`0WZ(DjDW5KGm&@}#Vxz|8;icdJZ9by@7f{234m!ZV^FQ6EBQ%M zwla}gG#P7EpfQ<7$zkbFJwY+$Vd5>Qa+%7%MJtX6>+__~qCCDn@B^{{LRj#AljuM` zftmnJ2N(xT3heKw1lbPE@oU8^l-M`q+*tno=JM^`3jEu0H9Y+B`~=u!wOIX8A;wOZ z8cwCJGe(P+`@$GxYczP;- z6*YtWBKpMwSgu=Ff6?6d-NV%gQ>aTi0bA@J-`qFHu;`nM6C+Be6bbnFGLbB%xRgT? z!ZVrDQYZU{D&Ye~?8=@29ng5>g989yZf%WzF@WI)s;H4=JgKrKFs+gF%Qc5S1V4g0 z9m6B_xUf)mzT|>R=gmB(QMyXxXz$D;fqix(Rf1^gakUk-U>bO|h^YwkZ1VjLSEHT_ z$7-d{5fm~-y!ET+g_x#bLV=VbK4HTW+|xkAN4CVvDDwg-ZGVe^@j|3FKg_I3bdmIn zAx&ohzwnULeWTHhT>^J#By|yq?cmP9Y%(-9xI~rw%~^Q(Wd1TtGkKodO!}%tk__lG zP0)-TiI=>6{h`z>F@sf~Mc)l>`K5#D?z*poBv&tbqFL)XPDMN0YVm~XyL%_-#sshp z>zl2%x_>dQ($rFho}ja-Jb2e1q#;**>qKi&DsnT9Jq z)9RYP4m`1cLC=oT@vWtL-ReaFhr(_#?Xv1UzqLL90KL#iQ5*;$`GvFuqoo4toOBzH zc*Ak!^*XCJ6{K*7N8CIb=3JiZ&cVj*wh4qi2fSf{Om@NSsq;qL zZF>^gE1>4&T5%q_wX&a-Ax+f1*qVxsDE;sbO>Oh4mkNnwDHciscTcvZO$Y8Pr6|o5YqrqQY&DPpiLR zj7AT&uQQG8QajY_{matK$FHQP*m#1JVE4d`cp zkfCYtG(Q^I%FbT0tir4io~F}j^t~h)%t}WaEugbfgz9v15riCA%{DesPY*$pF~XQB zY;iklsdG|+$r6FvP$Oa$qw9_C1uLB#32CxUUB!CD>i=+K(#Z;8$c|tOs9R?w%1Sj~I9K@oZ zsU|;%psm5a8&*4`6Wn>db`W^%&sx)qQcvZJBsjB zJeR_ksPZ6=_b%8^=n==qA%+LMOm29)hpk&U^|FA`IJO%zliOP2?qfqS%#9qqFUaG1 z$_(BU+H30~+GlMup5rSP0@_zl*Gw-3OZgfPXPrJVFi`p#Lohy4zd?In8)nV=y$OA@ ze3F0v1ug!|bfLxom;^IAU&xIKb8bJf!fw}Zjh+?}4SWxp<-5Xxm&|s*GZDW5!pWKRM|o4S$XqQ?yMZ5p>bCuWO`ear=3h?SkX+Y z;-d|izuObZBfaf)f3e|vT=KiO*`t@jU9*L%kgm-ls>=$G%Gyb%Od3%k z!d7Wz-|I&X+N-A;iYy!BU5NJCxzJX>>{RN`ZdZw`lAU&0ofwkuveP5hv*aojoYtt- zU}hyELVLbaM%m%e>pd ztJz>OniE>P@|fR}4ESjcT}%OnTq4p;BNkmmQcXpcUB;y{FZ}Xd5Mx9#^H@|9P{nuM zk~@n&6-xE@?sMq=@bMBmn4^-9XJQg%rXD9wsimdzJk)Z7O_kdFo4l*~qV)R1F#E)G z=jE{b=Jfd|UbP2b2y+a&kc8Sv^_5*_%1vjk?qZrkP6--!U*oyI7Jt+dZQKg{`_(#} zGVQ_zQ&LS)Re4PzxHPpjwiXXSh#}C3Lr{rj$f;X#wY-wjRPxe}kLf1q?SBLe(Nz2F z%;Sj8$B>Kvk396@iPeBlBbJ?pTCIm(e*GD&{4)=QBr`%+gd0R;R)99ESvBliJ3swd zDc@jrf!2rzG(nA+{|YDYf*cHXQ!6s%rt?TeWFSf-vrI+LmKUqC)lZ_3qaz}RSfYv` zL7^1}osVgSEP6Jhi=#*QU=`=lntE)^>6;zmn3?K)_8%@hAuQFQf^4_+rHrh~>IyUF z>FM_M`38vG2Ps;em=v=Gd)~Nl@mhqfl(a0{N_E*M5}~rT#e)Te1f>NNGgr7&;tAvs zA#tpMwnUm|WY}ow^`^@e@vMQTQ_Xb2Bq?SxO_)d}R>$k`0fnMOp)6Iw5s9PKUimf} zjzosv@0nDi)Qp^3{az{-o`|QEZk=82QVsR70EI%Od=ZRTST)zL6)K?$rvavxTQV2! z5#U3{fb$tA1~ffhhKbtOxM`VWiN}R8);5i>>qV7*d&K7qM-v&l3=$ylLI4g&1OXEi zkRdQbfIdSCM;!(;8Z#U)eSpBl^tpj27l=nNB&uz9_%2Ezkc?!(RG&yBhJQvDdK09j ztI(}}i=$6H053gsBpi^Z11uUh0e0$PmM7v1AejgjQ8MxKKL(G7=pa|m2A>Z_8RmB- z5{+>Cz(gCHUdc>P7!?FfjnXpXV_TaL5{>NXa7s^Aca<$7bEZ=uf~j&&@p|6Tg}`M1 zKdz5PgdU5|61a=lA}7cU)pD8n7jdS)Pbd{?d{gE{YpTtlvbv7cTes!QTb__f?ND4^ zT3#H!@h8Kq7<@@MJo7^HjDDeMv58a64y6o!6-EDRKp$C#VxKC4>;w!1Ktqv^W*#_G zQHnDK$}$~LQwxw4$xBZ+8V0p9o#8_r0ODypJb_4@lFzCc>8J|GjD|y~=ESC9&qp|x zlvbI5T05@3i>CyLp;kzv;rCBr@!}+vyeqN&a!fBH`^%`MUH~UT82HEXk}hKlwH6FIpLJy27Xl8@R9AiI@@@wZF>E|Dwv1cDY00fXw0Ye86q>xbqM-QL`kx~Uq z7qFy}69-S900oj%2~(#KrIJ+(SFZ(xc!hZ*1A~#l0pf6B5g{?exJWWUTwr8qZ1Gvp z@@Bpu6Coni8hHO;l~Nj}4X2|?;kbqF0y)F48YM4e34B1YZ6Y`~Dok}eQDapq1hlCBWS z`IJklsiw`Ht7bs@VplJh_Hiix% zY80U&reA=vj73rm`k&f&N{h*mR%@J)?&&3pe3GGqCP@lv19CC{%P)PK$MMfjBHcrh zNRp8x3eo(3475U(3@0iA2$+DuJqQx0n1O>k5TXc~g2gi!vZ$H;hc}=C37Uk-Bd8Lo znuUueu%Zc@hRrLuvZ?F)hnIU$0f>KwHjErW(gZ5yf5cSRtiXy;AycQo9Qm(`f)-3# zHEg{M_Fj2$ktf>;q#BL-J|YL24Y(K}WZ=yJm;(n4AkrbHVax#aftmt0`mX@~e@jF5 z|F{&t1cyp+IT=d^EodOL11DF2 zq=589;k%cvV!)(PN!HVjZhX<66l7D;@r|SE1GaY4#Ds923nv71dmsZOtD?oLY8m z-2WH4{?qpYi!DNrJp_|YL|0sfnr+6OzX+laNd9r+|3xn!z<(WZ^nX3yawGPCgK-qm?^e_5=1=58|7BE55Y5sL;;Cu#-z`(>vSXNkVEjO2(+i-ob-Wys503lg(5PzBOF>_zT&TPp3v&<_nbb~B}zOm8>J{%lY&5fVm9J5=z~(HjCGD_YC|`!pY=fvaNKY$Xn_pAT8lVrqUR9#>-~BE+CKM<2LCg~EtyRufc2 zkzFdf1+(_vo6jx?kcvmKUHYWF@lxdScW|pO_k}#ddQFI@G_A!ogfC4Sfy|bu;)0|^ zh|F!9kZNZ{%peZ3AL6wI{EW~7!t`tvds=nN4 z9Td%xGHxyem)znKexB*(4XgH}5EmEmm?(au{7=<3pFKe^iD?-o`D0AJqw{`r`47wf z98TFAaD3Cx`*=*X-dQad#0*t*;#yY>5}n3t?bJB>uxyA^M4xe#gw2_DXvhD_2v}?NsP5^S4&}^$eu1w)hW*$QT5lC>2 z7a%{loztpS!?D18EP>qdb=XQ>TCFg&Ig4mjgsEEpVkU%;vKmy(?kyeORt;A{ zs-_fU%MLNwPXH37$WiX3?rHOKAhsitktMb@+0tlvIZR!aJe&Eh0-;n=W8N&j*t#Pa zjDbR~H4{u^tqT%(PxA>iN^H5s)h5Mfu zJd?D_f=>W~$}46wCobHZX4FblI4+|%)d``hE>#k(E3T7Hs@XuB{2-iBf!R2pG)+565Qv-{0~J|lk=e=zK^>W^epU8(e~$}{wVtK_2eaP+kI%I}5=|{+ z&0zr{={*3Zb!r`z5Hk)JFjH(1>cvDoO`_>gt|61PE<7_06bkUcWN&=OHg*BZT2!n+d0SeK>} zO#KT$OFI|`MDngF&lfO-lUM;Nrzu472iyp3XR9;{0mZFC*4@Y^tObZW4L7H+ zbQjXm)t;$hSmk+@=ponT-RPRoV0up{11+drxfgg1wU(I0he0S#8*eBuVWc5PC zu;ITAg`DEwp4)2cpQR12=qR@4Cs()G*iIpjL&fo-k%L}h&=t7uG{tS%gbdUl&s9$KmL<;wc;!r!&M?SUbVx_>Xj-YJ@CDYY4?m9VB!@>#T^5HvEE z?u66rog+Z^H(o$64k>$kR;=#gaHnz+NJN>dbM#+){=**YGmp7 zqI5*uoyDS_jfU-seJ(~LHmcznFJ4o~NO6jSYG@(m5sQXL1bOUy%`Giq+NaQ?4xnL} z=fN*WPJl=lF@@=E+*bJi_&?L$fdBYLb}I@Joi4`-9(kq3(ghRpA5EO!ZKiw9`XNI6 zhkqGe((nL;7=nzCyCB3Gv5DsUfW&kB(iowJ7<6om?rnSkLK>|i8;cj&S_$osopKQ% zV#Or@lcgyCy~+9Y3Ys8T)P8qW+!M-)6#9QkdJy|BS~FgWF$NyEnPb!qL6}|y`Yve9 z@On+X4?StUqoAA8? zbwg)#12gSY7_M0jmVo0`kSq@C4CiSDOJdAlp?Wav)}2w(pNt^WDL@uPpu^0pS?1Wh zGy?|u#i-RRy$~!TM;&;n{8T=s@_z5f>VEIH;Aa#7U!AEOsfW0y8!97wzcNI%qUooX z`Tu-hlLsOEo9NAY142D32U<=%=Cz~Wn4b=PAL^fne@u`iaTETUOO6Uu`w92Uc8Z)P z5!+NnW_f%Z5HwQI;#N$jr=V|C1L2e13|$(CgeNta8_1dE?%&7&DbgKEC0uWJElx^e zbIaQChfE_FaUs@pwgOI59yX05?x2!KwiLI^7me}5a4EPZ5L1g-_iMS4tq-qoQpNgNoPYy7FnvXZeya5mK@=1}Jkb znr6348zxRs|J7=4g||IYS!e#rDCNZ3Qwb<*z!!PAr&v(-FigItB>QWD!)1R2&8NS& z>YC^u?3h4u(M%jE{1YjXEzJoyr(*iGeDJ6Z&Q4@YtXN8OD!Yxaj}{NJ$(dp-m!I@P z9Lq4x+d0)#4q{^luhIq*TS(G1MHE_jMsQ$OrEwnVO2GLPPt}f*prR^T?1~B#5duOH z`Unw9N_h!o(ZF9qUTP~6+b&rQ8h16v=8=gnjKt% znX4|;T_`H@!-9MX_&;hQ#z-yJdr2oPfBoIRd9{}Oue|wF$0`P1-LufjevfDa<|9@rr=Q(-9Xnd=L)`QFvlT>m*bom7fqj8en7{{HB#}>a= zH44+U}XVXvZm^!F{sX zdBffAOy?M)MNfTh4Qv{z-DGbD4KeeB~diPM*dX}3`ku7gv3Bl4Ch(o zElD{adkLf7$5M2hD&49c$4Ll6iKu>SZT|N7?h3c5^EQK`Ho zzG5i0i9EAhx5RKHohJ1_ASeca(8@pIgL>Z&z7$ULA?3_eqdociCA$9fi2bwQ{^c)! z2)|6xzx0@BxMGfcTHC?*M(t20r6G7If@2^6XM1K+-ZcWGijLG+iu+7DC?bFWjzv`q zW|Ngi4lM7=+1QWL;w}i|nmzQ&I7bi)o!HSQogtf0QcRN^!}16SZax#gP!Za&HmT}k zI{$RLs2$?cISIef+j19NOw3r6^Pf?pbWH~>2?{9pk5&cCZRV2ABT*g-LS^FjIS7(d zmJoxc{ep)gI0gdnm*}V8{pFv33Y@&*7{p2~F&s&&8skzwH}E`2J?5w*4wnsQ#%}kL zABx`GBb64@B*)}KLU~hon<5iG%J`K7^xJB6{qW}YuF@*->-yh^yF=UI7K^@2XX-cC zYM_TS5x(S^;gAQ_E>sHLJ~=W=+!Bzyy&pemo*qKU)BT|=`iQ8H>X>C{>TUkqar|wY zUKX#X;Nd6?feYB~JgvCUuL}6BPU^txW%4{&88U!lC_=RNA(bvoksSMWe%uIWYe$*# zSZ(uByf*%i-+pZ^R~j`~{*69PHlZ!zXfo{qDsLYtPeIWP+ip*WGwbAmJCgFYjp`K< z*I$BpVlbAsao!u~NzPM?CUP$)l~ph-HnuewG*c!Pc|yGOQB8BJftS^*4q@uNcQh}7 zT{2HtArHCd$H>#fV}p9c0EpoT8of=V>t=ad7d!Suwt<`UyMdQw4aVL(DU@@uIBZ0w zLojMom}49rvkXn8ZI(hc#3{hTF$9J{L020W#!xXBI&q63UJn_7Ar!$eB5YU(L(6R7 z&@rhQ!R8UhTs48M0|Fr!$q6f+{&wCHou+7p&3o%|f~m(u3hPTP+)}d(75TnaK>!HB z2#U!~Yh@)-bdHu9Twu@)ks;SYZWzD2j@HJ;0A^50Z+-`92Pk21&~LKOnz zHJ=&T)Ct9Vw%P}hq8aut-{|(=zWwu*AYST6vyQJm|1)>_%Ri*=>R}@Oc#rq^p5u7^ zCaNi55Jpg}^`h&{W)5F=-%sYdFZIuds?kEn@cVeX-f=!*2%~|iQcJ*n*Q%r`%vPZ_ zv_*xYo-k49hT~KM&Dc||pgs&@u#l_dp8YZfu{IWwX(IB{RDfjC%s0E_QFF$+)SRQL zFF!HnPApMz##5krq=dwOVX92>?b%A=tysj>2H`5L_I$IOx{iN-zgk;cG2kb2#ku`g z+tqTi`v{9iP&+YYV0g!oA{zd~wHJqPM3eIeWAw&Td4dl&$jLu7=>9crP+=J;@GIf% z{WvD-GLLtZhkn5)xgr6p4<9+*zIiE+G59(1P7}{$Bpy4Lb}0C#X^rcNZVZ5G3Fn z6A*|ForQ)3fQiboj6BDJ9fJS?Wd|b#9|M6PgbWq^7SJaQ7vQDSH{FQznHlc=<+e4H z_MP_JICg5DssgaT0)S zTZsili9Om%=HAj>(N(Nwr5uoAWxa&kA~j^5qW!o^;#~@*D`0D zb`{gSkDR_s92e<(WL!_W*WBB(=E7hiBciq4(6HCTIh6u93NWf;eEMnY2NKuA|-~#H(m$-(rPzW6@)j7nzX!rN;|R; zjG*OQtro%uhr8^-%%J7#q@L+W6aaC<$Ox8soYTKGQ}&zm8oX` z?139^TQi^FCwuS&VYxWfE=%y370@%yrk!5iFti-;_wX)Z+;wI~jPOq@kuCW?;rK9w zIAv_{kUHQlYJ_RXMht~g^#19L9y?$EmaGN;OO*tQi1Kr3;Hi%n z--xPjqE z6i2l)uZUDk*ndT!e$6M6LCUij#1f+(C@TxP3?UXYN5qy(+Id_J?Z2MdGWt5-auxZRCY96#OIm z$Yc6zF@0Ly#}F{OCBz z2MvhfTz3z~$Tw%4umnoz3;(5$UI7~@Zv#H6LImyOI$Ok4C-Vd!OG*`K00~vI`vxmj zkj29n{_c$1i6N-pH*jaGeFihCV8vi0Xm?XaQ}7FI2*F?Inhk#rvwViMn#|1|Vs%?v#DVm-HmDcx=6)Y)T(w)PJjkD4=d{<}U+3qraHQTK zW+@TkBHE@iTs*BE`u)^VdWi-7%(fZiYG?yCjQ}xg>0hR~U}?lbFQ+<`k8Ddhb2OZOH?oImwNE4E(D(yS1-byPxf3Ko@2f&+vk(7;`5Gc9kcI@nTw zhmN>h4Y^Ag-6;z;C(<(x@BMlfS&_QT5uzqNP{OxhDuGp5SMRcV6L=;Yi$wqq`m^1F zSx$6_1;of%X)JQfZmF|^UGQz5+3v7+-bk3ba|k)9sfY&G05~#$?*U;!tKuq6X|kf5 zNKWl)gWfO1Zq?!R$42{p1{FTp&R1R6U6T+1Zmxv8BgvEt4rLt?bYjYiqR?7t5ae`O zx96xqCK5l& zRfX32?39L0E&9IEvC)7v*$W7kxEFl5c&=$+^fmxl!z4sgcT_YV8CS&w(lxwpEVY;BCu9$Nj!6S2&d8?p*Ahl8pshZD2qNUq0gm%?aZXuj{) zWYpw$yQEHKvHcJxg+Jau_);o;oS%ykzaha#-6_G+EnYThfGpl6~C~(H`q{elyd^2Y6Q$eBBAj)W6)U$rH(DmZ(c#tGkpd(4R7&p$HQ9lpvf6{V!is zU*#9;*F9UURgkuy;YIyg+*H?7nf~Q5$~zMZ*4OBUpT5%n^~JEW=GUNCfd4o~ zs2j;Br1_-B zdEY*vI9inSNooE4t4PcS|3(>er7Q)$Vz82qPL{pFI9)r7PJJ6M?kV+27;PG(anojj z(idUx&|v@?A*aT!-NF7iqgy#N0E(i@^$Zg7hMUm`%p?a|Bn7M(67|@2bYHZ zCAkU&(%>$d5FpWNVrRtOccL3>by41BCWS0G?ls5KK&(d^v+VjuLj}ZoE<%xWaNgU=^`+=Baze!(GehVzD8qRU7Af%i~M3^JV%PyQvbZ zP@p7H$f!slgeR|X3CB-`_nByK8TLJk#PB{-&A2*3biZM9fs$V`e)Q6$he`#3b**Ov zei==x{fWo2%`qyQd6~w+q^h|vM_1if9BW@6bh#-h8I@0+8X^)#P-!4a1su>junHSG zs0zQ=x27$w(IQI##Ka+}#Kc6b={$&`AZMmmEFL?%eob1B{MJrCXll_yS@)x*!cK7Q z8V;2~fDIbA^1Il}fB+^WMk27MpZ+8yhT;&qxS**Lz0pWFq7XmW01&`nFbF0RAOTne zaU3pKIY}G}7@rU!0Ys!=o+$*iL>@Ing+!h@M22Xd8HBl*p*#e-prI7RvY??gM6;No zH$-<>Zw>%AycZQhUU1hPkQLoa2G9-btpe~y5z+$s!w8uHPH;k%NP~DnyhwwHLV-Y1 zNFgVrBA^gIi6lv&%OZu|`ISD<6hufoQr4c_IdkI6=hPKwiqlt1goyw_5^C6p6h#(T zC(bAjAP4CSMuq0lk^}7FGjLn0P zxBHQNeuln~i{H_;RlTSi=TX}?S@yUhY;8+H_<#m_Etzb*$(ZK}8CV7OJOul!WkW!{ z7FRU-Y^i)n_ynQ60I%ctizNL_3;)bTO-pcy6O3s3g4F7%8%Q79p8hzC@84Jv z5OlBwRF`UsU$1UC_xIYWv0ZNNDBNxu?y51~oSDseG!{PRIlViMw}s8J6MDSW>-q^h zUq?*u;!I9vPQB}7B79mtLqGsogtFCT3+?NvfiKN^O?MyeS_c%*96m2v$2%_4q>vN( zUqfCH#8-aqOW<{E;FM&&f`oNeJc3^;^iT*%0OdRkSTD%Vd*CyVPiLmqbobG#Y|faK zZ2m+CZ*a|R22$Iy_0dq10na{%%YfwOpd6v+L`&3S_72zl^CkN%4|ZvI3vV|rnRs1- znM64@nnc^{(nzIS(}73!EAYPCjurdSnm8lcl3knb8n9k!fB}A*Lf-1w{89|e|`$c?EfhadT?29=1 zpqXa^U+NDAb(;xRkZBH9#Bdu{`Jqn}{W5k;{Ud>OA@H1KrJ=4N3T3*gk3Y*bOD}8X zwF6+2sJRzpm-Voj;XfdJ)hNbo4z0X9q|-X9Yjpq8${jbddBP$+E-m{@G%^0=u~zlC zzQy3c9q*IKu(*%`k^~HDdy?OnpsvEgpchH$I7GGsrxHhb|cPic5A- z`Y<&uZ8hwAYJYNn0TX%123;=gUe23CnpVb1hFqpS$CZ46F#(>5NS_vie2t_S{Y|`B z?7%gWs(HMZf@bSQY8JsMwHFxadjqYPg}!ib^DYxA`hy+Euvf1gZc24eU_>>BBge^S zS%q;=M{!kitK@|d*?SkSNt%7vZ7j53OQvjy`iJ$CpaeJ-+ZTRxtu}}9${qWu>-WX) z>*rdu=MK$8FG%Iuo7%A3?6w664bv%hLEzu`!XY8kS1eZiIJacH!Xzj;-B@)r)ntphDp`{AG)bo;aM(>oWm$0?N zwDU_?o`N@uAN2&#M|Bh&6Q4ICfV&K{{c)BMVcU-45z3NeA?t5ypX``B*O_ERyKd0; zllS@MWbI_MJvO#lhWh&W{Wh^`wBUPnKZ(sl2?odNTj@4eiji%eZCz|&!JpXIzR<^5 zcK|GWH(7V==|s$P0}0D7w0-`>&(sf%hb|5<-q(o60$Klw_V?X&qRV`R_W90M1LEr0?1 zP9*KmdNw9Gp2D|EY#%BwtsQTg7ILTz*MmyUC^OP!R2iPQvG~<07Dr@9qB&9BY??ercNRwHY1u-FZ4xnX5nDx3TFE#kVhM1jqfP}t!%JT2QAiz?P-}uHQn3U zI73%&N5t!vgO%=1*7Z*Y=d+oAJ_y7Hpb8K{W;w*Y;FDU@L~i0q8>23jP|Be z?lR_x4bu37p_CPnzYXmebwF{tceQH91~`Q9VJ0mCZo}~|m1pp`r&FJ}j%g^e8n>{1 zU+fH7g~jyd-mLD4C7FbllXdKk7kAHDnRc}_(eVQ=mbYM5=BB%&w(Go_1#$w#J1jPM;*dfd?Jtn~rzHmwc$#!{hL$6cBQ#<@|)O#XQ3@WQ`D zH_KtxhX9jioyv-7nhyQ^m%!Lhvbru4DfP1!>-vJ2>VpcNZiSFF$FXWBKwNe9Xx!C# z#KVPZK$Co--|mJZJ6%1qoOf1e-s$)gpAQug-%O5`5>FKN8~GI2QlM z8?o;VB&6$Gr+vI{tdLCDr4Rwa)LO^Tl*tV5?<=utA>VU$oAr9zk!n85ja2^E4aZ%? z@Y0BsfzY=68i?mOE&&iDsO>l?(oDz{aV_nlMvpL3$xu|uqfzi06>4^-M+$X&9gZ|1`c+)| zSO(Mxvf?5$)1yN))Z`>J)ulx?)}}^Rm&XTqxacT3*{Ml7+N#P+Jlw5KzD}PXANxCl zFZT-hs^vtQg<^_$B_q%Y1@Lf;_2e-aq76e<4Ln&1GEcJ>{s5G5&T=gqgwzoX5JCtN z%1{(iF_t-d5%DN&7CT`P6`9PTV?Zznpbrpvs@Y_|6)LCGe7V|i-J4HBA)n3VzBiw2 z&0)9I_AFQxg~?{V8T?lRFewRvQIpGP(y6oBh|&8Nlf~(LHJ^+_u<6an@P@<&%9E6! zO`TyG+Y3Qkdvww&Oc^Z1DJsZq+R#qi*%|CbYY>jos^mZpYTD2@=?vTL?U2i-8C&V* zlvjXdXDy!J2FuHKt${729ZqP>nsDQ(eQR@zilb?qtjiFlh`xMzRcGO-fnsk=>0J(q zp=2@t1H%GI4JQ+ac8sfx(nC=gnhazd6G(&!iJhb>(#$DDxwsBH zLwlW;J#69t_8+HE{hf4b5np+H0n3-9jUPXBP_M*D3Z4z_myn!MffTwLi&b5G$YpID zLl`y$E6Es|hFiod;-)+ccNth{+}{{E-eTM;rJqO+Nf&)@ghPA_4{Qfi!PE_ zwF!Gz$J>~U2DpW20%_Y@h@H7|k}O{-N{ACGH^Oh2NlvUd3RcoR*<|o|bI9LQxCzrh zXX#otvp;)MV2z69%= zF4`%5>yaXl@!~?jDM)V(BF2DAzQC7YNfMQO@oaQ!^=XW>B6+eY@Qq_(jW162wVeXz zu0e6nHP(@swtdboybG$IMZvhutlm{{Ivn}@AMhYRGK103S=!YpSnB?DS6CUeN5Q!Z zq2RvF<6QtLOtcZ>zjq2i%s4`oT!T`r=w~02Br0~$&>plXa=LKw9F{D4=D^Wy2ytCe zQe#wQR%c*ALVaXKMtf*UN^?wgPIo|ld|gC&dRs_wa#L4OVP;2IOKgq7dnTseCsh(P z8-#Tupkm;GQ%Jcn091T=@HWu0S<}`nOvPyo{}m2sB#cE-Hgx=VNq~X~GX@&}y^pmp z_kQNe@Mb-9tBN`&!L8c;Q1d%IkeD9@H4(#)${5#{e>=Y3HdB8_tWuc z#4EnR*wEeDkCSg8;kxf^KLn?Yn4k;t@NsMK>)f2~gm`(6iI88x4>Rhk#^J%g9G2vV zG}?z+pRB&?Bh-Ks`^3!<0B*!PvYHelJW2(ELE(pg@UusGh5sA$*my{80q9u%rd>3| z$S|V9sG=fpgTlCjB4DKTqyjep_E5kpc+?v>VIbfiEB&<c15RS+HR$f3d5@S??BPN0=_-9)o>=S_^Ybh@d2!>EKBk^h67=wP5MW-c# z0Z#1w-&OUc-N|L#^S)rD-&U&?Wkk63v*22+cxK&uSULVTQKicFJ=RDpq2Apg*Z| zsU~>r&#IueTf}wCU3jIJ)sauQX0V~c(YL&XV z>0}LvNqnYZOp_?4VGEYOBksGWg|X4yVb)kT-6FXALkiW>w=jmek~Yx^;DYiZerR+G z9k%?ozH2%9;dxVDe%p;)s?Z)|c?aX{F3`ln3{*-mhrD90w4+o?&JRLA`h^U zh2jV>RlD|!xOR@xp?-@&!+*xSEn`}Uk`THju0~x$b>4Gz z!7tr<8bVwMjbxHq@o{p;Yby};#vWe2MJ?pfOSR+kdOYPY1kT49k%&iQaTv`feP=PB zN^dcoOE9BRuhMEUT1c_wal2e|zv?fhS+U!E-JSM94YNy&-(hs1s>QJ=n!^*bRqtqr zWpDo|;xy$bax=PELh3EV;Qf=ShG1(WTHjJAkH~WdiY&ME8y&BM z(eHcst*8O+Y`&xG9VK_!vtrgxL9@+`Ed|?}edz$Namh->6T-OUxP_Yiox_$cV ztXNS0XP)SP0087-uiToi{l7gkC~1W+&W46_sp~1$i-KQv(laZ8DxHiS$fgakWaO1a zNVVPzLSnt|A;hXfsIIayyEwl*x3s`vwjQPBd`zd=Xu1}uX1#2?+Gw^Rf8kp@P^U6T z4MQvzfli{HCs zSP?3dDazY1+vakT_3a7+8lcMX-?o)9a9lNT70Rzdmnt}2OPoLGZN>F|A|q*`IPw`W zMgYlRIjudXzLWhK24%pN(l>Cy|N!>WAT68}@j2LUl`pAg18bmDTK!Of&1N0Jkt zI7oGfJe9$Nbo`yWUK&^je|RBcS0Ms#@J0H-YEyAiO!1}dR>EU|o-JW)G^Xj5o(c!b zJnChpY>mYj1q#+rddAp6;EK866Cq2UIA;1$DW7evoO;cUUam#~Ov;9u;q zzldtVd@_T@zOR66LcLPE!ET_0Zo}vt`9Kx3MitgshypUi{l$%;qN*7|X=u1Gewq$3lwOOnCUF-hfOQ8TNamRt>eKVIv zhZ2c&8!VazP%@TBp%6+y{myJE6H_`ZEZ+9k+7uJ1g?7FlHzX5BDOHbJK3_Bu7eOq; zUV+*6KD+C(xr-~Cmfb%213ioaC}j$h zEN=0C^9-wK^->N@Ik&KdqbCm^-&+GR#INUctKUI^3sa}peJEgzhqcvA|8h78>k+iI zvnpnN5noX?R<=(aD<|mjMdM5wPj>zUJj|xcC1hTbvNTn3lCOdeT2}iBW$_V5qwB41 zl%)~yUPft63xsMG16f=LgmVg(;#WJCM&diNcHWTH*e#uQuH(pTLk+K{`A}%a3qcJ8 z6W~$mQw^!zY^v`ScL~F4cM?c)VA#2@qPbcnQ1^|!biCrYOHRbucz5ppWM}Lh&EV7rPNDyrx^j@FZ@I{)_$Mc6jSFlsUdnLAVYgjtM(N-a z3iE>r?d?5gUWokqKhSKK(ee@$h*^*@mP|+`%hG!nD4%3XhVeg{Q=1uL04T96<$p@ybu_W&6^_k(+Jr@=Hw zRTOf$bas`G0RlN> z*wE2~IXgc;L;HUx0D#Cn2&uU!N!m4LHRdAjW+-(IuV%;X#fCV{nwF0_ir1|5*>o}t z&u3;711#su;~~WOHo&+Glb|P3WfD;WL|UHtMWrx}7oT_1fGHmcO|>?syA7M3k-A z0_PPI#~35Cptv1+x-YSmZkY$v<{^EyPCUWK`-u;uejFTcIV=QZ^0$u`{ z@veT^E47FiAO%wXAK{=(*sSUJHHiI^+vRNjvIf8F^#O;`l6IH}W2SRovkD)*qFmc= zc=&Q$%uIYckTID#0l+qZvVI5#x}L>BJ+Zb{9dTR{K+|9lc{k(|h*hST|Uce&|YJBeg=G zypja2DjWThpiA(2nK>@;tJ@|a3Hqrx!C6=pCb>SthbxgSpAOEf^1W-BAv{^KbN!v90D4}5b)$zeB@T1tE40L#lx4V|%?~yayb~7F%gDMC^KeC?DSi?}u)atoKx+h)Y z@J$&9`wvonzMt*@b!|w})2kDo{OGR=%+Mxuc5Ad7yG8Kgmo|ulsWyRPV|QJCI*7>p zEH|BL0|dUo*6y2yGlW;;c<03to;+-=jXzBi`W}|>Yqg>AH<6j~PW}MIZSwP&KiimK zilyQEu;~KN82RMmP;CwU@#u}u>_s;5S!8kZ_ch6q8u#56m zuCCHl7Nk-mMAF&s-wUMt|43TE$U)?C*=ofK-Ec0aqcI77Ya*a{6nc=Xkd&C5h>XNc z?`SYfLv4MXvxAf4{mmWHFv3W2k|ENozyoFeKt zD_)FTA_q)NI;mWdj!j9y{VoK=)BKtn+TyREmzc{-R|#wOH+M-8yH-!x<^is<B^z4(|*o&a*mC31f3R4l@^L+i*7qzGV>D*`*kI{ z06p!uK%7ty_YA%DH?xuX{!Ka7km0q!l3%4_nFxAb4_J(*q%zI8ZFh$>H_}F^P4<%i z4sS_VsLtrLT6Ll3;NbtJxLkdX$6zzbIAHGhyhxt6#{;PZexP8GMF07=fAKe_$c@ht zlVGFkZy*Tg;rqtSOp#4N+0PkW5GZ$JhyM#4@}P4YJhHCNVrlun%HD2~FJXzx%gv~I zSYI`^bHUeoC(3to!b_W=ZQ;&iCH7I5&z)&es>a%2*+XXs6pv@9od&P&=QMYIo#3}j zpzC>ko7}3Y6BK4RX~8$IrpF=&2DV@lEkpin;cp`%c%Y>#zNqLo8WfV;Vfu~<^-Eo! z)&8UVDYZFlb(nD!-m1d_!+&KTE5NcPl4{tgV_=abICxZL!~x`-P2KthLg}H?1b!f> zXqw`1$fC{5G!sU7bWME97DaTY}#TMd$i1M$al z>m6egIrB|JGZyQ!P02}0sA`my&EjK9!>%I<@a*85WkX}<2vr5o`*{pyNSxD8t$o0Ck|X(INY+WH*RZj`sovWj1~HuTslht z4W?l|Wr&0^+6;QzE3){5+oo5grs;wgL|AldY|kl%*Gz?j5G>{mbiGDZGPSqR=dv1tz*&9T#5U7 zx{(9JD~HT8$m!}zYAchTeG*p>IJJ&z%gATUYH`?Rt8b}cm+#b}BSJhdy@&j=k9Y*op_z?3O)V_R7Qhn^;R|U^=Z5D{x#(Z%=%l!!UVs zG6%%bvfibo?$Y6SD(!(V7}?0Nf7^*htlsVq`WKB5;W> zHs0-Zblo5922AfXa(4jrJKp$8G7&BPG9!nDofiqM1uCpdWxX|Q8p8AUFD@Q+Gb(L+ z&WaFqg>P!WGSFP`+?DfVw9fbS^zFJ>BLWYnryw~3x(G<5h@a?e7AFw=Fk*UmrG3ba zP0I{2!dnhxPgx7DB@M)r_ccQgz5Ep0l!7}Br}Zja9o&Ay1y3hM-x}(8kiQ6!qyB)A{#=kND8 zzK<$0@kLoQy0A`lcE#}DTi+T*ee&wrb9(f<4|Pg~eQ^s}zH9%$S06sR-Q-7(OWaGH z`z6&u_P}Dn%@Fl=c!!DawiF&BnO^!aezCDKPBH(oeVSfrIX%JEbm_M{O?{t;qA=#sv{F-q5xp^>$s!PDRB90c}tggAW_3N%wvj;*%tAA{XJby-WC1h>ot35 zqAybO)_idid-5<{}uz#*iQD9ex(9t_%C1%Qe z_(U;$BzL~K)B5I`)=Y;y>}Q8*ak!}8Gd#XmwLJ;;JPxhyV8>MTaOBwdo)~#5V&loR zeaXpP;_97fezhp`#aH*nOnu;z>!uIbAbL)sJTEfyO}u9P?mR@Ze+dR*N;pym3IUMH z<`CIyYb_23U+-7pW$0&HFN7;KG#ibF$f(tn60Dkvt!Fj=^0%XtT7x1ED4P3ahohKi zwRjZn8Z-ZC{*R@&KT)#|_$N^}1aH?yjs$mgZ-;GXDs>ZS*gWq<&(7Vq z**)(KrG+YyHaHHm-WxnLSasuw^>eJ+}H12P(qqO5z0Y`@ey8ptpiBJ zBK02xk9>xLF+a^kwDRYM91BZ9%lf=cSn!U-H09Y=c7~I22PY0sqRB@84 z)akHJUKoOX&o!s3N94n-9c5F4S?ND zHLg|2S2OD#@iDFdz2{HquAE27)&TgMon0ub(U&ra^mWvb$qRyzN!yr!NqhaTw^p-{ ztBLLkhjVY$PxhxE;bz3{(Iy!}K_HiK@SiAvQny$nD@t5Z^85p4XkU^JZf{#yUyuaC z9+kc-^q)H+r_qakeB7L3cdm{!x;d&@|B$?p4!HJ>G|z`S+IrgR$dCd>m*%}Uvv(EYcTR8to$gX+9kS=rCI6~_lBFurV2j?xMN zUK8|?>Z5S_YL4r=#n&@24od}Z;i~U^LF=zz867B7n<4A3%o*Ha=+h)pErlK5X2mx! zwir02jIp@;g=HQDbu=ZxE+Paqc2%Sd_bUQdXKF}uEEy9a0_u%5P)+&Sr2+*F!x1|> zCOi1Vw(lcfMqn8}+44tlLi~RAzwHmbDec|XR6%qe4)msue+36%5XhfI5I*Mr{jZJ0 zAO}dWVhTmTZ=#^&MCTm3`dg;z==|LJwZq|ttf}MOV?c+>k3^5CK35vz>sO;{&-#*U ze^?F0<@Z+K%Wu$zl2MSu3t3{5HWo;=8GT^W4gUTzx`Oc#4RQ{J*U&l}oEw+ASDxNm z{NI?R9K!IXEM;_2es3N@G-gM$OdZzdEt^73$g3M3mM5R}i!#a?mtam4-^C}{%+uB3 z9zJOfdwNQPZOalj=*WXPn=lJao=^-*tDtk-Q!-nSnsB%WK(=ZxYGXl_&czLJwAT|#dP(a=pcu1(M2zFm6S~3jaCS);drUtFYzglIx&sP z&QS)7!z|J)bw?jHGqp6XO7J8?*z$2NgCQn0{3LZ%Cb3VE*b3ZPNPlW&NGd0W)iSu$ z&FI}j@@nF%=s^sagM)%=TH7S&6_WdItsK~ArlE(|Fy{eKYrUC=a3$Kd~M3|159~T}gFfx|c^B5MT zPE;WKd!XG_=@O5tWLv40V)v~nt&0$85k?X!iIN=?FIt$AhQJgl2B5BM=@T=5mnk`F zN^f+5U+x?uie>Jhn$`;l753?0ESASxrh~|sjVnD{#@|DZhStm)Tv&7m3&GXh5?`%) zqNVbIsPl>nrlfIc6z!^k4L4Q|)Fn(h<*^TrC;I5# z)DaWb&P6J~`j*WGHK2XVdV?DfnXkH=(+gQPhxrtEvJ>f%vVE)#7SvXSXzT3^%gUgrY|9$~+)QFPs zQ(m*02dV8`^oW6i9MShN1RTGM^G8`Qf|uuoWyI@K_mKTPiYBML5~It+bTbh)M`r;r8mu)nwJ5yieo zj(3krT6zy6bckl{vs!RYa6zfR;uEmbJ0^&t$nZu$ND@U8Vi{re3hUf98_UY6AqLyj z4}}wLDV#3^7pTU!U+Bg>Z(~yvRA6GarPRcx;ALa|!fHyFc@j-x@Um(d2~Kn5D#Ud) zO!^VdT4cmxcZiHD@s@V1LqB||M4Ws<4lU(vm2zw9zBW=x?@pnS%rUNW6m*C6C)U#{ zphb~(^C#=?Bc6N2gRs(6SlvV9)V6-LYR7Dx%|rB-wgJ5>#~p*ur&zy_-+q^FXL0e# ziKzf^%mowDZz$;^Tv;Ss875pgJ@wqyckW~8ovhLgz+$!aVwLt{jn@!b)w$Pe-zQOp zXW5yF{958j>SNeqRW&)+J>#OWTB$%&s%9z`dg2o4ChVp&mzNT71n$FHk{Ise*2Oli zv$-fYmqLlU&_Gahn0<|yyqC=TK^W#ZQ%NDxxN@)h5L#EVjZw9rHH91^rG#MkHs#_3 zBkht!CPuMh`s>BVNriq)+nid)5(X4r%YrX}ME|G|lo>6Q;A~um7~b&>7_4T$^m0RT%bz%g zKRMaBhny5`qpnwXvAXG;$V7FH+@``*aYi`%jN%%yVqz|X9xmbrQG=$FL(-!+=~NP8 zWvfY2O^ec|u-|o37VD$7Y#PVv%$C_2cWj?<+idCFeyyeSs;#aV zwdmMH^A?+gJf+%3)Hqd-Ts5xcKw7O(UlO#S=MQ%wT^h8g#V0NUedv$!j9ejenNA^e(NoJz?8pm$V z$cz1qu`guoM09aE^O+Yyf`SrQC=HYzuPK-(ukuIIp|=2&Dv7uK6catwrP)|rYj*RX z9dZ5Pela<7KhJOuliGfF{}h!qr!Z%RBK|YWB96<-vHRBiPh}Rv@AE%Uo!Q2hb4-Et z)XS|k)7AN?Ntm@D#_VN^ayTNBb(?Q)Jm1M)ohZsOpC{Q`@PG9Cv;3Ve=MQQO)EJJTmaH=TG~() zx(v?z&~~%qu^|(Xv!n}ygLYkp6ZZKR2!d6uMdNiH)s)?*RfV=J=Jv5JxUye|L|e4A zRYS%~AbL~Lk|9u1`Yh=c>YnW4rY=MeVbSkOEq zKr_ZkIH43NNoH)?pg0T8%|&niXc0gO<*MK?;S}nudtn|J6(RPDY<=;TrJxYf2^^U? zD$n>g;~YqERDb2T04Uj6-vs=q?`^j(`+)Wa!lfK;E#)4M(@>;tGJQo6~dR06d_E!ftAqv$U^(HD3R;Tq!DHFR`Td!gZfg6oJ~#+ z+w>8Ea>AMJqNA1?5mjXozUUIoJmhG#P?aQUDvo5yGa9)JuCVgd9tc$x1r%GCxe=g= zEEb|4gR)IiwElB-tb)L$`{Imz2d4~;I*-QX54K;4>3=%bBNDUg$a%Wjt>v%IO!-`M z6?bmc$`QJmT9tFk&1G}3nDxy2V~(^Q$eIiAW{?+5#3vo}=tw5*8j&%a?L$2mjl0Il zDZTQ;jHVNE9V<#EF`isR7#JUMXLIn>vpRS+lOxo-ka;!asG1gzyV{gP=bPaW7M5}N z|1hQ7v+DY;+*zpYb{f_F?kAqeFB9^!3eQ)s1AL8(CNItl!s0zJ_A;8tGLt+o(61;N zc|H%UPxO@3S1%Vec)9RVht5|;BB<7oTrSQ_7PsG2(naQ}mP^&R;;IXI$`P=!YU+^$ zDf{qHB~3S-DLk+Yf&`JoV{g>XJr?nfC6V{C!VgrMmsll`pEuRkwRtksm$;&{uNuj0 zC|;}|pNsx4069R$zftx;xX_hYTC^=me+G0M z0o1tGuM3eavvXyzzex?WNeuJ$37CCBY{W;W7mc4pNSuU8eu>0Lj+9B86iBm5@s6aq zcUo%!mNJphrLRT}jA_F#9Ld?z(xt2B?IT`DGR|pEdJ07>*5i#%+m83~tCg9KGh2SG z@>d2q$#&L>jQSM55)!#PcrMZnFmBs*r`4^<*Ud(DcYU=gbC1R)m-AT95qU;R^+K{~ zr3hCknB^v8J+D)yjTT9>6dg-T6x~v%uoxF8m+3zMdH!XV|DOF%$Sy+?TZJrSU^Oz4gKXs8 zsSm?h#6jX>x4t0N2*0?`gtNs7^T*Mlg96Y=n&o9w~P|;AitAMtVjd zqe@+vpnxVrNv%!S$Nfa-AWPqiEneO}PupvT< z7u~{_&H@O57*sH(k332q0iy^&jC%W2vEiv&v6Zm*Ke^xoD9RI@-5^#}MyMHLZo#`W z$)9`#Fd)E?@1$4&v4pS=CMou*2Gr;M5ZFWWcCbR}!W8#Vu@v4TRUh?xH?+sz@ zTCSgY6Bwr%(BWm!wfb8y-oS*$V8E^Z7VXZWp(;2ow)$IQuP+Nq0snNk)>7g7IItmi zajb3ix6J*tIM8`GrnLH7?yazMK{9Z(Y4x+hgFHIN4Z(20J}qO#)%$`8^6vA|5^fYm z5fp=BQ540Yc$5yMM;T5nP^MF2@n{sTA!iX%5)y1qtiN52g7t4Mf)zD<#GxQHtAaz` zEG=S{yTJDX3Q6KeVfqAyd8KEuyj8kSnkVn0;mW`=9#zDa(WXPqWo=Aso!a zDp5M!_U%6yvO=j+YqUE3JSypR%6Qc3 zVYL5h>e)0jJj{x44+aebV|#Y!kh0R~k=cnMKl6spo`wuvc3Pz~p#TsFfe!K~icmUx zLT;n%PdKx^U_9DG6Wp1PV4{*LZ{G@2O`IllZ8hk?D2gcIxW?!-^|Tjxlx9(U!?0(l zAgUV=6Cb5X<#lT~6uIAf5YCL8?>(<&TNi7Oj?FXK%-Ys~%_{QL`&;puZ+&ky1xt=5~}utyM#pqe2p zt|m#dyl%VA_98W=-k%T@;}+{us-_#Z&T-KoD$0HsCrR@3@}jEgo*#s9l4f~PEiNcn z2oVzrk&>(nK2xi#mZ1hty#|f&no-fQaX?@qViIx)6h=WwMa@qi%42n3zdV+nm|nAC zX3JLnf;BrgzxOw#Co`jj4Lc5;M2QinMVl@?0+B?fGngz6SEJJ#eDD__P%xnv71l`+ zC0ZVx36dnsBlkf%k%yB!+VkY=g+w||v4O;0ROywKqdnjt7(p?bVVR|<_-Lw)oWbf* zSUURZ03C7=P9UrdO?H>sx}8!SD!_>20mAWLoB$$}4NF{@2|xj&qLlw_<-3&1A9p;Ke6jEXOOV4qeX=!l8MnDon`aSlZc;9$0zHhyk-)rx6HT+8d zV{zzG5wCd1C%!=>FhL1s%%cgf7n!I;Cn1SR;^-bz(vqEmyvk07!2pO+3GK?{Fs6)H zWvyEhF%3tDPPRz70x*nkMKGD=E!)*ilp8t!L@HQ6*Y`FM{)dW^m2kvcxCpG?DhV`o z6-Osh7#{ZOxJe_eW;toy63IwXD^wk+E;55x%t~vA*UM!x!t`Upbf<^28AK7668SMp zFE$Pyd_<5;$~r-TMgKM12ZNweP6RQWDvE&JxH`lYpFYuEhiJ`(r~%IPpp z^RjOHabEZHem@|wkV+fte26KR+TP`?^jF#Z!^1fFPIPewYgm+- z(8#A@f*Q9nO768zjwI_SCFZ+vYHT2FhFJH#so+AUIw%P~-=wvdQP14J0ja#u=+tQV%x@)Y`s$v@jwZ%;FJQCf|Ui7MU)B3B;}9F-&M6${nRqm zveo|=a(7(n{NGr(%kaJCzw&?e|KaujzmOG^n2*}AZtSOfll$~$3Z6oz4^zXmV$;qJ z1PGu<;%k}exw%@`9HKJe43hZxx(hr|R&I+9oO^BkOB8;EKIq|_Pd{$BZT9H{2p|3M z2XckYwa~J5Gs^;dZ|m#uIjIYqen1xB*t zS^ck(Yj7k;-vhB@_|(t)kyyV$g?(MmBGEcOr`ajW3y}-CVx80<3MzH-AY-s#h7)TM}`5 z^U|Q5RIStR#;=3%v$>ek7?nNUb3@YqRg?##6Xe@8U!#Rf#RPRld~0XRm1D4u#!{ZP z#e{1T)3@s$(dlyQ@tS9a#Cb}^Q&K*?F|;yEx>~-TS5V5VGE1*4^{zB=vQ1Ge`1Tpv z^07nu^s+rtu&onqd96ro!;7OeCN2?ezyt>kdwy7X#cDKgs9_lB5p_-ep0&y;6)dJh z55q{7QWkqzMks3_vI^^tr4Ag;5v}tBy!1c!5!ZD6s53tKmm>L(V)>r~b0zI;dnd1b z3Ob~ydm4{(FhfHbmbu|s7?GusSy`IB;v6i?(ej+E&EMwy?C!Na`P*B7eFfQ{=R>X` zsBls+;SUc2vGgef6^F3T&$q#ll@sQ=L+o!P>Iu2_==Cc49mJs5aXcRA>B;ZeDeU``3-pS?i?r)$RTNmHVWb{V9B?;F8yrCAVDXkD+a2gx|OMv3&HWURUnT zxbZuGL*sh_4;BiW@~85O-ie*NWJ^f-EN=PQ?e0Qyx726$cs!mD=Cyk!Z{k;WEg$7) z_+ijy{nLBgcDl6ZKmCUIx9dQ`k?&2i=e(Y|taq;Ko7?&a&r{U)L~mdH1T4E$_BH%lg{Z*5}%C8(ZJbZfm@DhYv??bc5j0 zaCyrg!=rlikFIgKPyF8a=6ABM^)a8!r#`*Y>v?6>zpB@0+YYLFx(I3Y%7?Vb+x3-v z4dNf!QQ7>2Ke10#KD?*($q#B{1u{S1&#_acH){)z2Bp(2+t(|-GF@5zM$e*aeb(q> zpZfL?b38}emtI|WW2LJu3E;=)`m9tCA{cv|am61?bR=6n&t11gTh91Cy7Rldi#wwS zZWqH_!ia~PkC%g;i<6C2mmZNiwCk)Q!CoenDC=sHPArLJDo>J#$2zSfUg}*byX!hn z=aNsL=wuC4Lf8CJ-;IHkqDG4nF#a$~9MPwh%NtJ{|w^{|Y)l~B1mU)x=x z&*oZS7bMNJ&@nV4A)}(9Sd9@2W^`yVphtt+F>YL#`{*Toq~C2{``7VxeqCSpSNOGk ztzXOC`!*x|F1r7}zOVP||9OlV6?x0a{>lS$z2(>j_Vq}~((-!OV$R-s^I9Dp6Bs?A zsa`=WZy<;pOlc1GDa$Kfx8ob!&LMe;zjR+V_XDuY1E+!K!$8a(v*V8O$^ZF<8TIly zCXC%H_VeSLyj<6~rZt}jpN32R;rMVq5bpYW^^)IZm-kWnEPip1Jc&}`^ltrXUdYp- z%VghK$MD_#HGR!qHvhi8u=|)$^lV_k>y=YqMEIVV9jJV*T09xI;icPH7iz}a!w!mw zPv-)q5aV{d*E@0pT*7FXGN}RWX*HBb@=ZcIfHd5jM-oW`E0na97&y^nwoc2|DEFeD z`SW8+I*R^UA^2|wb$^y#&Eik}9l66V=5*ePTXie%=$*RNxBk}M+S_y+Z^QF>9oruR zvVKNi*_(ZDhWF{a{deFF-l40e-YTkyFBDTkaV34Jv{ECKY~#~0KFhkRNio6By-)vc zCc{L#2G?G_JINm$d+m#ry;S)=WMDt#r%863Y>z4Snrh!Hrgq8{oYP{72+?4+uH?^;r4DK%y}`jdduc=pfz1!yTZu*vTP z=y{55=+mo5H#4W0I;lgu7R{P8YEWN7iNzIPQpuf4{{wz8#h!3!rI%H9nS+pj`TyMJ zKOGTD#F5cop8I*1_xX^IInL+UmeGG)AGe1fAqY(Dv?hsbnuLxi>5-<1zQu`rb2AbTS;Dl!Rf(*GlC6ghNv$g?rTW; z7Sg_ls-_6k9Kl*5Szn~;k8}f(X)q`I6wN+It1r>+Bwi;t=M&n?gU;hr=6SHaI@JYC zb|sTr>Eu^7g_TcnwKG`V3|Bv+HOzQ}^W4z9Hazc*%x9zX-L-{nZsEHz?@Y}n(|fhW zy~*s}W`6!zSU|Q$$@MaFv&`HstD)y{17@#9**z2-qtO*gGsJ3kBuj zKt*^^86BvK9#qEwYB~bCbQCPi!Q>oG$;s4krsZsUE@p%`GgpTTbENR-^fkJDi(cQO z-;WsdGlu<&QNLr{pP2MFru~aq|JCyVeH~)s^V`JyH@SdKEpXEd+RTDSUsQG$o!!M` zZ?P8*hs9xV5Ds`4+1;Q0-M{_cQ?L-Il`Bua0%g{z$Q6F=9q)S2`#$iYkCr|;@)Rgi zqD&?4DwHa19bLWN=go&N1V8=)1h#MASF#`bxzd%bJQ!M^$QmNAvEyqRJ+!%-Yw6iq zRnuEqS=-p!#fuL=0fK}G6Uo`)TTGH+3?_} zRH?OwANqs5DgH81VqOp@kzaVx$3F4hj{S*0PmMZ_wRMVCKJ|w`{q>Fx zgPEB(elwM$h(_f<`X99cwy!_L_piG=(cwiHaYPY>U*K`LocYCZ z^;i<$dStgNndEfXEoM>RIfX9c!!}F@B{?cAaf*MN(5kn+lFpn?iggrib3�`b3#zH< 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�`b3#zH< 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 + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/add.svg b/demos/linearlite/src/assets/icons/add.svg new file mode 100644 index 00000000..77d1805c --- /dev/null +++ b/demos/linearlite/src/assets/icons/add.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/archive.svg b/demos/linearlite/src/assets/icons/archive.svg new file mode 100644 index 00000000..791b3b81 --- /dev/null +++ b/demos/linearlite/src/assets/icons/archive.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/assignee.svg b/demos/linearlite/src/assets/icons/assignee.svg new file mode 100644 index 00000000..0110ea5b --- /dev/null +++ b/demos/linearlite/src/assets/icons/assignee.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/attachment.svg b/demos/linearlite/src/assets/icons/attachment.svg new file mode 100644 index 00000000..40862521 --- /dev/null +++ b/demos/linearlite/src/assets/icons/attachment.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/avatar.svg b/demos/linearlite/src/assets/icons/avatar.svg new file mode 100644 index 00000000..3021b149 --- /dev/null +++ b/demos/linearlite/src/assets/icons/avatar.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/cancel.svg b/demos/linearlite/src/assets/icons/cancel.svg new file mode 100644 index 00000000..f5fe6e87 --- /dev/null +++ b/demos/linearlite/src/assets/icons/cancel.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/chat.svg b/demos/linearlite/src/assets/icons/chat.svg new file mode 100644 index 00000000..05882262 --- /dev/null +++ b/demos/linearlite/src/assets/icons/chat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/circle-dot.svg b/demos/linearlite/src/assets/icons/circle-dot.svg new file mode 100644 index 00000000..67568703 --- /dev/null +++ b/demos/linearlite/src/assets/icons/circle-dot.svg @@ -0,0 +1,3 @@ + + + diff --git a/demos/linearlite/src/assets/icons/circle.svg b/demos/linearlite/src/assets/icons/circle.svg new file mode 100644 index 00000000..fac3b81f --- /dev/null +++ b/demos/linearlite/src/assets/icons/circle.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/claim.svg b/demos/linearlite/src/assets/icons/claim.svg new file mode 100644 index 00000000..6a31eb37 --- /dev/null +++ b/demos/linearlite/src/assets/icons/claim.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/close.svg b/demos/linearlite/src/assets/icons/close.svg new file mode 100644 index 00000000..f17488ca --- /dev/null +++ b/demos/linearlite/src/assets/icons/close.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/delete.svg b/demos/linearlite/src/assets/icons/delete.svg new file mode 100644 index 00000000..eb3fe397 --- /dev/null +++ b/demos/linearlite/src/assets/icons/delete.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/done.svg b/demos/linearlite/src/assets/icons/done.svg new file mode 100644 index 00000000..4904f818 --- /dev/null +++ b/demos/linearlite/src/assets/icons/done.svg @@ -0,0 +1,3 @@ + + + diff --git a/demos/linearlite/src/assets/icons/dots.svg b/demos/linearlite/src/assets/icons/dots.svg new file mode 100644 index 00000000..8193e5c1 --- /dev/null +++ b/demos/linearlite/src/assets/icons/dots.svg @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/due-date.svg b/demos/linearlite/src/assets/icons/due-date.svg new file mode 100644 index 00000000..bf888e0f --- /dev/null +++ b/demos/linearlite/src/assets/icons/due-date.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/dupplication.svg b/demos/linearlite/src/assets/icons/dupplication.svg new file mode 100644 index 00000000..3d5ebb62 --- /dev/null +++ b/demos/linearlite/src/assets/icons/dupplication.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/filter.svg b/demos/linearlite/src/assets/icons/filter.svg new file mode 100644 index 00000000..86ea60ed --- /dev/null +++ b/demos/linearlite/src/assets/icons/filter.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/git-issue.svg b/demos/linearlite/src/assets/icons/git-issue.svg new file mode 100644 index 00000000..de681ca9 --- /dev/null +++ b/demos/linearlite/src/assets/icons/git-issue.svg @@ -0,0 +1,4 @@ + + + + diff --git a/demos/linearlite/src/assets/icons/guide.svg b/demos/linearlite/src/assets/icons/guide.svg new file mode 100644 index 00000000..41f941a7 --- /dev/null +++ b/demos/linearlite/src/assets/icons/guide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/half-circle.svg b/demos/linearlite/src/assets/icons/half-circle.svg new file mode 100644 index 00000000..7a4f0b28 --- /dev/null +++ b/demos/linearlite/src/assets/icons/half-circle.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/help.svg b/demos/linearlite/src/assets/icons/help.svg new file mode 100644 index 00000000..88ed0a4d --- /dev/null +++ b/demos/linearlite/src/assets/icons/help.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/inbox.svg b/demos/linearlite/src/assets/icons/inbox.svg new file mode 100644 index 00000000..8bbd1f37 --- /dev/null +++ b/demos/linearlite/src/assets/icons/inbox.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/issue.svg b/demos/linearlite/src/assets/icons/issue.svg new file mode 100644 index 00000000..b7ac9f03 --- /dev/null +++ b/demos/linearlite/src/assets/icons/issue.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/label.svg b/demos/linearlite/src/assets/icons/label.svg new file mode 100644 index 00000000..02109d29 --- /dev/null +++ b/demos/linearlite/src/assets/icons/label.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/menu.svg b/demos/linearlite/src/assets/icons/menu.svg new file mode 100644 index 00000000..404573a3 --- /dev/null +++ b/demos/linearlite/src/assets/icons/menu.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/parent-issue.svg b/demos/linearlite/src/assets/icons/parent-issue.svg new file mode 100644 index 00000000..23635e91 --- /dev/null +++ b/demos/linearlite/src/assets/icons/parent-issue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/plus.svg b/demos/linearlite/src/assets/icons/plus.svg new file mode 100644 index 00000000..d874b1c6 --- /dev/null +++ b/demos/linearlite/src/assets/icons/plus.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/project.svg b/demos/linearlite/src/assets/icons/project.svg new file mode 100644 index 00000000..89e1f8ce --- /dev/null +++ b/demos/linearlite/src/assets/icons/project.svg @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/question.svg b/demos/linearlite/src/assets/icons/question.svg new file mode 100644 index 00000000..c8364267 --- /dev/null +++ b/demos/linearlite/src/assets/icons/question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/relationship.svg b/demos/linearlite/src/assets/icons/relationship.svg new file mode 100644 index 00000000..cb0dc32c --- /dev/null +++ b/demos/linearlite/src/assets/icons/relationship.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/rounded-claim.svg b/demos/linearlite/src/assets/icons/rounded-claim.svg new file mode 100644 index 00000000..0ed5d811 --- /dev/null +++ b/demos/linearlite/src/assets/icons/rounded-claim.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/search.svg b/demos/linearlite/src/assets/icons/search.svg new file mode 100644 index 00000000..01f82dfe --- /dev/null +++ b/demos/linearlite/src/assets/icons/search.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/signal-medium.svg b/demos/linearlite/src/assets/icons/signal-medium.svg new file mode 100644 index 00000000..4aac5b25 --- /dev/null +++ b/demos/linearlite/src/assets/icons/signal-medium.svg @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/signal-strong.svg b/demos/linearlite/src/assets/icons/signal-strong.svg new file mode 100644 index 00000000..5d6f38ce --- /dev/null +++ b/demos/linearlite/src/assets/icons/signal-strong.svg @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/signal-strong.xsd b/demos/linearlite/src/assets/icons/signal-strong.xsd new file mode 100644 index 00000000..da262c9b --- /dev/null +++ b/demos/linearlite/src/assets/icons/signal-strong.xsd @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/signal-weak.svg b/demos/linearlite/src/assets/icons/signal-weak.svg new file mode 100644 index 00000000..a5a5a6b7 --- /dev/null +++ b/demos/linearlite/src/assets/icons/signal-weak.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/slack.svg b/demos/linearlite/src/assets/icons/slack.svg new file mode 100644 index 00000000..0aec65f5 --- /dev/null +++ b/demos/linearlite/src/assets/icons/slack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/view.svg b/demos/linearlite/src/assets/icons/view.svg new file mode 100644 index 00000000..86bc611d --- /dev/null +++ b/demos/linearlite/src/assets/icons/view.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/demos/linearlite/src/assets/icons/zoom.svg b/demos/linearlite/src/assets/icons/zoom.svg new file mode 100644 index 00000000..40904432 --- /dev/null +++ b/demos/linearlite/src/assets/icons/zoom.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/assets/images/icon.inverse.svg b/demos/linearlite/src/assets/images/icon.inverse.svg new file mode 100644 index 00000000..142b79bd --- /dev/null +++ b/demos/linearlite/src/assets/images/icon.inverse.svg @@ -0,0 +1,4 @@ + + + + diff --git a/demos/linearlite/src/assets/images/logo.svg b/demos/linearlite/src/assets/images/logo.svg new file mode 100644 index 00000000..9dfc1c05 --- /dev/null +++ b/demos/linearlite/src/assets/images/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/demos/linearlite/src/components/AboutModal.tsx b/demos/linearlite/src/components/AboutModal.tsx new file mode 100644 index 00000000..c12d065b --- /dev/null +++ b/demos/linearlite/src/components/AboutModal.tsx @@ -0,0 +1,43 @@ +import Modal from './Modal' + +interface Props { + isOpen: boolean + onDismiss?: () => void +} + +export default function AboutModal({ isOpen, onDismiss }: Props) { + return ( + +

+

+ This is an example of a team collaboration app such as{` `} + + Linear + + {` `} + built using{` `} + + ElectricSQL + + {` `}- the local-first sync layer for web and mobile apps. +

+

+ This example is built on top of the excellent clone of the Linear UI + built by{` `} + + Tuan Nguyen + + . +

+

+ We have replaced the canned data with a stack running{` `} + + Electric + + {` `} + in Docker. +

+
+ + ) +} diff --git a/demos/linearlite/src/components/Avatar.tsx b/demos/linearlite/src/components/Avatar.tsx new file mode 100644 index 00000000..88bc0cd3 --- /dev/null +++ b/demos/linearlite/src/components/Avatar.tsx @@ -0,0 +1,84 @@ +import { MouseEventHandler } from 'react' +import classnames from 'classnames' +import AvatarImg from '../assets/icons/avatar.svg' + +interface Props { + online?: boolean + showOffline?: boolean + name?: string + avatarUrl?: string + onClick?: MouseEventHandler | undefined +} + +//bg-blue-500 + +function stringToHslColor(str: string, s: number, l: number) { + let hash = 0 + for (let i = 0; i < str.length; i++) { + hash = str.charCodeAt(i) + ((hash << 5) - hash) + } + + const h = hash % 360 + return `hsl(` + h + `, ` + s + `%, ` + l + `%)` +} + +function getAcronym(name: string) { + let acr = ((name || ``).match(/\b(\w)/g) || []) + .join(``) + .slice(0, 2) + .toUpperCase() + if (acr.length === 1) { + acr = acr + name.slice(1, 2).toLowerCase() + } + return acr +} +function Avatar({ online, showOffline, name, onClick, avatarUrl }: Props) { + let avatar, status + + // create avatar image icon + if (avatarUrl) + avatar = ( + {name} + ) + else if (name !== undefined) { + // use name as avatar + avatar = ( +
+ {getAcronym(name)} +
+ ) + } else { + // try to use default avatar + avatar = ( + avatar + ) + } + + //status icon + if (online || showOffline) + status = ( + // + + ) + else status = null + + return ( +
+ {avatar} + {status} +
+ ) +} + +export default Avatar diff --git a/demos/linearlite/src/components/IssueModal.tsx b/demos/linearlite/src/components/IssueModal.tsx new file mode 100644 index 00000000..ea05824c --- /dev/null +++ b/demos/linearlite/src/components/IssueModal.tsx @@ -0,0 +1,179 @@ +import { memo, useEffect, useRef, useState } from 'react' +import { generateKeyBetween } from 'fractional-indexing' + +import { BsChevronRight as ChevronRight } from 'react-icons/bs' +import { ReactComponent as CloseIcon } from '../assets/icons/close.svg' +import { ReactComponent as ElectricIcon } from '../assets/images/icon.inverse.svg' + +import Modal from '../components/Modal' +import Editor from '../components/editor/Editor' +import PriorityIcon from './PriorityIcon' +import StatusIcon from './StatusIcon' +import PriorityMenu from './contextmenu/PriorityMenu' +import StatusMenu from './contextmenu/StatusMenu' + +import { Priority, Status, PriorityDisplay } from '../types/types' +import { showInfo, showWarning } from '../utils/notification' +import { usePGlite } from '@electric-sql/pglite-react' +import { Issue } from '../types/types' +import config from '../config' + +interface Props { + isOpen: boolean + onDismiss?: () => void +} + +function IssueModal({ isOpen, onDismiss }: Props) { + const ref = useRef(null) + const [title, setTitle] = useState(``) + const [description, setDescription] = useState() + const [priority, setPriority] = useState(Priority.NONE) + const [status, setStatus] = useState(Status.BACKLOG) + const pg = usePGlite() + + const handleSubmit = async () => { + if (title === '') { + showWarning('Please enter a title before submitting', 'Title required') + return + } + + if (config.readonly) { + showWarning('This is a read-only demo', 'Read-only') + if (onDismiss) onDismiss() + reset() + return + } + + const lastIssue = ( + await pg.query(` + SELECT * FROM issue + ORDER BY kanbanorder DESC + LIMIT 1 + `) + )?.rows[0] + const kanbanorder = generateKeyBetween(lastIssue?.kanbanorder, null) + + const date = new Date() + await pg.sql` + INSERT INTO issue (id, title, username, priority, status, description, modified, created, kanbanorder) + VALUES (${crypto.randomUUID()}, ${title}, ${'testuser'}, ${priority}, ${status}, ${description ?? ''}, ${date}, ${date}, ${kanbanorder}) + ` + + if (onDismiss) onDismiss() + reset() + showInfo(`You created new issue.`, `Issue created`) + } + + const handleClickCloseBtn = () => { + if (onDismiss) onDismiss() + reset() + } + + const reset = () => { + setTimeout(() => { + setTitle(``) + setDescription(``) + setPriority(Priority.NONE) + setStatus(Status.BACKLOG) + }, 250) + } + + useEffect(() => { + if (isOpen) { + setTimeout(() => { + ref.current?.focus() + }, 250) + } + }, [isOpen]) + + const body = ( +
+ {/* header */} +
+
+ + + electric + + + New Issue +
+
+ +
+
+
+ {/* Issue title */} +
+ + + + } + onSelect={(st) => { + setStatus(st) + }} + /> + setTitle(e.target.value)} + /> +
+ + {/* Issue description editor */} +
+ setDescription(val)} + placeholder="Add description..." + /> +
+
+ + {/* Issue labels & priority */} +
+ + + {PriorityDisplay[priority]} + + } + onSelect={(val) => { + console.log(val) + setPriority(val) + }} + /> +
+ {/* Footer */} +
+ +
+
+ ) + + return ( + + {body} + + ) +} + +export default memo(IssueModal) diff --git a/demos/linearlite/src/components/ItemGroup.tsx b/demos/linearlite/src/components/ItemGroup.tsx new file mode 100644 index 00000000..29fa0142 --- /dev/null +++ b/demos/linearlite/src/components/ItemGroup.tsx @@ -0,0 +1,27 @@ +import { BsFillCaretDownFill, BsFillCaretRightFill } from 'react-icons/bs' +import * as React from 'react' +import { useState } from 'react' + +interface Props { + title: string + children: React.ReactNode +} +function ItemGroup({ title, children }: Props) { + const [showItems, setShowItems] = useState(true) + + const Icon = showItems ? BsFillCaretDownFill : BsFillCaretRightFill + return ( +
+ + {showItems && children} +
+ ) +} + +export default ItemGroup diff --git a/demos/linearlite/src/components/LeftMenu.tsx b/demos/linearlite/src/components/LeftMenu.tsx new file mode 100644 index 00000000..ab2b583a --- /dev/null +++ b/demos/linearlite/src/components/LeftMenu.tsx @@ -0,0 +1,175 @@ +import { ReactComponent as HelpIcon } from '../assets/icons/help.svg' +import { ReactComponent as MenuIcon } from '../assets/icons/menu.svg' +import { ReactComponent as ElectricIcon } from '../assets/images/icon.inverse.svg' +import { ReactComponent as BacklogIcon } from '../assets/icons/circle-dot.svg' +import { MenuContext } from '../App' +import classnames from 'classnames' +import { memo, RefObject, useRef, useState, useContext } from 'react' +import { BsPencilSquare as AddIcon } from 'react-icons/bs' +import { BsSearch as SearchIcon } from 'react-icons/bs' +import { BsFillGrid3X3GapFill as BoardIcon } from 'react-icons/bs' +import { BsCollectionFill as IssuesIcon } from 'react-icons/bs' +import { MdKeyboardArrowDown as ExpandMore } from 'react-icons/md' +import { Link } from 'react-router-dom' +import Avatar from './Avatar' +import AboutModal from './AboutModal' +import IssueModal from './IssueModal' +import ItemGroup from './ItemGroup' +import ProfileMenu from './ProfileMenu' + +function LeftMenu() { + const ref = useRef() as RefObject + const [showProfileMenu, setShowProfileMenu] = useState(false) + const [showAboutModal, setShowAboutModal] = useState(false) + const [showIssueModal, setShowIssueModal] = useState(false) + const { showMenu, setShowMenu } = useContext(MenuContext)! + + const classes = classnames( + `absolute z-40 lg:static inset-0 transform duration-300 lg:relative lg:translate-x-0 bg-white flex flex-col flex-shrink-0 w-56 font-sans text-sm text-gray-700 border-r border-gray-100 lg:shadow-none justify-items-start`, + { + '-translate-x-full ease-out shadow-none': !showMenu, + 'translate-x-0 ease-in shadow-xl': showMenu, + } + ) + + return ( + <> +
+ + + {/* Top menu*/} +
+
+ {/* Project selection */} + + + {/*
+ G +
*/} + electric + + + {/* User avatar */} +
+ + setShowProfileMenu(false)} + setShowAboutModal={setShowAboutModal} + className="absolute top-10" + /> +
+
+ + {/* Create issue btn */} +
+ + + + +
+
+ +
+ + + + All Issues + + + + + + Active + + + + Backlog + + + + Board + + + + {/* extra space */} +
+ + {/* bottom group */} +
+ + + {` `} + ElectricSQL + + +
+
+
+ {/* Modals */} + { + setShowAboutModal(false)} + /> + } + { + setShowIssueModal(false)} + /> + } + + ) +} + +export default memo(LeftMenu) diff --git a/demos/linearlite/src/components/Modal.tsx b/demos/linearlite/src/components/Modal.tsx new file mode 100644 index 00000000..1abce0af --- /dev/null +++ b/demos/linearlite/src/components/Modal.tsx @@ -0,0 +1,100 @@ +import React, { + memo, + RefObject, + useCallback, + useRef, + type MouseEvent, +} from 'react' +import ReactDOM from 'react-dom' +import classnames from 'classnames' + +import { ReactComponent as CloseIcon } from '../assets/icons/close.svg' +import useLockBodyScroll from '../hooks/useLockBodyScroll' +import { Transition } from '@headlessui/react' + +interface Props { + title?: string + isOpen: boolean + center?: boolean + className?: string + /* function called when modal is closed */ + onDismiss?: () => void + children?: React.ReactNode + size?: keyof typeof sizeClasses +} +const sizeClasses = { + large: `w-175`, + normal: `w-140`, +} + +function Modal({ + title, + isOpen, + center = true, + size = `normal`, + className, + onDismiss, + children, +}: Props) { + const ref = useRef(null) as RefObject + const outerRef = useRef(null) + + const wrapperClasses = classnames( + `fixed flex flex-col items-center inset-0 z-50`, + { + 'justify-center': center, + } + ) + const modalClasses = classnames( + `flex flex-col items-center overflow-hidden transform bg-white modal shadow-large-modal rounded-xl`, + { + 'mt-20 mb-2 ': !center, + }, + sizeClasses[size], + className + ) + const handleClick = useCallback((event: MouseEvent) => { + event.stopPropagation() + event.preventDefault() + if (!onDismiss) return + if (ref.current && !ref.current.contains(event.target as Element)) { + onDismiss() + } + }, []) + + useLockBodyScroll() + + const modal = ( +
+ +
+ {title && ( +
+
{title}
+
+ +
+
+ )} + {children} +
+
+
+ ) + + return ReactDOM.createPortal( + modal, + document.getElementById(`root-modal`) as Element + ) +} + +export default memo(Modal) diff --git a/demos/linearlite/src/components/Portal.tsx b/demos/linearlite/src/components/Portal.tsx new file mode 100644 index 00000000..537385d8 --- /dev/null +++ b/demos/linearlite/src/components/Portal.tsx @@ -0,0 +1,14 @@ +import { ReactNode, useState } from 'react' +import { useEffect } from 'react' +import { createPortal } from 'react-dom' + +//Copied from https://github.com/tailwindlabs/headlessui/blob/71730fea1291e572ae3efda16d8644f870d87750/packages/%40headlessui-react/pages/menu/menu-with-popper.tsx#L90 +export function Portal(props: { children: ReactNode }) { + const { children } = props + const [mounted, setMounted] = useState(false) + + useEffect(() => setMounted(true), []) + + if (!mounted) return null + return createPortal(children, document.body) +} diff --git a/demos/linearlite/src/components/PriorityIcon.tsx b/demos/linearlite/src/components/PriorityIcon.tsx new file mode 100644 index 00000000..942d2f6d --- /dev/null +++ b/demos/linearlite/src/components/PriorityIcon.tsx @@ -0,0 +1,13 @@ +import classNames from 'classnames' +import { PriorityIcons } from '../types/types' + +interface Props { + priority: string + className?: string +} + +export default function PriorityIcon({ priority, className }: Props) { + const classes = classNames(`w-4 h-4`, className) + const Icon = PriorityIcons[priority.toLowerCase()] + return +} diff --git a/demos/linearlite/src/components/ProfileMenu.tsx b/demos/linearlite/src/components/ProfileMenu.tsx new file mode 100644 index 00000000..cae3f47d --- /dev/null +++ b/demos/linearlite/src/components/ProfileMenu.tsx @@ -0,0 +1,98 @@ +import { Transition } from '@headlessui/react' +import { useRef } from 'react' +import classnames from 'classnames' +import { useClickOutside } from '../hooks/useClickOutside' +import Toggle from './Toggle' + +interface Props { + isOpen: boolean + onDismiss?: () => void + setShowAboutModal?: (show: boolean) => void + className?: string +} +export default function ProfileMenu({ + isOpen, + className, + onDismiss, + setShowAboutModal, +}: Props) { + const connectivityState = { status: `disconnected` } + const classes = classnames( + `select-none w-53 shadow-modal z-50 flex flex-col py-1 bg-white font-normal rounded text-gray-800`, + className + ) + const ref = useRef(null) + + const connectivityConnected = connectivityState.status !== `disconnected` + const connectivityStateDisplay = + connectivityState.status[0].toUpperCase() + + connectivityState.status.slice(1) + + // const toggleConnectivityState = () => { + // if (connectivityConnected) { + // electric.disconnect() + // } else { + // electric.connect() + // } + // } + + useClickOutside(ref, () => { + if (isOpen && onDismiss) { + onDismiss() + } + }) + + return ( +
+ + + + Visit ElectricSQL + + + Documentation + + + GitHub + +
+ + {connectivityStateDisplay} + + +
+
+
+ ) +} diff --git a/demos/linearlite/src/components/Select.tsx b/demos/linearlite/src/components/Select.tsx new file mode 100644 index 00000000..e142cd8c --- /dev/null +++ b/demos/linearlite/src/components/Select.tsx @@ -0,0 +1,29 @@ +import classNames from 'classnames' +import { ReactNode } from 'react' + +interface Props { + className?: string + children: ReactNode + defaultValue?: string | number | ReadonlyArray + value?: string | number | ReadonlyArray + onChange?: (event: React.ChangeEvent) => void +} +export default function Select(props: Props) { + const { children, defaultValue, className, value, onChange, ...rest } = props + + const classes = classNames( + `form-select text-xs focus:ring-transparent form-select text-gray-800 h-6 bg-gray-100 rounded pr-4.5 bg-right pl-2 py-0 appearance-none focus:outline-none border-none`, + className + ) + return ( + + ) +} diff --git a/demos/linearlite/src/components/StatusIcon.tsx b/demos/linearlite/src/components/StatusIcon.tsx new file mode 100644 index 00000000..3303fbca --- /dev/null +++ b/demos/linearlite/src/components/StatusIcon.tsx @@ -0,0 +1,15 @@ +import classNames from 'classnames' +import { StatusIcons } from '../types/types' + +interface Props { + status: string + className?: string +} + +export default function StatusIcon({ status, className }: Props) { + const classes = classNames(`w-3.5 h-3.5 rounded`, className) + + const Icon = StatusIcons[status.toLowerCase()] + + return +} diff --git a/demos/linearlite/src/components/Toggle.tsx b/demos/linearlite/src/components/Toggle.tsx new file mode 100644 index 00000000..4494b98c --- /dev/null +++ b/demos/linearlite/src/components/Toggle.tsx @@ -0,0 +1,41 @@ +import classnames from 'classnames' + +interface Props { + onChange?: (value: boolean) => void + className?: string + value?: boolean + activeClass?: string + activeLabelClass?: string +} +export default function Toggle({ + onChange, + className, + value = false, + activeClass = `bg-indigo-600 hover:bg-indigo-700`, + activeLabelClass = `border-indigo-600`, +}: Props) { + const labelClasses = classnames( + `absolute h-3.5 w-3.5 overflow-hidden border-2 transition duration-200 ease-linear rounded-full cursor-pointer bg-white`, + { + 'left-0 border-gray-300': !value, + 'right-0': value, + [activeLabelClass]: value, + } + ) + const classes = classnames( + `group relative rounded-full w-5 h-3.5 transition duration-200 ease-linear`, + { + [activeClass]: value, + 'bg-gray-300': !value, + }, + className + ) + const onClick = () => { + if (onChange) onChange(!value) + } + return ( +
+ +
+ ) +} diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx new file mode 100644 index 00000000..57119b89 --- /dev/null +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -0,0 +1,171 @@ +import { ReactComponent as MenuIcon } from '../assets/icons/menu.svg' +import { useState, useContext } from 'react' +import { BsSortUp, BsPlus, BsX, BsSearch as SearchIcon } from 'react-icons/bs' +import { useLiveQuery } from '@electric-sql/pglite-react' +import ViewOptionMenu from './ViewOptionMenu' +import { MenuContext } from '../App' +import FilterMenu from './contextmenu/FilterMenu' +import { useFilterState } from '../utils/filterState' +import { Issue, PriorityDisplay, StatusDisplay } from '../types/types' + +interface Props { + issues: Issue[] + hideSort?: boolean + showSearch?: boolean + title?: string +} + +export default function ({ + issues, + hideSort, + showSearch, + title = `All issues`, +}: Props) { + const [filterState, setFilterState] = useFilterState() + const [showViewOption, setShowViewOption] = useState(false) + const { showMenu, setShowMenu } = useContext(MenuContext)! + const [searchQuery, setSearchQuery] = useState(``) + + const totalIssuesCount: number = + useLiveQuery<{ count: number }>(`SELECT COUNT(*) FROM issue`)?.rows[0] + .count ?? 0 + + const filteredIssuesCount = issues.length + + const handleSearchInner = (query: string) => { + setFilterState({ + ...filterState, + query: query, + }) + } + + const handleSearch = (query: string) => { + setSearchQuery(query) + handleSearchInner(query) + } + + const eqStatuses = (statuses: string[]) => { + const statusSet = new Set(statuses) + return ( + filterState.status?.length === statusSet.size && + filterState.status.every((x) => statusSet.has(x)) + ) + } + + if (filterState.status?.length) { + if (eqStatuses([`backlog`])) { + title = `Backlog` + } else if (eqStatuses([`todo`, `in_progress`])) { + title = `Active` + } + } + + return ( + <> +
+ {/* left section */} +
+ + +
{title}
+ {/* {filteredIssuesCount} */} + + {filteredIssuesCount} + {filteredIssuesCount !== totalIssuesCount + ? ` of ${totalIssuesCount}` + : ``} + + + + Filter + + } + id={`filter-menu`} + /> +
+ +
+ {!hideSort && ( + + )} +
+
+ + {(!!filterState.status?.length || !!filterState.priority?.length) && ( +
+ {!!filterState.priority?.length && ( +
+ Priority is + + {filterState.priority + ?.map((priority) => PriorityDisplay[priority]) + .join(`, `)} + + { + setFilterState({ + ...filterState, + priority: undefined, + }) + }} + > + + +
+ )} + {!!filterState.status?.length && ( +
+ Status is + + {filterState.status + ?.map((status) => StatusDisplay[status]) + .join(`, `)} + + { + setFilterState({ + ...filterState, + status: undefined, + }) + }} + > + + +
+ )} +
+ )} + + {showSearch && ( +
+ + handleSearch(e.target.value)} + /> +
+ )} + + setShowViewOption(false)} + /> + + ) +} diff --git a/demos/linearlite/src/components/ViewOptionMenu.tsx b/demos/linearlite/src/components/ViewOptionMenu.tsx new file mode 100644 index 00000000..a464927b --- /dev/null +++ b/demos/linearlite/src/components/ViewOptionMenu.tsx @@ -0,0 +1,92 @@ +import { Transition } from '@headlessui/react' +import { useClickOutside } from '../hooks/useClickOutside' +import { useRef } from 'react' +import Select from './Select' +import { useFilterState } from '../utils/filterState' + +interface Props { + isOpen: boolean + onDismiss?: () => void +} +export default function ({ isOpen, onDismiss }: Props) { + const ref = useRef(null) + const [filterState, setFilterState] = useFilterState() + + useClickOutside(ref, () => { + if (isOpen && onDismiss) onDismiss() + }) + + const handleOrderByChange = (e: React.ChangeEvent) => { + setFilterState({ + ...filterState, + orderBy: e.target.value, + }) + } + + const handleOrderDirectionChange = ( + e: React.ChangeEvent + ) => { + setFilterState({ + ...filterState, + orderDirection: e.target.value as `asc` | `desc`, + }) + } + + return ( +
+ +
+ View Options +
+ +
+ {/*
+ Grouping +
+ +
+
*/} + +
+ Ordering +
+ +
+
+ +
+
+
+
+
+ ) +} diff --git a/demos/linearlite/src/components/contextmenu/FilterMenu.tsx b/demos/linearlite/src/components/contextmenu/FilterMenu.tsx new file mode 100644 index 00000000..a72f9eec --- /dev/null +++ b/demos/linearlite/src/components/contextmenu/FilterMenu.tsx @@ -0,0 +1,121 @@ +import { Portal } from '../Portal' +import { ReactNode, useState } from 'react' +import { ContextMenuTrigger } from '@firefox-devtools/react-contextmenu' +import { BsCheck2 } from 'react-icons/bs' +import { Menu } from './menu' +import { useFilterState } from '../../utils/filterState' +import { PriorityOptions, StatusOptions } from '../../types/types' + +interface Props { + id: string + button: ReactNode + className?: string +} + +function FilterMenu({ id, button, className }: Props) { + const [filterState, setFilterState] = useFilterState() + const [keyword, setKeyword] = useState(``) + + let priorities = PriorityOptions + if (keyword !== ``) { + const normalizedKeyword = keyword.toLowerCase().trim() + priorities = priorities.filter( + ([_icon, _priority, label]) => + (label as string).toLowerCase().indexOf(normalizedKeyword) !== -1 + ) + } + + let statuses = StatusOptions + if (keyword !== ``) { + const normalizedKeyword = keyword.toLowerCase().trim() + statuses = statuses.filter( + ([_icon, _status, label]) => + label.toLowerCase().indexOf(normalizedKeyword) !== -1 + ) + } + + const priorityOptions = priorities.map(([Icon, priority, label], idx) => { + return ( + handlePrioritySelect(priority as string)} + > + + {label} + {filterState.priority?.includes(priority) && ( + + )} + + ) + }) + + const statusOptions = statuses.map(([Icon, status, label], idx) => { + return ( + handleStatusSelect(status as string)} + > + + {label} + {filterState.status?.includes(status) && ( + + )} + + ) + }) + + const handlePrioritySelect = (priority: string) => { + setKeyword(``) + const newPriority = filterState.priority || [] + if (newPriority.includes(priority)) { + newPriority.splice(newPriority.indexOf(priority), 1) + } else { + newPriority.push(priority) + } + setFilterState({ + ...filterState, + priority: newPriority, + }) + } + + const handleStatusSelect = (status: string) => { + setKeyword(``) + const newStatus = filterState.status || [] + if (newStatus.includes(status)) { + newStatus.splice(newStatus.indexOf(status), 1) + } else { + newStatus.push(status) + } + setFilterState({ + ...filterState, + status: newStatus, + }) + } + + return ( + <> + + {button} + + + + setKeyword(kw)} + > + {priorityOptions && Priority} + {priorityOptions} + {priorityOptions && statusOptions && } + {statusOptions && Status} + {statusOptions} + + + + ) +} + +export default FilterMenu diff --git a/demos/linearlite/src/components/contextmenu/PriorityMenu.tsx b/demos/linearlite/src/components/contextmenu/PriorityMenu.tsx new file mode 100644 index 00000000..b2c9a2de --- /dev/null +++ b/demos/linearlite/src/components/contextmenu/PriorityMenu.tsx @@ -0,0 +1,70 @@ +import { Portal } from '../Portal' +import { ReactNode, useState } from 'react' +import { ContextMenuTrigger } from '@firefox-devtools/react-contextmenu' +import { Menu } from './menu' +import { PriorityOptions } from '../../types/types' + +interface Props { + id: string + button: ReactNode + filterKeyword?: boolean + className?: string + onSelect?: (item: string) => void +} + +function PriorityMenu({ + id, + button, + filterKeyword = false, + className, + onSelect, +}: Props) { + const [keyword, setKeyword] = useState(``) + + const handleSelect = (priority: string) => { + setKeyword(``) + if (onSelect) onSelect(priority) + } + let statusOpts = PriorityOptions + if (keyword !== ``) { + const normalizedKeyword = keyword.toLowerCase().trim() + statusOpts = statusOpts.filter( + ([_Icon, _priority, label]) => + (label as string).toLowerCase().indexOf(normalizedKeyword) !== -1 + ) + } + + const options = statusOpts.map(([Icon, priority, label], idx) => { + return ( + handleSelect(priority as string)} + > + {label} + + ) + }) + + return ( + <> + + {button} + + + + setKeyword(kw)} + className={className} + > + {options} + + + + ) +} + +export default PriorityMenu diff --git a/demos/linearlite/src/components/contextmenu/StatusMenu.tsx b/demos/linearlite/src/components/contextmenu/StatusMenu.tsx new file mode 100644 index 00000000..8ab3faa5 --- /dev/null +++ b/demos/linearlite/src/components/contextmenu/StatusMenu.tsx @@ -0,0 +1,56 @@ +import { Portal } from '../Portal' +import { ReactNode, useState } from 'react' +import { ContextMenuTrigger } from '@firefox-devtools/react-contextmenu' +import { StatusOptions } from '../../types/types' +import { Menu } from './menu' + +interface Props { + id: string + button: ReactNode + className?: string + onSelect?: (status: string) => void +} +export default function StatusMenu({ id, button, className, onSelect }: Props) { + const [keyword, setKeyword] = useState(``) + const handleSelect = (status: string) => { + if (onSelect) onSelect(status) + } + + let statuses = StatusOptions + if (keyword !== ``) { + const normalizedKeyword = keyword.toLowerCase().trim() + statuses = statuses.filter( + ([_icon, _id, l]) => l.toLowerCase().indexOf(normalizedKeyword) !== -1 + ) + } + + const options = statuses.map(([Icon, id, label]) => { + return ( + handleSelect(id)}> + +
{label}
+
+ ) + }) + + return ( + <> + + {button} + + + + setKeyword(kw)} + > + {options} + + + + ) +} diff --git a/demos/linearlite/src/components/contextmenu/menu.tsx b/demos/linearlite/src/components/contextmenu/menu.tsx new file mode 100644 index 00000000..f4eff45a --- /dev/null +++ b/demos/linearlite/src/components/contextmenu/menu.tsx @@ -0,0 +1,103 @@ +import classnames from 'classnames' +import { ReactNode, useRef } from 'react' +import { + ContextMenu, + MenuItem, + type MenuItemProps as CMMenuItemProps, +} from '@firefox-devtools/react-contextmenu' + +const sizeClasses = { + small: `w-34`, + normal: `w-72`, +} + +export interface MenuProps { + id: string + size: keyof typeof sizeClasses + className?: string + onKeywordChange?: (kw: string) => void + filterKeyword: boolean + children: ReactNode + searchPlaceholder?: string +} + +interface MenuItemProps { + children: ReactNode + onClick?: CMMenuItemProps[`onClick`] +} +const Item = function ({ onClick, children }: MenuItemProps) { + return ( + + {children} + + ) +} + +const Divider = function () { + return +} + +const Header = function ({ children }: MenuItemProps) { + return ( + + {children} + + ) +} + +export const Menu = (props: MenuProps) => { + const { + id, + size = `small`, + onKeywordChange, + children, + className, + filterKeyword, + searchPlaceholder, + } = props + const ref = useRef(null) + + const classes = classnames( + `cursor-default bg-white rounded shadow-modal z-100`, + sizeClasses[size], + className + ) + + return ( + { + if (ref.current) ref.current.focus() + }} + > +
{ + e.stopPropagation() + }} + > + {filterKeyword && ( + { + if (onKeywordChange) onKeywordChange(e.target.value) + }} + onClick={(e) => { + e.stopPropagation() + }} + placeholder={searchPlaceholder} + /> + )} + {children} +
+
+ ) +} + +Menu.Item = Item +Menu.Divider = Divider +Menu.Header = Header diff --git a/demos/linearlite/src/components/editor/Editor.tsx b/demos/linearlite/src/components/editor/Editor.tsx new file mode 100644 index 00000000..289030a6 --- /dev/null +++ b/demos/linearlite/src/components/editor/Editor.tsx @@ -0,0 +1,82 @@ +import { + useEditor, + EditorContent, + BubbleMenu, + type Extensions, +} from '@tiptap/react' +import StarterKit from '@tiptap/starter-kit' +import Placeholder from '@tiptap/extension-placeholder' +import Table from '@tiptap/extension-table' +import TableCell from '@tiptap/extension-table-cell' +import TableHeader from '@tiptap/extension-table-header' +import TableRow from '@tiptap/extension-table-row' +import { Markdown } from 'tiptap-markdown' +import EditorMenu from './EditorMenu' +import { useEffect, useRef } from 'react' + +interface EditorProps { + value: string + onChange: (value: string) => void + className?: string + placeholder?: string +} + +const Editor = ({ + value, + onChange, + className = ``, + placeholder, +}: EditorProps) => { + const editorProps = { + attributes: { + class: className, + }, + } + const markdownValue = useRef(null) + + const extensions: Extensions = [ + StarterKit, + Markdown, + Table, + TableRow, + TableHeader, + TableCell, + ] + + const editor = useEditor({ + extensions, + editorProps, + content: value || undefined, + onUpdate: ({ editor }) => { + markdownValue.current = editor.storage.markdown.getMarkdown() + onChange(markdownValue.current || ``) + }, + }) + + useEffect(() => { + if (editor && markdownValue.current !== value) { + editor.commands.setContent(value) + } + }, [value]) + + if (placeholder) { + extensions.push( + Placeholder.configure({ + placeholder, + }) + ) + } + + return ( + <> + + {editor && ( + + + + )} + + ) +} + +export default Editor diff --git a/demos/linearlite/src/components/editor/EditorMenu.tsx b/demos/linearlite/src/components/editor/EditorMenu.tsx new file mode 100644 index 00000000..f067293c --- /dev/null +++ b/demos/linearlite/src/components/editor/EditorMenu.tsx @@ -0,0 +1,117 @@ +import type { Editor as TipTapEditor } from '@tiptap/react' +import classNames from 'classnames' + +import { BsTypeBold as BoldIcon } from 'react-icons/bs' +import { BsTypeItalic as ItalicIcon } from 'react-icons/bs' +import { BsTypeStrikethrough as StrikeIcon } from 'react-icons/bs' +import { BsCode as CodeIcon } from 'react-icons/bs' +import { BsListUl as BulletListIcon } from 'react-icons/bs' +import { BsListOl as OrderedListIcon } from 'react-icons/bs' +import { BsCodeSlash as CodeBlockIcon } from 'react-icons/bs' +import { BsChatQuote as BlockquoteIcon } from 'react-icons/bs' + +export interface EditorMenuProps { + editor: TipTapEditor +} + +const EditorMenu = ({ editor }: EditorMenuProps) => { + return ( +
+ + + + +
+ + + + +
+ ) +} + +export default EditorMenu diff --git a/demos/linearlite/src/config.ts b/demos/linearlite/src/config.ts new file mode 100644 index 00000000..9e8fcb4e --- /dev/null +++ b/demos/linearlite/src/config.ts @@ -0,0 +1,3 @@ +export default { + readonly: false, +} diff --git a/demos/linearlite/src/electric.tsx b/demos/linearlite/src/electric.tsx new file mode 100644 index 00000000..5c85f02c --- /dev/null +++ b/demos/linearlite/src/electric.tsx @@ -0,0 +1 @@ +export const baseUrl = import.meta.env.ELECTRIC_URL ?? `http://localhost:3000` diff --git a/demos/linearlite/src/hooks/useClickOutside.ts b/demos/linearlite/src/hooks/useClickOutside.ts new file mode 100644 index 00000000..d345cd2c --- /dev/null +++ b/demos/linearlite/src/hooks/useClickOutside.ts @@ -0,0 +1,28 @@ +import { RefObject, useCallback, useEffect } from 'react' + +export const useClickOutside = ( + ref: RefObject, + callback: (event: MouseEvent | TouchEvent) => void, + outerRef?: RefObject +): void => { + const handleClick = useCallback( + (event: MouseEvent | TouchEvent) => { + if (!event.target || outerRef?.current?.contains(event.target as Node)) { + return + } + if (ref.current && !ref.current.contains(event.target as Node)) { + callback(event) + } + }, + [callback, ref] + ) + useEffect(() => { + document.addEventListener(`mousedown`, handleClick) + document.addEventListener(`touchstart`, handleClick) + + return () => { + document.removeEventListener(`mousedown`, handleClick) + document.removeEventListener(`touchstart`, handleClick) + } + }) +} diff --git a/demos/linearlite/src/hooks/useLockBodyScroll.ts b/demos/linearlite/src/hooks/useLockBodyScroll.ts new file mode 100644 index 00000000..4bd0a193 --- /dev/null +++ b/demos/linearlite/src/hooks/useLockBodyScroll.ts @@ -0,0 +1,14 @@ +import { useLayoutEffect } from 'react' + +export default function useLockBodyScroll() { + useLayoutEffect(() => { + // Get original value of body overflow + const originalStyle = window.getComputedStyle(document.body).overflow + // Prevent scrolling on mount + document.body.style.overflow = `hidden` + // Re-enable scrolling when component unmounts + return () => { + document.body.style.overflow = originalStyle + } + }, []) // Empty array ensures effect is only run on mount and unmount +} diff --git a/demos/linearlite/src/main.tsx b/demos/linearlite/src/main.tsx new file mode 100644 index 00000000..45cb8857 --- /dev/null +++ b/demos/linearlite/src/main.tsx @@ -0,0 +1,18 @@ +import { createRoot } from 'react-dom/client' +import './style.css' + +import App from './App' + +const container = document.getElementById(`root`)! +const root = createRoot(container) +root.render() + +// If you want to start measuring performance in your app, pass a function +// to log results (for example: reportWebVitals(console.log)) +// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals +//reportWebVitals(); + +// If you want your app to work offline and load faster, you can change +// unregister() to register() below. Note this comes with some pitfalls. +// Learn more about service workers: https://cra.link/PWA +//serviceWorkerRegistration.register(); diff --git a/demos/linearlite/src/migrations.ts b/demos/linearlite/src/migrations.ts new file mode 100644 index 00000000..6c1d8d5d --- /dev/null +++ b/demos/linearlite/src/migrations.ts @@ -0,0 +1,6 @@ +import type { PGlite } from '@electric-sql/pglite' +import m1 from '../db/migrations/01-create_tables.sql?raw' + +export async function migrate(pg: PGlite) { + await pg.exec(m1) +} diff --git a/demos/linearlite/src/pages/Board/IssueBoard.tsx b/demos/linearlite/src/pages/Board/IssueBoard.tsx new file mode 100644 index 00000000..58d94c48 --- /dev/null +++ b/demos/linearlite/src/pages/Board/IssueBoard.tsx @@ -0,0 +1,225 @@ +import { DragDropContext, DropResult } from 'react-beautiful-dnd' +import { useMemo, useState, useEffect } from 'react' +import { generateKeyBetween } from 'fractional-indexing' +import { Issue, Status, StatusDisplay } from '../../types/types' +import { usePGlite } from '@electric-sql/pglite-react' +import IssueCol from './IssueCol' + +export interface IssueBoardProps { + issues: Issue[] +} + +interface MovedIssues { + [id: string]: { + status?: string + kanbanorder?: string + } +} + +export default function IssueBoard({ issues }: IssueBoardProps) { + const pg = usePGlite() + const [movedIssues, setMovedIssues] = useState({}) + + // Issues are coming from a live query, this may not have updated before we rerender + // after a drag and drop. So we keep track of moved issues and use that to override + // the status of the issue when sorting the issues into columns. + + useEffect(() => { + // Reset moved issues when issues change + setMovedIssues({}) + }, [issues]) + + const { issuesByStatus } = useMemo(() => { + const issuesByStatus: Record = {} + issues.forEach((issue) => { + // If the issue has been moved, patch with new status and kanbanorder for sorting + if (movedIssues[issue.id]) { + issue = { + ...issue, + ...movedIssues[issue.id], + } + } + const status = issue.status.toLowerCase() + if (!issuesByStatus[status]) { + issuesByStatus[status] = [] + } + issuesByStatus[status].push(issue) + }) + + // Sort issues in each column by kanbanorder and issue id + Object.keys(issuesByStatus).forEach((status) => { + issuesByStatus[status].sort((a, b) => { + if (a.kanbanorder < b.kanbanorder) { + return -1 + } + if (a.kanbanorder > b.kanbanorder) { + return 1 + } + // Use unique issue id to break ties + if (a.id < b.id) { + return -1 + } else { + return 1 + } + }) + }) + + return { issuesByStatus } + }, [issues, movedIssues]) + + const adjacentIssues = ( + column: string, + index: number, + sameColumn = true, + currentIndex: number + ) => { + const columnIssues = issuesByStatus[column] || [] + let prevIssue: Issue | undefined + let nextIssue: Issue | undefined + if (sameColumn) { + if (currentIndex < index) { + prevIssue = columnIssues[index] + nextIssue = columnIssues[index + 1] + } else { + prevIssue = columnIssues[index - 1] + nextIssue = columnIssues[index] + } + } else { + prevIssue = columnIssues[index - 1] + nextIssue = columnIssues[index] + } + console.log(`sameColumn`, sameColumn) + console.log(`prevIssue`, prevIssue) + console.log(`nextIssue`, nextIssue) + return { prevIssue, nextIssue } + } + + /** + * Fix duplicate kanbanorder, this is recursive so we can fix multiple consecutive + * issues with the same kanbanorder. + * @param issue The issue to fix the kanbanorder for + * @param issueBefore The issue immediately before one that needs fixing + * @returns The new kanbanorder that was set for the issue + */ + const fixKanbanOrder = (issue: Issue, issueBefore: Issue) => { + // First we find the issue immediately after the issue that needs fixing. + const issueIndex = issuesByStatus[issue.status].indexOf(issue) + const issueAfter = issuesByStatus[issue.status][issueIndex + 1] + + // The kanbanorder of the issue before the issue that needs fixing + const prevKanbanOrder = issueBefore?.kanbanorder + + // The kanbanorder of the issue after the issue that needs fixing + let nextKanbanOrder = issueAfter?.kanbanorder + + // If the next issue has the same kanbanorder the next issue needs fixing too, + // we recursively call fixKanbanOrder for that issue to fix it's kanbanorder. + if (issueAfter && nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { + nextKanbanOrder = fixKanbanOrder(issueAfter, issueBefore) + } + + // Generate a new kanbanorder between the previous and next issues + const kanbanorder = generateKeyBetween(prevKanbanOrder, nextKanbanOrder) + + // Keep track of moved issues so we can override the kanbanorder when sorting + // We do this due to the momentary lag between updating the database and the live + // query updating the issues. + setMovedIssues((prev) => ({ + ...prev, + [issue.id]: { + kanbanorder: kanbanorder, + }, + })) + + pg.sql` + UPDATE issue + SET kanbanorder = ${kanbanorder} + WHERE id = ${issue.id} + ` + + // Return the new kanbanorder + return kanbanorder + } + + /** + * Get a new kanbanorder that sits between two other issues. + * Used to generate a new kanbanorder when moving an issue. + * @param issueBefore The issue immediately before the issue being moved + * @param issueAfter The issue immediately after the issue being moved + * @returns The new kanbanorder + */ + const getNewKanbanOrder = (issueBefore: Issue, issueAfter: Issue) => { + const prevKanbanOrder = issueBefore?.kanbanorder + let nextKanbanOrder = issueAfter?.kanbanorder + if (nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { + // If the next issue has the same kanbanorder as the previous issue, + // we need to fix the kanbanorder of the next issue. + // This can happen when two users move issues into the same position at the same + // time. + nextKanbanOrder = fixKanbanOrder(issueAfter, issueBefore) + } + return generateKeyBetween(prevKanbanOrder, nextKanbanOrder) + } + + const onDragEnd = ({ source, destination, draggableId }: DropResult) => { + console.log(source, destination, draggableId) + if (destination && destination.droppableId) { + const { prevIssue, nextIssue } = adjacentIssues( + destination.droppableId, + destination.index, + destination.droppableId === source.droppableId, + source.index + ) + // Get a new kanbanorder between the previous and next issues + const kanbanorder = getNewKanbanOrder(prevIssue, nextIssue) + // Keep track of moved issues so we can override the status and kanbanorder when + // sorting issues into columns. + const modified = new Date() + setMovedIssues((prev) => ({ + ...prev, + [draggableId]: { + status: destination.droppableId, + kanbanorder, + modified, + }, + })) + pg.sql` + UPDATE issue + SET status = ${destination.droppableId}, kanbanorder = ${kanbanorder}, modified = ${modified} + WHERE id = ${draggableId} + ` + } + } + + return ( + +
+ + + + + +
+
+ ) +} diff --git a/demos/linearlite/src/pages/Board/IssueCol.tsx b/demos/linearlite/src/pages/Board/IssueCol.tsx new file mode 100644 index 00000000..5364c2d7 --- /dev/null +++ b/demos/linearlite/src/pages/Board/IssueCol.tsx @@ -0,0 +1,120 @@ +import { CSSProperties } from 'react' +import StatusIcon from '../../components/StatusIcon' +import { + Droppable, + DroppableProvided, + DroppableStateSnapshot, + Draggable, + DraggableProvided, + DraggableStateSnapshot, +} from 'react-beautiful-dnd' +import { FixedSizeList as List } from 'react-window' +import AutoSizer from 'react-virtualized-auto-sizer' +import IssueItem, { itemHeight } from './IssueItem' +import { Issue } from '../../types/types' + +interface Props { + status: string + title: string + issues: Array | undefined +} + +const itemSpacing = 8 + +function IssueCol({ title, status, issues = [] }: Props) { + const statusIcon = + + return ( +
+
+
+ {statusIcon} + {title} + + {issues?.length || 0} + +
+
+ { + const issue = issues[rubric.source.index] + return ( + + ) + }} + > + {( + droppableProvided: DroppableProvided, + snapshot: DroppableStateSnapshot + ) => { + // Add an extra item to our list to make space for a dragging item + // Usually the DroppableProvided.placeholder does this, but that won't + // work in a virtual list + const itemCount: number = snapshot.isUsingPlaceholder + ? issues.length + 1 + : issues.length + + return ( +
+ + {({ height, width }) => ( + + {Row} + + )} + +
+ ) + }} +
+
+ ) +} + +const Row = ({ + data: issues, + index, + style, +}: { + data: Issue[] + index: number + style: CSSProperties | undefined +}) => { + const issue = issues[index] + if (!issue) return null + return ( + + {(provided: DraggableProvided, snapshot: DraggableStateSnapshot) => ( + + )} + + ) +} + +export default IssueCol diff --git a/demos/linearlite/src/pages/Board/IssueItem.tsx b/demos/linearlite/src/pages/Board/IssueItem.tsx new file mode 100644 index 00000000..fe396a8e --- /dev/null +++ b/demos/linearlite/src/pages/Board/IssueItem.tsx @@ -0,0 +1,87 @@ +import { type CSSProperties } from 'react' +import classNames from 'classnames' +import { useNavigate } from 'react-router-dom' +import { DraggableProvided } from 'react-beautiful-dnd' +import Avatar from '../../components/Avatar' +import PriorityMenu from '../../components/contextmenu/PriorityMenu' +import PriorityIcon from '../../components/PriorityIcon' +import { Issue } from '../../types/types' + +interface IssueProps { + issue: Issue + index: number + isDragging?: boolean + provided: DraggableProvided + style?: CSSProperties +} + +export const itemHeight = 100 + +function getStyle( + provided: DraggableProvided, + style?: CSSProperties +): CSSProperties { + return { + ...provided.draggableProps.style, + ...(style || {}), + height: `${itemHeight}px`, + } +} + +const IssueItem = ({ issue, style, isDragging, provided }: IssueProps) => { + const navigate = useNavigate() + const priorityIcon = ( + + + + ) + + // const updatePriority = (priority: string) => { + // db.issue.update({ + // data: { + // priority: priority, + // modified: new Date(), + // }, + // where: { + // id: issue.id, + // }, + // }) + // } + + return ( +
navigate(`/issue/${issue.id}`)} + > +
+
+ + {issue.title} + +
+
+ +
+
+
+ updatePriority(p)} + /> +
+
+ ) +} + +export default IssueItem diff --git a/demos/linearlite/src/pages/Board/index.tsx b/demos/linearlite/src/pages/Board/index.tsx new file mode 100644 index 00000000..bdd48da0 --- /dev/null +++ b/demos/linearlite/src/pages/Board/index.tsx @@ -0,0 +1,21 @@ +import TopFilter from '../../components/TopFilter' +import IssueBoard from './IssueBoard' +import { useFilterState } from '../../utils/filterState' +import { Issue } from '../../types/types' +import { useLiveQuery } from '@electric-sql/pglite-react' + +function Board() { + const [_filterState] = useFilterState() + const issuesResults = useLiveQuery.sql`SELECT * FROM issue` + const issues = issuesResults?.rows ?? [] + // TODO: apply filter state + + return ( +
+ + +
+ ) +} + +export default Board diff --git a/demos/linearlite/src/pages/Issue/Comments.tsx b/demos/linearlite/src/pages/Issue/Comments.tsx new file mode 100644 index 00000000..f47e1184 --- /dev/null +++ b/demos/linearlite/src/pages/Issue/Comments.tsx @@ -0,0 +1,92 @@ +import { useState } from 'react' +import ReactMarkdown from 'react-markdown' +import Editor from '../../components/editor/Editor' +import Avatar from '../../components/Avatar' +import { formatDate } from '../../utils/date' +import { showWarning } from '../../utils/notification' +import { Comment, Issue } from '../../types/types' +import { useLiveQuery, usePGlite } from '@electric-sql/pglite-react' + +export interface CommentsProps { + issue: Issue +} + +function Comments({ issue }: CommentsProps) { + const pg = usePGlite() + const [newCommentBody, setNewCommentBody] = useState(``) + const commentsResults = useLiveQuery.sql` + SELECT * FROM comment WHERE issue_id = ${issue.id} + ` + const comments = commentsResults?.rows + + const commentList = () => { + if (comments && comments.length > 0) { + return comments.map((comment) => ( +
+
+ + + {comment.username} + + + {formatDate(comment.created_at)} + +
+
+ {comment.body} +
+
+ )) + } + } + + const handlePost = () => { + if (!newCommentBody) { + showWarning( + `Please enter a comment before submitting`, + `Comment required` + ) + return + } + + pg.sql` + INSERT INTO comment (id, issue_id, body, created_at, username) + VALUES ( + ${crypto.randomUUID()}, + ${issue.id}, + ${newCommentBody}, + ${new Date()}, + ${'testuser'} + ) + ` + + setNewCommentBody(``) + } + + return ( + <> + {commentList()} +
+ setNewCommentBody(val)} + placeholder="Add a comment..." + /> +
+
+ +
+ + ) +} + +export default Comments diff --git a/demos/linearlite/src/pages/Issue/DeleteModal.tsx b/demos/linearlite/src/pages/Issue/DeleteModal.tsx new file mode 100644 index 00000000..0ff9d4d1 --- /dev/null +++ b/demos/linearlite/src/pages/Issue/DeleteModal.tsx @@ -0,0 +1,46 @@ +import Modal from '../../components/Modal' + +interface Props { + isOpen: boolean + setIsOpen: (isOpen: boolean) => void + onDismiss?: () => void + deleteIssue: () => void +} + +export default function AboutModal({ + isOpen, + setIsOpen, + onDismiss, + deleteIssue, +}: Props) { + const handleDelete = () => { + setIsOpen(false) + if (onDismiss) onDismiss() + deleteIssue() + } + + return ( + +
+ Are you sure you want to delete this issue? +
+
+ + +
+
+ ) +} diff --git a/demos/linearlite/src/pages/Issue/index.tsx b/demos/linearlite/src/pages/Issue/index.tsx new file mode 100644 index 00000000..830209ce --- /dev/null +++ b/demos/linearlite/src/pages/Issue/index.tsx @@ -0,0 +1,249 @@ +import { useParams, useNavigate } from 'react-router-dom' +import { useState, useRef } from 'react' +import { BsTrash3 as DeleteIcon } from 'react-icons/bs' +import { BsXLg as CloseIcon } from 'react-icons/bs' +import PriorityMenu from '../../components/contextmenu/PriorityMenu' +import StatusMenu from '../../components/contextmenu/StatusMenu' +import PriorityIcon from '../../components/PriorityIcon' +import StatusIcon from '../../components/StatusIcon' +import Avatar from '../../components/Avatar' +import { Issue, PriorityDisplay, StatusDisplay } from '../../types/types' +import Editor from '../../components/editor/Editor' +import DeleteModal from './DeleteModal' +import Comments from './Comments' +import debounce from 'lodash.debounce' +import { usePGlite, useLiveQuery } from '@electric-sql/pglite-react' + +const debounceTime = 500 + +function IssuePage() { + const navigate = useNavigate() + const pg = usePGlite() + const params = useParams() + const issueResults = useLiveQuery.sql` + SELECT * FROM issue WHERE id = ${params.id} + ` + const issue = issueResults?.rows[0] + + const [showDeleteModal, setShowDeleteModal] = useState(false) + + const [dirtyTitle, setDirtyTitle] = useState(null) + const titleIsDirty = useRef(false) + const [dirtyDescription, setDirtyDescription] = useState(null) + const descriptionIsDirty = useRef(false) + + if (issue === undefined) { + return
Loading...
+ } else if (issue === null) { + return
Issue not found
+ } + + // We check if the dirty title or description is the same as the actual title or + // description, and if so, we can switch back to the non-dirty version + if (dirtyTitle === issue.title) { + setDirtyTitle(null) + titleIsDirty.current = false + } + if (dirtyDescription === issue.description) { + setDirtyDescription(null) + descriptionIsDirty.current = false + } + + const handleStatusChange = (status: string) => { + pg.sql` + UPDATE issue + SET status = ${status}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + } + + const handlePriorityChange = (priority: string) => { + pg.sql` + UPDATE issue + SET priority = ${priority}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + } + + const handleTitleChangeDebounced = debounce(async (title: string) => { + pg.sql` + UPDATE issue + SET title = ${title}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + // We can't set titleIsDirty.current = false here because we haven't yet received + // the updated issue from the db + }, debounceTime) + + const handleTitleChange = (title: string) => { + setDirtyTitle(title) + titleIsDirty.current = true + // We debounce the title change so that we don't spam the db with updates + handleTitleChangeDebounced(title) + } + + const handleDescriptionChangeDebounced = debounce( + async (description: string) => { + pg.sql` + UPDATE issue + SET description = ${description}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + // We can't set descriptionIsDirty.current = false here because we haven't yet received + // the updated issue from the db + }, + debounceTime + ) + + const handleDescriptionChange = (description: string) => { + setDirtyDescription(description) + descriptionIsDirty.current = true + // We debounce the description change so that we don't spam the db with updates + handleDescriptionChangeDebounced(description) + } + + const handleDelete = () => { + pg.sql` + DELETE FROM issue WHERE id = ${issue.id} + ` + // Comments will be deleted automatically because of the ON DELETE CASCADE + handleClose() + } + + const handleClose = () => { + if (window.history.length > 2) { + navigate(-1) + } + navigate(`/`) + } + + const shortId = () => { + if (issue.id.includes(`-`)) { + return issue.id.slice(issue.id.length - 8) + } else { + return issue.id + } + } + + return ( + <> +
+
+
+
+ Issue + + {shortId()} + +
+ +
+ + +
+
+
+ + {/*
issue info
*/} +
+
+
+
+
+ Opened by +
+
+ +
+
+
+
+ Status +
+
+ + + {StatusDisplay[issue.status]} + + } + onSelect={handleStatusChange} + /> +
+
+
+
+ Priority +
+
+ + + {PriorityDisplay[issue.priority]} + + } + onSelect={handlePriorityChange} + /> +
+
+
+
+
+ handleTitleChange(e.target.value)} + /> + +
+ handleDescriptionChange(val)} + placeholder="Add description..." + /> +
+
+

Comments

+ +
+
+
+
+ + setShowDeleteModal(false)} + deleteIssue={handleDelete} + /> + + ) +} + +export default IssuePage diff --git a/demos/linearlite/src/pages/List/IssueList.tsx b/demos/linearlite/src/pages/List/IssueList.tsx new file mode 100644 index 00000000..d5b88e18 --- /dev/null +++ b/demos/linearlite/src/pages/List/IssueList.tsx @@ -0,0 +1,48 @@ +import { CSSProperties } from 'react' +import { FixedSizeList as List, areEqual } from 'react-window' +import { memo } from 'react' +import AutoSizer from 'react-virtualized-auto-sizer' +import IssueRow from './IssueRow' +import { Issue } from '../../types/types' + +export interface IssueListProps { + issues: Issue[] +} + +function IssueList({ issues }: IssueListProps) { + return ( +
+ + {({ height, width }) => ( + + {VirtualIssueRow} + + )} + +
+ ) +} + +const VirtualIssueRow = memo( + ({ + data: issues, + index, + style, + }: { + data: Issue[] + index: number + style: CSSProperties + }) => { + const issue = issues[index] + return + }, + areEqual +) + +export default IssueList diff --git a/demos/linearlite/src/pages/List/IssueRow.tsx b/demos/linearlite/src/pages/List/IssueRow.tsx new file mode 100644 index 00000000..9a9eb1ef --- /dev/null +++ b/demos/linearlite/src/pages/List/IssueRow.tsx @@ -0,0 +1,73 @@ +import type { CSSProperties } from 'react' +import { usePGlite } from '@electric-sql/pglite-react' +import PriorityMenu from '../../components/contextmenu/PriorityMenu' +import StatusMenu from '../../components/contextmenu/StatusMenu' +import PriorityIcon from '../../components/PriorityIcon' +import StatusIcon from '../../components/StatusIcon' +import Avatar from '../../components/Avatar' +import { memo } from 'react' +import { useNavigate } from 'react-router-dom' +import { formatDate } from '../../utils/date' +import { Issue } from '../../types/types' + +interface Props { + issue: Issue + style: CSSProperties +} + +function IssueRow({ issue, style }: Props) { + const pg = usePGlite() + const navigate = useNavigate() + + const handleChangeStatus = (status: string) => { + pg.sql` + UPDATE issue + SET status = ${status}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + } + + const handleChangePriority = (priority: string) => { + pg.sql` + UPDATE issue + SET priority = ${priority}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + } + + return ( +
navigate(`/issue/${issue.id}`)} + style={style} + > +
+ } + onSelect={handleChangePriority} + /> +
+
+ } + onSelect={handleChangeStatus} + /> +
+
+ {issue.title.slice(0, 3000) || ``} +
+
+ {formatDate(issue.created)} +
+
+ +
+
+ ) +} + +export default memo(IssueRow) diff --git a/demos/linearlite/src/pages/List/index.tsx b/demos/linearlite/src/pages/List/index.tsx new file mode 100644 index 00000000..dcec7d8f --- /dev/null +++ b/demos/linearlite/src/pages/List/index.tsx @@ -0,0 +1,53 @@ +import { useLiveQuery } from '@electric-sql/pglite-react' +import TopFilter from '../../components/TopFilter' +import IssueList from './IssueList' +// import { useFilterState } from '../../utils/filterState' +import { Issue } from '../../types/types' +import { useFilterState } from '../../utils/filterState' + +function List({ showSearch = false }) { + const [filterState] = useFilterState() + + console.log(filterState) + + let i = 1 + const sqlWhere = [] + const sqlParams = [] + if (filterState.status?.length) { + sqlWhere.push( + `status IN (${filterState.status.map(() => `$${i++}`).join(' ,')})` + ) + sqlParams.push(...filterState.status) + } + if (filterState.priority?.length) { + sqlWhere.push( + `priority IN (${filterState.priority.map(() => `$${i++}`).join(' ,')})` + ) + sqlParams.push(...filterState.priority) + } + if (filterState.query) { + sqlWhere.push(`title ILIKE $${i++}`) + sqlParams.push(filterState.query) + } + const sql = ` + SELECT * FROM issue + ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} + ORDER BY ${filterState.orderBy} ${filterState.orderDirection} + ` + console.log(sql) + const issueResults = useLiveQuery(sql, sqlParams) + const issues = issueResults?.rows + + if (!issues) { + return
Loading...
+ } + + return ( +
+ + +
+ ) +} + +export default List diff --git a/demos/linearlite/src/pages/root.tsx b/demos/linearlite/src/pages/root.tsx new file mode 100644 index 00000000..77cd6c5e --- /dev/null +++ b/demos/linearlite/src/pages/root.tsx @@ -0,0 +1,31 @@ +import { Outlet } from 'react-router-dom' +import LeftMenu from '../components/LeftMenu' +import { cssTransition, ToastContainer } from 'react-toastify' + +const slideUp = cssTransition({ + enter: `animate__animated animate__slideInUp`, + exit: `animate__animated animate__slideOutDown`, +}) + +export default function Root() { + return ( +
+
+ + +
+ +
+ ) +} diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts new file mode 100644 index 00000000..fd3a04f7 --- /dev/null +++ b/demos/linearlite/src/pglite-worker.ts @@ -0,0 +1,13 @@ +import { worker } from '@electric-sql/pglite/worker' +import { PGlite } from '@electric-sql/pglite' +import { migrate } from './migrations' + +worker({ + async init() { + const pg = await PGlite.create('idb://linearlite', { + relaxedDurability: true, + }) + await migrate(pg) + return pg + }, +}) diff --git a/demos/linearlite/src/pglite.ts b/demos/linearlite/src/pglite.ts new file mode 100644 index 00000000..e69de29b diff --git a/demos/linearlite/src/shims/react-contextmenu.d.ts b/demos/linearlite/src/shims/react-contextmenu.d.ts new file mode 100644 index 00000000..c580d66e --- /dev/null +++ b/demos/linearlite/src/shims/react-contextmenu.d.ts @@ -0,0 +1,107 @@ +// Copied here from the unreleased master branch of github.com/firefox-devtools/react-contextmenu +/* eslint-disable */ + +declare module '@firefox-devtools/react-contextmenu' { + import * as React from 'react' + + export interface ContextMenuProps { + id: string + data?: any + className?: string + hideOnLeave?: boolean + rtl?: boolean + onHide?: { (event: any): void } + onMouseLeave?: + | { + ( + event: React.MouseEvent, + data: Object, + target: HTMLElement + ): void + } + | Function + onShow?: { (event: any): void } + preventHideOnContextMenu?: boolean + preventHideOnResize?: boolean + preventHideOnScroll?: boolean + style?: React.CSSProperties + children?: React.ReactNode + } + + export interface ContextMenuTriggerProps { + id: string + attributes?: React.HTMLAttributes + collect?: { (data: any): any } + disable?: boolean + holdToDisplay?: number + renderTag?: React.ElementType + triggerOnLeftClick?: boolean + disableIfShiftIsPressed?: boolean + [key: string]: any + children?: React.ReactNode + } + + export interface MenuItemProps { + attributes?: React.HTMLAttributes + className?: string + data?: Object + disabled?: boolean + divider?: boolean + preventClose?: boolean + onClick?: + | { + ( + event: + | React.TouchEvent + | React.MouseEvent, + data: Object, + target: HTMLElement + ): void + } + | Function + children?: React.ReactNode + } + + export interface SubMenuProps { + title: React.ReactElement | React.ReactText + className?: string + disabled?: boolean + hoverDelay?: number + rtl?: boolean + preventCloseOnClick?: boolean + onClick?: + | { + ( + event: + | React.TouchEvent + | React.MouseEvent, + data: Object, + target: HTMLElement + ): void + } + | Function + children?: React.ReactNode + } + + export interface ConnectMenuProps { + id: string + trigger: any + } + + export const ContextMenu: React.ComponentClass + export const ContextMenuTrigger: React.ComponentClass + export const MenuItem: React.ComponentClass + export const SubMenu: React.ComponentClass + export function connectMenu

( + menuId: string + ): ( + Child: React.ComponentType

+ ) => React.ComponentType

+ export function showMenu(opts?: any, target?: HTMLElement): void + export function hideMenu(opts?: any, target?: HTMLElement): void +} + +declare module '@firefox-devtools/react-contextmenu/modules/actions' { + export function showMenu(opts?: any, target?: HTMLElement): void + export function hideMenu(opts?: any, target?: HTMLElement): void +} diff --git a/demos/linearlite/src/style.css b/demos/linearlite/src/style.css new file mode 100644 index 00000000..9b39c3c8 --- /dev/null +++ b/demos/linearlite/src/style.css @@ -0,0 +1,73 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; +body { + font-size: 12px; + @apply font-medium text-gray-600; +} + +@font-face { + font-family: 'Inter UI'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: + url('assets/fonts/Inter-UI-Regular.woff2') format('woff2'), + url('assets/fonts/Inter-UI-Regular.woff') format('woff'); +} + +@font-face { + font-family: 'Inter UI'; + font-style: normal; + font-weight: 500; + font-display: swap; + src: + url('assets/fonts/Inter-UI-Medium.woff2') format('woff2'), + url('assets/fonts/Inter-UI-Medium.woff') format('woff'); +} + +@font-face { + font-family: 'Inter UI'; + font-style: normal; + font-weight: 600; + font-display: swap; + src: + url('assets/fonts/Inter-UI-SemiBold.woff2') format('woff2'), + url('assets/fonts/Inter-UI-SemiBold.woff') format('woff'); +} + +@font-face { + font-family: 'Inter UI'; + font-style: normal; + font-weight: 800; + font-display: swap; + src: + url('assets/fonts/Inter-UI-ExtraBold.woff2') format('woff2'), + url('assets/fonts/Inter-UI-ExtraBold.woff') format('woff'); +} + +.modal { + max-width: calc(100vw - 32px); + max-height: calc(100vh - 32px); +} + +.editor ul { + list-style-type: circle; +} +.editor ol { + list-style-type: decimal; +} + +#root, +body, +html { + height: 100%; +} + +.tiptap p.is-editor-empty:first-child::before { + color: #adb5bd; + content: attr(data-placeholder); + float: left; + height: 0; + pointer-events: none; +} diff --git a/demos/linearlite/src/types/types.ts b/demos/linearlite/src/types/types.ts new file mode 100644 index 00000000..6c9cc225 --- /dev/null +++ b/demos/linearlite/src/types/types.ts @@ -0,0 +1,113 @@ +import type React from 'react' + +import { ReactComponent as CancelIcon } from '../assets/icons/cancel.svg' +import { ReactComponent as BacklogIcon } from '../assets/icons/circle-dot.svg' +import { ReactComponent as TodoIcon } from '../assets/icons/circle.svg' +import { ReactComponent as DoneIcon } from '../assets/icons/done.svg' +import { ReactComponent as InProgressIcon } from '../assets/icons/half-circle.svg' + +import { ReactComponent as HighPriorityIcon } from '../assets/icons/signal-strong.svg' +import { ReactComponent as LowPriorityIcon } from '../assets/icons/signal-weak.svg' +import { ReactComponent as MediumPriorityIcon } from '../assets/icons/signal-medium.svg' +import { ReactComponent as NoPriorityIcon } from '../assets/icons/dots.svg' +import { ReactComponent as UrgentPriorityIcon } from '../assets/icons/rounded-claim.svg' + +export type Issue = { + id: string + title: string + description: string + priority: (typeof Priority)[keyof typeof Priority] + status: (typeof Status)[keyof typeof Status] + modified: Date + created: Date + kanbanorder: string + username: string +} + +export type Comment = { + id: string + body: string + username: string + issue_id: string + created_at: Date +} + +export const Priority = { + NONE: `none`, + URGENT: `urgent`, + HIGH: `high`, + LOW: `low`, + MEDIUM: `medium`, +} + +export const PriorityDisplay = { + [Priority.NONE]: `None`, + [Priority.URGENT]: `Urgent`, + [Priority.HIGH]: `High`, + [Priority.LOW]: `Low`, + [Priority.MEDIUM]: `Medium`, +} + +export const PriorityIcons = { + [Priority.NONE]: NoPriorityIcon, + [Priority.URGENT]: UrgentPriorityIcon, + [Priority.HIGH]: HighPriorityIcon, + [Priority.MEDIUM]: MediumPriorityIcon, + [Priority.LOW]: LowPriorityIcon, +} + +export const PriorityOptions: [ + React.FunctionComponent>, + string, + (typeof Priority)[keyof typeof Priority], +][] = [ + [PriorityIcons[Priority.NONE], Priority.NONE, `None`], + [PriorityIcons[Priority.URGENT], Priority.URGENT, `Urgent`], + [PriorityIcons[Priority.HIGH], Priority.HIGH, `High`], + [PriorityIcons[Priority.MEDIUM], Priority.MEDIUM, `Medium`], + [PriorityIcons[Priority.LOW], Priority.LOW, `Low`], +] + +export const Status = { + BACKLOG: `backlog`, + TODO: `todo`, + IN_PROGRESS: `in_progress`, + DONE: `done`, + CANCELED: `canceled`, +} + +export const StatusDisplay = { + [Status.BACKLOG]: `Backlog`, + [Status.TODO]: `To Do`, + [Status.IN_PROGRESS]: `In Progress`, + [Status.DONE]: `Done`, + [Status.CANCELED]: `Canceled`, +} + +export const StatusIcons = { + [Status.BACKLOG]: BacklogIcon, + [Status.TODO]: TodoIcon, + [Status.IN_PROGRESS]: InProgressIcon, + [Status.DONE]: DoneIcon, + [Status.CANCELED]: CancelIcon, +} + +export const StatusOptions: [ + React.FunctionComponent>, + (typeof Status)[keyof typeof Status], + string, +][] = [ + [StatusIcons[Status.BACKLOG], Status.BACKLOG, StatusDisplay[Status.BACKLOG]], + [StatusIcons[Status.TODO], Status.TODO, StatusDisplay[Status.TODO]], + [ + StatusIcons[Status.IN_PROGRESS], + Status.IN_PROGRESS, + StatusDisplay[Status.IN_PROGRESS], + ], + [StatusIcons[Status.DONE], Status.DONE, StatusDisplay[Status.DONE]], + [ + StatusIcons[Status.CANCELED], + Status.CANCELED, + StatusDisplay[Status.CANCELED], + ], +] diff --git a/demos/linearlite/src/utils/date.ts b/demos/linearlite/src/utils/date.ts new file mode 100644 index 00000000..36790962 --- /dev/null +++ b/demos/linearlite/src/utils/date.ts @@ -0,0 +1,6 @@ +import dayjs from 'dayjs' + +export function formatDate(date?: Date): string { + if (!date) return `` + return dayjs(date).format(`D MMM`) +} diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts new file mode 100644 index 00000000..74564985 --- /dev/null +++ b/demos/linearlite/src/utils/filterState.ts @@ -0,0 +1,95 @@ +import { useSearchParams } from 'react-router-dom' + +interface FilterState { + orderBy: string + orderDirection: `asc` | `desc` + status?: string[] + priority?: string[] + query?: string +} + +export function useFilterState(): [ + FilterState, + (state: Partial) => void, +] { + const [searchParams, setSearchParams] = useSearchParams() + const orderBy = searchParams.get(`orderBy`) ?? `created` + const orderDirection = + (searchParams.get(`orderDirection`) as `asc` | `desc`) ?? `desc` + const status = searchParams + .getAll(`status`) + .map((status) => status.toLocaleLowerCase().split(`,`)) + .flat() + const priority = searchParams + .getAll(`priority`) + .map((status) => status.toLocaleLowerCase().split(`,`)) + .flat() + const query = searchParams.get(`query`) + + const state = { + orderBy, + orderDirection, + status, + priority, + query: query || undefined, + } + + const setState = (state: Partial) => { + const { orderBy, orderDirection, status, priority, query } = state + setSearchParams((searchParams) => { + if (orderBy) { + searchParams.set(`orderBy`, orderBy) + } else { + searchParams.delete(`orderBy`) + } + if (orderDirection) { + searchParams.set(`orderDirection`, orderDirection) + } else { + searchParams.delete(`orderDirection`) + } + if (status && status.length > 0) { + searchParams.set(`status`, status.join(`,`)) + } else { + searchParams.delete(`status`) + } + if (priority && priority.length > 0) { + searchParams.set(`priority`, priority.join(`,`)) + } else { + searchParams.delete(`priority`) + } + if (query) { + searchParams.set(`query`, query) + } else { + searchParams.delete(`query`) + } + return searchParams + }) + } + + return [state, setState] +} + +interface FilterStateWhere { + status?: { in: string[] } + priority?: { in: string[] } + title?: { contains: string } + OR?: [{ title: { contains: string } }, { description: { contains: string } }] +} + +export function filterStateToWhere(filterState: FilterState) { + const { status, priority, query } = filterState + const where: FilterStateWhere = {} + if (status && status.length > 0) { + where.status = { in: status } + } + if (priority && priority.length > 0) { + where.priority = { in: priority } + } + if (query) { + where.OR = [ + { title: { contains: query } }, + { description: { contains: query } }, + ] + } + return where +} diff --git a/demos/linearlite/src/utils/notification.tsx b/demos/linearlite/src/utils/notification.tsx new file mode 100644 index 00000000..cab56271 --- /dev/null +++ b/demos/linearlite/src/utils/notification.tsx @@ -0,0 +1,49 @@ +import { toast } from 'react-toastify' + +export function showWarning(msg: string, title: string = ``) { + //TODO: make notification showing from bottom + const content = ( +

+ {title !== `` && ( +
+ + + + + + {title} +
+ )} +
{msg}
+
+ ) + toast(content, { + position: `bottom-right`, + }) +} + +export function showInfo(msg: string, title: string = ``) { + //TODO: make notification showing from bottom + const content = ( +
+ {title !== `` && ( +
+ + + + + + {title} +
+ )} +
{msg}
+
+ ) + toast(content, { + position: `bottom-right`, + }) +} diff --git a/demos/linearlite/src/vite-env.d.ts b/demos/linearlite/src/vite-env.d.ts new file mode 100644 index 00000000..11f02fe2 --- /dev/null +++ b/demos/linearlite/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/demos/linearlite/tailwind.config.js b/demos/linearlite/tailwind.config.js new file mode 100644 index 00000000..04d9eb03 --- /dev/null +++ b/demos/linearlite/tailwind.config.js @@ -0,0 +1,88 @@ +/** @type {import('tailwindcss').Config} */ +export default { + content: ['./src/**/*.{js,jsx,ts,tsx}', './public/index.html'], + darkMode: ['class', '[data-theme="dark"]'], + theme: { + screens: { + sm: '640px', + // => @media (min-width: 640px) { ... } + + md: '768px', + // => @media (min-width: 768px) { ... } + + lg: '1024px', + // => @media (min-width: 1024px) { ... } + + xl: '1280px', + // => @media (min-width: 1280px) { ... } + + '2xl': '1536px', + // => @media (min-width: 1536px) { ... } + }, + // color: { + // // gray: colors.trueGray, + // }, + fontFamily: { + sans: [ + 'Inter\\ UI', + 'SF\\ Pro\\ Display', + '-apple-system', + 'BlinkMacSystemFont', + 'Segoe\\ UI', + 'Roboto', + 'Oxygen', + 'Ubuntu', + 'Cantarell', + 'Open\\ Sans', + 'Helvetica\\ Neue', + 'sans-serif', + ], + }, + borderWidth: { + DEFAULT: '1px', + 0: '0', + 2: '2px', + 3: '3px', + 4: '4px', + 6: '6px', + 8: '8px', + }, + extend: { + boxShadow: { + modal: 'rgb(0 0 0 / 9%) 0px 3px 12px', + 'large-modal': 'rgb(0 0 0 / 50%) 0px 16px 70px', + }, + spacing: { + 2.5: '10px', + 4.5: '18px', + 3.5: '14px', + 34: '136px', + + 70: '280px', + 140: '560px', + 100: '400px', + 175: '700px', + 53: '212px', + 90: '360px', + }, + fontSize: { + xxs: '0.5rem', + xs: '0.75rem', // 12px + sm: '0.8125rem', // 13px + md: '0.9357rem', //15px + 14: '0.875rem', + base: '1.0rem', // 16px + }, + zIndex: { + 100: 100, + }, + }, + }, + variants: { + extend: { + backgroundColor: ['checked'], + borderColor: ['checked'], + }, + }, + plugins: [require('@tailwindcss/forms'), require('@tailwindcss/typography')], +} diff --git a/demos/linearlite/tsconfig.json b/demos/linearlite/tsconfig.json new file mode 100644 index 00000000..a462695a --- /dev/null +++ b/demos/linearlite/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "target": "ES2020", + "useDefineForClassFields": true, + "lib": ["ES2020", "DOM", "DOM.Iterable"], + "module": "ESNext", + "skipLibCheck": true, + "types": ["vite/client", "vite-plugin-svgr/client"], + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "react-jsx", + + /* Linting */ + "strict": true, + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src"] +} diff --git a/demos/linearlite/vite.config.ts b/demos/linearlite/vite.config.ts new file mode 100644 index 00000000..f455e1e0 --- /dev/null +++ b/demos/linearlite/vite.config.ts @@ -0,0 +1,25 @@ +import { defineConfig } from 'vite' +import react from '@vitejs/plugin-react' +import svgr from 'vite-plugin-svgr' + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [ + react(), + svgr({ + svgrOptions: { + svgo: true, + plugins: [`@svgr/plugin-svgo`, `@svgr/plugin-jsx`], + svgoConfig: { + plugins: [ + `preset-default`, + `removeTitle`, + `removeDesc`, + `removeDoctype`, + `cleanupIds`, + ], + }, + }, + }), + ], +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d4003370..4afd4679 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -31,7 +31,7 @@ importers: version: 3.3.3 tsup: specifier: ^8.3.0 - version: 8.3.0(@microsoft/api-extractor@7.47.7(@types/node@20.16.11))(postcss@8.4.47)(tsx@4.19.1)(typescript@5.6.3) + version: 8.3.0(@microsoft/api-extractor@7.47.7(@types/node@20.16.11))(jiti@1.21.6)(postcss@8.4.47)(tsx@4.19.1)(typescript@5.6.3)(yaml@2.6.0) tsx: specifier: ^4.19.1 version: 4.19.1 @@ -39,6 +39,199 @@ importers: specifier: ^5.6.3 version: 5.6.3 + demos/linearlite: + dependencies: + '@electric-sql/pglite': + specifier: workspace:* + version: link:../../packages/pglite + '@electric-sql/pglite-react': + specifier: workspace:* + version: link:../../packages/pglite-react + '@firefox-devtools/react-contextmenu': + specifier: ^5.1.1 + version: 5.1.1(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@headlessui/react': + specifier: ^1.7.17 + version: 1.7.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@svgr/plugin-jsx': + specifier: ^8.1.0 + version: 8.1.0(@svgr/core@8.1.0(typescript@5.6.3)) + '@svgr/plugin-svgo': + specifier: ^8.1.0 + version: 8.1.0(@svgr/core@8.1.0(typescript@5.6.3))(typescript@5.6.3) + '@tailwindcss/forms': + specifier: ^0.5.6 + version: 0.5.9(tailwindcss@3.4.13) + '@tiptap/extension-placeholder': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-table': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-table-cell': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-table-header': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-table-row': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/pm': + specifier: ^2.4.0 + version: 2.8.0 + '@tiptap/react': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@tiptap/starter-kit': + specifier: ^2.4.0 + version: 2.8.0(@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))) + animate.css: + specifier: ^4.1.1 + version: 4.1.1 + classnames: + specifier: ^2.5.1 + version: 2.5.1 + dayjs: + specifier: ^1.11.11 + version: 1.11.13 + dotenv: + specifier: ^16.4.5 + version: 16.4.5 + fractional-indexing: + specifier: ^3.2.0 + version: 3.2.0 + jsonwebtoken: + specifier: ^9.0.2 + version: 9.0.2 + lodash.debounce: + specifier: ^4.0.8 + version: 4.0.8 + react: + specifier: ^18.3.1 + version: 18.3.1 + react-beautiful-dnd: + specifier: ^13.1.1 + version: 13.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-dom: + specifier: ^18.3.1 + version: 18.3.1(react@18.3.1) + react-icons: + specifier: ^4.10.1 + version: 4.12.0(react@18.3.1) + react-markdown: + specifier: ^8.0.7 + version: 8.0.7(@types/react@18.3.11)(react@18.3.1) + react-router-dom: + specifier: ^6.24.1 + version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-toastify: + specifier: ^9.1.3 + version: 9.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-virtualized-auto-sizer: + specifier: ^1.0.24 + version: 1.0.24(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-window: + specifier: ^1.8.10 + version: 1.8.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + tiptap-markdown: + specifier: ^0.8.2 + version: 0.8.10(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + uuid: + specifier: ^9.0.0 + version: 9.0.1 + vite-plugin-svgr: + specifier: ^3.2.0 + version: 3.3.0(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@20.16.11)(terser@5.34.1)) + devDependencies: + '@databases/pg': + specifier: ^5.5.0 + version: 5.5.0(typescript@5.6.3) + '@databases/pg-migrations': + specifier: ^5.0.3 + version: 5.0.3(typescript@5.6.3) + '@faker-js/faker': + specifier: ^8.4.1 + version: 8.4.1 + '@tailwindcss/typography': + specifier: ^0.5.10 + version: 0.5.15(tailwindcss@3.4.13) + '@types/jest': + specifier: ^29.5.12 + version: 29.5.13 + '@types/lodash.debounce': + specifier: ^4.0.9 + version: 4.0.9 + '@types/node': + specifier: ^20.14.10 + version: 20.16.11 + '@types/react': + specifier: ^18.3.3 + version: 18.3.11 + '@types/react-beautiful-dnd': + specifier: ^13.1.8 + version: 13.1.8 + '@types/react-dom': + specifier: ^18.3.0 + version: 18.3.0 + '@types/react-router-dom': + specifier: ^5.3.3 + version: 5.3.3 + '@types/react-window': + specifier: ^1.8.8 + version: 1.8.8 + '@types/uuid': + specifier: ^9.0.3 + version: 9.0.8 + '@types/vite-plugin-react-svg': + specifier: ^0.2.5 + version: 0.2.5 + '@typescript-eslint/eslint-plugin': + specifier: ^6.0.0 + version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3) + '@typescript-eslint/parser': + specifier: ^6.0.0 + version: 6.21.0(eslint@8.57.1)(typescript@5.6.3) + '@vitejs/plugin-react': + specifier: ^4.3.1 + version: 4.3.2(vite@5.4.8(@types/node@20.16.11)(terser@5.34.1)) + autoprefixer: + specifier: ^10.4.19 + version: 10.4.20(postcss@8.4.47) + dotenv-cli: + specifier: ^7.4.2 + version: 7.4.2 + eslint: + specifier: ^8.57.0 + version: 8.57.1 + eslint-config-prettier: + specifier: ^9.1.0 + version: 9.1.0(eslint@8.57.1) + eslint-plugin-prettier: + specifier: ^5.1.3 + version: 5.2.1(eslint-config-prettier@9.1.0(eslint@8.57.1))(eslint@8.57.1)(prettier@3.3.3) + eslint-plugin-react-hooks: + specifier: ^4.6.2 + version: 4.6.2(eslint@8.57.1) + eslint-plugin-react-refresh: + specifier: ^0.4.3 + version: 0.4.12(eslint@8.57.1) + fs-extra: + specifier: ^10.0.0 + version: 10.1.0 + postcss: + specifier: ^8.4.39 + version: 8.4.47 + tailwindcss: + specifier: ^3.4.4 + version: 3.4.13 + typescript: + specifier: ^5.5.3 + version: 5.6.3 + vite: + specifier: ^5.4.8 + version: 5.4.8(@types/node@20.16.11)(terser@5.34.1) + docs: dependencies: '@electric-sql/pglite': @@ -396,6 +589,10 @@ packages: '@algolia/transporter@4.24.0': resolution: {integrity: sha512-86nI7w6NzWxd1Zp9q3413dRshDqAzSbsQjhcDhPIatEFiZrL1/TjnHL8S7jVKFePlIMzDsZWXAXwXzcok9c5oA==} + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + '@ampproject/remapping@2.3.0': resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} @@ -613,6 +810,57 @@ packages: '@codemirror/view@6.34.1': resolution: {integrity: sha512-t1zK/l9UiRqwUNPm+pdIT0qzJlzuVckbTEMVNFhfWkGiBQClstzg+78vedCvLSX0xJEZ6lwZbPpnljL7L6iwMQ==} + '@databases/connection-pool@1.1.0': + resolution: {integrity: sha512-/12/SNgl0V77mJTo5SX3yGPz4c9XGQwAlCfA0vlfs/0HcaErNpYXpmhj0StET07w6TmTJTnaUgX2EPcQK9ez5A==} + + '@databases/escape-identifier@1.0.3': + resolution: {integrity: sha512-Su36iSVzaHxpVdISVMViUX/32sLvzxVgjZpYhzhotxZUuLo11GVWsiHwqkvUZijTLUxcDmUqEwGJO3O/soLuZA==} + + '@databases/lock@2.1.0': + resolution: {integrity: sha512-ReWnFE5qeCuO2SA5h5fDh/hE/vMolA+Epe6xkAQP1FL2nhnsTCYwN2JACk/kWctR4OQoh0njBjPZ0yfIptclcA==} + + '@databases/migrations-base@3.0.1': + resolution: {integrity: sha512-CutCQ1AjsEWqSuXInD8KwaZYa3/InYGFu3uZ/2pu0Ku4MHRab14+sKNXLk/dxHaJLplngLtCraBo8rL7/21Vhg==} + + '@databases/pg-config@3.2.0': + resolution: {integrity: sha512-hoPAK/F8gLcLgEJ8mLSnNvRlKqShwx5+GglDHIIfQhKF+Zz6M6QceiOefckS4WSjA0x2HClPvpercnXp9i24ag==} + + '@databases/pg-connection-string@1.0.0': + resolution: {integrity: sha512-8czOF9jlv7PlS7BPjnL82ynpDs1t8cu+C2jvdtMr37e8daPKMS7n1KfNE9xtr2Gq4QYKjynep097eYa5yIwcLA==} + + '@databases/pg-data-type-id@3.0.0': + resolution: {integrity: sha512-VqW1csN8pRsWJxjPsGIC9FQ8wyenfmGv0P//BaeDMAu/giM3IXKxKM8fkScUSQ00uqFK/L1iHS5g6dgodF3XzA==} + + '@databases/pg-errors@1.0.0': + resolution: {integrity: sha512-Yz3exbptZwOn4ZD/MSwY6z++XVyOFsMh5DERvSw3awRwJFnfdaqdeiIxxX0MVjM6KPihF0xxp8lPO7vTc5ydpw==} + + '@databases/pg-migrations@5.0.3': + resolution: {integrity: sha512-mUKbVYiACRZJOhE96Y5Fr2IIJ2iBNPVM6L3LgBypH9zIQMOLixGpJ6ZS0oabtNIFJhjncXl5FVEtYaa8x5KkoA==} + hasBin: true + + '@databases/pg@5.5.0': + resolution: {integrity: sha512-WIojK9AYIlNi5YRfc5YUOow3PQ82ClmwT9HG3nEsKLUERYieoVmHMYDQLS0ry6FjgJx+2yFs7LCw4kZpWu1TBw==} + + '@databases/push-to-async-iterable@3.0.0': + resolution: {integrity: sha512-xwu/yNgINdMU+fn6UwFsxh+pa6UrVPafY+0qm0RK0/nKyjllfDqSbwK4gSmdmLEwPYxKwch9CAE3P8NxN1hPSg==} + + '@databases/queue@1.0.1': + resolution: {integrity: sha512-dqRU+/aQ4lhFzjPIkIhjB0+UEKMb76FoBgHOJUTcEblgatr/IhdhHliT3VVwcImXh35Mz297PAXE4yFM4eYWUQ==} + + '@databases/shared@3.1.0': + resolution: {integrity: sha512-bO1DIYAYDiWOCqVPvBio1JqZQYh4dph2M1av2w/REeFT6WBd64mTrOFlcxKV0CUAYT0UiJsDfPqEfw0/APRzWg==} + + '@databases/split-sql-query@1.0.4': + resolution: {integrity: sha512-lDqDQvH34NNjLs0knaDvL6HKgPtishQlDYHfOkvbAd5VQOEhcDvvmG2zbBuFvS2HQAz5NsyLj5erGaxibkxhvQ==} + peerDependencies: + '@databases/sql': '*' + + '@databases/sql@3.3.0': + resolution: {integrity: sha512-vj9huEy4mjJ48GS1Z8yvtMm4BYAnFYACUds25ym6Gd/gsnngkJ17fo62a6mmbNNwCBS/8467PmZR01Zs/06TjA==} + + '@databases/validate-unicode@1.0.0': + resolution: {integrity: sha512-dLKqxGcymeVwEb/6c44KjOnzaAafFf0Wxa8xcfEjx/qOl3rdijsKYBAtIGhtVtOlpPf/PFKfgTuFurSPn/3B/g==} + '@docsearch/css@3.6.2': resolution: {integrity: sha512-vKNZepO2j7MrYBTZIGXvlUOIR+v9KRf70FApRgovWrj3GTs1EITz/Xb0AOlm1xsQBp16clVZj1SY/qaOJbQtZw==} @@ -819,6 +1067,12 @@ packages: cpu: [ia32] os: [linux] + '@esbuild/linux-loong64@0.14.54': + resolution: {integrity: sha512-bZBrLAIX1kpWelV0XemxBZllyRmM6vgFQQG2GdNb+r3Fkp0FOh1NJSvekXDs7jq70k4euu1cryLMfU+mTXlEpw==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} @@ -1022,6 +1276,24 @@ packages: resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@faker-js/faker@8.4.1': + resolution: {integrity: sha512-XQ3cU+Q8Uqmrbf2e0cIC/QN43sTBSC8KF12u29Mb47tWrt2hAgBXSgpZMj4Ao8Uk0iJcU99QsOCaIL8934obCg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0, npm: '>=6.14.13'} + + '@firefox-devtools/react-contextmenu@5.1.1': + resolution: {integrity: sha512-I4/hSZPE6A9Whu9Xut80gJbyz0fWCggNiDJOM0Bhdl9RJa4gBiFj5Q5MDjQSP1vpI3InP33lS747Z3LUnivw9w==} + peerDependencies: + prop-types: ^15.0.0 + react: ^0.14.0 || ^15.0.0 || ^16.0.1 || ^17.0.0 || ^18.0.0 + react-dom: ^0.14.0 || ^15.0.0 || ^16.0.1 || ^17.0.0 || ^18.0.0 + + '@headlessui/react@1.7.19': + resolution: {integrity: sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw==} + engines: {node: '>=10'} + peerDependencies: + react: ^16 || ^17 || ^18 + react-dom: ^16 || ^17 || ^18 + '@humanwhocodes/config-array@0.13.0': resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} @@ -1035,14 +1307,26 @@ packages: resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead + '@inquirer/figures@1.0.7': + resolution: {integrity: sha512-m+Trk77mp54Zma6xLkLuY+mvanPxlE4A7yNKs2HBiyZ4UkVs28Mv5c/pgWrHeInx+USHeX/WEPzjrWrcJiQgjw==} + engines: {node: '>=18'} + '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + '@jest/expect-utils@29.7.0': + resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/schemas@29.6.3': resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/types@29.6.3': + resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jridgewell/gen-mapping@0.3.5': resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} engines: {node: '>=6.0.0'} @@ -1151,6 +1435,20 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} + '@pkgr/core@0.1.1': + resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + + '@popperjs/core@2.11.8': + resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} + + '@remirror/core-constants@3.0.0': + resolution: {integrity: sha512-42aWfPrimMfDKDi4YegyS7x+/0tlzaqwPQCULLanv3DMIlu96KTJR0fM5isWX2UViOqlGnX6YFgqWepcX+XMNg==} + + '@remix-run/router@1.20.0': + resolution: {integrity: sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==} + engines: {node: '>=14.0.0'} + '@rollup/pluginutils@5.1.2': resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==} engines: {node: '>=14.0.0'} @@ -1283,6 +1581,99 @@ packages: '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + '@svgr/babel-plugin-add-jsx-attribute@8.0.0': + resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-remove-jsx-attribute@8.0.0': + resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0': + resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0': + resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-svg-dynamic-title@8.0.0': + resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-svg-em-dimensions@8.0.0': + resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-transform-react-native-svg@8.1.0': + resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-transform-svg-component@8.0.0': + resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==} + engines: {node: '>=12'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-preset@8.1.0': + resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/core@8.1.0': + resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==} + engines: {node: '>=14'} + + '@svgr/hast-util-to-babel-ast@8.0.0': + resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==} + engines: {node: '>=14'} + + '@svgr/plugin-jsx@8.1.0': + resolution: {integrity: sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==} + engines: {node: '>=14'} + peerDependencies: + '@svgr/core': '*' + + '@svgr/plugin-svgo@8.1.0': + resolution: {integrity: sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==} + engines: {node: '>=14'} + peerDependencies: + '@svgr/core': '*' + + '@tailwindcss/forms@0.5.9': + resolution: {integrity: sha512-tM4XVr2+UVTxXJzey9Twx48c1gcxFStqn1pQz0tRsX8o3DvxhN5oY5pvyAbUx7VTaZxpej4Zzvc6h+1RJBzpIg==} + peerDependencies: + tailwindcss: '>=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20' + + '@tailwindcss/typography@0.5.15': + resolution: {integrity: sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==} + peerDependencies: + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20' + + '@tanstack/react-virtual@3.10.8': + resolution: {integrity: sha512-VbzbVGSsZlQktyLrP5nxE+vE1ZR+U0NFAWPbJLoG2+DKPwd2D7dVICTVIIaYlJqX1ZCEnYDbaOpmMwbsyhBoIA==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 + + '@tanstack/virtual-core@3.10.8': + resolution: {integrity: sha512-PBu00mtt95jbKFi6Llk9aik8bnR3tR/oQP1o3TSi+iG//+Q2RTIzCEgKkHG8BB86kxMNW6O8wku+Lmi+QFR6jA==} + '@testing-library/dom@10.4.0': resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==} engines: {node: '>=18'} @@ -1316,6 +1707,172 @@ packages: '@vue/compiler-sfc': optional: true + '@tiptap/core@2.8.0': + resolution: {integrity: sha512-xsqDI4BNzYRWRtBq7+/38ThhqEr7uG9Njip1x+9/wgR3vWPBFnBkYJTz6jSxS35NRE6BSnERm4/B/vrLuY1Hdw==} + peerDependencies: + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-blockquote@2.8.0': + resolution: {integrity: sha512-m3CKrOIvV7fY1Ak2gYf5LkKiz6AHxHpg6wxfVaJvdBqXgLyVtHo552N+A4oSHOSRbB4AG9EBQ2NeBM8cdEQ4MA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-bold@2.8.0': + resolution: {integrity: sha512-U1YkZBxDkSLNvPNiqxB5g42IeJHr27C7zDb/yGQN2xL4UBeg4O9xVhCFfe32f6tLwivSL0dar4ScElpaCJuqow==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-bubble-menu@2.8.0': + resolution: {integrity: sha512-swg+myJPN60LduQvLMF4hVBqP5LOIN01INZBzBI8egz8QufqtSyRCgXl7Xcma0RT5xIXnZSG9XOqNFf2rtkjKA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-bullet-list@2.8.0': + resolution: {integrity: sha512-H4O2X0ozbc/ce9/XF1H98sqWVUdtt7jzy7hMBunwmY8ZxI4dHtcRkeg81CZbpKTqOqRrMCLWjE3M2tgiDXrDkA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/extension-list-item': ^2.7.0 + '@tiptap/extension-text-style': ^2.7.0 + + '@tiptap/extension-code-block@2.8.0': + resolution: {integrity: sha512-POuA5Igx+Dto0DTazoBFAQTj/M/FCdkqRVD9Uhsxhv49swPyANTJRr05vgbgtHB+NDDsZfCawVh7pI0IAD/O0w==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-code@2.8.0': + resolution: {integrity: sha512-VSFn3sFF6qPpOGkXFhik8oYRH5iByVJpFEFd/duIEftmS0MdPzkbSItOpN3mc9xsJ5dCX80LYaResSj5hr5zkA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-document@2.8.0': + resolution: {integrity: sha512-mp7Isx1sVc/ifeW4uW/PexGQ9exN3NRUOebSpnLfqXeWYk4y1RS1PA/3+IHkOPVetbnapgPjFx/DswlCP3XLjA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-dropcursor@2.8.0': + resolution: {integrity: sha512-rAFvx44YuT6dtS1c+ALw0ROAGI16l5L1HxquL4hR1gtxDcTieST5xhw5bkshXlmrlfotZXPrhokzqA7qjhZtJw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-floating-menu@2.8.0': + resolution: {integrity: sha512-H4QT61CrkLqisnGGC7zgiYmsl2jXPHl89yQCbdlkQN7aw11H7PltcJS2PJguL0OrRVJS/Mv/VTTUiMslmsEV5g==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-gapcursor@2.8.0': + resolution: {integrity: sha512-Be1LWCmvteQInOnNVN+HTqc1XWsj1bCl+Q7et8qqNjtGtTaCbdCp8ppcH1SKJxNTM/RLUtPyJ8FDgOTj51ixCA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-hard-break@2.8.0': + resolution: {integrity: sha512-vqiIfviNiCmy/pJTHuDSCAGL2O4QDEdDmAvGJu8oRmElUrnlg8DbJUfKvn6DWQHNSQwRb+LDrwWlzAYj1K9u6A==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-heading@2.8.0': + resolution: {integrity: sha512-4inWgrTPiqlivPmEHFOM5ck2UsmOsbKKPtqga6bALvWPmCv24S6/EBwFp8Jz4YABabXDnkviihmGu0LpP9D69w==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-history@2.8.0': + resolution: {integrity: sha512-u5YS0J5Egsxt8TUWMMAC3QhPZaak+IzQeyHch4gtqxftx96tprItY7AD/A3pGDF2uCSnN+SZrk6yVexm6EncDw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-horizontal-rule@2.8.0': + resolution: {integrity: sha512-Sn/MI8WVFBoIYSIHA9NJryJIyCEzZdRysau8pC5TFnfifre0QV1ksPz2bgF+DyCD69ozQiRdBBHDEwKe47ZbfQ==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-italic@2.8.0': + resolution: {integrity: sha512-PwwSE2LTYiHI47NJnsfhBmPiLE8IXZYqaSoNPU6flPrk1KxEzqvRI1joKZBmD9wuqzmHJ93VFIeZcC+kfwi8ZA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-list-item@2.8.0': + resolution: {integrity: sha512-o7OGymGxB0B9x3x2prp3KBDYFuBYGc5sW69O672jk8G52DqhzzndgPnkk0qUn8nXAUKuDGbJmpmHVA2kagqnRg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-ordered-list@2.8.0': + resolution: {integrity: sha512-sCvNbcTS1+5QTTXwUPFa10vf5I1pr8sGcOTIh0G+a5ZkS5+6FxT12k7VLzPt39QyNbOi+77U2o4Xr4XyaEkfSg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/extension-list-item': ^2.7.0 + '@tiptap/extension-text-style': ^2.7.0 + + '@tiptap/extension-paragraph@2.8.0': + resolution: {integrity: sha512-XgxxNNbuBF48rAGwv7/s6as92/xjm/lTZIGTq9aG13ClUKFtgdel7C33SpUCcxg3cO2WkEyllXVyKUiauFZw/A==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-placeholder@2.8.0': + resolution: {integrity: sha512-BMqv/C9Tcjd7L1/OphUAJTZhWfpWs0rTQJ0bs3RRGsC8L+K20Fg+li45vw7M0teojpfrw57zwJogJd/m23Zr1Q==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-strike@2.8.0': + resolution: {integrity: sha512-ezkDiXxQ3ME/dDMMM7tAMkKRi6UWw7tIu+Mx7Os0z8HCGpVBk1gFhLlhEd8I5rJaPZr4tK1wtSehMA9bscFGQw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-table-cell@2.8.0': + resolution: {integrity: sha512-IZpxONWyOd474L8+k4bHrFNRhbsl9eRwbNs5O877JkVFItc2WUz1DIhbJzjmBRsqExtWQJuOsiqWFab1kpiwGQ==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-table-header@2.8.0': + resolution: {integrity: sha512-B67A96yMQlG96IFzZBc7D5dnn7O29hcjuDLtjyZkKvU5D/RlFKPMmC9nVphCV3CnbkvEOZUdK9pNaOpen64naw==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-table-row@2.8.0': + resolution: {integrity: sha512-Iezej6l7X+WqKzGLmCgAwmpL+QsfjFv1g8yVH5d0/3Pkcj3G9nDn+GSm4bZnbfYFyqInHG94PZ5PMReiALrJtA==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-table@2.8.0': + resolution: {integrity: sha512-dm9CitjacXyJuE5SZfV2lUc3uOiP2sxo6fygIzMz7iuxHqQueyONWG+TBkK7HjqzXOiMPsvOf/25NazzIG8HMg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + + '@tiptap/extension-text-style@2.8.0': + resolution: {integrity: sha512-jJp0vcZ2Ty7RvIL0VU6dm1y+fTfXq1lN2GwtYzYM0ueFuESa+Qo8ticYOImyWZ3wGJGVrjn7OV9r0ReW0/NYkQ==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/extension-text@2.8.0': + resolution: {integrity: sha512-EDAdFFzWOvQfVy7j3qkKhBpOeE5thkJaBemSWfXI93/gMVc0ZCdLi24mDvNNgUHlT+RjlIoQq908jZaaxLKN2A==} + peerDependencies: + '@tiptap/core': ^2.7.0 + + '@tiptap/pm@2.8.0': + resolution: {integrity: sha512-eMGpRooUMvKz/vOpnKKppApMSoNM325HxTdAJvTlVAmuHp5bOY5kyY1kfUlePRiVx1t1UlFcXs3kecFwkkBD3Q==} + + '@tiptap/react@2.8.0': + resolution: {integrity: sha512-o/aSCjO5Nu4MsNpTF+N1SzYzVQvvBiclmTOZX2E6usZ8jre5zmKfXHDSZnjGSRTK6z6kw5KW8wpjRQha03f9mg==} + peerDependencies: + '@tiptap/core': ^2.7.0 + '@tiptap/pm': ^2.7.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + + '@tiptap/starter-kit@2.8.0': + resolution: {integrity: sha512-r7UwaTrECkQoheWVZKFDqtL5tBx07x7IFT+prfgnsVlYFutGWskVVqzCDvD3BDmrg5PzeCWYZrQGlPaLib7tjg==} + + '@trysound/sax@0.2.0': + resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} + engines: {node: '>=10.13.0'} + '@types/argparse@1.0.38': resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} @@ -1337,27 +1894,75 @@ packages: '@types/better-sqlite3@7.6.11': resolution: {integrity: sha512-i8KcD3PgGtGBLl3+mMYA8PdKkButvPyARxA7IQAd6qeslht13qxb1zzO8dRCtE7U3IoJS782zDBAeoKiM695kg==} + '@types/debug@4.1.12': + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} + '@types/emscripten@1.39.13': resolution: {integrity: sha512-cFq+fO/isvhvmuP/+Sl4K4jtU6E23DoivtbO4r50e3odaxAiVdbfSYRDdJ4gCdxx+3aRjhphS5ZMwIH4hFy/Cw==} '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/hast@2.3.10': + resolution: {integrity: sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==} + '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} + '@types/history@4.7.11': + resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==} + + '@types/hoist-non-react-statics@3.3.5': + resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} + + '@types/istanbul-lib-coverage@2.0.6': + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + + '@types/istanbul-lib-report@3.0.3': + resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==} + + '@types/istanbul-reports@3.0.4': + resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} + + '@types/jest@29.5.13': + resolution: {integrity: sha512-wd+MVEZCHt23V0/L642O5APvspWply/rGY5BcW4SUETo2UzPU3Z26qr8jC2qxpimI2jjx9h7+2cj2FwIr01bXg==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/linkify-it@3.0.5': + resolution: {integrity: sha512-yg6E+u0/+Zjva+buc3EIb+29XEg4wltq7cSmd4Uc2EE/1nUVmxyzpX6gUXD0V8jIrG0r7YeOGVIbYRkxeooCtw==} + '@types/linkify-it@5.0.0': resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==} + '@types/lodash.debounce@4.0.9': + resolution: {integrity: sha512-Ma5JcgTREwpLRwMM+XwBR7DaWe96nC38uCBDFKZWbNKD+osjVzdpnUSwBcqCptrp16sSOLBAUb50Car5I0TCsQ==} + + '@types/lodash@4.17.10': + resolution: {integrity: sha512-YpS0zzoduEhuOWjAotS6A5AVCva7X4lVlYLF0FYHAY9sdraBfnatttHItlWeZdGhuEkf+OzMNg2ZYAx8t+52uQ==} + + '@types/markdown-it@13.0.9': + resolution: {integrity: sha512-1XPwR0+MgXLWfTn9gCsZ55AHOKW1WN+P9vr0PaQh5aerR9LLQXUbjfEAFhjmEmyoYFWAyuN2Mqkn40MZ4ukjBw==} + '@types/markdown-it@14.1.2': resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==} + '@types/mdast@3.0.15': + resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} + '@types/mdurl@1.0.5': + resolution: {integrity: sha512-6L6VymKTzYSrEf4Nev4Xa1LCHKrlTlYCBMTlQKFuddo1CvQcE52I0mwfOJayueUC7MJuXOeHTcIU683lzd0cUA==} + '@types/mdurl@2.0.0': resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} + '@types/ms@0.7.34': + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + '@types/node-fetch@2.6.11': resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} @@ -1370,18 +1975,71 @@ packages: '@types/prop-types@15.7.13': resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} + '@types/react-beautiful-dnd@13.1.8': + resolution: {integrity: sha512-E3TyFsro9pQuK4r8S/OL6G99eq7p8v29sX0PM7oT8Z+PJfZvSQTx4zTQbUJ+QZXioAF0e7TGBEcA1XhYhCweyQ==} + '@types/react-dom@18.3.0': resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} + '@types/react-redux@7.1.34': + resolution: {integrity: sha512-GdFaVjEbYv4Fthm2ZLvj1VSCedV7TqE5y1kNwnjSdBOTXuRSgowux6J8TAct15T3CKBr63UMk+2CO7ilRhyrAQ==} + + '@types/react-router-dom@5.3.3': + resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==} + + '@types/react-router@5.1.20': + resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==} + + '@types/react-window@1.8.8': + resolution: {integrity: sha512-8Ls660bHR1AUA2kuRvVG9D/4XpRC6wjAaPT9dil7Ckc76eP9TKWZwwmgfq8Q1LANX3QNDnoU4Zp48A3w+zK69Q==} + '@types/react@18.3.11': resolution: {integrity: sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==} + '@types/semver@7.5.8': + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + + '@types/stack-utils@2.0.3': + resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} + + '@types/svgo@2.6.4': + resolution: {integrity: sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==} + + '@types/unist@2.0.11': + resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} + '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} + '@types/use-sync-external-store@0.0.6': + resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==} + + '@types/uuid@9.0.8': + resolution: {integrity: sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==} + + '@types/vite-plugin-react-svg@0.2.5': + resolution: {integrity: sha512-p2yB779GM9G1bxgKPO+YRi+NJE/U8Di9cZacYGfjtl3XEO62mBbj54tFXCssDyhNuJc9iGUAfJipoMZvzZNPmw==} + '@types/web-bluetooth@0.0.20': resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} + '@types/yargs-parser@21.0.3': + resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} + + '@types/yargs@17.0.33': + resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} + + '@typescript-eslint/eslint-plugin@6.21.0': + resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/eslint-plugin@7.18.0': resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1393,6 +2051,16 @@ packages: typescript: optional: true + '@typescript-eslint/parser@6.21.0': + resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/parser@7.18.0': resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1403,6 +2071,10 @@ packages: typescript: optional: true + '@typescript-eslint/scope-manager@6.21.0': + resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} + engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/scope-manager@7.18.0': resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1411,6 +2083,16 @@ packages: resolution: {integrity: sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/type-utils@6.21.0': + resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/type-utils@7.18.0': resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1430,6 +2112,10 @@ packages: typescript: optional: true + '@typescript-eslint/types@6.21.0': + resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} + engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/types@7.18.0': resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1438,6 +2124,15 @@ packages: resolution: {integrity: sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@6.21.0': + resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/typescript-estree@7.18.0': resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1456,6 +2151,12 @@ packages: typescript: optional: true + '@typescript-eslint/utils@6.21.0': + resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + '@typescript-eslint/utils@7.18.0': resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1468,6 +2169,10 @@ packages: peerDependencies: eslint: ^8.57.0 || ^9.0.0 + '@typescript-eslint/visitor-keys@6.21.0': + resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} + engines: {node: ^16.0.0 || >=18.0.0} + '@typescript-eslint/visitor-keys@7.18.0': resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -1741,10 +2446,17 @@ packages: algoliasearch@4.24.0: resolution: {integrity: sha512-bf0QV/9jVejssFBmz2HQLxUadxk574t4iwjCKp5E7NBzwKkrDEhKPISIIjAU/p6K5qDx3qoeh4+26zWN1jmw3g==} + animate.css@4.1.1: + resolution: {integrity: sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ==} + ansi-colors@4.1.3: resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} engines: {node: '>=6'} + ansi-escapes@4.3.2: + resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} + engines: {node: '>=8'} + ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -1776,6 +2488,9 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + argparse@1.0.10: resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} @@ -1800,6 +2515,9 @@ packages: resolution: {integrity: sha512-/JcvVCQRTVQHwLI8TCxSeOS9AcCV01MbCJC4plSP5ulygJH+D30lz85nvMcER5k+qoX2fJ1C/i13Zo1/eoMGTw==} engines: {node: '>=11.14.0'} + assert-never@1.3.0: + resolution: {integrity: sha512-9Z3vxQ+berkL/JJo0dK+EY3Lp0s3NtSnP3VCLsh5HDcZPrh0M+KQRK5sWhUeyPPH+/RCxZqOxLMR+YC6vlviEQ==} + assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} @@ -1820,10 +2538,20 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + autoprefixer@10.4.20: + resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} + engines: {node: ^10 || ^12 || >=14} + hasBin: true + peerDependencies: + postcss: ^8.1.0 + available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} + bail@2.0.2: + resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} + balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} @@ -1875,6 +2603,9 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + buffer-equal-constant-time@1.0.1: + resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} + buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -1907,6 +2638,14 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + camelcase-css@2.0.1: + resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} + engines: {node: '>= 6'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + caniuse-lite@1.0.30001668: resolution: {integrity: sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==} @@ -1935,6 +2674,9 @@ packages: character-entities-legacy@3.0.0: resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} + character-entities@2.0.2: + resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} + chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} @@ -1956,10 +2698,36 @@ packages: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} + classnames@2.5.1: + resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} + + cli-cursor@3.1.0: + resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} + engines: {node: '>=8'} + + cli-spinners@2.9.2: + resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} + engines: {node: '>=6'} + + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + + client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} + clone@1.0.4: + resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} + engines: {node: '>=0.8'} + + clsx@1.2.1: + resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} + engines: {node: '>=6'} + codemirror@6.0.1: resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} @@ -1994,6 +2762,10 @@ packages: resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} engines: {node: '>= 6'} + commander@7.2.0: + resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} + engines: {node: '>= 10'} + compare-versions@6.1.1: resolution: {integrity: sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg==} @@ -2029,6 +2801,15 @@ packages: resolution: {integrity: sha512-utCYNzRSQIZNPIcGZdQc92UVJYAhtGAteCFg0yRaFm8f0P+CPtyGyHXJcGXnffjCybUCEx3FQ2G7U3/o9eIkVQ==} engines: {node: '>= 0.4.0'} + cosmiconfig@8.3.6: + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + crelt@1.0.6: resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==} @@ -2039,11 +2820,33 @@ packages: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} + css-box-model@1.2.1: + resolution: {integrity: sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw==} + + css-select@5.1.0: + resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} + + css-tree@2.2.1: + resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + + css-tree@2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + css-what@6.1.0: + resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} + engines: {node: '>= 6'} + cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} hasBin: true + csso@5.0.5: + resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} + cssstyle@4.1.0: resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==} engines: {node: '>=18'} @@ -2059,6 +2862,9 @@ packages: resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} engines: {node: '>=0.11'} + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} @@ -2082,6 +2888,9 @@ packages: decimal.js@10.4.3: resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} + decode-named-character-reference@1.0.2: + resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} @@ -2113,6 +2922,13 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + defaults@1.0.4: + resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + define-data-property@1.1.4: resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} engines: {node: '>= 0.4'} @@ -2140,14 +2956,24 @@ packages: devlop@1.1.0: resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} + didyoumean@1.2.2: + resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} + diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} + engines: {node: '>=0.3.1'} + dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} + dlv@1.1.3: + resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} + doctrine@3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} @@ -2155,9 +2981,40 @@ packages: dom-accessibility-api@0.5.16: resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} + dom-serializer@2.0.0: + resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} + + domelementtype@2.3.0: + resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} + + domhandler@5.0.3: + resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} + engines: {node: '>= 4'} + + domutils@3.1.0: + resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} + + dot-case@3.0.4: + resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} + + dotenv-cli@7.4.2: + resolution: {integrity: sha512-SbUj8l61zIbzyhIbg0FwPJq6+wjbzdn9oEtozQpZ6kW2ihCcapKVZj49oCT3oPM+mgQm+itgvUQcG5szxVrZTA==} + hasBin: true + + dotenv-expand@10.0.0: + resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} + engines: {node: '>=12'} + + dotenv@16.4.5: + resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} + engines: {node: '>=12'} + eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + ecdsa-sig-formatter@1.0.11: + resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} + editorconfig@1.0.4: resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==} engines: {node: '>=14'} @@ -2186,6 +3043,9 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + es-define-property@1.0.0: resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} engines: {node: '>= 0.4'} @@ -2197,6 +3057,131 @@ packages: es-get-iterator@1.1.3: resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} + esbuild-android-64@0.14.54: + resolution: {integrity: sha512-Tz2++Aqqz0rJ7kYBfz+iqyE3QMycD4vk7LBRyWaAVFgFtQ/O8EJOnVmTOiDWYZ/uYzB4kvP+bqejYdVKzE5lAQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + esbuild-android-arm64@0.14.54: + resolution: {integrity: sha512-F9E+/QDi9sSkLaClO8SOV6etqPd+5DgJje1F9lOWoNncDdOBL2YF59IhsWATSt0TLZbYCf3pNlTHvVV5VfHdvg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + esbuild-darwin-64@0.14.54: + resolution: {integrity: sha512-jtdKWV3nBviOd5v4hOpkVmpxsBy90CGzebpbO9beiqUYVMBtSc0AL9zGftFuBon7PNDcdvNCEuQqw2x0wP9yug==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + esbuild-darwin-arm64@0.14.54: + resolution: {integrity: sha512-OPafJHD2oUPyvJMrsCvDGkRrVCar5aVyHfWGQzY1dWnzErjrDuSETxwA2HSsyg2jORLY8yBfzc1MIpUkXlctmw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + esbuild-freebsd-64@0.14.54: + resolution: {integrity: sha512-OKwd4gmwHqOTp4mOGZKe/XUlbDJ4Q9TjX0hMPIDBUWWu/kwhBAudJdBoxnjNf9ocIB6GN6CPowYpR/hRCbSYAg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + esbuild-freebsd-arm64@0.14.54: + resolution: {integrity: sha512-sFwueGr7OvIFiQT6WeG0jRLjkjdqWWSrfbVwZp8iMP+8UHEHRBvlaxL6IuKNDwAozNUmbb8nIMXa7oAOARGs1Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + esbuild-linux-32@0.14.54: + resolution: {integrity: sha512-1ZuY+JDI//WmklKlBgJnglpUL1owm2OX+8E1syCD6UAxcMM/XoWd76OHSjl/0MR0LisSAXDqgjT3uJqT67O3qw==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + esbuild-linux-64@0.14.54: + resolution: {integrity: sha512-EgjAgH5HwTbtNsTqQOXWApBaPVdDn7XcK+/PtJwZLT1UmpLoznPd8c5CxqsH2dQK3j05YsB3L17T8vE7cp4cCg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + esbuild-linux-arm64@0.14.54: + resolution: {integrity: sha512-WL71L+0Rwv+Gv/HTmxTEmpv0UgmxYa5ftZILVi2QmZBgX3q7+tDeOQNqGtdXSdsL8TQi1vIaVFHUPDe0O0kdig==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + esbuild-linux-arm@0.14.54: + resolution: {integrity: sha512-qqz/SjemQhVMTnvcLGoLOdFpCYbz4v4fUo+TfsWG+1aOu70/80RV6bgNpR2JCrppV2moUQkww+6bWxXRL9YMGw==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + esbuild-linux-mips64le@0.14.54: + resolution: {integrity: sha512-qTHGQB8D1etd0u1+sB6p0ikLKRVuCWhYQhAHRPkO+OF3I/iSlTKNNS0Lh2Oc0g0UFGguaFZZiPJdJey3AGpAlw==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + esbuild-linux-ppc64le@0.14.54: + resolution: {integrity: sha512-j3OMlzHiqwZBDPRCDFKcx595XVfOfOnv68Ax3U4UKZ3MTYQB5Yz3X1mn5GnodEVYzhtZgxEBidLWeIs8FDSfrQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + esbuild-linux-riscv64@0.14.54: + resolution: {integrity: sha512-y7Vt7Wl9dkOGZjxQZnDAqqn+XOqFD7IMWiewY5SPlNlzMX39ocPQlOaoxvT4FllA5viyV26/QzHtvTjVNOxHZg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + esbuild-linux-s390x@0.14.54: + resolution: {integrity: sha512-zaHpW9dziAsi7lRcyV4r8dhfG1qBidQWUXweUjnw+lliChJqQr+6XD71K41oEIC3Mx1KStovEmlzm+MkGZHnHA==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + esbuild-netbsd-64@0.14.54: + resolution: {integrity: sha512-PR01lmIMnfJTgeU9VJTDY9ZerDWVFIUzAtJuDHwwceppW7cQWjBBqP48NdeRtoP04/AtO9a7w3viI+PIDr6d+w==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + esbuild-openbsd-64@0.14.54: + resolution: {integrity: sha512-Qyk7ikT2o7Wu76UsvvDS5q0amJvmRzDyVlL0qf5VLsLchjCa1+IAvd8kTBgUxD7VBUUVgItLkk609ZHUc1oCaw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + esbuild-sunos-64@0.14.54: + resolution: {integrity: sha512-28GZ24KmMSeKi5ueWzMcco6EBHStL3B6ubM7M51RmPwXQGLe0teBGJocmWhgwccA1GeFXqxzILIxXpHbl9Q/Kw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + esbuild-windows-32@0.14.54: + resolution: {integrity: sha512-T+rdZW19ql9MjS7pixmZYVObd9G7kcaZo+sETqNH4RCkuuYSuv9AGHUVnPoP9hhuE1WM1ZimHz1CIBHBboLU7w==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + esbuild-windows-64@0.14.54: + resolution: {integrity: sha512-AoHTRBUuYwXtZhjXZbA1pGfTo8cJo3vZIcWGLiUcTNgHpJJMC1rVA44ZereBHMJtotyN71S8Qw0npiCIkW96cQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + esbuild-windows-arm64@0.14.54: + resolution: {integrity: sha512-M0kuUvXhot1zOISQGXwWn6YtS+Y/1RT9WrVIOywZnJHo3jCDyewAc79aKNQWFCQm+xNHVTq9h8dZKvygoXQQRg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + esbuild@0.14.54: + resolution: {integrity: sha512-Cy9llcy8DvET5uznocPyqL3BFRrFXSVqbgpMJ9Wz8oVjZlh/zUSNbPRbov0VX7VxN2JH1Oa0uNxZ7eLRb62pJA==} + engines: {node: '>=12'} + hasBin: true + esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} @@ -2215,10 +3200,34 @@ packages: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} + escape-string-regexp@2.0.0: + resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} + engines: {node: '>=8'} + escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} engines: {node: '>=10'} + eslint-config-prettier@9.1.0: + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + + eslint-plugin-prettier@5.2.1: + resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' + eslint-config-prettier: '*' + prettier: '>=3.0.0' + peerDependenciesMeta: + '@types/eslint': + optional: true + eslint-config-prettier: + optional: true + eslint-plugin-react-compiler@0.0.0-experimental-9ed098e-20240725: resolution: {integrity: sha512-Xv2iD8kU6R4Wdjdh1WhdP8UnSqSV+/XcadxwBCmMr836fQUoXGuw/uVGc01v9opZs9SwKzo+8My6ayVCgAinPA==} engines: {node: ^14.17.0 || ^16.0.0 || >= 18.0.0} @@ -2370,6 +3379,13 @@ packages: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} + expect@29.7.0: + resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + extend@3.0.2: + resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} + extendable-error@0.1.7: resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} @@ -2380,6 +3396,9 @@ packages: fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + fast-glob@3.3.2: resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} engines: {node: '>=8.6.0'} @@ -2450,9 +3469,20 @@ packages: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} + fraction.js@4.3.7: + resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} + + fractional-indexing@3.2.0: + resolution: {integrity: sha512-PcOxmqwYCW7O2ovKRU8OoQQj2yqTfEB/yeTYk4gPid6dN5ODRfU1hXd9tTVZzax/0NkO7AxpHykvZnT1aYp/BQ==} + engines: {node: ^14.13.1 || >=16.0.0} + fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -2480,6 +3510,9 @@ packages: functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + funtypes@4.2.0: + resolution: {integrity: sha512-DvOtjiKvkeuXGV0O8LQh9quUP3bSOTEQPGv537Sao8kDq2rDbg48UsSJ7wlBLPzR2Mn0pV7cyAiq5pYG1oUyCQ==} + gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -2587,6 +3620,9 @@ packages: hast-util-to-html@9.0.3: resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} + hast-util-whitespace@2.0.1: + resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==} + hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} @@ -2600,6 +3636,9 @@ packages: hermes-parser@0.20.1: resolution: {integrity: sha512-BL5P83cwCogI8D7rrDCgsFY0tdYUtmFP9XaXtl2IQjC+2Xo+4okjfXintlTxcIwl4qeGddEl28Z11kbVIw0aNA==} + hoist-non-react-statics@3.3.2: + resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} @@ -2679,10 +3718,20 @@ packages: ini@1.3.8: resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + inline-style-parser@0.1.1: + resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} + + inquirer@9.3.7: + resolution: {integrity: sha512-LJKFHCSeIRq9hanN14IlOtPSTe3lNES7TYDTE2xxdAy1LS5rYphajK1qtwvj3YmQXvvk0U2Vbmcni8P9EIQW9w==} + engines: {node: '>=18'} + internal-slot@1.0.7: resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} + interrogator@2.0.1: + resolution: {integrity: sha512-HPilaDW0ZSPEKhhj6NcklQi7jhYyad1r8l6tS9hYCxvVnlrrJAUMZ7GuGa5PFK3RmquLSk+iml2geBJjC+Yc9g==} + is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} @@ -2691,6 +3740,9 @@ packages: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} engines: {node: '>= 0.4'} + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} @@ -2702,6 +3754,10 @@ packages: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} + is-buffer@2.0.5: + resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} + engines: {node: '>=4'} + is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} @@ -2732,6 +3788,10 @@ packages: eslint: '*' typescript: '>=4.7.4' + is-interactive@1.0.0: + resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} + engines: {node: '>=8'} + is-map@2.0.3: resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} engines: {node: '>= 0.4'} @@ -2748,9 +3808,16 @@ packages: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} engines: {node: '>=8'} + is-plain-obj@4.1.0: + resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} + engines: {node: '>=12'} + is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + is-promise@4.0.0: + resolution: {integrity: sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==} + is-regex@1.1.4: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} @@ -2783,6 +3850,10 @@ packages: resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} engines: {node: '>= 0.4'} + is-unicode-supported@0.1.0: + resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} + engines: {node: '>=10'} + is-weakmap@2.0.2: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} @@ -2808,6 +3879,30 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} + jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-matcher-utils@29.7.0: + resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-message-util@29.7.0: + resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-util@29.7.0: + resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jiti@1.21.6: + resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} + hasBin: true + jju@1.4.0: resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} @@ -2855,6 +3950,9 @@ packages: json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -2872,9 +3970,26 @@ packages: jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + jsonfile@6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + + jsonwebtoken@9.0.2: + resolution: {integrity: sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==} + engines: {node: '>=12', npm: '>=6'} + + jwa@1.4.1: + resolution: {integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==} + + jws@3.2.2: + resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==} + keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + kolorist@1.8.0: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} @@ -2882,6 +3997,10 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} + lilconfig@2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} + lilconfig@3.1.2: resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} engines: {node: '>=14'} @@ -2889,6 +4008,9 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + linkify-it@5.0.0: + resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==} + load-tsconfig@0.2.5: resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -2905,9 +4027,36 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} + lodash.castarray@4.4.0: + resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} + + lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + + lodash.includes@4.3.0: + resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} + + lodash.isboolean@3.0.3: + resolution: {integrity: sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==} + + lodash.isinteger@4.0.4: + resolution: {integrity: sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==} + + lodash.isnumber@3.0.3: + resolution: {integrity: sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.isstring@4.0.1: + resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} + lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + lodash.once@4.1.1: + resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} + lodash.sortby@4.7.0: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} @@ -2917,6 +4066,10 @@ packages: lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + log-symbols@4.1.0: + resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} + engines: {node: '>=10'} + loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} hasBin: true @@ -2927,6 +4080,9 @@ packages: loupe@3.1.2: resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==} + lower-case@2.0.2: + resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} + lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -2950,9 +4106,40 @@ packages: mark.js@8.11.1: resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==} + markdown-it-task-lists@2.1.1: + resolution: {integrity: sha512-TxFAc76Jnhb2OUu+n3yz9RMu4CwGfaT788br6HhEDlvWfdeJcLUsxk1Hgw2yJio0OXsxv7pyIPmvECY7bMbluA==} + + markdown-it@14.1.0: + resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==} + hasBin: true + + mdast-util-definitions@5.1.2: + resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==} + + mdast-util-from-markdown@1.3.1: + resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==} + + mdast-util-to-hast@12.3.0: + resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==} + mdast-util-to-hast@13.2.0: resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} + mdast-util-to-string@3.2.0: + resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==} + + mdn-data@2.0.28: + resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} + + mdn-data@2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + + mdurl@2.0.0: + resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + + memoize-one@5.2.1: + resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} + merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -2960,21 +4147,84 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} + micromark-core-commonmark@1.1.0: + resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==} + + micromark-factory-destination@1.1.0: + resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==} + + micromark-factory-label@1.1.0: + resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==} + + micromark-factory-space@1.1.0: + resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==} + + micromark-factory-title@1.1.0: + resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==} + + micromark-factory-whitespace@1.1.0: + resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==} + + micromark-util-character@1.2.0: + resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==} + micromark-util-character@2.1.0: resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} + micromark-util-chunked@1.1.0: + resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==} + + micromark-util-classify-character@1.1.0: + resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==} + + micromark-util-combine-extensions@1.1.0: + resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==} + + micromark-util-decode-numeric-character-reference@1.1.0: + resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==} + + micromark-util-decode-string@1.1.0: + resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==} + + micromark-util-encode@1.1.0: + resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==} + micromark-util-encode@2.0.0: resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} + micromark-util-html-tag-name@1.2.0: + resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==} + + micromark-util-normalize-identifier@1.1.0: + resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==} + + micromark-util-resolve-all@1.1.0: + resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==} + + micromark-util-sanitize-uri@1.2.0: + resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==} + micromark-util-sanitize-uri@2.0.0: resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} + micromark-util-subtokenize@1.1.0: + resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==} + + micromark-util-symbol@1.1.0: + resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==} + micromark-util-symbol@2.0.0: resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} + micromark-util-types@1.1.0: + resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==} + micromark-util-types@2.0.0: resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} + micromark@3.2.0: + resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==} + micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} @@ -3004,6 +4254,10 @@ packages: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} + mini-svg-data-uri@1.4.4: + resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} + hasBin: true + minimatch@10.0.1: resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} engines: {node: 20 || >=22} @@ -3018,6 +4272,10 @@ packages: resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==} engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -3055,6 +4313,10 @@ packages: muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} + mute-stream@1.0.0: + resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} @@ -3069,6 +4331,9 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + no-case@3.0.4: + resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} + node-abi@3.68.0: resolution: {integrity: sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==} engines: {node: '>=10'} @@ -3085,6 +4350,10 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} + normalize-range@0.1.2: + resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} + engines: {node: '>=0.10.0'} + npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -3103,6 +4372,10 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} + object-hash@3.0.0: + resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} + engines: {node: '>= 6'} + object-inspect@1.13.2: resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} engines: {node: '>= 0.4'} @@ -3141,7 +4414,14 @@ packages: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} - os-tmpdir@1.0.2: + ora@5.4.1: + resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} + engines: {node: '>=10'} + + orderedmap@2.1.1: + resolution: {integrity: sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==} + + os-tmpdir@1.0.2: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} @@ -3186,10 +4466,17 @@ packages: package-manager-detector@0.2.2: resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==} + parameter-reducers@2.1.0: + resolution: {integrity: sha512-aj9V6DUnNbj4YEmVxloPLX9duhklIC+SIOVUrVdaT3WfgEownET+TYg/JsjANQUNGe46dmOCHEKiuycL36cOnw==} + parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} @@ -3242,6 +4529,11 @@ packages: pg-connection-string@2.7.0: resolution: {integrity: sha512-PI2W9mv53rXJQEOb8xNR8lH7Hr+EKa6oJa38zsK0S/ky2er16ios1wLKhZyxzD7jUReiWokc9WK5nxSnC7W1TA==} + pg-cursor@2.12.0: + resolution: {integrity: sha512-rppw54OnuYZfMUjiJI2zJMwAjjt2V9EtLUb+t7V5tqwSE5Jxod+7vA7Y0FI6Nq976jNLciA0hoVkwvjjB8qzEw==} + peerDependencies: + pg: ^8 + pg-int8@1.0.1: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} @@ -3281,6 +4573,10 @@ packages: resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} engines: {node: '>=12'} + pify@2.3.0: + resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} + engines: {node: '>=0.10.0'} + pify@4.0.1: resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} engines: {node: '>=6'} @@ -3310,6 +4606,30 @@ packages: resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} engines: {node: '>= 0.4'} + postcss-import@15.1.0: + resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} + engines: {node: '>=14.0.0'} + peerDependencies: + postcss: ^8.0.0 + + postcss-js@4.0.1: + resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} + engines: {node: ^12 || ^14 || >= 16} + peerDependencies: + postcss: ^8.4.21 + + postcss-load-config@4.0.2: + resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} + engines: {node: '>= 14'} + peerDependencies: + postcss: '>=8.0.9' + ts-node: '>=9.0.0' + peerDependenciesMeta: + postcss: + optional: true + ts-node: + optional: true + postcss-load-config@6.0.1: resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} engines: {node: '>= 18'} @@ -3328,10 +4648,23 @@ packages: yaml: optional: true + postcss-nested@6.2.0: + resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} + engines: {node: '>=12.0'} + peerDependencies: + postcss: ^8.2.14 + + postcss-selector-parser@6.0.10: + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} + engines: {node: '>=4'} + postcss-selector-parser@6.1.2: resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} engines: {node: '>=4'} + postcss-value-parser@4.2.0: + resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} + postcss@8.4.47: resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} engines: {node: ^10 || ^12 || >=14} @@ -3364,6 +4697,10 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} + prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + prettier@2.8.8: resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} engines: {node: '>=10.13.0'} @@ -3385,9 +4722,70 @@ packages: printable-characters@1.0.42: resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==} + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + prosemirror-changeset@2.2.1: + resolution: {integrity: sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==} + + prosemirror-collab@1.3.1: + resolution: {integrity: sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==} + + prosemirror-commands@1.6.1: + resolution: {integrity: sha512-tNy4uaGWzvuUYXDke7B28krndIrdQJhSh0OLpubtwtEwFbjItOj/eoAfPvstBJyyV0S2+b5t4G+4XPXdxar6pg==} + + prosemirror-dropcursor@1.8.1: + resolution: {integrity: sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==} + + prosemirror-gapcursor@1.3.2: + resolution: {integrity: sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==} + + prosemirror-history@1.4.1: + resolution: {integrity: sha512-2JZD8z2JviJrboD9cPuX/Sv/1ChFng+xh2tChQ2X4bB2HeK+rra/bmJ3xGntCcjhOqIzSDG6Id7e8RJ9QPXLEQ==} + + prosemirror-inputrules@1.4.0: + resolution: {integrity: sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==} + + prosemirror-keymap@1.2.2: + resolution: {integrity: sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==} + + prosemirror-markdown@1.13.1: + resolution: {integrity: sha512-Sl+oMfMtAjWtlcZoj/5L/Q39MpEnVZ840Xo330WJWUvgyhNmLBLN7MsHn07s53nG/KImevWHSE6fEj4q/GihHw==} + + prosemirror-menu@1.2.4: + resolution: {integrity: sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==} + + prosemirror-model@1.23.0: + resolution: {integrity: sha512-Q/fgsgl/dlOAW9ILu4OOhYWQbc7TQd4BwKH/RwmUjyVf8682Be4zj3rOYdLnYEcGzyg8LL9Q5IWYKD8tdToreQ==} + + prosemirror-schema-basic@1.2.3: + resolution: {integrity: sha512-h+H0OQwZVqMon1PNn0AG9cTfx513zgIG2DY00eJ00Yvgb3UD+GQ/VlWW5rcaxacpCGT1Yx8nuhwXk4+QbXUfJA==} + + prosemirror-schema-list@1.4.1: + resolution: {integrity: sha512-jbDyaP/6AFfDfu70VzySsD75Om2t3sXTOdl5+31Wlxlg62td1haUpty/ybajSfJ1pkGadlOfwQq9kgW5IMo1Rg==} + + prosemirror-state@1.4.3: + resolution: {integrity: sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==} + + prosemirror-tables@1.5.0: + resolution: {integrity: sha512-VMx4zlYWm7aBlZ5xtfJHpqa3Xgu3b7srV54fXYnXgsAcIGRqKSrhiK3f89omzzgaAgAtDOV4ImXnLKhVfheVNQ==} + + prosemirror-trailing-node@3.0.0: + resolution: {integrity: sha512-xiun5/3q0w5eRnGYfNlW1uU9W6x5MoFKWwq/0TIRgt09lv7Hcser2QYV8t4muXbEr+Fwo0geYn79Xs4GKywrRQ==} + peerDependencies: + prosemirror-model: ^1.22.1 + prosemirror-state: ^1.4.2 + prosemirror-view: ^1.33.8 + + prosemirror-transform@1.10.2: + resolution: {integrity: sha512-2iUq0wv2iRoJO/zj5mv8uDUriOHWzXRnOTVgCzSXnktS/2iQRa3UUQwVlkBlYZFtygw6Nh1+X4mGqoYBINn5KQ==} + + prosemirror-view@1.34.3: + resolution: {integrity: sha512-mKZ54PrX19sSaQye+sef+YjBbNu2voNwLS1ivb6aD2IRmxRGW64HU9B644+7OfJStGLyxvOreKqEgfvXa91WIA==} + proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} @@ -3403,6 +4801,10 @@ packages: pump@3.0.2: resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} + punycode.js@2.3.1: + resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==} + engines: {node: '>=6'} + punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -3417,29 +4819,100 @@ packages: queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + raf-schd@4.0.3: + resolution: {integrity: sha512-tQkJl2GRWh83ui2DiPTJz9wEiMN20syf+5oKfB03yYP7ioZcJwsIK8FjrtLwH1m7C7e+Tt2yYBlrOpdT+dyeIQ==} + rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true + react-beautiful-dnd@13.1.1: + resolution: {integrity: sha512-0Lvs4tq2VcrEjEgDXHjT98r+63drkKEgqyxdA7qD3mvKwga6a5SscbdLPO2IExotU1jW8L0Ksdl0Cj2AF67nPQ==} + deprecated: 'react-beautiful-dnd is now deprecated. Context and options: https://github.com/atlassian/react-beautiful-dnd/issues/2672' + peerDependencies: + react: ^16.8.5 || ^17.0.0 || ^18.0.0 + react-dom: ^16.8.5 || ^17.0.0 || ^18.0.0 + react-dom@18.3.1: resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} peerDependencies: react: ^18.3.1 + react-icons@4.12.0: + resolution: {integrity: sha512-IBaDuHiShdZqmfc/TwHu6+d6k2ltNCf3AszxNmjJc1KUfXdEeRJOKyNvLmAHaarhzGmTSVygNdyu8/opXv2gaw==} + peerDependencies: + react: '*' + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react-markdown@8.0.7: + resolution: {integrity: sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==} + peerDependencies: + '@types/react': '>=16' + react: '>=16' + + react-redux@7.2.9: + resolution: {integrity: sha512-Gx4L3uM182jEEayZfRbI/G11ZpYdNAnBs70lFVMNdHJI76XYtR+7m0MN+eAs7UHBPhWXcnFPaS+9owSCJQHNpQ==} + peerDependencies: + react: ^16.8.3 || ^17 || ^18 + react-dom: '*' + react-native: '*' + peerDependenciesMeta: + react-dom: + optional: true + react-native: + optional: true + react-refresh@0.14.2: resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} engines: {node: '>=0.10.0'} + react-router-dom@6.27.0: + resolution: {integrity: sha512-+bvtFWMC0DgAFrfKXKG9Fc+BcXWRUO1aJIihbB79xaeq0v5UzfvnM5houGUm1Y461WVRcgAQ+Clh5rdb1eCx4g==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: '>=16.8' + react-dom: '>=16.8' + + react-router@6.27.0: + resolution: {integrity: sha512-YA+HGZXz4jaAkVoYBE98VQl+nVzI+cVI2Oj/06F5ZM+0u3TgedN9Y9kmMRo2mnkSK2nCpNQn0DVob4HCsY/WLw==} + engines: {node: '>=14.0.0'} + peerDependencies: + react: '>=16.8' + + react-toastify@9.1.3: + resolution: {integrity: sha512-fPfb8ghtn/XMxw3LkxQBk3IyagNpF/LIKjOBflbexr2AWxAH1MJgvnESwEwBn9liLFXgTKWgBSdZpw9m4OTHTg==} + peerDependencies: + react: '>=16' + react-dom: '>=16' + + react-virtualized-auto-sizer@1.0.24: + resolution: {integrity: sha512-3kCn7N9NEb3FlvJrSHWGQ4iVl+ydQObq2fHMn12i5wbtm74zHOPhz/i64OL3c1S1vi9i2GXtZqNqUJTQ+BnNfg==} + peerDependencies: + react: ^15.3.0 || ^16.0.0-alpha || ^17.0.0 || ^18.0.0 + react-dom: ^15.3.0 || ^16.0.0-alpha || ^17.0.0 || ^18.0.0 + + react-window@1.8.10: + resolution: {integrity: sha512-Y0Cx+dnU6NLa5/EvoHukUD0BklJ8qITCtVEPY1C/nL8wwoZ0b5aEw8Ff1dOVHw7fCzMt55XfJDd8S8W8LCaUCg==} + engines: {node: '>8.0.0'} + peerDependencies: + react: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + react-dom: ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 + react@18.3.1: resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} engines: {node: '>=0.10.0'} + read-cache@1.0.0: + resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} @@ -3452,6 +4925,9 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} + redux@4.2.1: + resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} + regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} @@ -3462,6 +4938,12 @@ packages: resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} engines: {node: '>= 0.4'} + remark-parse@10.0.2: + resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==} + + remark-rehype@10.1.0: + resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==} + require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} @@ -3488,6 +4970,10 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true + restore-cursor@3.1.0: + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} + engines: {node: '>=8'} + reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} @@ -3500,20 +4986,36 @@ packages: deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true + rollup@2.77.3: + resolution: {integrity: sha512-/qxNTG7FbmefJWoeeYJFbHehJ2HNWnjkAFRKzWN/45eNBBF/r8lo992CwcJXEzyVxs5FmfId+vTSTQDb+bxA+g==} + engines: {node: '>=10.0.0'} + hasBin: true + rollup@4.24.0: resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rope-sequence@1.3.4: + resolution: {integrity: sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==} + rrweb-cssom@0.7.1: resolution: {integrity: sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==} + run-async@3.0.0: + resolution: {integrity: sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==} + engines: {node: '>=0.12.0'} + run-parallel@1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} rxjs@7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} + sade@1.8.1: + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} + engines: {node: '>=6'} + safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} @@ -3608,6 +5110,9 @@ packages: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} + snake-case@3.0.4: + resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} + source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -3643,6 +5148,10 @@ packages: sprintf-js@1.0.3: resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + stack-utils@2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} + engines: {node: '>=10'} + stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} @@ -3708,6 +5217,9 @@ packages: style-mod@4.1.2: resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} + style-to-object@0.4.4: + resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==} + sucrase@3.35.0: resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} engines: {node: '>=16 || 14 >=14.17'} @@ -3733,12 +5245,29 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + svg-parser@2.0.4: + resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} + + svgo@3.3.2: + resolution: {integrity: sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==} + engines: {node: '>=14.0.0'} + hasBin: true + symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} + synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} + tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} + tailwindcss@3.4.13: + resolution: {integrity: sha512-KqjHOJKogOUt5Bs752ykCeiwvi0fKVkr5oqsFNt/8px/tA8scFPIlkygsf6jXrfCqGHz7VflA6+yytWuM+XhFw==} + engines: {node: '>=14.0.0'} + hasBin: true + tar-fs@2.1.1: resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} @@ -3765,6 +5294,9 @@ packages: thenify@3.3.1: resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + tiny-invariant@1.3.3: + resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} + tinybench@2.9.0: resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} @@ -3799,6 +5331,14 @@ packages: resolution: {integrity: sha512-Ko2BT2VtuszvlWz3fC1y5EJu2pTZ1bf4HvDRh9RhVJbeXXRtoSrWj7ml1RrWp5dA+JRKSlTcYDwFXlm/0fqDuw==} engines: {node: ^4.0.0, npm: ^2.0.0} + tippy.js@6.3.7: + resolution: {integrity: sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==} + + tiptap-markdown@0.8.10: + resolution: {integrity: sha512-iDVkR2BjAqkTDtFX0h94yVvE2AihCXlF0Q7RIXSJPRSR5I0PA1TMuAg6FHFpmqTn4tPxJ0by0CK7PUMlnFLGEQ==} + peerDependencies: + '@tiptap/core': ^2.0.3 + tmp@0.0.33: resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} engines: {node: '>=0.6.0'} @@ -3829,6 +5369,9 @@ packages: trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} + trough@2.2.0: + resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} + ts-api-utils@1.3.0: resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} engines: {node: '>=16'} @@ -3893,6 +5436,10 @@ packages: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} + type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + typescript@5.4.2: resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} engines: {node: '>=14.17'} @@ -3903,28 +5450,52 @@ packages: engines: {node: '>=14.17'} hasBin: true + uc.micro@2.1.0: + resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==} + ufo@1.5.4: resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + unified@10.1.2: + resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} + union@0.5.0: resolution: {integrity: sha512-N6uOhuW6zO95P3Mel2I2zMsbsanvvtgn6jVqJv4vbVcz/JN0OkL9suomjQGmWtxJQXOCqUJvquc1sMeNz/IwlA==} engines: {node: '>= 0.8.0'} + unist-util-generated@2.0.1: + resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==} + + unist-util-is@5.2.1: + resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} + unist-util-is@6.0.0: resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} + unist-util-position@4.0.4: + resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==} + unist-util-position@5.0.0: resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} + unist-util-stringify-position@3.0.3: + resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} + unist-util-stringify-position@4.0.0: resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} + unist-util-visit-parents@5.1.3: + resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} + unist-util-visit-parents@6.0.1: resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} + unist-util-visit@4.1.2: + resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} + unist-util-visit@5.0.0: resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} @@ -3936,6 +5507,10 @@ packages: resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} engines: {node: '>= 4.0.0'} + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + update-browserslist-db@1.1.1: resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} hasBin: true @@ -3951,12 +5526,37 @@ packages: url-parse@1.5.10: resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + use-memo-one@1.1.3: + resolution: {integrity: sha512-g66/K7ZQGYrI6dy8GLpVcMsBp4s17xNkYJVSMvTEevGy3nDxHOfE6z8BVE22+5G5x7t3+bhzrlTDB7ObrEE0cQ==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + + use-sync-external-store@1.2.2: + resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + uuid@9.0.1: + resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} + hasBin: true + + uvu@0.5.6: + resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==} + engines: {node: '>=8'} + hasBin: true + + vfile-message@3.1.4: + resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} + vfile-message@4.0.2: resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} + vfile@5.3.7: + resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} + vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} @@ -3985,6 +5585,27 @@ packages: peerDependencies: vite: '*' + vite-plugin-svgr@3.3.0: + resolution: {integrity: sha512-vWZMCcGNdPqgziYFKQ3Y95XP0d0YGp28+MM3Dp9cTa/px5CKcHHrIoPl2Jw81rgVm6/ZUNONzjXbZQZ7Kw66og==} + peerDependencies: + vite: ^2.6.0 || 3 || 4 + + vite@2.9.18: + resolution: {integrity: sha512-sAOqI5wNM9QvSEE70W3UGMdT8cyEn0+PmJMTFvTB8wB0YbYUWw3gUbY62AOyrXosGieF2htmeLATvNxpv/zNyQ==} + engines: {node: '>=12.2.0'} + hasBin: true + peerDependencies: + less: '*' + sass: '*' + stylus: '*' + peerDependenciesMeta: + less: + optional: true + sass: + optional: true + stylus: + optional: true + vite@5.4.8: resolution: {integrity: sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==} engines: {node: ^18.0.0 || >=20.0.0} @@ -4128,6 +5749,9 @@ packages: resolution: {tarball: https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/6dbe4f044502a7a285e815896f56304a808fe25b} version: 0.9.14 + wcwidth@1.0.1: + resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + webidl-conversions@4.0.2: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} @@ -4183,6 +5807,10 @@ packages: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -4234,6 +5862,11 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + yaml@2.6.0: + resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} + engines: {node: '>= 14'} + hasBin: true + yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} @@ -4250,6 +5883,10 @@ packages: resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} + yoctocolors-cjs@2.1.2: + resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==} + engines: {node: '>=18'} + zod-validation-error@3.4.0: resolution: {integrity: sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==} engines: {node: '>=18.0.0'} @@ -4368,6 +6005,8 @@ snapshots: '@algolia/logger-common': 4.24.0 '@algolia/requester-common': 4.24.0 + '@alloc/quick-lru@5.2.0': {} + '@ampproject/remapping@2.3.0': dependencies: '@jridgewell/gen-mapping': 0.3.5 @@ -4756,6 +6395,99 @@ snapshots: style-mod: 4.1.2 w3c-keyname: 2.2.8 + '@databases/connection-pool@1.1.0': + dependencies: + '@databases/queue': 1.0.1 + is-promise: 4.0.0 + + '@databases/escape-identifier@1.0.3': + dependencies: + '@databases/validate-unicode': 1.0.0 + + '@databases/lock@2.1.0': + dependencies: + '@databases/queue': 1.0.1 + + '@databases/migrations-base@3.0.1': + dependencies: + assert-never: 1.3.0 + chalk: 4.1.2 + deep-equal: 2.2.3 + interrogator: 2.0.1 + is-interactive: 1.0.0 + parameter-reducers: 2.1.0 + semver: 7.6.3 + + '@databases/pg-config@3.2.0(typescript@5.6.3)': + dependencies: + cosmiconfig: 8.3.6(typescript@5.6.3) + funtypes: 4.2.0 + transitivePeerDependencies: + - typescript + + '@databases/pg-connection-string@1.0.0': {} + + '@databases/pg-data-type-id@3.0.0': {} + + '@databases/pg-errors@1.0.0': {} + + '@databases/pg-migrations@5.0.3(typescript@5.6.3)': + dependencies: + '@databases/migrations-base': 3.0.1 + '@databases/pg': 5.5.0(typescript@5.6.3) + '@databases/pg-config': 3.2.0(typescript@5.6.3) + assert-never: 1.3.0 + chalk: 4.1.2 + interrogator: 2.0.1 + is-interactive: 1.0.0 + parameter-reducers: 2.1.0 + semver: 7.6.3 + sucrase: 3.35.0 + transitivePeerDependencies: + - pg-native + - typescript + + '@databases/pg@5.5.0(typescript@5.6.3)': + dependencies: + '@babel/code-frame': 7.25.7 + '@databases/escape-identifier': 1.0.3 + '@databases/pg-config': 3.2.0(typescript@5.6.3) + '@databases/pg-connection-string': 1.0.0 + '@databases/pg-data-type-id': 3.0.0 + '@databases/pg-errors': 1.0.0 + '@databases/push-to-async-iterable': 3.0.0 + '@databases/shared': 3.1.0 + '@databases/split-sql-query': 1.0.4(@databases/sql@3.3.0) + '@databases/sql': 3.3.0 + assert-never: 1.3.0 + pg: 8.13.0 + pg-cursor: 2.12.0(pg@8.13.0) + transitivePeerDependencies: + - pg-native + - typescript + + '@databases/push-to-async-iterable@3.0.0': + dependencies: + '@databases/queue': 1.0.1 + + '@databases/queue@1.0.1': {} + + '@databases/shared@3.1.0': + dependencies: + '@databases/connection-pool': 1.1.0 + '@databases/lock': 2.1.0 + '@databases/queue': 1.0.1 + '@databases/split-sql-query': 1.0.4(@databases/sql@3.3.0) + '@databases/sql': 3.3.0 + + '@databases/split-sql-query@1.0.4(@databases/sql@3.3.0)': + dependencies: + '@databases/sql': 3.3.0 + + '@databases/sql@3.3.0': {} + + '@databases/validate-unicode@1.0.0': {} + '@docsearch/css@3.6.2': {} '@docsearch/js@3.6.2(@algolia/client-search@4.24.0)(@types/react@18.3.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.2)': @@ -4877,6 +6609,9 @@ snapshots: '@esbuild/linux-ia32@0.23.1': optional: true + '@esbuild/linux-loong64@0.14.54': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true @@ -5096,6 +6831,23 @@ snapshots: '@eslint/js@8.57.1': {} + '@faker-js/faker@8.4.1': {} + + '@firefox-devtools/react-contextmenu@5.1.1(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + classnames: 2.5.1 + object-assign: 4.1.1 + prop-types: 15.8.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@headlessui/react@1.7.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@tanstack/react-virtual': 3.10.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + client-only: 0.0.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + '@humanwhocodes/config-array@0.13.0': dependencies: '@humanwhocodes/object-schema': 2.0.3 @@ -5108,6 +6860,8 @@ snapshots: '@humanwhocodes/object-schema@2.0.3': {} + '@inquirer/figures@1.0.7': {} + '@isaacs/cliui@8.0.2': dependencies: string-width: 5.1.2 @@ -5117,10 +6871,23 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@jest/expect-utils@29.7.0': + dependencies: + jest-get-type: 29.6.3 + '@jest/schemas@29.6.3': dependencies: '@sinclair/typebox': 0.27.8 + '@jest/types@29.6.3': + dependencies: + '@jest/schemas': 29.6.3 + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 + '@types/node': 20.16.11 + '@types/yargs': 17.0.33 + chalk: 4.1.2 + '@jridgewell/gen-mapping@0.3.5': dependencies: '@jridgewell/set-array': 1.2.1 @@ -5245,6 +7012,14 @@ snapshots: '@pkgjs/parseargs@0.11.0': optional: true + '@pkgr/core@0.1.1': {} + + '@popperjs/core@2.11.8': {} + + '@remirror/core-constants@3.0.0': {} + + '@remix-run/router@1.20.0': {} + '@rollup/pluginutils@5.1.2(rollup@4.24.0)': dependencies: '@types/estree': 1.0.6 @@ -5368,47 +7143,330 @@ snapshots: '@sinclair/typebox@0.27.8': {} - '@testing-library/dom@10.4.0': + '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.25.8)': dependencies: - '@babel/code-frame': 7.25.7 - '@babel/runtime': 7.25.7 - '@types/aria-query': 5.0.4 - aria-query: 5.3.0 - chalk: 4.1.2 - dom-accessibility-api: 0.5.16 - lz-string: 1.5.0 - pretty-format: 27.5.1 + '@babel/core': 7.25.8 - '@testing-library/dom@9.3.4': + '@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.25.8)': dependencies: - '@babel/code-frame': 7.25.7 - '@babel/runtime': 7.25.7 - '@types/aria-query': 5.0.4 - aria-query: 5.1.3 - chalk: 4.1.2 - dom-accessibility-api: 0.5.16 - lz-string: 1.5.0 - pretty-format: 27.5.1 + '@babel/core': 7.25.8 - '@testing-library/react@16.0.1(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.25.8)': dependencies: - '@babel/runtime': 7.25.7 - '@testing-library/dom': 10.4.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - optionalDependencies: - '@types/react': 18.3.11 - '@types/react-dom': 18.3.0 + '@babel/core': 7.25.8 - '@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.11)(vue@3.5.11(typescript@5.6.3))': + '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.25.8)': dependencies: - '@babel/runtime': 7.25.7 - '@testing-library/dom': 9.3.4 - '@vue/test-utils': 2.4.6 + '@babel/core': 7.25.8 + + '@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.25.8)': + dependencies: + '@babel/core': 7.25.8 + + '@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.25.8)': + dependencies: + '@babel/core': 7.25.8 + + '@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.25.8)': + dependencies: + '@babel/core': 7.25.8 + + '@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.25.8)': + dependencies: + '@babel/core': 7.25.8 + + '@svgr/babel-preset@8.1.0(@babel/core@7.25.8)': + dependencies: + '@babel/core': 7.25.8 + '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.25.8) + '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.25.8) + '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.25.8) + '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.25.8) + '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.25.8) + '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.25.8) + '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.25.8) + '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.25.8) + + '@svgr/core@8.1.0(typescript@5.6.3)': + dependencies: + '@babel/core': 7.25.8 + '@svgr/babel-preset': 8.1.0(@babel/core@7.25.8) + camelcase: 6.3.0 + cosmiconfig: 8.3.6(typescript@5.6.3) + snake-case: 3.0.4 + transitivePeerDependencies: + - supports-color + - typescript + + '@svgr/hast-util-to-babel-ast@8.0.0': + dependencies: + '@babel/types': 7.25.8 + entities: 4.5.0 + + '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.6.3))': + dependencies: + '@babel/core': 7.25.8 + '@svgr/babel-preset': 8.1.0(@babel/core@7.25.8) + '@svgr/core': 8.1.0(typescript@5.6.3) + '@svgr/hast-util-to-babel-ast': 8.0.0 + svg-parser: 2.0.4 + transitivePeerDependencies: + - supports-color + + '@svgr/plugin-svgo@8.1.0(@svgr/core@8.1.0(typescript@5.6.3))(typescript@5.6.3)': + dependencies: + '@svgr/core': 8.1.0(typescript@5.6.3) + cosmiconfig: 8.3.6(typescript@5.6.3) + deepmerge: 4.3.1 + svgo: 3.3.2 + transitivePeerDependencies: + - typescript + + '@tailwindcss/forms@0.5.9(tailwindcss@3.4.13)': + dependencies: + mini-svg-data-uri: 1.4.4 + tailwindcss: 3.4.13 + + '@tailwindcss/typography@0.5.15(tailwindcss@3.4.13)': + dependencies: + lodash.castarray: 4.4.0 + lodash.isplainobject: 4.0.6 + lodash.merge: 4.6.2 + postcss-selector-parser: 6.0.10 + tailwindcss: 3.4.13 + + '@tanstack/react-virtual@3.10.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@tanstack/virtual-core': 3.10.8 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@tanstack/virtual-core@3.10.8': {} + + '@testing-library/dom@10.4.0': + dependencies: + '@babel/code-frame': 7.25.7 + '@babel/runtime': 7.25.7 + '@types/aria-query': 5.0.4 + aria-query: 5.3.0 + chalk: 4.1.2 + dom-accessibility-api: 0.5.16 + lz-string: 1.5.0 + pretty-format: 27.5.1 + + '@testing-library/dom@9.3.4': + dependencies: + '@babel/code-frame': 7.25.7 + '@babel/runtime': 7.25.7 + '@types/aria-query': 5.0.4 + aria-query: 5.1.3 + chalk: 4.1.2 + dom-accessibility-api: 0.5.16 + lz-string: 1.5.0 + pretty-format: 27.5.1 + + '@testing-library/react@16.0.1(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.7 + '@testing-library/dom': 10.4.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.11 + '@types/react-dom': 18.3.0 + + '@testing-library/vue@8.1.0(@vue/compiler-sfc@3.5.11)(vue@3.5.11(typescript@5.6.3))': + dependencies: + '@babel/runtime': 7.25.7 + '@testing-library/dom': 9.3.4 + '@vue/test-utils': 2.4.6 vue: 3.5.11(typescript@5.6.3) optionalDependencies: '@vue/compiler-sfc': 3.5.11 + '@tiptap/core@2.8.0(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-blockquote@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-bold@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-bubble-menu@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + tippy.js: 6.3.7 + + '@tiptap/extension-bullet-list@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/extension-list-item@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))(@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/extension-list-item': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-text-style': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + + '@tiptap/extension-code-block@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-code@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-document@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-dropcursor@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-floating-menu@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + tippy.js: 6.3.7 + + '@tiptap/extension-gapcursor@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-hard-break@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-heading@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-history@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-horizontal-rule@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-italic@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-list-item@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-ordered-list@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/extension-list-item@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))(@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/extension-list-item': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-text-style': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + + '@tiptap/extension-paragraph@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-placeholder@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-strike@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-table-cell@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-table-header@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-table-row@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-table@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + + '@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/extension-text@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + + '@tiptap/pm@2.8.0': + dependencies: + prosemirror-changeset: 2.2.1 + prosemirror-collab: 1.3.1 + prosemirror-commands: 1.6.1 + prosemirror-dropcursor: 1.8.1 + prosemirror-gapcursor: 1.3.2 + prosemirror-history: 1.4.1 + prosemirror-inputrules: 1.4.0 + prosemirror-keymap: 1.2.2 + prosemirror-markdown: 1.13.1 + prosemirror-menu: 1.2.4 + prosemirror-model: 1.23.0 + prosemirror-schema-basic: 1.2.3 + prosemirror-schema-list: 1.4.1 + prosemirror-state: 1.4.3 + prosemirror-tables: 1.5.0 + prosemirror-trailing-node: 3.0.0(prosemirror-model@1.23.0)(prosemirror-state@1.4.3)(prosemirror-view@1.34.3) + prosemirror-transform: 1.10.2 + prosemirror-view: 1.34.3 + + '@tiptap/react@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/extension-bubble-menu': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-floating-menu': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/pm': 2.8.0 + '@types/use-sync-external-store': 0.0.6 + fast-deep-equal: 3.1.3 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + use-sync-external-store: 1.2.2(react@18.3.1) + + '@tiptap/starter-kit@2.8.0(@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))': + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@tiptap/extension-blockquote': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-bold': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-bullet-list': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/extension-list-item@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))(@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))) + '@tiptap/extension-code': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-code-block': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-document': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-dropcursor': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-gapcursor': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-hard-break': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-heading': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-history': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-horizontal-rule': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/pm@2.8.0) + '@tiptap/extension-italic': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-list-item': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-ordered-list': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))(@tiptap/extension-list-item@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)))(@tiptap/extension-text-style@2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0))) + '@tiptap/extension-paragraph': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-strike': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/extension-text': 2.8.0(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)) + '@tiptap/pm': 2.8.0 + transitivePeerDependencies: + - '@tiptap/extension-text-style' + + '@trysound/sax@0.2.0': {} + '@types/argparse@1.0.38': {} '@types/aria-query@5.0.4': {} @@ -5438,27 +7496,80 @@ snapshots: dependencies: '@types/node': 20.16.11 + '@types/debug@4.1.12': + dependencies: + '@types/ms': 0.7.34 + '@types/emscripten@1.39.13': {} '@types/estree@1.0.6': {} + '@types/hast@2.3.10': + dependencies: + '@types/unist': 2.0.11 + '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 + '@types/history@4.7.11': {} + + '@types/hoist-non-react-statics@3.3.5': + dependencies: + '@types/react': 18.3.11 + hoist-non-react-statics: 3.3.2 + + '@types/istanbul-lib-coverage@2.0.6': {} + + '@types/istanbul-lib-report@3.0.3': + dependencies: + '@types/istanbul-lib-coverage': 2.0.6 + + '@types/istanbul-reports@3.0.4': + dependencies: + '@types/istanbul-lib-report': 3.0.3 + + '@types/jest@29.5.13': + dependencies: + expect: 29.7.0 + pretty-format: 29.7.0 + + '@types/json-schema@7.0.15': {} + + '@types/linkify-it@3.0.5': {} + '@types/linkify-it@5.0.0': {} + '@types/lodash.debounce@4.0.9': + dependencies: + '@types/lodash': 4.17.10 + + '@types/lodash@4.17.10': {} + + '@types/markdown-it@13.0.9': + dependencies: + '@types/linkify-it': 3.0.5 + '@types/mdurl': 1.0.5 + '@types/markdown-it@14.1.2': dependencies: '@types/linkify-it': 5.0.0 '@types/mdurl': 2.0.0 + '@types/mdast@3.0.15': + dependencies: + '@types/unist': 2.0.11 + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 + '@types/mdurl@1.0.5': {} + '@types/mdurl@2.0.0': {} + '@types/ms@0.7.34': {} + '@types/node-fetch@2.6.11': dependencies: '@types/node': 20.16.11 @@ -5472,19 +7583,96 @@ snapshots: '@types/prop-types@15.7.13': {} + '@types/react-beautiful-dnd@13.1.8': + dependencies: + '@types/react': 18.3.11 + '@types/react-dom@18.3.0': dependencies: '@types/react': 18.3.11 + '@types/react-redux@7.1.34': + dependencies: + '@types/hoist-non-react-statics': 3.3.5 + '@types/react': 18.3.11 + hoist-non-react-statics: 3.3.2 + redux: 4.2.1 + + '@types/react-router-dom@5.3.3': + dependencies: + '@types/history': 4.7.11 + '@types/react': 18.3.11 + '@types/react-router': 5.1.20 + + '@types/react-router@5.1.20': + dependencies: + '@types/history': 4.7.11 + '@types/react': 18.3.11 + + '@types/react-window@1.8.8': + dependencies: + '@types/react': 18.3.11 + '@types/react@18.3.11': dependencies: '@types/prop-types': 15.7.13 csstype: 3.1.3 + '@types/semver@7.5.8': {} + + '@types/stack-utils@2.0.3': {} + + '@types/svgo@2.6.4': + dependencies: + '@types/node': 20.16.11 + + '@types/unist@2.0.11': {} + '@types/unist@3.0.3': {} + '@types/use-sync-external-store@0.0.6': {} + + '@types/uuid@9.0.8': {} + + '@types/vite-plugin-react-svg@0.2.5': + dependencies: + '@types/node': 20.16.11 + '@types/react': 18.3.11 + '@types/svgo': 2.6.4 + vite: 2.9.18 + transitivePeerDependencies: + - less + - sass + - stylus + '@types/web-bluetooth@0.0.20': {} + '@types/yargs-parser@21.0.3': {} + + '@types/yargs@17.0.33': + dependencies: + '@types/yargs-parser': 21.0.3 + + '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3)': + dependencies: + '@eslint-community/regexpp': 4.11.1 + '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.6.3) + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.1)(typescript@5.6.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.6.3) + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.3.7 + eslint: 8.57.1 + graphemer: 1.4.0 + ignore: 5.3.2 + natural-compare: 1.4.0 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.3) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3))(eslint@8.57.1)(typescript@5.6.3)': dependencies: '@eslint-community/regexpp': 4.11.1 @@ -5503,6 +7691,19 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.6.3)': + dependencies: + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.3) + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.3.7 + eslint: 8.57.1 + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/parser@7.18.0(eslint@8.57.1)(typescript@5.6.3)': dependencies: '@typescript-eslint/scope-manager': 7.18.0 @@ -5516,6 +7717,11 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/scope-manager@6.21.0': + dependencies: + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 + '@typescript-eslint/scope-manager@7.18.0': dependencies: '@typescript-eslint/types': 7.18.0 @@ -5526,6 +7732,18 @@ snapshots: '@typescript-eslint/types': 8.8.1 '@typescript-eslint/visitor-keys': 8.8.1 + '@typescript-eslint/type-utils@6.21.0(eslint@8.57.1)(typescript@5.6.3)': + dependencies: + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.3) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.1)(typescript@5.6.3) + debug: 4.3.7 + eslint: 8.57.1 + ts-api-utils: 1.3.0(typescript@5.6.3) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/type-utils@7.18.0(eslint@8.57.1)(typescript@5.6.3)': dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3) @@ -5550,10 +7768,27 @@ snapshots: - eslint - supports-color + '@typescript-eslint/types@6.21.0': {} + '@typescript-eslint/types@7.18.0': {} '@typescript-eslint/types@8.8.1': {} + '@typescript-eslint/typescript-estree@6.21.0(typescript@5.6.3)': + dependencies: + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/visitor-keys': 6.21.0 + debug: 4.3.7 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.3 + semver: 7.6.3 + ts-api-utils: 1.3.0(typescript@5.6.3) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.3)': dependencies: '@typescript-eslint/types': 7.18.0 @@ -5584,6 +7819,20 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/utils@6.21.0(eslint@8.57.1)(typescript@5.6.3)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 6.21.0 + '@typescript-eslint/types': 6.21.0 + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.6.3) + eslint: 8.57.1 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + - typescript + '@typescript-eslint/utils@7.18.0(eslint@8.57.1)(typescript@5.6.3)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.1) @@ -5606,6 +7855,11 @@ snapshots: - supports-color - typescript + '@typescript-eslint/visitor-keys@6.21.0': + dependencies: + '@typescript-eslint/types': 6.21.0 + eslint-visitor-keys: 3.4.3 + '@typescript-eslint/visitor-keys@7.18.0': dependencies: '@typescript-eslint/types': 7.18.0 @@ -5966,8 +8220,14 @@ snapshots: '@algolia/requester-node-http': 4.24.0 '@algolia/transporter': 4.24.0 + animate.css@4.1.1: {} + ansi-colors@4.1.3: {} + ansi-escapes@4.3.2: + dependencies: + type-fest: 0.21.3 + ansi-regex@5.0.1: {} ansi-regex@6.1.0: {} @@ -5991,6 +8251,8 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 + arg@5.0.2: {} + argparse@1.0.10: dependencies: sprintf-js: 1.0.3 @@ -6016,6 +8278,8 @@ snapshots: dependencies: printable-characters: 1.0.42 + assert-never@1.3.0: {} + assertion-error@1.1.0: {} assertion-error@2.0.1: {} @@ -6032,10 +8296,22 @@ snapshots: asynckit@0.4.0: {} + autoprefixer@10.4.20(postcss@8.4.47): + dependencies: + browserslist: 4.24.0 + caniuse-lite: 1.0.30001668 + fraction.js: 4.3.7 + normalize-range: 0.1.2 + picocolors: 1.1.0 + postcss: 8.4.47 + postcss-value-parser: 4.2.0 + available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.0.0 + bail@2.0.2: {} + balanced-match@1.0.2: {} base64-js@1.5.1: {} @@ -6091,6 +8367,8 @@ snapshots: node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.0) + buffer-equal-constant-time@1.0.1: {} + buffer-from@1.1.2: {} buffer@5.7.1: @@ -6129,7 +8407,11 @@ snapshots: get-intrinsic: 1.2.4 set-function-length: 1.2.2 - callsites@3.1.0: {} + callsites@3.1.0: {} + + camelcase-css@2.0.1: {} + + camelcase@6.3.0: {} caniuse-lite@1.0.30001668: {} @@ -6168,6 +8450,8 @@ snapshots: character-entities-legacy@3.0.0: {} + character-entities@2.0.2: {} + chardet@0.7.0: {} check-error@1.0.3: @@ -6192,12 +8476,28 @@ snapshots: ci-info@3.9.0: {} + classnames@2.5.1: {} + + cli-cursor@3.1.0: + dependencies: + restore-cursor: 3.1.0 + + cli-spinners@2.9.2: {} + + cli-width@4.1.0: {} + + client-only@0.0.1: {} + cliui@8.0.1: dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 + clone@1.0.4: {} + + clsx@1.2.1: {} + codemirror@6.0.1(@lezer/common@1.2.2): dependencies: '@codemirror/autocomplete': 6.18.1(@codemirror/language@6.10.3)(@codemirror/state@6.4.1)(@codemirror/view@6.34.1)(@lezer/common@1.2.2) @@ -6234,6 +8534,8 @@ snapshots: commander@4.1.1: {} + commander@7.2.0: {} + compare-versions@6.1.1: {} computeds@0.0.1: {} @@ -6269,6 +8571,15 @@ snapshots: corser@2.0.1: {} + cosmiconfig@8.3.6(typescript@5.6.3): + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + optionalDependencies: + typescript: 5.6.3 + crelt@1.0.6: {} cross-spawn@5.1.0: @@ -6283,8 +8594,36 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 + css-box-model@1.2.1: + dependencies: + tiny-invariant: 1.3.3 + + css-select@5.1.0: + dependencies: + boolbase: 1.0.0 + css-what: 6.1.0 + domhandler: 5.0.3 + domutils: 3.1.0 + nth-check: 2.1.1 + + css-tree@2.2.1: + dependencies: + mdn-data: 2.0.28 + source-map-js: 1.2.1 + + css-tree@2.3.1: + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.2.1 + + css-what@6.1.0: {} + cssesc@3.0.0: {} + csso@5.0.5: + dependencies: + css-tree: 2.2.1 + cssstyle@4.1.0: dependencies: rrweb-cssom: 0.7.1 @@ -6300,6 +8639,8 @@ snapshots: dependencies: '@babel/runtime': 7.25.7 + dayjs@1.11.13: {} + de-indent@1.0.2: {} debug@3.2.7: @@ -6312,6 +8653,10 @@ snapshots: decimal.js@10.4.3: {} + decode-named-character-reference@1.0.2: + dependencies: + character-entities: 2.0.2 + decompress-response@6.0.0: dependencies: mimic-response: 3.1.0 @@ -6349,6 +8694,12 @@ snapshots: deep-is@0.1.4: {} + deepmerge@4.3.1: {} + + defaults@1.0.4: + dependencies: + clone: 1.0.4 + define-data-property@1.1.4: dependencies: es-define-property: 1.0.0 @@ -6373,20 +8724,64 @@ snapshots: dependencies: dequal: 2.0.3 + didyoumean@1.2.2: {} + diff-sequences@29.6.3: {} + diff@5.2.0: {} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 + dlv@1.1.3: {} + doctrine@3.0.0: dependencies: esutils: 2.0.3 dom-accessibility-api@0.5.16: {} + dom-serializer@2.0.0: + dependencies: + domelementtype: 2.3.0 + domhandler: 5.0.3 + entities: 4.5.0 + + domelementtype@2.3.0: {} + + domhandler@5.0.3: + dependencies: + domelementtype: 2.3.0 + + domutils@3.1.0: + dependencies: + dom-serializer: 2.0.0 + domelementtype: 2.3.0 + domhandler: 5.0.3 + + dot-case@3.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.7.0 + + dotenv-cli@7.4.2: + dependencies: + cross-spawn: 7.0.3 + dotenv: 16.4.5 + dotenv-expand: 10.0.0 + minimist: 1.2.8 + + dotenv-expand@10.0.0: {} + + dotenv@16.4.5: {} + eastasianwidth@0.2.0: {} + ecdsa-sig-formatter@1.0.11: + dependencies: + safe-buffer: 5.2.1 + editorconfig@1.0.4: dependencies: '@one-ini/wasm': 0.1.1 @@ -6427,6 +8822,10 @@ snapshots: entities@4.5.0: {} + error-ex@1.3.2: + dependencies: + is-arrayish: 0.2.1 + es-define-property@1.0.0: dependencies: get-intrinsic: 1.2.4 @@ -6445,6 +8844,90 @@ snapshots: isarray: 2.0.5 stop-iteration-iterator: 1.0.0 + esbuild-android-64@0.14.54: + optional: true + + esbuild-android-arm64@0.14.54: + optional: true + + esbuild-darwin-64@0.14.54: + optional: true + + esbuild-darwin-arm64@0.14.54: + optional: true + + esbuild-freebsd-64@0.14.54: + optional: true + + esbuild-freebsd-arm64@0.14.54: + optional: true + + esbuild-linux-32@0.14.54: + optional: true + + esbuild-linux-64@0.14.54: + optional: true + + esbuild-linux-arm64@0.14.54: + optional: true + + esbuild-linux-arm@0.14.54: + optional: true + + esbuild-linux-mips64le@0.14.54: + optional: true + + esbuild-linux-ppc64le@0.14.54: + optional: true + + esbuild-linux-riscv64@0.14.54: + optional: true + + esbuild-linux-s390x@0.14.54: + optional: true + + esbuild-netbsd-64@0.14.54: + optional: true + + esbuild-openbsd-64@0.14.54: + optional: true + + esbuild-sunos-64@0.14.54: + optional: true + + esbuild-windows-32@0.14.54: + optional: true + + esbuild-windows-64@0.14.54: + optional: true + + esbuild-windows-arm64@0.14.54: + optional: true + + esbuild@0.14.54: + optionalDependencies: + '@esbuild/linux-loong64': 0.14.54 + esbuild-android-64: 0.14.54 + esbuild-android-arm64: 0.14.54 + esbuild-darwin-64: 0.14.54 + esbuild-darwin-arm64: 0.14.54 + esbuild-freebsd-64: 0.14.54 + esbuild-freebsd-arm64: 0.14.54 + esbuild-linux-32: 0.14.54 + esbuild-linux-64: 0.14.54 + esbuild-linux-arm: 0.14.54 + esbuild-linux-arm64: 0.14.54 + esbuild-linux-mips64le: 0.14.54 + esbuild-linux-ppc64le: 0.14.54 + esbuild-linux-riscv64: 0.14.54 + esbuild-linux-s390x: 0.14.54 + esbuild-netbsd-64: 0.14.54 + esbuild-openbsd-64: 0.14.54 + esbuild-sunos-64: 0.14.54 + esbuild-windows-32: 0.14.54 + esbuild-windows-64: 0.14.54 + esbuild-windows-arm64: 0.14.54 + esbuild@0.21.5: optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 @@ -6502,8 +8985,23 @@ snapshots: escape-string-regexp@1.0.5: {} + escape-string-regexp@2.0.0: {} + escape-string-regexp@4.0.0: {} + eslint-config-prettier@9.1.0(eslint@8.57.1): + dependencies: + eslint: 8.57.1 + + eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0(eslint@8.57.1))(eslint@8.57.1)(prettier@3.3.3): + dependencies: + eslint: 8.57.1 + prettier: 3.3.3 + prettier-linter-helpers: 1.0.0 + synckit: 0.9.2 + optionalDependencies: + eslint-config-prettier: 9.1.0(eslint@8.57.1) + eslint-plugin-react-compiler@0.0.0-experimental-9ed098e-20240725(eslint@8.57.1): dependencies: '@babel/core': 7.25.8 @@ -6770,6 +9268,16 @@ snapshots: expand-template@2.0.3: {} + expect@29.7.0: + dependencies: + '@jest/expect-utils': 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + + extend@3.0.2: {} + extendable-error@0.1.7: {} external-editor@3.1.0: @@ -6780,6 +9288,8 @@ snapshots: fast-deep-equal@3.1.3: {} + fast-diff@1.3.0: {} + fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 @@ -6849,8 +9359,18 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 + fraction.js@4.3.7: {} + + fractional-indexing@3.2.0: {} + fs-constants@1.0.0: {} + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + fs-extra@7.0.1: dependencies: graceful-fs: 4.2.11 @@ -6875,6 +9395,8 @@ snapshots: functions-have-names@1.2.3: {} + funtypes@4.2.0: {} + gensync@1.0.0-beta.2: {} get-caller-file@2.0.5: {} @@ -6988,6 +9510,8 @@ snapshots: stringify-entities: 4.0.4 zwitch: 2.0.4 + hast-util-whitespace@2.0.1: {} + hast-util-whitespace@3.0.0: dependencies: '@types/hast': 3.0.4 @@ -7000,6 +9524,10 @@ snapshots: dependencies: hermes-estree: 0.20.1 + hoist-non-react-statics@3.3.2: + dependencies: + react-is: 16.13.1 + hookable@5.5.3: {} html-encoding-sniffer@3.0.0: @@ -7089,12 +9617,33 @@ snapshots: ini@1.3.8: {} + inline-style-parser@0.1.1: {} + + inquirer@9.3.7: + dependencies: + '@inquirer/figures': 1.0.7 + ansi-escapes: 4.3.2 + cli-width: 4.1.0 + external-editor: 3.1.0 + mute-stream: 1.0.0 + ora: 5.4.1 + run-async: 3.0.0 + rxjs: 7.8.1 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.2 + internal-slot@1.0.7: dependencies: es-errors: 1.3.0 hasown: 2.0.2 side-channel: 1.0.6 + interrogator@2.0.1: + dependencies: + inquirer: 9.3.7 + is-arguments@1.1.1: dependencies: call-bind: 1.0.7 @@ -7105,6 +9654,8 @@ snapshots: call-bind: 1.0.7 get-intrinsic: 1.2.4 + is-arrayish@0.2.1: {} + is-bigint@1.0.4: dependencies: has-bigints: 1.0.2 @@ -7118,6 +9669,8 @@ snapshots: call-bind: 1.0.7 has-tostringtag: 1.0.2 + is-buffer@2.0.5: {} + is-callable@1.2.7: {} is-core-module@2.15.1: @@ -7146,6 +9699,8 @@ snapshots: transitivePeerDependencies: - supports-color + is-interactive@1.0.0: {} + is-map@2.0.3: {} is-number-object@1.0.7: @@ -7156,8 +9711,12 @@ snapshots: is-path-inside@3.0.3: {} + is-plain-obj@4.1.0: {} + is-potential-custom-element-name@1.0.1: {} + is-promise@4.0.0: {} + is-regex@1.1.4: dependencies: call-bind: 1.0.7 @@ -7185,6 +9744,8 @@ snapshots: dependencies: has-symbols: 1.0.3 + is-unicode-supported@0.1.0: {} + is-weakmap@2.0.2: {} is-weakset@2.0.3: @@ -7206,6 +9767,45 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 + jest-diff@29.7.0: + dependencies: + chalk: 4.1.2 + diff-sequences: 29.6.3 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-get-type@29.6.3: {} + + jest-matcher-utils@29.7.0: + dependencies: + chalk: 4.1.2 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 + + jest-message-util@29.7.0: + dependencies: + '@babel/code-frame': 7.25.7 + '@jest/types': 29.6.3 + '@types/stack-utils': 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + pretty-format: 29.7.0 + slash: 3.0.0 + stack-utils: 2.0.6 + + jest-util@29.7.0: + dependencies: + '@jest/types': 29.6.3 + '@types/node': 20.16.11 + chalk: 4.1.2 + ci-info: 3.9.0 + graceful-fs: 4.2.11 + picomatch: 2.3.1 + + jiti@1.21.6: {} + jju@1.4.0: {} joycon@3.1.1: {} @@ -7265,6 +9865,8 @@ snapshots: json-buffer@3.0.1: {} + json-parse-even-better-errors@2.3.1: {} + json-schema-traverse@0.4.1: {} json-schema-traverse@1.0.0: {} @@ -7277,10 +9879,42 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 + jsonfile@6.1.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + jsonwebtoken@9.0.2: + dependencies: + jws: 3.2.2 + lodash.includes: 4.3.0 + lodash.isboolean: 3.0.3 + lodash.isinteger: 4.0.4 + lodash.isnumber: 3.0.3 + lodash.isplainobject: 4.0.6 + lodash.isstring: 4.0.1 + lodash.once: 4.1.1 + ms: 2.1.3 + semver: 7.6.3 + + jwa@1.4.1: + dependencies: + buffer-equal-constant-time: 1.0.1 + ecdsa-sig-formatter: 1.0.11 + safe-buffer: 5.2.1 + + jws@3.2.2: + dependencies: + jwa: 1.4.1 + safe-buffer: 5.2.1 + keyv@4.5.4: dependencies: json-buffer: 3.0.1 + kleur@4.1.5: {} + kolorist@1.8.0: {} levn@0.4.1: @@ -7288,10 +9922,16 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + lilconfig@2.1.0: {} + lilconfig@3.1.2: {} lines-and-columns@1.2.4: {} + linkify-it@5.0.0: + dependencies: + uc.micro: 2.1.0 + load-tsconfig@0.2.5: {} local-pkg@0.5.0: @@ -7307,14 +9947,37 @@ snapshots: dependencies: p-locate: 5.0.0 + lodash.castarray@4.4.0: {} + + lodash.debounce@4.0.8: {} + + lodash.includes@4.3.0: {} + + lodash.isboolean@3.0.3: {} + + lodash.isinteger@4.0.4: {} + + lodash.isnumber@3.0.3: {} + + lodash.isplainobject@4.0.6: {} + + lodash.isstring@4.0.1: {} + lodash.merge@4.6.2: {} + lodash.once@4.1.1: {} + lodash.sortby@4.7.0: {} lodash.startcase@4.4.0: {} lodash@4.17.21: {} + log-symbols@4.1.0: + dependencies: + chalk: 4.1.2 + is-unicode-supported: 0.1.0 + loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 @@ -7325,6 +9988,10 @@ snapshots: loupe@3.1.2: {} + lower-case@2.0.2: + dependencies: + tslib: 2.7.0 + lru-cache@10.4.3: {} lru-cache@4.1.5: @@ -7348,6 +10015,51 @@ snapshots: mark.js@8.11.1: {} + markdown-it-task-lists@2.1.1: {} + + markdown-it@14.1.0: + dependencies: + argparse: 2.0.1 + entities: 4.5.0 + linkify-it: 5.0.0 + mdurl: 2.0.0 + punycode.js: 2.3.1 + uc.micro: 2.1.0 + + mdast-util-definitions@5.1.2: + dependencies: + '@types/mdast': 3.0.15 + '@types/unist': 2.0.11 + unist-util-visit: 4.1.2 + + mdast-util-from-markdown@1.3.1: + dependencies: + '@types/mdast': 3.0.15 + '@types/unist': 2.0.11 + decode-named-character-reference: 1.0.2 + mdast-util-to-string: 3.2.0 + micromark: 3.2.0 + micromark-util-decode-numeric-character-reference: 1.1.0 + micromark-util-decode-string: 1.1.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + unist-util-stringify-position: 3.0.3 + uvu: 0.5.6 + transitivePeerDependencies: + - supports-color + + mdast-util-to-hast@12.3.0: + dependencies: + '@types/hast': 2.3.10 + '@types/mdast': 3.0.15 + mdast-util-definitions: 5.1.2 + micromark-util-sanitize-uri: 1.2.0 + trim-lines: 3.0.1 + unist-util-generated: 2.0.1 + unist-util-position: 4.0.4 + unist-util-visit: 4.1.2 + mdast-util-to-hast@13.2.0: dependencies: '@types/hast': 3.0.4 @@ -7360,27 +10072,172 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 + mdast-util-to-string@3.2.0: + dependencies: + '@types/mdast': 3.0.15 + + mdn-data@2.0.28: {} + + mdn-data@2.0.30: {} + + mdurl@2.0.0: {} + + memoize-one@5.2.1: {} + merge-stream@2.0.0: {} merge2@1.4.1: {} + micromark-core-commonmark@1.1.0: + dependencies: + decode-named-character-reference: 1.0.2 + micromark-factory-destination: 1.1.0 + micromark-factory-label: 1.1.0 + micromark-factory-space: 1.1.0 + micromark-factory-title: 1.1.0 + micromark-factory-whitespace: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-chunked: 1.1.0 + micromark-util-classify-character: 1.1.0 + micromark-util-html-tag-name: 1.2.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-resolve-all: 1.1.0 + micromark-util-subtokenize: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + + micromark-factory-destination@1.1.0: + dependencies: + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + + micromark-factory-label@1.1.0: + dependencies: + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + + micromark-factory-space@1.1.0: + dependencies: + micromark-util-character: 1.2.0 + micromark-util-types: 1.1.0 + + micromark-factory-title@1.1.0: + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + + micromark-factory-whitespace@1.1.0: + dependencies: + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + + micromark-util-character@1.2.0: + dependencies: + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + micromark-util-character@2.1.0: dependencies: micromark-util-symbol: 2.0.0 micromark-util-types: 2.0.0 + micromark-util-chunked@1.1.0: + dependencies: + micromark-util-symbol: 1.1.0 + + micromark-util-classify-character@1.1.0: + dependencies: + micromark-util-character: 1.2.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + + micromark-util-combine-extensions@1.1.0: + dependencies: + micromark-util-chunked: 1.1.0 + micromark-util-types: 1.1.0 + + micromark-util-decode-numeric-character-reference@1.1.0: + dependencies: + micromark-util-symbol: 1.1.0 + + micromark-util-decode-string@1.1.0: + dependencies: + decode-named-character-reference: 1.0.2 + micromark-util-character: 1.2.0 + micromark-util-decode-numeric-character-reference: 1.1.0 + micromark-util-symbol: 1.1.0 + + micromark-util-encode@1.1.0: {} + micromark-util-encode@2.0.0: {} + micromark-util-html-tag-name@1.2.0: {} + + micromark-util-normalize-identifier@1.1.0: + dependencies: + micromark-util-symbol: 1.1.0 + + micromark-util-resolve-all@1.1.0: + dependencies: + micromark-util-types: 1.1.0 + + micromark-util-sanitize-uri@1.2.0: + dependencies: + micromark-util-character: 1.2.0 + micromark-util-encode: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-sanitize-uri@2.0.0: dependencies: micromark-util-character: 2.1.0 micromark-util-encode: 2.0.0 micromark-util-symbol: 2.0.0 + micromark-util-subtokenize@1.1.0: + dependencies: + micromark-util-chunked: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + + micromark-util-symbol@1.1.0: {} + micromark-util-symbol@2.0.0: {} + micromark-util-types@1.1.0: {} + micromark-util-types@2.0.0: {} + micromark@3.2.0: + dependencies: + '@types/debug': 4.1.12 + debug: 4.3.7 + decode-named-character-reference: 1.0.2 + micromark-core-commonmark: 1.1.0 + micromark-factory-space: 1.1.0 + micromark-util-character: 1.2.0 + micromark-util-chunked: 1.1.0 + micromark-util-combine-extensions: 1.1.0 + micromark-util-decode-numeric-character-reference: 1.1.0 + micromark-util-encode: 1.1.0 + micromark-util-normalize-identifier: 1.1.0 + micromark-util-resolve-all: 1.1.0 + micromark-util-sanitize-uri: 1.2.0 + micromark-util-subtokenize: 1.1.0 + micromark-util-symbol: 1.1.0 + micromark-util-types: 1.1.0 + uvu: 0.5.6 + transitivePeerDependencies: + - supports-color + micromatch@4.0.8: dependencies: braces: 3.0.3 @@ -7400,6 +10257,8 @@ snapshots: mimic-response@3.1.0: {} + mini-svg-data-uri@1.4.4: {} + minimatch@10.0.1: dependencies: brace-expansion: 2.0.1 @@ -7416,6 +10275,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@9.0.3: + dependencies: + brace-expansion: 2.0.1 + minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 @@ -7447,6 +10310,8 @@ snapshots: muggle-string@0.4.1: {} + mute-stream@1.0.0: {} + mz@2.7.0: dependencies: any-promise: 1.3.0 @@ -7459,6 +10324,11 @@ snapshots: natural-compare@1.4.0: {} + no-case@3.0.4: + dependencies: + lower-case: 2.0.2 + tslib: 2.7.0 + node-abi@3.68.0: dependencies: semver: 7.6.3 @@ -7471,6 +10341,8 @@ snapshots: normalize-path@3.0.0: {} + normalize-range@0.1.2: {} + npm-run-path@4.0.1: dependencies: path-key: 3.1.1 @@ -7487,6 +10359,8 @@ snapshots: object-assign@4.1.1: {} + object-hash@3.0.0: {} + object-inspect@1.13.2: {} object-is@1.1.6: @@ -7530,6 +10404,20 @@ snapshots: type-check: 0.4.0 word-wrap: 1.2.5 + ora@5.4.1: + dependencies: + bl: 4.1.0 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-spinners: 2.9.2 + is-interactive: 1.0.0 + is-unicode-supported: 0.1.0 + log-symbols: 4.1.0 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + + orderedmap@2.1.1: {} + os-tmpdir@1.0.2: {} outdent@0.5.0: {} @@ -7566,10 +10454,19 @@ snapshots: package-manager-detector@0.2.2: {} + parameter-reducers@2.1.0: {} + parent-module@1.0.1: dependencies: callsites: 3.1.0 + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.25.7 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + parse5@7.1.2: dependencies: entities: 4.5.0 @@ -7606,6 +10503,10 @@ snapshots: pg-connection-string@2.7.0: {} + pg-cursor@2.12.0(pg@8.13.0): + dependencies: + pg: 8.13.0 + pg-int8@1.0.1: {} pg-pool@3.7.0(pg@8.13.0): @@ -7642,6 +10543,8 @@ snapshots: picomatch@4.0.2: {} + pify@2.3.0: {} + pify@4.0.1: {} pirates@4.0.6: {} @@ -7670,18 +10573,51 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss-load-config@6.0.1(postcss@8.4.47)(tsx@4.19.1): + postcss-import@15.1.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + postcss-value-parser: 4.2.0 + read-cache: 1.0.0 + resolve: 1.22.8 + + postcss-js@4.0.1(postcss@8.4.47): + dependencies: + camelcase-css: 2.0.1 + postcss: 8.4.47 + + postcss-load-config@4.0.2(postcss@8.4.47): + dependencies: + lilconfig: 3.1.2 + yaml: 2.6.0 + optionalDependencies: + postcss: 8.4.47 + + postcss-load-config@6.0.1(jiti@1.21.6)(postcss@8.4.47)(tsx@4.19.1)(yaml@2.6.0): dependencies: lilconfig: 3.1.2 optionalDependencies: + jiti: 1.21.6 postcss: 8.4.47 tsx: 4.19.1 + yaml: 2.6.0 + + postcss-nested@6.2.0(postcss@8.4.47): + dependencies: + postcss: 8.4.47 + postcss-selector-parser: 6.1.2 + + postcss-selector-parser@6.0.10: + dependencies: + cssesc: 3.0.0 + util-deprecate: 1.0.2 postcss-selector-parser@6.1.2: dependencies: cssesc: 3.0.0 util-deprecate: 1.0.2 + postcss-value-parser@4.2.0: {} + postcss@8.4.47: dependencies: nanoid: 3.3.7 @@ -7717,6 +10653,10 @@ snapshots: prelude-ls@1.2.1: {} + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + prettier@2.8.8: {} prettier@3.3.3: {} @@ -7735,8 +10675,117 @@ snapshots: printable-characters@1.0.42: {} + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + property-information@6.5.0: {} + prosemirror-changeset@2.2.1: + dependencies: + prosemirror-transform: 1.10.2 + + prosemirror-collab@1.3.1: + dependencies: + prosemirror-state: 1.4.3 + + prosemirror-commands@1.6.1: + dependencies: + prosemirror-model: 1.23.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + + prosemirror-dropcursor@1.8.1: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + prosemirror-view: 1.34.3 + + prosemirror-gapcursor@1.3.2: + dependencies: + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.23.0 + prosemirror-state: 1.4.3 + prosemirror-view: 1.34.3 + + prosemirror-history@1.4.1: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + prosemirror-view: 1.34.3 + rope-sequence: 1.3.4 + + prosemirror-inputrules@1.4.0: + dependencies: + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + + prosemirror-keymap@1.2.2: + dependencies: + prosemirror-state: 1.4.3 + w3c-keyname: 2.2.8 + + prosemirror-markdown@1.13.1: + dependencies: + '@types/markdown-it': 14.1.2 + markdown-it: 14.1.0 + prosemirror-model: 1.23.0 + + prosemirror-menu@1.2.4: + dependencies: + crelt: 1.0.6 + prosemirror-commands: 1.6.1 + prosemirror-history: 1.4.1 + prosemirror-state: 1.4.3 + + prosemirror-model@1.23.0: + dependencies: + orderedmap: 2.1.1 + + prosemirror-schema-basic@1.2.3: + dependencies: + prosemirror-model: 1.23.0 + + prosemirror-schema-list@1.4.1: + dependencies: + prosemirror-model: 1.23.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + + prosemirror-state@1.4.3: + dependencies: + prosemirror-model: 1.23.0 + prosemirror-transform: 1.10.2 + prosemirror-view: 1.34.3 + + prosemirror-tables@1.5.0: + dependencies: + prosemirror-keymap: 1.2.2 + prosemirror-model: 1.23.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + prosemirror-view: 1.34.3 + + prosemirror-trailing-node@3.0.0(prosemirror-model@1.23.0)(prosemirror-state@1.4.3)(prosemirror-view@1.34.3): + dependencies: + '@remirror/core-constants': 3.0.0 + escape-string-regexp: 4.0.0 + prosemirror-model: 1.23.0 + prosemirror-state: 1.4.3 + prosemirror-view: 1.34.3 + + prosemirror-transform@1.10.2: + dependencies: + prosemirror-model: 1.23.0 + + prosemirror-view@1.34.3: + dependencies: + prosemirror-model: 1.23.0 + prosemirror-state: 1.4.3 + prosemirror-transform: 1.10.2 + proto-list@1.2.4: {} pseudomap@1.0.2: {} @@ -7750,6 +10799,8 @@ snapshots: end-of-stream: 1.4.4 once: 1.4.0 + punycode.js@2.3.1: {} + punycode@2.3.1: {} qs@6.13.0: @@ -7760,6 +10811,8 @@ snapshots: queue-microtask@1.2.3: {} + raf-schd@4.0.3: {} + rc@1.2.8: dependencies: deep-extend: 0.6.0 @@ -7767,22 +10820,110 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 + react-beautiful-dnd@13.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@babel/runtime': 7.25.7 + css-box-model: 1.2.1 + memoize-one: 5.2.1 + raf-schd: 4.0.3 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-redux: 7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + redux: 4.2.1 + use-memo-one: 1.1.3(react@18.3.1) + transitivePeerDependencies: + - react-native + react-dom@18.3.1(react@18.3.1): dependencies: loose-envify: 1.4.0 react: 18.3.1 scheduler: 0.23.2 + react-icons@4.12.0(react@18.3.1): + dependencies: + react: 18.3.1 + + react-is@16.13.1: {} + react-is@17.0.2: {} react-is@18.3.1: {} + react-markdown@8.0.7(@types/react@18.3.11)(react@18.3.1): + dependencies: + '@types/hast': 2.3.10 + '@types/prop-types': 15.7.13 + '@types/react': 18.3.11 + '@types/unist': 2.0.11 + comma-separated-tokens: 2.0.3 + hast-util-whitespace: 2.0.1 + prop-types: 15.8.1 + property-information: 6.5.0 + react: 18.3.1 + react-is: 18.3.1 + remark-parse: 10.0.2 + remark-rehype: 10.1.0 + space-separated-tokens: 2.0.2 + style-to-object: 0.4.4 + unified: 10.1.2 + unist-util-visit: 4.1.2 + vfile: 5.3.7 + transitivePeerDependencies: + - supports-color + + react-redux@7.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@babel/runtime': 7.25.7 + '@types/react-redux': 7.1.34 + hoist-non-react-statics: 3.3.2 + loose-envify: 1.4.0 + prop-types: 15.8.1 + react: 18.3.1 + react-is: 17.0.2 + optionalDependencies: + react-dom: 18.3.1(react@18.3.1) + react-refresh@0.14.2: {} + react-router-dom@6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@remix-run/router': 1.20.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-router: 6.27.0(react@18.3.1) + + react-router@6.27.0(react@18.3.1): + dependencies: + '@remix-run/router': 1.20.0 + react: 18.3.1 + + react-toastify@9.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + clsx: 1.2.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + react-virtualized-auto-sizer@1.0.24(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + react-window@1.8.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@babel/runtime': 7.25.7 + memoize-one: 5.2.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react@18.3.1: dependencies: loose-envify: 1.4.0 + read-cache@1.0.0: + dependencies: + pify: 2.3.0 + read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 @@ -7800,6 +10941,10 @@ snapshots: dependencies: picomatch: 2.3.1 + redux@4.2.1: + dependencies: + '@babel/runtime': 7.25.7 + regenerator-runtime@0.14.1: {} regex@4.3.3: {} @@ -7811,6 +10956,21 @@ snapshots: es-errors: 1.3.0 set-function-name: 2.0.2 + remark-parse@10.0.2: + dependencies: + '@types/mdast': 3.0.15 + mdast-util-from-markdown: 1.3.1 + unified: 10.1.2 + transitivePeerDependencies: + - supports-color + + remark-rehype@10.1.0: + dependencies: + '@types/hast': 2.3.10 + '@types/mdast': 3.0.15 + mdast-util-to-hast: 12.3.0 + unified: 10.1.2 + require-directory@2.1.1: {} require-from-string@2.0.2: {} @@ -7829,6 +10989,11 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + restore-cursor@3.1.0: + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + reusify@1.0.4: {} rfdc@1.4.1: {} @@ -7837,6 +11002,10 @@ snapshots: dependencies: glob: 7.2.3 + rollup@2.77.3: + optionalDependencies: + fsevents: 2.3.3 + rollup@4.24.0: dependencies: '@types/estree': 1.0.6 @@ -7859,8 +11028,12 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.24.0 fsevents: 2.3.3 + rope-sequence@1.3.4: {} + rrweb-cssom@0.7.1: {} + run-async@3.0.0: {} + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 @@ -7869,6 +11042,10 @@ snapshots: dependencies: tslib: 2.7.0 + sade@1.8.1: + dependencies: + mri: 1.2.0 + safe-buffer@5.1.2: {} safe-buffer@5.2.1: {} @@ -7959,6 +11136,11 @@ snapshots: slash@3.0.0: {} + snake-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.7.0 + source-map-js@1.2.1: {} source-map-support@0.5.21: @@ -7987,6 +11169,10 @@ snapshots: sprintf-js@1.0.3: {} + stack-utils@2.0.6: + dependencies: + escape-string-regexp: 2.0.0 + stackback@0.0.2: {} std-env@3.7.0: {} @@ -8044,6 +11230,10 @@ snapshots: style-mod@4.1.2: {} + style-to-object@0.4.4: + dependencies: + inline-style-parser: 0.1.1 + sucrase@3.35.0: dependencies: '@jridgewell/gen-mapping': 0.3.5 @@ -8072,10 +11262,54 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} + svg-parser@2.0.4: {} + + svgo@3.3.2: + dependencies: + '@trysound/sax': 0.2.0 + commander: 7.2.0 + css-select: 5.1.0 + css-tree: 2.3.1 + css-what: 6.1.0 + csso: 5.0.5 + picocolors: 1.1.0 + symbol-tree@3.2.4: {} + synckit@0.9.2: + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.7.0 + tabbable@6.2.0: {} + tailwindcss@3.4.13: + dependencies: + '@alloc/quick-lru': 5.2.0 + arg: 5.0.2 + chokidar: 3.6.0 + didyoumean: 1.2.2 + dlv: 1.1.3 + fast-glob: 3.3.2 + glob-parent: 6.0.2 + is-glob: 4.0.3 + jiti: 1.21.6 + lilconfig: 2.1.0 + micromatch: 4.0.8 + normalize-path: 3.0.0 + object-hash: 3.0.0 + picocolors: 1.1.0 + postcss: 8.4.47 + postcss-import: 15.1.0(postcss@8.4.47) + postcss-js: 4.0.1(postcss@8.4.47) + postcss-load-config: 4.0.2(postcss@8.4.47) + postcss-nested: 6.2.0(postcss@8.4.47) + postcss-selector-parser: 6.1.2 + resolve: 1.22.8 + sucrase: 3.35.0 + transitivePeerDependencies: + - ts-node + tar-fs@2.1.1: dependencies: chownr: 1.1.4 @@ -8110,6 +11344,8 @@ snapshots: dependencies: any-promise: 1.3.0 + tiny-invariant@1.3.3: {} + tinybench@2.9.0: {} tinyexec@0.3.0: {} @@ -8131,6 +11367,18 @@ snapshots: tinytar@0.1.0: {} + tippy.js@6.3.7: + dependencies: + '@popperjs/core': 2.11.8 + + tiptap-markdown@0.8.10(@tiptap/core@2.8.0(@tiptap/pm@2.8.0)): + dependencies: + '@tiptap/core': 2.8.0(@tiptap/pm@2.8.0) + '@types/markdown-it': 13.0.9 + markdown-it: 14.1.0 + markdown-it-task-lists: 2.1.1 + prosemirror-markdown: 1.13.1 + tmp@0.0.33: dependencies: os-tmpdir: 1.0.2 @@ -8160,6 +11408,8 @@ snapshots: trim-lines@3.0.1: {} + trough@2.2.0: {} + ts-api-utils@1.3.0(typescript@5.6.3): dependencies: typescript: 5.6.3 @@ -8175,7 +11425,7 @@ snapshots: tslib@2.7.0: {} - tsup@8.3.0(@microsoft/api-extractor@7.47.7(@types/node@20.16.11))(postcss@8.4.47)(tsx@4.19.1)(typescript@5.6.3): + tsup@8.3.0(@microsoft/api-extractor@7.47.7(@types/node@20.16.11))(jiti@1.21.6)(postcss@8.4.47)(tsx@4.19.1)(typescript@5.6.3)(yaml@2.6.0): dependencies: bundle-require: 5.0.0(esbuild@0.23.1) cac: 6.7.14 @@ -8186,7 +11436,7 @@ snapshots: execa: 5.1.1 joycon: 3.1.1 picocolors: 1.1.0 - postcss-load-config: 6.0.1(postcss@8.4.47)(tsx@4.19.1) + postcss-load-config: 6.0.1(jiti@1.21.6)(postcss@8.4.47)(tsx@4.19.1)(yaml@2.6.0) resolve-from: 5.0.0 rollup: 4.24.0 source-map: 0.8.0-beta.0 @@ -8229,35 +11479,74 @@ snapshots: type-fest@0.20.2: {} + type-fest@0.21.3: {} + typescript@5.4.2: {} typescript@5.6.3: {} + uc.micro@2.1.0: {} + ufo@1.5.4: {} undici-types@6.19.8: {} + unified@10.1.2: + dependencies: + '@types/unist': 2.0.11 + bail: 2.0.2 + extend: 3.0.2 + is-buffer: 2.0.5 + is-plain-obj: 4.1.0 + trough: 2.2.0 + vfile: 5.3.7 + union@0.5.0: dependencies: qs: 6.13.0 + unist-util-generated@2.0.1: {} + + unist-util-is@5.2.1: + dependencies: + '@types/unist': 2.0.11 + unist-util-is@6.0.0: dependencies: '@types/unist': 3.0.3 + unist-util-position@4.0.4: + dependencies: + '@types/unist': 2.0.11 + unist-util-position@5.0.0: dependencies: '@types/unist': 3.0.3 + unist-util-stringify-position@3.0.3: + dependencies: + '@types/unist': 2.0.11 + unist-util-stringify-position@4.0.0: dependencies: '@types/unist': 3.0.3 + unist-util-visit-parents@5.1.3: + dependencies: + '@types/unist': 2.0.11 + unist-util-is: 5.2.1 + unist-util-visit-parents@6.0.1: dependencies: '@types/unist': 3.0.3 unist-util-is: 6.0.0 + unist-util-visit@4.1.2: + dependencies: + '@types/unist': 2.0.11 + unist-util-is: 5.2.1 + unist-util-visit-parents: 5.1.3 + unist-util-visit@5.0.0: dependencies: '@types/unist': 3.0.3 @@ -8268,6 +11557,8 @@ snapshots: universalify@0.2.0: {} + universalify@2.0.1: {} + update-browserslist-db@1.1.1(browserslist@4.24.0): dependencies: browserslist: 4.24.0 @@ -8285,13 +11576,42 @@ snapshots: querystringify: 2.2.0 requires-port: 1.0.0 + use-memo-one@1.1.3(react@18.3.1): + dependencies: + react: 18.3.1 + + use-sync-external-store@1.2.2(react@18.3.1): + dependencies: + react: 18.3.1 + util-deprecate@1.0.2: {} + uuid@9.0.1: {} + + uvu@0.5.6: + dependencies: + dequal: 2.0.3 + diff: 5.2.0 + kleur: 4.1.5 + sade: 1.8.1 + + vfile-message@3.1.4: + dependencies: + '@types/unist': 2.0.11 + unist-util-stringify-position: 3.0.3 + vfile-message@4.0.2: dependencies: '@types/unist': 3.0.3 unist-util-stringify-position: 4.0.0 + vfile@5.3.7: + dependencies: + '@types/unist': 2.0.11 + is-buffer: 2.0.5 + unist-util-stringify-position: 3.0.3 + vfile-message: 3.1.4 + vfile@6.0.3: dependencies: '@types/unist': 3.0.3 @@ -8356,6 +11676,26 @@ snapshots: minimatch: 9.0.5 vite: 5.4.8(@types/node@20.16.11)(terser@5.34.1) + vite-plugin-svgr@3.3.0(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@20.16.11)(terser@5.34.1)): + dependencies: + '@rollup/pluginutils': 5.1.2(rollup@4.24.0) + '@svgr/core': 8.1.0(typescript@5.6.3) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.6.3)) + vite: 5.4.8(@types/node@20.16.11)(terser@5.34.1) + transitivePeerDependencies: + - rollup + - supports-color + - typescript + + vite@2.9.18: + dependencies: + esbuild: 0.14.54 + postcss: 8.4.47 + resolve: 1.22.8 + rollup: 2.77.3 + optionalDependencies: + fsevents: 2.3.3 + vite@5.4.8(@types/node@20.16.11)(terser@5.34.1): dependencies: esbuild: 0.21.5 @@ -8533,6 +11873,10 @@ snapshots: wa-sqlite@https://codeload.github.com/rhashimoto/wa-sqlite/tar.gz/6dbe4f044502a7a285e815896f56304a808fe25b: {} + wcwidth@1.0.1: + dependencies: + defaults: 1.0.4 + webidl-conversions@4.0.2: {} webidl-conversions@7.0.0: {} @@ -8596,6 +11940,12 @@ snapshots: word-wrap@1.2.5: {} + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -8628,6 +11978,8 @@ snapshots: yallist@4.0.0: {} + yaml@2.6.0: {} + yargs-parser@21.1.1: {} yargs@17.7.2: @@ -8644,6 +11996,8 @@ snapshots: yocto-queue@1.1.1: {} + yoctocolors-cjs@2.1.2: {} + zod-validation-error@3.4.0(zod@3.23.8): dependencies: zod: 3.23.8 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 59a60bdc..2f51cc67 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,4 @@ packages: + - 'demos/*' - 'packages/*' - 'docs' From 2d3ab99cf3accd37b57408967d13cdf0df917f26 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 9 Oct 2024 13:31:40 +0100 Subject: [PATCH 02/34] Use new liveQuery that can load a live query in a route loader --- demos/linearlite/src/App.tsx | 67 ++++++++++++++----- demos/linearlite/src/components/TopFilter.tsx | 11 +-- demos/linearlite/src/pages/Issue/index.tsx | 12 ++-- demos/linearlite/src/pages/List/index.tsx | 42 ++---------- demos/linearlite/src/utils/filterState.ts | 61 ++++++++++------- demos/linearlite/vite.config.ts | 6 ++ 6 files changed, 109 insertions(+), 90 deletions(-) diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index 84040643..7c23747a 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -1,7 +1,11 @@ import 'animate.css/animate.min.css' import Board from './pages/Board' import { useState, createContext, useEffect } from 'react' -import { createBrowserRouter, RouterProvider } from 'react-router-dom' +import { + createBrowserRouter, + RouterProvider, + type Params, +} from 'react-router-dom' import 'react-toastify/dist/ReactToastify.css' import { live, LiveNamespace } from '@electric-sql/pglite/live' import { PGliteWorker } from '@electric-sql/pglite/worker' @@ -10,6 +14,11 @@ import PGWorker from './pglite-worker.js?worker' import List from './pages/List' import Root from './pages/root' import Issue from './pages/Issue' +import { + getFilterStateFromSearchParams, + filterStateToSql, +} from './utils/filterState' +import { Issue as IssueType } from './types/types' interface MenuContextInterface { showMenu: boolean @@ -20,7 +29,40 @@ export const MenuContext = createContext(null as MenuContextInterface | null) type PGliteWorkerWithLive = PGliteWorker & { live: LiveNamespace } -let pgPromise: Promise +let pgPromise = PGliteWorker.create(new PGWorker(), { + extensions: { + live, + }, +}) + +async function issueListLoader({ request }: { request: Request }) { + const pg = await pgPromise + const url = new URL(request.url) + const filterState = getFilterStateFromSearchParams(url.searchParams) + const { sql, sqlParams } = filterStateToSql(filterState) + const liveIssues = await pg.live.query({ + query: sql, + params: sqlParams, + signal: request.signal, + }) + return { liveIssues } +} + +async function issueLoader({ + params, + request, +}: { + params: Params + request: Request +}) { + const pg = await pgPromise + const liveIssue = await pg.live.query({ + query: `SELECT * FROM issue WHERE id = $1`, + params: [params.id], + signal: request.signal, + }) + return { liveIssue } +} const router = createBrowserRouter([ { @@ -30,10 +72,12 @@ const router = createBrowserRouter([ { path: `/`, element: , + loader: issueListLoader, }, { path: `/search`, element: , + loader: issueListLoader, }, { path: `/board`, @@ -42,6 +86,7 @@ const router = createBrowserRouter([ { path: `/issue/:id`, element: , + loader: issueLoader, }, ], }, @@ -49,25 +94,17 @@ const router = createBrowserRouter([ const App = () => { const [showMenu, setShowMenu] = useState(false) - const [pg, setPg] = useState(null) + const [pgForProvider, setPgForProvider] = + useState(null) useEffect(() => { - console.time(`preload`) - if (!pgPromise) { - pgPromise = PGliteWorker.create(new PGWorker(), { - extensions: { - live, - }, - }) - } - pgPromise.then(setPg) - console.timeEnd(`preload`) + pgPromise.then(setPgForProvider) }, []) - if (!pg) return
Loading...
+ if (!pgForProvider) return
Loading...
return ( - + diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index 57119b89..8f4c3746 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -26,11 +26,11 @@ export default function ({ const { showMenu, setShowMenu } = useContext(MenuContext)! const [searchQuery, setSearchQuery] = useState(``) - const totalIssuesCount: number = - useLiveQuery<{ count: number }>(`SELECT COUNT(*) FROM issue`)?.rows[0] - .count ?? 0 + const totalIssuesCount = useLiveQuery<{ count: number }>( + `SELECT COUNT(*) FROM issue` + )?.rows[0].count - const filteredIssuesCount = issues.length + const filteredIssuesCount = issues.length ?? 0 const handleSearchInner = (query: string) => { setFilterState({ @@ -76,7 +76,8 @@ export default function ({ {/* {filteredIssuesCount} */} {filteredIssuesCount} - {filteredIssuesCount !== totalIssuesCount + {totalIssuesCount !== undefined && + filteredIssuesCount !== totalIssuesCount ? ` of ${totalIssuesCount}` : ``} diff --git a/demos/linearlite/src/pages/Issue/index.tsx b/demos/linearlite/src/pages/Issue/index.tsx index 830209ce..618ae28a 100644 --- a/demos/linearlite/src/pages/Issue/index.tsx +++ b/demos/linearlite/src/pages/Issue/index.tsx @@ -1,5 +1,7 @@ -import { useParams, useNavigate } from 'react-router-dom' +import { useNavigate, useLoaderData } from 'react-router-dom' import { useState, useRef } from 'react' +import { LiveQuery } from '@electric-sql/pglite/live' +import { usePGlite, useLiveQuery } from '@electric-sql/pglite-react' import { BsTrash3 as DeleteIcon } from 'react-icons/bs' import { BsXLg as CloseIcon } from 'react-icons/bs' import PriorityMenu from '../../components/contextmenu/PriorityMenu' @@ -12,18 +14,14 @@ import Editor from '../../components/editor/Editor' import DeleteModal from './DeleteModal' import Comments from './Comments' import debounce from 'lodash.debounce' -import { usePGlite, useLiveQuery } from '@electric-sql/pglite-react' const debounceTime = 500 function IssuePage() { + const { liveIssue } = useLoaderData() as { liveIssue: LiveQuery } + const issue = useLiveQuery(liveIssue).rows[0] const navigate = useNavigate() const pg = usePGlite() - const params = useParams() - const issueResults = useLiveQuery.sql` - SELECT * FROM issue WHERE id = ${params.id} - ` - const issue = issueResults?.rows[0] const [showDeleteModal, setShowDeleteModal] = useState(false) diff --git a/demos/linearlite/src/pages/List/index.tsx b/demos/linearlite/src/pages/List/index.tsx index dcec7d8f..7b0602ea 100644 --- a/demos/linearlite/src/pages/List/index.tsx +++ b/demos/linearlite/src/pages/List/index.tsx @@ -1,47 +1,13 @@ import { useLiveQuery } from '@electric-sql/pglite-react' +import { LiveQuery } from '@electric-sql/pglite/live' +import { useLoaderData } from 'react-router-dom' import TopFilter from '../../components/TopFilter' import IssueList from './IssueList' -// import { useFilterState } from '../../utils/filterState' import { Issue } from '../../types/types' -import { useFilterState } from '../../utils/filterState' function List({ showSearch = false }) { - const [filterState] = useFilterState() - - console.log(filterState) - - let i = 1 - const sqlWhere = [] - const sqlParams = [] - if (filterState.status?.length) { - sqlWhere.push( - `status IN (${filterState.status.map(() => `$${i++}`).join(' ,')})` - ) - sqlParams.push(...filterState.status) - } - if (filterState.priority?.length) { - sqlWhere.push( - `priority IN (${filterState.priority.map(() => `$${i++}`).join(' ,')})` - ) - sqlParams.push(...filterState.priority) - } - if (filterState.query) { - sqlWhere.push(`title ILIKE $${i++}`) - sqlParams.push(filterState.query) - } - const sql = ` - SELECT * FROM issue - ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} - ORDER BY ${filterState.orderBy} ${filterState.orderDirection} - ` - console.log(sql) - const issueResults = useLiveQuery(sql, sqlParams) - const issues = issueResults?.rows - - if (!issues) { - return
Loading...
- } - + const { liveIssues } = useLoaderData() as { liveIssues: LiveQuery } + const issues = useLiveQuery(liveIssues).rows return (
diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index 74564985..9d3e2e0b 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -8,11 +8,9 @@ interface FilterState { query?: string } -export function useFilterState(): [ - FilterState, - (state: Partial) => void, -] { - const [searchParams, setSearchParams] = useSearchParams() +export function getFilterStateFromSearchParams( + searchParams: URLSearchParams +): FilterState { const orderBy = searchParams.get(`orderBy`) ?? `created` const orderDirection = (searchParams.get(`orderDirection`) as `asc` | `desc`) ?? `desc` @@ -34,6 +32,16 @@ export function useFilterState(): [ query: query || undefined, } + return state +} + +export function useFilterState(): [ + FilterState, + (state: Partial) => void, +] { + const [searchParams, setSearchParams] = useSearchParams() + const state = getFilterStateFromSearchParams(searchParams) + const setState = (state: Partial) => { const { orderBy, orderDirection, status, priority, query } = state setSearchParams((searchParams) => { @@ -69,27 +77,30 @@ export function useFilterState(): [ return [state, setState] } -interface FilterStateWhere { - status?: { in: string[] } - priority?: { in: string[] } - title?: { contains: string } - OR?: [{ title: { contains: string } }, { description: { contains: string } }] -} - -export function filterStateToWhere(filterState: FilterState) { - const { status, priority, query } = filterState - const where: FilterStateWhere = {} - if (status && status.length > 0) { - where.status = { in: status } +export function filterStateToSql(filterState: FilterState) { + let i = 1 + const sqlWhere = [] + const sqlParams = [] + if (filterState.status?.length) { + sqlWhere.push( + `status IN (${filterState.status.map(() => `$${i++}`).join(' ,')})` + ) + sqlParams.push(...filterState.status) } - if (priority && priority.length > 0) { - where.priority = { in: priority } + if (filterState.priority?.length) { + sqlWhere.push( + `priority IN (${filterState.priority.map(() => `$${i++}`).join(' ,')})` + ) + sqlParams.push(...filterState.priority) } - if (query) { - where.OR = [ - { title: { contains: query } }, - { description: { contains: query } }, - ] + if (filterState.query) { + sqlWhere.push(`title ILIKE $${i++}`) + sqlParams.push(filterState.query) } - return where + const sql = ` + SELECT * FROM issue + ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} + ORDER BY ${filterState.orderBy} ${filterState.orderDirection} + ` + return { sql, sqlParams } } diff --git a/demos/linearlite/vite.config.ts b/demos/linearlite/vite.config.ts index f455e1e0..d77861d2 100644 --- a/demos/linearlite/vite.config.ts +++ b/demos/linearlite/vite.config.ts @@ -4,6 +4,12 @@ import svgr from 'vite-plugin-svgr' // https://vitejs.dev/config/ export default defineConfig({ + optimizeDeps: { + exclude: ['@electric-sql/pglite'], + }, + worker: { + format: 'es', + }, plugins: [ react(), svgr({ From e84d9ecb2ae0dab9039c55188f1c482ef0c05986 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 9 Oct 2024 18:55:57 +0100 Subject: [PATCH 03/34] Working syncToTable for PGlite Linearlite --- demos/linearlite/backend/docker-compose.yml | 32 +++++++++++++++++++ demos/linearlite/backend/postgres.conf | 2 ++ demos/linearlite/package.json | 9 +++--- demos/linearlite/src/App.tsx | 3 +- demos/linearlite/src/components/TopFilter.tsx | 2 +- demos/linearlite/src/pages/List/IssueList.tsx | 2 +- demos/linearlite/src/pglite-worker.ts | 23 ++++++++++++- demos/linearlite/src/utils/filterState.ts | 3 +- pnpm-lock.yaml | 3 ++ 9 files changed, 70 insertions(+), 9 deletions(-) create mode 100644 demos/linearlite/backend/docker-compose.yml create mode 100644 demos/linearlite/backend/postgres.conf diff --git a/demos/linearlite/backend/docker-compose.yml b/demos/linearlite/backend/docker-compose.yml new file mode 100644 index 00000000..4125b673 --- /dev/null +++ b/demos/linearlite/backend/docker-compose.yml @@ -0,0 +1,32 @@ +version: "3.3" +name: "pglite-linearlite" + +services: + postgres: + image: postgres:16-alpine + environment: + POSTGRES_DB: linearlite + POSTGRES_USER: postgres + POSTGRES_PASSWORD: password + ports: + - 54321:5432 + volumes: + - ./postgres.conf:/etc/postgresql/postgresql.conf:ro + tmpfs: + - /var/lib/postgresql/data + - /tmp + command: + - postgres + - -c + - config_file=/etc/postgresql/postgresql.conf + + backend: + image: electricsql/electric:canary + environment: + DATABASE_URL: postgresql://postgres:password@postgres:5432/linearlite?sslmode=disable + ports: + - 3000:3000 + build: + context: ../packages/sync-service/ + depends_on: + - postgres \ No newline at end of file diff --git a/demos/linearlite/backend/postgres.conf b/demos/linearlite/backend/postgres.conf new file mode 100644 index 00000000..f28083ca --- /dev/null +++ b/demos/linearlite/backend/postgres.conf @@ -0,0 +1,2 @@ +listen_addresses = '*' +wal_level = logical \ No newline at end of file diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index 1e271089..74345f72 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -5,10 +5,10 @@ "private": true, "type": "module", "scripts": { - "backend:up": "PROJECT_NAME=linearlite pnpm -C ../../ run example-backend:up && pnpm db:migrate && pnpm db:load-data", - "backend:down": "PROJECT_NAME=linearlite pnpm -C ../../ run example-backend:down", - "db:migrate": "dotenv -e ../../.env.dev -- pnpm exec pg-migrations apply --directory ./db/migrations", - "db:load-data": "dotenv -e ../../.env.dev -- node ./db/load_data.js", + "backend:up": "dotenv -- docker compose -f ./backend/docker-compose.yml up -d ", + "backend:down": "dotenv -- docker compose -f ./backend/docker-compose.yml down --volumes", + "db:migrate": "dotenv -- pnpm exec pg-migrations apply --directory ./db/migrations", + "db:load-data": "dotenv -- node ./db/load_data.js", "dev": "vite", "build": "vite build", "stylecheck": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", @@ -20,6 +20,7 @@ "dependencies": { "@electric-sql/pglite": "workspace:*", "@electric-sql/pglite-react": "workspace:*", + "@electric-sql/pglite-sync": "workspace:*", "@firefox-devtools/react-contextmenu": "^5.1.1", "@headlessui/react": "^1.7.17", "@svgr/plugin-jsx": "^8.1.0", diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index 7c23747a..d98079a4 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -40,10 +40,11 @@ async function issueListLoader({ request }: { request: Request }) { const url = new URL(request.url) const filterState = getFilterStateFromSearchParams(url.searchParams) const { sql, sqlParams } = filterStateToSql(filterState) - const liveIssues = await pg.live.query({ + const liveIssues = await pg.live.incrementalQuery({ query: sql, params: sqlParams, signal: request.signal, + key: 'id', }) return { liveIssues } } diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index 8f4c3746..1083250b 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -27,7 +27,7 @@ export default function ({ const [searchQuery, setSearchQuery] = useState(``) const totalIssuesCount = useLiveQuery<{ count: number }>( - `SELECT COUNT(*) FROM issue` + `SELECT COUNT(id) FROM issue` )?.rows[0].count const filteredIssuesCount = issues.length ?? 0 diff --git a/demos/linearlite/src/pages/List/IssueList.tsx b/demos/linearlite/src/pages/List/IssueList.tsx index d5b88e18..66cc6dd7 100644 --- a/demos/linearlite/src/pages/List/IssueList.tsx +++ b/demos/linearlite/src/pages/List/IssueList.tsx @@ -45,4 +45,4 @@ const VirtualIssueRow = memo( areEqual ) -export default IssueList +export default memo(IssueList) diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index fd3a04f7..28815cc9 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -1,13 +1,34 @@ import { worker } from '@electric-sql/pglite/worker' import { PGlite } from '@electric-sql/pglite' +import { electricSync } from '@electric-sql/pglite-sync' import { migrate } from './migrations' worker({ async init() { - const pg = await PGlite.create('idb://linearlite', { + const pg = await PGlite.create({ + dataDir: 'idb://linearlite2', relaxedDurability: true, + extensions: { + sync: electricSync(), + }, }) await migrate(pg) + await pg.sync.syncShapeToTable({ + shape: { + url: 'http://localhost:3000/v1/shape/issue', + }, + table: 'issue', + primaryKey: ['id'], + shapeKey: 'issues', + }) + await pg.sync.syncShapeToTable({ + shape: { + url: 'http://localhost:3000/v1/shape/comment', + }, + table: 'comment', + primaryKey: ['id'], + shapeKey: 'comments', + }) return pg }, }) diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index 9d3e2e0b..53a7ef4e 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -98,7 +98,8 @@ export function filterStateToSql(filterState: FilterState) { sqlParams.push(filterState.query) } const sql = ` - SELECT * FROM issue + SELECT id, title, priority, status, modified, created, kanbanorder, username + FROM issue ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} ORDER BY ${filterState.orderBy} ${filterState.orderDirection} ` diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4afd4679..e07bdbdf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -47,6 +47,9 @@ importers: '@electric-sql/pglite-react': specifier: workspace:* version: link:../../packages/pglite-react + '@electric-sql/pglite-sync': + specifier: workspace:* + version: link:../../packages/pglite-sync '@firefox-devtools/react-contextmenu': specifier: ^5.1.1 version: 5.1.1(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) From 4960fc50b716ac490c5d84135af7d7529bacda4e Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 10 Oct 2024 09:02:09 +0100 Subject: [PATCH 04/34] Configure eslint and fix failures --- demos/linearlite/.eslintrc.cjs | 41 ----- demos/linearlite/eslint.config.js | 32 ++++ demos/linearlite/package.json | 7 +- demos/linearlite/src/App.tsx | 11 +- .../linearlite/src/components/AboutModal.tsx | 24 ++- .../linearlite/src/components/IssueModal.tsx | 12 +- demos/linearlite/src/components/ItemGroup.tsx | 1 + demos/linearlite/src/components/LeftMenu.tsx | 4 + demos/linearlite/src/components/Modal.tsx | 2 +- .../linearlite/src/components/ProfileMenu.tsx | 1 + demos/linearlite/src/components/TopFilter.tsx | 7 +- .../src/components/contextmenu/FilterMenu.tsx | 8 +- .../components/contextmenu/PriorityMenu.tsx | 4 +- .../src/components/editor/Editor.tsx | 2 +- .../src/components/editor/EditorMenu.tsx | 8 + demos/linearlite/src/hooks/useClickOutside.ts | 2 +- demos/linearlite/src/pages/Board/IssueCol.tsx | 3 +- demos/linearlite/src/pages/Issue/Comments.tsx | 1 + .../src/pages/Issue/DeleteModal.tsx | 2 + demos/linearlite/src/pages/Issue/index.tsx | 17 +- pnpm-lock.yaml | 168 ------------------ 21 files changed, 121 insertions(+), 236 deletions(-) delete mode 100644 demos/linearlite/.eslintrc.cjs create mode 100644 demos/linearlite/eslint.config.js diff --git a/demos/linearlite/.eslintrc.cjs b/demos/linearlite/.eslintrc.cjs deleted file mode 100644 index 5bc53084..00000000 --- a/demos/linearlite/.eslintrc.cjs +++ /dev/null @@ -1,41 +0,0 @@ -module.exports = { - env: { - browser: true, - es2021: true, - node: true, - }, - extends: [ - `eslint:recommended`, - `plugin:@typescript-eslint/recommended`, - `plugin:prettier/recommended`, - ], - parserOptions: { - ecmaVersion: 2022, - requireConfigFile: false, - sourceType: `module`, - ecmaFeatures: { - jsx: true, - }, - }, - parser: `@typescript-eslint/parser`, - plugins: [`prettier`], - rules: { - quotes: [`error`, `backtick`], - 'no-unused-vars': `off`, - '@typescript-eslint/no-unused-vars': [ - `error`, - { - argsIgnorePattern: `^_`, - varsIgnorePattern: `^_`, - caughtErrorsIgnorePattern: `^_`, - }, - ], - }, - ignorePatterns: [ - '**/node_modules/**', - '**/dist/**', - 'tsup.config.ts', - 'vitest.config.ts', - '.eslintrc.js' - ], -} diff --git a/demos/linearlite/eslint.config.js b/demos/linearlite/eslint.config.js new file mode 100644 index 00000000..a12acf76 --- /dev/null +++ b/demos/linearlite/eslint.config.js @@ -0,0 +1,32 @@ +import rootConfig from "../../eslint.config.js"; +import pluginReact from "@eslint-react/eslint-plugin"; +// @ts-expect-error no types +import pluginReactCompiler from "eslint-plugin-react-compiler"; +// @ts-expect-error no types +import pluginReactHooks from "eslint-plugin-react-hooks"; + +export default [ + ...rootConfig, + { + files: ["**/*.{ts,tsx}"], + ...pluginReact.configs.recommended, + }, + { + plugins: { + "react-hooks": pluginReactHooks, + "react-compiler": pluginReactCompiler, + }, + rules: { + "react-compiler/react-compiler": "error", + "react-hooks/exhaustive-deps": "error", + "react-hooks/rules-of-hooks": "error", + }, + }, + { + files: ["**/test/**"], + rules: { + "@typescript-eslint/no-unnecessary-condition": "off", + "react-compiler/react-compiler": "off", + }, + }, +]; diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index 74345f72..e64f7bc3 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -11,11 +11,12 @@ "db:load-data": "dotenv -- node ./db/load_data.js", "dev": "vite", "build": "vite build", - "stylecheck": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview", "typecheck": "tsc --noEmit", "process-data": "node ./db/process_data.js", - "format": "prettier --write ./src" + "format": "prettier --write ./src", + "lint": "eslint ./src", + "stylecheck": "eslint ./src && prettier --check ./src ./db" }, "dependencies": { "@electric-sql/pglite": "workspace:*", @@ -69,8 +70,6 @@ "@types/react-window": "^1.8.8", "@types/uuid": "^9.0.3", "@types/vite-plugin-react-svg": "^0.2.5", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "@typescript-eslint/parser": "^6.0.0", "@vitejs/plugin-react": "^4.3.1", "autoprefixer": "^10.4.19", "dotenv-cli": "^7.4.2", diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index d98079a4..78a87e71 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -1,6 +1,6 @@ import 'animate.css/animate.min.css' import Board from './pages/Board' -import { useState, createContext, useEffect } from 'react' +import { useState, createContext, useEffect, useMemo } from 'react' import { createBrowserRouter, RouterProvider, @@ -29,7 +29,7 @@ export const MenuContext = createContext(null as MenuContextInterface | null) type PGliteWorkerWithLive = PGliteWorker & { live: LiveNamespace } -let pgPromise = PGliteWorker.create(new PGWorker(), { +const pgPromise = PGliteWorker.create(new PGWorker(), { extensions: { live, }, @@ -102,11 +102,16 @@ const App = () => { pgPromise.then(setPgForProvider) }, []) + const menuContextValue = useMemo( + () => ({ showMenu, setShowMenu }), + [showMenu] + ) + if (!pgForProvider) return
Loading...
return ( - + diff --git a/demos/linearlite/src/components/AboutModal.tsx b/demos/linearlite/src/components/AboutModal.tsx index c12d065b..21cdffac 100644 --- a/demos/linearlite/src/components/AboutModal.tsx +++ b/demos/linearlite/src/components/AboutModal.tsx @@ -11,12 +11,20 @@ export default function AboutModal({ isOpen, onDismiss }: Props) {

This is an example of a team collaboration app such as{` `} - + Linear {` `} built using{` `} - + ElectricSQL {` `}- the local-first sync layer for web and mobile apps. @@ -24,14 +32,22 @@ export default function AboutModal({ isOpen, onDismiss }: Props) {

This example is built on top of the excellent clone of the Linear UI built by{` `} - + Tuan Nguyen .

We have replaced the canned data with a stack running{` `} - + Electric {` `} diff --git a/demos/linearlite/src/components/IssueModal.tsx b/demos/linearlite/src/components/IssueModal.tsx index ea05824c..960471f4 100644 --- a/demos/linearlite/src/components/IssueModal.tsx +++ b/demos/linearlite/src/components/IssueModal.tsx @@ -100,6 +100,7 @@ function IssueModal({ isOpen, onDismiss }: Props) {

} @@ -146,7 +150,10 @@ function IssueModal({ isOpen, onDismiss }: Props) { + @@ -160,6 +167,7 @@ function IssueModal({ isOpen, onDismiss }: Props) { {/* Footer */}
@@ -95,6 +99,7 @@ export default function ({
{!hideSort && (
- @@ -175,7 +180,10 @@ function IssuePage() { + @@ -192,7 +200,10 @@ function IssuePage() { +
) } diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 28815cc9..066d9343 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -17,7 +17,7 @@ worker({ shape: { url: 'http://localhost:3000/v1/shape/issue', }, - table: 'issue', + table: 'issue_synced', primaryKey: ['id'], shapeKey: 'issues', }) @@ -25,7 +25,7 @@ worker({ shape: { url: 'http://localhost:3000/v1/shape/comment', }, - table: 'comment', + table: 'comment_synced', primaryKey: ['id'], shapeKey: 'comments', }) diff --git a/demos/linearlite/src/types/types.ts b/demos/linearlite/src/types/types.ts index 6c9cc225..992ba857 100644 --- a/demos/linearlite/src/types/types.ts +++ b/demos/linearlite/src/types/types.ts @@ -22,6 +22,7 @@ export type Issue = { created: Date kanbanorder: string username: string + synced: boolean } export type Comment = { diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index 53a7ef4e..17731113 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -98,7 +98,7 @@ export function filterStateToSql(filterState: FilterState) { sqlParams.push(filterState.query) } const sql = ` - SELECT id, title, priority, status, modified, created, kanbanorder, username + SELECT id, title, priority, status, modified, created, kanbanorder, username, synced FROM issue ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} ORDER BY ${filterState.orderBy} ${filterState.orderDirection} From 08c350391b4a8d3d303d9ef2fbf163e48fb3e47c Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 10 Oct 2024 12:21:05 +0100 Subject: [PATCH 06/34] Synced status icons --- demos/linearlite/src/pages/Board/IssueItem.tsx | 7 +++++++ demos/linearlite/src/pages/Issue/index.tsx | 7 +++++++ demos/linearlite/src/pages/List/IssueRow.tsx | 8 +++++++- 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/demos/linearlite/src/pages/Board/IssueItem.tsx b/demos/linearlite/src/pages/Board/IssueItem.tsx index fe396a8e..44e4a01a 100644 --- a/demos/linearlite/src/pages/Board/IssueItem.tsx +++ b/demos/linearlite/src/pages/Board/IssueItem.tsx @@ -2,6 +2,8 @@ import { type CSSProperties } from 'react' import classNames from 'classnames' import { useNavigate } from 'react-router-dom' import { DraggableProvided } from 'react-beautiful-dnd' +import { BsCloudCheck as SyncedIcon } from 'react-icons/bs' +import { BsCloudSlash as UnsyncedIcon } from 'react-icons/bs' import Avatar from '../../components/Avatar' import PriorityMenu from '../../components/contextmenu/PriorityMenu' import PriorityIcon from '../../components/PriorityIcon' @@ -79,6 +81,11 @@ const IssueItem = ({ issue, style, isDragging, provided }: IssueProps) => { filterKeyword={true} // TODO: onSelect={(p) => updatePriority(p)} /> + {issue.synced ? ( + + ) : ( + + )}
) diff --git a/demos/linearlite/src/pages/Issue/index.tsx b/demos/linearlite/src/pages/Issue/index.tsx index 0f8fe964..6ca59681 100644 --- a/demos/linearlite/src/pages/Issue/index.tsx +++ b/demos/linearlite/src/pages/Issue/index.tsx @@ -1,5 +1,7 @@ import { useNavigate, useLoaderData } from 'react-router-dom' import { useState, useRef } from 'react' +import { BsCloudCheck as SyncedIcon } from 'react-icons/bs' +import { BsCloudSlash as UnsyncedIcon } from 'react-icons/bs' import { LiveQuery } from '@electric-sql/pglite/live' import { usePGlite, useLiveQuery } from '@electric-sql/pglite-react' import { BsTrash3 as DeleteIcon } from 'react-icons/bs' @@ -136,6 +138,11 @@ function IssuePage() {
+ {issue.synced ? ( + + ) : ( + + )}
- {issue.synced ? 'synced' : 'unsynced'} + {issue.synced ? ( + + ) : ( + + )}
) From bc7270cb7babe2a03260d83a57645bda572e64a1 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 10 Oct 2024 12:28:20 +0100 Subject: [PATCH 07/34] Missing SQL update on board --- .../linearlite/src/pages/Board/IssueItem.tsx | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/demos/linearlite/src/pages/Board/IssueItem.tsx b/demos/linearlite/src/pages/Board/IssueItem.tsx index 44e4a01a..aaa32b5a 100644 --- a/demos/linearlite/src/pages/Board/IssueItem.tsx +++ b/demos/linearlite/src/pages/Board/IssueItem.tsx @@ -4,6 +4,7 @@ import { useNavigate } from 'react-router-dom' import { DraggableProvided } from 'react-beautiful-dnd' import { BsCloudCheck as SyncedIcon } from 'react-icons/bs' import { BsCloudSlash as UnsyncedIcon } from 'react-icons/bs' +import { usePGlite } from '@electric-sql/pglite-react' import Avatar from '../../components/Avatar' import PriorityMenu from '../../components/contextmenu/PriorityMenu' import PriorityIcon from '../../components/PriorityIcon' @@ -31,6 +32,7 @@ function getStyle( } const IssueItem = ({ issue, style, isDragging, provided }: IssueProps) => { + const pg = usePGlite() const navigate = useNavigate() const priorityIcon = ( @@ -38,17 +40,13 @@ const IssueItem = ({ issue, style, isDragging, provided }: IssueProps) => { ) - // const updatePriority = (priority: string) => { - // db.issue.update({ - // data: { - // priority: priority, - // modified: new Date(), - // }, - // where: { - // id: issue.id, - // }, - // }) - // } + const updatePriority = (priority: string) => { + pg.sql` + UPDATE issue + SET priority = ${priority}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + } return (
{ button={priorityIcon} id={`priority-menu-` + issue.id} filterKeyword={true} - // TODO: onSelect={(p) => updatePriority(p)} + onSelect={(p) => updatePriority(p)} /> {issue.synced ? ( From 8b80112b158cfe2649027828b6953fe0a6ce83fe Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 10 Oct 2024 12:44:28 +0100 Subject: [PATCH 08/34] Add PGLite REPL modal --- demos/linearlite/package.json | 1 + demos/linearlite/src/components/LeftMenu.tsx | 18 ++++++++++++++- .../src/components/PGliteConsoleModal.tsx | 22 +++++++++++++++++++ pnpm-lock.yaml | 3 +++ 4 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 demos/linearlite/src/components/PGliteConsoleModal.tsx diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index 3d7d075d..a7db0aad 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -22,6 +22,7 @@ "@electric-sql/pglite": "workspace:*", "@electric-sql/pglite-react": "workspace:*", "@electric-sql/pglite-sync": "workspace:*", + "@electric-sql/pglite-repl": "workspace:*", "@firefox-devtools/react-contextmenu": "^5.1.1", "@headlessui/react": "^1.7.17", "@svgr/plugin-jsx": "^8.1.0", diff --git a/demos/linearlite/src/components/LeftMenu.tsx b/demos/linearlite/src/components/LeftMenu.tsx index d62da6e9..df167c84 100644 --- a/demos/linearlite/src/components/LeftMenu.tsx +++ b/demos/linearlite/src/components/LeftMenu.tsx @@ -10,10 +10,12 @@ import { BsSearch as SearchIcon } from 'react-icons/bs' import { BsFillGrid3X3GapFill as BoardIcon } from 'react-icons/bs' import { BsCollectionFill as IssuesIcon } from 'react-icons/bs' import { MdKeyboardArrowDown as ExpandMore } from 'react-icons/md' +import { BsTerminalFill as ConsoleIcon } from 'react-icons/bs' import { Link } from 'react-router-dom' import Avatar from './Avatar' import AboutModal from './AboutModal' import IssueModal from './IssueModal' +import PGliteConsoleModal from './PGliteConsoleModal' import ItemGroup from './ItemGroup' import ProfileMenu from './ProfileMenu' @@ -22,6 +24,7 @@ function LeftMenu() { const [showProfileMenu, setShowProfileMenu] = useState(false) const [showAboutModal, setShowAboutModal] = useState(false) const [showIssueModal, setShowIssueModal] = useState(false) + const [showPGliteConsoleModal, setShowPGliteConsoleModal] = useState(false) const { showMenu, setShowMenu } = useContext(MenuContext)! const classes = classnames( @@ -144,7 +147,14 @@ function LeftMenu() { {/* bottom group */}
- + + {` `} ElectricSQL @@ -172,6 +182,12 @@ function LeftMenu() { onDismiss={() => setShowIssueModal(false)} /> } + { + setShowPGliteConsoleModal(false)} + /> + } ) } diff --git a/demos/linearlite/src/components/PGliteConsoleModal.tsx b/demos/linearlite/src/components/PGliteConsoleModal.tsx new file mode 100644 index 00000000..2cc6c59d --- /dev/null +++ b/demos/linearlite/src/components/PGliteConsoleModal.tsx @@ -0,0 +1,22 @@ +import { Repl } from '@electric-sql/pglite-repl' +import Modal from './Modal' + +interface Props { + isOpen: boolean + onDismiss?: () => void +} + +export default function PGliteConsoleModal({ isOpen, onDismiss }: Props) { + return ( + +
+ +
+
+ ) +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5cb13537..265e792b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -47,6 +47,9 @@ importers: '@electric-sql/pglite-react': specifier: workspace:* version: link:../../packages/pglite-react + '@electric-sql/pglite-repl': + specifier: workspace:* + version: link:../../packages/pglite-repl '@electric-sql/pglite-sync': specifier: workspace:* version: link:../../packages/pglite-sync From 304bbffd10694b6ad9123e875fa48f93b1832cd3 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 10 Oct 2024 19:05:48 +0100 Subject: [PATCH 09/34] Working two way sync! --- .../db/migrations-client/01-create_tables.sql | 82 ++- .../db/migrations-server/01-create_tables.sql | 23 +- demos/linearlite/package.json | 14 +- demos/linearlite/server.ts | 203 +++++++ demos/linearlite/src/pglite-worker.ts | 112 +++- demos/linearlite/src/utils/changes.ts | 48 ++ pnpm-lock.yaml | 526 ++++++++++++++++++ 7 files changed, 998 insertions(+), 10 deletions(-) create mode 100644 demos/linearlite/server.ts create mode 100644 demos/linearlite/src/utils/changes.ts diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index b3197dc0..3707ea62 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -12,6 +12,7 @@ CREATE TABLE IF NOT EXISTS "issue_synced" ( "created" TIMESTAMPTZ NOT NULL, "kanbanorder" TEXT NOT NULL, "username" TEXT NOT NULL, + "version" BIGINT NOT NULL, CONSTRAINT "issue_synced_pkey" PRIMARY KEY ("id") ); @@ -21,6 +22,7 @@ CREATE TABLE IF NOT EXISTS "comment_synced" ( "username" TEXT NOT NULL, "issue_id" UUID NOT NULL, "created_at" TIMESTAMPTZ NOT NULL, + "version" BIGINT NOT NULL, CONSTRAINT "comment_synced_pkey" PRIMARY KEY ("id") --, -- FOREIGN KEY (issue_id) REFERENCES issue_synced(id) ON DELETE CASCADE -- There is currently no transactional integrity between shapes during sync, and as @@ -52,11 +54,13 @@ CREATE TABLE IF NOT EXISTS "issue_local" ( "kanbanorder" TEXT, "username" TEXT, -- A text array of the column names that have changed. - "changed_columns" TEXT[] NOT NULL, + "changed_columns" TEXT[], + -- A columns to track is a row is new or an update. + "is_new" BOOLEAN DEFAULT FALSE, -- If a row is deleted, this is set to true. "is_deleted" BOOLEAN DEFAULT FALSE, -- A column to track the offset prefix at which the row was synced. - "synced_at" TEXT, + "synced_at" BIGINT, CONSTRAINT "issue_local_pkey" PRIMARY KEY ("id") ); @@ -67,11 +71,13 @@ CREATE TABLE IF NOT EXISTS "comment_local" ( "issue_id" UUID, "created_at" TIMESTAMPTZ, -- A text array of the column names that have changed. - "changed_columns" TEXT[] NOT NULL, + "changed_columns" TEXT[], + -- A columns to track is a row is new or an update. + "is_new" BOOLEAN DEFAULT FALSE, -- If a row is deleted, this is set to true. "is_deleted" BOOLEAN DEFAULT FALSE, -- A column to track the offset prefix at which the row was synced. - "synced_at" TEXT, + "synced_at" BIGINT, CONSTRAINT "comment_local_pkey" PRIMARY KEY ("id") ); @@ -145,6 +151,7 @@ BEGIN "kanbanorder", "username", "changed_columns", + "is_new", "synced_at" ) VALUES ( @@ -158,6 +165,7 @@ BEGIN NEW."kanbanorder", NEW."username", ARRAY['title', 'description', 'priority', 'status', 'modified', 'created', 'kanbanorder', 'username'], + TRUE, NULL ); RETURN NEW; @@ -345,6 +353,7 @@ BEGIN "issue_id", "created_at", "changed_columns", + "is_new", "synced_at" ) VALUES ( @@ -354,6 +363,7 @@ BEGIN NEW."issue_id", NEW."created_at", ARRAY['body', 'username', 'issue_id', 'created_at'], + TRUE, NULL ); RETURN NEW; @@ -458,3 +468,67 @@ CREATE OR REPLACE TRIGGER comment_delete INSTEAD OF DELETE ON "comment" FOR EACH ROW EXECUTE FUNCTION comment_delete_trigger(); + +-- Add a trigger that deletes the row from the local table if the row in the synced table is deleted + +CREATE OR REPLACE FUNCTION delete_local_comment_row_on_synced_delete() +RETURNS TRIGGER AS $$ +BEGIN + DELETE FROM "comment_local" WHERE "id" = OLD."id"; + RETURN OLD; +END; +$$ LANGUAGE plpgsql; + +CREATE OR REPLACE TRIGGER delete_local_row_on_synced_delete +AFTER DELETE ON "comment_synced" +FOR EACH ROW +EXECUTE FUNCTION delete_local_comment_row_on_synced_delete(); + +CREATE OR REPLACE FUNCTION delete_local_issue_row_on_synced_delete() +RETURNS TRIGGER AS $$ +BEGIN + DELETE FROM "issue_local" WHERE "id" = OLD."id"; + RETURN OLD; +END; +$$ LANGUAGE plpgsql; + +CREATE OR REPLACE TRIGGER delete_local_row_on_synced_delete +AFTER DELETE ON "issue_synced" +FOR EACH ROW +EXECUTE FUNCTION delete_local_issue_row_on_synced_delete(); + +-- Add triggers to the synced tables that will remove the row from the local table if +-- the row in the synced table has a version that is grater than the synced_at version +-- in the local table. + +-- Function to remove local issue row when synced version is greater +CREATE OR REPLACE FUNCTION remove_local_issue_row_on_sync() +RETURNS TRIGGER AS $$ +BEGIN + DELETE FROM "issue_local" + WHERE "id" = NEW."id" AND "synced_at" IS NOT NULL AND NEW."version" >= "synced_at"; + RETURN NEW; +END; +$$ LANGUAGE plpgsql; + +-- Trigger to remove local issue row when synced version is greater +CREATE OR REPLACE TRIGGER remove_local_issue_row_on_sync_trigger +AFTER INSERT OR UPDATE ON "issue_synced" +FOR EACH ROW +EXECUTE FUNCTION remove_local_issue_row_on_sync(); + +-- Function to remove local comment row when synced version is greater +CREATE OR REPLACE FUNCTION remove_local_comment_row_on_sync() +RETURNS TRIGGER AS $$ +BEGIN + DELETE FROM "comment_local" + WHERE "id" = NEW."id" AND "synced_at" IS NOT NULL AND NEW."version" >= "synced_at"; + RETURN NEW; +END; +$$ LANGUAGE plpgsql; + +-- Trigger to remove local comment row when synced version is greater +CREATE OR REPLACE TRIGGER remove_local_comment_row_on_sync_trigger +AFTER INSERT OR UPDATE ON "comment_synced" +FOR EACH ROW +EXECUTE FUNCTION remove_local_comment_row_on_sync(); diff --git a/demos/linearlite/db/migrations-server/01-create_tables.sql b/demos/linearlite/db/migrations-server/01-create_tables.sql index dfd1dafc..12417478 100644 --- a/demos/linearlite/db/migrations-server/01-create_tables.sql +++ b/demos/linearlite/db/migrations-server/01-create_tables.sql @@ -9,6 +9,7 @@ CREATE TABLE IF NOT EXISTS "issue" ( "created" TIMESTAMPTZ NOT NULL, "kanbanorder" TEXT NOT NULL, "username" TEXT NOT NULL, + "version" BIGINT NOT NULL DEFAULT 0, CONSTRAINT "issue_pkey" PRIMARY KEY ("id") ); @@ -18,6 +19,26 @@ CREATE TABLE IF NOT EXISTS "comment" ( "username" TEXT NOT NULL, "issue_id" UUID NOT NULL, "created_at" TIMESTAMPTZ NOT NULL, + "version" BIGINT NOT NULL DEFAULT 0, CONSTRAINT "comment_pkey" PRIMARY KEY ("id"), FOREIGN KEY (issue_id) REFERENCES issue(id) ON DELETE CASCADE -); \ No newline at end of file +); + +-- Triggers to update the version column on insert/update +CREATE OR REPLACE FUNCTION update_version() +RETURNS TRIGGER AS $$ +BEGIN + NEW.version := OLD.version + 1; + RETURN NEW; +END; +$$ LANGUAGE plpgsql; + +CREATE TRIGGER update_issue_version +BEFORE UPDATE ON issue +FOR EACH ROW +EXECUTE PROCEDURE update_version(); + +CREATE TRIGGER update_comment_version +BEFORE UPDATE ON comment +FOR EACH ROW +EXECUTE PROCEDURE update_version(); diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index a7db0aad..67c8517b 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -9,6 +9,8 @@ "backend:down": "dotenv -- docker compose -f ./backend/docker-compose.yml down --volumes", "db:migrate": "dotenv -- pnpm exec pg-migrations apply --directory ./db/migrations-server", "db:load-data": "dotenv -- node ./db/load_data.js", + "reset": "pnpm backend:down && pnpm backend:up && pnpm db:migrate && pnpm db:load-data", + "server": "dotenv -- tsx server.ts", "dev": "vite", "build": "vite build", "preview": "vite preview", @@ -21,8 +23,8 @@ "dependencies": { "@electric-sql/pglite": "workspace:*", "@electric-sql/pglite-react": "workspace:*", - "@electric-sql/pglite-sync": "workspace:*", "@electric-sql/pglite-repl": "workspace:*", + "@electric-sql/pglite-sync": "workspace:*", "@firefox-devtools/react-contextmenu": "^5.1.1", "@headlessui/react": "^1.7.17", "@svgr/plugin-jsx": "^8.1.0", @@ -37,12 +39,16 @@ "@tiptap/react": "^2.4.0", "@tiptap/starter-kit": "^2.4.0", "animate.css": "^4.1.1", + "body-parser": "^1.20.3", "classnames": "^2.5.1", + "cors": "^2.8.5", "dayjs": "^1.11.11", "dotenv": "^16.4.5", + "express": "^4.21.1", "fractional-indexing": "^3.2.0", "jsonwebtoken": "^9.0.2", "lodash.debounce": "^4.0.8", + "pg": "^8.13.0", "react": "^18.3.1", "react-beautiful-dnd": "^13.1.1", "react-dom": "^18.3.1", @@ -54,16 +60,19 @@ "react-window": "^1.8.10", "tiptap-markdown": "^0.8.2", "uuid": "^9.0.0", - "vite-plugin-svgr": "^3.2.0" + "vite-plugin-svgr": "^3.2.0", + "zod": "^3.23.8" }, "devDependencies": { "@databases/pg": "^5.5.0", "@databases/pg-migrations": "^5.0.3", "@faker-js/faker": "^8.4.1", "@tailwindcss/typography": "^0.5.10", + "@types/express": "^5.0.0", "@types/jest": "^29.5.12", "@types/lodash.debounce": "^4.0.9", "@types/node": "^20.14.10", + "@types/pg": "^8.11.10", "@types/react": "^18.3.3", "@types/react-beautiful-dnd": "^13.1.8", "@types/react-dom": "^18.3.0", @@ -82,6 +91,7 @@ "fs-extra": "^10.0.0", "postcss": "^8.4.39", "tailwindcss": "^3.4.4", + "tsx": "^4.19.1", "typescript": "^5.5.3", "vite": "^5.4.8" } diff --git a/demos/linearlite/server.ts b/demos/linearlite/server.ts new file mode 100644 index 00000000..da453d65 --- /dev/null +++ b/demos/linearlite/server.ts @@ -0,0 +1,203 @@ +import express from 'express' +import bodyParser from 'body-parser' +import cors from 'cors' +import pg from 'pg' +import { + ChangeSet, + changeSetSchema, + CommentChange, + IssueChange, + ChangeResponse, + RowChange, +} from './src/utils/changes' + +const DATABASE_URL = process.env.DATABASE_URL + +const { Client } = pg +const client = new Client(DATABASE_URL) +client.connect() + +const app = express() + +app.use(bodyParser.json()) +app.use(cors()) + +app.get('/', async (_req, res) => { + const result = await client.query( + "SELECT 'ok' as status, version() as postgres_version, now() as server_time" + ) + res.send(result.rows[0]) +}) + +app.post('/apply-changes', async (req, res) => { + const content = req.body + let parsedChanges: ChangeSet + try { + parsedChanges = changeSetSchema.parse(content) + // Any additional validation of the changes can be done here! + } catch (error) { + console.error(error) + res.status(400).send('Invalid changes') + return + } + const changeResponse = await applyChanges(parsedChanges) + res.send(changeResponse) +}) + +app.listen(3001, () => { + console.log('Server is running on port 3001') +}) + +async function applyChanges(changes: ChangeSet): Promise { + const { issues, comments } = changes + client.query('BEGIN') + try { + await client.query('COMMIT') + const issueVersions = ( + await Promise.all(issues.map(applyIssueChange)) + ).filter((v) => v !== null) + const commentVersions = ( + await Promise.all(comments.map(applyCommentChange)) + ).filter((v) => v !== null) + return { issueVersions, commentVersions } + } catch (error) { + await client.query('ROLLBACK') + throw error + } +} + +/** + * Apply an issue change to the database and return the version of the row after + * the change. + * @param issueChange + */ +async function applyIssueChange( + issueChange: IssueChange +): Promise { + const { + id, + title, + description, + priority, + status, + modified, + created, + kanbanorder, + username, + changed_columns, + is_new, + is_deleted, + } = issueChange + + if (is_new) { + const result = await client.query( + ` + INSERT INTO issue + (id, title, description, priority, status, modified, created, kanbanorder, username) + VALUES + ($1, $2, $3, $4, $5, $6, $7, $8, $9) + RETURNING version + `, + [ + id, + title, + description, + priority, + status, + modified, + created, + kanbanorder, + username, + ] + ) + return { id, version: result.rows[0].version } + } else if (is_deleted) { + await client.query( + ` + DELETE FROM issue WHERE id = $1 + `, + [id] + ) + return null + } else if (changed_columns) { + const setClause = changed_columns + .map((column, index) => `${column} = $${index + 1}`) + .join(', ') + const values = changed_columns.map((column) => issueChange[column]) + values.push(id) + + const result = await client.query( + ` + UPDATE issue + SET ${setClause} + WHERE id = $${changed_columns.length + 1} + RETURNING version + `, + values + ) + return { id, version: result.rows[0].version } + } else { + return null + } +} + +/** + * Apply a comment change to the database and return the version of the row after + * the change. + * @param commentChange + */ +async function applyCommentChange( + commentChange: CommentChange +): Promise { + const { + id, + issue_id, + body, + username, + created_at, + changed_columns, + is_new, + is_deleted, + } = commentChange + + if (is_new) { + const result = await client.query( + ` + INSERT INTO comment + (id, issue_id, body, username, created_at) + VALUES + ($1, $2, $3, $4, $5) + RETURNING version + `, + [id, issue_id, body, username, created_at] + ) + return { id, version: result.rows[0].version } + } else if (is_deleted) { + await client.query( + ` + DELETE FROM comment WHERE id = $1 + `, + [id] + ) + return null + } else if (changed_columns) { + const setClause = changed_columns + .map((column, index) => `${column} = $${index + 1}`) + .join(', ') + const values = changed_columns.map((column) => commentChange[column]) + values.push(id) + + const result = await client.query( + ` + UPDATE comment + SET ${setClause} + WHERE id = $${changed_columns.length + 1} + RETURNING version + `, + values + ) + return { id, version: result.rows[0].version } + } else { + return null + } +} diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 066d9343..4b9150f9 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -1,21 +1,34 @@ import { worker } from '@electric-sql/pglite/worker' -import { PGlite } from '@electric-sql/pglite' +import { PGlite, Mutex } from '@electric-sql/pglite' +import { live, type PGliteWithLive } from '@electric-sql/pglite/live' import { electricSync } from '@electric-sql/pglite-sync' import { migrate } from './migrations' +import type { + IssueChange, + CommentChange, + ChangeSet, + ChangeResponse, +} from './utils/changes' + +const WRITE_SERVER_URL = import.meta.env.VITE_WRITE_SERVER_URL +const ELECTRIC_URL = import.meta.env.VITE_ELECTRIC_URL +const APPLY_CHANGES_URL = `${WRITE_SERVER_URL}/apply-changes` worker({ async init() { const pg = await PGlite.create({ + // debug: 1, dataDir: 'idb://linearlite2', relaxedDurability: true, extensions: { sync: electricSync(), + live, }, }) await migrate(pg) await pg.sync.syncShapeToTable({ shape: { - url: 'http://localhost:3000/v1/shape/issue', + url: `${ELECTRIC_URL}/v1/shape/issue`, }, table: 'issue_synced', primaryKey: ['id'], @@ -23,12 +36,105 @@ worker({ }) await pg.sync.syncShapeToTable({ shape: { - url: 'http://localhost:3000/v1/shape/comment', + url: `${ELECTRIC_URL}/v1/shape/comment`, }, table: 'comment_synced', primaryKey: ['id'], shapeKey: 'comments', }) + startWritePath(pg) return pg }, }) + +const syncMutex = new Mutex() + +async function startWritePath(pg: PGliteWithLive) { + // Use a live query to watch for changes to the local tables that need to be synced + pg.live.query<{ + issue_count: number + comment_count: number + }>( + ` + SELECT * FROM + (SELECT count(id) as issue_count FROM issue_local WHERE synced_at IS NULL), + (SELECT count(id) as comment_count FROM comment_local WHERE synced_at IS NULL) + `, + [], + async (results) => { + const { issue_count, comment_count } = results.rows[0] + if (issue_count > 0 || comment_count > 0) { + await syncMutex.acquire() + try { + doSyncToServer(pg) + } finally { + syncMutex.release() + } + } + } + ) +} + +// Call wrapped in mutex to prevent multiple syncs from happening at the same time +async function doSyncToServer(pg: PGliteWithLive) { + let issueChanges: IssueChange[] + let commentChanges: CommentChange[] + await pg.transaction(async (tx) => { + const issueRes = await tx.query(` + SELECT + id, + title, + description, + priority, + status, + modified, + created, + kanbanorder, + username, + changed_columns, + is_new, + is_deleted + FROM issue_local + WHERE synced_at IS NULL + `) + const commentRes = await tx.query(` + SELECT + id, + body, + username, + issue_id, + created_at, + changed_columns, + is_new, + is_deleted + FROM comment_local WHERE synced_at IS NULL + `) + issueChanges = issueRes.rows + commentChanges = commentRes.rows + }) + const changeSet: ChangeSet = { + issues: issueChanges!, + comments: commentChanges!, + } + const response = await fetch(APPLY_CHANGES_URL, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify(changeSet), + }) + const changeResponse = (await response.json()) as ChangeResponse + const { issueVersions, commentVersions } = changeResponse + await pg.transaction(async (tx) => { + for (const { id, version } of issueVersions) { + await tx.sql` + UPDATE issue_local SET synced_at = ${version} WHERE id = ${id} + ` + } + for (const { id, version } of commentVersions) { + await tx.sql` + UPDATE comment_local SET synced_at = ${version} WHERE id = ${id} + ` + } + }) +} diff --git a/demos/linearlite/src/utils/changes.ts b/demos/linearlite/src/utils/changes.ts new file mode 100644 index 00000000..d02894b6 --- /dev/null +++ b/demos/linearlite/src/utils/changes.ts @@ -0,0 +1,48 @@ +import { z } from 'zod' + +export const issueChangeSchema = z.object({ + id: z.string(), + title: z.string().nullable().optional(), + description: z.string().nullable().optional(), + priority: z.string().nullable().optional(), + status: z.string().nullable().optional(), + modified: z.string().nullable().optional(), + created: z.string().nullable().optional(), + kanbanorder: z.string().nullable().optional(), + username: z.string().nullable().optional(), + changed_columns: z.array(z.string()).nullable().optional(), + is_new: z.boolean(), + is_deleted: z.boolean().nullable().optional(), +}) + +export type IssueChange = z.infer + +export const commentChangeSchema = z.object({ + id: z.string(), + body: z.string().nullable().optional(), + username: z.string().nullable().optional(), + issue_id: z.string().nullable().optional(), + created_at: z.string().nullable().optional(), + changed_columns: z.array(z.string()).nullable().optional(), + is_new: z.boolean(), + is_deleted: z.boolean().nullable().optional(), +}) + +export type CommentChange = z.infer + +export const changeSetSchema = z.object({ + issues: z.array(issueChangeSchema), + comments: z.array(commentChangeSchema), +}) + +export type ChangeSet = z.infer + +export type RowChange = { + id: string + version: number +} + +export type ChangeResponse = { + issueVersions: RowChange[] + commentVersions: RowChange[] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 265e792b..219525b1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -95,15 +95,24 @@ importers: animate.css: specifier: ^4.1.1 version: 4.1.1 + body-parser: + specifier: ^1.20.3 + version: 1.20.3 classnames: specifier: ^2.5.1 version: 2.5.1 + cors: + specifier: ^2.8.5 + version: 2.8.5 dayjs: specifier: ^1.11.11 version: 1.11.13 dotenv: specifier: ^16.4.5 version: 16.4.5 + express: + specifier: ^4.21.1 + version: 4.21.1 fractional-indexing: specifier: ^3.2.0 version: 3.2.0 @@ -113,6 +122,9 @@ importers: lodash.debounce: specifier: ^4.0.8 version: 4.0.8 + pg: + specifier: ^8.13.0 + version: 8.13.0 react: specifier: ^18.3.1 version: 18.3.1 @@ -149,6 +161,9 @@ importers: vite-plugin-svgr: specifier: ^3.2.0 version: 3.3.0(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.8(@types/node@20.16.11)(terser@5.34.1)) + zod: + specifier: ^3.23.8 + version: 3.23.8 devDependencies: '@databases/pg': specifier: ^5.5.0 @@ -162,6 +177,9 @@ importers: '@tailwindcss/typography': specifier: ^0.5.10 version: 0.5.15(tailwindcss@3.4.13) + '@types/express': + specifier: ^5.0.0 + version: 5.0.0 '@types/jest': specifier: ^29.5.12 version: 29.5.13 @@ -171,6 +189,9 @@ importers: '@types/node': specifier: ^20.14.10 version: 20.16.11 + '@types/pg': + specifier: ^8.11.10 + version: 8.11.10 '@types/react': specifier: ^18.3.3 version: 18.3.11 @@ -225,6 +246,9 @@ importers: tailwindcss: specifier: ^3.4.4 version: 3.4.13 + tsx: + specifier: ^4.19.1 + version: 4.19.1 typescript: specifier: ^5.5.3 version: 5.6.3 @@ -1894,6 +1918,12 @@ packages: '@types/better-sqlite3@7.6.11': resolution: {integrity: sha512-i8KcD3PgGtGBLl3+mMYA8PdKkButvPyARxA7IQAd6qeslht13qxb1zzO8dRCtE7U3IoJS782zDBAeoKiM695kg==} + '@types/body-parser@1.19.5': + resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==} + + '@types/connect@3.4.38': + resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} + '@types/debug@4.1.12': resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} @@ -1903,6 +1933,12 @@ packages: '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/express-serve-static-core@5.0.0': + resolution: {integrity: sha512-AbXMTZGt40T+KON9/Fdxx0B2WK5hsgxcfXJLr5bFpZ7b4JCex2WyQPTEKdXqfHiY5nKKBScZ7yCoO6Pvgxfvnw==} + + '@types/express@5.0.0': + resolution: {integrity: sha512-DvZriSMehGHL1ZNLzi6MidnsDhUZM/x2pRdDIKdwbUNqqwHxMlRdkxtn6/EPKyqKpHqTl/4nRZsRNLpZxZRpPQ==} + '@types/hast@2.3.10': resolution: {integrity: sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==} @@ -1915,6 +1951,9 @@ packages: '@types/hoist-non-react-statics@3.3.5': resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} + '@types/http-errors@2.0.4': + resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} + '@types/istanbul-lib-coverage@2.0.6': resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} @@ -1957,6 +1996,9 @@ packages: '@types/mdurl@2.0.0': resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} + '@types/mime@1.3.5': + resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} + '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} @@ -1969,9 +2011,18 @@ packages: '@types/node@20.16.11': resolution: {integrity: sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==} + '@types/pg@8.11.10': + resolution: {integrity: sha512-LczQUW4dbOQzsH2RQ5qoeJ6qJPdrcM/DcMLoqWQkMLMsq83J5lAX3LXjdkWdpscFy67JSOWDnh7Ny/sPFykmkg==} + '@types/prop-types@15.7.13': resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} + '@types/qs@6.9.16': + resolution: {integrity: sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==} + + '@types/range-parser@1.2.7': + resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} + '@types/react-beautiful-dnd@13.1.8': resolution: {integrity: sha512-E3TyFsro9pQuK4r8S/OL6G99eq7p8v29sX0PM7oT8Z+PJfZvSQTx4zTQbUJ+QZXioAF0e7TGBEcA1XhYhCweyQ==} @@ -1993,6 +2044,12 @@ packages: '@types/react@18.3.11': resolution: {integrity: sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==} + '@types/send@0.17.4': + resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} + + '@types/serve-static@1.15.7': + resolution: {integrity: sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==} + '@types/stack-utils@2.0.3': resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} @@ -2336,6 +2393,10 @@ packages: resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + accepts@1.3.8: + resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} + engines: {node: '>= 0.6'} + acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -2443,6 +2504,9 @@ packages: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} + array-flatten@1.1.1: + resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -2521,6 +2585,10 @@ packages: bl@4.1.0: resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} + body-parser@1.20.3: + resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -2562,6 +2630,10 @@ packages: peerDependencies: esbuild: '>=0.18' + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} @@ -2726,13 +2798,32 @@ packages: resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} engines: {node: ^14.18.0 || >=16.10.0} + content-disposition@0.5.4: + resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} + engines: {node: '>= 0.6'} + + content-type@1.0.5: + resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} + engines: {node: '>= 0.6'} + convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + cookie-signature@1.0.6: + resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} + + cookie@0.7.1: + resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} + engines: {node: '>= 0.6'} + copy-anything@3.0.5: resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==} engines: {node: '>=12.13'} + cors@2.8.5: + resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} + engines: {node: '>= 0.10'} + corser@2.0.1: resolution: {integrity: sha512-utCYNzRSQIZNPIcGZdQc92UVJYAhtGAteCFg0yRaFm8f0P+CPtyGyHXJcGXnffjCybUCEx3FQ2G7U3/o9eIkVQ==} engines: {node: '>= 0.4.0'} @@ -2804,6 +2895,14 @@ packages: de-indent@1.0.2: resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} + debug@2.6.9: + resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + debug@3.2.7: resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} peerDependencies: @@ -2877,10 +2976,18 @@ packages: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} + depd@2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} + destroy@1.2.0: + resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} + engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} + detect-indent@6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} engines: {node: '>=8'} @@ -2956,6 +3063,9 @@ packages: engines: {node: '>=14'} hasBin: true + ee-first@1.1.1: + resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} + electron-to-chromium@1.5.36: resolution: {integrity: sha512-HYTX8tKge/VNp6FGO+f/uVDmUkq+cEfcxYhKf15Akc4M5yxt5YmorwlAitKWjWhWQnKcDRBAQKXkhqqXMqcrjw==} @@ -2968,6 +3078,14 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + encodeurl@1.0.2: + resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} + engines: {node: '>= 0.8'} + + encodeurl@2.0.0: + resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} + engines: {node: '>= 0.8'} + end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} @@ -3132,6 +3250,9 @@ packages: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} + escape-html@1.0.3: + resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} + escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} @@ -3300,6 +3421,10 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} + etag@1.8.1: + resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} + engines: {node: '>= 0.6'} + eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} @@ -3319,6 +3444,10 @@ packages: resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + express@4.21.1: + resolution: {integrity: sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==} + engines: {node: '>= 0.10.0'} + extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -3367,6 +3496,10 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} + finalhandler@1.3.1: + resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} + engines: {node: '>= 0.8'} + find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -3405,6 +3538,10 @@ packages: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} + forwarded@0.2.0: + resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} + engines: {node: '>= 0.6'} + fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -3412,6 +3549,10 @@ packages: resolution: {integrity: sha512-PcOxmqwYCW7O2ovKRU8OoQQj2yqTfEB/yeTYk4gPid6dN5ODRfU1hXd9tTVZzax/0NkO7AxpHykvZnT1aYp/BQ==} engines: {node: ^14.13.1 || >=16.0.0} + fresh@0.5.2: + resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} + engines: {node: '>= 0.6'} + fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} @@ -3589,6 +3730,10 @@ packages: html-void-elements@3.0.0: resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} + http-errors@2.0.0: + resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} + engines: {node: '>= 0.8'} + http-proxy-agent@7.0.2: resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} @@ -3668,6 +3813,10 @@ packages: interrogator@2.0.1: resolution: {integrity: sha512-HPilaDW0ZSPEKhhj6NcklQi7jhYyad1r8l6tS9hYCxvVnlrrJAUMZ7GuGa5PFK3RmquLSk+iml2geBJjC+Yc9g==} + ipaddr.js@1.9.1: + resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} + engines: {node: '>= 0.10'} + is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} @@ -4073,9 +4222,16 @@ packages: mdurl@2.0.0: resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} + media-typer@0.3.0: + resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} + engines: {node: '>= 0.6'} + memoize-one@5.2.1: resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} + merge-descriptors@1.0.3: + resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} + merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -4083,6 +4239,10 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} + methods@1.1.2: + resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} + engines: {node: '>= 0.6'} + micromark-core-commonmark@1.1.0: resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==} @@ -4239,6 +4399,9 @@ packages: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} + ms@2.0.0: + resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} + ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -4263,6 +4426,10 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + negotiator@0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} @@ -4324,6 +4491,13 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} + obuf@1.1.2: + resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} + + on-finished@2.4.1: + resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} + engines: {node: '>= 0.8'} + once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -4412,6 +4586,10 @@ packages: parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} + parseurl@1.3.3: + resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} + engines: {node: '>= 0.8'} + path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} @@ -4438,6 +4616,9 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} + path-to-regexp@0.1.10: + resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} + path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -4470,6 +4651,10 @@ packages: resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==} engines: {node: '>=4.0.0'} + pg-numeric@1.0.2: + resolution: {integrity: sha512-BM/Thnrw5jm2kKLE5uJkXqqExRUY/toLHda65XgFTBTFYZyopbKjBe29Ii3RbkvlsMoFwD+tHeGaCjjv0gHlyw==} + engines: {node: '>=4'} + pg-pool@3.7.0: resolution: {integrity: sha512-ZOBQForurqh4zZWjrgSwwAtzJ7QiRX0ovFkZr2klsen3Nm0aoh33Ls0fzfv3imeH/nw/O27cjdz5kzYJfeGp/g==} peerDependencies: @@ -4482,6 +4667,10 @@ packages: resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==} engines: {node: '>=4'} + pg-types@4.0.2: + resolution: {integrity: sha512-cRL3JpS3lKMGsKaWndugWQoLOCoP+Cic8oseVcbr0qhPzYD5DWXK+RZ9LY9wxRf7RQia4SCwQlXk0q6FCPrVng==} + engines: {node: '>=10'} + pg@8.13.0: resolution: {integrity: sha512-34wkUTh3SxTClfoHB3pQ7bIMvw9dpFU1audQQeZG837fmHfHpr14n/AELVDoOYVDW2h5RDWU78tFjkD+erSBsw==} engines: {node: '>= 8.0.0'} @@ -4605,18 +4794,37 @@ packages: resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==} engines: {node: '>=4'} + postgres-array@3.0.2: + resolution: {integrity: sha512-6faShkdFugNQCLwucjPcY5ARoW1SlbnrZjmGl0IrrqewpvxvhSLHimCVzqeuULCbG0fQv7Dtk1yDbG3xv7Veog==} + engines: {node: '>=12'} + postgres-bytea@1.0.0: resolution: {integrity: sha512-xy3pmLuQqRBZBXDULy7KbaitYqLcmxigw14Q5sj8QBVLqEwXfeybIKVWiqAXTlcvdvb0+xkOtDbfQMOf4lST1w==} engines: {node: '>=0.10.0'} + postgres-bytea@3.0.0: + resolution: {integrity: sha512-CNd4jim9RFPkObHSjVHlVrxoVQXz7quwNFpz7RY1okNNme49+sVyiTvTRobiLV548Hx/hb1BG+iE7h9493WzFw==} + engines: {node: '>= 6'} + postgres-date@1.0.7: resolution: {integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==} engines: {node: '>=0.10.0'} + postgres-date@2.1.0: + resolution: {integrity: sha512-K7Juri8gtgXVcDfZttFKVmhglp7epKb1K4pgrkLxehjqkrgPhfG6OO8LHLkfaqkbpjNRnra018XwAr1yQFWGcA==} + engines: {node: '>=12'} + postgres-interval@1.2.0: resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==} engines: {node: '>=0.10.0'} + postgres-interval@3.0.0: + resolution: {integrity: sha512-BSNDnbyZCXSxgA+1f5UU2GmwhoI0aU5yMxRGO8CdFEcY2BQF9xm/7MqKnYoM1nJDk8nONNWDk9WeSmePFhQdlw==} + engines: {node: '>=12'} + + postgres-range@1.1.4: + resolution: {integrity: sha512-i/hbxIE9803Alj/6ytL7UHQxRvZkI9O4Sy+J3HGc4F4oo/2eQAjTSNJ0bfxyse3bH0nuVesCk+3IRLaMtG3H6w==} + preact@10.24.2: resolution: {integrity: sha512-1cSoF0aCC8uaARATfrlz4VCBqE8LwZwRfLgkxJOQwAlQt6ayTmi0D9OF7nXid1POI5SZidFuG9CnlXbDfLqY/Q==} @@ -4721,6 +4929,10 @@ packages: proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + proxy-addr@2.0.7: + resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} + engines: {node: '>= 0.10'} + pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} @@ -4754,6 +4966,14 @@ packages: raf-schd@4.0.3: resolution: {integrity: sha512-tQkJl2GRWh83ui2DiPTJz9wEiMN20syf+5oKfB03yYP7ioZcJwsIK8FjrtLwH1m7C7e+Tt2yYBlrOpdT+dyeIQ==} + range-parser@1.2.1: + resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} + engines: {node: '>= 0.6'} + + raw-body@2.5.2: + resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} + engines: {node: '>= 0.8'} + rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true @@ -4984,6 +5204,14 @@ packages: engines: {node: '>=10'} hasBin: true + send@0.19.0: + resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} + engines: {node: '>= 0.8.0'} + + serve-static@1.16.2: + resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} + engines: {node: '>= 0.8.0'} + set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} @@ -4992,6 +5220,9 @@ packages: resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} engines: {node: '>= 0.4'} + setprototypeof@1.2.0: + resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} + shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} engines: {node: '>=0.10.0'} @@ -5087,6 +5318,10 @@ packages: stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + statuses@2.0.1: + resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} + engines: {node: '>= 0.8'} + std-env@3.7.0: resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} @@ -5283,6 +5518,10 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + toidentifier@1.0.1: + resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} + engines: {node: '>=0.6'} + tough-cookie@4.1.4: resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} engines: {node: '>=6'} @@ -5372,6 +5611,10 @@ packages: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} + type-is@1.6.18: + resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} + engines: {node: '>= 0.6'} + typescript@5.4.2: resolution: {integrity: sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==} engines: {node: '>=14.17'} @@ -5443,6 +5686,10 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + unpipe@1.0.0: + resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} + engines: {node: '>= 0.8'} + update-browserslist-db@1.1.1: resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} hasBin: true @@ -5471,6 +5718,10 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + utils-merge@1.0.1: + resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} + engines: {node: '>= 0.4.0'} + uuid@9.0.1: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true @@ -5480,6 +5731,10 @@ packages: engines: {node: '>=8'} hasBin: true + vary@1.1.2: + resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} + engines: {node: '>= 0.8'} + vfile-message@3.1.4: resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} @@ -7428,6 +7683,15 @@ snapshots: dependencies: '@types/node': 20.16.11 + '@types/body-parser@1.19.5': + dependencies: + '@types/connect': 3.4.38 + '@types/node': 20.16.11 + + '@types/connect@3.4.38': + dependencies: + '@types/node': 20.16.11 + '@types/debug@4.1.12': dependencies: '@types/ms': 0.7.34 @@ -7436,6 +7700,20 @@ snapshots: '@types/estree@1.0.6': {} + '@types/express-serve-static-core@5.0.0': + dependencies: + '@types/node': 20.16.11 + '@types/qs': 6.9.16 + '@types/range-parser': 1.2.7 + '@types/send': 0.17.4 + + '@types/express@5.0.0': + dependencies: + '@types/body-parser': 1.19.5 + '@types/express-serve-static-core': 5.0.0 + '@types/qs': 6.9.16 + '@types/serve-static': 1.15.7 + '@types/hast@2.3.10': dependencies: '@types/unist': 2.0.11 @@ -7451,6 +7729,8 @@ snapshots: '@types/react': 18.3.11 hoist-non-react-statics: 3.3.2 + '@types/http-errors@2.0.4': {} + '@types/istanbul-lib-coverage@2.0.6': {} '@types/istanbul-lib-report@3.0.3': @@ -7498,6 +7778,8 @@ snapshots: '@types/mdurl@2.0.0': {} + '@types/mime@1.3.5': {} + '@types/ms@0.7.34': {} '@types/node-fetch@2.6.11': @@ -7511,8 +7793,18 @@ snapshots: dependencies: undici-types: 6.19.8 + '@types/pg@8.11.10': + dependencies: + '@types/node': 20.16.11 + pg-protocol: 1.7.0 + pg-types: 4.0.2 + '@types/prop-types@15.7.13': {} + '@types/qs@6.9.16': {} + + '@types/range-parser@1.2.7': {} + '@types/react-beautiful-dnd@13.1.8': dependencies: '@types/react': 18.3.11 @@ -7548,6 +7840,17 @@ snapshots: '@types/prop-types': 15.7.13 csstype: 3.1.3 + '@types/send@0.17.4': + dependencies: + '@types/mime': 1.3.5 + '@types/node': 20.16.11 + + '@types/serve-static@1.15.7': + dependencies: + '@types/http-errors': 2.0.4 + '@types/node': 20.16.11 + '@types/send': 0.17.4 + '@types/stack-utils@2.0.3': {} '@types/svgo@2.6.4': @@ -7999,6 +8302,11 @@ snapshots: abbrev@2.0.0: {} + accepts@1.3.8: + dependencies: + mime-types: 2.1.35 + negotiator: 0.6.3 + acorn-jsx@5.3.2(acorn@8.12.1): dependencies: acorn: 8.12.1 @@ -8114,6 +8422,8 @@ snapshots: call-bind: 1.0.7 is-array-buffer: 3.0.4 + array-flatten@1.1.1: {} + array-union@2.1.0: {} ascii-table3@0.9.0: @@ -8187,6 +8497,23 @@ snapshots: inherits: 2.0.4 readable-stream: 3.6.2 + body-parser@1.20.3: + dependencies: + bytes: 3.1.2 + content-type: 1.0.5 + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + http-errors: 2.0.0 + iconv-lite: 0.4.24 + on-finished: 2.4.1 + qs: 6.13.0 + raw-body: 2.5.2 + type-is: 1.6.18 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + boolbase@1.0.0: {} brace-expansion@1.1.11: @@ -8239,6 +8566,8 @@ snapshots: esbuild: 0.23.1 load-tsconfig: 0.2.5 + bytes@3.1.2: {} + cac@6.7.14: {} call-bind@1.0.7: @@ -8405,12 +8734,27 @@ snapshots: consola@3.2.3: {} + content-disposition@0.5.4: + dependencies: + safe-buffer: 5.2.1 + + content-type@1.0.5: {} + convert-source-map@2.0.0: {} + cookie-signature@1.0.6: {} + + cookie@0.7.1: {} + copy-anything@3.0.5: dependencies: is-what: 4.1.16 + cors@2.8.5: + dependencies: + object-assign: 4.1.1 + vary: 1.1.2 + corser@2.0.1: {} cosmiconfig@8.3.6(typescript@5.6.3): @@ -8485,6 +8829,10 @@ snapshots: de-indent@1.0.2: {} + debug@2.6.9: + dependencies: + ms: 2.0.0 + debug@3.2.7: dependencies: ms: 2.1.3 @@ -8556,8 +8904,12 @@ snapshots: delayed-stream@1.0.0: {} + depd@2.0.0: {} + dequal@2.0.3: {} + destroy@1.2.0: {} + detect-indent@6.1.0: {} detect-libc@2.0.3: {} @@ -8631,6 +8983,8 @@ snapshots: minimatch: 9.0.1 semver: 7.6.3 + ee-first@1.1.1: {} + electron-to-chromium@1.5.36: {} embedded-postgres@15.5.1-beta.9: @@ -8653,6 +9007,10 @@ snapshots: emoji-regex@9.2.2: {} + encodeurl@1.0.2: {} + + encodeurl@2.0.0: {} + end-of-stream@1.4.4: dependencies: once: 1.4.0 @@ -8825,6 +9183,8 @@ snapshots: escalade@3.2.0: {} + escape-html@1.0.3: {} + escape-string-regexp@1.0.5: {} escape-string-regexp@2.0.0: {} @@ -9082,6 +9442,8 @@ snapshots: esutils@2.0.3: {} + etag@1.8.1: {} + eventemitter3@4.0.7: {} execa@5.1.1: @@ -9118,6 +9480,42 @@ snapshots: jest-message-util: 29.7.0 jest-util: 29.7.0 + express@4.21.1: + dependencies: + accepts: 1.3.8 + array-flatten: 1.1.1 + body-parser: 1.20.3 + content-disposition: 0.5.4 + content-type: 1.0.5 + cookie: 0.7.1 + cookie-signature: 1.0.6 + debug: 2.6.9 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 1.3.1 + fresh: 0.5.2 + http-errors: 2.0.0 + merge-descriptors: 1.0.3 + methods: 1.1.2 + on-finished: 2.4.1 + parseurl: 1.3.3 + path-to-regexp: 0.1.10 + proxy-addr: 2.0.7 + qs: 6.13.0 + range-parser: 1.2.1 + safe-buffer: 5.2.1 + send: 0.19.0 + serve-static: 1.16.2 + setprototypeof: 1.2.0 + statuses: 2.0.1 + type-is: 1.6.18 + utils-merge: 1.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + extend@3.0.2: {} extendable-error@0.1.7: {} @@ -9162,6 +9560,18 @@ snapshots: dependencies: to-regex-range: 5.0.1 + finalhandler@1.3.1: + dependencies: + debug: 2.6.9 + encodeurl: 2.0.0 + escape-html: 1.0.3 + on-finished: 2.4.1 + parseurl: 1.3.3 + statuses: 2.0.1 + unpipe: 1.0.0 + transitivePeerDependencies: + - supports-color + find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -9201,10 +9611,14 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 + forwarded@0.2.0: {} + fraction.js@4.3.7: {} fractional-indexing@3.2.0: {} + fresh@0.5.2: {} + fs-constants@1.0.0: {} fs-extra@10.1.0: @@ -9382,6 +9796,14 @@ snapshots: html-void-elements@3.0.0: {} + http-errors@2.0.0: + dependencies: + depd: 2.0.0 + inherits: 2.0.4 + setprototypeof: 1.2.0 + statuses: 2.0.1 + toidentifier: 1.0.1 + http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 @@ -9486,6 +9908,8 @@ snapshots: dependencies: inquirer: 9.3.7 + ipaddr.js@1.9.1: {} + is-arguments@1.1.1: dependencies: call-bind: 1.0.7 @@ -9924,12 +10348,18 @@ snapshots: mdurl@2.0.0: {} + media-typer@0.3.0: {} + memoize-one@5.2.1: {} + merge-descriptors@1.0.3: {} + merge-stream@2.0.0: {} merge2@1.4.1: {} + methods@1.1.2: {} + micromark-core-commonmark@1.1.0: dependencies: decode-named-character-reference: 1.0.2 @@ -10144,6 +10574,8 @@ snapshots: mri@1.2.0: {} + ms@2.0.0: {} + ms@2.1.3: {} muggle-string@0.4.1: {} @@ -10162,6 +10594,8 @@ snapshots: natural-compare@1.4.0: {} + negotiator@0.6.3: {} + no-case@3.0.4: dependencies: lower-case: 2.0.2 @@ -10215,6 +10649,12 @@ snapshots: has-symbols: 1.0.3 object-keys: 1.1.1 + obuf@1.1.2: {} + + on-finished@2.4.1: + dependencies: + ee-first: 1.1.1 + once@1.4.0: dependencies: wrappy: 1.0.2 @@ -10309,6 +10749,8 @@ snapshots: dependencies: entities: 4.5.0 + parseurl@1.3.3: {} + path-browserify@1.0.1: {} path-exists@4.0.0: {} @@ -10326,6 +10768,8 @@ snapshots: lru-cache: 10.4.3 minipass: 7.1.2 + path-to-regexp@0.1.10: {} + path-type@4.0.0: {} pathe@1.1.2: {} @@ -10347,6 +10791,8 @@ snapshots: pg-int8@1.0.1: {} + pg-numeric@1.0.2: {} + pg-pool@3.7.0(pg@8.13.0): dependencies: pg: 8.13.0 @@ -10361,6 +10807,16 @@ snapshots: postgres-date: 1.0.7 postgres-interval: 1.2.0 + pg-types@4.0.2: + dependencies: + pg-int8: 1.0.1 + pg-numeric: 1.0.2 + postgres-array: 3.0.2 + postgres-bytea: 3.0.0 + postgres-date: 2.1.0 + postgres-interval: 3.0.0 + postgres-range: 1.1.4 + pg@8.13.0: dependencies: pg-connection-string: 2.7.0 @@ -10464,14 +10920,26 @@ snapshots: postgres-array@2.0.0: {} + postgres-array@3.0.2: {} + postgres-bytea@1.0.0: {} + postgres-bytea@3.0.0: + dependencies: + obuf: 1.1.2 + postgres-date@1.0.7: {} + postgres-date@2.1.0: {} + postgres-interval@1.2.0: dependencies: xtend: 4.0.2 + postgres-interval@3.0.0: {} + + postgres-range@1.1.4: {} + preact@10.24.2: {} prebuild-install@7.1.2: @@ -10626,6 +11094,11 @@ snapshots: proto-list@1.2.4: {} + proxy-addr@2.0.7: + dependencies: + forwarded: 0.2.0 + ipaddr.js: 1.9.1 + pseudomap@1.0.2: {} psl@1.9.0: {} @@ -10651,6 +11124,15 @@ snapshots: raf-schd@4.0.3: {} + range-parser@1.2.1: {} + + raw-body@2.5.2: + dependencies: + bytes: 3.1.2 + http-errors: 2.0.0 + iconv-lite: 0.4.24 + unpipe: 1.0.0 + rc@1.2.8: dependencies: deep-extend: 0.6.0 @@ -10910,6 +11392,33 @@ snapshots: semver@7.6.3: {} + send@0.19.0: + dependencies: + debug: 2.6.9 + depd: 2.0.0 + destroy: 1.2.0 + encodeurl: 1.0.2 + escape-html: 1.0.3 + etag: 1.8.1 + fresh: 0.5.2 + http-errors: 2.0.0 + mime: 1.6.0 + ms: 2.1.3 + on-finished: 2.4.1 + range-parser: 1.2.1 + statuses: 2.0.1 + transitivePeerDependencies: + - supports-color + + serve-static@1.16.2: + dependencies: + encodeurl: 2.0.0 + escape-html: 1.0.3 + parseurl: 1.3.3 + send: 0.19.0 + transitivePeerDependencies: + - supports-color + set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -10926,6 +11435,8 @@ snapshots: functions-have-names: 1.2.3 has-property-descriptors: 1.0.2 + setprototypeof@1.2.0: {} + shebang-command@1.2.0: dependencies: shebang-regex: 1.0.0 @@ -11013,6 +11524,8 @@ snapshots: stackback@0.0.2: {} + statuses@2.0.1: {} + std-env@3.7.0: {} stop-iteration-iterator@1.0.0: @@ -11227,6 +11740,8 @@ snapshots: dependencies: is-number: 7.0.0 + toidentifier@1.0.1: {} + tough-cookie@4.1.4: dependencies: psl: 1.9.0 @@ -11319,6 +11834,11 @@ snapshots: type-fest@0.21.3: {} + type-is@1.6.18: + dependencies: + media-typer: 0.3.0 + mime-types: 2.1.35 + typescript@5.4.2: {} typescript@5.6.3: {} @@ -11397,6 +11917,8 @@ snapshots: universalify@2.0.1: {} + unpipe@1.0.0: {} + update-browserslist-db@1.1.1(browserslist@4.24.0): dependencies: browserslist: 4.24.0 @@ -11424,6 +11946,8 @@ snapshots: util-deprecate@1.0.2: {} + utils-merge@1.0.1: {} + uuid@9.0.1: {} uvu@0.5.6: @@ -11433,6 +11957,8 @@ snapshots: kleur: 4.1.5 sade: 1.8.1 + vary@1.1.2: {} + vfile-message@3.1.4: dependencies: '@types/unist': 2.0.11 From 220d828211d6663f016b40d5df7168a275c48fb9 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 10 Oct 2024 19:08:08 +0100 Subject: [PATCH 10/34] Update readme and change name of write server --- demos/linearlite/README.md | 20 ++++++++++++++++---- demos/linearlite/package.json | 2 +- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/demos/linearlite/README.md b/demos/linearlite/README.md index 88f23c4b..aec58235 100644 --- a/demos/linearlite/README.md +++ b/demos/linearlite/README.md @@ -1,4 +1,4 @@ -# Linearlite +# Linearlite + PGlite + ElectricSQL ## Setup @@ -9,14 +9,26 @@ From the root directory: - `pnpm i` - `pnpm run -r build` -2. Start the docker containers +2. Add a `.env` file with the following (or similar): + +``` +DATABASE_URL=postgresql://postgres:password@localhost:54321/linearlite +VITE_ELECTRIC_URL=http://localhost:3000 +VITE_WRITE_SERVER_URL=http://localhost:3001 +``` + +3. Start the docker containers `pnpm run backend:up` -3. Start the dev server +4. Start the write path server + +`pnpm run write-server` + +5. Start the dev server `pnpm run dev` -4. When done, tear down the backend containers so you can run other examples +5. When done, tear down the backend containers `pnpm run backend:down` diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index 67c8517b..c9f51ed4 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -10,7 +10,7 @@ "db:migrate": "dotenv -- pnpm exec pg-migrations apply --directory ./db/migrations-server", "db:load-data": "dotenv -- node ./db/load_data.js", "reset": "pnpm backend:down && pnpm backend:up && pnpm db:migrate && pnpm db:load-data", - "server": "dotenv -- tsx server.ts", + "write-server": "dotenv -- tsx server.ts", "dev": "vite", "build": "vite build", "preview": "vite preview", From c7760f7d17ab070cf3306a6723cbce2ef1fb9060 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Fri, 11 Oct 2024 12:54:32 +0100 Subject: [PATCH 11/34] Adjust ordering of issue to fall back to id --- demos/linearlite/src/utils/filterState.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index 17731113..20a4ac5e 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -101,7 +101,9 @@ export function filterStateToSql(filterState: FilterState) { SELECT id, title, priority, status, modified, created, kanbanorder, username, synced FROM issue ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} - ORDER BY ${filterState.orderBy} ${filterState.orderDirection} + ORDER BY + ${filterState.orderBy} ${filterState.orderDirection}, + id ASC ` return { sql, sqlParams } } From d4aa0cdcf8b9e0b28bcf366f842aa116a068fec1 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Sun, 13 Oct 2024 13:58:40 +0100 Subject: [PATCH 12/34] Use windowed live query --- demos/linearlite/db/load_data.js | 82 ++++++++++++------- .../db/migrations-client/01-create_tables.sql | 28 +++++++ demos/linearlite/src/App.tsx | 7 +- .../src/components/PGliteConsoleModal.tsx | 2 +- demos/linearlite/src/components/TopFilter.tsx | 8 +- demos/linearlite/src/pages/List/IssueList.tsx | 22 +++-- demos/linearlite/src/pages/List/IssueRow.tsx | 19 ++++- demos/linearlite/src/pages/List/index.tsx | 54 +++++++++++- demos/linearlite/src/pglite-worker.ts | 16 ++-- 9 files changed, 179 insertions(+), 59 deletions(-) diff --git a/demos/linearlite/db/load_data.js b/demos/linearlite/db/load_data.js index 52d9136b..a13be0d0 100644 --- a/demos/linearlite/db/load_data.js +++ b/demos/linearlite/db/load_data.js @@ -12,42 +12,62 @@ const issues = generateIssues(ISSUES_TO_LOAD) console.info(`Connecting to Postgres at ${DATABASE_URL}`) const db = createPool(DATABASE_URL) -async function makeInsertQuery(db, table, data) { - const columns = Object.keys(data) - const columnsNames = columns.join(`, `) - const values = columns.map((column) => data[column]) - return await db.query(sql` - INSERT INTO ${sql.ident(table)} (${sql(columnsNames)}) - VALUES (${sql.join(values.map(sql.value), `, `)}) - `) -} - -async function importIssue(db, issue) { - const { comments: _, ...rest } = issue - return await makeInsertQuery(db, `issue`, rest) -} +function createBatchInsertQuery(table, columns, dataArray) { + const valuesSql = dataArray.map( + (data) => + sql`(${sql.join( + columns.map((column) => sql.value(data[column])), + sql`, ` + )})` + ) -async function importComment(db, comment) { - return await makeInsertQuery(db, `comment`, comment) + return sql` + INSERT INTO ${sql.ident(table)} (${sql.join( + columns.map((col) => sql.ident(col)), + sql`, ` + )}) + VALUES ${sql.join(valuesSql, sql`, `)} + ` } const issueCount = issues.length let commentCount = 0 -const batchSize = 100 -for (let i = 0; i < issueCount; i += batchSize) { - await db.tx(async (db) => { - db.query(sql`SET CONSTRAINTS ALL DEFERRED;`) // disable FK checks - for (let j = i; j < i + batchSize && j < issueCount; j++) { - process.stdout.write(`Loading issue ${j + 1} of ${issueCount}\r`) - const issue = issues[j] - await importIssue(db, issue) - for (const comment of issue.comments) { - commentCount++ - await importComment(db, comment) - } - } - }) -} + +await db.tx(async (db) => { + await db.query(sql`SET CONSTRAINTS ALL DEFERRED;`) // disable FK checks + + const batchSize = 1000 + for (let i = 0; i < issueCount; i += batchSize) { + const issueBatch = issues + .slice(i, i + batchSize) + .map(({ comments: _, ...rest }) => rest) + await db.query( + createBatchInsertQuery('issue', Object.keys(issueBatch[0]), issueBatch) + ) + + process.stdout.write( + `Loaded ${Math.min(i + batchSize, issueCount)} of ${issueCount} issues\r` + ) + } + + const allComments = issues.flatMap((issue) => issue.comments) + commentCount = allComments.length + + for (let i = 0; i < allComments.length; i += batchSize) { + const commentBatch = allComments.slice(i, i + batchSize) + await db.query( + createBatchInsertQuery( + 'comment', + Object.keys(commentBatch[0]), + commentBatch + ) + ) + + process.stdout.write( + `Loaded ${Math.min(i + batchSize, commentCount)} of ${commentCount} comments\r` + ) + } +}) process.stdout.write(`\n`) diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index 3707ea62..a3891dd7 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -31,6 +31,17 @@ CREATE TABLE IF NOT EXISTS "comment_synced" ( -- the comments when the delete is synced. ); +-- # Indexes for the synced tables +CREATE INDEX IF NOT EXISTS "issue_synced_id_idx" ON "issue_synced" ("id"); +CREATE INDEX IF NOT EXISTS "issue_synced_created_idx" ON "issue_synced" ("created"); +CREATE INDEX IF NOT EXISTS "issue_synced_modified_idx" ON "issue_synced" ("modified"); +CREATE INDEX IF NOT EXISTS "issue_synced_status_idx" ON "issue_synced" ("status"); +CREATE INDEX IF NOT EXISTS "issue_synced_priority_idx" ON "issue_synced" ("priority"); + +CREATE INDEX IF NOT EXISTS "comment_synced_id_idx" ON "comment_synced" ("id"); +CREATE INDEX IF NOT EXISTS "comment_synced_created_at_idx" ON "comment_synced" ("created_at"); +CREATE INDEX IF NOT EXISTS "comment_synced_issue_id_idx" ON "comment_synced" ("issue_id"); + -- # Tables for the local changes -- All changes are applied to these local only tables, and synced back to the server. -- These tables mirror the server tables, but have nullable columns, along with a @@ -82,6 +93,23 @@ CREATE TABLE IF NOT EXISTS "comment_local" ( ); +-- # Indexes for the local tables +CREATE INDEX IF NOT EXISTS "issue_local_id_idx" ON "issue_local" ("id"); +CREATE INDEX IF NOT EXISTS "issue_local_synced_at_idx" ON "issue_local" ("synced_at"); +CREATE INDEX IF NOT EXISTS "issue_local_created_idx" ON "issue_local" ("created"); +CREATE INDEX IF NOT EXISTS "issue_local_modified_idx" ON "issue_local" ("modified"); +CREATE INDEX IF NOT EXISTS "issue_local_status_idx" ON "issue_local" ("status"); +CREATE INDEX IF NOT EXISTS "issue_local_priority_idx" ON "issue_local" ("priority"); +CREATE INDEX IF NOT EXISTS "issue_local_is_deleted_idx" ON "issue_local" ("is_deleted"); +CREATE INDEX IF NOT EXISTS "issue_local_is_new_idx" ON "issue_local" ("is_new"); + +CREATE INDEX IF NOT EXISTS "comment_local_id_idx" ON "comment_local" ("id"); +CREATE INDEX IF NOT EXISTS "comment_local_created_at_idx" ON "comment_local" ("created_at"); +CREATE INDEX IF NOT EXISTS "comment_local_issue_id_idx" ON "comment_local" ("issue_id"); +CREATE INDEX IF NOT EXISTS "comment_local_is_deleted_idx" ON "comment_local" ("is_deleted"); +CREATE INDEX IF NOT EXISTS "comment_local_is_new_idx" ON "comment_local" ("is_new"); + + -- # Views of the unified sync tables and local changes -- They take the synced table and overlay the local changes on top of it. -- Rows ids that have a match in the local table are "changed", and the vales from that diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index 78a87e71..c09de9c3 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -40,11 +40,14 @@ async function issueListLoader({ request }: { request: Request }) { const url = new URL(request.url) const filterState = getFilterStateFromSearchParams(url.searchParams) const { sql, sqlParams } = filterStateToSql(filterState) - const liveIssues = await pg.live.incrementalQuery({ + // const liveIssues = await pg.live.incrementalQuery({ + const liveIssues = await pg.live.query({ query: sql, params: sqlParams, signal: request.signal, - key: 'id', + offset: 0, + limit: 300, + // key: 'id', }) return { liveIssues } } diff --git a/demos/linearlite/src/components/PGliteConsoleModal.tsx b/demos/linearlite/src/components/PGliteConsoleModal.tsx index 2cc6c59d..f2f01842 100644 --- a/demos/linearlite/src/components/PGliteConsoleModal.tsx +++ b/demos/linearlite/src/components/PGliteConsoleModal.tsx @@ -15,7 +15,7 @@ export default function PGliteConsoleModal({ isOpen, onDismiss }: Props) { size="large" >
- +
) diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index ea5c8500..491784fe 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -6,17 +6,17 @@ import ViewOptionMenu from './ViewOptionMenu' import { MenuContext } from '../App' import FilterMenu from './contextmenu/FilterMenu' import { useFilterState } from '../utils/filterState' -import { Issue, PriorityDisplay, StatusDisplay } from '../types/types' +import { PriorityDisplay, StatusDisplay } from '../types/types' interface Props { - issues: Issue[] + filteredIssuesCount: number hideSort?: boolean showSearch?: boolean title?: string } export default function ({ - issues, + filteredIssuesCount, hideSort, showSearch, title = `All issues`, @@ -30,8 +30,6 @@ export default function ({ `SELECT COUNT(id) FROM issue` )?.rows[0].count - const filteredIssuesCount = issues.length ?? 0 - const handleSearchInner = (query: string) => { setFilterState({ ...filterState, diff --git a/demos/linearlite/src/pages/List/IssueList.tsx b/demos/linearlite/src/pages/List/IssueList.tsx index 66cc6dd7..7248ed8f 100644 --- a/demos/linearlite/src/pages/List/IssueList.tsx +++ b/demos/linearlite/src/pages/List/IssueList.tsx @@ -1,15 +1,20 @@ import { CSSProperties } from 'react' -import { FixedSizeList as List, areEqual } from 'react-window' +import { + FixedSizeList as List, + areEqual, + type ListOnItemsRenderedProps, +} from 'react-window' import { memo } from 'react' import AutoSizer from 'react-virtualized-auto-sizer' import IssueRow from './IssueRow' import { Issue } from '../../types/types' export interface IssueListProps { - issues: Issue[] + issues: (Issue | undefined)[] + onItemsRendered?: (props: ListOnItemsRenderedProps) => void } -function IssueList({ issues }: IssueListProps) { +function IssueList({ issues, onItemsRendered }: IssueListProps) { return (
@@ -20,6 +25,7 @@ function IssueList({ issues }: IssueListProps) { itemSize={36} itemData={issues} width={width} + onItemsRendered={onItemsRendered} > {VirtualIssueRow} @@ -35,12 +41,18 @@ const VirtualIssueRow = memo( index, style, }: { - data: Issue[] + data: (Issue | undefined)[] index: number style: CSSProperties }) => { const issue = issues[index] - return + return ( + + ) }, areEqual ) diff --git a/demos/linearlite/src/pages/List/IssueRow.tsx b/demos/linearlite/src/pages/List/IssueRow.tsx index c5e2fa22..05d5f45b 100644 --- a/demos/linearlite/src/pages/List/IssueRow.tsx +++ b/demos/linearlite/src/pages/List/IssueRow.tsx @@ -13,7 +13,7 @@ import { formatDate } from '../../utils/date' import { Issue } from '../../types/types' interface Props { - issue: Issue + issue: Issue | undefined style: CSSProperties } @@ -25,7 +25,7 @@ function IssueRow({ issue, style }: Props) { pg.sql` UPDATE issue SET status = ${status}, modified = ${new Date()} - WHERE id = ${issue.id} + WHERE id = ${issue!.id} ` } @@ -33,14 +33,25 @@ function IssueRow({ issue, style }: Props) { pg.sql` UPDATE issue SET priority = ${priority}, modified = ${new Date()} - WHERE id = ${issue.id} + WHERE id = ${issue!.id} ` } + if (!issue?.id) { + return ( +
+
+
+ ) + } + return (
navigate(`/issue/${issue.id}`)} style={style} diff --git a/demos/linearlite/src/pages/List/index.tsx b/demos/linearlite/src/pages/List/index.tsx index 7b0602ea..a1765f35 100644 --- a/demos/linearlite/src/pages/List/index.tsx +++ b/demos/linearlite/src/pages/List/index.tsx @@ -1,17 +1,65 @@ import { useLiveQuery } from '@electric-sql/pglite-react' import { LiveQuery } from '@electric-sql/pglite/live' import { useLoaderData } from 'react-router-dom' +import { useRef } from 'react' +import { type ListOnItemsRenderedProps } from 'react-window' import TopFilter from '../../components/TopFilter' import IssueList from './IssueList' import { Issue } from '../../types/types' +const CHUNK_SIZE = 50 + +function calculateWindow( + startIndex: number, + stopIndex: number +): { offset: number; limit: number } { + const offset = Math.max( + 0, + Math.floor(startIndex / CHUNK_SIZE) * CHUNK_SIZE - CHUNK_SIZE + ) + const endOffset = Math.ceil(stopIndex / CHUNK_SIZE) * CHUNK_SIZE + CHUNK_SIZE + const limit = endOffset - offset + return { offset, limit } +} + function List({ showSearch = false }) { const { liveIssues } = useLoaderData() as { liveIssues: LiveQuery } - const issues = useLiveQuery(liveIssues).rows + const offset = useRef(liveIssues.initialResults.offset ?? 0) + const limit = useRef(liveIssues.initialResults.limit ?? CHUNK_SIZE) + + const issuesRes = useLiveQuery(liveIssues) + const issues = issuesRes?.rows + + const updateOffsetAndLimit = (itemsRendered: ListOnItemsRenderedProps) => { + const { offset: newOffset, limit: newLimit } = calculateWindow( + itemsRendered.overscanStartIndex, + itemsRendered.overscanStopIndex + ) + + if (newOffset !== offset.current || newLimit !== limit.current) { + offset.current = newOffset + limit.current = newLimit + liveIssues.refresh(newOffset, newLimit) + } + } + + const currentTotalCount = issuesRes.totalCount ?? issuesRes.rows.length + const currentOffset = issuesRes.offset ?? 0 + const filledItems = new Array(currentTotalCount).fill(null) + issues.forEach((issue, index) => { + filledItems[index + currentOffset] = issue + }) + return (
- - + + updateOffsetAndLimit(itemsRendered)} + issues={filledItems} + />
) } diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 4b9150f9..50b693e3 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -34,14 +34,14 @@ worker({ primaryKey: ['id'], shapeKey: 'issues', }) - await pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape/comment`, - }, - table: 'comment_synced', - primaryKey: ['id'], - shapeKey: 'comments', - }) + // await pg.sync.syncShapeToTable({ + // shape: { + // url: `${ELECTRIC_URL}/v1/shape/comment`, + // }, + // table: 'comment_synced', + // primaryKey: ['id'], + // shapeKey: 'comments', + // }) startWritePath(pg) return pg }, From 59ffafb39633f02115377320ff7c85a3e5749b9c Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Mon, 14 Oct 2024 08:57:48 +0100 Subject: [PATCH 13/34] WIP refactor to local edits in synced table --- .../db/migrations-client/01-create_tables.sql | 694 ++++++------------ demos/linearlite/src/pglite-worker.ts | 20 +- 2 files changed, 225 insertions(+), 489 deletions(-) diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index a3891dd7..94519304 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -1,8 +1,5 @@ --- # Tables for the synced shapes --- These are never modified by the user, they are maintained by the sync plugin to --- be a pure copy of the server's state - -CREATE TABLE IF NOT EXISTS "issue_synced" ( +-- # Main tables +CREATE TABLE IF NOT EXISTS "issue" ( "id" UUID NOT NULL, "title" TEXT NOT NULL, "description" TEXT NOT NULL, @@ -12,551 +9,290 @@ CREATE TABLE IF NOT EXISTS "issue_synced" ( "created" TIMESTAMPTZ NOT NULL, "kanbanorder" TEXT NOT NULL, "username" TEXT NOT NULL, - "version" BIGINT NOT NULL, - CONSTRAINT "issue_synced_pkey" PRIMARY KEY ("id") + "version" BIGINT NOT NULL DEFAULT 0, + "synced" BOOLEAN NOT NULL DEFAULT FALSE, + CONSTRAINT "issue_pkey" PRIMARY KEY ("id") ); -CREATE TABLE IF NOT EXISTS "comment_synced" ( +CREATE TABLE IF NOT EXISTS "comment" ( "id" UUID NOT NULL, "body" TEXT NOT NULL, "username" TEXT NOT NULL, "issue_id" UUID NOT NULL, "created_at" TIMESTAMPTZ NOT NULL, - "version" BIGINT NOT NULL, - CONSTRAINT "comment_synced_pkey" PRIMARY KEY ("id") --, - -- FOREIGN KEY (issue_id) REFERENCES issue_synced(id) ON DELETE CASCADE - -- There is currently no transactional integrity between shapes during sync, and as - -- shapes are currently single table we can't enforce FK constraints across shapes. - -- If a issue is deleted, we rely on the cascade applied on the server to delete - -- the comments when the delete is synced. + "version" BIGINT NOT NULL DEFAULT 0, + "synced" BOOLEAN NOT NULL DEFAULT FALSE, + CONSTRAINT "comment_pkey" PRIMARY KEY ("id") ); -- # Indexes for the synced tables -CREATE INDEX IF NOT EXISTS "issue_synced_id_idx" ON "issue_synced" ("id"); -CREATE INDEX IF NOT EXISTS "issue_synced_created_idx" ON "issue_synced" ("created"); -CREATE INDEX IF NOT EXISTS "issue_synced_modified_idx" ON "issue_synced" ("modified"); -CREATE INDEX IF NOT EXISTS "issue_synced_status_idx" ON "issue_synced" ("status"); -CREATE INDEX IF NOT EXISTS "issue_synced_priority_idx" ON "issue_synced" ("priority"); - -CREATE INDEX IF NOT EXISTS "comment_synced_id_idx" ON "comment_synced" ("id"); -CREATE INDEX IF NOT EXISTS "comment_synced_created_at_idx" ON "comment_synced" ("created_at"); -CREATE INDEX IF NOT EXISTS "comment_synced_issue_id_idx" ON "comment_synced" ("issue_id"); - --- # Tables for the local changes --- All changes are applied to these local only tables, and synced back to the server. --- These tables mirror the server tables, but have nullable columns, along with a --- changed_columns column to track which columns have changed. THe "state" of a row is --- determined by combining the local and synced tables, where a "changed_column" from --- the local table overrides the value in the synced table. --- "is_deleted" is set to true for rows that are deleted locally. --- "synced_at" is set to the offset prefix at which the row was synced. We then watch --- for the prefix to be reached in the sync stream, and then delete the local row. --- If a change is made to a row that has been synced, but not yet deleted, the --- "synced_at" value is cleared, and the change is then synced to the server again. - -CREATE TABLE IF NOT EXISTS "issue_local" ( +CREATE INDEX IF NOT EXISTS "issue_id_idx" ON "issue" ("id"); +CREATE INDEX IF NOT EXISTS "issue_priority_idx" ON "issue" ("priority"); +CREATE INDEX IF NOT EXISTS "issue_status_idx" ON "issue" ("status"); +CREATE INDEX IF NOT EXISTS "issue_modified_idx" ON "issue" ("modified"); +CREATE INDEX IF NOT EXISTS "issue_created_idx" ON "issue" ("created"); +CREATE INDEX IF NOT EXISTS "issue_kanbanorder_idx" ON "issue" ("kanbanorder"); + +CREATE INDEX IF NOT EXISTS "comment_id_idx" ON "comment" ("id"); +CREATE INDEX IF NOT EXISTS "comment_issue_id_idx" ON "comment" ("issue_id"); +CREATE INDEX IF NOT EXISTS "comment_created_at_idx" ON "comment" ("created_at"); + +-- # Backup tables +CREATE TABLE IF NOT EXISTS "issue_backup" LIKE "issue"; +ALTER TABLE "issue_backup" ADD CONSTRAINT "issue_backup_pkey" PRIMARY KEY ("id"); + +CREATE TABLE IF NOT EXISTS "comment_backup" LIKE "comment"; +ALTER TABLE "comment_backup" ADD CONSTRAINT "comment_backup_pkey" PRIMARY KEY ("id"); + +-- # Tables to track local deletions +CREATE TABLE IF NOT EXISTS "issue_deleted" ( "id" UUID NOT NULL, - "title" TEXT, - "description" TEXT, - "priority" TEXT, - "status" TEXT, - "modified" TIMESTAMPTZ, - "created" TIMESTAMPTZ, - "kanbanorder" TEXT, - "username" TEXT, - -- A text array of the column names that have changed. - "changed_columns" TEXT[], - -- A columns to track is a row is new or an update. - "is_new" BOOLEAN DEFAULT FALSE, - -- If a row is deleted, this is set to true. - "is_deleted" BOOLEAN DEFAULT FALSE, - -- A column to track the offset prefix at which the row was synced. - "synced_at" BIGINT, - CONSTRAINT "issue_local_pkey" PRIMARY KEY ("id") + CONSTRAINT "issue_deleted_pkey" PRIMARY KEY ("id") ); - -CREATE TABLE IF NOT EXISTS "comment_local" ( +CREATE TABLE IF NOT EXISTS "comment_deleted" ( "id" UUID NOT NULL, - "body" TEXT, - "username" TEXT, - "issue_id" UUID, - "created_at" TIMESTAMPTZ, - -- A text array of the column names that have changed. - "changed_columns" TEXT[], - -- A columns to track is a row is new or an update. - "is_new" BOOLEAN DEFAULT FALSE, - -- If a row is deleted, this is set to true. - "is_deleted" BOOLEAN DEFAULT FALSE, - -- A column to track the offset prefix at which the row was synced. - "synced_at" BIGINT, - CONSTRAINT "comment_local_pkey" PRIMARY KEY ("id") + CONSTRAINT "comment_deleted_pkey" PRIMARY KEY ("id") ); - --- # Indexes for the local tables -CREATE INDEX IF NOT EXISTS "issue_local_id_idx" ON "issue_local" ("id"); -CREATE INDEX IF NOT EXISTS "issue_local_synced_at_idx" ON "issue_local" ("synced_at"); -CREATE INDEX IF NOT EXISTS "issue_local_created_idx" ON "issue_local" ("created"); -CREATE INDEX IF NOT EXISTS "issue_local_modified_idx" ON "issue_local" ("modified"); -CREATE INDEX IF NOT EXISTS "issue_local_status_idx" ON "issue_local" ("status"); -CREATE INDEX IF NOT EXISTS "issue_local_priority_idx" ON "issue_local" ("priority"); -CREATE INDEX IF NOT EXISTS "issue_local_is_deleted_idx" ON "issue_local" ("is_deleted"); -CREATE INDEX IF NOT EXISTS "issue_local_is_new_idx" ON "issue_local" ("is_new"); - -CREATE INDEX IF NOT EXISTS "comment_local_id_idx" ON "comment_local" ("id"); -CREATE INDEX IF NOT EXISTS "comment_local_created_at_idx" ON "comment_local" ("created_at"); -CREATE INDEX IF NOT EXISTS "comment_local_issue_id_idx" ON "comment_local" ("issue_id"); -CREATE INDEX IF NOT EXISTS "comment_local_is_deleted_idx" ON "comment_local" ("is_deleted"); -CREATE INDEX IF NOT EXISTS "comment_local_is_new_idx" ON "comment_local" ("is_new"); - - --- # Views of the unified sync tables and local changes --- They take the synced table and overlay the local changes on top of it. --- Rows ids that have a match in the local table are "changed", and the vales from that --- local row, specified by the "changed_columns" are used in preference to the values --- in the synced table. --- Rows ids that are in the local table but not in the synced table are "added". --- Rows ids that are marked as deleted in the local table are excluded. - -CREATE OR REPLACE VIEW "issue" AS - SELECT - COALESCE(l."id", s."id") AS "id", - CASE WHEN 'title' = ANY(l."changed_columns") THEN l."title" ELSE s."title" END AS "title", - CASE WHEN 'description' = ANY(l."changed_columns") THEN l."description" ELSE s."description" END AS "description", - CASE WHEN 'priority' = ANY(l."changed_columns") THEN l."priority" ELSE s."priority" END AS "priority", - CASE WHEN 'status' = ANY(l."changed_columns") THEN l."status" ELSE s."status" END AS "status", - CASE WHEN 'modified' = ANY(l."changed_columns") THEN l."modified" ELSE s."modified" END AS "modified", - CASE WHEN 'created' = ANY(l."changed_columns") THEN l."created" ELSE s."created" END AS "created", - CASE WHEN 'kanbanorder' = ANY(l."changed_columns") THEN l."kanbanorder" ELSE s."kanbanorder" END AS "kanbanorder", - CASE WHEN 'username' = ANY(l."changed_columns") THEN l."username" ELSE s."username" END AS "username", - CASE WHEN l."id" IS NOT NULL THEN FALSE ELSE TRUE END AS "synced" - FROM "issue_synced" s - FULL OUTER JOIN "issue_local" l ON s."id" = l."id" - WHERE l."id" IS NULL OR l."is_deleted" = FALSE; - -CREATE OR REPLACE VIEW "comment" AS - SELECT - COALESCE(l."id", s."id") AS "id", - CASE WHEN 'body' = ANY(l."changed_columns") THEN l."body" ELSE s."body" END AS "body", - CASE WHEN 'username' = ANY(l."changed_columns") THEN l."username" ELSE s."username" END AS "username", - CASE WHEN 'issue_id' = ANY(l."changed_columns") THEN l."issue_id" ELSE s."issue_id" END AS "issue_id", - CASE WHEN 'created_at' = ANY(l."changed_columns") THEN l."created_at" ELSE s."created_at" END AS "created_at", - CASE WHEN l."id" IS NOT NULL THEN FALSE ELSE TRUE END AS "synced" - FROM "comment_synced" s - FULL OUTER JOIN "comment_local" l ON s."id" = l."id" - WHERE l."id" IS NULL OR l."is_deleted" = FALSE; - --- Add INSTEAD OF INSERT, UPDATE and DELETE triggers to the items view to redirect --- the operations to the appropriate table. - --- The insert trigger performs these actions --- 1. Checks that the id is unique, i.e. not present in the synced table or local table. --- 2. Inserts the row into the local table. --- 3. Sets the "synced_at" to NULL, to indicate that the row has not been synced. --- 4. Sets the "changed_columns" to list all the columns as they are all new. -CREATE OR REPLACE FUNCTION issue_insert_trigger() +-- # Triggers during insert to set synced to true if syncing +CREATE OR REPLACE FUNCTION set_synced_on_insert() RETURNS TRIGGER AS $$ +DECLARE + is_syncing BOOLEAN; BEGIN - -- Check if the id is present in the synced table - IF EXISTS (SELECT 1 FROM "issue_synced" WHERE "id" = NEW."id") THEN - RAISE EXCEPTION 'Cannot insert: id already exists in issue_synced table'; - END IF; + -- Check if electric.syncing is true - defaults to false if not set + SELECT COALESCE(current_setting('electric.syncing', true), 'false')::boolean INTO is_syncing; - -- Check if the id is present in the local table - IF EXISTS (SELECT 1 FROM "issue_local" WHERE "id" = NEW."id") THEN - RAISE EXCEPTION 'Cannot insert: id already exists in issue_local table'; + IF is_syncing THEN + NEW.synced = true; + ELSE + NEW.synced = false; END IF; - -- Insert the row into the local table - INSERT INTO "issue_local" ( - "id", - "title", - "description", - "priority", - "status", - "modified", - "created", - "kanbanorder", - "username", - "changed_columns", - "is_new", - "synced_at" - ) - VALUES ( - NEW."id", - NEW."title", - NEW."description", - NEW."priority", - NEW."status", - NEW."modified", - NEW."created", - NEW."kanbanorder", - NEW."username", - ARRAY['title', 'description', 'priority', 'status', 'modified', 'created', 'kanbanorder', 'username'], - TRUE, - NULL - ); RETURN NEW; END; $$ LANGUAGE plpgsql; -CREATE OR REPLACE TRIGGER issue_insert -INSTEAD OF INSERT ON "issue" +CREATE TRIGGER set_synced_issue_insert +BEFORE INSERT ON issue +FOR EACH ROW +EXECUTE FUNCTION set_synced_on_insert(); + +CREATE TRIGGER set_synced_comment_insert +BEFORE INSERT ON comment FOR EACH ROW -EXECUTE FUNCTION issue_insert_trigger(); +EXECUTE FUNCTION set_synced_on_insert(); --- The update trigger performs these actions --- 1. Does an "upsert" to the local table, setting the changed columns. i.e. if the --- row is not present in the local table, it is inserted. If the row is present, --- it is updated. Only the columns that have changed are updated. --- 2. Sets the "changed_columns" to list all the columns that have changed compared to the synced table. --- 3. Sets the "synced_at" to NULL, to indicate that the row has not been synced. --- 4. When updating a previous local change, it combines both the old change and new change. -CREATE OR REPLACE FUNCTION issue_update_trigger() + +-- # Triggers to handle conflicts during sync +CREATE OR REPLACE FUNCTION handle_issue_update() RETURNS TRIGGER AS $$ DECLARE - synced_row "issue_synced"%ROWTYPE; - local_row "issue_local"%ROWTYPE; - changed_cols TEXT[] := '{}'; + is_syncing BOOLEAN; BEGIN - -- Fetch the corresponding rows from the synced and local tables - SELECT * INTO synced_row FROM "issue_synced" WHERE "id" = NEW."id"; - SELECT * INTO local_row FROM "issue_local" WHERE "id" = NEW."id"; - - -- If the row is not present in the local table, insert it - IF NOT FOUND THEN - -- Compare each column with the synced table and add to changed_cols if different - IF NEW."title" IS DISTINCT FROM synced_row."title" THEN - changed_cols := array_append(changed_cols, 'title'); + -- Check if electric.syncing is true - defaults to false if not set + SELECT COALESCE(current_setting('electric.syncing', true), 'false')::boolean INTO is_syncing; + + IF is_syncing THEN + -- If syncing is true + IF OLD.synced = true THEN + -- If the current row is synced, update normally + RETURN NEW; + ELSIF NEW.version >= OLD.version THEN + -- If the new version is >= current version, update and delete from backup + DELETE FROM issue_backup WHERE id = NEW.id; + -- Set synced to true + NEW.synced = true; + RETURN NEW; + ELSE + -- Otherwise, update the backup table + UPDATE issue_backup SET + title = NEW.title, + description = NEW.description, + priority = NEW.priority, + status = NEW.status, + modified = NEW.modified, + created = NEW.created, + kanbanorder = NEW.kanbanorder, + username = NEW.username, + version = NEW.version, + synced = NEW.synced + WHERE id = NEW.id; + RETURN OLD; END IF; - IF NEW."description" IS DISTINCT FROM synced_row."description" THEN - changed_cols := array_append(changed_cols, 'description'); - END IF; - IF NEW."priority" IS DISTINCT FROM synced_row."priority" THEN - changed_cols := array_append(changed_cols, 'priority'); - END IF; - IF NEW."status" IS DISTINCT FROM synced_row."status" THEN - changed_cols := array_append(changed_cols, 'status'); - END IF; - IF NEW."modified" IS DISTINCT FROM synced_row."modified" THEN - changed_cols := array_append(changed_cols, 'modified'); - END IF; - IF NEW."created" IS DISTINCT FROM synced_row."created" THEN - changed_cols := array_append(changed_cols, 'created'); - END IF; - IF NEW."kanbanorder" IS DISTINCT FROM synced_row."kanbanorder" THEN - changed_cols := array_append(changed_cols, 'kanbanorder'); - END IF; - IF NEW."username" IS DISTINCT FROM synced_row."username" THEN - changed_cols := array_append(changed_cols, 'username'); - END IF; - - INSERT INTO "issue_local" ( - "id", - "title", - "description", - "priority", - "status", - "modified", - "created", - "kanbanorder", - "username", - "changed_columns", - "synced_at" - ) - VALUES ( - NEW."id", - NEW."title", - NEW."description", - NEW."priority", - NEW."status", - NEW."modified", - NEW."created", - NEW."kanbanorder", - NEW."username", - changed_cols, - NULL - ); ELSE - -- Update the local table and adjust changed_columns - UPDATE "issue_local" - SET - "title" = CASE WHEN NEW."title" IS DISTINCT FROM synced_row."title" THEN NEW."title" ELSE local_row."title" END, - "description" = CASE WHEN NEW."description" IS DISTINCT FROM synced_row."description" THEN NEW."description" ELSE local_row."description" END, - "priority" = CASE WHEN NEW."priority" IS DISTINCT FROM synced_row."priority" THEN NEW."priority" ELSE local_row."priority" END, - "status" = CASE WHEN NEW."status" IS DISTINCT FROM synced_row."status" THEN NEW."status" ELSE local_row."status" END, - "modified" = CASE WHEN NEW."modified" IS DISTINCT FROM synced_row."modified" THEN NEW."modified" ELSE local_row."modified" END, - "created" = CASE WHEN NEW."created" IS DISTINCT FROM synced_row."created" THEN NEW."created" ELSE local_row."created" END, - "kanbanorder" = CASE WHEN NEW."kanbanorder" IS DISTINCT FROM synced_row."kanbanorder" THEN NEW."kanbanorder" ELSE local_row."kanbanorder" END, - "username" = CASE WHEN NEW."username" IS DISTINCT FROM synced_row."username" THEN NEW."username" ELSE local_row."username" END, - "changed_columns" = ( - SELECT array_agg(DISTINCT col) - FROM ( - SELECT unnest(local_row."changed_columns") AS col - UNION - SELECT unnest(ARRAY['title', 'description', 'priority', 'status', 'modified', 'created', 'kanbanorder', 'username']) AS col - ) AS cols - WHERE (CASE - WHEN col = 'title' THEN COALESCE(NEW."title", local_row."title") IS DISTINCT FROM synced_row."title" - WHEN col = 'description' THEN COALESCE(NEW."description", local_row."description") IS DISTINCT FROM synced_row."description" - WHEN col = 'priority' THEN COALESCE(NEW."priority", local_row."priority") IS DISTINCT FROM synced_row."priority" - WHEN col = 'status' THEN COALESCE(NEW."status", local_row."status") IS DISTINCT FROM synced_row."status" - WHEN col = 'modified' THEN COALESCE(NEW."modified", local_row."modified") IS DISTINCT FROM synced_row."modified" - WHEN col = 'created' THEN COALESCE(NEW."created", local_row."created") IS DISTINCT FROM synced_row."created" - WHEN col = 'kanbanorder' THEN COALESCE(NEW."kanbanorder", local_row."kanbanorder") IS DISTINCT FROM synced_row."kanbanorder" - WHEN col = 'username' THEN COALESCE(NEW."username", local_row."username") IS DISTINCT FROM synced_row."username" - END) - ), - "synced_at" = NULL - WHERE "id" = NEW."id"; + -- If syncing is not true + IF OLD.synced = true THEN + -- If the current row is synced, copy to backup then update + INSERT INTO issue_backup + SELECT * FROM issue WHERE id = NEW.id; + END IF; + -- Update the row normally + NEW.synced = false; + RETURN NEW; END IF; - RETURN NEW; END; $$ LANGUAGE plpgsql; -CREATE OR REPLACE TRIGGER issue_update -INSTEAD OF UPDATE ON "issue" +CREATE TRIGGER issue_update_trigger +BEFORE UPDATE ON issue FOR EACH ROW -EXECUTE FUNCTION issue_update_trigger(); +EXECUTE FUNCTION handle_issue_update(); --- The delete trigger performs these actions --- 1. Sets the "is_deleted" flag to true for the row in the local table. --- If the row is not present in the local table, it is inserted. --- 2. Sets the "synced_at" to NULL, to indicate that the row has not been synced. -CREATE OR REPLACE FUNCTION issue_delete_trigger() +CREATE OR REPLACE FUNCTION handle_comment_update() RETURNS TRIGGER AS $$ +DECLARE + is_syncing BOOLEAN; BEGIN - -- Is the row present in the local table? - IF EXISTS (SELECT 1 FROM "issue_local" WHERE "id" = OLD."id") THEN - -- Set the "is_deleted" flag to true for the row in the local table - UPDATE "issue_local" - SET - "is_deleted" = TRUE, - "synced_at" = NULL - WHERE "id" = OLD."id"; + -- Check if electric.syncing is true - defaults to false if not set + SELECT COALESCE(current_setting('electric.syncing', true), 'false')::boolean INTO is_syncing; + + IF is_syncing THEN + -- If syncing is true + IF OLD.synced = true THEN + -- If the current row is synced, update normally + RETURN NEW; + ELSIF NEW.version >= OLD.version THEN + -- If the new version is >= current version, update and delete from backup + DELETE FROM comment_backup WHERE id = NEW.id; + RETURN NEW; + ELSE + -- Otherwise, update the backup table + UPDATE comment_backup SET + issue_id = NEW.issue_id, + body = NEW.body, + modified = NEW.modified, + created = NEW.created, + username = NEW.username, + version = NEW.version, + synced = NEW.synced + WHERE id = NEW.id; + RETURN OLD; + END IF; ELSE - -- The row is not present in the local table, insert it - INSERT INTO "issue_local" ( - "id", - "is_deleted", - "synced_at" - ) - VALUES ( - OLD."id", - TRUE, - NULL - ); - END IF; - RETURN OLD; -END; -$$ LANGUAGE plpgsql; - -CREATE OR REPLACE TRIGGER issue_delete -INSTEAD OF DELETE ON "issue" -FOR EACH ROW -EXECUTE FUNCTION issue_delete_trigger(); - --- Add INSTEAD OF INSERT, UPDATE and DELETE triggers to the comments view to redirect --- the operations to the appropriate table. - --- The insert trigger for comments -CREATE OR REPLACE FUNCTION comment_insert_trigger() -RETURNS TRIGGER AS $$ -BEGIN - -- Check if the id is present in the synced table - IF EXISTS (SELECT 1 FROM "comment_synced" WHERE "id" = NEW."id") THEN - RAISE EXCEPTION 'Cannot insert: id already exists in comment_synced table'; - END IF; - - -- Check if the id is present in the local table - IF EXISTS (SELECT 1 FROM "comment_local" WHERE "id" = NEW."id") THEN - RAISE EXCEPTION 'Cannot insert: id already exists in comment_local table'; + -- If syncing is not true + IF OLD.synced = true THEN + -- If the current row is synced, copy to backup then update + INSERT INTO comment_backup + SELECT * FROM comment WHERE id = NEW.id; + END IF; + -- Update the row normally + RETURN NEW; END IF; - - -- Insert the row into the local table - INSERT INTO "comment_local" ( - "id", - "body", - "username", - "issue_id", - "created_at", - "changed_columns", - "is_new", - "synced_at" - ) - VALUES ( - NEW."id", - NEW."body", - NEW."username", - NEW."issue_id", - NEW."created_at", - ARRAY['body', 'username', 'issue_id', 'created_at'], - TRUE, - NULL - ); - RETURN NEW; END; $$ LANGUAGE plpgsql; -CREATE OR REPLACE TRIGGER comment_insert -INSTEAD OF INSERT ON "comment" +CREATE TRIGGER comment_update_trigger +BEFORE UPDATE ON comment FOR EACH ROW -EXECUTE FUNCTION comment_insert_trigger(); +EXECUTE FUNCTION handle_comment_update(); --- The update trigger for comments -CREATE OR REPLACE FUNCTION comment_update_trigger() +-- # Triggers to handle local deletions +CREATE OR REPLACE FUNCTION handle_issue_delete() RETURNS TRIGGER AS $$ BEGIN - -- Is the row present in the local table? - IF EXISTS (SELECT 1 FROM "comment_local" WHERE "id" = NEW."id") THEN - -- Update the existing row in the local table - UPDATE "comment_local" - SET - "body" = CASE WHEN NEW."body" <> OLD."body" THEN NEW."body" ELSE "body" END, - "username" = CASE WHEN NEW."username" <> OLD."username" THEN NEW."username" ELSE "username" END, - "issue_id" = CASE WHEN NEW."issue_id" <> OLD."issue_id" THEN NEW."issue_id" ELSE "issue_id" END, - "created_at" = CASE WHEN NEW."created_at" <> OLD."created_at" THEN NEW."created_at" ELSE "created_at" END, - "changed_columns" = ARRAY_APPEND( - ARRAY_REMOVE( - "changed_columns", - CASE WHEN NEW."body" <> OLD."body" THEN 'body' ELSE NULL END, - CASE WHEN NEW."username" <> OLD."username" THEN 'username' ELSE NULL END, - CASE WHEN NEW."issue_id" <> OLD."issue_id" THEN 'issue_id' ELSE NULL END, - CASE WHEN NEW."created_at" <> OLD."created_at" THEN 'created_at' ELSE NULL END - ), - CASE WHEN NEW."body" <> OLD."body" THEN 'body' - WHEN NEW."username" <> OLD."username" THEN 'username' - WHEN NEW."issue_id" <> OLD."issue_id" THEN 'issue_id' - WHEN NEW."created_at" <> OLD."created_at" THEN 'created_at' - ELSE NULL - END - ), - "synced_at" = NULL - WHERE "id" = NEW."id"; - ELSE - -- The row is not present in the local table, insert it - INSERT INTO "comment_local" ( - "id", - "body", - "username", - "issue_id", - "created_at", - "changed_columns", - "synced_at" - ) - VALUES ( - NEW."id", - NEW."body", - NEW."username", - NEW."issue_id", - NEW."created_at", - ARRAY['body', 'username', 'issue_id', 'created_at'], - NULL - ); + -- If the row is synced, make a backup + IF OLD.synced = true THEN + INSERT INTO issue_backup VALUES (OLD.*); + -- If the row is not synced but has a backup, update the backup + ELSIF EXISTS (SELECT 1 FROM issue_backup WHERE id = OLD.id) THEN + UPDATE issue_backup + SET title = OLD.title, + priority = OLD.priority, + status = OLD.status, + modified = OLD.modified, + created = OLD.created, + kanbanorder = OLD.kanbanorder, + username = OLD.username, + version = OLD.version, + synced = OLD.synced + WHERE id = OLD.id; END IF; - RETURN NEW; -END; -$$ LANGUAGE plpgsql; -CREATE OR REPLACE TRIGGER comment_update -INSTEAD OF UPDATE ON "comment" -FOR EACH ROW -EXECUTE FUNCTION comment_update_trigger(); + -- Insert the id into the deleted_issues table + INSERT INTO deleted_issues (id) VALUES (OLD.id); --- The delete trigger for comments -CREATE OR REPLACE FUNCTION comment_delete_trigger() -RETURNS TRIGGER AS $$ -BEGIN - -- Is the row present in the local table? - IF EXISTS (SELECT 1 FROM "comment_local" WHERE "id" = OLD."id") THEN - -- Set the "is_deleted" flag to true for the row in the local table - UPDATE "comment_local" - SET - "is_deleted" = TRUE, - "synced_at" = NULL - WHERE "id" = OLD."id"; - ELSE - -- The row is not present in the local table, insert it - INSERT INTO "comment_local" ( - "id", - "is_deleted", - "synced_at" - ) - VALUES ( - OLD."id", - TRUE, - NULL - ); - END IF; + -- The row will be deleted automatically after the trigger RETURN OLD; END; $$ LANGUAGE plpgsql; -CREATE OR REPLACE TRIGGER comment_delete -INSTEAD OF DELETE ON "comment" +CREATE TRIGGER issue_delete_trigger +BEFORE DELETE ON issue FOR EACH ROW -EXECUTE FUNCTION comment_delete_trigger(); +EXECUTE FUNCTION handle_issue_delete(); --- Add a trigger that deletes the row from the local table if the row in the synced table is deleted - -CREATE OR REPLACE FUNCTION delete_local_comment_row_on_synced_delete() +CREATE OR REPLACE FUNCTION handle_comment_delete() RETURNS TRIGGER AS $$ BEGIN - DELETE FROM "comment_local" WHERE "id" = OLD."id"; - RETURN OLD; -END; -$$ LANGUAGE plpgsql; + -- If the row is synced, make a backup + IF OLD.synced = true THEN + INSERT INTO comment_backup VALUES (OLD.*); + -- If the row is not synced but has a backup, update the backup + ELSIF EXISTS (SELECT 1 FROM comment_backup WHERE id = OLD.id) THEN + UPDATE comment_backup + SET issue_id = OLD.issue_id, + body = OLD.body, + modified = OLD.modified, + created = OLD.created, + username = OLD.username, + version = OLD.version, + synced = OLD.synced + WHERE id = OLD.id; + END IF; -CREATE OR REPLACE TRIGGER delete_local_row_on_synced_delete -AFTER DELETE ON "comment_synced" -FOR EACH ROW -EXECUTE FUNCTION delete_local_comment_row_on_synced_delete(); + -- Insert the id into the deleted_comments table + INSERT INTO deleted_comments (id) VALUES (OLD.id); -CREATE OR REPLACE FUNCTION delete_local_issue_row_on_synced_delete() -RETURNS TRIGGER AS $$ -BEGIN - DELETE FROM "issue_local" WHERE "id" = OLD."id"; + -- The row will be deleted automatically after the trigger RETURN OLD; END; $$ LANGUAGE plpgsql; -CREATE OR REPLACE TRIGGER delete_local_row_on_synced_delete -AFTER DELETE ON "issue_synced" +CREATE TRIGGER comment_delete_trigger +BEFORE DELETE ON comment FOR EACH ROW -EXECUTE FUNCTION delete_local_issue_row_on_synced_delete(); - --- Add triggers to the synced tables that will remove the row from the local table if --- the row in the synced table has a version that is grater than the synced_at version --- in the local table. +EXECUTE FUNCTION handle_comment_delete(); --- Function to remove local issue row when synced version is greater -CREATE OR REPLACE FUNCTION remove_local_issue_row_on_sync() -RETURNS TRIGGER AS $$ +-- # Revert functions to rollback to a backup if a row is not synced +CREATE OR REPLACE FUNCTION revert_issue_to_backup(issue_id UUID) +RETURNS VOID AS $$ BEGIN - DELETE FROM "issue_local" - WHERE "id" = NEW."id" AND "synced_at" IS NOT NULL AND NEW."version" >= "synced_at"; - RETURN NEW; + -- Check if the issue exists and is unsynced + IF EXISTS (SELECT 1 FROM issue WHERE id = issue_id AND synced = false) THEN + -- Check if a backup exists + IF EXISTS (SELECT 1 FROM issue_backup WHERE id = issue_id) THEN + -- Delete the current unsynced row + DELETE FROM issue WHERE id = issue_id; + + -- Insert the backup row + INSERT INTO issue + SELECT * FROM issue_backup WHERE id = issue_id; + + -- Remove the backup + DELETE FROM issue_backup WHERE id = issue_id; + END IF; + END IF; END; $$ LANGUAGE plpgsql; --- Trigger to remove local issue row when synced version is greater -CREATE OR REPLACE TRIGGER remove_local_issue_row_on_sync_trigger -AFTER INSERT OR UPDATE ON "issue_synced" -FOR EACH ROW -EXECUTE FUNCTION remove_local_issue_row_on_sync(); - --- Function to remove local comment row when synced version is greater -CREATE OR REPLACE FUNCTION remove_local_comment_row_on_sync() -RETURNS TRIGGER AS $$ +CREATE OR REPLACE FUNCTION revert_comment_to_backup(comment_id UUID) +RETURNS VOID AS $$ BEGIN - DELETE FROM "comment_local" - WHERE "id" = NEW."id" AND "synced_at" IS NOT NULL AND NEW."version" >= "synced_at"; - RETURN NEW; + -- Check if the comment exists and is unsynced + IF EXISTS (SELECT 1 FROM comment WHERE id = comment_id AND synced = false) THEN + -- Check if a backup exists + IF EXISTS (SELECT 1 FROM comment_backup WHERE id = comment_id) THEN + -- Delete the current unsynced row + DELETE FROM comment WHERE id = comment_id; + + -- Insert the backup row + INSERT INTO comment + SELECT * FROM comment_backup WHERE id = comment_id; + + -- Remove the backup + DELETE FROM comment_backup WHERE id = comment_id; + END IF; + END IF; END; $$ LANGUAGE plpgsql; - --- Trigger to remove local comment row when synced version is greater -CREATE OR REPLACE TRIGGER remove_local_comment_row_on_sync_trigger -AFTER INSERT OR UPDATE ON "comment_synced" -FOR EACH ROW -EXECUTE FUNCTION remove_local_comment_row_on_sync(); diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 50b693e3..3ec1cc73 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -30,7 +30,7 @@ worker({ shape: { url: `${ELECTRIC_URL}/v1/shape/issue`, }, - table: 'issue_synced', + table: 'issue', primaryKey: ['id'], shapeKey: 'issues', }) @@ -38,11 +38,11 @@ worker({ // shape: { // url: `${ELECTRIC_URL}/v1/shape/comment`, // }, - // table: 'comment_synced', + // table: 'comment', // primaryKey: ['id'], // shapeKey: 'comments', // }) - startWritePath(pg) + // startWritePath(pg) return pg }, }) @@ -57,8 +57,8 @@ async function startWritePath(pg: PGliteWithLive) { }>( ` SELECT * FROM - (SELECT count(id) as issue_count FROM issue_local WHERE synced_at IS NULL), - (SELECT count(id) as comment_count FROM comment_local WHERE synced_at IS NULL) + (SELECT count(id) as issue_count FROM issue WHERE synced = false), + (SELECT count(id) as comment_count FROM comment WHERE synced = false) `, [], async (results) => { @@ -94,8 +94,8 @@ async function doSyncToServer(pg: PGliteWithLive) { changed_columns, is_new, is_deleted - FROM issue_local - WHERE synced_at IS NULL + FROM issue + WHERE synced = false `) const commentRes = await tx.query(` SELECT @@ -107,7 +107,7 @@ async function doSyncToServer(pg: PGliteWithLive) { changed_columns, is_new, is_deleted - FROM comment_local WHERE synced_at IS NULL + FROM comment WHERE synced = false `) issueChanges = issueRes.rows commentChanges = commentRes.rows @@ -128,12 +128,12 @@ async function doSyncToServer(pg: PGliteWithLive) { await pg.transaction(async (tx) => { for (const { id, version } of issueVersions) { await tx.sql` - UPDATE issue_local SET synced_at = ${version} WHERE id = ${id} + UPDATE issue SET synced = true, version = ${version} WHERE id = ${id} ` } for (const { id, version } of commentVersions) { await tx.sql` - UPDATE comment_local SET synced_at = ${version} WHERE id = ${id} + UPDATE comment SET synced = true, version = ${version} WHERE id = ${id} ` } }) From 997a56993fd980a849147336b9672b9c1588e8a9 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Tue, 15 Oct 2024 19:45:28 +0100 Subject: [PATCH 14/34] Working two way sync --- demos/linearlite/db/generate_data.js | 6 +- .../db/migrations-client/01-create_tables.sql | 418 +++++++++--------- .../db/migrations-server/01-create_tables.sql | 30 +- demos/linearlite/package.json | 1 + demos/linearlite/server.ts | 166 ++----- demos/linearlite/src/components/TopFilter.tsx | 2 +- demos/linearlite/src/pages/Board/index.tsx | 10 +- demos/linearlite/src/pages/Issue/Comments.tsx | 14 +- demos/linearlite/src/pglite-worker.ts | 82 ++-- demos/linearlite/src/types/types.ts | 3 +- demos/linearlite/src/utils/changes.ts | 25 +- demos/linearlite/src/utils/filterState.ts | 4 +- pnpm-lock.yaml | 4 + 13 files changed, 340 insertions(+), 425 deletions(-) diff --git a/demos/linearlite/db/generate_data.js b/demos/linearlite/db/generate_data.js index 9ec19c12..c9d101db 100644 --- a/demos/linearlite/db/generate_data.js +++ b/demos/linearlite/db/generate_data.js @@ -41,13 +41,13 @@ function generateIssue(kanbanKey) { } function generateComment(issueId, issueCreatedAt) { + const createdAt = faker.date.between({ from: issueCreatedAt, to: new Date() }) return { id: uuidv4(), body: faker.lorem.text(), username: faker.internet.userName(), issue_id: issueId, - created_at: faker.date - .between({ from: issueCreatedAt, to: new Date() }) - .toISOString(), + created: createdAt.toISOString(), + modified: createdAt.toISOString(), // comments are never modified } } diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index 94519304..f4ed242f 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -1,16 +1,20 @@ --- # Main tables +-- # Tables and indexes CREATE TABLE IF NOT EXISTS "issue" ( "id" UUID NOT NULL, "title" TEXT NOT NULL, "description" TEXT NOT NULL, "priority" TEXT NOT NULL, "status" TEXT NOT NULL, - "modified" TIMESTAMPTZ NOT NULL, - "created" TIMESTAMPTZ NOT NULL, + "modified" TIMESTAMPTZ NOT NULL DEFAULT NOW(), + "created" TIMESTAMPTZ NOT NULL DEFAULT NOW(), "kanbanorder" TEXT NOT NULL, "username" TEXT NOT NULL, - "version" BIGINT NOT NULL DEFAULT 0, - "synced" BOOLEAN NOT NULL DEFAULT FALSE, + "deleted" BOOLEAN NOT NULL DEFAULT FALSE, -- Soft delete for local deletions + "new" BOOLEAN NOT NULL DEFAULT FALSE, -- New row flag for local inserts + "modified_columns" TEXT[] NOT NULL DEFAULT ARRAY[]::TEXT[], -- Columns that have been modified locally + "sent_to_server" BOOLEAN NOT NULL DEFAULT FALSE, -- Flag to track if the row has been sent to the server + "synced" BOOLEAN GENERATED ALWAYS AS (ARRAY_LENGTH(modified_columns, 1) IS NULL AND NOT deleted AND NOT new) STORED, + "backup" JSONB, -- JSONB column to store the backup of the row data for modified columns CONSTRAINT "issue_pkey" PRIMARY KEY ("id") ); @@ -19,280 +23,272 @@ CREATE TABLE IF NOT EXISTS "comment" ( "body" TEXT NOT NULL, "username" TEXT NOT NULL, "issue_id" UUID NOT NULL, - "created_at" TIMESTAMPTZ NOT NULL, - "version" BIGINT NOT NULL DEFAULT 0, - "synced" BOOLEAN NOT NULL DEFAULT FALSE, + "modified" TIMESTAMPTZ NOT NULL DEFAULT NOW(), + "created" TIMESTAMPTZ NOT NULL DEFAULT NOW(), + "deleted" BOOLEAN NOT NULL DEFAULT FALSE, -- Soft delete for local deletions + "new" BOOLEAN NOT NULL DEFAULT FALSE, -- New row flag for local inserts + "modified_columns" TEXT[] NOT NULL DEFAULT ARRAY[]::TEXT[], -- Columns that have been modified locally + "sent_to_server" BOOLEAN NOT NULL DEFAULT FALSE, -- Flag to track if the row has been sent to the server + "synced" BOOLEAN GENERATED ALWAYS AS (ARRAY_LENGTH(modified_columns, 1) IS NULL AND NOT deleted AND NOT new) STORED, + "backup" JSONB, -- JSONB column to store the backup of the row data for modified columns CONSTRAINT "comment_pkey" PRIMARY KEY ("id") ); --- # Indexes for the synced tables CREATE INDEX IF NOT EXISTS "issue_id_idx" ON "issue" ("id"); CREATE INDEX IF NOT EXISTS "issue_priority_idx" ON "issue" ("priority"); CREATE INDEX IF NOT EXISTS "issue_status_idx" ON "issue" ("status"); CREATE INDEX IF NOT EXISTS "issue_modified_idx" ON "issue" ("modified"); CREATE INDEX IF NOT EXISTS "issue_created_idx" ON "issue" ("created"); CREATE INDEX IF NOT EXISTS "issue_kanbanorder_idx" ON "issue" ("kanbanorder"); +CREATE INDEX IF NOT EXISTS "issue_deleted_idx" ON "issue" ("deleted"); +CREATE INDEX IF NOT EXISTS "issue_synced_idx" ON "issue" ("synced"); CREATE INDEX IF NOT EXISTS "comment_id_idx" ON "comment" ("id"); CREATE INDEX IF NOT EXISTS "comment_issue_id_idx" ON "comment" ("issue_id"); -CREATE INDEX IF NOT EXISTS "comment_created_at_idx" ON "comment" ("created_at"); +CREATE INDEX IF NOT EXISTS "comment_created_idx" ON "comment" ("created"); +CREATE INDEX IF NOT EXISTS "comment_deleted_idx" ON "comment" ("deleted"); +CREATE INDEX IF NOT EXISTS "comment_synced_idx" ON "comment" ("synced"); --- # Backup tables -CREATE TABLE IF NOT EXISTS "issue_backup" LIKE "issue"; -ALTER TABLE "issue_backup" ADD CONSTRAINT "issue_backup_pkey" PRIMARY KEY ("id"); +-- During sync the electric.syncing config var is set to true +-- We can use this in triggers to determine the action that should be performed -CREATE TABLE IF NOT EXISTS "comment_backup" LIKE "comment"; -ALTER TABLE "comment_backup" ADD CONSTRAINT "comment_backup_pkey" PRIMARY KEY ("id"); - --- # Tables to track local deletions -CREATE TABLE IF NOT EXISTS "issue_deleted" ( - "id" UUID NOT NULL, - CONSTRAINT "issue_deleted_pkey" PRIMARY KEY ("id") -); -CREATE TABLE IF NOT EXISTS "comment_deleted" ( - "id" UUID NOT NULL, - CONSTRAINT "comment_deleted_pkey" PRIMARY KEY ("id") -); - --- # Triggers during insert to set synced to true if syncing -CREATE OR REPLACE FUNCTION set_synced_on_insert() +-- # Delete triggers: +-- - During sync we delete rows +-- - Otherwise we set the deleted flag to true +CREATE OR REPLACE FUNCTION handle_delete() RETURNS TRIGGER AS $$ DECLARE is_syncing BOOLEAN; + bypass_triggers BOOLEAN; BEGIN -- Check if electric.syncing is true - defaults to false if not set - SELECT COALESCE(current_setting('electric.syncing', true), 'false')::boolean INTO is_syncing; + SELECT COALESCE(NULLIF(current_setting('electric.syncing', true), ''), 'false')::boolean INTO is_syncing; + -- Check if electric.bypass_triggers is true - defaults to false if not set + SELECT COALESCE(NULLIF(current_setting('electric.bypass_triggers', true), ''), 'false')::boolean INTO bypass_triggers; + + IF bypass_triggers THEN + RETURN OLD; + END IF; IF is_syncing THEN - NEW.synced = true; + -- If syncing we delete the row + RETURN OLD; ELSE - NEW.synced = false; + -- For local deletions, check if the row is new + IF OLD.new THEN + -- If the row is new, just delete it + RETURN OLD; + ELSE + -- Otherwise, set the deleted flag instead of actually deleting + EXECUTE format('UPDATE %I SET deleted = true WHERE id = $1', TG_TABLE_NAME) USING OLD.id; + RETURN NULL; + END IF; END IF; - - RETURN NEW; END; $$ LANGUAGE plpgsql; -CREATE TRIGGER set_synced_issue_insert -BEFORE INSERT ON issue +CREATE OR REPLACE TRIGGER issue_delete_trigger +BEFORE DELETE ON issue FOR EACH ROW -EXECUTE FUNCTION set_synced_on_insert(); +EXECUTE FUNCTION handle_delete(); -CREATE TRIGGER set_synced_comment_insert -BEFORE INSERT ON comment +CREATE OR REPLACE TRIGGER comment_delete_trigger +BEFORE DELETE ON comment FOR EACH ROW -EXECUTE FUNCTION set_synced_on_insert(); +EXECUTE FUNCTION handle_delete(); +-- # Insert triggers: +-- - During sync we insert rows and set modified_columns = [] +-- - Otherwise we insert rows and set modified_columns to contain the names of all +-- columns that are not local-state related --- # Triggers to handle conflicts during sync -CREATE OR REPLACE FUNCTION handle_issue_update() +CREATE OR REPLACE FUNCTION handle_insert() RETURNS TRIGGER AS $$ DECLARE is_syncing BOOLEAN; + bypass_triggers BOOLEAN; + modified_columns TEXT[] := ARRAY[]::TEXT[]; + col_name TEXT; + new_value TEXT; + old_value TEXT; BEGIN -- Check if electric.syncing is true - defaults to false if not set - SELECT COALESCE(current_setting('electric.syncing', true), 'false')::boolean INTO is_syncing; + SELECT COALESCE(NULLIF(current_setting('electric.syncing', true), ''), 'false')::boolean INTO is_syncing; + -- Check if electric.bypass_triggers is true - defaults to false if not set + SELECT COALESCE(NULLIF(current_setting('electric.bypass_triggers', true), ''), 'false')::boolean INTO bypass_triggers; + + IF bypass_triggers THEN + RETURN NEW; + END IF; IF is_syncing THEN - -- If syncing is true - IF OLD.synced = true THEN - -- If the current row is synced, update normally - RETURN NEW; - ELSIF NEW.version >= OLD.version THEN - -- If the new version is >= current version, update and delete from backup - DELETE FROM issue_backup WHERE id = NEW.id; - -- Set synced to true - NEW.synced = true; - RETURN NEW; - ELSE - -- Otherwise, update the backup table - UPDATE issue_backup SET - title = NEW.title, - description = NEW.description, - priority = NEW.priority, - status = NEW.status, - modified = NEW.modified, - created = NEW.created, - kanbanorder = NEW.kanbanorder, - username = NEW.username, - version = NEW.version, - synced = NEW.synced - WHERE id = NEW.id; - RETURN OLD; + -- If syncing, we set modified_columns to an empty array + NEW.modified_columns := ARRAY[]::TEXT[]; + NEW.new := FALSE; + NEW.sent_to_server := FALSE; + -- If the row already exists in the database, handle it as an update + EXECUTE format('SELECT 1 FROM %I WHERE id = $1', TG_TABLE_NAME) USING NEW.id INTO old_value; + IF old_value IS NOT NULL THEN + -- Apply update logic similar to handle_update function + FOR col_name IN SELECT column_name + FROM information_schema.columns + WHERE table_name = TG_TABLE_NAME AND + column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server') LOOP + EXECUTE format('SELECT $1.%I', col_name) USING NEW INTO new_value; + EXECUTE format('SELECT %I FROM %I WHERE id = $1', col_name, TG_TABLE_NAME) USING NEW.id INTO old_value; + IF new_value IS DISTINCT FROM old_value THEN + EXECUTE format('UPDATE %I SET %I = $1 WHERE id = $2', TG_TABLE_NAME, col_name) USING new_value, NEW.id; + END IF; + END LOOP; + -- Update modified_columns + EXECUTE format('UPDATE %I SET modified_columns = $1 WHERE id = $2', TG_TABLE_NAME) + USING ARRAY[]::TEXT[], NEW.id; + -- Update new flag + EXECUTE format('UPDATE %I SET new = $1 WHERE id = $2', TG_TABLE_NAME) + USING FALSE, NEW.id; + -- Update sent_to_server flag + EXECUTE format('UPDATE %I SET sent_to_server = $1 WHERE id = $2', TG_TABLE_NAME) + USING FALSE, NEW.id; + RETURN NULL; -- Prevent insertion of a new row END IF; ELSE - -- If syncing is not true - IF OLD.synced = true THEN - -- If the current row is synced, copy to backup then update - INSERT INTO issue_backup - SELECT * FROM issue WHERE id = NEW.id; - END IF; - -- Update the row normally - NEW.synced = false; - RETURN NEW; + -- For local inserts, we add all non-local-state columns to modified_columns + SELECT array_agg(column_name) INTO modified_columns + FROM information_schema.columns + WHERE table_name = TG_TABLE_NAME + AND column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server'); + NEW.modified_columns := modified_columns; + NEW.new := TRUE; END IF; + + RETURN NEW; END; $$ LANGUAGE plpgsql; -CREATE TRIGGER issue_update_trigger -BEFORE UPDATE ON issue +CREATE OR REPLACE TRIGGER issue_insert_trigger +BEFORE INSERT ON issue FOR EACH ROW -EXECUTE FUNCTION handle_issue_update(); +EXECUTE FUNCTION handle_insert(); + +CREATE OR REPLACE TRIGGER comment_insert_trigger +BEFORE INSERT ON comment +FOR EACH ROW +EXECUTE FUNCTION handle_insert(); + +-- # Update triggers: +-- - During sync: +-- - If the new modified timestamp is >= the one in the database, we apply the update, +-- set modified_columns = [], and set backup = NULL +-- - Otherwise we apply the update to columns that are NOT in modified_columns and +-- - and save the values for the non-updated columns in the backup JSONB column +-- - During a non-sync transaction: +-- - If we write over a column (that are not local-state related) that was not +-- already modified, we add that column name to modified_columns, and copy the +-- current value from the column to the backup JSONB column +-- - Otherwise we just update the column -CREATE OR REPLACE FUNCTION handle_comment_update() +CREATE OR REPLACE FUNCTION handle_update() RETURNS TRIGGER AS $$ DECLARE is_syncing BOOLEAN; + bypass_triggers BOOLEAN; + column_name TEXT; + old_value TEXT; + new_value TEXT; BEGIN -- Check if electric.syncing is true - defaults to false if not set - SELECT COALESCE(current_setting('electric.syncing', true), 'false')::boolean INTO is_syncing; + SELECT COALESCE(NULLIF(current_setting('electric.syncing', true), ''), 'false')::boolean INTO is_syncing; + -- Check if electric.bypass_triggers is true - defaults to false if not set + SELECT COALESCE(NULLIF(current_setting('electric.bypass_triggers', true), ''), 'false')::boolean INTO bypass_triggers; + + IF bypass_triggers THEN + RETURN NEW; + END IF; IF is_syncing THEN - -- If syncing is true - IF OLD.synced = true THEN - -- If the current row is synced, update normally - RETURN NEW; - ELSIF NEW.version >= OLD.version THEN - -- If the new version is >= current version, update and delete from backup - DELETE FROM comment_backup WHERE id = NEW.id; - RETURN NEW; + -- During sync + IF (OLD.synced = TRUE) OR (OLD.sent_to_server = TRUE AND NEW.modified >= OLD.modified) THEN + -- Apply the update, reset modified_columns, backup, new, and sent_to_server flags + NEW.modified_columns := ARRAY[]::TEXT[]; + NEW.backup := NULL; + NEW.new := FALSE; + NEW.sent_to_server := FALSE; ELSE - -- Otherwise, update the backup table - UPDATE comment_backup SET - issue_id = NEW.issue_id, - body = NEW.body, - modified = NEW.modified, - created = NEW.created, - username = NEW.username, - version = NEW.version, - synced = NEW.synced - WHERE id = NEW.id; - RETURN OLD; + -- Apply update only to columns not in modified_columns + FOR column_name IN SELECT columns.column_name + FROM information_schema.columns + WHERE columns.table_name = TG_TABLE_NAME + AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server') LOOP + IF column_name != ANY(OLD.modified_columns) THEN + EXECUTE format('SELECT ($1).%I', column_name) USING NEW INTO new_value; + EXECUTE format('SELECT ($1).%I', column_name) USING OLD INTO old_value; + IF new_value IS DISTINCT FROM old_value THEN + EXECUTE format('UPDATE %I SET %I = $1 WHERE id = $2', TG_TABLE_NAME, column_name) USING new_value, NEW.id; + NEW.backup := jsonb_set(COALESCE(NEW.backup, '{}'::jsonb), ARRAY[column_name], to_jsonb(old_value)); + END IF; + END IF; + END LOOP; + NEW.new := FALSE; END IF; ELSE - -- If syncing is not true - IF OLD.synced = true THEN - -- If the current row is synced, copy to backup then update - INSERT INTO comment_backup - SELECT * FROM comment WHERE id = NEW.id; - END IF; - -- Update the row normally - RETURN NEW; - END IF; -END; -$$ LANGUAGE plpgsql; - -CREATE TRIGGER comment_update_trigger -BEFORE UPDATE ON comment -FOR EACH ROW -EXECUTE FUNCTION handle_comment_update(); - --- # Triggers to handle local deletions -CREATE OR REPLACE FUNCTION handle_issue_delete() -RETURNS TRIGGER AS $$ -BEGIN - -- If the row is synced, make a backup - IF OLD.synced = true THEN - INSERT INTO issue_backup VALUES (OLD.*); - -- If the row is not synced but has a backup, update the backup - ELSIF EXISTS (SELECT 1 FROM issue_backup WHERE id = OLD.id) THEN - UPDATE issue_backup - SET title = OLD.title, - priority = OLD.priority, - status = OLD.status, - modified = OLD.modified, - created = OLD.created, - kanbanorder = OLD.kanbanorder, - username = OLD.username, - version = OLD.version, - synced = OLD.synced - WHERE id = OLD.id; + -- During non-sync transaction + FOR column_name IN SELECT columns.column_name + FROM information_schema.columns + WHERE columns.table_name = TG_TABLE_NAME + AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server') LOOP + EXECUTE format('SELECT ($1).%I', column_name) USING NEW INTO new_value; + EXECUTE format('SELECT ($1).%I', column_name) USING OLD INTO old_value; + IF new_value IS DISTINCT FROM old_value THEN + IF NOT (column_name = ANY(OLD.modified_columns)) THEN + NEW.modified_columns := array_append(NEW.modified_columns, column_name); + NEW.backup := jsonb_set(COALESCE(NEW.backup, '{}'::jsonb), ARRAY[column_name], to_jsonb(old_value)); + END IF; + END IF; + END LOOP; + NEW.sent_to_server := FALSE; END IF; - -- Insert the id into the deleted_issues table - INSERT INTO deleted_issues (id) VALUES (OLD.id); - - -- The row will be deleted automatically after the trigger - RETURN OLD; + RETURN NEW; END; $$ LANGUAGE plpgsql; -CREATE TRIGGER issue_delete_trigger -BEFORE DELETE ON issue +CREATE OR REPLACE TRIGGER issue_update_trigger +BEFORE UPDATE ON issue FOR EACH ROW -EXECUTE FUNCTION handle_issue_delete(); - -CREATE OR REPLACE FUNCTION handle_comment_delete() -RETURNS TRIGGER AS $$ -BEGIN - -- If the row is synced, make a backup - IF OLD.synced = true THEN - INSERT INTO comment_backup VALUES (OLD.*); - -- If the row is not synced but has a backup, update the backup - ELSIF EXISTS (SELECT 1 FROM comment_backup WHERE id = OLD.id) THEN - UPDATE comment_backup - SET issue_id = OLD.issue_id, - body = OLD.body, - modified = OLD.modified, - created = OLD.created, - username = OLD.username, - version = OLD.version, - synced = OLD.synced - WHERE id = OLD.id; - END IF; - - -- Insert the id into the deleted_comments table - INSERT INTO deleted_comments (id) VALUES (OLD.id); - - -- The row will be deleted automatically after the trigger - RETURN OLD; -END; -$$ LANGUAGE plpgsql; +EXECUTE FUNCTION handle_update(); -CREATE TRIGGER comment_delete_trigger -BEFORE DELETE ON comment +CREATE OR REPLACE TRIGGER comment_update_trigger +BEFORE UPDATE ON comment FOR EACH ROW -EXECUTE FUNCTION handle_comment_delete(); +EXECUTE FUNCTION handle_update(); --- # Revert functions to rollback to a backup if a row is not synced -CREATE OR REPLACE FUNCTION revert_issue_to_backup(issue_id UUID) -RETURNS VOID AS $$ -BEGIN - -- Check if the issue exists and is unsynced - IF EXISTS (SELECT 1 FROM issue WHERE id = issue_id AND synced = false) THEN - -- Check if a backup exists - IF EXISTS (SELECT 1 FROM issue_backup WHERE id = issue_id) THEN - -- Delete the current unsynced row - DELETE FROM issue WHERE id = issue_id; - - -- Insert the backup row - INSERT INTO issue - SELECT * FROM issue_backup WHERE id = issue_id; - - -- Remove the backup - DELETE FROM issue_backup WHERE id = issue_id; - END IF; - END IF; -END; -$$ LANGUAGE plpgsql; +-- # Functions to revert local changes using the backup column -CREATE OR REPLACE FUNCTION revert_comment_to_backup(comment_id UUID) +CREATE OR REPLACE FUNCTION revert_local_changes(table_name TEXT, row_id UUID) RETURNS VOID AS $$ +DECLARE + backup_data JSONB; + column_name TEXT; + column_value JSONB; BEGIN - -- Check if the comment exists and is unsynced - IF EXISTS (SELECT 1 FROM comment WHERE id = comment_id AND synced = false) THEN - -- Check if a backup exists - IF EXISTS (SELECT 1 FROM comment_backup WHERE id = comment_id) THEN - -- Delete the current unsynced row - DELETE FROM comment WHERE id = comment_id; - - -- Insert the backup row - INSERT INTO comment - SELECT * FROM comment_backup WHERE id = comment_id; - - -- Remove the backup - DELETE FROM comment_backup WHERE id = comment_id; - END IF; + EXECUTE format('SELECT backup FROM %I WHERE id = $1', table_name) + INTO backup_data + USING row_id; + + IF backup_data IS NOT NULL THEN + FOR column_name, column_value IN SELECT * FROM jsonb_each(backup_data) + LOOP + EXECUTE format('UPDATE %I SET %I = $1, modified_columns = array_remove(modified_columns, $2) WHERE id = $3', table_name, column_name) + USING column_value, column_name, row_id; + END LOOP; + + -- Clear the backup after reverting + EXECUTE format('UPDATE %I SET backup = NULL WHERE id = $1', table_name) + USING row_id; END IF; END; $$ LANGUAGE plpgsql; + +-- Example usage: +-- SELECT revert_local_changes('issue', '123e4567-e89b-12d3-a456-426614174000'); +-- SELECT revert_local_changes('comment', '123e4567-e89b-12d3-a456-426614174001'); \ No newline at end of file diff --git a/demos/linearlite/db/migrations-server/01-create_tables.sql b/demos/linearlite/db/migrations-server/01-create_tables.sql index 12417478..84c2cac1 100644 --- a/demos/linearlite/db/migrations-server/01-create_tables.sql +++ b/demos/linearlite/db/migrations-server/01-create_tables.sql @@ -1,15 +1,14 @@ -- Create the tables for the linearlite example CREATE TABLE IF NOT EXISTS "issue" ( "id" UUID NOT NULL, - "title" TEXT NOT NULL, + "title" TEXT NOT NULL, "description" TEXT NOT NULL, "priority" TEXT NOT NULL, "status" TEXT NOT NULL, - "modified" TIMESTAMPTZ NOT NULL, - "created" TIMESTAMPTZ NOT NULL, + "modified" TIMESTAMPTZ NOT NULL DEFAULT NOW(), + "created" TIMESTAMPTZ NOT NULL DEFAULT NOW(), "kanbanorder" TEXT NOT NULL, "username" TEXT NOT NULL, - "version" BIGINT NOT NULL DEFAULT 0, CONSTRAINT "issue_pkey" PRIMARY KEY ("id") ); @@ -18,27 +17,8 @@ CREATE TABLE IF NOT EXISTS "comment" ( "body" TEXT NOT NULL, "username" TEXT NOT NULL, "issue_id" UUID NOT NULL, - "created_at" TIMESTAMPTZ NOT NULL, - "version" BIGINT NOT NULL DEFAULT 0, + "modified" TIMESTAMPTZ NOT NULL DEFAULT NOW(), + "created" TIMESTAMPTZ NOT NULL DEFAULT NOW(), CONSTRAINT "comment_pkey" PRIMARY KEY ("id"), FOREIGN KEY (issue_id) REFERENCES issue(id) ON DELETE CASCADE ); - --- Triggers to update the version column on insert/update -CREATE OR REPLACE FUNCTION update_version() -RETURNS TRIGGER AS $$ -BEGIN - NEW.version := OLD.version + 1; - RETURN NEW; -END; -$$ LANGUAGE plpgsql; - -CREATE TRIGGER update_issue_version -BEFORE UPDATE ON issue -FOR EACH ROW -EXECUTE PROCEDURE update_version(); - -CREATE TRIGGER update_comment_version -BEFORE UPDATE ON comment -FOR EACH ROW -EXECUTE PROCEDURE update_version(); diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index c9f51ed4..fbcef681 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -68,6 +68,7 @@ "@databases/pg-migrations": "^5.0.3", "@faker-js/faker": "^8.4.1", "@tailwindcss/typography": "^0.5.10", + "@types/body-parser": "^1.19.5", "@types/express": "^5.0.0", "@types/jest": "^29.5.12", "@types/lodash.debounce": "^4.0.9", diff --git a/demos/linearlite/server.ts b/demos/linearlite/server.ts index da453d65..3eda4de1 100644 --- a/demos/linearlite/server.ts +++ b/demos/linearlite/server.ts @@ -7,8 +7,6 @@ import { changeSetSchema, CommentChange, IssueChange, - ChangeResponse, - RowChange, } from './src/utils/changes' const DATABASE_URL = process.env.DATABASE_URL @@ -48,18 +46,17 @@ app.listen(3001, () => { console.log('Server is running on port 3001') }) -async function applyChanges(changes: ChangeSet): Promise { +async function applyChanges(changes: ChangeSet): Promise { const { issues, comments } = changes client.query('BEGIN') try { await client.query('COMMIT') - const issueVersions = ( - await Promise.all(issues.map(applyIssueChange)) - ).filter((v) => v !== null) - const commentVersions = ( - await Promise.all(comments.map(applyCommentChange)) - ).filter((v) => v !== null) - return { issueVersions, commentVersions } + for (const issue of issues) { + await applyTableChange('issue', issue) + } + for (const comment of comments) { + await applyTableChange('comment', comment) + } } catch (error) { await client.query('ROLLBACK') throw error @@ -67,137 +64,50 @@ async function applyChanges(changes: ChangeSet): Promise { } /** - * Apply an issue change to the database and return the version of the row after - * the change. - * @param issueChange + * Apply a change to the specified table in the database. + * @param tableName The name of the table to apply the change to + * @param change The change object containing the data to be applied */ -async function applyIssueChange( - issueChange: IssueChange -): Promise { +async function applyTableChange( + tableName: 'issue' | 'comment', + change: IssueChange | CommentChange +): Promise { const { id, - title, - description, - priority, - status, - modified, - created, - kanbanorder, - username, - changed_columns, - is_new, - is_deleted, - } = issueChange + modified_columns, + new: isNew, + deleted, + } = change - if (is_new) { - const result = await client.query( - ` - INSERT INTO issue - (id, title, description, priority, status, modified, created, kanbanorder, username) - VALUES - ($1, $2, $3, $4, $5, $6, $7, $8, $9) - RETURNING version - `, - [ - id, - title, - description, - priority, - status, - modified, - created, - kanbanorder, - username, - ] - ) - return { id, version: result.rows[0].version } - } else if (is_deleted) { + if (deleted) { await client.query( ` - DELETE FROM issue WHERE id = $1 - `, + DELETE FROM ${tableName} WHERE id = $1 + -- ON CONFLICT (id) DO NOTHING + `, [id] ) - return null - } else if (changed_columns) { - const setClause = changed_columns - .map((column, index) => `${column} = $${index + 1}`) - .join(', ') - const values = changed_columns.map((column) => issueChange[column]) - values.push(id) - - const result = await client.query( + } else if (isNew) { + const columns = modified_columns || []; + const values = columns.map(col => change[col]); + await client.query( ` - UPDATE issue - SET ${setClause} - WHERE id = $${changed_columns.length + 1} - RETURNING version + INSERT INTO ${tableName} (id, ${columns.join(', ')}) + VALUES ($1, ${columns.map((_, index) => `$${index + 2}`).join(', ')}) + -- ON CONFLICT (id) DO NOTHING `, - values - ) - return { id, version: result.rows[0].version } + [id, ...values] + ); } else { - return null - } -} - -/** - * Apply a comment change to the database and return the version of the row after - * the change. - * @param commentChange - */ -async function applyCommentChange( - commentChange: CommentChange -): Promise { - const { - id, - issue_id, - body, - username, - created_at, - changed_columns, - is_new, - is_deleted, - } = commentChange - - if (is_new) { - const result = await client.query( - ` - INSERT INTO comment - (id, issue_id, body, username, created_at) - VALUES - ($1, $2, $3, $4, $5) - RETURNING version - `, - [id, issue_id, body, username, created_at] - ) - return { id, version: result.rows[0].version } - } else if (is_deleted) { + const columns = modified_columns || []; + const values = columns.map(col => change[col]); + const updateSet = columns.map((col, index) => `${col} = $${index + 2}`).join(', '); await client.query( ` - DELETE FROM comment WHERE id = $1 - `, - [id] - ) - return null - } else if (changed_columns) { - const setClause = changed_columns - .map((column, index) => `${column} = $${index + 1}`) - .join(', ') - const values = changed_columns.map((column) => commentChange[column]) - values.push(id) - - const result = await client.query( - ` - UPDATE comment - SET ${setClause} - WHERE id = $${changed_columns.length + 1} - RETURNING version + UPDATE ${tableName} SET ${updateSet} WHERE id = $1 + -- ON CONFLICT (id) DO NOTHING `, - values - ) - return { id, version: result.rows[0].version } - } else { - return null + [id, ...values] + ); } } diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index 491784fe..6e547c42 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -27,7 +27,7 @@ export default function ({ const [searchQuery, setSearchQuery] = useState(``) const totalIssuesCount = useLiveQuery<{ count: number }>( - `SELECT COUNT(id) FROM issue` + `SELECT COUNT(id) FROM issue WHERE deleted = false` )?.rows[0].count const handleSearchInner = (query: string) => { diff --git a/demos/linearlite/src/pages/Board/index.tsx b/demos/linearlite/src/pages/Board/index.tsx index bdd48da0..707887c4 100644 --- a/demos/linearlite/src/pages/Board/index.tsx +++ b/demos/linearlite/src/pages/Board/index.tsx @@ -6,13 +6,19 @@ import { useLiveQuery } from '@electric-sql/pglite-react' function Board() { const [_filterState] = useFilterState() - const issuesResults = useLiveQuery.sql`SELECT * FROM issue` + const issuesResults = useLiveQuery( + `SELECT * FROM issue WHERE deleted = false` + ) const issues = issuesResults?.rows ?? [] // TODO: apply filter state return (
- +
) diff --git a/demos/linearlite/src/pages/Issue/Comments.tsx b/demos/linearlite/src/pages/Issue/Comments.tsx index c202fa7e..8245ecc6 100644 --- a/demos/linearlite/src/pages/Issue/Comments.tsx +++ b/demos/linearlite/src/pages/Issue/Comments.tsx @@ -5,6 +5,8 @@ import Avatar from '../../components/Avatar' import { formatDate } from '../../utils/date' import { showWarning } from '../../utils/notification' import { Comment, Issue } from '../../types/types' +import { BsCloudCheck as SyncedIcon } from 'react-icons/bs' +import { BsCloudSlash as UnsyncedIcon } from 'react-icons/bs' import { useLiveQuery, usePGlite } from '@electric-sql/pglite-react' export interface CommentsProps { @@ -32,7 +34,15 @@ function Comments({ issue }: CommentsProps) { {comment.username} - {formatDate(comment.created_at)} + {formatDate(comment.created)} + + + {/* Synced status */} + {comment.synced ? ( + + ) : ( + + )}
@@ -53,7 +63,7 @@ function Comments({ issue }: CommentsProps) { } pg.sql` - INSERT INTO comment (id, issue_id, body, created_at, username) + INSERT INTO comment (id, issue_id, body, created, username) VALUES ( ${crypto.randomUUID()}, ${issue.id}, diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 3ec1cc73..17043e07 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -3,12 +3,7 @@ import { PGlite, Mutex } from '@electric-sql/pglite' import { live, type PGliteWithLive } from '@electric-sql/pglite/live' import { electricSync } from '@electric-sql/pglite-sync' import { migrate } from './migrations' -import type { - IssueChange, - CommentChange, - ChangeSet, - ChangeResponse, -} from './utils/changes' +import type { IssueChange, CommentChange, ChangeSet } from './utils/changes' const WRITE_SERVER_URL = import.meta.env.VITE_WRITE_SERVER_URL const ELECTRIC_URL = import.meta.env.VITE_ELECTRIC_URL @@ -34,15 +29,15 @@ worker({ primaryKey: ['id'], shapeKey: 'issues', }) - // await pg.sync.syncShapeToTable({ - // shape: { - // url: `${ELECTRIC_URL}/v1/shape/comment`, - // }, - // table: 'comment', - // primaryKey: ['id'], - // shapeKey: 'comments', - // }) - // startWritePath(pg) + await pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape/comment`, + }, + table: 'comment', + primaryKey: ['id'], + shapeKey: 'comments', + }) + startWritePath(pg) return pg }, }) @@ -91,11 +86,11 @@ async function doSyncToServer(pg: PGliteWithLive) { created, kanbanorder, username, - changed_columns, - is_new, - is_deleted + modified_columns, + deleted, + new FROM issue - WHERE synced = false + WHERE synced = false AND sent_to_server = false `) const commentRes = await tx.query(` SELECT @@ -103,11 +98,13 @@ async function doSyncToServer(pg: PGliteWithLive) { body, username, issue_id, - created_at, - changed_columns, - is_new, - is_deleted - FROM comment WHERE synced = false + modified, + created, + modified_columns, + deleted, + new + FROM comment + WHERE synced = false AND sent_to_server = false `) issueChanges = issueRes.rows commentChanges = commentRes.rows @@ -123,18 +120,35 @@ async function doSyncToServer(pg: PGliteWithLive) { }, body: JSON.stringify(changeSet), }) - const changeResponse = (await response.json()) as ChangeResponse - const { issueVersions, commentVersions } = changeResponse + if (!response.ok) { + throw new Error('Failed to apply changes') + } await pg.transaction(async (tx) => { - for (const { id, version } of issueVersions) { - await tx.sql` - UPDATE issue SET synced = true, version = ${version} WHERE id = ${id} - ` + // Mark all changes as sent to server, but check that the modified timestamp + // has not changed in the meantime + + tx.exec('SET LOCAL electric.bypass_triggers = true') + + for (const issue of issueChanges!) { + await tx.query( + ` + UPDATE issue + SET sent_to_server = true + WHERE id = $1 AND modified = $2 + `, + [issue.id, issue.modified] + ) } - for (const { id, version } of commentVersions) { - await tx.sql` - UPDATE comment SET synced = true, version = ${version} WHERE id = ${id} - ` + + for (const comment of commentChanges!) { + await tx.query( + ` + UPDATE comment + SET sent_to_server = true + WHERE id = $1 AND modified = $2 + `, + [comment.id, comment.modified] + ) } }) } diff --git a/demos/linearlite/src/types/types.ts b/demos/linearlite/src/types/types.ts index 992ba857..532509c4 100644 --- a/demos/linearlite/src/types/types.ts +++ b/demos/linearlite/src/types/types.ts @@ -30,7 +30,8 @@ export type Comment = { body: string username: string issue_id: string - created_at: Date + created: Date + synced: boolean } export const Priority = { diff --git a/demos/linearlite/src/utils/changes.ts b/demos/linearlite/src/utils/changes.ts index d02894b6..c0a6aa48 100644 --- a/demos/linearlite/src/utils/changes.ts +++ b/demos/linearlite/src/utils/changes.ts @@ -10,9 +10,9 @@ export const issueChangeSchema = z.object({ created: z.string().nullable().optional(), kanbanorder: z.string().nullable().optional(), username: z.string().nullable().optional(), - changed_columns: z.array(z.string()).nullable().optional(), - is_new: z.boolean(), - is_deleted: z.boolean().nullable().optional(), + modified_columns: z.array(z.string()).nullable().optional(), + deleted: z.boolean().nullable().optional(), + new: z.boolean().nullable().optional(), }) export type IssueChange = z.infer @@ -22,10 +22,11 @@ export const commentChangeSchema = z.object({ body: z.string().nullable().optional(), username: z.string().nullable().optional(), issue_id: z.string().nullable().optional(), - created_at: z.string().nullable().optional(), - changed_columns: z.array(z.string()).nullable().optional(), - is_new: z.boolean(), - is_deleted: z.boolean().nullable().optional(), + modified: z.string().nullable().optional(), + created: z.string().nullable().optional(), + modified_columns: z.array(z.string()).nullable().optional(), + deleted: z.boolean().nullable().optional(), + new: z.boolean().nullable().optional(), }) export type CommentChange = z.infer @@ -36,13 +37,3 @@ export const changeSetSchema = z.object({ }) export type ChangeSet = z.infer - -export type RowChange = { - id: string - version: number -} - -export type ChangeResponse = { - issueVersions: RowChange[] - commentVersions: RowChange[] -} diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index 20a4ac5e..3a23e922 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -100,7 +100,9 @@ export function filterStateToSql(filterState: FilterState) { const sql = ` SELECT id, title, priority, status, modified, created, kanbanorder, username, synced FROM issue - ${sqlWhere.length ? `WHERE ${sqlWhere.join(' AND ')}` : ''} + WHERE + ${sqlWhere.length ? `${sqlWhere.join(' AND ')} AND ` : ''} + deleted = false ORDER BY ${filterState.orderBy} ${filterState.orderDirection}, id ASC diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 219525b1..756673dc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -177,6 +177,9 @@ importers: '@tailwindcss/typography': specifier: ^0.5.10 version: 0.5.15(tailwindcss@3.4.13) + '@types/body-parser': + specifier: ^1.19.5 + version: 1.19.5 '@types/express': specifier: ^5.0.0 version: 5.0.0 @@ -2621,6 +2624,7 @@ packages: bun@1.1.30: resolution: {integrity: sha512-ysRL1pq10Xba0jqVLPrKU3YIv0ohfp3cTajCPtpjCyppbn3lfiAVNpGoHfyaxS17OlPmWmR67UZRPw/EueQuug==} + cpu: [arm64, x64] os: [darwin, linux, win32] hasBin: true From 3b26515c8c42fe65be6d7de315df4834206f4482 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Tue, 15 Oct 2024 22:12:31 +0100 Subject: [PATCH 15/34] Improve render perfomance --- demos/linearlite/src/App.tsx | 4 ++-- demos/linearlite/src/components/TopFilter.tsx | 8 ++++++-- demos/linearlite/src/pages/List/index.tsx | 18 +++++++++--------- demos/linearlite/src/utils/filterState.ts | 2 +- 4 files changed, 18 insertions(+), 14 deletions(-) diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index c09de9c3..612a6518 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -46,10 +46,10 @@ async function issueListLoader({ request }: { request: Request }) { params: sqlParams, signal: request.signal, offset: 0, - limit: 300, + limit: 100, // key: 'id', }) - return { liveIssues } + return { liveIssues, filterState } } async function issueLoader({ diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index 6e547c42..f409ab06 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -5,7 +5,7 @@ import { useLiveQuery } from '@electric-sql/pglite-react' import ViewOptionMenu from './ViewOptionMenu' import { MenuContext } from '../App' import FilterMenu from './contextmenu/FilterMenu' -import { useFilterState } from '../utils/filterState' +import { FilterState, useFilterState } from '../utils/filterState' import { PriorityDisplay, StatusDisplay } from '../types/types' interface Props { @@ -13,6 +13,7 @@ interface Props { hideSort?: boolean showSearch?: boolean title?: string + filterState?: FilterState } export default function ({ @@ -20,12 +21,15 @@ export default function ({ hideSort, showSearch, title = `All issues`, + filterState, }: Props) { - const [filterState, setFilterState] = useFilterState() + const [usedFilterState, setFilterState] = useFilterState() const [showViewOption, setShowViewOption] = useState(false) const { showMenu, setShowMenu } = useContext(MenuContext)! const [searchQuery, setSearchQuery] = useState(``) + filterState ??= usedFilterState + const totalIssuesCount = useLiveQuery<{ count: number }>( `SELECT COUNT(id) FROM issue WHERE deleted = false` )?.rows[0].count diff --git a/demos/linearlite/src/pages/List/index.tsx b/demos/linearlite/src/pages/List/index.tsx index a1765f35..5e2fe7b4 100644 --- a/demos/linearlite/src/pages/List/index.tsx +++ b/demos/linearlite/src/pages/List/index.tsx @@ -1,12 +1,11 @@ import { useLiveQuery } from '@electric-sql/pglite-react' import { LiveQuery } from '@electric-sql/pglite/live' import { useLoaderData } from 'react-router-dom' -import { useRef } from 'react' import { type ListOnItemsRenderedProps } from 'react-window' import TopFilter from '../../components/TopFilter' import IssueList from './IssueList' import { Issue } from '../../types/types' - +import { FilterState } from '../../utils/filterState' const CHUNK_SIZE = 50 function calculateWindow( @@ -23,11 +22,14 @@ function calculateWindow( } function List({ showSearch = false }) { - const { liveIssues } = useLoaderData() as { liveIssues: LiveQuery } - const offset = useRef(liveIssues.initialResults.offset ?? 0) - const limit = useRef(liveIssues.initialResults.limit ?? CHUNK_SIZE) + const { liveIssues, filterState } = useLoaderData() as { + liveIssues: LiveQuery + filterState: FilterState + } const issuesRes = useLiveQuery(liveIssues) + const offset = liveIssues.initialResults.offset ?? issuesRes.offset ?? 0 + const limit = liveIssues.initialResults.limit ?? issuesRes.limit ?? CHUNK_SIZE const issues = issuesRes?.rows const updateOffsetAndLimit = (itemsRendered: ListOnItemsRenderedProps) => { @@ -35,10 +37,7 @@ function List({ showSearch = false }) { itemsRendered.overscanStartIndex, itemsRendered.overscanStopIndex ) - - if (newOffset !== offset.current || newLimit !== limit.current) { - offset.current = newOffset - limit.current = newLimit + if (newOffset !== offset || newLimit !== limit) { liveIssues.refresh(newOffset, newLimit) } } @@ -53,6 +52,7 @@ function List({ showSearch = false }) { return (
diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index 3a23e922..f4712e37 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -1,6 +1,6 @@ import { useSearchParams } from 'react-router-dom' -interface FilterState { +export interface FilterState { orderBy: string orderDirection: `asc` | `desc` status?: string[] From 5b29bd2bd3788e2a57d3726bed627d0771f2c69f Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Tue, 15 Oct 2024 22:18:56 +0100 Subject: [PATCH 16/34] Fix search --- demos/linearlite/src/utils/filterState.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index f4712e37..b5ce3bb7 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -95,7 +95,7 @@ export function filterStateToSql(filterState: FilterState) { } if (filterState.query) { sqlWhere.push(`title ILIKE $${i++}`) - sqlParams.push(filterState.query) + sqlParams.push(`%${filterState.query}%`) } const sql = ` SELECT id, title, priority, status, modified, created, kanbanorder, username, synced From 1e66ad9265a2edbf1b3605418d295697a1d13843 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Tue, 15 Oct 2024 22:55:00 +0100 Subject: [PATCH 17/34] Fix debounce on issue page --- demos/linearlite/src/pages/Issue/index.tsx | 24 +++++++++++++--------- demos/linearlite/src/pglite-worker.ts | 16 +++++++-------- 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/demos/linearlite/src/pages/Issue/index.tsx b/demos/linearlite/src/pages/Issue/index.tsx index 6ca59681..7463cc57 100644 --- a/demos/linearlite/src/pages/Issue/index.tsx +++ b/demos/linearlite/src/pages/Issue/index.tsx @@ -1,5 +1,5 @@ import { useNavigate, useLoaderData } from 'react-router-dom' -import { useState, useRef } from 'react' +import { useState, useRef, useCallback } from 'react' import { BsCloudCheck as SyncedIcon } from 'react-icons/bs' import { BsCloudSlash as UnsyncedIcon } from 'react-icons/bs' import { LiveQuery } from '@electric-sql/pglite/live' @@ -65,15 +65,19 @@ function IssuePage() { ` } - const handleTitleChangeDebounced = debounce(async (title: string) => { - pg.sql` + const handleTitleChangeDebounced = useCallback( + debounce(async (title: string) => { + console.log(`handleTitleChangeDebounced`, title) + pg.sql` UPDATE issue SET title = ${title}, modified = ${new Date()} WHERE id = ${issue.id} ` - // We can't set titleIsDirty.current = false here because we haven't yet received - // the updated issue from the db - }, debounceTime) + // We can't set titleIsDirty.current = false here because we haven't yet received + // the updated issue from the db + }, debounceTime), + [pg] + ) const handleTitleChange = (title: string) => { setDirtyTitle(title) @@ -82,8 +86,8 @@ function IssuePage() { handleTitleChangeDebounced(title) } - const handleDescriptionChangeDebounced = debounce( - async (description: string) => { + const handleDescriptionChangeDebounced = useCallback( + debounce(async (description: string) => { pg.sql` UPDATE issue SET description = ${description}, modified = ${new Date()} @@ -91,8 +95,8 @@ function IssuePage() { ` // We can't set descriptionIsDirty.current = false here because we haven't yet received // the updated issue from the db - }, - debounceTime + }, debounceTime), + [pg] ) const handleDescriptionChange = (description: string) => { diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 17043e07..f1fc2592 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -29,14 +29,14 @@ worker({ primaryKey: ['id'], shapeKey: 'issues', }) - await pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape/comment`, - }, - table: 'comment', - primaryKey: ['id'], - shapeKey: 'comments', - }) + // await pg.sync.syncShapeToTable({ + // shape: { + // url: `${ELECTRIC_URL}/v1/shape/comment`, + // }, + // table: 'comment', + // primaryKey: ['id'], + // shapeKey: 'comments', + // }) startWritePath(pg) return pg }, From 48ff4bbe5dfff5d8717111f0ff9c5bc2d1fd5bf4 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 16 Oct 2024 11:07:24 +0100 Subject: [PATCH 18/34] WIP Kanban board with windowed live queries --- demos/linearlite/src/App.tsx | 43 +++- demos/linearlite/src/components/TopFilter.tsx | 10 +- .../linearlite/src/pages/Board/IssueBoard.tsx | 187 ++++++++++-------- demos/linearlite/src/pages/Board/IssueCol.tsx | 38 +++- demos/linearlite/src/pages/Board/index.tsx | 29 ++- demos/linearlite/src/types/types.ts | 12 +- 6 files changed, 216 insertions(+), 103 deletions(-) diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index 612a6518..842cc12a 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -7,7 +7,7 @@ import { type Params, } from 'react-router-dom' import 'react-toastify/dist/ReactToastify.css' -import { live, LiveNamespace } from '@electric-sql/pglite/live' +import { live, LiveNamespace, LiveQuery } from '@electric-sql/pglite/live' import { PGliteWorker } from '@electric-sql/pglite/worker' import { PGliteProvider } from '@electric-sql/pglite-react' import PGWorker from './pglite-worker.js?worker' @@ -17,8 +17,9 @@ import Issue from './pages/Issue' import { getFilterStateFromSearchParams, filterStateToSql, + FilterState, } from './utils/filterState' -import { Issue as IssueType } from './types/types' +import { Issue as IssueType, Status, StatusValue } from './types/types' interface MenuContextInterface { showMenu: boolean @@ -52,6 +53,43 @@ async function issueListLoader({ request }: { request: Request }) { return { liveIssues, filterState } } +async function boardIssueListLoader({ request }: { request: Request }) { + const pg = await pgPromise + const url = new URL(request.url) + const filterState = getFilterStateFromSearchParams(url.searchParams) + + const columnsLiveIssues: Partial>> = + {} + + for (const status of Object.values(Status)) { + const colFilterState: FilterState = { + ...filterState, + orderBy: 'kanbanorder', + orderDirection: 'asc', + status: [status], + } + const { sql: colSql, sqlParams: colSqlParams } = + filterStateToSql(colFilterState) + const colLiveIssues = await pg.live.query({ + query: colSql, + params: colSqlParams, + signal: request.signal, + offset: 0, + limit: 10, + // key: 'id', + }) + columnsLiveIssues[status] = colLiveIssues + } + + return { + columnsLiveIssues: columnsLiveIssues as Record< + StatusValue, + LiveQuery + >, + filterState, + } +} + async function issueLoader({ params, request, @@ -86,6 +124,7 @@ const router = createBrowserRouter([ { path: `/board`, element: , + loader: boardIssueListLoader, }, { path: `/issue/:id`, diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index f409ab06..0d9b0871 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -118,7 +118,10 @@ export default function ({ Priority is {filterState.priority - ?.map((priority) => PriorityDisplay[priority]) + ?.map( + (priority) => + PriorityDisplay[priority as keyof typeof PriorityDisplay] + ) .join(`, `)} Status is {filterState.status - ?.map((status) => StatusDisplay[status]) + ?.map( + (status) => + StatusDisplay[status as keyof typeof StatusDisplay] + ) .join(`, `)} > } interface MovedIssues { [id: string]: { - status?: string + status?: StatusValue kanbanorder?: string } } -export default function IssueBoard({ issues }: IssueBoardProps) { +export default function IssueBoard({ columnsLiveIssues }: IssueBoardProps) { const pg = usePGlite() const [movedIssues, setMovedIssues] = useState({}) @@ -27,11 +28,14 @@ export default function IssueBoard({ issues }: IssueBoardProps) { useEffect(() => { // Reset moved issues when issues change setMovedIssues({}) - }, [issues]) - - const { issuesByStatus } = useMemo(() => { - const issuesByStatus: Record = {} - issues.forEach((issue) => { + }, [columnsLiveIssues]) + + const issuesByStatus: Record = {} + const issuesResByStatus: Record> = {} + Object.entries(columnsLiveIssues).forEach(([status, liveQuery]) => { + let issuesRes = useLiveQuery(liveQuery) + issuesResByStatus[status] = issuesRes + issuesRes.rows.forEach((issue) => { // If the issue has been moved, patch with new status and kanbanorder for sorting if (movedIssues[issue.id]) { issue = { @@ -39,33 +43,43 @@ export default function IssueBoard({ issues }: IssueBoardProps) { ...movedIssues[issue.id], } } + const status = issue.status.toLowerCase() if (!issuesByStatus[status]) { issuesByStatus[status] = [] } issuesByStatus[status].push(issue) }) + }) - // Sort issues in each column by kanbanorder and issue id - Object.keys(issuesByStatus).forEach((status) => { - issuesByStatus[status].sort((a, b) => { - if (a.kanbanorder < b.kanbanorder) { - return -1 - } - if (a.kanbanorder > b.kanbanorder) { - return 1 - } - // Use unique issue id to break ties - if (a.id < b.id) { - return -1 - } else { - return 1 - } - }) + // Sort issues in each column by kanbanorder and issue id + Object.keys(issuesByStatus).forEach((status) => { + issuesByStatus[status].sort((a, b) => { + if (a.kanbanorder < b.kanbanorder) { + return -1 + } + if (a.kanbanorder > b.kanbanorder) { + return 1 + } + // Use unique issue id to break ties + if (a.id < b.id) { + return -1 + } else { + return 1 + } }) - - return { issuesByStatus } - }, [issues, movedIssues]) + }) + + // Fill in undefined to create the leader and tail for the offset and limit + Object.keys(issuesByStatus).forEach((status) => { + // new array of lenth issuesResByStatus[status].total_count + const issues = new Array(issuesResByStatus[status]?.totalCount || 0) + const offset = issuesResByStatus[status]?.offset || 0 + issuesByStatus[status].forEach((issue, index) => { + issues[index + offset] = issue + }) + issuesByStatus[status] = issues + }) const adjacentIssues = ( column: string, @@ -94,52 +108,52 @@ export default function IssueBoard({ issues }: IssueBoardProps) { return { prevIssue, nextIssue } } - /** - * Fix duplicate kanbanorder, this is recursive so we can fix multiple consecutive - * issues with the same kanbanorder. - * @param issue The issue to fix the kanbanorder for - * @param issueBefore The issue immediately before one that needs fixing - * @returns The new kanbanorder that was set for the issue - */ - const fixKanbanOrder = (issue: Issue, issueBefore: Issue) => { - // First we find the issue immediately after the issue that needs fixing. - const issueIndex = issuesByStatus[issue.status].indexOf(issue) - const issueAfter = issuesByStatus[issue.status][issueIndex + 1] - - // The kanbanorder of the issue before the issue that needs fixing - const prevKanbanOrder = issueBefore?.kanbanorder - - // The kanbanorder of the issue after the issue that needs fixing - let nextKanbanOrder = issueAfter?.kanbanorder - - // If the next issue has the same kanbanorder the next issue needs fixing too, - // we recursively call fixKanbanOrder for that issue to fix it's kanbanorder. - if (issueAfter && nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { - nextKanbanOrder = fixKanbanOrder(issueAfter, issueBefore) - } - - // Generate a new kanbanorder between the previous and next issues - const kanbanorder = generateKeyBetween(prevKanbanOrder, nextKanbanOrder) - - // Keep track of moved issues so we can override the kanbanorder when sorting - // We do this due to the momentary lag between updating the database and the live - // query updating the issues. - setMovedIssues((prev) => ({ - ...prev, - [issue.id]: { - kanbanorder: kanbanorder, - }, - })) - - pg.sql` - UPDATE issue - SET kanbanorder = ${kanbanorder} - WHERE id = ${issue.id} - ` - - // Return the new kanbanorder - return kanbanorder - } + // /** + // * Fix duplicate kanbanorder, this is recursive so we can fix multiple consecutive + // * issues with the same kanbanorder. + // * @param issue The issue to fix the kanbanorder for + // * @param issueBefore The issue immediately before one that needs fixing + // * @returns The new kanbanorder that was set for the issue + // */ + // const fixKanbanOrder = (issue: Issue, issueBefore: Issue) => { + // // First we find the issue immediately after the issue that needs fixing. + // const issueIndex = issuesByStatus[issue.status].indexOf(issue) + // const issueAfter = issuesByStatus[issue.status][issueIndex + 1] + + // // The kanbanorder of the issue before the issue that needs fixing + // const prevKanbanOrder = issueBefore?.kanbanorder + + // // The kanbanorder of the issue after the issue that needs fixing + // let nextKanbanOrder = issueAfter?.kanbanorder + + // // If the next issue has the same kanbanorder the next issue needs fixing too, + // // we recursively call fixKanbanOrder for that issue to fix it's kanbanorder. + // if (issueAfter && nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { + // nextKanbanOrder = fixKanbanOrder(issueAfter, issueBefore) + // } + + // // Generate a new kanbanorder between the previous and next issues + // const kanbanorder = generateKeyBetween(prevKanbanOrder, nextKanbanOrder) + + // // Keep track of moved issues so we can override the kanbanorder when sorting + // // We do this due to the momentary lag between updating the database and the live + // // query updating the issues. + // setMovedIssues((prev) => ({ + // ...prev, + // [issue.id]: { + // kanbanorder: kanbanorder, + // }, + // })) + + // pg.sql` + // UPDATE issue + // SET kanbanorder = ${kanbanorder} + // WHERE id = ${issue.id} + // ` + + // // Return the new kanbanorder + // return kanbanorder + // } /** * Get a new kanbanorder that sits between two other issues. @@ -151,13 +165,13 @@ export default function IssueBoard({ issues }: IssueBoardProps) { const getNewKanbanOrder = (issueBefore: Issue, issueAfter: Issue) => { const prevKanbanOrder = issueBefore?.kanbanorder let nextKanbanOrder = issueAfter?.kanbanorder - if (nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { - // If the next issue has the same kanbanorder as the previous issue, - // we need to fix the kanbanorder of the next issue. - // This can happen when two users move issues into the same position at the same - // time. - nextKanbanOrder = fixKanbanOrder(issueAfter, issueBefore) - } + // if (nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { + // // If the next issue has the same kanbanorder as the previous issue, + // // we need to fix the kanbanorder of the next issue. + // // This can happen when two users move issues into the same position at the same + // // time. + // nextKanbanOrder = fixKanbanOrder(issueAfter, issueBefore) + // } return generateKeyBetween(prevKanbanOrder, nextKanbanOrder) } @@ -178,7 +192,7 @@ export default function IssueBoard({ issues }: IssueBoardProps) { setMovedIssues((prev) => ({ ...prev, [draggableId]: { - status: destination.droppableId, + status: destination.droppableId as StatusValue, kanbanorder, modified, }, @@ -198,26 +212,31 @@ export default function IssueBoard({ issues }: IssueBoardProps) { title={StatusDisplay[Status.BACKLOG]} status={Status.BACKLOG} issues={issuesByStatus[Status.BACKLOG]} + liveQuery={columnsLiveIssues[Status.BACKLOG]} />
diff --git a/demos/linearlite/src/pages/Board/IssueCol.tsx b/demos/linearlite/src/pages/Board/IssueCol.tsx index 4f68bfdc..663002a3 100644 --- a/demos/linearlite/src/pages/Board/IssueCol.tsx +++ b/demos/linearlite/src/pages/Board/IssueCol.tsx @@ -8,23 +8,56 @@ import { DraggableProvided, DraggableStateSnapshot, } from 'react-beautiful-dnd' -import { FixedSizeList as List } from 'react-window' +import { FixedSizeList as List, ListOnItemsRenderedProps } from 'react-window' import AutoSizer from 'react-virtualized-auto-sizer' import IssueItem, { itemHeight } from './IssueItem' import { Issue } from '../../types/types' +import { LiveQuery } from '@electric-sql/pglite/live' +import { useLiveQuery } from '@electric-sql/pglite-react' + +const CHUNK_SIZE = 25 + +function calculateWindow( + startIndex: number, + stopIndex: number +): { offset: number; limit: number } { + const offset = Math.max( + 0, + Math.floor(startIndex / CHUNK_SIZE) * CHUNK_SIZE - CHUNK_SIZE + ) + const endOffset = Math.ceil(stopIndex / CHUNK_SIZE) * CHUNK_SIZE + CHUNK_SIZE + const limit = endOffset - offset + return { offset, limit } +} interface Props { status: string title: string issues: Array | undefined + liveQuery: LiveQuery } const itemSpacing = 8 -function IssueCol({ title, status, issues }: Props) { +function IssueCol({ title, status, issues, liveQuery }: Props) { issues = issues || [] const statusIcon = + const issuesRes = useLiveQuery(liveQuery) + + const offset = liveQuery.initialResults.offset ?? issuesRes.offset ?? 0 + const limit = liveQuery.initialResults.limit ?? issuesRes.limit ?? CHUNK_SIZE + + const handleOnItemsRendered = (props: ListOnItemsRenderedProps) => { + const { offset: newOffset, limit: newLimit } = calculateWindow( + props.overscanStartIndex, + props.overscanStopIndex + ) + if (newOffset !== offset || newLimit !== limit) { + liveQuery.refresh(newOffset, newLimit) + } + } + return (
@@ -77,6 +110,7 @@ function IssueCol({ title, status, issues }: Props) { outerRef={droppableProvided.innerRef} itemData={issues} className="w-full border-gray-200 pt-0.5" + onItemsRendered={handleOnItemsRendered} // ref={provided.innerRef} // {...provided.droppableProps} > diff --git a/demos/linearlite/src/pages/Board/index.tsx b/demos/linearlite/src/pages/Board/index.tsx index 707887c4..9551fb37 100644 --- a/demos/linearlite/src/pages/Board/index.tsx +++ b/demos/linearlite/src/pages/Board/index.tsx @@ -1,25 +1,36 @@ import TopFilter from '../../components/TopFilter' import IssueBoard from './IssueBoard' -import { useFilterState } from '../../utils/filterState' -import { Issue } from '../../types/types' +import { FilterState } from '../../utils/filterState' +import { Issue, StatusValue } from '../../types/types' import { useLiveQuery } from '@electric-sql/pglite-react' +import { useLoaderData } from 'react-router-dom' +import { LiveQuery } from '@electric-sql/pglite/live' + +export interface BoardLoaderData { + filterState: FilterState + columnsLiveIssues: Record> +} function Board() { - const [_filterState] = useFilterState() - const issuesResults = useLiveQuery( - `SELECT * FROM issue WHERE deleted = false` + const { columnsLiveIssues, filterState } = useLoaderData() as BoardLoaderData + + const totalIssuesCount = Object.values(columnsLiveIssues).reduce( + (total, liveQuery) => { + const issuesRes = useLiveQuery(liveQuery) + return total + (issuesRes?.totalCount ?? 0) + }, + 0 ) - const issues = issuesResults?.rows ?? [] - // TODO: apply filter state return (
- +
) } diff --git a/demos/linearlite/src/types/types.ts b/demos/linearlite/src/types/types.ts index 532509c4..6f173d35 100644 --- a/demos/linearlite/src/types/types.ts +++ b/demos/linearlite/src/types/types.ts @@ -40,7 +40,9 @@ export const Priority = { HIGH: `high`, LOW: `low`, MEDIUM: `medium`, -} +} as const + +export type PriorityValue = (typeof Priority)[keyof typeof Priority] export const PriorityDisplay = { [Priority.NONE]: `None`, @@ -60,8 +62,8 @@ export const PriorityIcons = { export const PriorityOptions: [ React.FunctionComponent>, + PriorityValue, string, - (typeof Priority)[keyof typeof Priority], ][] = [ [PriorityIcons[Priority.NONE], Priority.NONE, `None`], [PriorityIcons[Priority.URGENT], Priority.URGENT, `Urgent`], @@ -76,7 +78,9 @@ export const Status = { IN_PROGRESS: `in_progress`, DONE: `done`, CANCELED: `canceled`, -} +} as const + +export type StatusValue = (typeof Status)[keyof typeof Status] export const StatusDisplay = { [Status.BACKLOG]: `Backlog`, @@ -96,7 +100,7 @@ export const StatusIcons = { export const StatusOptions: [ React.FunctionComponent>, - (typeof Status)[keyof typeof Status], + StatusValue, string, ][] = [ [StatusIcons[Status.BACKLOG], Status.BACKLOG, StatusDisplay[Status.BACKLOG]], From a080ce73337844ee9473878c24162c2dae7cb69a Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 16 Oct 2024 12:32:15 +0100 Subject: [PATCH 19/34] Debounce saerch --- demos/linearlite/src/components/TopFilter.tsx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index 0d9b0871..f181eb8a 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -7,6 +7,7 @@ import { MenuContext } from '../App' import FilterMenu from './contextmenu/FilterMenu' import { FilterState, useFilterState } from '../utils/filterState' import { PriorityDisplay, StatusDisplay } from '../types/types' +import debounce from 'lodash.debounce' interface Props { filteredIssuesCount: number @@ -34,12 +35,12 @@ export default function ({ `SELECT COUNT(id) FROM issue WHERE deleted = false` )?.rows[0].count - const handleSearchInner = (query: string) => { + const handleSearchInner = debounce((query: string) => { setFilterState({ ...filterState, query: query, }) - } + }, 300) const handleSearch = (query: string) => { setSearchQuery(query) From cc9f4c4f08f91a34ed2881980b5370415a812f8b Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 16 Oct 2024 13:03:22 +0100 Subject: [PATCH 20/34] Use Postgres FTS for search --- .../db/migrations-client/01-create_tables.sql | 7 ++++++- demos/linearlite/src/pglite-worker.ts | 16 ++++++++-------- demos/linearlite/src/utils/filterState.ts | 4 ++-- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index f4ed242f..04d3103b 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -15,6 +15,10 @@ CREATE TABLE IF NOT EXISTS "issue" ( "sent_to_server" BOOLEAN NOT NULL DEFAULT FALSE, -- Flag to track if the row has been sent to the server "synced" BOOLEAN GENERATED ALWAYS AS (ARRAY_LENGTH(modified_columns, 1) IS NULL AND NOT deleted AND NOT new) STORED, "backup" JSONB, -- JSONB column to store the backup of the row data for modified columns + "search_vector" tsvector GENERATED ALWAYS AS ( + setweight(to_tsvector('simple', coalesce(title, '')), 'A') || + setweight(to_tsvector('simple', coalesce(description, '')), 'B') + ) STORED, CONSTRAINT "issue_pkey" PRIMARY KEY ("id") ); @@ -42,6 +46,7 @@ CREATE INDEX IF NOT EXISTS "issue_created_idx" ON "issue" ("created"); CREATE INDEX IF NOT EXISTS "issue_kanbanorder_idx" ON "issue" ("kanbanorder"); CREATE INDEX IF NOT EXISTS "issue_deleted_idx" ON "issue" ("deleted"); CREATE INDEX IF NOT EXISTS "issue_synced_idx" ON "issue" ("synced"); +CREATE INDEX IF NOT EXISTS "issue_search_idx" ON "issue" USING GIN ("search_vector"); CREATE INDEX IF NOT EXISTS "comment_id_idx" ON "comment" ("id"); CREATE INDEX IF NOT EXISTS "comment_issue_id_idx" ON "comment" ("issue_id"); @@ -291,4 +296,4 @@ $$ LANGUAGE plpgsql; -- Example usage: -- SELECT revert_local_changes('issue', '123e4567-e89b-12d3-a456-426614174000'); --- SELECT revert_local_changes('comment', '123e4567-e89b-12d3-a456-426614174001'); \ No newline at end of file +-- SELECT revert_local_changes('comment', '123e4567-e89b-12d3-a456-426614174001'); diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index f1fc2592..17043e07 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -29,14 +29,14 @@ worker({ primaryKey: ['id'], shapeKey: 'issues', }) - // await pg.sync.syncShapeToTable({ - // shape: { - // url: `${ELECTRIC_URL}/v1/shape/comment`, - // }, - // table: 'comment', - // primaryKey: ['id'], - // shapeKey: 'comments', - // }) + await pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape/comment`, + }, + table: 'comment', + primaryKey: ['id'], + shapeKey: 'comments', + }) startWritePath(pg) return pg }, diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index b5ce3bb7..d7ef3c90 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -94,8 +94,8 @@ export function filterStateToSql(filterState: FilterState) { sqlParams.push(...filterState.priority) } if (filterState.query) { - sqlWhere.push(`title ILIKE $${i++}`) - sqlParams.push(`%${filterState.query}%`) + sqlWhere.push(`search_vector @@ plainto_tsquery('simple', $${i++})`) + sqlParams.push(filterState.query) } const sql = ` SELECT id, title, priority, status, modified, created, kanbanorder, username, synced From cc4b7ab8adf3458fc3fc792ab87543c277e770c5 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 16 Oct 2024 14:40:12 +0100 Subject: [PATCH 21/34] Tweaks --- .../linearlite/db/migrations-client/01-create_tables.sql | 8 ++++---- demos/linearlite/src/components/TopFilter.tsx | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index 04d3103b..d1f9e70e 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -138,7 +138,7 @@ BEGIN FOR col_name IN SELECT column_name FROM information_schema.columns WHERE table_name = TG_TABLE_NAME AND - column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server') LOOP + column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector') LOOP EXECUTE format('SELECT $1.%I', col_name) USING NEW INTO new_value; EXECUTE format('SELECT %I FROM %I WHERE id = $1', col_name, TG_TABLE_NAME) USING NEW.id INTO old_value; IF new_value IS DISTINCT FROM old_value THEN @@ -161,7 +161,7 @@ BEGIN SELECT array_agg(column_name) INTO modified_columns FROM information_schema.columns WHERE table_name = TG_TABLE_NAME - AND column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server'); + AND column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector'); NEW.modified_columns := modified_columns; NEW.new := TRUE; END IF; @@ -223,7 +223,7 @@ BEGIN FOR column_name IN SELECT columns.column_name FROM information_schema.columns WHERE columns.table_name = TG_TABLE_NAME - AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server') LOOP + AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector') LOOP IF column_name != ANY(OLD.modified_columns) THEN EXECUTE format('SELECT ($1).%I', column_name) USING NEW INTO new_value; EXECUTE format('SELECT ($1).%I', column_name) USING OLD INTO old_value; @@ -240,7 +240,7 @@ BEGIN FOR column_name IN SELECT columns.column_name FROM information_schema.columns WHERE columns.table_name = TG_TABLE_NAME - AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server') LOOP + AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector') LOOP EXECUTE format('SELECT ($1).%I', column_name) USING NEW INTO new_value; EXECUTE format('SELECT ($1).%I', column_name) USING OLD INTO old_value; IF new_value IS DISTINCT FROM old_value THEN diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index f181eb8a..0169442d 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -79,10 +79,10 @@ export default function ({
{title}
{/* {filteredIssuesCount} */} - {filteredIssuesCount} + {filteredIssuesCount.toLocaleString()} {totalIssuesCount !== undefined && filteredIssuesCount !== totalIssuesCount - ? ` of ${totalIssuesCount}` + ? ` of ${totalIssuesCount.toLocaleString()}` : ``} Date: Wed, 20 Nov 2024 15:28:12 +0000 Subject: [PATCH 22/34] Fix type issues --- demos/linearlite/src/App.tsx | 3 --- demos/linearlite/src/components/IssueModal.tsx | 17 +++++++++++------ .../linearlite/src/components/PriorityIcon.tsx | 4 ++-- demos/linearlite/src/components/StatusIcon.tsx | 4 ++-- demos/linearlite/src/pages/Board/IssueCol.tsx | 2 +- demos/linearlite/src/pages/List/index.tsx | 2 +- 6 files changed, 17 insertions(+), 15 deletions(-) diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index 842cc12a..169414f3 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -41,14 +41,12 @@ async function issueListLoader({ request }: { request: Request }) { const url = new URL(request.url) const filterState = getFilterStateFromSearchParams(url.searchParams) const { sql, sqlParams } = filterStateToSql(filterState) - // const liveIssues = await pg.live.incrementalQuery({ const liveIssues = await pg.live.query({ query: sql, params: sqlParams, signal: request.signal, offset: 0, limit: 100, - // key: 'id', }) return { liveIssues, filterState } } @@ -76,7 +74,6 @@ async function boardIssueListLoader({ request }: { request: Request }) { signal: request.signal, offset: 0, limit: 10, - // key: 'id', }) columnsLiveIssues[status] = colLiveIssues } diff --git a/demos/linearlite/src/components/IssueModal.tsx b/demos/linearlite/src/components/IssueModal.tsx index 960471f4..14d21420 100644 --- a/demos/linearlite/src/components/IssueModal.tsx +++ b/demos/linearlite/src/components/IssueModal.tsx @@ -12,7 +12,13 @@ import StatusIcon from './StatusIcon' import PriorityMenu from './contextmenu/PriorityMenu' import StatusMenu from './contextmenu/StatusMenu' -import { Priority, Status, PriorityDisplay } from '../types/types' +import { + Priority, + Status, + PriorityDisplay, + StatusValue, + PriorityValue, +} from '../types/types' import { showInfo, showWarning } from '../utils/notification' import { usePGlite } from '@electric-sql/pglite-react' import { Issue } from '../types/types' @@ -27,8 +33,8 @@ function IssueModal({ isOpen, onDismiss }: Props) { const ref = useRef(null) const [title, setTitle] = useState(``) const [description, setDescription] = useState() - const [priority, setPriority] = useState(Priority.NONE) - const [status, setStatus] = useState(Status.BACKLOG) + const [priority, setPriority] = useState(Priority.NONE) + const [status, setStatus] = useState(Status.BACKLOG) const pg = usePGlite() const handleSubmit = async () => { @@ -122,7 +128,7 @@ function IssueModal({ isOpen, onDismiss }: Props) { } onSelect={(st) => { - setStatus(st) + setStatus(st as StatusValue) }} /> } onSelect={(val) => { - console.log(val) - setPriority(val) + setPriority(val as PriorityValue) }} />
diff --git a/demos/linearlite/src/components/PriorityIcon.tsx b/demos/linearlite/src/components/PriorityIcon.tsx index 942d2f6d..c1105530 100644 --- a/demos/linearlite/src/components/PriorityIcon.tsx +++ b/demos/linearlite/src/components/PriorityIcon.tsx @@ -1,5 +1,5 @@ import classNames from 'classnames' -import { PriorityIcons } from '../types/types' +import { PriorityIcons, PriorityValue } from '../types/types' interface Props { priority: string @@ -8,6 +8,6 @@ interface Props { export default function PriorityIcon({ priority, className }: Props) { const classes = classNames(`w-4 h-4`, className) - const Icon = PriorityIcons[priority.toLowerCase()] + const Icon = PriorityIcons[priority.toLowerCase() as PriorityValue] return } diff --git a/demos/linearlite/src/components/StatusIcon.tsx b/demos/linearlite/src/components/StatusIcon.tsx index 3303fbca..d6c066a1 100644 --- a/demos/linearlite/src/components/StatusIcon.tsx +++ b/demos/linearlite/src/components/StatusIcon.tsx @@ -1,5 +1,5 @@ import classNames from 'classnames' -import { StatusIcons } from '../types/types' +import { StatusIcons, StatusValue } from '../types/types' interface Props { status: string @@ -9,7 +9,7 @@ interface Props { export default function StatusIcon({ status, className }: Props) { const classes = classNames(`w-3.5 h-3.5 rounded`, className) - const Icon = StatusIcons[status.toLowerCase()] + const Icon = StatusIcons[status.toLowerCase() as StatusValue] return } diff --git a/demos/linearlite/src/pages/Board/IssueCol.tsx b/demos/linearlite/src/pages/Board/IssueCol.tsx index 663002a3..e0c37d5e 100644 --- a/demos/linearlite/src/pages/Board/IssueCol.tsx +++ b/demos/linearlite/src/pages/Board/IssueCol.tsx @@ -54,7 +54,7 @@ function IssueCol({ title, status, issues, liveQuery }: Props) { props.overscanStopIndex ) if (newOffset !== offset || newLimit !== limit) { - liveQuery.refresh(newOffset, newLimit) + liveQuery.refresh({ offset: newOffset, limit: newLimit }) } } diff --git a/demos/linearlite/src/pages/List/index.tsx b/demos/linearlite/src/pages/List/index.tsx index 5e2fe7b4..b2a49700 100644 --- a/demos/linearlite/src/pages/List/index.tsx +++ b/demos/linearlite/src/pages/List/index.tsx @@ -38,7 +38,7 @@ function List({ showSearch = false }) { itemsRendered.overscanStopIndex ) if (newOffset !== offset || newLimit !== limit) { - liveIssues.refresh(newOffset, newLimit) + liveIssues.refresh({ offset: newOffset, limit: newLimit }) } } From ae733447c21923b59855edd7f9c2ba984a45a723 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Wed, 20 Nov 2024 15:47:35 +0000 Subject: [PATCH 23/34] "Fix" eslint --- .../linearlite/src/components/IssueModal.tsx | 8 ++- demos/linearlite/src/components/Portal.tsx | 1 + .../linearlite/src/pages/Board/IssueBoard.tsx | 6 +- demos/linearlite/src/pages/Board/index.tsx | 2 + demos/linearlite/src/pages/Issue/index.tsx | 57 ++++++++++--------- 5 files changed, 44 insertions(+), 30 deletions(-) diff --git a/demos/linearlite/src/components/IssueModal.tsx b/demos/linearlite/src/components/IssueModal.tsx index 14d21420..1c09f171 100644 --- a/demos/linearlite/src/components/IssueModal.tsx +++ b/demos/linearlite/src/components/IssueModal.tsx @@ -84,10 +84,14 @@ function IssueModal({ isOpen, onDismiss }: Props) { }, 250) } + const timeoutRef = useRef>() + useEffect(() => { - if (isOpen) { - setTimeout(() => { + if (isOpen && !timeoutRef.current) { + // eslint-disable-next-line @eslint-react/web-api/no-leaked-timeout + timeoutRef.current = setTimeout(() => { ref.current?.focus() + timeoutRef.current = undefined }, 250) } }, [isOpen]) diff --git a/demos/linearlite/src/components/Portal.tsx b/demos/linearlite/src/components/Portal.tsx index 537385d8..e6e29d48 100644 --- a/demos/linearlite/src/components/Portal.tsx +++ b/demos/linearlite/src/components/Portal.tsx @@ -7,6 +7,7 @@ export function Portal(props: { children: ReactNode }) { const { children } = props const [mounted, setMounted] = useState(false) + // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect useEffect(() => setMounted(true), []) if (!mounted) return null diff --git a/demos/linearlite/src/pages/Board/IssueBoard.tsx b/demos/linearlite/src/pages/Board/IssueBoard.tsx index 6195fda3..919b88d9 100644 --- a/demos/linearlite/src/pages/Board/IssueBoard.tsx +++ b/demos/linearlite/src/pages/Board/IssueBoard.tsx @@ -27,13 +27,16 @@ export default function IssueBoard({ columnsLiveIssues }: IssueBoardProps) { useEffect(() => { // Reset moved issues when issues change + // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect setMovedIssues({}) }, [columnsLiveIssues]) const issuesByStatus: Record = {} const issuesResByStatus: Record> = {} Object.entries(columnsLiveIssues).forEach(([status, liveQuery]) => { - let issuesRes = useLiveQuery(liveQuery) + // eslint-disable-next-line react-compiler/react-compiler + // eslint-disable-next-line react-hooks/rules-of-hooks + const issuesRes = useLiveQuery(liveQuery) issuesResByStatus[status] = issuesRes issuesRes.rows.forEach((issue) => { // If the issue has been moved, patch with new status and kanbanorder for sorting @@ -164,6 +167,7 @@ export default function IssueBoard({ columnsLiveIssues }: IssueBoardProps) { */ const getNewKanbanOrder = (issueBefore: Issue, issueAfter: Issue) => { const prevKanbanOrder = issueBefore?.kanbanorder + // eslint-disable-next-line prefer-const let nextKanbanOrder = issueAfter?.kanbanorder // if (nextKanbanOrder && nextKanbanOrder === prevKanbanOrder) { // // If the next issue has the same kanbanorder as the previous issue, diff --git a/demos/linearlite/src/pages/Board/index.tsx b/demos/linearlite/src/pages/Board/index.tsx index 9551fb37..41dd8265 100644 --- a/demos/linearlite/src/pages/Board/index.tsx +++ b/demos/linearlite/src/pages/Board/index.tsx @@ -1,3 +1,4 @@ +/* eslint-disable react-compiler/react-compiler */ import TopFilter from '../../components/TopFilter' import IssueBoard from './IssueBoard' import { FilterState } from '../../utils/filterState' @@ -16,6 +17,7 @@ function Board() { const totalIssuesCount = Object.values(columnsLiveIssues).reduce( (total, liveQuery) => { + // eslint-disable-next-line react-hooks/rules-of-hooks const issuesRes = useLiveQuery(liveQuery) return total + (issuesRes?.totalCount ?? 0) }, diff --git a/demos/linearlite/src/pages/Issue/index.tsx b/demos/linearlite/src/pages/Issue/index.tsx index 7463cc57..41443834 100644 --- a/demos/linearlite/src/pages/Issue/index.tsx +++ b/demos/linearlite/src/pages/Issue/index.tsx @@ -1,3 +1,4 @@ +/* eslint-disable react-compiler/react-compiler */ import { useNavigate, useLoaderData } from 'react-router-dom' import { useState, useRef, useCallback } from 'react' import { BsCloudCheck as SyncedIcon } from 'react-icons/bs' @@ -32,6 +33,35 @@ function IssuePage() { const [dirtyDescription, setDirtyDescription] = useState(null) const descriptionIsDirty = useRef(false) + // eslint-disable-next-line react-hooks/exhaustive-deps + const handleTitleChangeDebounced = useCallback( + debounce(async (title: string) => { + console.log(`handleTitleChangeDebounced`, title) + pg.sql` + UPDATE issue + SET title = ${title}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + // We can't set titleIsDirty.current = false here because we haven't yet received + // the updated issue from the db + }, debounceTime), + [pg] + ) + + // eslint-disable-next-line react-hooks/exhaustive-deps + const handleDescriptionChangeDebounced = useCallback( + debounce(async (description: string) => { + pg.sql` + UPDATE issue + SET description = ${description}, modified = ${new Date()} + WHERE id = ${issue.id} + ` + // We can't set descriptionIsDirty.current = false here because we haven't yet received + // the updated issue from the db + }, debounceTime), + [pg] + ) + if (issue === undefined) { return
Loading...
} else if (issue === null) { @@ -65,20 +95,6 @@ function IssuePage() { ` } - const handleTitleChangeDebounced = useCallback( - debounce(async (title: string) => { - console.log(`handleTitleChangeDebounced`, title) - pg.sql` - UPDATE issue - SET title = ${title}, modified = ${new Date()} - WHERE id = ${issue.id} - ` - // We can't set titleIsDirty.current = false here because we haven't yet received - // the updated issue from the db - }, debounceTime), - [pg] - ) - const handleTitleChange = (title: string) => { setDirtyTitle(title) titleIsDirty.current = true @@ -86,19 +102,6 @@ function IssuePage() { handleTitleChangeDebounced(title) } - const handleDescriptionChangeDebounced = useCallback( - debounce(async (description: string) => { - pg.sql` - UPDATE issue - SET description = ${description}, modified = ${new Date()} - WHERE id = ${issue.id} - ` - // We can't set descriptionIsDirty.current = false here because we haven't yet received - // the updated issue from the db - }, debounceTime), - [pg] - ) - const handleDescriptionChange = (description: string) => { setDirtyDescription(description) descriptionIsDirty.current = true From 0d1e75c3e9bed393ba14060ba67c8fbb9826cf47 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 28 Nov 2024 12:28:55 +0000 Subject: [PATCH 24/34] Upgrade electric and convert the write server to Hono --- demos/linearlite/backend/docker-compose.yml | 6 +- demos/linearlite/package.json | 8 +- demos/linearlite/server.ts | 38 +-- demos/linearlite/src/pglite-worker.ts | 6 +- pnpm-lock.yaml | 300 ++------------------ 5 files changed, 54 insertions(+), 304 deletions(-) diff --git a/demos/linearlite/backend/docker-compose.yml b/demos/linearlite/backend/docker-compose.yml index 4125b673..15fd2c88 100644 --- a/demos/linearlite/backend/docker-compose.yml +++ b/demos/linearlite/backend/docker-compose.yml @@ -21,12 +21,10 @@ services: - config_file=/etc/postgresql/postgresql.conf backend: - image: electricsql/electric:canary + image: electricsql/electric environment: DATABASE_URL: postgresql://postgres:password@postgres:5432/linearlite?sslmode=disable ports: - 3000:3000 - build: - context: ../packages/sync-service/ depends_on: - - postgres \ No newline at end of file + - postgres diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index fbcef681..0ef95a6f 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -5,7 +5,7 @@ "private": true, "type": "module", "scripts": { - "backend:up": "dotenv -- docker compose -f ./backend/docker-compose.yml up -d ", + "backend:up": "dotenv -- docker compose -f ./backend/docker-compose.yml up -d && pnpm db:migrate", "backend:down": "dotenv -- docker compose -f ./backend/docker-compose.yml down --volumes", "db:migrate": "dotenv -- pnpm exec pg-migrations apply --directory ./db/migrations-server", "db:load-data": "dotenv -- node ./db/load_data.js", @@ -44,7 +44,6 @@ "cors": "^2.8.5", "dayjs": "^1.11.11", "dotenv": "^16.4.5", - "express": "^4.21.1", "fractional-indexing": "^3.2.0", "jsonwebtoken": "^9.0.2", "lodash.debounce": "^4.0.8", @@ -61,7 +60,9 @@ "tiptap-markdown": "^0.8.2", "uuid": "^9.0.0", "vite-plugin-svgr": "^3.2.0", - "zod": "^3.23.8" + "zod": "^3.23.8", + "hono": "^4.0.0", + "@hono/node-server": "^1.8.0" }, "devDependencies": { "@databases/pg": "^5.5.0", @@ -69,7 +70,6 @@ "@faker-js/faker": "^8.4.1", "@tailwindcss/typography": "^0.5.10", "@types/body-parser": "^1.19.5", - "@types/express": "^5.0.0", "@types/jest": "^29.5.12", "@types/lodash.debounce": "^4.0.9", "@types/node": "^20.14.10", diff --git a/demos/linearlite/server.ts b/demos/linearlite/server.ts index 3eda4de1..d17f0307 100644 --- a/demos/linearlite/server.ts +++ b/demos/linearlite/server.ts @@ -1,6 +1,5 @@ -import express from 'express' -import bodyParser from 'body-parser' -import cors from 'cors' +import { Hono } from 'hono' +import { cors } from 'hono/cors' import pg from 'pg' import { ChangeSet, @@ -8,6 +7,7 @@ import { CommentChange, IssueChange, } from './src/utils/changes' +import { serve } from '@hono/node-server' const DATABASE_URL = process.env.DATABASE_URL @@ -15,38 +15,43 @@ const { Client } = pg const client = new Client(DATABASE_URL) client.connect() -const app = express() +const app = new Hono() -app.use(bodyParser.json()) -app.use(cors()) +// Middleware +app.use('/*', cors()) -app.get('/', async (_req, res) => { +// Routes +app.get('/', async (c) => { const result = await client.query( "SELECT 'ok' as status, version() as postgres_version, now() as server_time" ) - res.send(result.rows[0]) + return c.json(result.rows[0]) }) -app.post('/apply-changes', async (req, res) => { - const content = req.body +app.post('/apply-changes', async (c) => { + const content = await c.req.json() let parsedChanges: ChangeSet try { parsedChanges = changeSetSchema.parse(content) // Any additional validation of the changes can be done here! } catch (error) { console.error(error) - res.status(400).send('Invalid changes') - return + return c.json({ error: 'Invalid changes' }, 400) } const changeResponse = await applyChanges(parsedChanges) - res.send(changeResponse) + return c.json(changeResponse) }) -app.listen(3001, () => { - console.log('Server is running on port 3001') +// Start the server +const port = 3001 +console.log(`Server is running on port ${port}`) + +serve({ + fetch: app.fetch, + port }) -async function applyChanges(changes: ChangeSet): Promise { +async function applyChanges(changes: ChangeSet): Promise<{ success: boolean }> { const { issues, comments } = changes client.query('BEGIN') try { @@ -57,6 +62,7 @@ async function applyChanges(changes: ChangeSet): Promise { for (const comment of comments) { await applyTableChange('comment', comment) } + return { success: true } } catch (error) { await client.query('ROLLBACK') throw error diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 17043e07..06b238ed 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -23,7 +23,8 @@ worker({ await migrate(pg) await pg.sync.syncShapeToTable({ shape: { - url: `${ELECTRIC_URL}/v1/shape/issue`, + url: `${ELECTRIC_URL}/v1/shape`, + table: 'issue', }, table: 'issue', primaryKey: ['id'], @@ -31,7 +32,8 @@ worker({ }) await pg.sync.syncShapeToTable({ shape: { - url: `${ELECTRIC_URL}/v1/shape/comment`, + url: `${ELECTRIC_URL}/v1/shape`, + table: 'comment', }, table: 'comment', primaryKey: ['id'], diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 756673dc..42f1468a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -59,6 +59,9 @@ importers: '@headlessui/react': specifier: ^1.7.17 version: 1.7.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@hono/node-server': + specifier: ^1.8.0 + version: 1.13.7(hono@4.6.12) '@svgr/plugin-jsx': specifier: ^8.1.0 version: 8.1.0(@svgr/core@8.1.0(typescript@5.6.3)) @@ -110,12 +113,12 @@ importers: dotenv: specifier: ^16.4.5 version: 16.4.5 - express: - specifier: ^4.21.1 - version: 4.21.1 fractional-indexing: specifier: ^3.2.0 version: 3.2.0 + hono: + specifier: ^4.0.0 + version: 4.6.12 jsonwebtoken: specifier: ^9.0.2 version: 9.0.2 @@ -180,9 +183,6 @@ importers: '@types/body-parser': specifier: ^1.19.5 version: 1.19.5 - '@types/express': - specifier: ^5.0.0 - version: 5.0.0 '@types/jest': specifier: ^29.5.12 version: 29.5.13 @@ -1321,6 +1321,12 @@ packages: react: ^16 || ^17 || ^18 react-dom: ^16 || ^17 || ^18 + '@hono/node-server@1.13.7': + resolution: {integrity: sha512-kTfUMsoloVKtRA2fLiGSd9qBddmru9KadNyhJCwgKBxTiNkaAJEwkVN9KV/rS4HtmmNRtUh6P+YpmjRMl0d9vQ==} + engines: {node: '>=18.14.1'} + peerDependencies: + hono: ^4 + '@humanwhocodes/config-array@0.13.0': resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==} engines: {node: '>=10.10.0'} @@ -1936,12 +1942,6 @@ packages: '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - '@types/express-serve-static-core@5.0.0': - resolution: {integrity: sha512-AbXMTZGt40T+KON9/Fdxx0B2WK5hsgxcfXJLr5bFpZ7b4JCex2WyQPTEKdXqfHiY5nKKBScZ7yCoO6Pvgxfvnw==} - - '@types/express@5.0.0': - resolution: {integrity: sha512-DvZriSMehGHL1ZNLzi6MidnsDhUZM/x2pRdDIKdwbUNqqwHxMlRdkxtn6/EPKyqKpHqTl/4nRZsRNLpZxZRpPQ==} - '@types/hast@2.3.10': resolution: {integrity: sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==} @@ -1954,9 +1954,6 @@ packages: '@types/hoist-non-react-statics@3.3.5': resolution: {integrity: sha512-SbcrWzkKBw2cdwRTwQAswfpB9g9LJWfjtUeW/jvNwbhC8cpmmNYVePa+ncbUe0rGTQ7G3Ff6mYUN2VMfLVr+Sg==} - '@types/http-errors@2.0.4': - resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==} - '@types/istanbul-lib-coverage@2.0.6': resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} @@ -1999,9 +1996,6 @@ packages: '@types/mdurl@2.0.0': resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} - '@types/mime@1.3.5': - resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} @@ -2020,12 +2014,6 @@ packages: '@types/prop-types@15.7.13': resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} - '@types/qs@6.9.16': - resolution: {integrity: sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==} - - '@types/range-parser@1.2.7': - resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/react-beautiful-dnd@13.1.8': resolution: {integrity: sha512-E3TyFsro9pQuK4r8S/OL6G99eq7p8v29sX0PM7oT8Z+PJfZvSQTx4zTQbUJ+QZXioAF0e7TGBEcA1XhYhCweyQ==} @@ -2047,12 +2035,6 @@ packages: '@types/react@18.3.11': resolution: {integrity: sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==} - '@types/send@0.17.4': - resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} - - '@types/serve-static@1.15.7': - resolution: {integrity: sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==} - '@types/stack-utils@2.0.3': resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==} @@ -2396,10 +2378,6 @@ packages: resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -2507,9 +2485,6 @@ packages: resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} engines: {node: '>= 0.4'} - array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} @@ -2624,7 +2599,6 @@ packages: bun@1.1.30: resolution: {integrity: sha512-ysRL1pq10Xba0jqVLPrKU3YIv0ohfp3cTajCPtpjCyppbn3lfiAVNpGoHfyaxS17OlPmWmR67UZRPw/EueQuug==} - cpu: [arm64, x64] os: [darwin, linux, win32] hasBin: true @@ -2802,10 +2776,6 @@ packages: resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} engines: {node: ^14.18.0 || >=16.10.0} - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - content-type@1.0.5: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} @@ -2813,13 +2783,6 @@ packages: convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - - cookie@0.7.1: - resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==} - engines: {node: '>= 0.6'} - copy-anything@3.0.5: resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==} engines: {node: '>=12.13'} @@ -3082,14 +3045,6 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - - encodeurl@2.0.0: - resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} - engines: {node: '>= 0.8'} - end-of-stream@1.4.4: resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} @@ -3254,9 +3209,6 @@ packages: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} - escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} @@ -3425,10 +3377,6 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - eventemitter3@4.0.7: resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==} @@ -3448,10 +3396,6 @@ packages: resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - express@4.21.1: - resolution: {integrity: sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==} - engines: {node: '>= 0.10.0'} - extend@3.0.2: resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} @@ -3500,10 +3444,6 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - finalhandler@1.3.1: - resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==} - engines: {node: '>= 0.8'} - find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -3542,10 +3482,6 @@ packages: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} - forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} - fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -3553,10 +3489,6 @@ packages: resolution: {integrity: sha512-PcOxmqwYCW7O2ovKRU8OoQQj2yqTfEB/yeTYk4gPid6dN5ODRfU1hXd9tTVZzax/0NkO7AxpHykvZnT1aYp/BQ==} engines: {node: ^14.13.1 || >=16.0.0} - fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} @@ -3720,6 +3652,10 @@ packages: hoist-non-react-statics@3.3.2: resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} + hono@4.6.12: + resolution: {integrity: sha512-eHtf4kSDNw6VVrdbd5IQi16r22m3s7mWPLd7xOMhg1a/Yyb1A0qpUFq8xYMX4FMuDe1nTKeMX5rTx7Nmw+a+Ag==} + engines: {node: '>=16.9.0'} + hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} @@ -3817,10 +3753,6 @@ packages: interrogator@2.0.1: resolution: {integrity: sha512-HPilaDW0ZSPEKhhj6NcklQi7jhYyad1r8l6tS9hYCxvVnlrrJAUMZ7GuGa5PFK3RmquLSk+iml2geBJjC+Yc9g==} - ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} @@ -4233,9 +4165,6 @@ packages: memoize-one@5.2.1: resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} - merge-descriptors@1.0.3: - resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} - merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -4243,10 +4172,6 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - micromark-core-commonmark@1.1.0: resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==} @@ -4430,10 +4355,6 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} @@ -4590,10 +4511,6 @@ packages: parse5@7.1.2: resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} - parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - path-browserify@1.0.1: resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} @@ -4620,9 +4537,6 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} - path-to-regexp@0.1.10: - resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} - path-type@4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} @@ -4933,10 +4847,6 @@ packages: proto-list@1.2.4: resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} - proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} - pseudomap@1.0.2: resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} @@ -4970,10 +4880,6 @@ packages: raf-schd@4.0.3: resolution: {integrity: sha512-tQkJl2GRWh83ui2DiPTJz9wEiMN20syf+5oKfB03yYP7ioZcJwsIK8FjrtLwH1m7C7e+Tt2yYBlrOpdT+dyeIQ==} - range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - raw-body@2.5.2: resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} engines: {node: '>= 0.8'} @@ -5208,14 +5114,6 @@ packages: engines: {node: '>=10'} hasBin: true - send@0.19.0: - resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} - engines: {node: '>= 0.8.0'} - - serve-static@1.16.2: - resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} - engines: {node: '>= 0.8.0'} - set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} engines: {node: '>= 0.4'} @@ -5722,10 +5620,6 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - uuid@9.0.1: resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==} hasBin: true @@ -7039,6 +6933,10 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) + '@hono/node-server@1.13.7(hono@4.6.12)': + dependencies: + hono: 4.6.12 + '@humanwhocodes/config-array@0.13.0': dependencies: '@humanwhocodes/object-schema': 2.0.3 @@ -7704,20 +7602,6 @@ snapshots: '@types/estree@1.0.6': {} - '@types/express-serve-static-core@5.0.0': - dependencies: - '@types/node': 20.16.11 - '@types/qs': 6.9.16 - '@types/range-parser': 1.2.7 - '@types/send': 0.17.4 - - '@types/express@5.0.0': - dependencies: - '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 5.0.0 - '@types/qs': 6.9.16 - '@types/serve-static': 1.15.7 - '@types/hast@2.3.10': dependencies: '@types/unist': 2.0.11 @@ -7733,8 +7617,6 @@ snapshots: '@types/react': 18.3.11 hoist-non-react-statics: 3.3.2 - '@types/http-errors@2.0.4': {} - '@types/istanbul-lib-coverage@2.0.6': {} '@types/istanbul-lib-report@3.0.3': @@ -7782,8 +7664,6 @@ snapshots: '@types/mdurl@2.0.0': {} - '@types/mime@1.3.5': {} - '@types/ms@0.7.34': {} '@types/node-fetch@2.6.11': @@ -7805,10 +7685,6 @@ snapshots: '@types/prop-types@15.7.13': {} - '@types/qs@6.9.16': {} - - '@types/range-parser@1.2.7': {} - '@types/react-beautiful-dnd@13.1.8': dependencies: '@types/react': 18.3.11 @@ -7844,17 +7720,6 @@ snapshots: '@types/prop-types': 15.7.13 csstype: 3.1.3 - '@types/send@0.17.4': - dependencies: - '@types/mime': 1.3.5 - '@types/node': 20.16.11 - - '@types/serve-static@1.15.7': - dependencies: - '@types/http-errors': 2.0.4 - '@types/node': 20.16.11 - '@types/send': 0.17.4 - '@types/stack-utils@2.0.3': {} '@types/svgo@2.6.4': @@ -8306,11 +8171,6 @@ snapshots: abbrev@2.0.0: {} - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - acorn-jsx@5.3.2(acorn@8.12.1): dependencies: acorn: 8.12.1 @@ -8426,8 +8286,6 @@ snapshots: call-bind: 1.0.7 is-array-buffer: 3.0.4 - array-flatten@1.1.1: {} - array-union@2.1.0: {} ascii-table3@0.9.0: @@ -8738,18 +8596,10 @@ snapshots: consola@3.2.3: {} - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - content-type@1.0.5: {} convert-source-map@2.0.0: {} - cookie-signature@1.0.6: {} - - cookie@0.7.1: {} - copy-anything@3.0.5: dependencies: is-what: 4.1.16 @@ -9011,10 +8861,6 @@ snapshots: emoji-regex@9.2.2: {} - encodeurl@1.0.2: {} - - encodeurl@2.0.0: {} - end-of-stream@1.4.4: dependencies: once: 1.4.0 @@ -9187,8 +9033,6 @@ snapshots: escalade@3.2.0: {} - escape-html@1.0.3: {} - escape-string-regexp@1.0.5: {} escape-string-regexp@2.0.0: {} @@ -9446,8 +9290,6 @@ snapshots: esutils@2.0.3: {} - etag@1.8.1: {} - eventemitter3@4.0.7: {} execa@5.1.1: @@ -9484,42 +9326,6 @@ snapshots: jest-message-util: 29.7.0 jest-util: 29.7.0 - express@4.21.1: - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.3 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookie: 0.7.1 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: 2.0.0 - escape-html: 1.0.3 - etag: 1.8.1 - finalhandler: 1.3.1 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.3 - methods: 1.1.2 - on-finished: 2.4.1 - parseurl: 1.3.3 - path-to-regexp: 0.1.10 - proxy-addr: 2.0.7 - qs: 6.13.0 - range-parser: 1.2.1 - safe-buffer: 5.2.1 - send: 0.19.0 - serve-static: 1.16.2 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: 1.6.18 - utils-merge: 1.0.1 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - extend@3.0.2: {} extendable-error@0.1.7: {} @@ -9564,18 +9370,6 @@ snapshots: dependencies: to-regex-range: 5.0.1 - finalhandler@1.3.1: - dependencies: - debug: 2.6.9 - encodeurl: 2.0.0 - escape-html: 1.0.3 - on-finished: 2.4.1 - parseurl: 1.3.3 - statuses: 2.0.1 - unpipe: 1.0.0 - transitivePeerDependencies: - - supports-color - find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -9615,14 +9409,10 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - forwarded@0.2.0: {} - fraction.js@4.3.7: {} fractional-indexing@3.2.0: {} - fresh@0.5.2: {} - fs-constants@1.0.0: {} fs-extra@10.1.0: @@ -9788,6 +9578,8 @@ snapshots: dependencies: react-is: 16.13.1 + hono@4.6.12: {} + hookable@5.5.3: {} html-encoding-sniffer@3.0.0: @@ -9912,8 +9704,6 @@ snapshots: dependencies: inquirer: 9.3.7 - ipaddr.js@1.9.1: {} - is-arguments@1.1.1: dependencies: call-bind: 1.0.7 @@ -10356,14 +10146,10 @@ snapshots: memoize-one@5.2.1: {} - merge-descriptors@1.0.3: {} - merge-stream@2.0.0: {} merge2@1.4.1: {} - methods@1.1.2: {} - micromark-core-commonmark@1.1.0: dependencies: decode-named-character-reference: 1.0.2 @@ -10598,8 +10384,6 @@ snapshots: natural-compare@1.4.0: {} - negotiator@0.6.3: {} - no-case@3.0.4: dependencies: lower-case: 2.0.2 @@ -10753,8 +10537,6 @@ snapshots: dependencies: entities: 4.5.0 - parseurl@1.3.3: {} - path-browserify@1.0.1: {} path-exists@4.0.0: {} @@ -10772,8 +10554,6 @@ snapshots: lru-cache: 10.4.3 minipass: 7.1.2 - path-to-regexp@0.1.10: {} - path-type@4.0.0: {} pathe@1.1.2: {} @@ -11098,11 +10878,6 @@ snapshots: proto-list@1.2.4: {} - proxy-addr@2.0.7: - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - pseudomap@1.0.2: {} psl@1.9.0: {} @@ -11128,8 +10903,6 @@ snapshots: raf-schd@4.0.3: {} - range-parser@1.2.1: {} - raw-body@2.5.2: dependencies: bytes: 3.1.2 @@ -11396,33 +11169,6 @@ snapshots: semver@7.6.3: {} - send@0.19.0: - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: 1.2.1 - statuses: 2.0.1 - transitivePeerDependencies: - - supports-color - - serve-static@1.16.2: - dependencies: - encodeurl: 2.0.0 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.19.0 - transitivePeerDependencies: - - supports-color - set-function-length@1.2.2: dependencies: define-data-property: 1.1.4 @@ -11950,8 +11696,6 @@ snapshots: util-deprecate@1.0.2: {} - utils-merge@1.0.1: {} - uuid@9.0.1: {} uvu@0.5.6: From d01effc6a75fb03515be7610f408e4f45e0cc665 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 28 Nov 2024 13:37:35 +0000 Subject: [PATCH 25/34] Swap to postgres.js so compatible with CF Workers --- demos/linearlite/db/load_data.js | 93 +++++++++++----------------- demos/linearlite/package.json | 3 +- demos/linearlite/server.ts | 101 +++++++++++++------------------ pnpm-lock.yaml | 15 +++-- 4 files changed, 90 insertions(+), 122 deletions(-) diff --git a/demos/linearlite/db/load_data.js b/demos/linearlite/db/load_data.js index a13be0d0..85446a82 100644 --- a/demos/linearlite/db/load_data.js +++ b/demos/linearlite/db/load_data.js @@ -1,4 +1,4 @@ -import createPool, { sql } from '@databases/pg' +import postgres from 'postgres' import { generateIssues } from './generate_data.js' if (!process.env.DATABASE_URL) { @@ -10,66 +10,47 @@ const ISSUES_TO_LOAD = process.env.ISSUES_TO_LOAD || 512 const issues = generateIssues(ISSUES_TO_LOAD) console.info(`Connecting to Postgres at ${DATABASE_URL}`) -const db = createPool(DATABASE_URL) +const sql = postgres(DATABASE_URL) -function createBatchInsertQuery(table, columns, dataArray) { - const valuesSql = dataArray.map( - (data) => - sql`(${sql.join( - columns.map((column) => sql.value(data[column])), - sql`, ` - )})` - ) +async function batchInsert(sql, table, columns, dataArray, batchSize = 1000) { + for (let i = 0; i < dataArray.length; i += batchSize) { + const batch = dataArray.slice(i, i + batchSize) - return sql` - INSERT INTO ${sql.ident(table)} (${sql.join( - columns.map((col) => sql.ident(col)), - sql`, ` - )}) - VALUES ${sql.join(valuesSql, sql`, `)} - ` -} - -const issueCount = issues.length -let commentCount = 0 - -await db.tx(async (db) => { - await db.query(sql`SET CONSTRAINTS ALL DEFERRED;`) // disable FK checks - - const batchSize = 1000 - for (let i = 0; i < issueCount; i += batchSize) { - const issueBatch = issues - .slice(i, i + batchSize) - .map(({ comments: _, ...rest }) => rest) - await db.query( - createBatchInsertQuery('issue', Object.keys(issueBatch[0]), issueBatch) - ) - - process.stdout.write( - `Loaded ${Math.min(i + batchSize, issueCount)} of ${issueCount} issues\r` - ) - } - - const allComments = issues.flatMap((issue) => issue.comments) - commentCount = allComments.length - - for (let i = 0; i < allComments.length; i += batchSize) { - const commentBatch = allComments.slice(i, i + batchSize) - await db.query( - createBatchInsertQuery( - 'comment', - Object.keys(commentBatch[0]), - commentBatch - ) - ) + await sql` + INSERT INTO ${sql(table)} ${sql(batch, columns)} + ` process.stdout.write( - `Loaded ${Math.min(i + batchSize, commentCount)} of ${commentCount} comments\r` + `Loaded ${Math.min(i + batchSize, dataArray.length)} of ${dataArray.length} ${table}s\r` ) } -}) +} -process.stdout.write(`\n`) +const issueCount = issues.length +let commentCount = 0 -db.dispose() -console.info(`Loaded ${issueCount} issues with ${commentCount} comments.`) +try { + await sql.begin(async (sql) => { + // Disable FK checks + await sql`SET CONSTRAINTS ALL DEFERRED` + + // Insert issues + const issuesData = issues.map(({ comments: _, ...rest }) => rest) + const issueColumns = Object.keys(issuesData[0]) + await batchInsert(sql, 'issue', issueColumns, issuesData) + + // Insert comments + const allComments = issues.flatMap((issue) => issue.comments) + commentCount = allComments.length + const commentColumns = Object.keys(allComments[0]) + await batchInsert(sql, 'comment', commentColumns, allComments) + }) + + process.stdout.write(`\n`) + console.info(`Loaded ${issueCount} issues with ${commentCount} comments.`) +} catch (error) { + console.error('Error loading data:', error) + throw error +} finally { + await sql.end() +} diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index 0ef95a6f..21e92c9e 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -47,7 +47,7 @@ "fractional-indexing": "^3.2.0", "jsonwebtoken": "^9.0.2", "lodash.debounce": "^4.0.8", - "pg": "^8.13.0", + "postgres": "^3.4.3", "react": "^18.3.1", "react-beautiful-dnd": "^13.1.1", "react-dom": "^18.3.1", @@ -65,7 +65,6 @@ "@hono/node-server": "^1.8.0" }, "devDependencies": { - "@databases/pg": "^5.5.0", "@databases/pg-migrations": "^5.0.3", "@faker-js/faker": "^8.4.1", "@tailwindcss/typography": "^0.5.10", diff --git a/demos/linearlite/server.ts b/demos/linearlite/server.ts index d17f0307..4cd2fc58 100644 --- a/demos/linearlite/server.ts +++ b/demos/linearlite/server.ts @@ -1,6 +1,6 @@ import { Hono } from 'hono' import { cors } from 'hono/cors' -import pg from 'pg' +import postgres from 'postgres' import { ChangeSet, changeSetSchema, @@ -9,11 +9,12 @@ import { } from './src/utils/changes' import { serve } from '@hono/node-server' -const DATABASE_URL = process.env.DATABASE_URL +const DATABASE_URL = + process.env.DATABASE_URL ?? + 'postgresql://postgres:password@localhost:54321/linearlite' -const { Client } = pg -const client = new Client(DATABASE_URL) -client.connect() +// Create postgres connection +const sql = postgres(DATABASE_URL) const app = new Hono() @@ -22,10 +23,10 @@ app.use('/*', cors()) // Routes app.get('/', async (c) => { - const result = await client.query( - "SELECT 'ok' as status, version() as postgres_version, now() as server_time" - ) - return c.json(result.rows[0]) + const result = await sql` + SELECT 'ok' as status, version() as postgres_version, now() as server_time + ` + return c.json(result[0]) }) app.post('/apply-changes', async (c) => { @@ -48,72 +49,56 @@ console.log(`Server is running on port ${port}`) serve({ fetch: app.fetch, - port + port, }) async function applyChanges(changes: ChangeSet): Promise<{ success: boolean }> { const { issues, comments } = changes - client.query('BEGIN') + try { - await client.query('COMMIT') - for (const issue of issues) { - await applyTableChange('issue', issue) - } - for (const comment of comments) { - await applyTableChange('comment', comment) - } + await sql.begin(async (sql) => { + for (const issue of issues) { + await applyTableChange('issue', issue, sql) + } + for (const comment of comments) { + await applyTableChange('comment', comment, sql) + } + }) return { success: true } } catch (error) { - await client.query('ROLLBACK') throw error } } -/** - * Apply a change to the specified table in the database. - * @param tableName The name of the table to apply the change to - * @param change The change object containing the data to be applied - */ async function applyTableChange( tableName: 'issue' | 'comment', - change: IssueChange | CommentChange + change: IssueChange | CommentChange, + sql: postgres.TransactionSql ): Promise { - const { - id, - modified_columns, - new: isNew, - deleted, - } = change + const { id, modified_columns, new: isNew, deleted } = change if (deleted) { - await client.query( - ` - DELETE FROM ${tableName} WHERE id = $1 - -- ON CONFLICT (id) DO NOTHING - `, - [id] - ) + await sql` + DELETE FROM ${sql(tableName)} WHERE id = ${id} + ` } else if (isNew) { - const columns = modified_columns || []; - const values = columns.map(col => change[col]); - await client.query( - ` - INSERT INTO ${tableName} (id, ${columns.join(', ')}) - VALUES ($1, ${columns.map((_, index) => `$${index + 2}`).join(', ')}) - -- ON CONFLICT (id) DO NOTHING - `, - [id, ...values] - ); + const columns = modified_columns || [] + const values = columns.map((col) => change[col]) + + await sql` + INSERT INTO ${sql(tableName)} (id, ${sql(columns)}) + VALUES (${id}, ${sql(values)}) + ` } else { - const columns = modified_columns || []; - const values = columns.map(col => change[col]); - const updateSet = columns.map((col, index) => `${col} = $${index + 2}`).join(', '); - await client.query( - ` - UPDATE ${tableName} SET ${updateSet} WHERE id = $1 - -- ON CONFLICT (id) DO NOTHING - `, - [id, ...values] - ); + const columns = modified_columns || [] + const updates = columns + .map((col) => ({ [col]: change[col] })) + .reduce((acc, curr) => ({ ...acc, ...curr }), {}) + + await sql` + UPDATE ${sql(tableName)} + SET ${sql(updates)} + WHERE id = ${id} + ` } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 42f1468a..9d230096 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -125,9 +125,9 @@ importers: lodash.debounce: specifier: ^4.0.8 version: 4.0.8 - pg: - specifier: ^8.13.0 - version: 8.13.0 + postgres: + specifier: ^3.4.3 + version: 3.4.5 react: specifier: ^18.3.1 version: 18.3.1 @@ -168,9 +168,6 @@ importers: specifier: ^3.23.8 version: 3.23.8 devDependencies: - '@databases/pg': - specifier: ^5.5.0 - version: 5.5.0(typescript@5.6.3) '@databases/pg-migrations': specifier: ^5.0.3 version: 5.0.3(typescript@5.6.3) @@ -4743,6 +4740,10 @@ packages: postgres-range@1.1.4: resolution: {integrity: sha512-i/hbxIE9803Alj/6ytL7UHQxRvZkI9O4Sy+J3HGc4F4oo/2eQAjTSNJ0bfxyse3bH0nuVesCk+3IRLaMtG3H6w==} + postgres@3.4.5: + resolution: {integrity: sha512-cDWgoah1Gez9rN3H4165peY9qfpEo+SA61oQv65O3cRUE1pOEoJWwddwcqKE8XZYjbblOJlYDlLV4h67HrEVDg==} + engines: {node: '>=12'} + preact@10.24.2: resolution: {integrity: sha512-1cSoF0aCC8uaARATfrlz4VCBqE8LwZwRfLgkxJOQwAlQt6ayTmi0D9OF7nXid1POI5SZidFuG9CnlXbDfLqY/Q==} @@ -10724,6 +10725,8 @@ snapshots: postgres-range@1.1.4: {} + postgres@3.4.5: {} + preact@10.24.2: {} prebuild-install@7.1.2: From 827a23ef8eb6aeac4125e1875f248f6c3f2fada5 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 28 Nov 2024 14:15:15 +0000 Subject: [PATCH 26/34] pglite-sync: wip --- packages/pglite-sync/src/index.ts | 281 ++++++++++++++++++------------ 1 file changed, 172 insertions(+), 109 deletions(-) diff --git a/packages/pglite-sync/src/index.ts b/packages/pglite-sync/src/index.ts index 8c9b27d4..687bf9ba 100644 --- a/packages/pglite-sync/src/index.ts +++ b/packages/pglite-sync/src/index.ts @@ -20,6 +20,20 @@ type InsertChangeMessage = ChangeMessage & { headers: { operation: 'insert' } } +/** + * The granularity of the commit operation. + * - `up-to-date`: Commit all messages when the `up-to-date` message is received. + * - `transaction`: Commit all messages within transactions inferred from the LSN prefix of the offset. + * - `operation`: Commit each message in its own transaction. + * - `number`: Commit every N messages. + * Note a commit will always be performed on the `up-to-date` message. + */ +export type CommitGranularity = + | 'up-to-date' + | 'transaction' + | 'operation' + | number + export interface SyncShapeToTableOptions { shape: ShapeStreamOptions table: string @@ -28,6 +42,8 @@ export interface SyncShapeToTableOptions { primaryKey: string[] shapeKey?: ShapeKey useCopy?: boolean + commitGranularity?: CommitGranularity + commitThrottle?: number } export interface ElectricSyncOptions { @@ -53,6 +69,10 @@ async function createPlugin( const namespaceObj = { syncShapeToTable: async (options: SyncShapeToTableOptions) => { + options = { + commitGranularity: 'up-to-date', + ...options, + } if (shapePerTableLock.has(options.table)) { throw new Error('Already syncing shape for table ' + options.table) } @@ -102,123 +122,158 @@ async function createPlugin( // or use a separate connection to hold a long transaction let messageAggregator: ChangeMessage[] = [] let truncateNeeded = false + let lastLSN: string | null = null + let lastCommitAt: number = 0 + + const commit = async () => { + if (messageAggregator.length === 0 && !truncateNeeded) return + await pg.transaction(async (tx) => { + if (debug) console.log('up-to-date, committing all messages') + + // Set the syncing flag to true during this transaction so that + // user defined triggers on the table are able to chose how to run + // during a sync + tx.exec(`SET LOCAL ${metadataSchema}.syncing = true;`) + + if (truncateNeeded) { + truncateNeeded = false + // TODO: sync into shadow table and reference count + // for now just clear the whole table - will break + // cases with multiple shapes on the same table + await tx.exec(`DELETE FROM ${options.table};`) + if (options.shapeKey) { + await deleteShapeSubscriptionState({ + pg: tx, + metadataSchema, + shapeKey: options.shapeKey, + }) + } + } + + if (doCopy) { + // We can do a `COPY FROM` to insert the initial data + // Split messageAggregator into initial inserts and remaining messages + const initialInserts: InsertChangeMessage[] = [] + const remainingMessages: ChangeMessage[] = [] + let foundNonInsert = false + for (const message of messageAggregator) { + if (!foundNonInsert && message.headers.operation === 'insert') { + initialInserts.push(message as InsertChangeMessage) + } else { + foundNonInsert = true + remainingMessages.push(message) + } + } + if (initialInserts.length > 0) { + // As `COPY FROM` doesn't trigger a NOTIFY, we pop + // the last insert message and and add it to the be beginning + // of the remaining messages to be applied after the `COPY FROM` + remainingMessages.unshift(initialInserts.pop()!) + } + messageAggregator = remainingMessages + + // Do the `COPY FROM` with initial inserts + if (initialInserts.length > 0) { + applyMessagesToTableWithCopy({ + pg: tx, + table: options.table, + schema: options.schema, + messages: initialInserts as InsertChangeMessage[], + mapColumns: options.mapColumns, + primaryKey: options.primaryKey, + debug, + }) + // We don't want to do a `COPY FROM` again after that + doCopy = false + } + } + + for (const changeMessage of messageAggregator) { + await applyMessageToTable({ + pg: tx, + table: options.table, + schema: options.schema, + message: changeMessage, + mapColumns: options.mapColumns, + primaryKey: options.primaryKey, + debug, + }) + } + + if ( + options.shapeKey && + messageAggregator.length > 0 && + stream.shapeHandle !== undefined + ) { + await updateShapeSubscriptionState({ + pg: tx, + metadataSchema, + shapeKey: options.shapeKey, + shapeId: stream.shapeHandle, + lastOffset: + messageAggregator[messageAggregator.length - 1].offset, + }) + } + }) + messageAggregator = [] + // Await a timeout to start a new task and allow other connections to do work + await new Promise((resolve) => setTimeout(resolve, 0)) + } + + const throttledCommit = async () => { + if ( + options.commitThrottle && + Date.now() - lastCommitAt < options.commitThrottle + ) { + return + } + lastCommitAt = Date.now() + await commit() + } stream.subscribe(async (messages) => { if (debug) console.log('sync messages received', messages) for (const message of messages) { - // accumulate change messages for committing all at once if (isChangeMessage(message)) { + const newLSN = message.offset.split('_')[0] + if (newLSN !== lastLSN) { + // If the LSN has changed and granularity is set to transaction + // we need to commit the current batch. + // This is done before we accumulate any more messages as they are + // part of the next transaction batch. + if (options.commitGranularity === 'transaction') { + await throttledCommit() + } + lastLSN = newLSN + } + + // accumulate change messages for committing all at once or in batches messageAggregator.push(message) - continue - } - // perform actual DB operations upon receiving control messages - if (!isControlMessage(message)) continue - switch (message.headers.control) { - // mark table as needing truncation before next batch commit - case 'must-refetch': - if (debug) console.log('refetching shape') - truncateNeeded = true - messageAggregator = [] - - break - - // perform all accumulated changes and store stream state - case 'up-to-date': - await pg.transaction(async (tx) => { - if (debug) console.log('up-to-date, committing all messages') - - // Set the syncing flag to true during this transaction so that - // user defined triggers on the table are able to chose how to run - // during a sync - tx.exec(`SET LOCAL ${metadataSchema}.syncing = true;`) - - if (truncateNeeded) { - truncateNeeded = false - // TODO: sync into shadow table and reference count - // for now just clear the whole table - will break - // cases with multiple shapes on the same table - await tx.exec(`DELETE FROM ${options.table};`) - if (options.shapeKey) { - await deleteShapeSubscriptionState({ - pg: tx, - metadataSchema, - shapeKey: options.shapeKey, - }) - } - } - - if (doCopy) { - // We can do a `COPY FROM` to insert the initial data - // Split messageAggregator into initial inserts and remaining messages - const initialInserts: InsertChangeMessage[] = [] - const remainingMessages: ChangeMessage[] = [] - let foundNonInsert = false - for (const message of messageAggregator) { - if ( - !foundNonInsert && - message.headers.operation === 'insert' - ) { - initialInserts.push(message as InsertChangeMessage) - } else { - foundNonInsert = true - remainingMessages.push(message) - } - } - if (initialInserts.length > 0) { - // As `COPY FROM` doesn't trigger a NOTIFY, we pop - // the last insert message and and add it to the be beginning - // of the remaining messages to be applied after the `COPY FROM` - remainingMessages.unshift(initialInserts.pop()!) - } - messageAggregator = remainingMessages - - // Do the `COPY FROM` with initial inserts - if (initialInserts.length > 0) { - applyMessagesToTableWithCopy({ - pg: tx, - table: options.table, - schema: options.schema, - messages: initialInserts as InsertChangeMessage[], - mapColumns: options.mapColumns, - primaryKey: options.primaryKey, - debug, - }) - // We don't want to do a `COPY FROM` again after that - doCopy = false - } - } - - for (const changeMessage of messageAggregator) { - await applyMessageToTable({ - pg: tx, - table: options.table, - schema: options.schema, - message: changeMessage, - mapColumns: options.mapColumns, - primaryKey: options.primaryKey, - debug, - }) - } - - if ( - options.shapeKey && - messageAggregator.length > 0 && - stream.shapeHandle !== undefined - ) { - await updateShapeSubscriptionState({ - pg: tx, - metadataSchema, - shapeKey: options.shapeKey, - shapeId: stream.shapeHandle, - lastOffset: - messageAggregator[messageAggregator.length - 1].offset, - }) - } - }) - messageAggregator = [] - break + if (options.commitGranularity === 'operation') { + // commit after each operation if granularity is set to operation + await throttledCommit() + } else if (typeof options.commitGranularity === 'number') { + // commit after every N messages if granularity is set to a number + if (messageAggregator.length >= options.commitGranularity) { + await throttledCommit() + } + } + } else if (isControlMessage(message)) { + switch (message.headers.control) { + case 'must-refetch': + // mark table as needing truncation before next batch commit + if (debug) console.log('refetching shape') + truncateNeeded = true + messageAggregator = [] + break + + case 'up-to-date': + // perform all accumulated changes and store stream state + await commit() // not throttled, we want this to happen ASAP + break + } } } }) @@ -272,6 +327,14 @@ async function createPlugin( } } +export type SyncNamespaceObj = Awaited< + ReturnType +>['namespaceObj'] + +export type PGliteWithSync = PGliteInterface & { + sync: SyncNamespaceObj +} + export function electricSync(options?: ElectricSyncOptions) { return { name: 'ElectricSQL Sync', From a28c9617469118559e3fd7343658182f48eb1b75 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 28 Nov 2024 16:19:38 +0000 Subject: [PATCH 27/34] split out initial sync --- demos/linearlite/src/pglite-worker.ts | 129 +++++++++++++++++++++----- 1 file changed, 108 insertions(+), 21 deletions(-) diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index 06b238ed..ce0b35a3 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -1,7 +1,7 @@ import { worker } from '@electric-sql/pglite/worker' import { PGlite, Mutex } from '@electric-sql/pglite' import { live, type PGliteWithLive } from '@electric-sql/pglite/live' -import { electricSync } from '@electric-sql/pglite-sync' +import { electricSync, type PGliteWithSync } from '@electric-sql/pglite-sync' import { migrate } from './migrations' import type { IssueChange, CommentChange, ChangeSet } from './utils/changes' @@ -9,6 +9,8 @@ const WRITE_SERVER_URL = import.meta.env.VITE_WRITE_SERVER_URL const ELECTRIC_URL = import.meta.env.VITE_ELECTRIC_URL const APPLY_CHANGES_URL = `${WRITE_SERVER_URL}/apply-changes` +type PGliteWithExtensions = PGliteWithLive & PGliteWithSync + worker({ async init() { const pg = await PGlite.create({ @@ -20,33 +22,118 @@ worker({ live, }, }) + + // Migrate the database to the latest schema await migrate(pg) - await pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape`, - table: 'issue', - }, - table: 'issue', - primaryKey: ['id'], - shapeKey: 'issues', - }) - await pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape`, - table: 'comment', - }, - table: 'comment', - primaryKey: ['id'], - shapeKey: 'comments', - }) + + // This waits for the last weeks data to sync to the database + await startSyncToDatabase(pg) + startWritePath(pg) + return pg }, }) +const INITIAL_SYNC_DAYS = 7 +// We can set this to a specific date to sync from, or leave it blank to sync from 30 days ago +// this is used for the demo to sync from a specific date based on what we have in the demo data +const INITIAL_SYNC_FROM_DATE = import.meta.env.VITE_INITIAL_SYNC_FROM_DATE ?? '2024-11-28T00:00:00.000Z' + +async function initialSyncToDatabase(pg: PGliteWithExtensions) { + // We are going to first sync just the last weeks data. + // To make this cache efficient lets sync to the previous Monday that is at least + // 7 days prior to today. + const today = new Date() + const syncFrom = new Date(INITIAL_SYNC_FROM_DATE ?? today) + if (!INITIAL_SYNC_FROM_DATE) { + syncFrom.setDate( + today.getDate() - (INITIAL_SYNC_DAYS + ((today.getDay() + 6) % 7)) + ) + } + + console.log('syncing from', syncFrom.toISOString()) + + const issuesSync = await pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape`, + table: 'issue', + where: `created >= '${syncFrom.toISOString()}'`, + }, + table: 'issue', + primaryKey: ['id'], + }) + const issueSyncUpToDate = new Promise((resolve, reject) => { + issuesSync.subscribe(() => { + // Subscribe will be called when the sync is up to date + // at which point we can unsubscribe and resolve the promise + console.log('issue sync up to date') + issuesSync.unsubscribe() + resolve() + }, reject) + }) + const commentsSync = await pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape`, + table: 'comment', + where: `created >= '${syncFrom.toISOString()}'`, + }, + table: 'comment', + primaryKey: ['id'], + }) + const commentSyncUpToDate = new Promise((resolve, reject) => { + commentsSync.subscribe(() => { + // Subscribe will be called when the sync is up to date + // at which point we can unsubscribe and resolve the promise + console.log('comment sync up to date') + commentsSync.unsubscribe() + resolve() + }, reject) + }) + // Wait for both syncs to complete + await Promise.all([issueSyncUpToDate, commentSyncUpToDate]) +} + +async function startSyncToDatabase(pg: PGliteWithExtensions) { + // First sync the last weeks data if the database is empty + const issueCount = await pg.query<{ count: number }>(` + SELECT count(id) as count FROM issue + `) + if (issueCount.rows[0].count === 0) { + console.log('initial sync to database') + await initialSyncToDatabase(pg) + console.log('initial sync to database complete') + } + + // Finally start the full sync + const throttle = 100 // used during initial sync to prevent too many renders + pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape`, + table: 'issue', + }, + table: 'issue', + primaryKey: ['id'], + shapeKey: 'issues', + commitGranularity: 'transaction', + commitThrottle: throttle, + }) + pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape`, + table: 'comment', + }, + table: 'comment', + primaryKey: ['id'], + shapeKey: 'comments', + commitGranularity: 'transaction', + commitThrottle: throttle, + }) +} + const syncMutex = new Mutex() -async function startWritePath(pg: PGliteWithLive) { +async function startWritePath(pg: PGliteWithExtensions) { // Use a live query to watch for changes to the local tables that need to be synced pg.live.query<{ issue_count: number @@ -73,7 +160,7 @@ async function startWritePath(pg: PGliteWithLive) { } // Call wrapped in mutex to prevent multiple syncs from happening at the same time -async function doSyncToServer(pg: PGliteWithLive) { +async function doSyncToServer(pg: PGliteWithExtensions) { let issueChanges: IssueChange[] let commentChanges: CommentChange[] await pg.transaction(async (tx) => { From fb183254eeaa391fdb7510ce9a66638baafeb2b5 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Mon, 2 Dec 2024 12:55:34 +0000 Subject: [PATCH 28/34] Load data in batches --- demos/linearlite/db/load_data.js | 42 +++++++++++++++++++------------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/demos/linearlite/db/load_data.js b/demos/linearlite/db/load_data.js index 85446a82..b1503c70 100644 --- a/demos/linearlite/db/load_data.js +++ b/demos/linearlite/db/load_data.js @@ -7,6 +7,7 @@ if (!process.env.DATABASE_URL) { const DATABASE_URL = process.env.DATABASE_URL const ISSUES_TO_LOAD = process.env.ISSUES_TO_LOAD || 512 +const BATCH_SIZE = 1000 const issues = generateIssues(ISSUES_TO_LOAD) console.info(`Connecting to Postgres at ${DATABASE_URL}`) @@ -30,23 +31,30 @@ const issueCount = issues.length let commentCount = 0 try { - await sql.begin(async (sql) => { - // Disable FK checks - await sql`SET CONSTRAINTS ALL DEFERRED` - - // Insert issues - const issuesData = issues.map(({ comments: _, ...rest }) => rest) - const issueColumns = Object.keys(issuesData[0]) - await batchInsert(sql, 'issue', issueColumns, issuesData) - - // Insert comments - const allComments = issues.flatMap((issue) => issue.comments) - commentCount = allComments.length - const commentColumns = Object.keys(allComments[0]) - await batchInsert(sql, 'comment', commentColumns, allComments) - }) - - process.stdout.write(`\n`) + // Process data in batches + for (let i = 0; i < issues.length; i += BATCH_SIZE) { + const issueBatch = issues.slice(i, i + BATCH_SIZE) + + await sql.begin(async (sql) => { + // Disable FK checks + await sql`SET CONSTRAINTS ALL DEFERRED` + + // Insert issues + const issuesData = issueBatch.map(({ comments: _, ...rest }) => rest) + const issueColumns = Object.keys(issuesData[0]) + await batchInsert(sql, 'issue', issueColumns, issuesData, BATCH_SIZE) + + // Insert related comments + const batchComments = issueBatch.flatMap((issue) => issue.comments) + const commentColumns = Object.keys(batchComments[0]) + await batchInsert(sql, 'comment', commentColumns, batchComments, BATCH_SIZE) + + commentCount += batchComments.length + }) + + process.stdout.write(`\nProcessed batch ${Math.floor(i / BATCH_SIZE) + 1}: ${Math.min(i + BATCH_SIZE, issues.length)} of ${issues.length} issues\n`) + } + console.info(`Loaded ${issueCount} issues with ${commentCount} comments.`) } catch (error) { console.error('Error loading data:', error) From 44bf9b3256d48bd0d7707cc406784adaaccc7cc5 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Tue, 3 Dec 2024 16:04:13 +0000 Subject: [PATCH 29/34] Loading faster, and a loading screen --- demos/linearlite/db/generate_data.js | 2 +- demos/linearlite/db/load_data.js | 14 +- .../db/migrations-client/01-create_tables.sql | 20 +- .../post-initial-sync-fts-index.sql | 1 + .../post-initial-sync-indexes.sql | 11 + demos/linearlite/src/App.tsx | 71 ++++- demos/linearlite/src/components/TopFilter.tsx | 34 +- demos/linearlite/src/migrations.ts | 28 +- demos/linearlite/src/pglite-worker.ts | 230 +------------- demos/linearlite/src/sync.ts | 296 ++++++++++++++++++ demos/linearlite/src/utils/filterState.ts | 6 +- packages/pglite-sync/src/index.ts | 21 +- 12 files changed, 470 insertions(+), 264 deletions(-) create mode 100644 demos/linearlite/db/migrations-client/post-initial-sync-fts-index.sql create mode 100644 demos/linearlite/db/migrations-client/post-initial-sync-indexes.sql create mode 100644 demos/linearlite/src/sync.ts diff --git a/demos/linearlite/db/generate_data.js b/demos/linearlite/db/generate_data.js index c9d101db..a2e5240c 100644 --- a/demos/linearlite/db/generate_data.js +++ b/demos/linearlite/db/generate_data.js @@ -35,7 +35,7 @@ function generateIssue(kanbanKey) { username: faker.internet.userName(), comments: faker.helpers.multiple( () => generateComment(issueId, createdAt), - { count: faker.number.int({ min: 0, max: 10 }) } + { count: faker.number.int({ min: 0, max: 1 }) } ), } } diff --git a/demos/linearlite/db/load_data.js b/demos/linearlite/db/load_data.js index b1503c70..4a4f494e 100644 --- a/demos/linearlite/db/load_data.js +++ b/demos/linearlite/db/load_data.js @@ -34,7 +34,7 @@ try { // Process data in batches for (let i = 0; i < issues.length; i += BATCH_SIZE) { const issueBatch = issues.slice(i, i + BATCH_SIZE) - + await sql.begin(async (sql) => { // Disable FK checks await sql`SET CONSTRAINTS ALL DEFERRED` @@ -47,12 +47,20 @@ try { // Insert related comments const batchComments = issueBatch.flatMap((issue) => issue.comments) const commentColumns = Object.keys(batchComments[0]) - await batchInsert(sql, 'comment', commentColumns, batchComments, BATCH_SIZE) + await batchInsert( + sql, + 'comment', + commentColumns, + batchComments, + BATCH_SIZE + ) commentCount += batchComments.length }) - process.stdout.write(`\nProcessed batch ${Math.floor(i / BATCH_SIZE) + 1}: ${Math.min(i + BATCH_SIZE, issues.length)} of ${issues.length} issues\n`) + process.stdout.write( + `\nProcessed batch ${Math.floor(i / BATCH_SIZE) + 1}: ${Math.min(i + BATCH_SIZE, issues.length)} of ${issues.length} issues\n` + ) } console.info(`Loaded ${issueCount} issues with ${commentCount} comments.`) diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index d1f9e70e..7129fac7 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -15,10 +15,6 @@ CREATE TABLE IF NOT EXISTS "issue" ( "sent_to_server" BOOLEAN NOT NULL DEFAULT FALSE, -- Flag to track if the row has been sent to the server "synced" BOOLEAN GENERATED ALWAYS AS (ARRAY_LENGTH(modified_columns, 1) IS NULL AND NOT deleted AND NOT new) STORED, "backup" JSONB, -- JSONB column to store the backup of the row data for modified columns - "search_vector" tsvector GENERATED ALWAYS AS ( - setweight(to_tsvector('simple', coalesce(title, '')), 'A') || - setweight(to_tsvector('simple', coalesce(description, '')), 'B') - ) STORED, CONSTRAINT "issue_pkey" PRIMARY KEY ("id") ); @@ -39,20 +35,8 @@ CREATE TABLE IF NOT EXISTS "comment" ( ); CREATE INDEX IF NOT EXISTS "issue_id_idx" ON "issue" ("id"); -CREATE INDEX IF NOT EXISTS "issue_priority_idx" ON "issue" ("priority"); -CREATE INDEX IF NOT EXISTS "issue_status_idx" ON "issue" ("status"); -CREATE INDEX IF NOT EXISTS "issue_modified_idx" ON "issue" ("modified"); -CREATE INDEX IF NOT EXISTS "issue_created_idx" ON "issue" ("created"); -CREATE INDEX IF NOT EXISTS "issue_kanbanorder_idx" ON "issue" ("kanbanorder"); -CREATE INDEX IF NOT EXISTS "issue_deleted_idx" ON "issue" ("deleted"); -CREATE INDEX IF NOT EXISTS "issue_synced_idx" ON "issue" ("synced"); -CREATE INDEX IF NOT EXISTS "issue_search_idx" ON "issue" USING GIN ("search_vector"); CREATE INDEX IF NOT EXISTS "comment_id_idx" ON "comment" ("id"); -CREATE INDEX IF NOT EXISTS "comment_issue_id_idx" ON "comment" ("issue_id"); -CREATE INDEX IF NOT EXISTS "comment_created_idx" ON "comment" ("created"); -CREATE INDEX IF NOT EXISTS "comment_deleted_idx" ON "comment" ("deleted"); -CREATE INDEX IF NOT EXISTS "comment_synced_idx" ON "comment" ("synced"); -- During sync the electric.syncing config var is set to true -- We can use this in triggers to determine the action that should be performed @@ -297,3 +281,7 @@ $$ LANGUAGE plpgsql; -- Example usage: -- SELECT revert_local_changes('issue', '123e4567-e89b-12d3-a456-426614174000'); -- SELECT revert_local_changes('comment', '123e4567-e89b-12d3-a456-426614174001'); + + +ALTER TABLE issue DISABLE TRIGGER ALL; +ALTER TABLE comment DISABLE TRIGGER ALL; diff --git a/demos/linearlite/db/migrations-client/post-initial-sync-fts-index.sql b/demos/linearlite/db/migrations-client/post-initial-sync-fts-index.sql new file mode 100644 index 00000000..9e292c05 --- /dev/null +++ b/demos/linearlite/db/migrations-client/post-initial-sync-fts-index.sql @@ -0,0 +1 @@ +CREATE INDEX IF NOT EXISTS "issue_search_idx" ON "issue" USING GIN ((setweight(to_tsvector('simple', coalesce(title, '')), 'A') || setweight(to_tsvector('simple', coalesce(description, '')), 'B'))); \ No newline at end of file diff --git a/demos/linearlite/db/migrations-client/post-initial-sync-indexes.sql b/demos/linearlite/db/migrations-client/post-initial-sync-indexes.sql new file mode 100644 index 00000000..30328e46 --- /dev/null +++ b/demos/linearlite/db/migrations-client/post-initial-sync-indexes.sql @@ -0,0 +1,11 @@ +CREATE INDEX IF NOT EXISTS "issue_priority_idx" ON "issue" ("priority"); +CREATE INDEX IF NOT EXISTS "issue_status_idx" ON "issue" ("status"); +CREATE INDEX IF NOT EXISTS "issue_modified_idx" ON "issue" ("modified"); +CREATE INDEX IF NOT EXISTS "issue_created_idx" ON "issue" ("created"); +CREATE INDEX IF NOT EXISTS "issue_kanbanorder_idx" ON "issue" ("kanbanorder"); +CREATE INDEX IF NOT EXISTS "issue_deleted_idx" ON "issue" ("deleted"); +CREATE INDEX IF NOT EXISTS "issue_synced_idx" ON "issue" ("synced"); +CREATE INDEX IF NOT EXISTS "comment_issue_id_idxx" ON "comment" ("issue_id"); +CREATE INDEX IF NOT EXISTS "comment_created_idx" ON "comment" ("created"); +CREATE INDEX IF NOT EXISTS "comment_deleted_idx" ON "comment" ("deleted"); +CREATE INDEX IF NOT EXISTS "comment_synced_idx" ON "comment" ("synced"); \ No newline at end of file diff --git a/demos/linearlite/src/App.tsx b/demos/linearlite/src/App.tsx index 169414f3..de86fced 100644 --- a/demos/linearlite/src/App.tsx +++ b/demos/linearlite/src/App.tsx @@ -20,6 +20,9 @@ import { FilterState, } from './utils/filterState' import { Issue as IssueType, Status, StatusValue } from './types/types' +import { startSync, useSyncStatus, waitForInitialSyncDone } from './sync' +import { electricSync } from '@electric-sql/pglite-sync' +import { ImSpinner8 } from 'react-icons/im' interface MenuContextInterface { showMenu: boolean @@ -30,13 +33,36 @@ export const MenuContext = createContext(null as MenuContextInterface | null) type PGliteWorkerWithLive = PGliteWorker & { live: LiveNamespace } -const pgPromise = PGliteWorker.create(new PGWorker(), { - extensions: { - live, - }, +async function createPGlite() { + return PGliteWorker.create(new PGWorker(), { + extensions: { + live, + sync: electricSync(), + }, + }) +} + +const pgPromise = createPGlite() + +let syncStarted = false +pgPromise.then(async (pg) => { + console.log('PGlite worker started') + pg.onLeaderChange(() => { + console.log('Leader changed, isLeader:', pg.isLeader) + if (pg.isLeader && !syncStarted) { + syncStarted = true + startSync(pg) + } + }) +}) + +let resolveFirstLoaderPromise: (value: void | PromiseLike) => void +const firstLoaderPromise = new Promise((resolve) => { + resolveFirstLoaderPromise = resolve }) async function issueListLoader({ request }: { request: Request }) { + await waitForInitialSyncDone() const pg = await pgPromise const url = new URL(request.url) const filterState = getFilterStateFromSearchParams(url.searchParams) @@ -48,10 +74,12 @@ async function issueListLoader({ request }: { request: Request }) { offset: 0, limit: 100, }) + resolveFirstLoaderPromise() return { liveIssues, filterState } } async function boardIssueListLoader({ request }: { request: Request }) { + await waitForInitialSyncDone() const pg = await pgPromise const url = new URL(request.url) const filterState = getFilterStateFromSearchParams(url.searchParams) @@ -78,6 +106,8 @@ async function boardIssueListLoader({ request }: { request: Request }) { columnsLiveIssues[status] = colLiveIssues } + resolveFirstLoaderPromise() + return { columnsLiveIssues: columnsLiveIssues as Record< StatusValue, @@ -132,21 +162,52 @@ const router = createBrowserRouter([ }, ]) +const LoadingScreen = ({ children }: { children: React.ReactNode }) => { + return ( +
+ +
+ {children} +
+
+ ) +} + const App = () => { const [showMenu, setShowMenu] = useState(false) const [pgForProvider, setPgForProvider] = useState(null) + const [syncStatus, syncMessage] = useSyncStatus() + const [firstLoaderDone, setFirstLoaderDone] = useState(false) useEffect(() => { pgPromise.then(setPgForProvider) }, []) + useEffect(() => { + if (firstLoaderDone) return + firstLoaderPromise.then(() => { + setFirstLoaderDone(true) + }) + }, [firstLoaderDone]) + const menuContextValue = useMemo( () => ({ showMenu, setShowMenu }), [showMenu] ) - if (!pgForProvider) return
Loading...
+ if (!pgForProvider) return Starting PGlite... + + if (syncStatus === 'initial-sync') + return ( + + Performing initial sync... +
+ {syncMessage} +
+ ) + + if (!firstLoaderDone) return Loading... return ( diff --git a/demos/linearlite/src/components/TopFilter.tsx b/demos/linearlite/src/components/TopFilter.tsx index 0169442d..5724b4e2 100644 --- a/demos/linearlite/src/components/TopFilter.tsx +++ b/demos/linearlite/src/components/TopFilter.tsx @@ -1,13 +1,14 @@ import { ReactComponent as MenuIcon } from '../assets/icons/menu.svg' -import { useState, useContext } from 'react' +import { useState, useContext, useEffect } from 'react' import { BsSortUp, BsPlus, BsX, BsSearch as SearchIcon } from 'react-icons/bs' -import { useLiveQuery } from '@electric-sql/pglite-react' +import { useLiveQuery, usePGlite } from '@electric-sql/pglite-react' import ViewOptionMenu from './ViewOptionMenu' import { MenuContext } from '../App' import FilterMenu from './contextmenu/FilterMenu' import { FilterState, useFilterState } from '../utils/filterState' import { PriorityDisplay, StatusDisplay } from '../types/types' import debounce from 'lodash.debounce' +import { createFTSIndex } from '../migrations' interface Props { filteredIssuesCount: number @@ -28,6 +29,8 @@ export default function ({ const [showViewOption, setShowViewOption] = useState(false) const { showMenu, setShowMenu } = useContext(MenuContext)! const [searchQuery, setSearchQuery] = useState(``) + const [FTSIndexReady, setFTSIndexReady] = useState(true) + const pg = usePGlite() filterState ??= usedFilterState @@ -63,6 +66,24 @@ export default function ({ } } + useEffect(() => { + if (!showSearch) return + const checkFTSIndex = async () => { + const res = await pg.query( + `SELECT 1 FROM pg_indexes WHERE indexname = 'issue_search_idx';` + ) + const indexReady = res.rows.length > 0 + if (!indexReady) { + setFTSIndexReady(false) + await createFTSIndex(pg) + } + setFTSIndexReady(true) + } + checkFTSIndex() + }, [showSearch, pg]) + + const showFTSIndexProgress = showSearch && !FTSIndexReady + return ( <>
@@ -177,6 +198,15 @@ export default function ({
)} + {showFTSIndexProgress && ( +
+
+
+ Building full text search index... (only happens once) +
+
+ )} + setShowViewOption(false)} diff --git a/demos/linearlite/src/migrations.ts b/demos/linearlite/src/migrations.ts index 62ae2dbb..143a6fb4 100644 --- a/demos/linearlite/src/migrations.ts +++ b/demos/linearlite/src/migrations.ts @@ -1,6 +1,30 @@ -import type { PGlite } from '@electric-sql/pglite' +import type { PGlite, PGliteInterface } from '@electric-sql/pglite' import m1 from '../db/migrations-client/01-create_tables.sql?raw' +import postInitialSyncIndexes from '../db/migrations-client/post-initial-sync-indexes.sql?raw' +import postInitialSyncFtsIndex from '../db/migrations-client/post-initial-sync-fts-index.sql?raw' export async function migrate(pg: PGlite) { - await pg.exec(m1) + const tables = await pg.query( + `SELECT table_name FROM information_schema.tables WHERE table_schema='public'` + ) + if (tables.rows.length === 0) { + await pg.exec(m1) + } +} + +export async function postInitialSync(pg: PGliteInterface) { + const commands = postInitialSyncIndexes + .split('\n') + .map((c) => c.trim()) + .filter((c) => c.length > 0) + for (const command of commands) { + // wait 100ms between commands + console.time(`command: ${command}`) + await pg.exec(command) + console.timeEnd(`command: ${command}`) + } +} + +export async function createFTSIndex(pg: PGliteInterface) { + await pg.exec(postInitialSyncFtsIndex) } diff --git a/demos/linearlite/src/pglite-worker.ts b/demos/linearlite/src/pglite-worker.ts index ce0b35a3..598424e2 100644 --- a/demos/linearlite/src/pglite-worker.ts +++ b/demos/linearlite/src/pglite-worker.ts @@ -1,243 +1,15 @@ import { worker } from '@electric-sql/pglite/worker' -import { PGlite, Mutex } from '@electric-sql/pglite' -import { live, type PGliteWithLive } from '@electric-sql/pglite/live' -import { electricSync, type PGliteWithSync } from '@electric-sql/pglite-sync' +import { PGlite } from '@electric-sql/pglite' import { migrate } from './migrations' -import type { IssueChange, CommentChange, ChangeSet } from './utils/changes' - -const WRITE_SERVER_URL = import.meta.env.VITE_WRITE_SERVER_URL -const ELECTRIC_URL = import.meta.env.VITE_ELECTRIC_URL -const APPLY_CHANGES_URL = `${WRITE_SERVER_URL}/apply-changes` - -type PGliteWithExtensions = PGliteWithLive & PGliteWithSync worker({ async init() { const pg = await PGlite.create({ - // debug: 1, dataDir: 'idb://linearlite2', relaxedDurability: true, - extensions: { - sync: electricSync(), - live, - }, }) - // Migrate the database to the latest schema await migrate(pg) - - // This waits for the last weeks data to sync to the database - await startSyncToDatabase(pg) - - startWritePath(pg) - return pg }, }) - -const INITIAL_SYNC_DAYS = 7 -// We can set this to a specific date to sync from, or leave it blank to sync from 30 days ago -// this is used for the demo to sync from a specific date based on what we have in the demo data -const INITIAL_SYNC_FROM_DATE = import.meta.env.VITE_INITIAL_SYNC_FROM_DATE ?? '2024-11-28T00:00:00.000Z' - -async function initialSyncToDatabase(pg: PGliteWithExtensions) { - // We are going to first sync just the last weeks data. - // To make this cache efficient lets sync to the previous Monday that is at least - // 7 days prior to today. - const today = new Date() - const syncFrom = new Date(INITIAL_SYNC_FROM_DATE ?? today) - if (!INITIAL_SYNC_FROM_DATE) { - syncFrom.setDate( - today.getDate() - (INITIAL_SYNC_DAYS + ((today.getDay() + 6) % 7)) - ) - } - - console.log('syncing from', syncFrom.toISOString()) - - const issuesSync = await pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape`, - table: 'issue', - where: `created >= '${syncFrom.toISOString()}'`, - }, - table: 'issue', - primaryKey: ['id'], - }) - const issueSyncUpToDate = new Promise((resolve, reject) => { - issuesSync.subscribe(() => { - // Subscribe will be called when the sync is up to date - // at which point we can unsubscribe and resolve the promise - console.log('issue sync up to date') - issuesSync.unsubscribe() - resolve() - }, reject) - }) - const commentsSync = await pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape`, - table: 'comment', - where: `created >= '${syncFrom.toISOString()}'`, - }, - table: 'comment', - primaryKey: ['id'], - }) - const commentSyncUpToDate = new Promise((resolve, reject) => { - commentsSync.subscribe(() => { - // Subscribe will be called when the sync is up to date - // at which point we can unsubscribe and resolve the promise - console.log('comment sync up to date') - commentsSync.unsubscribe() - resolve() - }, reject) - }) - // Wait for both syncs to complete - await Promise.all([issueSyncUpToDate, commentSyncUpToDate]) -} - -async function startSyncToDatabase(pg: PGliteWithExtensions) { - // First sync the last weeks data if the database is empty - const issueCount = await pg.query<{ count: number }>(` - SELECT count(id) as count FROM issue - `) - if (issueCount.rows[0].count === 0) { - console.log('initial sync to database') - await initialSyncToDatabase(pg) - console.log('initial sync to database complete') - } - - // Finally start the full sync - const throttle = 100 // used during initial sync to prevent too many renders - pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape`, - table: 'issue', - }, - table: 'issue', - primaryKey: ['id'], - shapeKey: 'issues', - commitGranularity: 'transaction', - commitThrottle: throttle, - }) - pg.sync.syncShapeToTable({ - shape: { - url: `${ELECTRIC_URL}/v1/shape`, - table: 'comment', - }, - table: 'comment', - primaryKey: ['id'], - shapeKey: 'comments', - commitGranularity: 'transaction', - commitThrottle: throttle, - }) -} - -const syncMutex = new Mutex() - -async function startWritePath(pg: PGliteWithExtensions) { - // Use a live query to watch for changes to the local tables that need to be synced - pg.live.query<{ - issue_count: number - comment_count: number - }>( - ` - SELECT * FROM - (SELECT count(id) as issue_count FROM issue WHERE synced = false), - (SELECT count(id) as comment_count FROM comment WHERE synced = false) - `, - [], - async (results) => { - const { issue_count, comment_count } = results.rows[0] - if (issue_count > 0 || comment_count > 0) { - await syncMutex.acquire() - try { - doSyncToServer(pg) - } finally { - syncMutex.release() - } - } - } - ) -} - -// Call wrapped in mutex to prevent multiple syncs from happening at the same time -async function doSyncToServer(pg: PGliteWithExtensions) { - let issueChanges: IssueChange[] - let commentChanges: CommentChange[] - await pg.transaction(async (tx) => { - const issueRes = await tx.query(` - SELECT - id, - title, - description, - priority, - status, - modified, - created, - kanbanorder, - username, - modified_columns, - deleted, - new - FROM issue - WHERE synced = false AND sent_to_server = false - `) - const commentRes = await tx.query(` - SELECT - id, - body, - username, - issue_id, - modified, - created, - modified_columns, - deleted, - new - FROM comment - WHERE synced = false AND sent_to_server = false - `) - issueChanges = issueRes.rows - commentChanges = commentRes.rows - }) - const changeSet: ChangeSet = { - issues: issueChanges!, - comments: commentChanges!, - } - const response = await fetch(APPLY_CHANGES_URL, { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify(changeSet), - }) - if (!response.ok) { - throw new Error('Failed to apply changes') - } - await pg.transaction(async (tx) => { - // Mark all changes as sent to server, but check that the modified timestamp - // has not changed in the meantime - - tx.exec('SET LOCAL electric.bypass_triggers = true') - - for (const issue of issueChanges!) { - await tx.query( - ` - UPDATE issue - SET sent_to_server = true - WHERE id = $1 AND modified = $2 - `, - [issue.id, issue.modified] - ) - } - - for (const comment of commentChanges!) { - await tx.query( - ` - UPDATE comment - SET sent_to_server = true - WHERE id = $1 AND modified = $2 - `, - [comment.id, comment.modified] - ) - } - }) -} diff --git a/demos/linearlite/src/sync.ts b/demos/linearlite/src/sync.ts new file mode 100644 index 00000000..33f10968 --- /dev/null +++ b/demos/linearlite/src/sync.ts @@ -0,0 +1,296 @@ +import { Mutex } from '@electric-sql/pglite' +import { type PGliteWithLive } from '@electric-sql/pglite/live' +import { type PGliteWithSync } from '@electric-sql/pglite-sync' +import type { IssueChange, CommentChange, ChangeSet } from './utils/changes' +import { postInitialSync } from './migrations' +import { useEffect, useState } from 'react' + +const WRITE_SERVER_URL = import.meta.env.VITE_WRITE_SERVER_URL +const ELECTRIC_URL = import.meta.env.VITE_ELECTRIC_URL +const APPLY_CHANGES_URL = `${WRITE_SERVER_URL}/apply-changes` + +type SyncStatus = 'initial-sync' | 'done' + +type PGliteWithExtensions = PGliteWithLive & PGliteWithSync + +export async function startSync(pg: PGliteWithExtensions) { + await startSyncToDatabase(pg) + startWritePath(pg) +} + +async function startSyncToDatabase(pg: PGliteWithExtensions) { + // Check if there are any issues already in the database + const issues = await pg.query(`SELECT 1 FROM issue LIMIT 1`) + const hasIssuesAtStart = issues.rows.length > 0 + + let issueShapeInitialSyncDone = false + let commentShapeInitialSyncDone = false + let postInitialSyncDone = false + + if (!hasIssuesAtStart && !postInitialSyncDone) { + updateSyncStatus('initial-sync', 'Downloading shape data...') + } + + let postInitialSyncDoneResolver: () => void + const postInitialSyncDonePromise = new Promise((resolve) => { + postInitialSyncDoneResolver = resolve + }) + + const doPostInitialSync = async () => { + if ( + !hasIssuesAtStart && + issueShapeInitialSyncDone && + commentShapeInitialSyncDone && + !postInitialSyncDone + ) { + postInitialSyncDone = true + updateSyncStatus('initial-sync', 'Creating indexes...') + await postInitialSync(pg) + postInitialSyncDoneResolver() + } + } + + // Issues Sync + const issuesSync = await pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape`, + table: 'issue', + }, + table: 'issue', + primaryKey: ['id'], + shapeKey: 'issues', + commitGranularity: 'up-to-date', + useCopy: true, + onInitialSync: async () => { + issueShapeInitialSyncDone = true + await pg.exec(`ALTER TABLE issue ENABLE TRIGGER ALL`) + doPostInitialSync() + }, + }) + issuesSync.subscribe( + () => { + if (!hasIssuesAtStart && !postInitialSyncDone) { + updateSyncStatus('initial-sync', 'Inserting issues...') + } + }, + (error) => { + console.error('issuesSync error', error) + } + ) + + // Comments Sync + const commentsSync = await pg.sync.syncShapeToTable({ + shape: { + url: `${ELECTRIC_URL}/v1/shape`, + table: 'comment', + }, + table: 'comment', + primaryKey: ['id'], + shapeKey: 'comments', + commitGranularity: 'up-to-date', + useCopy: true, + onInitialSync: async () => { + commentShapeInitialSyncDone = true + await pg.exec(`ALTER TABLE comment ENABLE TRIGGER ALL`) + doPostInitialSync() + }, + }) + commentsSync.subscribe( + () => { + if (!hasIssuesAtStart && !postInitialSyncDone) { + updateSyncStatus('initial-sync', 'Inserting comments...') + } + }, + (error) => { + console.error('commentsSync error', error) + } + ) + + if (!hasIssuesAtStart) { + await postInitialSyncDonePromise + await pg.query(`SELECT 1;`) // Do a query to ensure PGlite is idle + } + updateSyncStatus('done') +} + +const syncMutex = new Mutex() + +async function startWritePath(pg: PGliteWithExtensions) { + // Use a live query to watch for changes to the local tables that need to be synced + pg.live.query<{ + issue_count: number + comment_count: number + }>( + ` + SELECT * FROM + (SELECT count(id) as issue_count FROM issue WHERE synced = false), + (SELECT count(id) as comment_count FROM comment WHERE synced = false) + `, + [], + async (results) => { + const { issue_count, comment_count } = results.rows[0] + if (issue_count > 0 || comment_count > 0) { + await syncMutex.acquire() + try { + doSyncToServer(pg) + } finally { + syncMutex.release() + } + } + } + ) +} + +// Call wrapped in mutex to prevent multiple syncs from happening at the same time +async function doSyncToServer(pg: PGliteWithExtensions) { + let issueChanges: IssueChange[] + let commentChanges: CommentChange[] + await pg.transaction(async (tx) => { + const issueRes = await tx.query(` + SELECT + id, + title, + description, + priority, + status, + modified, + created, + kanbanorder, + username, + modified_columns, + deleted, + new + FROM issue + WHERE synced = false AND sent_to_server = false + `) + const commentRes = await tx.query(` + SELECT + id, + body, + username, + issue_id, + modified, + created, + modified_columns, + deleted, + new + FROM comment + WHERE synced = false AND sent_to_server = false + `) + issueChanges = issueRes.rows + commentChanges = commentRes.rows + }) + const changeSet: ChangeSet = { + issues: issueChanges!, + comments: commentChanges!, + } + const response = await fetch(APPLY_CHANGES_URL, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify(changeSet), + }) + if (!response.ok) { + throw new Error('Failed to apply changes') + } + await pg.transaction(async (tx) => { + // Mark all changes as sent to server, but check that the modified timestamp + // has not changed in the meantime + + tx.exec('SET LOCAL electric.bypass_triggers = true') + + for (const issue of issueChanges!) { + await tx.query( + ` + UPDATE issue + SET sent_to_server = true + WHERE id = $1 AND modified = $2 + `, + [issue.id, issue.modified] + ) + } + + for (const comment of commentChanges!) { + await tx.query( + ` + UPDATE comment + SET sent_to_server = true + WHERE id = $1 AND modified = $2 + `, + [comment.id, comment.modified] + ) + } + }) +} + +export function updateSyncStatus(newStatus: SyncStatus, message?: string) { + localStorage.setItem('syncStatus', JSON.stringify([newStatus, message])) + // Fire a storage event on this tab as this doesn't happen automatically + window.dispatchEvent( + new StorageEvent('storage', { + key: 'syncStatus', + newValue: JSON.stringify([newStatus, message]), + }) + ) +} + +export function useSyncStatus() { + const currentSyncStatusJson = localStorage.getItem('syncStatus') + const currentSyncStatus: [SyncStatus, string] = currentSyncStatusJson + ? JSON.parse(currentSyncStatusJson) + : ['initial-sync', 'Starting sync...'] + const [syncStatus, setSyncStatus] = + useState<[SyncStatus, string]>(currentSyncStatus) + + useEffect(() => { + const handleStorageChange = (e: StorageEvent) => { + if (e.key === 'syncStatus' && e.newValue) { + const [newStatus, message] = JSON.parse(e.newValue) + setSyncStatus([newStatus, message]) + } + } + + window.addEventListener('storage', handleStorageChange) + + return () => { + window.removeEventListener('storage', handleStorageChange) + } + }, []) + + return syncStatus +} + +let initialSyncDone = false + +export function waitForInitialSyncDone() { + return new Promise((resolve) => { + if (initialSyncDone) { + resolve() + return + } + const handleStorageChange = (e: StorageEvent) => { + if (e.key === 'syncStatus' && e.newValue) { + const [newStatus] = JSON.parse(e.newValue) + if (newStatus === 'done') { + window.removeEventListener('storage', handleStorageChange) + initialSyncDone = true + resolve() + } + } + } + + // Check current status first + const currentSyncStatusJson = localStorage.getItem('syncStatus') + const [currentStatus] = currentSyncStatusJson + ? JSON.parse(currentSyncStatusJson) + : ['initial-sync'] + + if (currentStatus === 'done') { + initialSyncDone = true + resolve() + } else { + window.addEventListener('storage', handleStorageChange) + } + }) +} diff --git a/demos/linearlite/src/utils/filterState.ts b/demos/linearlite/src/utils/filterState.ts index d7ef3c90..490909c6 100644 --- a/demos/linearlite/src/utils/filterState.ts +++ b/demos/linearlite/src/utils/filterState.ts @@ -94,7 +94,11 @@ export function filterStateToSql(filterState: FilterState) { sqlParams.push(...filterState.priority) } if (filterState.query) { - sqlWhere.push(`search_vector @@ plainto_tsquery('simple', $${i++})`) + sqlWhere.push(` + (setweight(to_tsvector('simple', coalesce(title, '')), 'A') || + setweight(to_tsvector('simple', coalesce(description, '')), 'B')) + @@ plainto_tsquery('simple', $${i++}) + `) sqlParams.push(filterState.query) } const sql = ` diff --git a/packages/pglite-sync/src/index.ts b/packages/pglite-sync/src/index.ts index 687bf9ba..df5d46b0 100644 --- a/packages/pglite-sync/src/index.ts +++ b/packages/pglite-sync/src/index.ts @@ -44,6 +44,7 @@ export interface SyncShapeToTableOptions { useCopy?: boolean commitGranularity?: CommitGranularity commitThrottle?: number + onInitialSync?: () => void } export interface ElectricSyncOptions { @@ -69,6 +70,7 @@ async function createPlugin( const namespaceObj = { syncShapeToTable: async (options: SyncShapeToTableOptions) => { + await firstRun() options = { commitGranularity: 'up-to-date', ...options, @@ -128,7 +130,10 @@ async function createPlugin( const commit = async () => { if (messageAggregator.length === 0 && !truncateNeeded) return await pg.transaction(async (tx) => { - if (debug) console.log('up-to-date, committing all messages') + if (debug) { + console.log('committing message batch', messageAggregator.length) + console.time('commit') + } // Set the syncing flag to true during this transaction so that // user defined triggers on the table are able to chose how to run @@ -215,6 +220,7 @@ async function createPlugin( }) } }) + if (debug) console.timeEnd('commit') messageAggregator = [] // Await a timeout to start a new task and allow other connections to do work await new Promise((resolve) => setTimeout(resolve, 0)) @@ -272,6 +278,9 @@ async function createPlugin( case 'up-to-date': // perform all accumulated changes and store stream state await commit() // not throttled, we want this to happen ASAP + if (isNewSubscription && options.onInitialSync) { + options.onInitialSync() + } break } } @@ -313,7 +322,11 @@ async function createPlugin( } } - const init = async () => { + let firstRunDone = false + + const firstRun = async () => { + if (firstRunDone) return + firstRunDone = true await migrateShapeMetadataTables({ pg, metadataSchema, @@ -323,7 +336,6 @@ async function createPlugin( return { namespaceObj, close, - init, } } @@ -339,11 +351,10 @@ export function electricSync(options?: ElectricSyncOptions) { return { name: 'ElectricSQL Sync', setup: async (pg: PGliteInterface) => { - const { namespaceObj, close, init } = await createPlugin(pg, options) + const { namespaceObj, close } = await createPlugin(pg, options) return { namespaceObj, close, - init, } }, } satisfies Extension From d2e5ec46607bcb71818befc50e4838cbc73c7695 Mon Sep 17 00:00:00 2001 From: FindAPattern Date: Tue, 3 Dec 2024 11:17:41 -0500 Subject: [PATCH 30/34] Added table schema checks to linearite demo triggers. (#449) * Swap to postgres.js so compatible with CF Workers * Added table schema checks to linearite demo triggers. I ran into an issue using these triggers on a table with the same name as a table in another schema. Adding table schema checks fixes the issue. --------- Co-authored-by: Sam Willis --- demos/linearlite/db/migrations-client/01-create_tables.sql | 3 +++ 1 file changed, 3 insertions(+) diff --git a/demos/linearlite/db/migrations-client/01-create_tables.sql b/demos/linearlite/db/migrations-client/01-create_tables.sql index 7129fac7..c0a5c1e4 100644 --- a/demos/linearlite/db/migrations-client/01-create_tables.sql +++ b/demos/linearlite/db/migrations-client/01-create_tables.sql @@ -122,6 +122,7 @@ BEGIN FOR col_name IN SELECT column_name FROM information_schema.columns WHERE table_name = TG_TABLE_NAME AND + table_schema = TG_TABLE_SCHEMA AND column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector') LOOP EXECUTE format('SELECT $1.%I', col_name) USING NEW INTO new_value; EXECUTE format('SELECT %I FROM %I WHERE id = $1', col_name, TG_TABLE_NAME) USING NEW.id INTO old_value; @@ -207,6 +208,7 @@ BEGIN FOR column_name IN SELECT columns.column_name FROM information_schema.columns WHERE columns.table_name = TG_TABLE_NAME + AND columns.table_schema = TG_TABLE_SCHEMA AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector') LOOP IF column_name != ANY(OLD.modified_columns) THEN EXECUTE format('SELECT ($1).%I', column_name) USING NEW INTO new_value; @@ -224,6 +226,7 @@ BEGIN FOR column_name IN SELECT columns.column_name FROM information_schema.columns WHERE columns.table_name = TG_TABLE_NAME + AND columns.table_schema = TG_TABLE_SCHEMA AND columns.column_name NOT IN ('id', 'synced', 'modified_columns', 'backup', 'deleted', 'new', 'sent_to_server', 'search_vector') LOOP EXECUTE format('SELECT ($1).%I', column_name) USING NEW INTO new_value; EXECUTE format('SELECT ($1).%I', column_name) USING OLD INTO old_value; From a88cd8264e15c26c10224f43d8b70586b9353bf1 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Tue, 3 Dec 2024 22:45:19 +0000 Subject: [PATCH 31/34] Deploy with supabase --- demos/linearlite/package.json | 7 +- demos/linearlite/src/sync.ts | 18 +- demos/linearlite/supabase/.gitignore | 4 + demos/linearlite/supabase/config.toml | 275 ++++++++++++++++++ .../supabase/functions/write-server/index.ts | 133 +++++++++ pnpm-lock.yaml | 165 +++++++++++ 6 files changed, 597 insertions(+), 5 deletions(-) create mode 100644 demos/linearlite/supabase/.gitignore create mode 100644 demos/linearlite/supabase/config.toml create mode 100644 demos/linearlite/supabase/functions/write-server/index.ts diff --git a/demos/linearlite/package.json b/demos/linearlite/package.json index 21e92c9e..68b17d83 100644 --- a/demos/linearlite/package.json +++ b/demos/linearlite/package.json @@ -27,6 +27,7 @@ "@electric-sql/pglite-sync": "workspace:*", "@firefox-devtools/react-contextmenu": "^5.1.1", "@headlessui/react": "^1.7.17", + "@hono/node-server": "^1.8.0", "@svgr/plugin-jsx": "^8.1.0", "@svgr/plugin-svgo": "^8.1.0", "@tailwindcss/forms": "^0.5.6", @@ -45,6 +46,7 @@ "dayjs": "^1.11.11", "dotenv": "^16.4.5", "fractional-indexing": "^3.2.0", + "hono": "^4.0.0", "jsonwebtoken": "^9.0.2", "lodash.debounce": "^4.0.8", "postgres": "^3.4.3", @@ -60,9 +62,7 @@ "tiptap-markdown": "^0.8.2", "uuid": "^9.0.0", "vite-plugin-svgr": "^3.2.0", - "zod": "^3.23.8", - "hono": "^4.0.0", - "@hono/node-server": "^1.8.0" + "zod": "^3.23.8" }, "devDependencies": { "@databases/pg-migrations": "^5.0.3", @@ -90,6 +90,7 @@ "eslint-plugin-react-refresh": "^0.4.3", "fs-extra": "^10.0.0", "postcss": "^8.4.39", + "supabase": "^1.226.3", "tailwindcss": "^3.4.4", "tsx": "^4.19.1", "typescript": "^5.5.3", diff --git a/demos/linearlite/src/sync.ts b/demos/linearlite/src/sync.ts index 33f10968..27dbe753 100644 --- a/demos/linearlite/src/sync.ts +++ b/demos/linearlite/src/sync.ts @@ -7,6 +7,8 @@ import { useEffect, useState } from 'react' const WRITE_SERVER_URL = import.meta.env.VITE_WRITE_SERVER_URL const ELECTRIC_URL = import.meta.env.VITE_ELECTRIC_URL +const ELECTRIC_DATABASE_ID = import.meta.env.VITE_ELECTRIC_DATABASE_ID +const ELECTRIC_TOKEN = import.meta.env.VITE_ELECTRIC_TOKEN const APPLY_CHANGES_URL = `${WRITE_SERVER_URL}/apply-changes` type SyncStatus = 'initial-sync' | 'done' @@ -50,11 +52,17 @@ async function startSyncToDatabase(pg: PGliteWithExtensions) { } } + const issueUrl = new URL(`${ELECTRIC_URL}/v1/shape`) + if (ELECTRIC_TOKEN) { + issueUrl.searchParams.set('token', ELECTRIC_TOKEN) + } + // Issues Sync const issuesSync = await pg.sync.syncShapeToTable({ shape: { - url: `${ELECTRIC_URL}/v1/shape`, + url: issueUrl.toString(), table: 'issue', + databaseId: ELECTRIC_DATABASE_ID, }, table: 'issue', primaryKey: ['id'], @@ -78,11 +86,17 @@ async function startSyncToDatabase(pg: PGliteWithExtensions) { } ) + const commentUrl = new URL(`${ELECTRIC_URL}/v1/shape`) + if (ELECTRIC_TOKEN) { + commentUrl.searchParams.set('token', ELECTRIC_TOKEN) + } + // Comments Sync const commentsSync = await pg.sync.syncShapeToTable({ shape: { - url: `${ELECTRIC_URL}/v1/shape`, + url: commentUrl.toString(), table: 'comment', + databaseId: ELECTRIC_DATABASE_ID, }, table: 'comment', primaryKey: ['id'], diff --git a/demos/linearlite/supabase/.gitignore b/demos/linearlite/supabase/.gitignore new file mode 100644 index 00000000..a3ad8805 --- /dev/null +++ b/demos/linearlite/supabase/.gitignore @@ -0,0 +1,4 @@ +# Supabase +.branches +.temp +.env diff --git a/demos/linearlite/supabase/config.toml b/demos/linearlite/supabase/config.toml new file mode 100644 index 00000000..63fcd1ab --- /dev/null +++ b/demos/linearlite/supabase/config.toml @@ -0,0 +1,275 @@ +# For detailed configuration reference documentation, visit: +# https://supabase.com/docs/guides/local-development/cli/config +# A string used to distinguish different Supabase projects on the same host. Defaults to the +# working directory name when running `supabase init`. +project_id = "linearlite" + +[api] +enabled = true +# Port to use for the API URL. +port = 54321 +# Schemas to expose in your API. Tables, views and stored procedures in this schema will get API +# endpoints. `public` is always included. +schemas = ["public", "graphql_public"] +# Extra schemas to add to the search_path of every request. `public` is always included. +extra_search_path = ["public", "extensions"] +# The maximum number of rows returns from a view, table, or stored procedure. Limits payload size +# for accidental or malicious requests. +max_rows = 1000 + +[api.tls] +enabled = false + +[db] +# Port to use for the local database URL. +port = 54322 +# Port used by db diff command to initialize the shadow database. +shadow_port = 54320 +# The database major version to use. This has to be the same as your remote database's. Run `SHOW +# server_version;` on the remote database to check. +major_version = 15 + +[db.pooler] +enabled = false +# Port to use for the local connection pooler. +port = 54329 +# Specifies when a server connection can be reused by other clients. +# Configure one of the supported pooler modes: `transaction`, `session`. +pool_mode = "transaction" +# How many server connections to allow per user/database pair. +default_pool_size = 20 +# Maximum number of client connections allowed. +max_client_conn = 100 + +[db.seed] +# If enabled, seeds the database after migrations during a db reset. +enabled = true +# Specifies an ordered list of seed files to load during db reset. +# Supports glob patterns relative to supabase directory. For example: +# sql_paths = ['./seeds/*.sql', '../project-src/seeds/*-load-testing.sql'] +sql_paths = ['./seed.sql'] + +[realtime] +enabled = true +# Bind realtime via either IPv4 or IPv6. (default: IPv4) +# ip_version = "IPv6" +# The maximum length in bytes of HTTP request headers. (default: 4096) +# max_header_length = 4096 + +[studio] +enabled = true +# Port to use for Supabase Studio. +port = 54323 +# External URL of the API server that frontend connects to. +api_url = "http://127.0.0.1" +# OpenAI API Key to use for Supabase AI in the Supabase Studio. +openai_api_key = "env(OPENAI_API_KEY)" + +# Email testing server. Emails sent with the local dev setup are not actually sent - rather, they +# are monitored, and you can view the emails that would have been sent from the web interface. +[inbucket] +enabled = true +# Port to use for the email testing server web interface. +port = 54324 +# Uncomment to expose additional ports for testing user applications that send emails. +# smtp_port = 54325 +# pop3_port = 54326 +# admin_email = "admin@email.com" +# sender_name = "Admin" + +[storage] +enabled = true +# The maximum file size allowed (e.g. "5MB", "500KB"). +file_size_limit = "50MiB" + +[storage.image_transformation] +enabled = true + +# Uncomment to configure local storage buckets +# [storage.buckets.images] +# public = false +# file_size_limit = "50MiB" +# allowed_mime_types = ["image/png", "image/jpeg"] +# objects_path = "./images" + +[auth] +enabled = true +# The base URL of your website. Used as an allow-list for redirects and for constructing URLs used +# in emails. +site_url = "http://127.0.0.1:3000" +# A list of *exact* URLs that auth providers are permitted to redirect to post authentication. +additional_redirect_urls = ["https://127.0.0.1:3000"] +# How long tokens are valid for, in seconds. Defaults to 3600 (1 hour), maximum 604,800 (1 week). +jwt_expiry = 3600 +# If disabled, the refresh token will never expire. +enable_refresh_token_rotation = true +# Allows refresh tokens to be reused after expiry, up to the specified interval in seconds. +# Requires enable_refresh_token_rotation = true. +refresh_token_reuse_interval = 10 +# Allow/disallow new user signups to your project. +enable_signup = true +# Allow/disallow anonymous sign-ins to your project. +enable_anonymous_sign_ins = false +# Allow/disallow testing manual linking of accounts +enable_manual_linking = false +# Passwords shorter than this value will be rejected as weak. Minimum 6, recommended 8 or more. +minimum_password_length = 6 +# Passwords that do not meet the following requirements will be rejected as weak. Supported values +# are: `letters_digits`, `lower_upper_letters_digits`, `lower_upper_letters_digits_symbols` +password_requirements = "" + +[auth.email] +# Allow/disallow new user signups via email to your project. +enable_signup = true +# If enabled, a user will be required to confirm any email change on both the old, and new email +# addresses. If disabled, only the new email is required to confirm. +double_confirm_changes = true +# If enabled, users need to confirm their email address before signing in. +enable_confirmations = false +# If enabled, users will need to reauthenticate or have logged in recently to change their password. +secure_password_change = false +# Controls the minimum amount of time that must pass before sending another signup confirmation or password reset email. +max_frequency = "1s" +# Number of characters used in the email OTP. +otp_length = 6 +# Number of seconds before the email OTP expires (defaults to 1 hour). +otp_expiry = 3600 + +# Use a production-ready SMTP server +# [auth.email.smtp] +# host = "smtp.sendgrid.net" +# port = 587 +# user = "apikey" +# pass = "env(SENDGRID_API_KEY)" +# admin_email = "admin@email.com" +# sender_name = "Admin" + +# Uncomment to customize email template +# [auth.email.template.invite] +# subject = "You have been invited" +# content_path = "./supabase/templates/invite.html" + +[auth.sms] +# Allow/disallow new user signups via SMS to your project. +enable_signup = false +# If enabled, users need to confirm their phone number before signing in. +enable_confirmations = false +# Template for sending OTP to users +template = "Your code is {{ .Code }}" +# Controls the minimum amount of time that must pass before sending another sms otp. +max_frequency = "5s" + +# Use pre-defined map of phone number to OTP for testing. +# [auth.sms.test_otp] +# 4152127777 = "123456" + +# Configure logged in session timeouts. +# [auth.sessions] +# Force log out after the specified duration. +# timebox = "24h" +# Force log out if the user has been inactive longer than the specified duration. +# inactivity_timeout = "8h" + +# This hook runs before a token is issued and allows you to add additional claims based on the authentication method used. +# [auth.hook.custom_access_token] +# enabled = true +# uri = "pg-functions:////" + +# Configure one of the supported SMS providers: `twilio`, `twilio_verify`, `messagebird`, `textlocal`, `vonage`. +[auth.sms.twilio] +enabled = false +account_sid = "" +message_service_sid = "" +# DO NOT commit your Twilio auth token to git. Use environment variable substitution instead: +auth_token = "env(SUPABASE_AUTH_SMS_TWILIO_AUTH_TOKEN)" + +[auth.mfa] +# Control how many MFA factors can be enrolled at once per user. +max_enrolled_factors = 10 + +# Control use of MFA via App Authenticator (TOTP) +[auth.mfa.totp] +enroll_enabled = true +verify_enabled = true + +# Configure Multi-factor-authentication via Phone Messaging +[auth.mfa.phone] +enroll_enabled = false +verify_enabled = false +otp_length = 6 +template = "Your code is {{ .Code }}" +max_frequency = "5s" + +# Configure Multi-factor-authentication via WebAuthn +# [auth.mfa.web_authn] +# enroll_enabled = true +# verify_enabled = true + +# Use an external OAuth provider. The full list of providers are: `apple`, `azure`, `bitbucket`, +# `discord`, `facebook`, `github`, `gitlab`, `google`, `keycloak`, `linkedin_oidc`, `notion`, `twitch`, +# `twitter`, `slack`, `spotify`, `workos`, `zoom`. +[auth.external.apple] +enabled = false +client_id = "" +# DO NOT commit your OAuth provider secret to git. Use environment variable substitution instead: +secret = "env(SUPABASE_AUTH_EXTERNAL_APPLE_SECRET)" +# Overrides the default auth redirectUrl. +redirect_uri = "" +# Overrides the default auth provider URL. Used to support self-hosted gitlab, single-tenant Azure, +# or any other third-party OIDC providers. +url = "" +# If enabled, the nonce check will be skipped. Required for local sign in with Google auth. +skip_nonce_check = false + +# Use Firebase Auth as a third-party provider alongside Supabase Auth. +[auth.third_party.firebase] +enabled = false +# project_id = "my-firebase-project" + +# Use Auth0 as a third-party provider alongside Supabase Auth. +[auth.third_party.auth0] +enabled = false +# tenant = "my-auth0-tenant" +# tenant_region = "us" + +# Use AWS Cognito (Amplify) as a third-party provider alongside Supabase Auth. +[auth.third_party.aws_cognito] +enabled = false +# user_pool_id = "my-user-pool-id" +# user_pool_region = "us-east-1" + +[edge_runtime] +enabled = true +# Configure one of the supported request policies: `oneshot`, `per_worker`. +# Use `oneshot` for hot reload, or `per_worker` for load testing. +policy = "oneshot" +# Port to attach the Chrome inspector for debugging edge functions. +inspector_port = 8083 + +# Use these configurations to customize your Edge Function. +# [functions.MY_FUNCTION_NAME] +# enabled = true +# verify_jwt = true +# import_map = "./functions/MY_FUNCTION_NAME/deno.json" +# Uncomment to specify a custom file path to the entrypoint. +# Supported file extensions are: .ts, .js, .mjs, .jsx, .tsx +# entrypoint = "./functions/MY_FUNCTION_NAME/index.ts" + +[analytics] +enabled = true +port = 54327 +# Configure one of the supported backends: `postgres`, `bigquery`. +backend = "postgres" + +# Experimental features may be deprecated any time +[experimental] +# Configures Postgres storage engine to use OrioleDB (S3) +orioledb_version = "" +# Configures S3 bucket URL, eg. .s3-.amazonaws.com +s3_host = "env(S3_HOST)" +# Configures S3 bucket region, eg. us-east-1 +s3_region = "env(S3_REGION)" +# Configures AWS_ACCESS_KEY_ID for S3 bucket +s3_access_key = "env(S3_ACCESS_KEY)" +# Configures AWS_SECRET_ACCESS_KEY for S3 bucket +s3_secret_key = "env(S3_SECRET_KEY)" diff --git a/demos/linearlite/supabase/functions/write-server/index.ts b/demos/linearlite/supabase/functions/write-server/index.ts new file mode 100644 index 00000000..6668fca9 --- /dev/null +++ b/demos/linearlite/supabase/functions/write-server/index.ts @@ -0,0 +1,133 @@ +// Follow this setup guide to integrate the Deno language server with your editor: +// https://deno.land/manual/getting_started/setup_your_environment +// This enables autocomplete, go to definition, etc. + +// Setup type definitions for built-in Supabase Runtime APIs +import 'jsr:@supabase/functions-js/edge-runtime.d.ts' +import { Hono } from 'jsr:@hono/hono' +import { cors } from 'jsr:@hono/hono/cors' +import postgres from 'https://deno.land/x/postgresjs/mod.js' +import { z } from "https://deno.land/x/zod/mod.ts"; + +const issueChangeSchema = z.object({ + id: z.string(), + title: z.string().nullable().optional(), + description: z.string().nullable().optional(), + priority: z.string().nullable().optional(), + status: z.string().nullable().optional(), + modified: z.string().nullable().optional(), + created: z.string().nullable().optional(), + kanbanorder: z.string().nullable().optional(), + username: z.string().nullable().optional(), + modified_columns: z.array(z.string()).nullable().optional(), + deleted: z.boolean().nullable().optional(), + new: z.boolean().nullable().optional(), +}) + +type IssueChange = z.infer + +const commentChangeSchema = z.object({ + id: z.string(), + body: z.string().nullable().optional(), + username: z.string().nullable().optional(), + issue_id: z.string().nullable().optional(), + modified: z.string().nullable().optional(), + created: z.string().nullable().optional(), + modified_columns: z.array(z.string()).nullable().optional(), + deleted: z.boolean().nullable().optional(), + new: z.boolean().nullable().optional(), +}) + +type CommentChange = z.infer + +const changeSetSchema = z.object({ + issues: z.array(issueChangeSchema), + comments: z.array(commentChangeSchema), +}) + +type ChangeSet = z.infer + +const DATABASE_URL = Deno.env.get('SUPABASE_DB_URL')! + +// Create postgres connection +const sql = postgres(DATABASE_URL) + +const app = new Hono() + +// Middleware +app.use('/write-server/*', cors()) + +// Routes +app.get('/write-server/', async (c) => { + const result = await sql` + SELECT 'ok' as status, version() as postgres_version, now() as server_time + ` + return c.json(result[0]) +}) + +app.post('/write-server/apply-changes', async (c) => { + const content = await c.req.json() + let parsedChanges: ChangeSet + try { + parsedChanges = changeSetSchema.parse(content) + // Any additional validation of the changes can be done here! + } catch (error) { + console.error(error) + return c.json({ error: 'Invalid changes' }, 400) + } + const changeResponse = await applyChanges(parsedChanges) + return c.json(changeResponse) +}) + +async function applyChanges(changes: ChangeSet): Promise<{ success: boolean }> { + const { issues, comments } = changes + + try { + await sql.begin(async (sql) => { + for (const issue of issues) { + await applyTableChange('issue', issue, sql) + } + for (const comment of comments) { + await applyTableChange('comment', comment, sql) + } + }) + return { success: true } + } catch (error) { + throw error + } +} + +async function applyTableChange( + tableName: 'issue' | 'comment', + change: IssueChange | CommentChange, + sql: postgres.TransactionSql +): Promise { + const { id, modified_columns, new: isNew, deleted } = change + + if (deleted) { + await sql` + DELETE FROM ${sql(tableName)} WHERE id = ${id} + ` + } else if (isNew) { + const columns = modified_columns || [] + const values = columns.map((col) => change[col]) + + await sql` + INSERT INTO ${sql(tableName)} (id, ${sql(columns)}) + VALUES (${id}, ${sql(values)}) + ` + } else { + const columns = modified_columns || [] + const updates = columns + .map((col) => ({ [col]: change[col] })) + .reduce((acc, curr) => ({ ...acc, ...curr }), {}) + + await sql` + UPDATE ${sql(tableName)} + SET ${sql(updates)} + WHERE id = ${id} + ` + } +} + +Deno.serve(app.fetch) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9d230096..4ec647e8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -243,6 +243,9 @@ importers: postcss: specifier: ^8.4.39 version: 8.4.47 + supabase: + specifier: ^1.226.3 + version: 1.226.3 tailwindcss: specifier: ^3.4.4 version: 3.4.13 @@ -1345,6 +1348,10 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + '@isaacs/fs-minipass@4.0.1': + resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} + engines: {node: '>=18.0.0'} + '@jest/expect-utils@29.7.0': resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2544,6 +2551,10 @@ packages: better-sqlite3@11.3.0: resolution: {integrity: sha512-iHt9j8NPYF3oKCNOO5ZI4JwThjt3Z6J6XrcwG85VNMVzv1ByqrHWv5VILEbCMFWDsoHhXvQ7oC8vgRXFAKgl9w==} + bin-links@5.0.0: + resolution: {integrity: sha512-sdleLVfCjBtgO5cNjA2HVRvWBJAHs4zwenaCPMNJAJU0yNxpzj80IpjOIimkpkr+mhlA+how5poQtt53PygbHA==} + engines: {node: ^18.17.0 || >=20.5.0} + binary-extensions@2.3.0: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} @@ -2596,6 +2607,7 @@ packages: bun@1.1.30: resolution: {integrity: sha512-ysRL1pq10Xba0jqVLPrKU3YIv0ohfp3cTajCPtpjCyppbn3lfiAVNpGoHfyaxS17OlPmWmR67UZRPw/EueQuug==} + cpu: [arm64, x64] os: [darwin, linux, win32] hasBin: true @@ -2677,6 +2689,10 @@ packages: chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} + chownr@3.0.0: + resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} + engines: {node: '>=18'} + ci-info@3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} @@ -2711,6 +2727,10 @@ packages: resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} engines: {node: '>=6'} + cmd-shim@7.0.0: + resolution: {integrity: sha512-rtpaCbr164TPPh+zFdkWpCyZuKkjpAzODfaZCf/SVJZzJN+4bHQb/LP3Jzq5/+84um3XXY8r548XiWKSborwVw==} + engines: {node: ^18.17.0 || >=20.5.0} + codemirror@6.0.1: resolution: {integrity: sha512-J8j+nZ+CdWmIeFIGXEFbFPtpiYacFMDR8GlHK3IyHQJMCaVRfGx9NT+Hxivv1ckLWPvNdZqndbr/7lVhrf/Svg==} @@ -2845,6 +2865,10 @@ packages: csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + data-uri-to-buffer@4.0.1: + resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} + engines: {node: '>= 12'} + data-urls@5.0.0: resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} engines: {node: '>=18'} @@ -3430,6 +3454,10 @@ packages: picomatch: optional: true + fetch-blob@3.2.0: + resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} + engines: {node: ^12.20 || >= 14.13} + file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -3479,6 +3507,10 @@ packages: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} + formdata-polyfill@4.0.10: + resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} + engines: {node: '>=12.20.0'} + fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -4308,6 +4340,10 @@ packages: minisearch@7.1.0: resolution: {integrity: sha512-tv7c/uefWdEhcu6hvrfTihflgeEi2tN6VV7HJnCjK6VxM75QQJh4t9FwJCsA2EsRS8LCnu3W87CuGPWMocOLCA==} + minizlib@3.0.1: + resolution: {integrity: sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==} + engines: {node: '>= 18'} + mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} @@ -4318,6 +4354,11 @@ packages: resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} hasBin: true + mkdirp@3.0.1: + resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} + engines: {node: '>=10'} + hasBin: true + mlly@1.7.2: resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==} @@ -4359,6 +4400,14 @@ packages: resolution: {integrity: sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==} engines: {node: '>=10'} + node-domexception@1.0.0: + resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} + engines: {node: '>=10.5.0'} + + node-fetch@3.3.2: + resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + node-releases@2.0.18: resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} @@ -4375,6 +4424,10 @@ packages: resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} engines: {node: '>=0.10.0'} + npm-normalize-package-bin@4.0.0: + resolution: {integrity: sha512-TZKxPvItzai9kN9H/TkmCtx/ZN/hvr3vUycjlfmH0ootY9yFBzNOpiXAdIn1Iteqsvk4lQn6B5PTrt+n6h8k/w==} + engines: {node: ^18.17.0 || >=20.5.0} + npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -4781,6 +4834,10 @@ packages: printable-characters@1.0.42: resolution: {integrity: sha512-dKp+C4iXWK4vVYZmYSd0KBH5F/h1HoZRsbJ82AVKRO3PEo8L4lBS/vLwhVtpwwuYcoIsVY+1JYKR268yn480uQ==} + proc-log@5.0.0: + resolution: {integrity: sha512-Azwzvl90HaF0aCz1JrDdXQykFakSSNPaPoiZ9fm5qJIMHioDZEi7OAdRwSm6rSoPtY3Qutnm3L7ogmg3dc+wbQ==} + engines: {node: ^18.17.0 || >=20.5.0} + prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} @@ -4976,6 +5033,10 @@ packages: read-cache@1.0.0: resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} + read-cmd-shim@5.0.0: + resolution: {integrity: sha512-SEbJV7tohp3DAAILbEMPXavBjAnMN0tVnh4+9G8ihV4Pq3HYF9h8QNez9zkJ1ILkv9G2BjdzwctznGZXgu/HGw==} + engines: {node: ^18.17.0 || >=20.5.0} + read-yaml-file@1.1.0: resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} engines: {node: '>=6'} @@ -5049,6 +5110,10 @@ packages: deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true + rimraf@5.0.10: + resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==} + hasBin: true + rollup@2.77.3: resolution: {integrity: sha512-/qxNTG7FbmefJWoeeYJFbHehJ2HNWnjkAFRKzWN/45eNBBF/r8lo992CwcJXEzyVxs5FmfId+vTSTQDb+bxA+g==} engines: {node: '>=10.0.0'} @@ -5295,6 +5360,11 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true + supabase@1.226.3: + resolution: {integrity: sha512-+KytrqHMQTg1J71E26Og1lMOsUG7MW+Fvcdlu9ZpUCz2dQG96gm0HEjUlL9/PV01DmhNIUZ1+EUaf8QMco4BLg==} + engines: {npm: '>=8'} + hasBin: true + superjson@2.2.1: resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} engines: {node: '>=16'} @@ -5345,6 +5415,10 @@ packages: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} engines: {node: '>=6'} + tar@7.4.3: + resolution: {integrity: sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==} + engines: {node: '>=18'} + term-size@2.2.1: resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} engines: {node: '>=8'} @@ -5838,6 +5912,10 @@ packages: wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + web-streams-polyfill@3.3.3: + resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} + engines: {node: '>= 8'} + webidl-conversions@4.0.2: resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} @@ -5908,6 +5986,10 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + write-file-atomic@6.0.0: + resolution: {integrity: sha512-GmqrO8WJ1NuzJ2DrziEI2o57jKAVIQNf8a18W3nCYU3H7PNWqCCVTeH6/NQE93CIllIgQS98rrmVkYgTX9fFJQ==} + engines: {node: ^18.17.0 || >=20.5.0} + ws@8.18.0: resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} @@ -5948,6 +6030,10 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + yallist@5.0.0: + resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} + engines: {node: '>=18'} + yaml@2.6.0: resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} engines: {node: '>= 14'} @@ -6961,6 +7047,10 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@isaacs/fs-minipass@4.0.1': + dependencies: + minipass: 7.1.2 + '@jest/expect-utils@29.7.0': dependencies: jest-get-type: 29.6.3 @@ -8344,6 +8434,14 @@ snapshots: bindings: 1.5.0 prebuild-install: 7.1.2 + bin-links@5.0.0: + dependencies: + cmd-shim: 7.0.0 + npm-normalize-package-bin: 4.0.0 + proc-log: 5.0.0 + read-cmd-shim: 5.0.0 + write-file-atomic: 6.0.0 + binary-extensions@2.3.0: {} bindings@1.5.0: @@ -8508,6 +8606,8 @@ snapshots: chownr@1.1.4: {} + chownr@3.0.0: {} + ci-info@3.9.0: {} classnames@2.5.1: {} @@ -8532,6 +8632,8 @@ snapshots: clsx@1.2.1: {} + cmd-shim@7.0.0: {} + codemirror@6.0.1(@lezer/common@1.2.2): dependencies: '@codemirror/autocomplete': 6.18.1(@codemirror/language@6.10.3)(@codemirror/state@6.4.1)(@codemirror/view@6.34.1)(@lezer/common@1.2.2) @@ -8671,6 +8773,8 @@ snapshots: csstype@3.1.3: {} + data-uri-to-buffer@4.0.1: {} + data-urls@5.0.0: dependencies: whatwg-mimetype: 4.0.0 @@ -9361,6 +9465,11 @@ snapshots: optionalDependencies: picomatch: 4.0.2 + fetch-blob@3.2.0: + dependencies: + node-domexception: 1.0.0 + web-streams-polyfill: 3.3.3 + file-entry-cache@6.0.1: dependencies: flat-cache: 3.2.0 @@ -9410,6 +9519,10 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 + formdata-polyfill@4.0.10: + dependencies: + fetch-blob: 3.2.0 + fraction.js@4.3.7: {} fractional-indexing@3.2.0: {} @@ -10348,6 +10461,11 @@ snapshots: minisearch@7.1.0: {} + minizlib@3.0.1: + dependencies: + minipass: 7.1.2 + rimraf: 5.0.10 + mitt@3.0.1: {} mkdirp-classic@0.5.3: {} @@ -10356,6 +10474,8 @@ snapshots: dependencies: minimist: 1.2.8 + mkdirp@3.0.1: {} + mlly@1.7.2: dependencies: acorn: 8.12.1 @@ -10394,6 +10514,14 @@ snapshots: dependencies: semver: 7.6.3 + node-domexception@1.0.0: {} + + node-fetch@3.3.2: + dependencies: + data-uri-to-buffer: 4.0.1 + fetch-blob: 3.2.0 + formdata-polyfill: 4.0.10 + node-releases@2.0.18: {} nopt@7.2.1: @@ -10404,6 +10532,8 @@ snapshots: normalize-range@0.1.2: {} + npm-normalize-package-bin@4.0.0: {} + npm-run-path@4.0.1: dependencies: path-key: 3.1.1 @@ -10768,6 +10898,8 @@ snapshots: printable-characters@1.0.42: {} + proc-log@5.0.0: {} + prop-types@15.8.1: dependencies: loose-envify: 1.4.0 @@ -11024,6 +11156,8 @@ snapshots: dependencies: pify: 2.3.0 + read-cmd-shim@5.0.0: {} + read-yaml-file@1.1.0: dependencies: graceful-fs: 4.2.11 @@ -11102,6 +11236,10 @@ snapshots: dependencies: glob: 7.2.3 + rimraf@5.0.10: + dependencies: + glob: 10.4.5 + rollup@2.77.3: optionalDependencies: fsevents: 2.3.3 @@ -11348,6 +11486,15 @@ snapshots: pirates: 4.0.6 ts-interface-checker: 0.1.13 + supabase@1.226.3: + dependencies: + bin-links: 5.0.0 + https-proxy-agent: 7.0.5 + node-fetch: 3.3.2 + tar: 7.4.3 + transitivePeerDependencies: + - supports-color + superjson@2.2.1: dependencies: copy-anything: 3.0.5 @@ -11429,6 +11576,15 @@ snapshots: inherits: 2.0.4 readable-stream: 3.6.2 + tar@7.4.3: + dependencies: + '@isaacs/fs-minipass': 4.0.1 + chownr: 3.0.0 + minipass: 7.1.2 + minizlib: 3.0.1 + mkdirp: 3.0.1 + yallist: 5.0.0 + term-size@2.2.1: {} terser@5.34.1: @@ -11992,6 +12148,8 @@ snapshots: dependencies: defaults: 1.0.4 + web-streams-polyfill@3.3.3: {} + webidl-conversions@4.0.2: {} webidl-conversions@7.0.0: {} @@ -12075,6 +12233,11 @@ snapshots: wrappy@1.0.2: {} + write-file-atomic@6.0.0: + dependencies: + imurmurhash: 0.1.4 + signal-exit: 4.1.0 + ws@8.18.0: {} xml-name-validator@4.0.0: {} @@ -12093,6 +12256,8 @@ snapshots: yallist@4.0.0: {} + yallist@5.0.0: {} + yaml@2.6.0: {} yargs-parser@21.1.1: {} From 64d7ea05854faa9c219a8d0d59b263709bb81e9f Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Thu, 5 Dec 2024 11:08:58 +0000 Subject: [PATCH 32/34] Fix write server --- demos/linearlite/server.ts | 21 ++++++++--------- .../supabase/functions/write-server/index.ts | 23 ++++++++----------- 2 files changed, 19 insertions(+), 25 deletions(-) diff --git a/demos/linearlite/server.ts b/demos/linearlite/server.ts index 4cd2fc58..5fee4e2c 100644 --- a/demos/linearlite/server.ts +++ b/demos/linearlite/server.ts @@ -75,29 +75,26 @@ async function applyTableChange( change: IssueChange | CommentChange, sql: postgres.TransactionSql ): Promise { - const { id, modified_columns, new: isNew, deleted } = change + const { + id, + modified_columns: modified_columns_raw, + new: isNew, + deleted, + } = change + const modified_columns = modified_columns_raw as (keyof typeof change)[] if (deleted) { await sql` DELETE FROM ${sql(tableName)} WHERE id = ${id} ` } else if (isNew) { - const columns = modified_columns || [] - const values = columns.map((col) => change[col]) - await sql` - INSERT INTO ${sql(tableName)} (id, ${sql(columns)}) - VALUES (${id}, ${sql(values)}) + INSERT INTO ${sql(tableName)} ${sql(change, 'id', ...modified_columns)} ` } else { - const columns = modified_columns || [] - const updates = columns - .map((col) => ({ [col]: change[col] })) - .reduce((acc, curr) => ({ ...acc, ...curr }), {}) - await sql` UPDATE ${sql(tableName)} - SET ${sql(updates)} + SET ${sql(change, ...modified_columns)} WHERE id = ${id} ` } diff --git a/demos/linearlite/supabase/functions/write-server/index.ts b/demos/linearlite/supabase/functions/write-server/index.ts index 6668fca9..6554c873 100644 --- a/demos/linearlite/supabase/functions/write-server/index.ts +++ b/demos/linearlite/supabase/functions/write-server/index.ts @@ -7,7 +7,7 @@ import 'jsr:@supabase/functions-js/edge-runtime.d.ts' import { Hono } from 'jsr:@hono/hono' import { cors } from 'jsr:@hono/hono/cors' import postgres from 'https://deno.land/x/postgresjs/mod.js' -import { z } from "https://deno.land/x/zod/mod.ts"; +import { z } from 'https://deno.land/x/zod/mod.ts' const issueChangeSchema = z.object({ id: z.string(), @@ -102,29 +102,26 @@ async function applyTableChange( change: IssueChange | CommentChange, sql: postgres.TransactionSql ): Promise { - const { id, modified_columns, new: isNew, deleted } = change + const { + id, + modified_columns: modified_columns_raw, + new: isNew, + deleted, + } = change + const modified_columns = modified_columns_raw as (keyof typeof change)[] if (deleted) { await sql` DELETE FROM ${sql(tableName)} WHERE id = ${id} ` } else if (isNew) { - const columns = modified_columns || [] - const values = columns.map((col) => change[col]) - await sql` - INSERT INTO ${sql(tableName)} (id, ${sql(columns)}) - VALUES (${id}, ${sql(values)}) + INSERT INTO ${sql(tableName)} ${sql(change, 'id', ...modified_columns)} ` } else { - const columns = modified_columns || [] - const updates = columns - .map((col) => ({ [col]: change[col] })) - .reduce((acc, curr) => ({ ...acc, ...curr }), {}) - await sql` UPDATE ${sql(tableName)} - SET ${sql(updates)} + SET ${sql(change, ...modified_columns)} WHERE id = ${id} ` } From 32d9e71482c42e2dd5e6aaaa194daeaaaa91da0e Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Sun, 8 Dec 2024 14:24:11 +0000 Subject: [PATCH 33/34] pglite-live: remove console.log --- packages/pglite/src/live/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/pglite/src/live/index.ts b/packages/pglite/src/live/index.ts index eebe07b2..73d133ca 100644 --- a/packages/pglite/src/live/index.ts +++ b/packages/pglite/src/live/index.ts @@ -203,7 +203,6 @@ const setup = async (pg: PGliteInterface, _emscriptenOpts: any) => { ) ).rows[0].count if (newTotalCount !== totalCount) { - console.log('newTotalCount', newTotalCount) // The total count has changed, refresh the query totalCount = newTotalCount refresh() From c62c3d4d55a10f059470c12be6caf9fcf85f44b6 Mon Sep 17 00:00:00 2001 From: Sam Willis Date: Sun, 8 Dec 2024 19:21:45 +0000 Subject: [PATCH 34/34] WIP Readme --- demos/linearlite/README.md | 38 ++++++++++++++++++++++++++++++++------ 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/demos/linearlite/README.md b/demos/linearlite/README.md index aec58235..b2a33620 100644 --- a/demos/linearlite/README.md +++ b/demos/linearlite/README.md @@ -1,15 +1,21 @@ # Linearlite + PGlite + ElectricSQL +This is a demo app that shows how to build a local-first app using PGlite and the ElectricSQL sync engine. + +It's an example of a team collaboration app such as Linear built using ElectricSQL - a sync engine that synchronises little subsets of your Postgres data into local apps and services. So you can have the data you need, in-sync, wherever you need it. + +It's built on top of the excellent clone of the Linear UI built by [Tuan Nguyen](https://github.com/tuan3w). + ## Setup -1. Make sure you've installed all dependencies for the monorepo and built packages +1. Make sure you've installed all dependencies for the monorepo and built all packages. From the root directory: - `pnpm i` - `pnpm run -r build` -2. Add a `.env` file with the following (or similar): +2. Add a `.env` file with the following (or similar), in this directory: ``` DATABASE_URL=postgresql://postgres:password@localhost:54321/linearlite @@ -17,18 +23,38 @@ VITE_ELECTRIC_URL=http://localhost:3000 VITE_WRITE_SERVER_URL=http://localhost:3001 ``` -3. Start the docker containers +3. Start the docker containers: `pnpm run backend:up` -4. Start the write path server +4. Start the write path server: `pnpm run write-server` -5. Start the dev server +5. Start the dev server: `pnpm run dev` -5. When done, tear down the backend containers +5. When done, tear down the backend containers: `pnpm run backend:down` + +## How it works + +LinearLite demonstrates a local-first architecture using ElectricSQL and PGlite. Here's how the different pieces fit together: + +### Backend Components + +1. **Postgres Database**: The source of truth, containing the complete dataset. + +2. **Electric Sync Service**: Runs in front of Postgres, managing data synchronization from it to the clients. Preduces replication streams for a subset of the database called "shapes". + +3. **Write Server**: A simple HTTP server that handles write operations, applying them to the Postgres database. + +### Frontend Components + +1. **PGlite**: An in-browser database that stores a local copy of the data, enabling offline functionality and fast queries. + +2. **PGlite + Electric Sync Plugin**: Connects PGlite to the Electric sync service and loads the data into the local database. + +3. **React Frontend**: A Linear-inspired UI that interacts directly with the local database.

w!gH8h|AuVQQ%dT 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�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 z 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%0D7}A(?uyB7Um4v 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�X7r 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%0AoXG?> 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%0DO1Q*fIjOO|#qG zkN@k%7t~nIP-W%YFCzwIx7TsYHt8Pw%gXI-2E|+^$xi#8FGST2()B8ZTSJr|BH75z znT$I|i-xBB=fTN2makE-t|9V23Q9DQ6%|K#{%uNS1dC{1=-`?<=2iv zZ8toSy45KlRPim$)bYl$?Xmjowv4~fWCP1 zO8?d}e}`Q>d70r0*r^(+l`m{KV-!vpt6?Qv6q({&Dd?*#5wIviI0q`lOx6bE#!Iy2 zJTWzN+w>?=RGDMcnuO6n^$!MYaVx@pEQ@N$7!;p|c()wD4NuoF1hN$dj7OP$!L|~Y zUJrl5iD6;SC#r~#TrFsD7vG+VZTy_Y$kZ$?>^Kp4n0w~RvTnTRYQ=YFAJpR17`H~a zsEGIx(wCof1CAFBPJG^Fe;V~3xpj^r#sW2!5rA37L8IqX;%>nt^B2q2_DW;ML!~;E zA>1HGH~Z|a{a;8@`*x(*-RJIbQ(qN+cQz0nvU(p?$G5 z1RWSOX$%`M@_nz~Y1GlI%L9o}(j)CFP$J?V<>i^mY|e4HKK#c6aVk@Vq)!ed6TEr^ zLhxe7CfZ68NL}+9g?e*`<0$%3hAb1Y22=k*l{7>a`c!nSTw0~e_Dcoq=xjl;rqk2@0&INN4u^5-PNPeD zgcb&1e9Vs15#Xkuz;gnt3z5wFwCWDo!sk42nl^G%4#6J$=lbrgq_~X)90X*qt@Bzj zLUc5++zS7xvv}Jaqs_lYg6OmPwOgcs$-6(R~9WaeJ3O4DRBI~Tt zxf{*)M65)C+~mM-Vnhzlaew5dWCp}DI1|K^UN+(5^w||}nmIUL5tN1MV&U%Fxc=#F~6g)QT ze*g#-W3B>-5s41A2A%T!Bf&X3rZ8yhw~Y6gJQUf;ou&47fkTNIz=1)dwCz%-_e->V zydPmh-dh+3V7Zgn?Kzb8Y(krpJGojfDXb3{3QbcWk4dvLRNiLe4F`z}bh&OHgP}x4 z4hoE)&%G~PERqQ*+}BsJfOx>$I3WDZB{fbPZOWu-Ahd-J0!OKsszlVlUV$>iuj1@? zNV+EC$$J0e^eN;NpJ0mimH+@Ux~^QHrCfa@b5<@cXV3+pacKGku@?^U5YkZjVi^OYcUhmkiodB=eY!4u}72L$9Gftu&cA@ZCkAnTZuj zV2gsDqp!IMYG6k1w-Qf~fYH_UE0VxAa|0;{4KXbNZ(7N!AEH|<@_wDPA9i{6=0o{YHDZD`0GWg`?EpehmS)#U_U{hdN}j!`N^N}E`X)jNVy!C z^OUwqA%{&gMBFMtjsWz!p)&a;vbK@2xMCR#2 zdLYWuKa}kN000LDofa|Y);0hD70yANIdEDV)mm@J#Z1sQMjnReD}kk9GxbrB)Qw=S zV`}k<>jx-Qy{RxK&&>~zkzy>Bo&G-=Xj8u>92RX1tzF2mJVd9*X%3H!dt7{DP&XC@fQqXoN<`nsAJt_vVXg4Q5|4dOZFt4<6et*wb`=?$e0H450Sm8pq%T(MB@qWEp^*aQoTli) zA4Y1S;f_pF8)DKlEdE%RXsQoyv28!@OtXx0a7uLOQ*N(UTqMM~sr0?66K+Y3#)cb6L!oZW+hm$0ggEL_iyXOK4 zy3-fX$cF7~Q^lq3P=HbVcx_}+Uw6LO3yY)MeL*3G)o0kRLj8>}cuu~B3!Axf{^6tq z#FO=B4dA^U%1d$)Qz|zgiflT%paJJ^^lpBfcrk@r$sEf-DyGf)vPA>*tqC2~#|_hV zAWDfA1hfaNDgV`%rSvT?F{n2Fm~RYffDTW`P6O=r+c!}%#b9;|^Lo&Ehnj~?TT}4- z1+7;uSi6gE;ec3G!f?@NLlwopb32*hiQJ-xs50fKOoR>c-Fr=2Bg=3V+|ER)h;-%{ zs676l3`KQ;!;h=8Uf2g8Q|&sX8w_$yrS?nFfar@}Ip5TGX59}}tVeplP<;9ckW|T} z%K1aKK+PY&=*<3~;zhpn8zEuDw0qvB%h#xjP_j$Rrw;Zdb@5CbKKR|*HFvfQMEY59 zaYjP}%51<%<_t|VccfCoO_7rYrdp-y|7^F#iCktCAO##NrmoX^iwTsds0@iNX8Tld zGygJ!b`@BQt(@XW{i5E6`@;!z;!N@gatbSbu#x7yO(< z=j$5CF)lXJ+9;@y!5w*MgQUs)cRtNOt?rsJK2^-#>(MpVK`^FR`Dm*HCdOs8ow+bR z!lCP{D00jYGm?@zA7lO4(zbt37W#$K(hgTyAXDeO>1Yn$Oy@P{DBm+cesJn8uWB-Rv zc8QEn?JBZxF=)+&m3wL<&9YOLRmzHHM?nUN zH<=K#9$wQoy|Ex_M7tyE{nZCm3#D_9HeiK2d*LDaPlS7ur3Cvh-63SPsdFsH;kpuU zY7ar&C^rqT5;Cx}Uy6 zDKh~IGA@sdFSM(Qpvma!`IdF)M{sTkyPBA`Oo@&-fvNko>qe5Aca~1;5#I8yi%xrg z9UGoR7YX{XRz_s8Af>{}#-VyoZ|-pX+#!`$k>`ta5BXE>MhcFrs3_7tAV^k5X={-D zdQi%aU$+(nk%edbn(gby+)l!%{$QZqWA^AlpLtpH zSze&g7mPP;;eRXu@yy+*VI==FcF?2A*|e&~N+fcjLZHSHACwa_8E_ii# z%9|NVLXG|oUu=+AeVV^EfWtD!I-aws);Hr_|YJo*j-Mpxw zl1*1wZz*qFHMQUoMc$Y77reUf197~Jgb&RyR)}!Q-DCEM>IK3=HfFhEjdmMv0;1UW zU=&=XpzErX)mi&e2n&R>cL)>??r7l+q%CsA2K#|3RFJ;9-W z02ToyM9GlvXk$#|Y@;Xu^LS{5X6_(WBy8n8(YR@dw6-j&S)2L&xgS(L`0jsuw{32% zb=a)69WKMuo0M#grs@vFI*cr|pKMN=?`F!U7$}(P zePI!fS4~2`VzUcHHxxB@aG(}0hg*JJ)uTzvpcySR=4RJ(`F~=e=5;g0w-#|~QeRP3 z*2j%`1S$qQr+Rc#xTyc*Il%g+f-B86g7f|j#SH8~Xuwu}L~&ps*hL+-y;OV~aY$$+ zmm@{q5ivC3^(L|Agkkem0I(R2MP(7L96ng*0ywfe@JeN*7Kw%-u4a0p^M0RYxRx)x zqP5_Gxg0KX0MFB|9{cg({+%4aK(T&VzKO?-CDFV9)jO3f!3{fnQaUX_3i+kV&2TE- z!z13d^aTHFOu1M(c8fMj$Q1`1*pKJ+9MR)P+LTqNXYG=4nTBN=>#D-hlUjzM@YRp$ zi)t%QC9S&~fE7!HiM0K=25i=UZe7P_c-5#e4u(b{5sBd<-goPVC+1!ZvO6Kyz@GV5Hen~Y>e(4XyMWN4gWfSv_ zOesej?-C)#D4N2CmhkVrhMI4iC`YfEcX;7gwN{4W2}`-VdW&{L zjSMKq1Nel@KxdAKY^AU`-97f#bB!6jw;D3F0=!eipiGNGnB|; zfk)^xsDjNAKG5(V7hsB47M^0Yy^H6OfvnaY!)p`X^q}YCqvu@oIaFwc;tO6U(!aR(UlYRV$Xkk}QTvIF*$K5b8U zXA{SVYl%<)#9=8P7_{}rN>n?kVj6&I7*nN)8csdb`aF*19SQtL#7q#YcscOG+CmQ6 zB`x6bY|BgCVc;%i$_Z))ZiCQ}6Q2hRSK2BY~L!GtI&i?&Wm^l(Dm(26B4b_-)VX;EmO|}3Y zkC+}nkNg<8-&bqO9 zGA(*u3Jg{W+5y+~OljcR1YS6*BFj@h0_MC+e6EVuO>P8FBi49uAC@ulYBdM6Uvs7(fMhmR3?&6pqnC!YlQ?1BPEOfWBjqQ#Yld;w~7*aJ^f0hOkeSJfVBctFa{xE#x96Y)psC#uL30giW2c;2!v<`BxzrXVV?mch%B2M3%NPl=V+!quy- zjvMkLf~`ei9V+kORw5R}g>dO(+bC(mKyJokTJB*SMJ|*enh`f7pYtiBv4IM$kJuN< zw<772AqCHW*tbKg&deaK4!9;e)xQb^$}HFJT2;+doWN{$I>T9AlGLsQCtig@8G&1l zXsb7B?j+^~5iHbhb`jT^q@L7_x11kWLB{PVxNv(tZMlf}G;2*W)#tgk?@yZiBrht# zoRV(V>>+z=uF3;`RHr{`iwK_H>Fbz|tXzO_3!BWSb@25<0} z=)Q&7)YN&gp5}IUJ%o4FRNE){^;*f?N&+bS+C&G{ADdvB#?ht1+0_}^P!A-~_s)Gb zb{Q=U26kbclv6^XuUNbD&?i8EM3oQ%P*q74ZCa$cR(ROJf?i5FU_Et{Bqi`|&p8hx z@?BvlV<4R^g_4cxmYjW@;&N(o&(?3twj(8J^$mC28ed!v+|K7Rl)pqCC%qitit3JasIoDSBa z_(tg6?CEnY@oLf1aW|l`eH^37KCu9VbjnZ9v16^;kdW>32e$X-%a^$Pnp?SVk z)nxx^tlzXrOLOR9g{T0ji3{z_MjbSe5*hqY)~taYdb3c_Hee<|ttD@%&gyhUJ- zV9>KLs&se3Gg=I5Z@SF^^Fz!nNB9`P0*P?^`@pL~6mK}neKijDgJ#SomoY=W#j9&2 zEhFK}?|>lxJLoxr;rY8KYWCLuUKrrtvpv#XIqRAJUI1dIW%~82dStrQ%<}8**qSZ( zrBL^A<_f6twpt~+L~v4mX0YJTS#h*<9Ie>3 zHxjjeO^K$rfj%6T5c_>j`$q{h-I~+^)quca!w9NzZw-K>E~kYnP&zxX|Er;>;tT0M zlP;DA;y9yIl3~*^qzMFjKaEPwMx~d(n<(x7sKXb}zvl z0%QfQ)n1aQ(agoN+&_OBk$*-5D=Fx5(N~mnJ+9BSUL3bPD5_WH*>Wg^dtEy~ z0b;T52)K3Z&J$^VwdjQkYn_f?btqzcKgj!PJ0ZdKsFv|a6CL{%_(}r}kN^Mx2L{jZ zIT821000a{0d%~_$)Mu=L;qKXMfi}YvcZ-*`h=PCRjY~$hKKN}wTK%4fF6hlJzFoJ zu>88IZ0)Zo+GiSJTFt9>MvxG~&C=OLJE&}IP2m=j+w2CroPj8W>1$AdoW@ru5mgm6q$fO|0MH9}rOFPhO)gaR9+AsUb_->KfWfVS9^UWV82L zY-?Yh@hu)LTbt+v=$`4SSnjpAp+Bi@lxmd-hmF7sbSz>b;%J?LL-l}>BtaoN%u1rE z$X1MliM4Xub6I;%V8OdV=w8pY@cJ3lSlmz%%1uHp=V~4zO%t)sHnqi!mosWhw?^eV zqb-mu&J)?sKIJR@tXi=Y41exY-vch3TKMs&df2!3Qihv`V z%?o-^P|-27_>kdSp%6SeH}=BLS?J9ZLEk>WE#46+HJzQF46=v9V-r-x^N_0bMF?hA3`f=*%{u zsv`>E$gJ~}X!~6YQQ=)frQYy3I&}%E$}c2~tvbRR^8Dooy{59FV$;fAR=j4K1ZaMp z!SS{@4ErnU+^DB-MeOz`VG&ztr`r@LH$aLdO9QirGa{^77;jqhb=P6aIqI^Xzx0G9 z5}e;pEnWpeh?5{k+n!@VoxecL&hX8|FKAXfbPU@lZ!1Y!JXIfJ=}%zuRp+ln0Ozwc zY$A?MjzzGznHtv{9(flCb$Dvx&ZHDU)S|v6;m+Sr&;T@1^X?AVBq1*?h^!s9Qrf8-8Zv?B=YQ~J09vgLN&S`JL$#Jh_ zb7z2a5P3Cy@P| zooar4V57gHB43GumvRF72lyIbI%qylGsMiQ4j=-x_@xqRHo*Su-6|=Z%aG3Z6@XdmZB;x#>3x#tu)~L*4A+9qBX z)nNXXged`xG(zIXkd$L6r2RLaxJ8$yF?(a+b@VX9_!LBJsx`u$6p*#{Kok=|x-gUy z!)Uejj!@*BL#)m0wP%UHajXYuXU*69bpQas)RRK7oarbO^WCipkJlavAQTbHOzJc7 zxQ@(d+i{0I7=)T6O;mSIZtuB}>_xs9@`!u42TiKtm~~CJ)fnN>W&sTO3<5nkIT8;= z#@bir6a~V&3Vn;sC5H%ROiU(%U2uz!{zI$)CHKiimKz$X)Fbb zn0=YXudIZAKrJ3s2zSDryy@99&i@?r4&e2C*{yiy4z{QjqTL&v&QWwv+-8ffZ5j6> zR(cs>ukfY0elelrCMlmXKgl=KZ9N9tA~ zddsHGJNHA4u94SZ%q12Edml>_c_a?0TjXXm2v22e3;B;dyIyMxdNQ{xnak?pFwWgT zo0KZ|+ai;)fJ-;;yr>Mhj=cF0-c^Dcm^V6WZ|<#HBB_rk z*sWIZ!IbDg9>ScLHOP41L@JcjdrKTi7rw16#y+WNLECs>LOWT@YpRZ4L{T{l%~)m! zB418MHXt%pvlqrUBLOv=fRgi1RdTW=h>v_2b10^T-*rj5e97n$JhOVf!OUoam+BbD zV(y3YMj0%{YY}2ARGFf^cYQEv{-tedg|8M#0@>v1?@202U&c zjAFu2+@byAA(cag^hm2JTA^2%sOc?5xgJ}y!I_A`{+$!r%_Z;l3g4lc!!RLBlNbxxuIF5q(&tr}2V!q4AxE!C^`%QL_LS_6tjM zly)Cwo&{ATGS9H3GrX5dd8{j z`DmuNp0z27n$UT#u=INsq7&s_y|xB@R^xIQ;=g;d=+3AY+Msge;Q1>TEiJl08LXPWU0j<`s530pr6_JBE;J)TG* z)FCXw^z;c_3qZg#O?-@HHalx$G_&LBD|dXTZl5r$^COX{> z+f%4m{NYKVeM3$MiKo8(v-4x>8{JtUm(_?h0l4u!-Xhk$^o&N_vI+cr8-r$=V0O~;3s&&PW>>L4%Fs@bP&Giq@K6TiWI)@u=0TXOyiy) z-U07fI;$)iaWBje@;%}c3X=!F8{y%fr22Kc29N3CGj6WTB}}B1t9OL8CmuPJVzB`% zVN?I{6s4CyR7D#@ag;|-&M~fp81`b?=_~AH71Gbix=Jh@nd2?FQ;<{o09Rb)E_-ri zWUY1ekA|XfA1O988nCebY`b+yxA47bSyPaf6Kq?W+ByZz<0$^}79|{-g3<9RqLjBu zOhN>@%k>J5I|*{mJN5_}U{aXJ2O^zr>%AY&c!{Ts^$cR#T^|73d3)`D{G~{jNApigX2L_6+md8(8000ge0aG(H$gEJ%)%1(`R;{z8`;;t8?ZB^S4w4jI|jn=_^6 zA<?*DOkL5`BY#tTs4zN?`g+*I>%%$J=tgLw5=fjz~Yx^HqnHl$og64eLZ6{Q#2%RPzO>U;m@jy{z-07A zN!vZI=#diV;}curHK2(lp!riW7?=~C%CSLBokm$V<|OiPli~nQOHwXvJFh={6Bdw@ z%|+s1jig~>yxy7d+j znGHFBZ46d&EeKi~X~!Mi7e58GLf`?3up7kYvSn0+Q#egt!i9M{Z#iF`(0HFqI^v2R;7`)MZ1`7 zykupL&Lz0;&h1&beaC41#q{#ocyPDZT1{zUpji+w-GdFUoe0?{KH=o)e+-VI=@&PY ziT3nT!KbLg>DXM>HD7GDpZo^DME$P$+zxR?$DV8}fTRXUsOT$CRoD9i*TVyWdoc>+ z0irgn0RLQKM$K~~2D+PdiMozMrIvf%R50kjugSBH1Lo?VJeGv)2_42oQNShP05AzS z-Mu`99PF8YlpU+4H`5+&D;;eYP4AAEHWG#M^U>0oV%w_|Jcs3jD{Hah+a z#O+WKel65I_Kk@eL(vWCI_Mwu>eb;I7wc;*qb0?TY!DA}oo=lNf&P=!dT$U!Hmd`Z zR*7}8A8#%qQ4+uwfWT*w-u(+lpzaM)&l(@=gN!ZM#PG1DOR^vMt|oaUIk=*Yahx9Y z59)#0GHsqK+m^Y#>W^q0fz@W0l|%@pAhLtFWtTp5ZS8WSBStw;_Bp2Ts*kIXEdeYTrb|`6Th*T5tQ0Zh7JlII90m4dQM}746oRG{Ceml;J3}abP zQmL?z0ZD3hUc9wsgY=PjB?bt0?$mr{dt{wl1~(-BQw<#C$IfIJiA9@X7P2QQ%lam@$ktu7skmN9`2JX zsL)_|q(tGljue9*3a0Q?lfXu$%L>;(b@1|hpxuJmDH@eefzBbnT?pY9AL@d} z-Nn@WJ>x9G7`s-4_&XVXqYHOAv-(g0WM=x}C?ju-bsNo$^q!!!DAE&0RvPHv<4yvG zVCYMLNeAGDm-m;WiWt}F7dcBvtiCf};W(;qV5f0El=s6}Uz4 z`XN7$0U}(2)a8wd%M>kV7T~3zgFZ>5(>&FN<|R#UtU{xUYI*qHu7R zN52^X6IXIfj2_k-Dfjmb8n=_I;YvrkT~|y3_FoYCR>&lD06c`M+ov*KrLks72eIM7 zM8ZNMV@6U+Di}#}=>yoXO!a=4O?#m$7+bmjSV8$5RUS;h#(H5`r{rD?_;H`FMMEX3 z*Wh+7)S5!BI3h1Evk(7M{ja9Q#mD=}N9S9oi?nSCPcf}0v?To%Y8#d2|K{9{t$u~t zjIHo%48ktT(Yk3@FbN|@u?#b}ok||K9d>ZeTT62BAc^Nvld_a@>RO+uEGw)dOtwy( z!QT>mfwNgNqGlDY*k?{TDuSe{RLik)k{st4>4`GDL*(Oc{DppdlU`=n=_@psx80F zf?GgU+{s>~+Ma(Q_jX)ygByotS<63dfi~AS7UVMtI+q8Md4ep5F&R2m<)wKhyiwUt z`s!;JP*n!mx442uDR7UyJySz$NMO9xt~D=4<qutWZ2oOAKfZBi2T00IHZgPRbE8H+BLxe$ zO zg6T0b7WV4xMHGzSw;`JNy5HPd*gMBv)~o=Dzi4TcB~GErAO~KO!ODM7$XHz9J4H{P zKt@HqZD;2hSyZ%zHF7@@^tnCow`-yqeCBze)2t6w;~bXr5`W$A z@T{|TV&y_kJd>)DS7{)Oq$C3dj? zw+dehslp)XYt?nw^%tt#$Az5QDbH{94A^%*R9VCjq86DK;C~MFFXXkW8}Zo;mCplc zc7LA*^r!~5PWW_D(_r;rZJed-vg25u3(Xgucor;Y6twiPesxVCdI+h}A@RRHy|p0q>o$OT{=BT;1CM`h&Y zq8|rRrmY-!fzs$N!o5mh#=ApWN5yqWxk4DS$TWI55>W$F3zXi%tX@6+(4!L<<9VTc zbOQHb>uq4`tZ+VANR&wYXLXpDeyOuXH)V}*STIABj><%8&<~Fei;4zrWR#^DxyAV@ zI2RyG{SdOOhnH@_hh}30k39T2QnF}sOG&^8T-RzJ`C7l{j}xvmO%OEZ?NjpSPV*tT zIz%ujCWtd_uHsCD+2tLA+#sV}FuFP1r2)RF08OTGNHZlE0S2gBLu^y&l?^s@Dfz{B znGlgw`^^YDO+J)UvT+L!IHE3ce2;*^ux@*?6}o>ItF$_r#G4j<>+nx+ z29Lnc_x=b=EgUx7d)qkYiNvx5F`%|yaEEJ=9#zyfFpzVTA%THxxj++m^65K|?$p$$ zNVt_7|8J#2W=;P{0CbOApGP$uK>;`gh~z3c0bpH z^zjUgMX9Rs%BgA1)-&Pkn;P$&HBB}(fKqz`i$u6XXSYgYe|=|0Q{}y`R{dDZ2o4oH zIK#I~BGMN16f)I+t0xDI9-JwrAm-Ol!q8ECs06vvU zm!RER{uqD0)~ALus^|+_-kUQzM`E6yq38p2R4)>4^T|*)gmn_xtKiG87znq(iiQoP zV&O%6D2h1spqq?qRKew@hZNOAy*~f|00#zV)VP&Mx$CE5Mkx6ss8M7wL zAqi$q5Uj{V_qVo(q`P>G_^fK48s#Zh_1V=D=51QxmAuNv#26%tEEk%zj!!us#ix7D z^AKVZ_gZmx86R9)3+Lf+CS9SMEp(z&eb@P6gDgX!{=hcEl<~cBWLb8WV@)xe_BBif z=Y>9YMb6OSTpm?&9(|WrzQzNQh_9YzPY(t`KI6t@A1sCFAtIxT6V+AI`-OD)WhjqlR;&C0sG6oUoVI*}q+KpWApspEU>3x;w_aCa8m;lT z4-2>0i>doLEMdT<0}rMn8xZNz+-<#pEOP&Fr_@~&m6hc$T4c!yk6Aic(M^Oq)zK12 zs|!t4s$$llh+J+Wo8)L1Y&a-^Mz+SB=Tjp!()?;J^Ptsw>XSJk%$3uP zVIqnwQ2J>Yx#G%Jn zz2zN9IMQysr6hvvhYgX00=E@KE zJ7AW)ut8qDOg`M9n}Tx-SfR~V$ZRP-?)``>kfD68QC19=2&AW{RmNJ zK1S8*`txLthZ>(i26I|X7wF{O%4o}J{#N$ZQ#7fLWuft4#_t7os`RBHvuZRcyVQ|P z;{aQ?f2LHj?Ec3HoyP%57LaQTab98GT4t(U4?tG?K^RAc;^k=;tJHd;x;(a|W@P2B zTBCb&`zpj%Sz~SZ7240Cj?oi0`cx?^yU2l~Ws6c}MuEbKXt2;?HQ zMdko0+HAb_J$b?PTzWq3nFwS*t0J?8DUTJu_v7I6)Pq4%TSMDC-4CceXt1M&PT;dp8X@oz<=cgODxj9k)K^Jr;pk)%Lj8#Yj`{ z2noGX_bdodf-`Oj$*vKN3&k);qUhZ#BbaU==On+fmu?6nj^n3)miwv61jG!(u7mgfC%0Pqu(>V#4wS&(YE;PQ_qxbvCjh^r zCo2O*j*fPdaut9z7hutVzb+KS3$WwUggevn<*D=f0-a5ALfvPke6K~OAM_bTjvKM8r}`N67(7#7ptriwHgk|j03flU14{N7pWFpz)ZT&-xGd%U-FJvezdN4#D3c~m zx)nlQ{!y>q0~?Scb`rPS@p+}uxMgfa4fB4kzH#7}JV4cUvypiNjWOj`3;f?LK}E|X z;Jq_(@+}+s*f_^6sv(Qa3cVW)nl~Y&6-&h0KZUysAnrnB_>$flwNg zczVBVea5QvYWMpDl_X2Wq}z-d7E&?RE4tjAlFe|N0nwvm_yAT?f^m$4_|yFNJQ@0j zv_j;&d5oq_RbCn%{TaSTrw7*V9dL*KQXLJi4?VE`=H=tjGkyYVevDQv<@X>>eA2D< zzXE4p%;c>bIb;r8LU;=?SVGWj^o_RbX`Fyqmj~sQ&QZVCQH*dOmqV-EPT1JC2#AXd zzd`pcErVhctU-j|Wq;F%JGBR2ta9Fz%Y-s}rd7Bq80eQ8L&O1`3$CHS9*PN)`r|@{ z*0tY4#fYE2gbPYk5%4_$?Hbe@%6cuGhf@k~Wdzw!#S6IDz9@hH78Q`9`a%AS{hmps zDxc3zxMo6w!4XKYu_W1m-z z%jmatP~rWbrVLZ^i}$V$hqeWw@r=js&fK=0z39ycQ6l45cXfzikg;nX;z1;4IXCdbf7zK2mHCF^(s zZx-Osowq?5N6@)-b8?U0Vj$sDS{X1bE+ow_&LO>Eb&a^jujte3>e3@}@^M930P_hp z-C+>sKtQ+3UQyp${4z}``eS}$6MOguE(%{7Bj;?<(ojv}$KVrr88vAEw;pt{ZDIzZ zy{osr>>^ZrjF||JylISt_cw0C!e0>75$&v@FL>7io zdyb=_{@fmMyT|CZUmy4^uV~Ln!a(UCi^Aqr`*6YbRe){K`FpY4sDB=p_f}`v zv($?#BxZDp+00EmFNJlFEG?QEt5r02X4zdUH<2{a3TgV#y3m?L8JulDZo13&0X4!9 z6sosug6Q?}ldy1H=bGRc4s~D^ajmzxdGnq-?cFZVJ+(-40f^f=#KM%(W*4PK;MY3` zAe{na#nPp8OOqC0{xMD_->9@EzLzEt`p$SJpKm(c45p|k+MQeTi5+6=Ecf*%$ zt0ZP{v_P=g)ST-}uvt2YT4Z5tGZbPj8~$lVUf8Yc@Af(M%+7OG{L%h-CCR$#cDF9^ zwV?k5O9QD{;a6@;E}t5U&9%8YNg62&4TtiN#juhqOB|IBID-5OC5Xa{|Lfe2pz0n% z6#r?)jM!=_O&v@~ehW~JLD!T8gK`inpO>MK=hrjoC^8xFpH4M{aF`=sXQr6@j(AtX zn2z2TCU$U4hyDBuGBk&uxAza*tsQUdp-K*qmm-&fi*VX%~fESgk@^=-wb$E01MO_FLn( zn1xB7_OAt(6ALLN7CDqJ?dFF&|7>WgVBw7Xbd9E`1PMe3mQ+ddW{LvhC!4Wt2Z$zO z!8w{O9b zv7O2KXUfa$|G0Y!?C&{m4s%$LzN8c1kUOS@3D^X~Yk3l3W000007 z25+KApw+?v01bNqI^Bdlduk#q%0hc`F`qb$TfMP;?8C<<@KU`*MUI&Q6oGKb`s*Q+ zRc&^$x9uz;GZz)R@-PC%E;jFh|<&z>F3)y+?jMM9&T0O`Bi zsOPmEbQj~f=3+MhzhEmq8(xg!q+}l*bDV9xj-^FoZ(HFd;@hT;YUR} zU2J8ao6-|`Ku`z?x^K}r)DwN<(2P01CC#DcQucfvGVkpS#20LdOJ98=NnY@0FaneX z7<&PUy2aw`R`g>lRSvF1-~$u(x-u7fLa3h|L!mPu?7JzIOhWj1%ZM2@h#}w*8DUEuqoQYM-lHU>X^41*j(8gQ!P$M~DQ7s#-O@ z%!SH=UJ6ggU41L!hU6`w`D<1~=Ux?SD-ko>ZsJ+iuypeZW-?0X3?hEE*^BZWEn<9A46X1*ELeEq(EtvhL6Mi3(ZJ?f3m573HBe~A zpJ{&strM{#IcR{)5fO5oi61_kVX6RnE#`l{kd+i6@5JKD-`+K^q4VGdlneg!5&21> z)Zz!YUK`R&HLWGvAf+tA9Gs_8p<8U}#{W!i6Aq9OM`)TCjtf=Kf6?1G&R|J}p;31R z6s`)$Jt77L_HI!PV~M93GCPTSQihv~&nP-gRn=bTJ^FBE*zvLoMQ5jGdYO%mIq0-D2TA*9^r_Q1sLRd6y^43pA}>%0QNL9#-Te zlMGKStj+hRn0y=T!gcXKGh+o!6y7ZbH`{N;*bELb zy+jS0R%TdUuA+d7-j}$0y8rzK6_#Xm7Lv&?V=xk?-L_a+5|n|K`rk0W2* zxo8qNMK)2Y!HlK0G7p;qT(VURvKHqyluIp=?casY1i&xSM(LijdS8BUyMd(7;yP%O zq;9)1%~GyhONIOg>*mZtYJ@0z<-oZuv?mdxDAk$8cSHpS4ClLED z1d(w*T8#)XW?Oi0=(F?29Vyl(@j#2u5(%=YtmuVW&JR!F$4IZ=<{xgA=3TreQUQ5c zpN@$AzVl0DX{ZV?pHJVtUf*HeXTWx$&QBY8fXS{2KlkCCzsYL7kW25KZI%tlkv01q z=zIu>$LB(>8y+kc&&g$`z+^{<7?hKvkUezJ!xSwh3-bTPGvv5$5X@}iOL+DBOiidwW4;39azw2E$5NdV z>qUa7#MLTf6=%ktBI++_StM3Ih%bSSsHY`76jG|iawyMaIE8j!-tRlKki&~|Jx~JZ zn(8^s0Z1d#JZA!Q@~Ph3Bp~D`==|p>H@y(Qb~cvaM+PL(X~y64-RiJ;>k=zE`oB+_ z7(0tYFIe;lk5=)^_2|Itr^}p6CN)EpWXfG!Oz?FGqp+}Ls~kbk2WSqSUhJf z3^uvTY2O+uK9Rk1mIQpDD&b5abk?1x;SUiq6M-|p;xh{@H;|XJ6%_`gzf=kGUAd8) zO0pf2S#0gj`W3~7>z=t%0&n2}V`b%(dXwF~8(tMR5LblWmdpOn|NNpYwHJ+zq;Keu z8Hj?%>jfAvvt*Rf>LnJ6Z8CG~!`M@|#(PM8ScAYmrQQh2riTN=>=1twJB(AlsFvIq z_tvCFn!cHQ>+iFPgp8ap0A~q#j;1)u@ak`5Fdmh%Pb}V}?A`Cx>KqIdrBQ?unRLEo z7>~dA+@ImRBkLs)42!Iq%5@t=(IgZkpeb5iP#7tO zZ1lgMmLu%?FWt!34oO}TIdpZtRK$NH$BUs&8nnmz?KS3h>VaUOO|!nNBk}8kXzb}N zWtC)Cz~$GXBnZdtBrx<`i-dc%!ef1dv>?CClh4T5 zK>!M~kp}t0qYi~=Ed4h~nWdPJQtEs8m@9>68LGZU^e=)P>KYrGK2Y;{%{VuBelBLJ z-Lsvhd=!eLB8)AQ6YMj%DkB`)$u9+PQZ&dHUNM<68U#vm#2ftQ)1XoB$X{8C=A=Mc zg!uqfK&roS1{*VyCzOk_@4=98+Y92|$M-dKRp z2coW(^+PD#*!YxR82>Pi!HmI1cw9>KyPyGh{D!s21?D>(Nxm)}3JXTgmykf+O8Ifq z0)?WPe;RkQ~oL}!^o~u+y2MBcU%?rrXurloh^wlJ>^eVall*C=>_Rm4J^7POa z#U3vkcQwmV0IXla{*DqfdZP5ZLcW7k_(-?$#zTS7D;Urp@fMK6^}h%t(u)%G9J&VP z6GKH0rwWn?GDH9`nYe3wOKG6jT7XZ!B+H3323n`fLq_hG5%*Aj?-o#2=I1ByJNGz_ z$t*rv<5JCai2U~vJvh#s1vP;^Uy{yEaevJ&frnHGQzsKWveq*jQjz1SUJlwAS#{4u3ZX^Sk1oiaQwJgJ16|Y>4Y!SjB*k!@9$F0sIcV ze%0ZT_&X$S&4LaRDS* zxWOlWIZ3FvYm3i6iFO$pXm6*l3ySK-FCoM`btWkkf@-=5&8J9nnjDD(c#@MdhpDM{ z8jW{yG@}TsH2P9F;*cw~hEiH=y7{deUHMTptb^nD;EZufmRZ*9}0MdwS_B z+tD!Y;h)Wqi|K*2b#jjoc>f=WhuuFx+KBbub#~p=m`8s=qC4YZc{Aj75!$IPVAOlb zsKCv>XOKL}@UU5+oygB#mRS>NIc)SWvTKhLvWIK%VU0D7Us~5^AkPV8`pBmX?FFA@ zrAkuh#(QA{U4I`rKz%!bn3oQU)}+;-z7o?cFcYa4kbX0a$_1%Gd|{|;_y}4yr_%&9 z;h?ROXjF*p_1CV+YZumTX;hDxIp6>%TawB1aXP#nkl(umj+*>xW(m;C3su(bGfj3< z#v`K5&fX^6*oZo8S6RjQufBD$y5zQvytQbaBHPfJHWaBthujvyLy^HPw#ZoUfFT;3 zkhP%3#2+;OW{xl)M~^x_cy@O@;tF+N>)!t2=0NtefzUm1T9AWa=R~*Jj&fWD4lfPx zA5xdOM)nDEV5qPRWGf_XNiBENf$i^&z0*sK0(A^=Do=ytzblCEGwn=Z`9tgr-4k|odz^I~Ih zGQs2W(gF!^FZ&OFJguq;S6xGQ)VIRPla!Xsu$CEBo6SmBOG_qWw*HvmJ(?8tj zpL<+zc3wcS9b>|he^c{pPC){M{_%u|Xv8hCM0Kgt121O)000LDdxH++WUK%HBI!Xq z>4l$yyW(LIr6+02#i{u_S@sbiLzh^Nd%V8}$wcLeZ0LPPE$7fo&FbPyAmh@v!oed7 zUSR{Ue8%pm>S=WCs5z4T{f<(igYr2j@3+~dtMwlwPr^&u{R=XW54LHR7kK(g<6=RA z-;bS4__;}=^FiWZv-2YvT+ho_oH7-thkOs=zuJH%FVmcH!-;~hREMASulwypM?Wj; zw##%DNZV%JIUtc#iOs$^#p5yG*QP-HdBifhJ5Lvr!nVHR)iB>Lj_L5bSiAP$M}n+v zO2a{|ry>4X^Q0QmUENnhG&@Slk%ph66>lLZz?92a7l=iS&ktVI0x>-!18Dq7?@7K4 zcRJJuJ{Qk}U0cZrMZoxa`N{2vlGmsVV08J)X!uBzQtdGC6)C%9Z9x|3R9-Y|*ojWD z6BF)&Hz+cEY>b7XyzIoH?n#otSKDSd8ckf=#EkwNK_=>v6oqjt5O;E=C1)~zFRDv!2vpG^GSmVrHxekIT zrc0wVrQUO^WD;Z7Z^BTT;zmha26WY(;RF4$RJG3`C!4o7t5&t|ixJa?y@qC{(tGJ{~2*4$RvsL!U; z88fh<5bIGk0j+|^0g<@b;+UK7Bh28EkDynv@U;2|)^u9!Zi^_x3DEzmshwL94rz#G zEk$BwH$efh^LIx3MdIdCml{z+0gWX3zLB?;Ym}y!>Uyy#`$7fBgcD(r`wnk6v{zt0 zj-&Fq!95NpiB-B`Z2}Z7ib$=L8@w!E7v-b+F1C)h+56QIW`2-{31JdTZv{datD23H>2PABSPie-OjyA#c(l3MVR<=Coby=&Z}lGOM9lTMh-QzIo3MvG1tcr2d^9Er8K zrC78>%oy{swFqUO_P$_QgQAbjg>H>DrTjItn3l7J;ZN8vHGi3jTIv@dqdV$y9TP}G z68Yc_PeQ!#>I&F*{dwcH15@aYelaaJ2)K!wJd?T~se0%q%xm)=Z#x!N#Lz26T_iZn zxm=6Oy{PJGwj?wNSWJ9(6{A50hx$(G5|E8GCqaLh{{NH)3Y0$n+-xUrmn+fMwQUs1 z`gFL4$!b%cwHxv9iLgKZH^|vc@M4kG%REY_=!mOGzn}@NzxH?TsF$&`H=clhZv0n* zi~pn`tuy*kEE9_ASbrtMHh}l*fvGQNNw0Cu7@vVk<*G277emo=PfU>hQZmT#Yt@4G z2U4J2&~-!b)G86#<1WE;xT2dLLM}B{A+FZX;lQGuU1xS1w;zpjwf6p_!!JZ!VFntE zEmR*7`TY7;R|sU58EO)PkPM*~i`%ukQBHgXwT($mpPzpN@{BOAppX@pjA_j^ekOyJ zfXa5LUYo`Jl7%ai!V+IfYVE_n3Jfv$W!GpIiiJJ6b#D42L|)p)5-=fVZj{ zR(d^w8HC86E1{GVg4?QADB(M(8Sa5;For{}98ECSCsTXQlF45TtMt}4l7MXN&DIdy zu)|uOlR??<1ajP(7;VDS^gE(|Gxb(X^rh%!oiAM`RDJKgt_mG=t_LcYU=sL)#o-Ih zshVbz+>L{)+n#D3av3fSXqZ}e#`l|{@1w8uDifaXT<37aa`P2xc;*>}&9x4hg zD=`}E#z>Gs-nHDP1$26{o(IfV&_ZnC4i>+R(KE0+vi6S36>C*FyM3&lWuuRDT}!j{ zM#4s7l0-!DAToDl!{Y^dw|m1Zdm(wAjy6M1GUPtUE%g#vowATiH+CkNi7oHn*Rl*{ zv{t9-yBYRS`OtrON0hd=4-|qzBO&=V99=x0&C!TNGUuBF;$@nx6AvmIxE)d0MdKf0 zhT!$rnz#+r-bWB*6-qmF4VU$A7btJf^5@QF2R06$6JyJShkuh^W&i?vG!#x5lS&o` z)kc5E$Z1rwpi|CKZHqBkM9*5Hz{|R#WHV-FNo$w(58*v4R_22dlDF|gFX_{UwFheanRV*VI>>V13}Aj|MWkP&Ft5l?ADfqiX=VbS2MQ>KTA?Ap78_p{)jvN5+JtuPj?C@CJqJ#gUy>AZ^!&K;eKp*03VQa zrRH(8F8>(xQdIn4?RU@~c7h7M96K8!NUH*G*doGHOa-3s6G!H(eEQ6#+$$kvM+@{3 z-7#X0FGZ>BT)h$P9Z6H(s4P!%Y5|gVRaW?BbWR4<(kpvJbS)S+!y`gGgoi zRkdFV$sv*5oAa7MkP!?;d%n}k+%bR1Z^-oeyd#}|`nzN?8?74R3}CJ`5~+OWi|>BUlzK*lEvd7x^7{Z_WgVry z_1C~!ybpNu6On|4++%U~M?{J#0MU`NM2mq8vE?v6wjy7t2vfcctGr=T(007X*Lpl> z@AK>iQ1Dw@s4p%K^x^@`(x-~Vnj3X^uMhiI*hCC-Noc#sYv^Zrs_koiJ_yn44oJ~{ z`*2+YTs5pps^dZ)_jV)HU!D4`*$0MN=sGhFeL>=dmaxPDnmuL~){fO;p;#lmsQauj z&s4_-r{_*BP4|bA;}6dSvcR-tZZDR8`ORCKCSN!08#Vmp;_Z)MjIoE~tbH;4vyyf3 zBKsE`f{)bHdo<&9##&Z~`dCcm@%+SRlFUYJTluWCvx>6#xO~FV&%fZ2Y_`jio0C0& zGj==?z@Fj)MD}o=q}ycZJkmUU_L-9H1vrhD#p!7=mKQ}Ddf55^*?$0Y@bqCqH*E5Z zU3%(5YgM;^J)^m)!%Fv%iybG9G(5n!1G&$}_X7UiNZUED&dNyk#uzwpMhx3O6|KkKuRY)yzYO_qca}gz<4-!AOE~%Q(6L>-X-FI8KI{myON3 zSZC&ira35rIZs*PkBsj@%{(;1?qLlJuZp}Zgrg65+#or@sa<3Lec6g1aEi_#ojn`s zs6H;%vknSzKMu@p%aKl}xuf3(iCDVqvr9K!(_Ax}mp-eN3*qWjXWXSQP?9@NOv`l+ z!kyR1@-7VB_emr2!ze_9*Y^4BLe9Jz+y4-3+}_d>>h!nTL56&JVD8e0zWl#kX8Y~+ zw8!syNWO;{$GeYg?Iu_Bn)FWP5!MjyXdDCV9`2yc0Nof9iYVFepx3E94+4*+Iz4K7 zzY`*`2((BTCaGv{hY;>CdQncjnD+`_LHIUYWP-k!xPLd5PQg2<3(X>-H8liWqej>rU*uQ&6+M-6UjReDC4Ji7@%*-CI4P?%zkcLtZ`&ToNTUf-~ z+>u&++F>AC`V;bbtEUJv-)ZZne{uhrSV|&XJ|Hl06R?u1i(+Tg;CG4?5KHYpSt(1@ zT-OMf)6}VQkcL0J=?EkNM>P4}GWpTSp~YaF2sLj6P+y|4P~@FaJ*&0=l>5{CtY zv;yxq#7^@JPK5zg?jIk8+q4c2V&-cJG-N4LbKZCWZtJW0v;O8tO?OVRm(MoOCj!pl zG}li?RXIs949wK#?I!q_bqnI4>NC6tqRw>~xx2Cp3ene_S12Z+8&3h+u`8%_y3j;#Eo zM3A05+Z%ZFkT=tY>w3@pXLBgmHdMb6{cC2FyX0E>U-W(HXxhw;ick4IbGlZ(=rfaEJASB=bN-8nYq~-z< zrB{?Xuza2Qms|~2-2yn{01Ku&e)|-(!euni^2^L>3_(3A?&mt#e&Ys=!{Rl<0-0xG zacinO_Pi82Jr2(rz#YBB%aM~-3TSh?`o?p7fJ2rW+L9u(sdlDY5@C6nDjyg{m#-LQ zpNd~Ip4$Shn8V1_3*>%p6P~VZU@YZ;NpfEoOWZW7mZ&og;4#sGQT6|6rnu${aVH_q z_qEXg-cw{x$-*>{T5XtEZKR})M?TzX$Ir>$cH(_!jASfvLw&tHxz-wCf&Y)+j?Z(# zo)8&0)3LXV@U!GciDm3t_KcjL&u;po;B_zBYZG}H!>F}2Iuqc-HbeYxInulY-{>3N ziyXx9!7Vobv^|P>p?rUVLsRu$&)O}1u*X8g-Ws?K~!4ctY zDFy43upM;0r%LufEU#R4or=!a#1KK{H-Sn%TmlJ+A^*|^>;t^~IutN3 zt|#Qw0SK8u;~(?Rf76m>2k1Yc%JYx7hz+cIixKP#Yo&BqQ1XZ#^meQ!AxF*?)t%|y zx|wpC1q?PQlbm~Q{cj+XNS)532Hr?6+Hf%HZ}JUb?GuQ>KvkmZf+ucmJ~pjSvX-FT z!n%!}XHN;n_=4H>pSdiHT%Go#hH9<|etaRUrK#t9C(@U1cNYAZ0!as5TI^Jn^_i8+ zlYpFL`G7Np3gGFEv8W72(nZ&mEXzk|QaO-0mE8)}gj|*AM-lFTJS#!4+79Ih5D(q? zjLbf%3dW;zJI8f&ih zWhkm(FfD4I>w40}i9$$ng9&xlhX%(W^f+yXb6A^!^K*6*#Gx=>fzS}00{I>Veu|&W z{h-CCIl{q%R%>Et)w72JP41`3bR}lT$JSox+jjMB(J0XZg*7qx2|-;8rg;yf4(Ru? zEYLe?0tgJl6e^}~(5DQkCnD@z9S_A-2wt$3W)u*T*xSznN9rk2d8ACF1;oZ%Az-UG zDl|}H4!SQ%FKouYFsK5-C+5?o6x+*2*-1v*6&r_dL=?V1#%zsjHrg(GyUCf_8c%CG z&%`ne%fAQ*8bHJwkBr>z4%Mw;mDtUju~Px@5UQ%s#t5vivcCq3xY%ZcJo26tF!=Sr zSz(id-Y3Lsl?*#pNR|h8CaH!T!(H{}cIXz}n;UQN?m zXsT#2J?;UuOHB;@GdMG5cql9^) z)6Ag~yp$fqQC*%#P39ZAk!J7?vSC7sl$+BP9oeo{8qqwB-qYfEIck2S^f2&*v!5Gf z=a(J(7LMYkI~tBw{^@O|sDTd-Dvzf8Q+x15qb>{s;h~y4@_AP+sKPm|wxMuUOpQBy z^V>wfPT;a{lf;cnO%FHwQbY-~YX~l&)yyUjw1Xa2W+QZrVon73COmi@^2zPr*_5AI zZFa~Dg`u<}!V%R(SBYB=3t2ne9=MIto?f)-X#+hD;9QfWy9^cxzIz0uZ|pe?3}m47 zV37TW#CHdVZ31lDKW8(_0J|@4^8}&tEfAi-pyt8@ zonoP~v!bzvO3Q>cnHK^|?SpeqnjJG*=)&V7gm4?;y#v$0dJ0;os|5V*L5uP(D5=6F zhyy+9=318_Yitzets}7S)Zl*2P7nkxjv$xSbkAuTOJ$n1Ww>bpxB%u)Zo{437iY;h zs8)T>aR*S=%fy!{mtpogH7uGfY#mf4gjzWGNeUb!p$h_^6<4m3+WMz@&69Pze}ji> zZVoYy_ivE4J?&kSn*lfG?`?&_qlK$ld*G-y{zUP}hTT9#tMJsqoZi^u-npua2xIR4 z_G{%!tV+?*45j{Z0G`WoWvN2yKC}<-F!#O6qaGn(kJLKURTqmh|4ur~fD6=&p_1Po z;{4KH_bD<}V0$k3$Ut~k0_=)XiA%G3HUQhxn8n?c?J(r6sucdT(oI2|>VBGEg@h1B zbK_i(z(_nVX=pik+nZZ44`Fn8t?50JKq^9n)!18{s37(ER|mXPNhe73ysu<6M`!9@ zZp?N}68(7mj6Z6>%)9`SRBKSv$@D_Z=r1ELg^TT>VqH|ql^E{DTdMm`WBVAf59j$m zV|>>pYN&nfOrUJy!-x2CHZxOyvVdCEeUcwVyMnTcSOqqR2!HJmMw46EO}51A%wqYj z(`8lj|8`9*HUuGnc3Prdt^dzP2D#s(itmO`d*8)pI2Pe~8Z1HP78alQK|gq`j4H^f zy-Mbm;$j1MOsD`V`CK#^k7;k1c)XX(L})q1=(&(#$sLH5UQIP~iPF@%9o}ghjoWNM zn%Z;e3U^q#MX^cXSlBG`#U!?q!7$TFh$-gB2)qDx-y*vCS=$)T;oVO>*fno=XC^Y8 zr)^&DdS(mEhJi=tSdK>@Vw8l#OS+oLV5)s6?g@(aD^ql1R811tMJW50Ff> zvVr1^;OS2YmrTz-)Z$(m0DpCZ#ud}B^sn5mI{_ZDlM z;1Lc&`9gh0YD-`gH?56>MVk_B@wy^9AmmUk70@X|i|U4(!6t#0d;BQZENL~?rw(9| zjKgKztU!yen8(^zltaK)KEM=%*%jLZSE~Onuhk_>C658WZ_a-6y@ zUDbm&pxSIoICa?_>RH#E3bV)Xl{W`F1$mIFTI2AOTV$G$3*Z0hSh2}}NI33I3mc{JVYXMMYT_quQ*S`W2Cd2w z<$-+T=!#aGHua0a>)+m+h&Pe;$63Nb0oeZ_U8buFJYA-W4Zc? z*8uWD-d-TAr3^$qT7N$YMu&Q+vPF^ej@QqvWtnj&0}>uT04KiOMiZJNQdP#Qwt!Z6oD-OZ zzi;{W9;);z=qmY36ods(LMrn(&_04ZkV^zq1;2@;D1g1x!5#wmayr|yXP@0QrpX#5 z^Q=Z4J|F)oaMU_V&6RSeeWl}&VF;af2G0o>=L~%3{nT46r8uxKm_ZRlA{#H(Pi?qk zuD?#K%{kI9$#TECa_ZN7S2kxmQQI2C)+}7s7@8;Ku0zH>!gU!eD`pW;OuJ6McDS*H zRi=wwYxqnZ2FX-a#95!#)Fo*M!L_=D9-m%Gg8|LSmqRxT? zsU>sG`N19ne<0XQGIHf~y)9%8>&^{t(%E!&DLkh2D{!>T6G1LQx!obaAB&yh51_Nh zF&Gl!#dUNvYmp^E3&9v6n)@Fc5Fpk^RQH%`Th!BZ)@CCkpIScifyj367e~dBrS2^& zcT!zcT6c6LTP{3zJ`AVP%e??d61LSkG|{gOR2$re`W`*187UDzWvapYK20j$KAncf zD#Daq_cOo4-}BaH!XKndgD~Xz+^WAGQfWj6n-#$0HyDi@T(ncU44XIkPm>YvC+}Sj zgpRj#n=OLe;|L@Ie-^!KdsK+_f8=+G^iC7gW%|c`QpbrE*Z7R z47bIyb`UI5UM7nZnPY|3%sGKfKcz7$Hci>97@E-PwHgKC9Nr3PkZ4~m+n|x8;lqWJ z2C_nVmF9`ti80E7O{L}IS|u4VU-HGA#X^FrFpxpCtat?wn?1*^;d2@v$50B|Cy3Py zNkpE@PAF#2O)P1ik&MHmoW5~n`F(GjD-t4$I5(ZWS^0N6%IR~r6M88jCkgmi(<$tk z$`hcRqTPR*eSva8ocHz>Ie@ths1C1S!rYR6^CpB<#9IOUa#ux74zey(OU8D27qS(-+9iG(_igweqHlf@YB@N*d8wmeG z|5AcRKvg+fCKqFIOZw;){dv`|NXP#V_XkA_F!4*)VL`QVi=hZQ$qATaGq>niPJUR& zk@pS`Y3Pl|M(xXUxuS6^Ks!_1y{BMkx!6_g_ znUZ7Q4ExdOW1wWw*VPm({kb*Ya(*(OVEaymv-FSuKDcN!vk3c}s6-4uuRZ0sF|L(0 zMGiEYo5V+%`l>u?UoG}3AhTkm5_~D>Rqo{a%}syR3TBqAnNv8?P3ipRq1d5*FcxF6 z8x?ZkGj76t&ɺ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 ^qWx?Y2>X9Zgd6u1$ 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 jl%0B`uR0e^V&Huzi2u6d;!HE>MyovGcni&;u5c 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