human2ai 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +51 -28
- package/README.md +51 -28
- package/dist/cli/main.js +33 -21
- package/dist/cli/main.js.map +1 -1
- package/dist/database/composition-session-repository.d.ts +2 -0
- package/dist/database/composition-session-repository.js +1 -0
- package/dist/database/composition-session-repository.js.map +1 -1
- package/dist/database/draft-version-store.d.ts +8 -1
- package/dist/database/draft-version-store.js +21 -4
- package/dist/database/draft-version-store.js.map +1 -1
- package/dist/database/project-session-repository.d.ts +24 -1
- package/dist/database/project-session-repository.js +80 -0
- package/dist/database/project-session-repository.js.map +1 -1
- package/dist/database/session-preview-validation.d.ts +3 -0
- package/dist/database/session-preview-validation.js +44 -0
- package/dist/database/session-preview-validation.js.map +1 -0
- package/dist/database/spatial-session-repository.d.ts +2 -0
- package/dist/database/spatial-session-repository.js +1 -0
- package/dist/database/spatial-session-repository.js.map +1 -1
- package/dist/database/svg-input.js +9 -1
- package/dist/database/svg-input.js.map +1 -1
- package/dist/database/ui-sketch-session-repository.d.ts +3 -0
- package/dist/database/ui-sketch-session-repository.js +6 -0
- package/dist/database/ui-sketch-session-repository.js.map +1 -1
- package/dist/domain/canvas-frame.d.ts +15 -0
- package/dist/domain/canvas-frame.js +24 -0
- package/dist/domain/canvas-frame.js.map +1 -0
- package/dist/domain/canvas-node-tone.d.ts +1 -0
- package/dist/domain/canvas-node-tone.js +9 -0
- package/dist/domain/canvas-node-tone.js.map +1 -0
- package/dist/domain/canvas-shape-overlap.d.ts +12 -0
- package/dist/domain/canvas-shape-overlap.js +79 -0
- package/dist/domain/canvas-shape-overlap.js.map +1 -0
- package/dist/domain/composition/analysis.d.ts +1 -0
- package/dist/domain/composition/analysis.js +6 -3
- package/dist/domain/composition/analysis.js.map +1 -1
- package/dist/domain/composition/draft.d.ts +6 -1
- package/dist/domain/composition/draft.js +42 -27
- package/dist/domain/composition/draft.js.map +1 -1
- package/dist/domain/composition/frame.d.ts +5 -8
- package/dist/domain/composition/frame.js +21 -68
- package/dist/domain/composition/frame.js.map +1 -1
- package/dist/domain/composition/index.d.ts +3 -3
- package/dist/domain/composition/index.js +3 -3
- package/dist/domain/composition/index.js.map +1 -1
- package/dist/domain/composition/raster.d.ts +2 -0
- package/dist/domain/composition/raster.js +19 -0
- package/dist/domain/composition/raster.js.map +1 -0
- package/dist/domain/composition/refinement/engine.js +1 -0
- package/dist/domain/composition/refinement/engine.js.map +1 -1
- package/dist/domain/composition/refinement/types.d.ts +1 -0
- package/dist/domain/composition/render.d.ts +6 -0
- package/dist/domain/composition/render.js +84 -20
- package/dist/domain/composition/render.js.map +1 -1
- package/dist/domain/composition/states.js +14 -8
- package/dist/domain/composition/states.js.map +1 -1
- package/dist/domain/composition/text-warp.d.ts +8 -0
- package/dist/domain/composition/text-warp.js +60 -0
- package/dist/domain/composition/text-warp.js.map +1 -0
- package/dist/domain/composition/types.d.ts +9 -4
- package/dist/domain/session/canvas-edit-history.d.ts +2 -0
- package/dist/domain/session/canvas-edit-history.js +2 -0
- package/dist/domain/session/canvas-edit-history.js.map +1 -1
- package/dist/domain/session/preview.d.ts +16 -0
- package/dist/domain/session/preview.js +48 -0
- package/dist/domain/session/preview.js.map +1 -0
- package/dist/domain/session/types.d.ts +8 -0
- package/dist/domain/ui-sketch/appearance.d.ts +12 -0
- package/dist/domain/ui-sketch/appearance.js +24 -0
- package/dist/domain/ui-sketch/appearance.js.map +1 -0
- package/dist/domain/ui-sketch/draft.js +3 -1
- package/dist/domain/ui-sketch/draft.js.map +1 -1
- package/dist/domain/ui-sketch/render.js +21 -17
- package/dist/domain/ui-sketch/render.js.map +1 -1
- package/dist/domain/ui-sketch/session-preview.d.ts +27 -0
- package/dist/domain/ui-sketch/session-preview.js +43 -0
- package/dist/domain/ui-sketch/session-preview.js.map +1 -0
- package/dist/domain/ui-sketch/types.d.ts +2 -0
- package/dist/server/app.d.ts +1 -1
- package/dist/server/app.js +8 -0
- package/dist/server/app.js.map +1 -1
- package/dist/server/routes/project-sessions.js +47 -3
- package/dist/server/routes/project-sessions.js.map +1 -1
- package/dist/server/routes/session-previews.d.ts +3 -0
- package/dist/server/routes/session-previews.js +104 -0
- package/dist/server/routes/session-previews.js.map +1 -0
- package/dist/server/session-preview-service.d.ts +55 -0
- package/dist/server/session-preview-service.js +255 -0
- package/dist/server/session-preview-service.js.map +1 -0
- package/locales/en/common.json +59 -6
- package/migrations/0011_session_groups.sql +21 -0
- package/package.json +1 -1
- package/schemas/composition-draft.schema.json +11 -2
- package/schemas/ui-sketch-draft.schema.json +85 -0
- package/skills/human2ai/SKILL.md +1 -1
- package/skills/human2ai/references/composition-projection.md +5 -3
- package/skills/human2ai/references/composition.md +51 -10
- package/skills/human2ai/references/ui-layout.md +7 -1
- package/web/out/404/index.html +1 -1
- package/web/out/404.html +1 -1
- package/web/out/__next.__PAGE__.txt +14 -13
- package/web/out/__next._full.txt +23 -22
- package/web/out/__next._tree.txt +5 -5
- package/web/out/_next/static/chunks/{380-6a6a9517cf13350e.js → 164-d8dd2b053f27bf62.js} +30 -30
- package/web/out/_next/static/chunks/348-6baeec6b3dbf02ab.js +1 -0
- package/web/out/_next/static/chunks/app/_not-found/page-742cf440bebb3b9b.js +1 -0
- package/web/out/_next/static/chunks/app/composition/page-8d037a4b99bb5546.js +1 -0
- package/web/out/_next/static/chunks/app/layout-ca2f61a5a618caea.js +1 -0
- package/web/out/_next/static/chunks/app/{page-b027a8ffdb9dda66.js → page-9b8bd42a93c9242c.js} +1 -1
- package/web/out/_next/static/chunks/app/spatial/page-1d16089ca24b2eb8.js +1 -0
- package/web/out/_next/static/chunks/app/styles/{page-87d77b1f3e8fdd21.js → page-e4d3c95957349351.js} +1 -1
- package/web/out/_next/static/chunks/app/ui-sketch/page-23e5c3b12d99082c.js +1 -0
- package/web/out/_next/static/chunks/main-app-5419a575f3ff4496.js +1 -0
- package/web/out/_next/static/chunks/next/dist/client/components/builtin/global-error-15f5118ed5e001a8.js +1 -0
- package/web/out/_next/static/chunks/webpack-e781b4e158568ba0.js +1 -0
- package/web/out/_next/static/css/{d42ebb6745c15e30.css → 210db1811016f805.css} +1 -1
- package/web/out/_next/static/css/2160a6bbf2cb551c.css +1 -0
- package/web/out/_next/static/css/{db78da93b4de5040.css → 28a4978acacc40b0.css} +1 -1
- package/web/out/_next/static/css/{c739d0131cdcc891.css → 2a0db06638359895.css} +1 -1
- package/web/out/_next/static/css/4b1f9941c214d619.css +5 -0
- package/web/out/_next/static/css/9c61ee5fe683073a.css +1 -0
- package/web/out/_not-found/__next._full.txt +21 -18
- package/web/out/_not-found/__next._not-found.__PAGE__.txt +11 -8
- package/web/out/_not-found/__next._tree.txt +5 -3
- package/web/out/_not-found/index.html +1 -1
- package/web/out/_not-found/index.txt +21 -18
- package/web/out/composition/__next._full.txt +26 -26
- package/web/out/composition/__next._tree.txt +6 -7
- package/web/out/composition/__next.composition.__PAGE__.txt +13 -13
- package/web/out/composition/index.html +1 -1
- package/web/out/composition/index.txt +26 -26
- package/web/out/index.html +1 -1
- package/web/out/index.txt +23 -22
- package/web/out/spatial/__next._full.txt +25 -24
- package/web/out/spatial/__next._tree.txt +5 -5
- package/web/out/spatial/__next.spatial.__PAGE__.txt +12 -11
- package/web/out/spatial/index.html +1 -1
- package/web/out/spatial/index.txt +25 -24
- package/web/out/styles/__next._full.txt +25 -24
- package/web/out/styles/__next._tree.txt +5 -5
- package/web/out/styles/__next.styles.__PAGE__.txt +12 -11
- package/web/out/styles/index.html +1 -1
- package/web/out/styles/index.txt +25 -24
- package/web/out/ui-sketch/__next._full.txt +26 -26
- package/web/out/ui-sketch/__next._tree.txt +6 -7
- package/web/out/ui-sketch/__next.ui-sketch.__PAGE__.txt +13 -13
- package/web/out/ui-sketch/index.html +1 -1
- package/web/out/ui-sketch/index.txt +26 -26
- package/web/out/_next/static/chunks/130-930cfe062cda6fb5.js +0 -1
- package/web/out/_next/static/chunks/166-64abdc6456626378.js +0 -1
- package/web/out/_next/static/chunks/20-0801fc297cda2a7a.js +0 -1
- package/web/out/_next/static/chunks/678-6a688c1f8589183c.js +0 -1
- package/web/out/_next/static/chunks/app/_not-found/page-527a4b0506fa60cb.js +0 -1
- package/web/out/_next/static/chunks/app/composition/page-945cb9644c513407.js +0 -1
- package/web/out/_next/static/chunks/app/layout-33fe456f6115412e.js +0 -1
- package/web/out/_next/static/chunks/app/spatial/page-c52d564a39d3b592.js +0 -1
- package/web/out/_next/static/chunks/app/ui-sketch/page-69219e06cc93c28f.js +0 -1
- package/web/out/_next/static/chunks/main-app-4a71cca48ead7720.js +0 -1
- package/web/out/_next/static/chunks/next/dist/client/components/builtin/global-error-6a956dd8904b8723.js +0 -1
- package/web/out/_next/static/chunks/webpack-c0280e9af5fc8cd3.js +0 -1
- package/web/out/_next/static/css/0ab45995828642ec.css +0 -1
- package/web/out/_next/static/css/0c7915cdb1509f9d.css +0 -1
- package/web/out/_next/static/css/4fb1bde9070d5094.css +0 -5
- package/web/out/_next/static/css/d787350911847f22.css +0 -1
- /package/web/out/_next/static/{Rem7hlT5iXtA-5codwSoe → MtSBeMOcAQHxKAV1fmedM}/_buildManifest.js +0 -0
- /package/web/out/_next/static/{Rem7hlT5iXtA-5codwSoe → MtSBeMOcAQHxKAV1fmedM}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-session-repository.js","sourceRoot":"","sources":["../../src/database/project-session-repository.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project-session-repository.js","sourceRoot":"","sources":["../../src/database/project-session-repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACL,aAAa,GAMd,MAAM,4BAA4B,CAAC;AAyBpC,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAGxB;IAFZ,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YAAqB,SAAiB;QACpC,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QADtB,cAAS,GAAT,SAAS,CAAQ;IAEtC,CAAC;CACF;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAG5B;IAFZ,IAAI,GAAG,uBAAuB,CAAC;IAExC,YAAqB,IAAY;QAC/B,KAAK,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QAD3B,SAAI,GAAJ,IAAI,CAAQ;IAEjC,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAIlC;IACA;IAJF,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YACW,SAAiB,EACjB,YAAoB;QAE7B,KAAK,CAAC,oBAAoB,YAAY,gBAAgB,SAAS,EAAE,CAAC,CAAC;QAH1D,cAAS,GAAT,SAAS,CAAQ;QACjB,iBAAY,GAAZ,YAAY,CAAQ;IAG/B,CAAC;CACF;AAED,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAGxB;IAFZ,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YAAqB,SAAiB;QACpC,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;QADtB,cAAS,GAAT,SAAS,CAAQ;IAEtC,CAAC;CACF;AAED,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAInC;IACA;IAJF,IAAI,GAAG,mBAAmB,CAAC;IAEpC,YACW,gBAAwB,EACxB,cAAsB;QAE/B,KAAK,CAAC,qBAAqB,gBAAgB,cAAc,cAAc,EAAE,CAAC,CAAC;QAHlE,qBAAgB,GAAhB,gBAAgB,CAAQ;QACxB,mBAAc,GAAd,cAAc,CAAQ;IAGjC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,IAAI,GAAG,gBAAgB,CAAC;CAClC;AAED,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IACzC,IAAI,GAAG,yBAAyB,CAAC;IAC1C,YAAY,OAAe,IAAI,KAAK,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;CAC/E;AAED,MAAM,OAAO,6BAA8B,SAAQ,KAAK;IAC7C,IAAI,GAAG,6BAA6B,CAAC;IAC9C,YAAY,IAAY,IAAI,KAAK,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;CACnF;AAED,MAAM,OAAO,wBAAwB;IACN;IAA7B,YAA6B,QAA4B;QAA5B,aAAQ,GAAR,QAAQ,CAAoB;IAAG,CAAC;IAE7D,iBAAiB;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAClC,uFAAuF,CACxF,CAAC,GAAG,EAAE,CAAC;QACR,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CACnC,oGAAoG,CACrG,CAAC,GAAG,EAAE,CAAC;QACR,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;QAC5C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IAEO,eAAe,CAAC,OAAe;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CACjC,qFAAqF,CACtF,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,yBAAyB,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CACnC,2FAA2F,CAC5F,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACf,OAAO,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IACpE,CAAC;IAEO,gBAAgB,CAAC,SAAiB,EAAE,KAAa,EAAE,UAAU,GAAG,EAAE;QACxE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC;QACvD,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;YAAE,MAAM,IAAI,kBAAkB,CAAC,gCAAgC,CAAC,CAAC;QACtF,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,6EAA6E,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;YAC1I,MAAM,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB,CAAC,SAAiB,EAAE,KAAuB;QAC3D,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oEAAoE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACrH,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED,kBAAkB,CAAC,OAAe,EAAE,KAAiD;QACnF,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAC5C,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACvD,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACzE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,0EAA0E,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACrH,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED,kBAAkB,CAAC,OAAe,EAAE,KAAmC;QACrE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE;YAC7B,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/E,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChF,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED,eAAe,CAAC,SAAiB,EAAE,SAAiB,EAAE,OAAsB;QAC1E,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,EAAE,CAAC;gBACnH,MAAM,IAAI,kBAAkB,CAAC,mDAAmD,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACjG,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;6EAC+C,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACjG,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAED,YAAY;QACV,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ;aACvB,OAAO,CAAiB;;;;;;;;;;;;;OAaxB,CAAC;aACD,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ;aACtB,OAAO,CAAuB;;;;;;;;;;;;;OAa9B,CAAC;aACD,GAAG,CAAC,SAAS,CAAC,CAAC;QAClB,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACpD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,aAAa,CAAC,KAAoD;QAChE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACtD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ;aACV,OAAO,CACN;;mCAE2B,CAC5B;aACA,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,aAAa,CACX,SAAiB,EACjB,KAIC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,IAAI,GACR,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACrF,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI;YAAE,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC5E,MAAM,WAAW,GACf,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC1F,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ;aACV,OAAO,CACN;;uCAE+B,CAChC;aACA,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,aAAa,CACX,SAAiB,EACjB,KAAmC;QAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,QAAQ;aACV,OAAO,CACN;;wEAEgE,CACjE;aACA,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,sBAAsB;QACpB,OAAO,IAAI,CAAC,cAAc,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,mBAAmB,CAAC,SAAiB;QACnC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC,cAAc,CAAC,sBAAsB,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,UAAU,CAAC,SAAiB;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ;aACtB,OAAO,CAAuB,GAAG,cAAc,eAAe,CAAC;aAC/D,GAAG,CAAC,SAAS,CAAC,CAAC;QAClB,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACpD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,aAAa,CAAC,KAKb;QACC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,kBAAkB,CAAC,6BAA6B,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QACjF,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC;QAC1C,IAAI,SAAS;YAAE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAErC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE;YAC7B,IAAI,CAAC,QAAQ;iBACV,OAAO,CACN;;iDAEuC,CACxC;iBACA,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YAC1D,IAAI,KAAK,CAAC,WAAW,KAAK,mBAAmB,EAAE,CAAC;gBAC9C,IAAI,CAAC,QAAQ;qBACV,OAAO,CAAC,0DAA0D,CAAC;qBACnE,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,CAAC;iBAAM,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sDAAsD,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAChC,IAAI,CAAC,SAAS;oBAAE,MAAM,IAAI,kBAAkB,CAAC,mDAAmD,CAAC,CAAC;gBAClG,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACrD,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED,WAAW,CACT,SAAiB,EACjB,KAA6D;QAE7D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,SAAS;YAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC;QAE1D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ;aACV,OAAO,CACN;;uCAE+B,CAChC;aACA,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,aAAa,CACX,SAAiB,EACjB,KAAkD;QAElD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;QACzD,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK;YAAE,OAAO,OAAO,CAAC;QAE5C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ;aACV,OAAO,CACN;;uCAE+B,CAChC;aACA,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,aAAa,CACX,SAAiB,EACjB,KAAmC;QAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3C,cAAc,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ;aACV,OAAO,CAAC,oDAAoD,CAAC;aAC7D,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAEO,cAAc,CAAC,KAAa,EAAE,UAAoB;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ;aACvB,OAAO,CAAuB,GAAG,cAAc,IAAI,KAAK,+BAA+B,CAAC;aACxF,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAEO,0BAA0B,CAAC,IAAY,EAAE,iBAA0B;QACzE,MAAM,QAAQ,GAAG,iBAAiB;YAChC,CAAC,CAAC,IAAI,CAAC,QAAQ;iBACV,OAAO,CACN,4DAA4D,CAC7D;iBACA,GAAG,CAAC,IAAI,EAAE,iBAAiB,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC,QAAQ;iBACV,OAAO,CACN,gDAAgD,CACjD;iBACA,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,QAAQ;YAAE,MAAM,IAAI,wBAAwB,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;CACF;AAED,MAAM,cAAc,GAAG;;;;;;;;;;;;CAYtB,CAAC;AAEF,SAAS,UAAU,CAAC,GAAe;IACjC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,GAAe;IACjC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,OAAO,EAAE,GAAG,CAAC,QAAQ;QACrB,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,cAAc,EAAE,GAAG,CAAC,eAAe;QACnC,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,SAAS,EAAE,GAAG,CAAC,UAAU;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,KAAa;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,kBAAkB,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;IACvE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,KAAgC;IACpD,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,IAAI,IAAI,CAAC;AACzB,CAAC;AAED,SAAS,cAAc,CAAC,gBAAwB,EAAE,cAAsB;IACtE,IAAI,gBAAgB,KAAK,cAAc,EAAE,CAAC;QACxC,MAAM,IAAI,qBAAqB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IACpE,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { DatabaseConnection } from "./migrate.ts";
|
|
2
|
+
import type { UiSketchDraft } from "../domain/ui-sketch/types.ts";
|
|
3
|
+
export declare function validateSessionPreviewReferences(database: DatabaseConnection, ownerId: string, draft: UiSketchDraft, previous?: UiSketchDraft): void;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { InvalidRecordError } from "./project-session-repository.js";
|
|
2
|
+
import { previewSourceKey } from "../domain/session/preview.js";
|
|
3
|
+
export function validateSessionPreviewReferences(database, ownerId, draft, previous) {
|
|
4
|
+
const owner = database.prepare("SELECT project_id FROM sessions WHERE id = ?").get(ownerId);
|
|
5
|
+
for (const image of draft.images) {
|
|
6
|
+
const ref = image.previewReference;
|
|
7
|
+
if (!ref)
|
|
8
|
+
continue;
|
|
9
|
+
if (ref.sessionId === ownerId)
|
|
10
|
+
throw new InvalidRecordError("A session preview cannot reference its own session.");
|
|
11
|
+
if (!image.assetId || !database.prepare("SELECT id FROM image_assets WHERE id = ? AND session_id = ?").get(image.assetId, ownerId)) {
|
|
12
|
+
throw new InvalidRecordError("Session previews require an image owned by the destination session.");
|
|
13
|
+
}
|
|
14
|
+
const source = database.prepare("SELECT project_id, session_type FROM sessions WHERE id = ?").get(ref.sessionId);
|
|
15
|
+
if (!source || !owner.project_id || owner.project_id !== source.project_id || source.session_type !== ref.sessionType) {
|
|
16
|
+
// Retain or restore only an exact destination-owned historical snapshot.
|
|
17
|
+
// This also covers local undo submitted through the normal save endpoint.
|
|
18
|
+
if (previous?.images.some(before => before.assetId === image.assetId && before.previewReference
|
|
19
|
+
&& previewSourceKey(before.previewReference) === previewSourceKey(ref) && before.previewReference.renderedRevision === ref.renderedRevision))
|
|
20
|
+
continue;
|
|
21
|
+
const retained = database.prepare(`SELECT 1 FROM ui_sketch_draft_versions v, json_each(v.draft_json, '$.images') image
|
|
22
|
+
WHERE v.session_id = ? AND json_extract(image.value, '$.assetId') = ?
|
|
23
|
+
AND json_extract(image.value, '$.previewReference.sessionId') = ?
|
|
24
|
+
AND json_extract(image.value, '$.previewReference.sessionType') = ?
|
|
25
|
+
AND json_extract(image.value, '$.previewReference.renderedRevision') = ?
|
|
26
|
+
AND coalesce(json_extract(image.value, '$.previewReference.stateId'), json_extract(image.value, '$.previewReference.cameraId')) = ? LIMIT 1`)
|
|
27
|
+
.get(ownerId, image.assetId, ref.sessionId, ref.sessionType, ref.renderedRevision, ref.sessionType === "spatial" ? ref.cameraId : ref.stateId);
|
|
28
|
+
if (retained)
|
|
29
|
+
continue;
|
|
30
|
+
throw new InvalidRecordError("Session previews require another session of the specified type in the same project.");
|
|
31
|
+
}
|
|
32
|
+
const table = ref.sessionType === "spatial" ? "spatial_draft_versions" : ref.sessionType === "ui-layout" ? "ui_sketch_draft_versions" : "composition_draft_versions";
|
|
33
|
+
const row = database.prepare(`SELECT draft_json FROM ${table} WHERE session_id = ? AND revision = ?`).get(ref.sessionId, ref.renderedRevision);
|
|
34
|
+
if (!row)
|
|
35
|
+
throw new InvalidRecordError("The preview source revision does not exist.");
|
|
36
|
+
const content = JSON.parse(row.draft_json);
|
|
37
|
+
const ids = ref.sessionType === "spatial" ? content.cameras.map((c) => c.id)
|
|
38
|
+
: ref.sessionType === "ui-layout" ? content.stateTabs?.map((s) => s.id) ?? ["start", ...content.stages.map((s) => s.id)]
|
|
39
|
+
: content.states?.map((s) => s.id) ?? ["state-1"];
|
|
40
|
+
if (!ids.includes(ref.sessionType === "spatial" ? ref.cameraId : ref.stateId))
|
|
41
|
+
throw new InvalidRecordError("The selected preview output does not exist.");
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=session-preview-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-preview-validation.js","sourceRoot":"","sources":["../../src/database/session-preview-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { RestoreDraftVersionInput } from "../domain/session/index.ts";
|
|
2
|
+
import { type DraftSavedEvent } from "./draft-version-store.ts";
|
|
2
3
|
import type { DatabaseConnection } from "./migrate.ts";
|
|
3
4
|
import type { CreateDraftVersionInput, UndoDraftVersionInput } from "../domain/session/index.ts";
|
|
4
5
|
import { type SpatialDraft, type SpatialOperation } from "../domain/spatial/index.ts";
|
|
@@ -8,6 +9,7 @@ export declare class SpatialSessionRepository {
|
|
|
8
9
|
private applyingOperations;
|
|
9
10
|
constructor(database: DatabaseConnection);
|
|
10
11
|
listDraftVersions(sessionId: string): import("../domain/session/draft-version.ts").DraftVersion<SpatialDraft>[];
|
|
12
|
+
onDraftSaved(listener: (event: DraftSavedEvent<SpatialDraft>) => void): () => void;
|
|
11
13
|
getLatestDraftVersion(sessionId: string, knownRevision?: number): import("../domain/session/draft-version.ts").DraftVersion<SpatialDraft> | null;
|
|
12
14
|
getDraftVersion(sessionId: string, revision: number): import("../domain/session/draft-version.ts").DraftVersion<SpatialDraft>;
|
|
13
15
|
createDraftVersion(sessionId: string, input: CreateDraftVersionInput): import("../domain/session/draft-version.ts").DraftVersion<SpatialDraft>;
|
|
@@ -15,6 +15,7 @@ export class SpatialSessionRepository {
|
|
|
15
15
|
});
|
|
16
16
|
}
|
|
17
17
|
listDraftVersions(sessionId) { return this.draftVersions.listDraftVersions(sessionId); }
|
|
18
|
+
onDraftSaved(listener) { return this.draftVersions.onSaved(listener); }
|
|
18
19
|
getLatestDraftVersion(sessionId, knownRevision) { return this.draftVersions.getLatestDraftVersion(sessionId, knownRevision); }
|
|
19
20
|
getDraftVersion(sessionId, revision) { return this.draftVersions.getDraftVersion(sessionId, revision); }
|
|
20
21
|
createDraftVersion(sessionId, input) { return this.draftVersions.createDraftVersion(sessionId, input); }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spatial-session-repository.js","sourceRoot":"","sources":["../../src/database/spatial-session-repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"spatial-session-repository.js","sourceRoot":"","sources":["../../src/database/spatial-session-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,11 @@ const elements = new Set([
|
|
|
13
13
|
]);
|
|
14
14
|
// Image nodes accept portable static SVG, without executing or fetching content.
|
|
15
15
|
export function isSelfContainedSvg(data) {
|
|
16
|
+
return validateSvg(data, 0);
|
|
17
|
+
}
|
|
18
|
+
function validateSvg(data, imageDepth) {
|
|
19
|
+
if (imageDepth > 32)
|
|
20
|
+
return false;
|
|
16
21
|
try {
|
|
17
22
|
const source = new TextDecoder("utf-8", { fatal: true }).decode(data);
|
|
18
23
|
const parser = new SaxesParser({ xmlns: true });
|
|
@@ -42,7 +47,10 @@ export function isSelfContainedSvg(data) {
|
|
|
42
47
|
const localReference = /^#[^\s]+$/.test(value);
|
|
43
48
|
const embeddedBitmap = tag.local === "image"
|
|
44
49
|
&& /^data:image\/(?:png|jpeg|webp);base64,[a-z\d+/=\s]+$/i.test(value);
|
|
45
|
-
|
|
50
|
+
const embeddedSvg = tag.local === "image"
|
|
51
|
+
&& /^data:image\/svg\+xml;base64,[a-z\d+/=\s]+$/i.test(value)
|
|
52
|
+
&& validateSvg(Buffer.from(value.slice(value.indexOf(",") + 1), "base64"), imageDepth + 1);
|
|
53
|
+
if (!localReference && !embeddedBitmap && !embeddedSvg)
|
|
46
54
|
reject();
|
|
47
55
|
}
|
|
48
56
|
if (["style", "fill", "stroke", "filter", "clip-path", "mask", "marker", "marker-start", "marker-mid", "marker-end", "cursor"].includes(attribute.local)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"svg-input.js","sourceRoot":"","sources":["../../src/database/svg-input.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"svg-input.js","sourceRoot":"","sources":["../../src/database/svg-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,13 @@ import { type UiSketchDraftVersion } from "../domain/ui-sketch/index.ts";
|
|
|
3
3
|
import type { UiSketchDraft } from "../domain/ui-sketch/index.ts";
|
|
4
4
|
import type { CreateDraftVersionInput } from "../domain/session/index.ts";
|
|
5
5
|
import type { DatabaseConnection } from "./migrate.ts";
|
|
6
|
+
import type { DraftSavedEvent } from "./draft-version-store.ts";
|
|
6
7
|
export { DraftRevisionConflictError as UiSketchDraftRevisionConflictError, DraftSessionTypeMismatchError as UiSketchSessionRequiredError, DraftVersionNotFoundError as UiSketchDraftVersionNotFoundError, } from "./draft-version-errors.ts";
|
|
7
8
|
export declare class UiSketchSessionRepository {
|
|
8
9
|
private readonly draftVersions;
|
|
9
10
|
constructor(database: DatabaseConnection);
|
|
11
|
+
onDraftSaved(listener: (event: DraftSavedEvent<UiSketchDraft>) => void): () => void;
|
|
12
|
+
refreshPreviewVersion(sessionId: string, input: CreateDraftVersionInput, batchId: string): import("../domain/session/draft-version.ts").DraftVersion<UiSketchDraft>;
|
|
10
13
|
listDraftVersions(sessionId: string): UiSketchDraftVersion[];
|
|
11
14
|
getDraftVersion(sessionId: string, revision: number): UiSketchDraftVersion;
|
|
12
15
|
getLatestDraftVersion(sessionId: string, knownRevision?: number): UiSketchDraftVersion | null;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { uiSketchDraftFingerprint, validateUiSketchDraft, } from "../domain/ui-sketch/index.js";
|
|
2
2
|
import { DraftVersionStore } from "./draft-version-store.js";
|
|
3
|
+
import { validateSessionPreviewReferences } from "./session-preview-validation.js";
|
|
3
4
|
export { DraftRevisionConflictError as UiSketchDraftRevisionConflictError, DraftSessionTypeMismatchError as UiSketchSessionRequiredError, DraftVersionNotFoundError as UiSketchDraftVersionNotFoundError, } from "./draft-version-errors.js";
|
|
4
5
|
export class UiSketchSessionRepository {
|
|
5
6
|
draftVersions;
|
|
@@ -11,8 +12,13 @@ export class UiSketchSessionRepository {
|
|
|
11
12
|
sessionLabel: "UI sketch session",
|
|
12
13
|
validateDraft: validateUiSketchDraft,
|
|
13
14
|
fingerprint: uiSketchDraftFingerprint,
|
|
15
|
+
validateSessionDraft: (id, draft, previous) => validateSessionPreviewReferences(database, id, draft, previous),
|
|
14
16
|
});
|
|
15
17
|
}
|
|
18
|
+
onDraftSaved(listener) { return this.draftVersions.onSaved(listener); }
|
|
19
|
+
refreshPreviewVersion(sessionId, input, batchId) {
|
|
20
|
+
return this.draftVersions.createDraftVersion(sessionId, input, batchId);
|
|
21
|
+
}
|
|
16
22
|
listDraftVersions(sessionId) {
|
|
17
23
|
return this.draftVersions.listDraftVersions(sessionId);
|
|
18
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-sketch-session-repository.js","sourceRoot":"","sources":["../../src/database/ui-sketch-session-repository.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GAEtB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ui-sketch-session-repository.js","sourceRoot":"","sources":["../../src/database/ui-sketch-session-repository.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,qBAAqB,GAEtB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AAGnF,OAAO,EACL,0BAA0B,IAAI,kCAAkC,EAChE,6BAA6B,IAAI,4BAA4B,EAC7D,yBAAyB,IAAI,iCAAiC,GAC/D,MAAM,2BAA2B,CAAC;AAEnC,MAAM,OAAO,yBAAyB;IACnB,aAAa,CAAmC;IAEjE,YAAY,QAA4B;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,iBAAiB,CAAgB,QAAQ,EAAE;YAClE,KAAK,EAAE,0BAA0B;YACjC,iBAAiB,EAAE,KAAK;YACxB,WAAW,EAAE,WAAW;YACxB,YAAY,EAAE,mBAAmB;YACjC,aAAa,EAAE,qBAAqB;YACpC,WAAW,EAAE,wBAAwB;YACrC,oBAAoB,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,gCAAgC,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC;SAC/G,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,QAAyD,IAAI,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAExH,qBAAqB,CAAC,SAAiB,EAAE,KAA8B,EAAE,OAAe;QACtF,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED,iBAAiB,CAAC,SAAiB;QACjC,OAAO,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACzD,CAAC;IAED,eAAe,CAAC,SAAiB,EAAE,QAAgB;QACjD,OAAO,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC;IAED,qBAAqB,CAAC,SAAiB,EAAE,aAAsB;QAC7D,OAAO,IAAI,CAAC,aAAa,CAAC,qBAAqB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAC5E,CAAC;IAED,kBAAkB,CAChB,SAAiB,EACjB,KAA8B;QAE9B,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,mBAAmB,CAAC,SAAiB,EAAE,KAA+B;QACpE,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;IAED,gBAAgB,CACd,SAAiB,EACjB,KAAiE;QAEjE,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface CanvasFrameSize {
|
|
2
|
+
width: number;
|
|
3
|
+
height: number;
|
|
4
|
+
}
|
|
5
|
+
export interface CanvasFrameBounds extends CanvasFrameSize {
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const MINIMUM_CANVAS_FRAME_SIZE = 10;
|
|
10
|
+
export declare const DEFAULT_CANVAS_FRAME: Readonly<CanvasFrameBounds>;
|
|
11
|
+
/** Pointer edits use the UI editor's integer pixel bounds. */
|
|
12
|
+
export declare function canvasFrameAtBounds(bounds: CanvasFrameBounds): CanvasFrameBounds;
|
|
13
|
+
/** Numeric edits keep the center; incomplete or too-small input is not committed. */
|
|
14
|
+
export declare function resizeCanvasFrame(frame: CanvasFrameBounds, size: CanvasFrameSize): CanvasFrameBounds;
|
|
15
|
+
export declare function canvasFrameForRatio(frame: CanvasFrameBounds, ratio: CanvasFrameSize): CanvasFrameBounds;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export const MINIMUM_CANVAS_FRAME_SIZE = 10;
|
|
2
|
+
export const DEFAULT_CANVAS_FRAME = Object.freeze({ x: 0, y: 0, width: 960, height: 560 });
|
|
3
|
+
/** Pointer edits use the UI editor's integer pixel bounds. */
|
|
4
|
+
export function canvasFrameAtBounds(bounds) {
|
|
5
|
+
return {
|
|
6
|
+
x: Math.round(bounds.x), y: Math.round(bounds.y),
|
|
7
|
+
width: Math.max(MINIMUM_CANVAS_FRAME_SIZE, Math.round(bounds.width)),
|
|
8
|
+
height: Math.max(MINIMUM_CANVAS_FRAME_SIZE, Math.round(bounds.height)),
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
/** Numeric edits keep the center; incomplete or too-small input is not committed. */
|
|
12
|
+
export function resizeCanvasFrame(frame, size) {
|
|
13
|
+
const width = Math.round(size.width), height = Math.round(size.height);
|
|
14
|
+
if (!Number.isFinite(width) || !Number.isFinite(height)
|
|
15
|
+
|| width < MINIMUM_CANVAS_FRAME_SIZE || height < MINIMUM_CANVAS_FRAME_SIZE)
|
|
16
|
+
return frame;
|
|
17
|
+
if (width === frame.width && height === frame.height)
|
|
18
|
+
return frame;
|
|
19
|
+
return { x: frame.x + (frame.width - width) / 2, y: frame.y + (frame.height - height) / 2, width, height };
|
|
20
|
+
}
|
|
21
|
+
export function canvasFrameForRatio(frame, ratio) {
|
|
22
|
+
return resizeCanvasFrame(frame, { width: frame.width, height: frame.width * ratio.height / ratio.width });
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=canvas-frame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvas-frame.js","sourceRoot":"","sources":["../../src/domain/canvas-frame.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAC5C,MAAM,CAAC,MAAM,oBAAoB,GAAgC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;AAExH,8DAA8D;AAC9D,MAAM,UAAU,mBAAmB,CAAC,MAAyB;IAC3D,OAAO;QACL,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAChD,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KACvE,CAAC;AACJ,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,iBAAiB,CAAC,KAAwB,EAAE,IAAqB;IAC/E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;WAClD,KAAK,GAAG,yBAAyB,IAAI,MAAM,GAAG,yBAAyB;QAAE,OAAO,KAAK,CAAC;IAC3F,IAAI,KAAK,KAAK,KAAK,CAAC,KAAK,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACnE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC7G,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAwB,EAAE,KAAsB;IAClF,OAAO,iBAAiB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;AAC5G,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function canvasNodeTone(id: string): number;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// Keep a node's marker stable across deletion, reordering and state changes.
|
|
2
|
+
export function canvasNodeTone(id) {
|
|
3
|
+
let hash = 0;
|
|
4
|
+
for (let index = 0; index < id.length; index += 1) {
|
|
5
|
+
hash = (Math.imul(hash, 31) + id.charCodeAt(index)) >>> 0;
|
|
6
|
+
}
|
|
7
|
+
return hash % 6;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=canvas-node-tone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvas-node-tone.js","sourceRoot":"","sources":["../../src/domain/canvas-node-tone.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAClD,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface CanvasOutlinePoint {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
export interface CanvasOverlapShape {
|
|
6
|
+
id: string;
|
|
7
|
+
tone: number;
|
|
8
|
+
geometry: readonly unknown[];
|
|
9
|
+
outline: () => readonly CanvasOutlinePoint[];
|
|
10
|
+
}
|
|
11
|
+
export declare function createCanvasShapeOverlap(): (shapes: readonly CanvasOverlapShape[]) => ReadonlySet<string>;
|
|
12
|
+
export declare function rectangleOutline(x: number, y: number, width: number, height: number): CanvasOutlinePoint[];
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
const EPSILON = 1e-7;
|
|
2
|
+
function contains(outer, inner) {
|
|
3
|
+
return inner.every((point) => {
|
|
4
|
+
let sign = 0;
|
|
5
|
+
for (let i = 0; i < outer.length; i += 1) {
|
|
6
|
+
const a = outer[i], b = outer[(i + 1) % outer.length];
|
|
7
|
+
const cross = (b.x - a.x) * (point.y - a.y) - (b.y - a.y) * (point.x - a.x);
|
|
8
|
+
if (Math.abs(cross) <= EPSILON)
|
|
9
|
+
continue;
|
|
10
|
+
if (sign && Math.sign(cross) !== sign)
|
|
11
|
+
return false;
|
|
12
|
+
sign = Math.sign(cross);
|
|
13
|
+
}
|
|
14
|
+
return true;
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function intersects(a, b) {
|
|
18
|
+
for (const polygon of [a, b]) {
|
|
19
|
+
for (let i = 0; i < polygon.length; i += 1) {
|
|
20
|
+
const start = polygon[i], end = polygon[(i + 1) % polygon.length];
|
|
21
|
+
const nx = end.y - start.y, ny = start.x - end.x;
|
|
22
|
+
const project = (points) => {
|
|
23
|
+
const values = points.map((point) => point.x * nx + point.y * ny);
|
|
24
|
+
return [Math.min(...values), Math.max(...values)];
|
|
25
|
+
};
|
|
26
|
+
const [amin, amax] = project(a), [bmin, bmax] = project(b);
|
|
27
|
+
if (Math.min(amax, bmax) - Math.max(amin, bmin) <= EPSILON)
|
|
28
|
+
return false;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return true;
|
|
32
|
+
}
|
|
33
|
+
// Recompute relations only for changed geometry. Deletion removes its incident
|
|
34
|
+
// relations; it never reconstructs surviving outlines or rechecks other pairs.
|
|
35
|
+
export function createCanvasShapeOverlap() {
|
|
36
|
+
const entries = new Map();
|
|
37
|
+
return (shapes) => {
|
|
38
|
+
const incoming = new Map(shapes.map((shape) => [shape.id, shape]));
|
|
39
|
+
const changed = new Set();
|
|
40
|
+
for (const [id, old] of entries) {
|
|
41
|
+
const next = incoming.get(id);
|
|
42
|
+
if (next && old.tone === next.tone && old.geometry.length === next.geometry.length && old.geometry.every((value, index) => Object.is(value, next.geometry[index])))
|
|
43
|
+
continue;
|
|
44
|
+
for (const peer of old.borders.keys())
|
|
45
|
+
entries.get(peer)?.borders.delete(id);
|
|
46
|
+
entries.delete(id);
|
|
47
|
+
}
|
|
48
|
+
for (const shape of shapes) {
|
|
49
|
+
if (entries.has(shape.id))
|
|
50
|
+
continue;
|
|
51
|
+
const points = shape.outline();
|
|
52
|
+
entries.set(shape.id, { ...shape, points, borders: new Map(), bounds: {
|
|
53
|
+
left: Math.min(...points.map((point) => point.x)), right: Math.max(...points.map((point) => point.x)),
|
|
54
|
+
top: Math.min(...points.map((point) => point.y)), bottom: Math.max(...points.map((point) => point.y)),
|
|
55
|
+
} });
|
|
56
|
+
changed.add(shape.id);
|
|
57
|
+
}
|
|
58
|
+
for (const id of changed) {
|
|
59
|
+
const a = entries.get(id);
|
|
60
|
+
for (const b of entries.values()) {
|
|
61
|
+
if (a.id === b.id || a.tone !== b.tone || (changed.has(b.id) && b.id < a.id))
|
|
62
|
+
continue;
|
|
63
|
+
if (a.bounds.right <= b.bounds.left || b.bounds.right <= a.bounds.left
|
|
64
|
+
|| a.bounds.bottom <= b.bounds.top || b.bounds.bottom <= a.bounds.top)
|
|
65
|
+
continue;
|
|
66
|
+
if (!intersects(a.points, b.points))
|
|
67
|
+
continue;
|
|
68
|
+
const aContainsB = contains(a.points, b.points), bContainsA = contains(b.points, a.points);
|
|
69
|
+
a.borders.set(b.id, !aContainsB || bContainsA);
|
|
70
|
+
b.borders.set(a.id, !bContainsA || aContainsB);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
return new Set([...entries.values()].filter((entry) => [...entry.borders.values()].some(Boolean)).map(({ id }) => id));
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export function rectangleOutline(x, y, width, height) {
|
|
77
|
+
return [{ x, y }, { x: x + width, y }, { x: x + width, y: y + height }, { x, y: y + height }];
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=canvas-shape-overlap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvas-shape-overlap.js","sourceRoot":"","sources":["../../src/domain/canvas-shape-overlap.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,GAAG,IAAI,CAAC;AAErB,SAAS,QAAQ,CAAC,KAAoC,EAAE,KAAoC;IAC1F,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,OAAO;gBAAE,SAAS;YACzC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAC;YACpD,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,CAAgC,EAAE,CAAgC;IACpF,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;YAClE,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,CAAC,MAAqC,EAAE,EAAE;gBACxD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC;YACF,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,OAAO;gBAAE,OAAO,KAAK,CAAC;QAC3E,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+EAA+E;AAC/E,+EAA+E;AAC/E,MAAM,UAAU,wBAAwB;IACtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAiB,CAAC;IACzC,OAAO,CAAC,MAAqC,EAAuB,EAAE;QACpE,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9B,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC7K,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE;gBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7E,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACrB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,SAAS;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE;oBACpE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACrG,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;iBACtG,EAAE,CAAC,CAAC;YACL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;oBAAE,SAAS;gBACvF,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI;uBACjE,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG;oBAAE,SAAS;gBAClF,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;oBAAE,SAAS;gBAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC3F,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,IAAI,UAAU,CAAC,CAAC;gBAC/C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,IAAI,UAAU,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACzH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,MAAc;IAClF,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,CAAC;AAChG,CAAC"}
|
|
@@ -47,6 +47,7 @@ export interface CompositionInspection {
|
|
|
47
47
|
kind: "composition-inspection";
|
|
48
48
|
sourceFingerprint: string;
|
|
49
49
|
processingSemantic: CompositionDraft["processingSemantic"];
|
|
50
|
+
previewMode: NonNullable<CompositionDraft["previewMode"]>;
|
|
50
51
|
frame: CompositionDraft["frame"];
|
|
51
52
|
overallNote: string;
|
|
52
53
|
focusPoints: CompositionDraft["focusPoints"];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { validateDraft, visibleAreaMetrics } from "./draft.js";
|
|
1
|
+
import { validateDraft, visibleAreaMetrics, visibleCompositionDraft } from "./draft.js";
|
|
2
2
|
import { COMPOSITION_CANVAS, canvasPointToFrame, frameBoundsInCanvas, } from "./frame.js";
|
|
3
3
|
import { areaGeometry, compositionImageBounds, geometryBounds } from "./geometry.js";
|
|
4
4
|
import { compositionPlanningIntersections } from "./planning-intersections.js";
|
|
@@ -8,7 +8,7 @@ export function draftFingerprint(input) {
|
|
|
8
8
|
return fingerprintText(canonicalDraftJson(draft));
|
|
9
9
|
}
|
|
10
10
|
export function inspectComposition(input) {
|
|
11
|
-
const draft = validateDraft(input);
|
|
11
|
+
const draft = visibleCompositionDraft(validateDraft(input));
|
|
12
12
|
const metrics = visibleAreaMetrics(draft);
|
|
13
13
|
const inspectedAreas = draft.areas.map((area, index) => {
|
|
14
14
|
const bounds = geometryBounds(areaGeometry(area, COMPOSITION_CANVAS));
|
|
@@ -67,8 +67,9 @@ export function inspectComposition(input) {
|
|
|
67
67
|
kind: "composition-inspection",
|
|
68
68
|
...(draft.plans ? { plans: structuredClone(draft.plans) } : {}),
|
|
69
69
|
planningIntersections: compositionPlanningIntersections(draft),
|
|
70
|
-
sourceFingerprint: draftFingerprint(
|
|
70
|
+
sourceFingerprint: draftFingerprint(input),
|
|
71
71
|
processingSemantic: draft.processingSemantic,
|
|
72
|
+
previewMode: draft.previewMode ?? "precise",
|
|
72
73
|
frame: structuredClone(draft.frame),
|
|
73
74
|
overallNote: draft.overallNote,
|
|
74
75
|
focusPoints: draft.focusPoints.map((focus) => ({
|
|
@@ -269,6 +270,7 @@ function canonicalDraftJson(draft) {
|
|
|
269
270
|
version: draft.version,
|
|
270
271
|
kind: draft.kind,
|
|
271
272
|
processingSemantic: draft.processingSemantic,
|
|
273
|
+
...(draft.previewMode === "soft" ? { previewMode: draft.previewMode } : {}),
|
|
272
274
|
frame: {
|
|
273
275
|
width: draft.frame.width,
|
|
274
276
|
height: draft.frame.height,
|
|
@@ -333,6 +335,7 @@ function round(value) {
|
|
|
333
335
|
}
|
|
334
336
|
function nonEmptyMetadata(metadata) {
|
|
335
337
|
return {
|
|
338
|
+
...(metadata.visible === false ? { visible: false } : {}),
|
|
336
339
|
...(metadata.note === "" ? {} : { note: metadata.note }),
|
|
337
340
|
...(metadata.annotation === "" ? {} : { annotation: metadata.annotation }),
|
|
338
341
|
...(metadata.semanticType === "" ? {} : { semanticType: metadata.semanticType }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/domain/composition/analysis.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/domain/composition/analysis.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AddCompositionImageOptions, AddAreaOptions, AreaAspect, CompositionArea, CompositionAreaMetadataPatch, CompositionClipboardItem, CompositionDraft, CompositionFrameBounds, CompositionFrameCorner, CompositionFrameSize, CompositionImage, CompositionNodeMetadataPatch, PasteCompositionItemsResult, CompositionProcessingSemantic, CompositionVisualWeight, Point, Primitive, VisibleAreaMetrics } from "./types.ts";
|
|
1
|
+
import type { AddCompositionImageOptions, AddAreaOptions, AreaAspect, CompositionArea, CompositionAreaMetadataPatch, CompositionClipboardItem, CompositionDraft, CompositionFrameBounds, CompositionFrameCorner, CompositionFrameSize, CompositionImage, CompositionNodeMetadataPatch, PasteCompositionItemsResult, CompositionProcessingSemantic, CompositionPreviewMode, CompositionVisualWeight, Point, Primitive, VisibleAreaMetrics } from "./types.ts";
|
|
2
2
|
export declare const MAX_FOCUS_POINTS = 3;
|
|
3
3
|
export declare const PRIMITIVES: readonly Primitive[];
|
|
4
4
|
export declare const ASPECTS: readonly AreaAspect[];
|
|
@@ -32,6 +32,8 @@ export declare function copyCompositionItems(input: CompositionDraft, ids: reado
|
|
|
32
32
|
export declare function pasteCompositionItems(input: CompositionDraft, clipboard: readonly CompositionClipboardItem[], offset: Point): PasteCompositionItemsResult;
|
|
33
33
|
export declare function moveItem(input: CompositionDraft, id: string, point: Point): CompositionDraft;
|
|
34
34
|
export declare function moveTextRegionCorner(input: CompositionDraft, id: string, index: number, point: Point): CompositionDraft;
|
|
35
|
+
/** Corner geometry for an already validated area; also used before scheduling a UI frame. */
|
|
36
|
+
export declare function moveTextRegionAreaCorner(area: CompositionArea, index: number, point: Point): CompositionArea;
|
|
35
37
|
export declare function resizeArea(input: CompositionDraft, id: string, nextArea: number): CompositionDraft;
|
|
36
38
|
export declare function resizeFreeArea(input: CompositionDraft, id: string, width: number, height: number): CompositionDraft;
|
|
37
39
|
export declare function rotateArea(input: CompositionDraft, id: string, rotation: number): CompositionDraft;
|
|
@@ -43,10 +45,13 @@ export declare function removeItem(input: CompositionDraft, id: string): Composi
|
|
|
43
45
|
export declare function updateItemMetadata(input: CompositionDraft, id: string, patch: CompositionNodeMetadataPatch): CompositionDraft;
|
|
44
46
|
export declare function updateAreaMetadata(input: CompositionDraft, id: string, patch: CompositionAreaMetadataPatch): CompositionDraft;
|
|
45
47
|
export declare function updateCompositionImage(input: CompositionDraft, id: string, patch: Partial<Pick<CompositionImage, "assetId" | "crop" | "visualWeight">>): CompositionDraft;
|
|
48
|
+
export declare function setCompositionPreviewMode(draft: CompositionDraft, previewMode: CompositionPreviewMode): CompositionDraft;
|
|
46
49
|
export declare function setProcessingSemantic(input: CompositionDraft, processingSemantic: CompositionProcessingSemantic): CompositionDraft;
|
|
47
50
|
export declare function changeFrame(input: CompositionDraft, frame: CompositionFrameSize): CompositionDraft;
|
|
48
51
|
export declare function moveFrame(input: CompositionDraft, point: Point): CompositionDraft;
|
|
49
52
|
export declare function resizeFrame(input: CompositionDraft, scale: number, corner?: CompositionFrameCorner): CompositionDraft;
|
|
50
53
|
export declare function resizeFrameToBounds(input: CompositionDraft, bounds: CompositionFrameBounds): CompositionDraft;
|
|
51
54
|
export declare function visibleAreaMetrics(input: CompositionDraft): VisibleAreaMetrics;
|
|
55
|
+
/** Read-only projection for output and hit testing; never persist this filtered draft. */
|
|
56
|
+
export declare function visibleCompositionDraft(input: CompositionDraft): CompositionDraft;
|
|
52
57
|
export declare function normalizeCompositionSymmetryRotation(value: number, frame: CompositionFrameSize): number;
|