@roomle/embedding-lib 7.0.0-alpha.1 → 7.1.0-alpha.1

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.
@@ -1,66 +1,168 @@
1
- ## 7.0.0-alpha.1 (2026-08-05)
1
+ ## 7.1.0-alpha.1 (2026-08-13)
2
2
 
3
- * Merge branch 'feat/lazy-load-svgo-elevation-plan' of https://github.com/roomle-dev/roomle-ui into fe ([df61afb](https://github.com/roomle-dev/roomle-ui/commit/df61afb))
4
- * Merge branch 'master' into chore/allow-headless-plan-strings-and-xmls ([7ffa74e](https://github.com/roomle-dev/roomle-ui/commit/7ffa74e))
5
- * Merge branch 'master' into chore/allow-headless-plan-strings-and-xmls ([d293c00](https://github.com/roomle-dev/roomle-ui/commit/d293c00))
6
- * Merge branch 'master' into chore/allow-headless-plan-strings-and-xmls ([f7c7917](https://github.com/roomle-dev/roomle-ui/commit/f7c7917))
7
- * Merge branch 'master' into chore/removeDeprecatedUnusedInitdata ([53e8d1b](https://github.com/roomle-dev/roomle-ui/commit/53e8d1b))
8
- * Merge branch 'master' into feat/expor-file-names ([83b7d60](https://github.com/roomle-dev/roomle-ui/commit/83b7d60))
9
- * Merge branch 'master' into feat/expor-file-names ([fb3e3be](https://github.com/roomle-dev/roomle-ui/commit/fb3e3be))
10
- * Merge branch 'master' into feat/lazy-load-svgo-elevation-plan ([790686c](https://github.com/roomle-dev/roomle-ui/commit/790686c))
11
- * Merge branch 'master' into feat/lazy-load-svgo-elevation-plan ([dd0966a](https://github.com/roomle-dev/roomle-ui/commit/dd0966a))
12
- * Merge branch 'master' into feat/lazy-load-svgo-elevation-plan ([b636d88](https://github.com/roomle-dev/roomle-ui/commit/b636d88))
13
- * Merge branch 'master' into feat/make-luts-webgl-only ([a3dc37e](https://github.com/roomle-dev/roomle-ui/commit/a3dc37e))
14
- * Merge branch 'master' into feat/make-luts-webgl-only ([91a8aa4](https://github.com/roomle-dev/roomle-ui/commit/91a8aa4))
15
- * Merge branch 'master' into feat/webGpuFog ([da8cd2f](https://github.com/roomle-dev/roomle-ui/commit/da8cd2f))
16
- * Merge branch 'master' into feat/webGpuFog ([0e63587](https://github.com/roomle-dev/roomle-ui/commit/0e63587))
17
- * Merge branch 'master' into fix/e2e-timeout-issue ([0c3b245](https://github.com/roomle-dev/roomle-ui/commit/0c3b245))
18
- * Merge branch 'master' into fix/e2e-timeout-issue ([6426dad](https://github.com/roomle-dev/roomle-ui/commit/6426dad))
19
- * Merge pull request #2803 from roomle-dev/feat/webGpuFog ([c349dfd](https://github.com/roomle-dev/roomle-ui/commit/c349dfd)), closes [#2803](https://github.com/roomle-dev/roomle-ui/issues/2803)
20
- * Merge pull request #2829 from roomle-dev/chore/removeDeprecatedUnusedInitdata ([37e8cfb](https://github.com/roomle-dev/roomle-ui/commit/37e8cfb)), closes [#2829](https://github.com/roomle-dev/roomle-ui/issues/2829)
21
- * Merge pull request #2835 from roomle-dev/feat/lazy-load-svgo-elevation-plan ([2f3e3f7](https://github.com/roomle-dev/roomle-ui/commit/2f3e3f7)), closes [#2835](https://github.com/roomle-dev/roomle-ui/issues/2835)
22
- * Merge pull request #2839 from roomle-dev/feat/make-luts-webgl-only ([9114549](https://github.com/roomle-dev/roomle-ui/commit/9114549)), closes [#2839](https://github.com/roomle-dev/roomle-ui/issues/2839)
23
- * Merge pull request #2841 from roomle-dev/feat/web-gpu-tone-mapping-settings ([c450ab4](https://github.com/roomle-dev/roomle-ui/commit/c450ab4)), closes [#2841](https://github.com/roomle-dev/roomle-ui/issues/2841)
24
- * Merge pull request #2842 from roomle-dev/chore/fix-vite8-peer-deps-RML-17471 ([a00b262](https://github.com/roomle-dev/roomle-ui/commit/a00b262)), closes [#2842](https://github.com/roomle-dev/roomle-ui/issues/2842)
25
- * Merge pull request #2843 from roomle-dev/fix/RML-17470-two-level-catalogue-dimensions-unit ([ae92fcf](https://github.com/roomle-dev/roomle-ui/commit/ae92fcf)), closes [#2843](https://github.com/roomle-dev/roomle-ui/issues/2843)
26
- * Merge pull request #2844 from roomle-dev/chore/allow-headless-plan-strings-and-xmls ([e8af29c](https://github.com/roomle-dev/roomle-ui/commit/e8af29c)), closes [#2844](https://github.com/roomle-dev/roomle-ui/issues/2844)
27
- * Merge pull request #2845 from roomle-dev/fix/e2e-timeout-issue ([7a8af18](https://github.com/roomle-dev/roomle-ui/commit/7a8af18)), closes [#2845](https://github.com/roomle-dev/roomle-ui/issues/2845)
28
- * Merge pull request #2846 from roomle-dev/chore/reintroduce-product-positions-ff ([e513614](https://github.com/roomle-dev/roomle-ui/commit/e513614)), closes [#2846](https://github.com/roomle-dev/roomle-ui/issues/2846)
29
- * Merge pull request #2848 from roomle-dev/chore/move-webGpuConfig-out-of-featureFlags ([d7131ec](https://github.com/roomle-dev/roomle-ui/commit/d7131ec)), closes [#2848](https://github.com/roomle-dev/roomle-ui/issues/2848)
30
- * Merge pull request #2850 from roomle-dev/feat/expor-file-names ([dc98619](https://github.com/roomle-dev/roomle-ui/commit/dc98619)), closes [#2850](https://github.com/roomle-dev/roomle-ui/issues/2850)
31
- * Merge pull request #2851 from roomle-dev/fix/strange-tool-boxes-layout ([cac7037](https://github.com/roomle-dev/roomle-ui/commit/cac7037)), closes [#2851](https://github.com/roomle-dev/roomle-ui/issues/2851)
32
- * Potential fix for pull request finding ([79ee8f2](https://github.com/roomle-dev/roomle-ui/commit/79ee8f2))
33
- * fix(minor): remove broken css target ([56352ec](https://github.com/roomle-dev/roomle-ui/commit/56352ec))
34
- * fix: remove invalid initdata field ([92da85c](https://github.com/roomle-dev/roomle-ui/commit/92da85c))
35
- * fix: timeout issue on e2e if rubens does not load ([5e96d45](https://github.com/roomle-dev/roomle-ui/commit/5e96d45))
36
- * fix: two level catalogue does not update to mm ([1b8aefd](https://github.com/roomle-dev/roomle-ui/commit/1b8aefd))
37
- * feat: add fog to webgpu ([e62c143](https://github.com/roomle-dev/roomle-ui/commit/e62c143))
38
- * feat: add optinonal filename to model exports ([2efd7a6](https://github.com/roomle-dev/roomle-ui/commit/2efd7a6))
39
- * feat: add webgpu tone mapping initdata settings ([625b84b](https://github.com/roomle-dev/roomle-ui/commit/625b84b))
40
- * feat: lazy-load svgo in elevation plan SVG export ([159ca02](https://github.com/roomle-dev/roomle-ui/commit/159ca02))
41
- * feat: make LUTs webgl renderer only ([fa64c0f](https://github.com/roomle-dev/roomle-ui/commit/fa64c0f))
42
- * chore: allow the headless-sdk to accept planXMLs and configurationStrings directly ([10da469](https://github.com/roomle-dev/roomle-ui/commit/10da469))
43
- * chore: cleanup ([1c29a60](https://github.com/roomle-dev/roomle-ui/commit/1c29a60))
44
- * chore: cleanup ([f3f1654](https://github.com/roomle-dev/roomle-ui/commit/f3f1654))
45
- * chore: dont use composable, store only ([6a6de70](https://github.com/roomle-dev/roomle-ui/commit/6a6de70))
46
- * chore: fix failing test cases ([8bd82ee](https://github.com/roomle-dev/roomle-ui/commit/8bd82ee))
47
- * chore: fix failing tests ([6d1bbca](https://github.com/roomle-dev/roomle-ui/commit/6d1bbca))
48
- * chore: fix Vite 8 peer dependency warnings on npm install ([f2ee069](https://github.com/roomle-dev/roomle-ui/commit/f2ee069))
49
- * chore(fix): formatting problems ([7ccf417](https://github.com/roomle-dev/roomle-ui/commit/7ccf417))
50
- * chore: lint ([c8c5e59](https://github.com/roomle-dev/roomle-ui/commit/c8c5e59))
51
- * chore: move webGpuConfig out of featureFlags ([ab570e5](https://github.com/roomle-dev/roomle-ui/commit/ab570e5))
52
- * chore: re-add e2e results from previous run ([d0be1c0](https://github.com/roomle-dev/roomle-ui/commit/d0be1c0))
53
- * chore: re-add e2e tests ([f59d578](https://github.com/roomle-dev/roomle-ui/commit/f59d578))
54
- * chore: regenerate package-lockl ([55d6a5e](https://github.com/roomle-dev/roomle-ui/commit/55d6a5e))
55
- * chore: reintroduce product positions behind initData ([cf5772f](https://github.com/roomle-dev/roomle-ui/commit/cf5772f))
56
- * chore: remove unnecessary ? from initdata fields with default value ([43acfd4](https://github.com/roomle-dev/roomle-ui/commit/43acfd4))
57
- * chore: update e2e test ([13c548a](https://github.com/roomle-dev/roomle-ui/commit/13c548a))
58
- * chore: update headless-sdk.md ([ea73d51](https://github.com/roomle-dev/roomle-ui/commit/ea73d51))
59
- * chore: use correct version and do some cleanup ([6e7224c](https://github.com/roomle-dev/roomle-ui/commit/6e7224c))
60
-
61
- ### BREAKING CHANGE
62
-
63
- * RoomleConfigurator/RoomlePlanner create2DElevationPlan
64
- and download2DElevationPlan now return Promises instead of sync values.
65
-
66
- Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3
+ * Merge branch 'feat/headless-webgpu-support' into feat/headless-webgpu-support--pathtracer ([2773a6f](https://github.com/roomle-dev/roomle-ui/commit/2773a6f))
4
+ * Merge branch 'feat/headless-webgpu-support' into feat/headless-webgpu-support--pathtracer ([a16b201](https://github.com/roomle-dev/roomle-ui/commit/a16b201))
5
+ * Merge branch 'feat/headless-webgpu-support' into feat/headless-webgpu-support--refactor ([1f24c1f](https://github.com/roomle-dev/roomle-ui/commit/1f24c1f))
6
+ * Merge branch 'feat/headless-webgpu-support' of github.com:roomle-dev/roomle-ui into feat/headless-we ([ff8d16d](https://github.com/roomle-dev/roomle-ui/commit/ff8d16d))
7
+ * Merge branch 'fix/gltf-remove-nans' into feat/headless-webgpu-support ([db33092](https://github.com/roomle-dev/roomle-ui/commit/db33092))
8
+ * Merge branch 'master' into chore/test-id-groundwork-RML-17555 ([8f10e98](https://github.com/roomle-dev/roomle-ui/commit/8f10e98))
9
+ * Merge branch 'master' into docs/rml-homag-drag-in-double-insert-finding ([90e2fa5](https://github.com/roomle-dev/roomle-ui/commit/90e2fa5))
10
+ * Merge branch 'master' into docs/rml-homag-drag-in-double-insert-finding ([4467816](https://github.com/roomle-dev/roomle-ui/commit/4467816))
11
+ * Merge branch 'master' into feat/headless-webgpu-support ([9808c28](https://github.com/roomle-dev/roomle-ui/commit/9808c28))
12
+ * Merge branch 'master' into feat/headless-webgpu-support ([9ea9606](https://github.com/roomle-dev/roomle-ui/commit/9ea9606))
13
+ * Merge branch 'master' into feat/headless-webgpu-support ([450592c](https://github.com/roomle-dev/roomle-ui/commit/450592c))
14
+ * Merge branch 'master' into feat/headless-webgpu-support ([9d89eb6](https://github.com/roomle-dev/roomle-ui/commit/9d89eb6))
15
+ * Merge branch 'master' into feat/headless-webgpu-support ([642f382](https://github.com/roomle-dev/roomle-ui/commit/642f382))
16
+ * Merge branch 'master' into fix/mobile-double-increment-RML-17337 ([3ca283e](https://github.com/roomle-dev/roomle-ui/commit/3ca283e))
17
+ * Merge branch 'master' into fix/mobile-double-increment-RML-17337 ([d18e5df](https://github.com/roomle-dev/roomle-ui/commit/d18e5df))
18
+ * Merge branch 'master' into fix/mobile-double-increment-RML-17337 ([1535e7f](https://github.com/roomle-dev/roomle-ui/commit/1535e7f))
19
+ * Merge branch 'master' into fix/mobile-double-increment-RML-17337 ([9c7c82a](https://github.com/roomle-dev/roomle-ui/commit/9c7c82a))
20
+ * Merge branch 'master' into fix/mobile-double-increment-RML-17337 ([1bd4ce5](https://github.com/roomle-dev/roomle-ui/commit/1bd4ce5))
21
+ * Merge branch 'master' into fix/redocking-deselection-bug ([5184bcd](https://github.com/roomle-dev/roomle-ui/commit/5184bcd))
22
+ * Merge branch 'master' into fix/reset-parameter-group-on-change-variant ([e01b053](https://github.com/roomle-dev/roomle-ui/commit/e01b053))
23
+ * Merge branch 'master' into fix/rotation-loop-over-bug ([7550508](https://github.com/roomle-dev/roomle-ui/commit/7550508))
24
+ * Merge branch 'master' into fix/rotation-loop-over-bug ([59cf32a](https://github.com/roomle-dev/roomle-ui/commit/59cf32a))
25
+ * Merge branch 'master' into fix/wall-toggle-fix ([37a4152](https://github.com/roomle-dev/roomle-ui/commit/37a4152))
26
+ * Merge branch 'master' into fix/wrong-item-highlighting ([3dc0b31](https://github.com/roomle-dev/roomle-ui/commit/3dc0b31))
27
+ * Merge pull request #2828 from roomle-dev/feat/headless-webgpu-support ([2fcc606](https://github.com/roomle-dev/roomle-ui/commit/2fcc606)), closes [#2828](https://github.com/roomle-dev/roomle-ui/issues/2828)
28
+ * Merge pull request #2852 from roomle-dev/feature/RML-16353-ar-overlay-text-alignment ([8f009cf](https://github.com/roomle-dev/roomle-ui/commit/8f009cf)), closes [#2852](https://github.com/roomle-dev/roomle-ui/issues/2852)
29
+ * Merge pull request #2853 from roomle-dev/fix/mobile-double-increment-RML-17337 ([9377dbf](https://github.com/roomle-dev/roomle-ui/commit/9377dbf)), closes [#2853](https://github.com/roomle-dev/roomle-ui/issues/2853)
30
+ * Merge pull request #2854 from roomle-dev/docs/rml-homag-drag-in-double-insert-finding ([cbfb6b4](https://github.com/roomle-dev/roomle-ui/commit/cbfb6b4)), closes [#2854](https://github.com/roomle-dev/roomle-ui/issues/2854)
31
+ * Merge pull request #2855 from roomle-dev/fix/rotation-loop-over-bug ([094661e](https://github.com/roomle-dev/roomle-ui/commit/094661e)), closes [#2855](https://github.com/roomle-dev/roomle-ui/issues/2855)
32
+ * Merge pull request #2859 from roomle-dev/fix/fix-broken-lint ([5a23701](https://github.com/roomle-dev/roomle-ui/commit/5a23701)), closes [#2859](https://github.com/roomle-dev/roomle-ui/issues/2859)
33
+ * Merge pull request #2860 from roomle-dev/fix/nterior-measurements-shift-RML-17432 ([675e2ae](https://github.com/roomle-dev/roomle-ui/commit/675e2ae)), closes [#2860](https://github.com/roomle-dev/roomle-ui/issues/2860)
34
+ * Merge pull request #2861 from roomle-dev/fix/parameter-groups-hi-RML-17375 ([cc72002](https://github.com/roomle-dev/roomle-ui/commit/cc72002)), closes [#2861](https://github.com/roomle-dev/roomle-ui/issues/2861)
35
+ * Merge pull request #2862 from roomle-dev/fix/wall-toggle-fix ([50974ad](https://github.com/roomle-dev/roomle-ui/commit/50974ad)), closes [#2862](https://github.com/roomle-dev/roomle-ui/issues/2862)
36
+ * Merge pull request #2864 from roomle-dev/fix/redocking-deselection-bug ([f48ef73](https://github.com/roomle-dev/roomle-ui/commit/f48ef73)), closes [#2864](https://github.com/roomle-dev/roomle-ui/issues/2864)
37
+ * Merge pull request #2865 from roomle-dev/fix/reset-parameter-group-on-change-variant ([1e2df0a](https://github.com/roomle-dev/roomle-ui/commit/1e2df0a)), closes [#2865](https://github.com/roomle-dev/roomle-ui/issues/2865)
38
+ * Merge pull request #2866 from roomle-dev/fix/wrong-item-highlighting ([795f34e](https://github.com/roomle-dev/roomle-ui/commit/795f34e)), closes [#2866](https://github.com/roomle-dev/roomle-ui/issues/2866)
39
+ * Merge pull request #2867 from roomle-dev/fix/transparent-background-webgpu ([d28d7c0](https://github.com/roomle-dev/roomle-ui/commit/d28d7c0)), closes [#2867](https://github.com/roomle-dev/roomle-ui/issues/2867)
40
+ * Merge pull request #2868 from roomle-dev/chore/test-id-groundwork-RML-17555 ([4dd8e80](https://github.com/roomle-dev/roomle-ui/commit/4dd8e80)), closes [#2868](https://github.com/roomle-dev/roomle-ui/issues/2868)
41
+ * Merge pull request #2869 from roomle-dev/chore/test-id-ui-attributes-RML-17552 ([aa41e36](https://github.com/roomle-dev/roomle-ui/commit/aa41e36)), closes [#2869](https://github.com/roomle-dev/roomle-ui/issues/2869)
42
+ * Merge pull request #2870 from roomle-dev/fix/hex-color-format-conversion-RML-17576 ([0145c5e](https://github.com/roomle-dev/roomle-ui/commit/0145c5e)), closes [#2870](https://github.com/roomle-dev/roomle-ui/issues/2870)
43
+ * Potential fix for pull request finding ([aa03acc](https://github.com/roomle-dev/roomle-ui/commit/aa03acc))
44
+ * Potential fix for pull request finding ([cd6978a](https://github.com/roomle-dev/roomle-ui/commit/cd6978a))
45
+ * Potential fix for pull request finding ([3b8d803](https://github.com/roomle-dev/roomle-ui/commit/3b8d803))
46
+ * fix: address review comments on PR #2854 ([eae33c6](https://github.com/roomle-dev/roomle-ui/commit/eae33c6)), closes [#2854](https://github.com/roomle-dev/roomle-ui/issues/2854)
47
+ * fix: address review comments on PR #2869 ([d30ff46](https://github.com/roomle-dev/roomle-ui/commit/d30ff46)), closes [#2869](https://github.com/roomle-dev/roomle-ui/issues/2869)
48
+ * fix(embedding): apply the drag-in readiness gate to the custom-view strategy too ([ca587ab](https://github.com/roomle-dev/roomle-ui/commit/ca587ab))
49
+ * fix(headless): default WebGPU adapter to high-performance ([de5f906](https://github.com/roomle-dev/roomle-ui/commit/de5f906)), closes [hi#performance](https://github.com/hi/issues/performance)
50
+ * fix(embedding): do not spawn a drag-in object before dragStart has finished ([0a39a71](https://github.com/roomle-dev/roomle-ui/commit/0a39a71))
51
+ * fix: failing device max res enumeration ([792a068](https://github.com/roomle-dev/roomle-ui/commit/792a068))
52
+ * fix: guard against cancel selection while redocking elements ([c67e5f9](https://github.com/roomle-dev/roomle-ui/commit/c67e5f9))
53
+ * fix: handle numeric hex color format in CSS variable conversion ([6803302](https://github.com/roomle-dev/roomle-ui/commit/6803302)), closes [#000000](https://github.com/roomle-dev/roomle-ui/issues/000000)
54
+ * fix(configurator): keep planner parameter groups visible when embedding element is disabled ([e1af3fb](https://github.com/roomle-dev/roomle-ui/commit/e1af3fb))
55
+ * fix: keep track of previously highlighted meshes ([7a5e111](https://github.com/roomle-dev/roomle-ui/commit/7a5e111))
56
+ * fix: normalize to 0 and 360 ([438f990](https://github.com/roomle-dev/roomle-ui/commit/438f990))
57
+ * fix(embedding): only cancel an armed drag from the parent dragleave listener ([5ac7ab7](https://github.com/roomle-dev/roomle-ui/commit/5ac7ab7))
58
+ * fix(planner): prevent double increment on mobile touch in ProductRangeControl ([34bcc5e](https://github.com/roomle-dev/roomle-ui/commit/34bcc5e))
59
+ * fix(planner-core): resolve selected child plan objects to root for 3D dimensions ([149ea27](https://github.com/roomle-dev/roomle-ui/commit/149ea27))
60
+ * fix: robustly normalize numeric hex color values in skin config ([b2ee380](https://github.com/roomle-dev/roomle-ui/commit/b2ee380))
61
+ * fix: screenshotting static items under webGPU ([e18787b](https://github.com/roomle-dev/roomle-ui/commit/e18787b))
62
+ * fix: switch sides ([55edf2a](https://github.com/roomle-dev/roomle-ui/commit/55edf2a))
63
+ * fix: transparent background flag for webgpu ([ab274a8](https://github.com/roomle-dev/roomle-ui/commit/ab274a8))
64
+ * fix(ar): update standalone ar.html view text alignment to match left-aligned design ([759d58c](https://github.com/roomle-dev/roomle-ui/commit/759d58c))
65
+ * feat: add explicit camera parameters ([7a0cdd6](https://github.com/roomle-dev/roomle-ui/commit/7a0cdd6))
66
+ * feat: add locale-independent test ids to control and item renderers ([72f0f1b](https://github.com/roomle-dev/roomle-ui/commit/72f0f1b))
67
+ * feat: skip frames on GLB and USDZ renders ([d79681f](https://github.com/roomle-dev/roomle-ui/commit/d79681f))
68
+ * docs(embedding): add finding + repro harness for HOMAG drag-in double insert ([da9e371](https://github.com/roomle-dev/roomle-ui/commit/da9e371))
69
+ * docs: clarify that a test id is not an html id ([d5bf802](https://github.com/roomle-dev/roomle-ui/commit/d5bf802))
70
+ * docs(embedding): fix the comlink claim and pin down the drawer wording ([6e7cbe5](https://github.com/roomle-dev/roomle-ui/commit/6e7cbe5))
71
+ * docs(embedding): mark the drag-in double insert primary cause as fixed ([1945f7d](https://github.com/roomle-dev/roomle-ui/commit/1945f7d))
72
+ * docs(embedding): point the drag-in docs at the follow-up tickets ([0ffbf39](https://github.com/roomle-dev/roomle-ui/commit/0ffbf39))
73
+ * docs(embedding): re-anchor drag-in double insert finding on overlay geometry ([fbf5d1b](https://github.com/roomle-dev/roomle-ui/commit/fbf5d1b))
74
+ * docs(embedding): record step 2b result in the drag-in hardening plan ([864de0c](https://github.com/roomle-dev/roomle-ui/commit/864de0c))
75
+ * docs(embedding): trim the over-canvas helper comment to seven lines ([c884a72](https://github.com/roomle-dev/roomle-ui/commit/c884a72)), closes [#2854](https://github.com/roomle-dev/roomle-ui/issues/2854)
76
+ * chore: working dimensions ([3f5fd60](https://github.com/roomle-dev/roomle-ui/commit/3f5fd60))
77
+ * chore: add caveman skill ([f95df69](https://github.com/roomle-dev/roomle-ui/commit/f95df69))
78
+ * chore: add tests ([42ba4ff](https://github.com/roomle-dev/roomle-ui/commit/42ba4ff))
79
+ * chore: allow 8k renders ([b10512f](https://github.com/roomle-dev/roomle-ui/commit/b10512f))
80
+ * chore: allow custom api url ([3f3a73f](https://github.com/roomle-dev/roomle-ui/commit/3f3a73f))
81
+ * chore: async image encode ([c425f94](https://github.com/roomle-dev/roomle-ui/commit/c425f94))
82
+ * chore: better types in setup-environment.ts ([a69ff7d](https://github.com/roomle-dev/roomle-ui/commit/a69ff7d))
83
+ * chore: bind the max output resolution to what the hardware is capable of ([d1c7ba5](https://github.com/roomle-dev/roomle-ui/commit/d1c7ba5))
84
+ * chore: cleanup ([ca08901](https://github.com/roomle-dev/roomle-ui/commit/ca08901))
85
+ * chore: cleanup ([7b912e2](https://github.com/roomle-dev/roomle-ui/commit/7b912e2))
86
+ * chore: cleanup ([b636256](https://github.com/roomle-dev/roomle-ui/commit/b636256))
87
+ * chore: cleanup ([ac87879](https://github.com/roomle-dev/roomle-ui/commit/ac87879))
88
+ * chore: cleanup ([9ff5654](https://github.com/roomle-dev/roomle-ui/commit/9ff5654))
89
+ * chore: cleanup ([54b68c1](https://github.com/roomle-dev/roomle-ui/commit/54b68c1))
90
+ * chore: cleanup comments, update claude md ([b412a2a](https://github.com/roomle-dev/roomle-ui/commit/b412a2a))
91
+ * chore: disable headless-gl test and force webGPU on ([a72d7e3](https://github.com/roomle-dev/roomle-ui/commit/a72d7e3))
92
+ * chore: dont return a reset, just make it separate ([fef1eae](https://github.com/roomle-dev/roomle-ui/commit/fef1eae))
93
+ * chore: feedback changes ([2aae310](https://github.com/roomle-dev/roomle-ui/commit/2aae310))
94
+ * chore: final optimizations ([fb7c733](https://github.com/roomle-dev/roomle-ui/commit/fb7c733))
95
+ * chore: final pass ([4c6e7b8](https://github.com/roomle-dev/roomle-ui/commit/4c6e7b8))
96
+ * chore: finalize ([9d670d3](https://github.com/roomle-dev/roomle-ui/commit/9d670d3))
97
+ * chore: fix broken e2e tests on vulkan on software rendering ([bd2b338](https://github.com/roomle-dev/roomle-ui/commit/bd2b338))
98
+ * chore: fix broken scene with line geometry in it ([b5c105e](https://github.com/roomle-dev/roomle-ui/commit/b5c105e))
99
+ * chore: fix going negative ([9e8ede0](https://github.com/roomle-dev/roomle-ui/commit/9e8ede0))
100
+ * chore: fix plans with lines in them ([7ad964e](https://github.com/roomle-dev/roomle-ui/commit/7ad964e))
101
+ * chore: fix type issue ([3827807](https://github.com/roomle-dev/roomle-ui/commit/3827807))
102
+ * chore: fix types ([ec46382](https://github.com/roomle-dev/roomle-ui/commit/ec46382))
103
+ * chore: fix typescript issue ([a60cca8](https://github.com/roomle-dev/roomle-ui/commit/a60cca8))
104
+ * chore: get ssgi working headlessly ([1a02878](https://github.com/roomle-dev/roomle-ui/commit/1a02878))
105
+ * chore: get the floor rendering invisible ([a9a4e88](https://github.com/roomle-dev/roomle-ui/commit/a9a4e88))
106
+ * chore: ignore llm dir for prettier ([0fdf1b5](https://github.com/roomle-dev/roomle-ui/commit/0fdf1b5))
107
+ * chore: lint ([5a885a3](https://github.com/roomle-dev/roomle-ui/commit/5a885a3))
108
+ * chore: lint ([9bed9c4](https://github.com/roomle-dev/roomle-ui/commit/9bed9c4))
109
+ * chore: lint ([e769cbc](https://github.com/roomle-dev/roomle-ui/commit/e769cbc))
110
+ * chore: lint ([5bae0c8](https://github.com/roomle-dev/roomle-ui/commit/5bae0c8))
111
+ * chore: lint ([5fdcd1f](https://github.com/roomle-dev/roomle-ui/commit/5fdcd1f))
112
+ * chore: lint ([5070b56](https://github.com/roomle-dev/roomle-ui/commit/5070b56))
113
+ * chore: lint ([9b52a07](https://github.com/roomle-dev/roomle-ui/commit/9b52a07))
114
+ * chore: make mandatory ([c5873e8](https://github.com/roomle-dev/roomle-ui/commit/c5873e8))
115
+ * chore: merge feat/headless parent branch ([e6f7146](https://github.com/roomle-dev/roomle-ui/commit/e6f7146))
116
+ * chore: merge feat/headless parent branch ([f1ba9ce](https://github.com/roomle-dev/roomle-ui/commit/f1ba9ce))
117
+ * chore: merge master ([66ef5e8](https://github.com/roomle-dev/roomle-ui/commit/66ef5e8))
118
+ * chore: merge master ([67ec5b2](https://github.com/roomle-dev/roomle-ui/commit/67ec5b2))
119
+ * chore: merge master ([80978cd](https://github.com/roomle-dev/roomle-ui/commit/80978cd))
120
+ * chore: merge master ([1b8a8b4](https://github.com/roomle-dev/roomle-ui/commit/1b8a8b4))
121
+ * chore: merge master ([cc87b51](https://github.com/roomle-dev/roomle-ui/commit/cc87b51))
122
+ * chore: merge master ([f59ae2b](https://github.com/roomle-dev/roomle-ui/commit/f59ae2b))
123
+ * chore: move logic back out of common core ([aa5055a](https://github.com/roomle-dev/roomle-ui/commit/aa5055a))
124
+ * chore: move out some code from the sdk ([a7b4304](https://github.com/roomle-dev/roomle-ui/commit/a7b4304))
125
+ * chore: move webgpu canvas polyfil into the sdk ([d161c51](https://github.com/roomle-dev/roomle-ui/commit/d161c51))
126
+ * chore: new package lock ([e4fad2a](https://github.com/roomle-dev/roomle-ui/commit/e4fad2a))
127
+ * chore: raw pixel handoff ([34470b8](https://github.com/roomle-dev/roomle-ui/commit/34470b8))
128
+ * chore: refactor based on feedback ([b7b2295](https://github.com/roomle-dev/roomle-ui/commit/b7b2295))
129
+ * chore: remove comment ([002a4f2](https://github.com/roomle-dev/roomle-ui/commit/002a4f2))
130
+ * chore: remove exportWebGpuCanvasScreenshot ([0d857f7](https://github.com/roomle-dev/roomle-ui/commit/0d857f7))
131
+ * chore: remove local skills ([a480e33](https://github.com/roomle-dev/roomle-ui/commit/a480e33))
132
+ * chore: remove local skills ([b2d059e](https://github.com/roomle-dev/roomle-ui/commit/b2d059e))
133
+ * chore: remove webGL, only webGPU ([39a31ce](https://github.com/roomle-dev/roomle-ui/commit/39a31ce))
134
+ * chore: reset parameter group on variant change ([281b3b6](https://github.com/roomle-dev/roomle-ui/commit/281b3b6))
135
+ * chore: standardise on data-test-id as the test attribute ([ef23b46](https://github.com/roomle-dev/roomle-ui/commit/ef23b46))
136
+ * chore: sticky version ([be02b5b](https://github.com/roomle-dev/roomle-ui/commit/be02b5b))
137
+ * chore: throttole requestAnimation frame on headless because it tries to render as fast as possible w ([0e50647](https://github.com/roomle-dev/roomle-ui/commit/0e50647))
138
+ * chore: tighen types ([989b9e4](https://github.com/roomle-dev/roomle-ui/commit/989b9e4))
139
+ * chore: try for supporting larger than 8k ([36b0782](https://github.com/roomle-dev/roomle-ui/commit/36b0782))
140
+ * chore: try headless webgpu ([f543088](https://github.com/roomle-dev/roomle-ui/commit/f543088))
141
+ * chore: update comment ([c3e2c7c](https://github.com/roomle-dev/roomle-ui/commit/c3e2c7c))
142
+ * chore: update headless llm readme ([9e74e73](https://github.com/roomle-dev/roomle-ui/commit/9e74e73))
143
+ * chore: update info regarding using DI for headless development ([38e1a89](https://github.com/roomle-dev/roomle-ui/commit/38e1a89))
144
+ * chore: update package-lock ([9fa7f02](https://github.com/roomle-dev/roomle-ui/commit/9fa7f02))
145
+ * chore: update package.json ([88e2f38](https://github.com/roomle-dev/roomle-ui/commit/88e2f38))
146
+ * chore: update snapshots ([fcf817f](https://github.com/roomle-dev/roomle-ui/commit/fcf817f))
147
+ * chore: update snapshots ([8057615](https://github.com/roomle-dev/roomle-ui/commit/8057615))
148
+ * chore: update snapshots ([39fb265](https://github.com/roomle-dev/roomle-ui/commit/39fb265))
149
+ * chore: upscale on gpu ([a215bab](https://github.com/roomle-dev/roomle-ui/commit/a215bab))
150
+ * chore: use custom roomle fork until 185 is mergedf ([cd1c05e](https://github.com/roomle-dev/roomle-ui/commit/cd1c05e))
151
+ * chore(web-sdk): use local three-gpu-pathtracer fork for headless PT ([d973966](https://github.com/roomle-dev/roomle-ui/commit/d973966))
152
+ * chore: use new ground reflection container class to override ([df0add0](https://github.com/roomle-dev/roomle-ui/commit/df0add0))
153
+ * chore: working denoiser, fix lighting support issue ([7173e00](https://github.com/roomle-dev/roomle-ui/commit/7173e00))
154
+ * chore: working pathtracer in webGPU ([431a851](https://github.com/roomle-dev/roomle-ui/commit/431a851))
155
+ * chore: working webgpu and webgl ([6586339](https://github.com/roomle-dev/roomle-ui/commit/6586339))
156
+ * test(e2e): add playwright regression spec for drag-in double insert ([6b8fddf](https://github.com/roomle-dev/roomle-ui/commit/6b8fddf))
157
+ * test(embedding): assert the plan contents, and unit-test the drag-in geometry ([f230ccb](https://github.com/roomle-dev/roomle-ui/commit/f230ccb))
158
+ * test: guard that .interaction-container stays in the DOM ([8e26b41](https://github.com/roomle-dev/roomle-ui/commit/8e26b41))
159
+ * test(embedding): reproduce drag-in double insert in the demo harness ([8808f13](https://github.com/roomle-dev/roomle-ui/commit/8808f13))
160
+ * refactor: enclosure becomes all walls and floors ([d4f2673](https://github.com/roomle-dev/roomle-ui/commit/d4f2673))
161
+ * refactor: move image headless specific image renderer stuff out of base sdk ([19ee1cd](https://github.com/roomle-dev/roomle-ui/commit/19ee1cd))
162
+ * refactor(embedding): name the drag-in rects and helpers for what they are ([271d7da](https://github.com/roomle-dev/roomle-ui/commit/271d7da))
163
+ * refactor(embedding): share the drag-in phase and geometry helpers ([1582ba3](https://github.com/roomle-dev/roomle-ui/commit/1582ba3))
164
+ * style(e2e): apply prettier formatting to the drag-in regression spec ([6f5fefa](https://github.com/roomle-dev/roomle-ui/commit/6f5fefa))
165
+ * ci: discover lavapipe ICD path dynamically instead of hard-coding it ([d9457d6](https://github.com/roomle-dev/roomle-ui/commit/d9457d6))
166
+ * ci: render headless WebGPU on Mesa lavapipe; fix review-event cancellation ([4f9cec3](https://github.com/roomle-dev/roomle-ui/commit/4f9cec3))
167
+ * wip: working pathtracer with webgpu ([a444c64](https://github.com/roomle-dev/roomle-ui/commit/a444c64))
168
+ * wip: working pathtracer with webgpu ([a917f0e](https://github.com/roomle-dev/roomle-ui/commit/a917f0e))
@@ -1,4 +1,4 @@
1
- import { a as e, c as t, i as n, m as r, o as i, s as a } from "./drag-in-B42WpY_e.mjs";
1
+ import { a as e, c as t, i as n, m as r, o as i, s as a } from "./drag-in-BCnrHxxt.mjs";
2
2
  import "./embedding-plugins.js";
3
3
  //#region packages/common/src/utils/drag.ts
4
4
  var o = (e, t, n = 0, r = 0) => {
@@ -1,4 +1,4 @@
1
- import { a as e, c as t, i as n, m as r, o as i, s as a } from "./drag-in-DXVxlotA.mjs";
1
+ import { a as e, c as t, i as n, m as r, o as i, s as a } from "./drag-in-DDGopCLr.mjs";
2
2
  import "./embedding-plugins.min.js";
3
3
  var o = (e, t, n = 0, r = 0) => {
4
4
  let i = t.x + t.width + n, a = t.x - n, o = t.y + t.height + r, s = t.y - r, { x: c, y: l } = e;
@@ -35,7 +35,7 @@ var t = "rml-drag-in-styles", n = "rml-drag-in-drag-element", r = "rml-drag-in-o
35
35
  }
36
36
  async init() {
37
37
  if (await super.init(), this._mode === "website") try {
38
- let { DragInFromWebsiteStrategy: e } = await import("./from-website-il2_I_s5.mjs");
38
+ let { DragInFromWebsiteStrategy: e } = await import("./from-website-D07qrmeq.mjs");
39
39
  this._strategy = new e(this._instance, this._mainDomElement, {
40
40
  settings: this.options,
41
41
  mode: "website"
@@ -44,7 +44,7 @@ var t = "rml-drag-in-styles", n = "rml-drag-in-drag-element", r = "rml-drag-in-o
44
44
  throw console.error("Could not load Dragin strategy \"FromWebsite\""), e;
45
45
  }
46
46
  else if (this._mode === "custom-view") try {
47
- let { DragInFromCustomViewStrategy: e } = await import("./from-custom-view-DgMx7_5-.mjs");
47
+ let { DragInFromCustomViewStrategy: e } = await import("./from-custom-view-BxJkoaTB.mjs");
48
48
  this._strategy = new e(this._instance, this._mainDomElement, this.options, this._viewName);
49
49
  } catch (e) {
50
50
  throw console.error("Could not load Dragin strategy \"FromCustomView\""), e;
@@ -28,7 +28,7 @@ var t = "rml-drag-in-styles", n = "rml-drag-in-drag-element", r = "rml-drag-in-o
28
28
  }
29
29
  async init() {
30
30
  if (await super.init(), this._mode === "website") try {
31
- let { DragInFromWebsiteStrategy: e } = await import("./from-website-BVznMwIE.mjs");
31
+ let { DragInFromWebsiteStrategy: e } = await import("./from-website-W-UZ3lee.mjs");
32
32
  this._strategy = new e(this._instance, this._mainDomElement, {
33
33
  settings: this.options,
34
34
  mode: "website"
@@ -39,7 +39,7 @@ var t = "rml-drag-in-styles", n = "rml-drag-in-drag-element", r = "rml-drag-in-o
39
39
  else {
40
40
  if (this._mode !== "custom-view") throw Error("Unsupported mode");
41
41
  try {
42
- let { DragInFromCustomViewStrategy: e } = await import("./from-custom-view-CNctfhuo.mjs");
42
+ let { DragInFromCustomViewStrategy: e } = await import("./from-custom-view-CbO74qvE.mjs");
43
43
  this._strategy = new e(this._instance, this._mainDomElement, this.options, this._viewName);
44
44
  } catch (e) {
45
45
  throw e;
@@ -1,2 +1,2 @@
1
- import { a as e, c as t, d as n, f as r, h as i, i as a, m as o, o as s, s as c, t as l, u } from "./drag-in-B42WpY_e.mjs";
1
+ import { a as e, c as t, d as n, f as r, h as i, i as a, m as o, o as s, s as c, t as l, u } from "./drag-in-BCnrHxxt.mjs";
2
2
  export { l as DragIn, a as RML_DRAG_GHOST_FADE_IN, e as RML_DRAG_GHOST_FADE_IN_ANIMATION_CSS, s as RML_DRAG_GHOST_FADE_OUT, c as RML_DRAG_GHOST_FADE_OUT_ANIMATION_CSS, t as RML_DRAG_IN_DRAG_ELEMENT_ID, u as RML_DRAG_IN_FALLBACK_GHOST_HEIGHT, n as RML_DRAG_IN_FALLBACK_GHOST_URL, r as RML_DRAG_IN_FALLBACK_GHOST_WIDTH, o as RML_DRAG_IN_STYLES_ID, i as TARGET_OPACITY };
@@ -1,2 +1,2 @@
1
- import { a as e, c as t, d as n, f as r, h as i, i as a, m as o, o as s, s as c, t as l, u } from "./drag-in-DXVxlotA.mjs";
1
+ import { a as e, c as t, d as n, f as r, h as i, i as a, m as o, o as s, s as c, t as l, u } from "./drag-in-DDGopCLr.mjs";
2
2
  export { l as DragIn, a as RML_DRAG_GHOST_FADE_IN, e as RML_DRAG_GHOST_FADE_IN_ANIMATION_CSS, s as RML_DRAG_GHOST_FADE_OUT, c as RML_DRAG_GHOST_FADE_OUT_ANIMATION_CSS, t as RML_DRAG_IN_DRAG_ELEMENT_ID, u as RML_DRAG_IN_FALLBACK_GHOST_HEIGHT, n as RML_DRAG_IN_FALLBACK_GHOST_URL, r as RML_DRAG_IN_FALLBACK_GHOST_WIDTH, o as RML_DRAG_IN_STYLES_ID, i as TARGET_OPACITY };
@@ -1,13 +1,13 @@
1
- import { a as e, n as t, o as n } from "./utils-BnWKaFPc.mjs";
2
- import { d as r } from "./drag-in-B42WpY_e.mjs";
3
- import { t as i } from "./drag-ghost-BFAJCWau.mjs";
4
- var a = (e, t = 0) => n(e) ? {
5
- clientX: e.touches[t].clientX,
6
- clientY: e.touches[t].clientY
1
+ import { a as e, c as t, n } from "./utils-i2eOrtnv.mjs";
2
+ import { d as r } from "./drag-in-BCnrHxxt.mjs";
3
+ import { t as i } from "./drag-ghost-DqF-SGUQ.mjs";
4
+ var a = (e, n = 0) => t(e) ? {
5
+ clientX: e.touches[n].clientX,
6
+ clientY: e.touches[n].clientY
7
7
  } : {
8
8
  clientX: e.clientX,
9
9
  clientY: e.clientY
10
- }, o = (e) => e && n(e) ? e.touches.length > 0 : !0, s = class {
10
+ }, o = (e) => e && t(e) ? e.touches.length > 0 : !0, s = class {
11
11
  _touchDragTimeOut;
12
12
  _onTouchDragStart;
13
13
  _payload = null;
@@ -19,7 +19,7 @@ var a = (e, t = 0) => n(e) ? {
19
19
  this._payload = e, this._onTouchDragStart = t, this._delay = typeof n.delay == "number" ? n.delay : 500, this._epsilon = typeof n.epsilon == "number" ? n.epsilon : 10;
20
20
  }
21
21
  onStart(e) {
22
- o(e) && (this._touchDragTimeOut ||= (this._firstTouch = a(e, n(e) ? e.touches.length - 1 : 0), setTimeout(() => {
22
+ o(e) && (this._touchDragTimeOut ||= (this._firstTouch = a(e, t(e) ? e.touches.length - 1 : 0), setTimeout(() => {
23
23
  this._clearTimeout(), this._lastTouch ||= a(e), this._checkXDistance(e)();
24
24
  }, this._delay)));
25
25
  }
@@ -70,12 +70,12 @@ var a = (e, t = 0) => n(e) ? {
70
70
  _reset() {
71
71
  this._startX = 0, this._startY = 0, this._lastX = 0, this._lastY = 0, this._isWaiting = !1;
72
72
  }
73
- }, f = "data-rml-old-draggable", p = void 0, m = (e, t) => {
74
- let r = n(e), i = {
73
+ }, f = "data-rml-old-draggable", p = void 0, m = (e, n) => {
74
+ let r = t(e), i = {
75
75
  delay: r ? 500 : 100,
76
76
  epsilon: r ? 10 : 15
77
77
  };
78
- if (!t) return i;
78
+ if (!n) return i;
79
79
  if (!r && !(e instanceof MouseEvent)) return console.warn("Unsupported event! It is not TouchEvent and also not MouseEvent"), i;
80
80
  let { delayKey: a, epsilonKey: o } = r ? {
81
81
  delayKey: "touchDragDelay",
@@ -84,7 +84,7 @@ var a = (e, t = 0) => n(e) ? {
84
84
  delayKey: "customDragDelay",
85
85
  epsilonKey: "customDragEpsilon"
86
86
  };
87
- return typeof t[a] == "number" && (i.delay = t.touchDragDelay), typeof t[o] == "number" && (i.epsilon = t.touchDragEpsilon), i;
87
+ return typeof n[a] == "number" && (i.delay = n.touchDragDelay), typeof n[o] == "number" && (i.epsilon = n.touchDragEpsilon), i;
88
88
  }, h = (e) => {
89
89
  let t = "", n = 112, i = 112;
90
90
  if (!e) return {
@@ -108,39 +108,57 @@ var a = (e, t = 0) => n(e) ? {
108
108
  _mainDomElement;
109
109
  _viewName;
110
110
  _currentCustomDrag = null;
111
- _currentBb = null;
112
111
  _startTarget = null;
113
112
  _dragGhost = null;
114
113
  _onBeforeUpdateDrag = () => ({});
115
114
  isDragging = !1;
116
115
  _hasEnteredIframe = !1;
117
116
  _pendingDragIn = null;
118
- _canvasBb = null;
119
- _overlayBb = null;
117
+ _phase = { kind: "idle" };
120
118
  _dragGeneration = 0;
121
- _interactionContainerBb = null;
119
+ _parentWithDragLeave = null;
120
+ _parentDragLeave = () => {
121
+ this._phase.kind !== "ready" || !this._hasEnteredIframe || (this._instance.cancelDragIn(), this._hasEnteredIframe = !1);
122
+ };
122
123
  constructor(e, t, n, r) {
123
- this._instance = e, this._options = n || {}, this._viewName = r, this._mainDomElement = t, this._mainDomElement.parentElement?.addEventListener("dragleave", () => {
124
- this._instance.cancelDragIn();
125
- });
124
+ this._instance = e, this._options = n || {}, this._viewName = r, this._mainDomElement = t, this._parentWithDragLeave = this._mainDomElement.parentElement, this._parentWithDragLeave?.addEventListener("dragleave", this._parentDragLeave);
126
125
  }
127
126
  beforeUpdateGhost(e) {
128
127
  this._onBeforeUpdateDrag = e;
129
128
  }
130
129
  async _dragStart(e, t, n = "rml_id") {
131
130
  let r = ++this._dragGeneration;
132
- if (this._startTarget && (this._startTarget.style.pointerEvents = "none", this._startTarget.style.userSelect = "none", this._startTarget.setAttribute(f, this._startTarget.draggable.toString()), this._startTarget.draggable = !1, this._startTarget.removeEventListener("dragstart", l), this._startTarget.addEventListener("dragstart", l)), this._startTarget) {
131
+ if (this._phase = { kind: "starting" }, this._startTarget && (this._startTarget.style.pointerEvents = "none", this._startTarget.style.userSelect = "none", this._startTarget.setAttribute(f, this._startTarget.draggable.toString()), this._startTarget.draggable = !1, this._startTarget.removeEventListener("dragstart", l), this._startTarget.addEventListener("dragstart", l)), this._startTarget) {
133
132
  let e = this._startTarget.getBoundingClientRect(), t = this._startTarget.cloneNode(!0);
134
133
  t.style.width = `${e.width}px`, t.style.height = `${e.height}px`, this._dragGhost = new i(t);
135
134
  } else this._dragGhost = new i();
136
- this._currentBb = await this._instance.getBoundingClientRect(c(this._viewName)), this._canvasBb = await this._instance.getBoundingClientRect("canvas"), this._overlayBb = (await this._instance.getDrawerBoundingClientRect()).final, this._interactionContainerBb = await this._instance.getBoundingClientRect(".interaction-container"), r === this._dragGeneration && (this._pendingDragIn = {
137
- id: e,
138
- type: n
139
- }, this._hasEnteredIframe = !1, this.isDragging = !0);
140
- }
141
- _dragUpdate(n) {
142
- document.body.focus(), this._currentCustomDrag && this._currentCustomDrag.onMove(n);
143
- let { clientX: r, clientY: i } = t(n);
135
+ let a = await this._instance.getBoundingClientRect(c(this._viewName)), o = await this._instance.getBoundingClientRect("canvas"), s = (await this._instance.getDrawerBoundingClientRect()).final, u = await this._instance.getBoundingClientRect(".interaction-container");
136
+ if (r === this._dragGeneration) {
137
+ if (!a) {
138
+ let e = `could not read the bounding rect of custom view "${this._viewName}"`;
139
+ this._phase = {
140
+ kind: "failed",
141
+ reason: e
142
+ }, console.warn(`Drag-in not started: ${e}`);
143
+ return;
144
+ }
145
+ this._phase = {
146
+ kind: "ready",
147
+ bounds: {
148
+ view: a,
149
+ canvas: o,
150
+ overlay: s,
151
+ interactionContainer: u
152
+ }
153
+ }, this._pendingDragIn = {
154
+ id: e,
155
+ type: n
156
+ }, this._hasEnteredIframe = !1, this.isDragging = !0;
157
+ }
158
+ }
159
+ _dragUpdate(t) {
160
+ document.body.focus(), this._currentCustomDrag && this._currentCustomDrag.onMove(t);
161
+ let { clientX: r, clientY: i } = n(t);
144
162
  if (this._dragGhost) {
145
163
  let { width: e, height: t } = this._mainDomElement.getBoundingClientRect();
146
164
  this._dragGhost.updateDragGhost(r, i, { ghost: { visibleIn: {
@@ -150,35 +168,35 @@ var a = (e, t = 0) => n(e) ? {
150
168
  height: t
151
169
  } } });
152
170
  }
153
- if (!this._currentBb || !this.isDragging) return;
154
- let a = this._currentBb.x + r, o = this._currentBb.y + i, s = e(a, o, this._canvasBb, this._overlayBb, this._interactionContainerBb);
155
- if (s && !this._hasEnteredIframe && this._pendingDragIn && (this._instance.dragInObject(this._pendingDragIn.id, a, o, this._pendingDragIn.type), this._hasEnteredIframe = !0), !s && this._hasEnteredIframe && (this._instance.cancelDragIn(), this._hasEnteredIframe = !1), !this._hasEnteredIframe) return;
156
- let { url: c, width: l, height: u } = h(this._startTarget), d = this._options || {}, f = {
171
+ if (this._phase.kind !== "ready") return;
172
+ let { view: a, canvas: o, overlay: s, interactionContainer: c } = this._phase.bounds, l = a.x + r, u = a.y + i, d = e(l, u, o, s, c);
173
+ if (d && !this._hasEnteredIframe && this._pendingDragIn && (this._instance.dragInObject(this._pendingDragIn.id, l, u, this._pendingDragIn.type), this._hasEnteredIframe = !0), !d && this._hasEnteredIframe && (this._instance.cancelDragIn(), this._hasEnteredIframe = !1), !this._hasEnteredIframe) return;
174
+ let { url: f, width: p, height: m } = h(this._startTarget), g = this._options || {}, _ = {
157
175
  ghost: {
158
176
  visibleIn: {
159
- x: this._currentBb.x - (d.dragInOverlapX || 0),
160
- y: this._currentBb.y + (d.dragInOverlapY || 0),
161
- width: this._currentBb.width + (d.dragInOverlapX || 0),
162
- height: this._currentBb.height + (d.dragInOverlapY || 0)
177
+ x: a.x - (g.dragInOverlapX || 0),
178
+ y: a.y + (g.dragInOverlapY || 0),
179
+ width: a.width + (g.dragInOverlapX || 0),
180
+ height: a.height + (g.dragInOverlapY || 0)
163
181
  },
164
- url: c,
165
- width: l,
166
- height: u
182
+ url: f,
183
+ width: p,
184
+ height: m
167
185
  },
168
186
  mode: "custom-view"
169
- }, { x: p, y: m, options: g } = this._onBeforeUpdateDrag(a, o, f), _ = typeof p == "number" ? p : a, v = typeof m == "number" ? m : o, y = g || f;
170
- this._instance.updateDrag(_, v, y);
187
+ }, { x: v, y, options: b } = this._onBeforeUpdateDrag(l, u, _), x = typeof v == "number" ? v : l, S = typeof y == "number" ? y : u, C = b || _;
188
+ this._instance.updateDrag(x, S, C);
171
189
  }
172
190
  _dragEnd() {
173
- this._currentCustomDrag && this._currentCustomDrag.onEnd(), this._currentCustomDrag = null, this.isDragging = !1, this._currentBb = null, this._canvasBb = null, this._overlayBb = null, this._interactionContainerBb = null, this._resetStartTarget(), this._instance.enableEvents(), this._dragGhost &&= (this._dragGhost.removeDragGhost(), null), this._hasEnteredIframe && this._instance.dragInObjectEnd(), this._hasEnteredIframe = !1, this._pendingDragIn = null;
191
+ this._dragGeneration++, this._currentCustomDrag && this._currentCustomDrag.onEnd(), this._currentCustomDrag = null, this.isDragging = !1, this._phase = { kind: "idle" }, this._resetStartTarget(), this._instance.enableEvents(), this._dragGhost &&= (this._dragGhost.removeDragGhost(), null), this._hasEnteredIframe && this._instance.dragInObjectEnd(), this._hasEnteredIframe = !1, this._pendingDragIn = null;
174
192
  }
175
- dragStart(e, t, r) {
176
- this._instance.disableEvents(), this._startTarget = t.target, this._currentCustomDrag = n(t) ? new s(p, { onTouchDragStart: (t, n) => {
193
+ dragStart(e, n, r) {
194
+ this._instance.disableEvents(), this._startTarget = n.target, this._currentCustomDrag = t(n) ? new s(p, { onTouchDragStart: (t, n) => {
177
195
  this._dragStart(e, n, r);
178
196
  } }, {
179
- ...m(t, this._options),
197
+ ...m(n, this._options),
180
198
  delay: 0
181
- }) : new d({ onCustomDragStart: (t) => this._dragStart(e, t, r) }, m(t, this._options)), this._currentCustomDrag.onStart(t);
199
+ }) : new d({ onCustomDragStart: (t) => this._dragStart(e, t, r) }, m(n, this._options)), this._currentCustomDrag.onStart(n);
182
200
  }
183
201
  dragEnd() {
184
202
  this._dragEnd();
@@ -195,12 +213,14 @@ var a = (e, t = 0) => n(e) ? {
195
213
  touchEnd() {
196
214
  this.dragEnd();
197
215
  }
198
- dispose() {}
216
+ dispose() {
217
+ this._parentWithDragLeave?.removeEventListener("dragleave", this._parentDragLeave), this._parentWithDragLeave = null;
218
+ }
199
219
  _resetStartTarget() {
200
220
  this._startTarget && (this._startTarget.style.pointerEvents = "", this._startTarget.style.userSelect = "", this._startTarget.draggable = this._startTarget.getAttribute(f) === "true", this._startTarget.removeAttribute(f), this._startTarget.removeEventListener("dragstart", l));
201
221
  }
202
222
  releaseInput(e) {
203
- this._dragGeneration++, this._dragEnd();
223
+ this._dragEnd();
204
224
  }
205
225
  };
206
226
  //#endregion