Files
webstudio/apps/builder/package.json
T
Bogdan Chadkin bf574fbc47 refactor: add new way to synchronize immerhin stores (#4451)
Here added SyncClient class which will be base for our new sync engine.
For now it can synchronize one immerhin store.

Event emitter is shared with canvas directly to avoid indirection of
iframe postMessage api.

This also partially fixes the issue with messages pollution and conflict
with react devtools.
2024-11-20 21:15:00 +07:00

143 lines
5.1 KiB
JSON

{
"name": "@webstudio-is/builder",
"version": "0.0.0",
"private": true,
"description": "Webstudio Builder UI as a service",
"type": "module",
"scripts": {
"prebuild": "which remix",
"build": "remix vite:build",
"css-to-ws": "NODE_OPTIONS=--conditions=webstudio css-to-ws",
"build:webflow-presets": "pnpm css-to-ws ./app/shared/copy-paste/plugin-webflow/style-presets.css ./app/shared/copy-paste/plugin-webflow/__generated__/style-presets.ts",
"start": "remix-serve build/server/index.js",
"build:http-client": "pnpm --filter=@webstudio-is/http-client build",
"dev": "pnpm build:http-client && remix vite:dev",
"dev:auth": "pnpm build:http-client && DEBUG=OAuth2Strategy,ws:* remix vite:dev",
"typecheck": "tsc --noEmit --emitDeclarationOnly false",
"test": "pnpm build:http-client && vitest run"
},
"dependencies": {
"@atlaskit/pragmatic-drag-and-drop": "^1.3.1",
"@codemirror/autocomplete": "^6.18.1",
"@codemirror/commands": "^6.7.1",
"@codemirror/lang-css": "^6.3.0",
"@codemirror/lang-html": "^6.4.9",
"@codemirror/lang-javascript": "^6.2.2",
"@codemirror/lang-markdown": "^6.3.0",
"@codemirror/language": "^6.10.3",
"@codemirror/lint": "^6.8.2",
"@codemirror/state": "^6.4.1",
"@codemirror/view": "^6.34.1",
"@floating-ui/dom": "^1.6.11",
"@fontsource-variable/inter": "^5.0.20",
"@fontsource-variable/manrope": "^5.0.20",
"@fontsource/roboto-mono": "^5.0.18",
"@lexical/headless": "^0.16.0",
"@lexical/link": "^0.16.0",
"@lexical/react": "^0.16.0",
"@lexical/selection": "^0.16.0",
"@lexical/utils": "^0.16.0",
"@lezer/common": "^1.2.3",
"@lezer/css": "^1.1.9",
"@lezer/highlight": "^1.2.1",
"@nanostores/react": "^0.7.1",
"@radix-ui/react-select": "^2.1.2",
"@radix-ui/react-tooltip": "^1.1.3",
"@react-aria/interactions": "^3.22.4",
"@react-aria/utils": "^3.25.3",
"@remix-run/node": "^2.14.0",
"@remix-run/react": "^2.14.0",
"@remix-run/serve": "^2.14.0",
"@remix-run/server-runtime": "^2.14.0",
"@trpc/client": "^10.45.2",
"@trpc/server": "^10.45.2",
"@tsndr/cloudflare-worker-jwt": "^2.5.3",
"@vercel/remix": "2.14.0",
"@webstudio-is/ai": "workspace:*",
"@webstudio-is/asset-uploader": "workspace:*",
"@webstudio-is/authorization-token": "workspace:*",
"@webstudio-is/css-data": "workspace:*",
"@webstudio-is/css-engine": "workspace:*",
"@webstudio-is/dashboard": "workspace:*",
"@webstudio-is/design-system": "workspace:*",
"@webstudio-is/domain": "workspace:*",
"@webstudio-is/feature-flags": "workspace:*",
"@webstudio-is/fonts": "workspace:*",
"@webstudio-is/http-client": "workspace:*",
"@webstudio-is/icons": "workspace:*",
"@webstudio-is/image": "workspace:*",
"@webstudio-is/postrest": "workspace:*",
"@webstudio-is/project": "workspace:*",
"@webstudio-is/project-build": "workspace:*",
"@webstudio-is/react-sdk": "workspace:*",
"@webstudio-is/sdk": "workspace:*",
"@webstudio-is/sdk-components-react": "workspace:*",
"@webstudio-is/sdk-components-react-radix": "workspace:*",
"@webstudio-is/sdk-components-react-remix": "workspace:*",
"@webstudio-is/trpc-interface": "workspace:*",
"arrgv": "^1.0.2",
"bcp-47": "^2.1.0",
"change-case": "^5.4.4",
"colord": "^2.9.3",
"cookie": "^1.0.1",
"css-tree": "^2.3.1",
"date-fns": "^3.6.0",
"debug": "^4.3.7",
"detect-font": "^0.1.5",
"downshift": "^6.1.7",
"fast-deep-equal": "^3.1.3",
"immer": "^10.1.1",
"immerhin": "^0.10.0",
"isbot": "^5.1.17",
"lexical": "^0.16.0",
"match-sorter": "^8.0.0",
"mdast-util-from-markdown": "^2.0.1",
"mdast-util-gfm": "^3.0.0",
"micromark-extension-gfm": "^3.0.0",
"nanoevents": "^9.1.0",
"nanoid": "^5.0.8",
"nanostores": "^0.9.3",
"picocolors": "^1.1.0",
"pretty-bytes": "^6.1.1",
"react": "18.3.0-canary-14898b6a9-20240318",
"react-colorful": "^5.6.1",
"react-dom": "18.3.0-canary-14898b6a9-20240318",
"react-error-boundary": "^4.1.2",
"react-script-hook": "^1.7.2",
"remix-auth": "^3.7.0",
"remix-auth-form": "^1.5.0",
"remix-auth-github": "^1.7.0",
"remix-auth-google": "^2.0.0",
"remix-auth-oauth2": "^2.3.0",
"shallow-equal": "^3.1.0",
"slugify": "^1.6.6",
"strip-indent": "^4.0.0",
"tiny-invariant": "^1.3.3",
"title-case": "^4.3.2",
"ultraflag": "^0.1.0",
"untruncate-json": "^0.0.1",
"urlpattern-polyfill": "^9.0.0",
"use-debounce": "^9.0.4",
"warn-once": "^0.1.1",
"zod": "^3.22.4",
"zod-validation-error": "^3.3.1"
},
"devDependencies": {
"@remix-run/dev": "^2.14.0",
"@types/debug": "^4.1.12",
"@types/dom-navigation": "^1.0.4",
"@types/react": "^18.2.70",
"@types/react-dom": "^18.2.25",
"@webstudio-is/tsconfig": "workspace:*",
"html-tags": "^4.0.0",
"react-router-dom": "^6.28.0",
"react-test-renderer": "18.3.0-canary-14898b6a9-20240318",
"type-fest": "^4.26.1",
"typescript": "5.6.3",
"vite": "^5.4.11",
"vitest": "^2.1.4"
},
"sideEffects": false,
"license": "AGPL-3.0-or-later"
}