@supernovaio/prototyping-tooling 0.9.0

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.
Files changed (60) hide show
  1. package/README.md +193 -0
  2. package/dist/build/index.d.ts +3 -0
  3. package/dist/build/index.d.ts.map +1 -0
  4. package/dist/build/index.js +96 -0
  5. package/dist/build/vite-plugin-forge-ids.d.ts +7 -0
  6. package/dist/build/vite-plugin-forge-ids.d.ts.map +1 -0
  7. package/dist/client/annotation/AnnotationOverlay.d.ts +86 -0
  8. package/dist/client/annotation/AnnotationOverlay.d.ts.map +1 -0
  9. package/dist/client/design-mode/DesignModeController.d.ts +35 -0
  10. package/dist/client/design-mode/DesignModeController.d.ts.map +1 -0
  11. package/dist/client/general/ComponentRegistry.d.ts +15 -0
  12. package/dist/client/general/ComponentRegistry.d.ts.map +1 -0
  13. package/dist/client/general/ForgeClient.d.ts +36 -0
  14. package/dist/client/general/ForgeClient.d.ts.map +1 -0
  15. package/dist/client/general/SourceCodeUpdater.d.ts +15 -0
  16. package/dist/client/general/SourceCodeUpdater.d.ts.map +1 -0
  17. package/dist/client/general/element-utils.d.ts +20 -0
  18. package/dist/client/general/element-utils.d.ts.map +1 -0
  19. package/dist/client/general/overlay.d.ts +9 -0
  20. package/dist/client/general/overlay.d.ts.map +1 -0
  21. package/dist/client/general/react-detection.d.ts +49 -0
  22. package/dist/client/general/react-detection.d.ts.map +1 -0
  23. package/dist/client/general/types.d.ts +26 -0
  24. package/dist/client/general/types.d.ts.map +1 -0
  25. package/dist/client/general/xpath.d.ts +3 -0
  26. package/dist/client/general/xpath.d.ts.map +1 -0
  27. package/dist/client/index.d.ts +6 -0
  28. package/dist/client/index.d.ts.map +1 -0
  29. package/dist/client/select-mode/SelectModeController.d.ts +31 -0
  30. package/dist/client/select-mode/SelectModeController.d.ts.map +1 -0
  31. package/dist/client.js +836 -0
  32. package/dist/constants-BXKWBfHg.js +55 -0
  33. package/dist/debug-CLzmqn3R.js +11 -0
  34. package/dist/host/ForgeHost.d.ts +57 -0
  35. package/dist/host/ForgeHost.d.ts.map +1 -0
  36. package/dist/host/index.d.ts +3 -0
  37. package/dist/host/index.d.ts.map +1 -0
  38. package/dist/host/types.d.ts +32 -0
  39. package/dist/host/types.d.ts.map +1 -0
  40. package/dist/host.js +142 -0
  41. package/dist/index.d.ts +12 -0
  42. package/dist/index.d.ts.map +1 -0
  43. package/dist/index.js +14 -0
  44. package/dist/react/index.d.ts +5 -0
  45. package/dist/react/index.d.ts.map +1 -0
  46. package/dist/react/useDesignMode.d.ts +12 -0
  47. package/dist/react/useDesignMode.d.ts.map +1 -0
  48. package/dist/react/useElementSelector.d.ts +12 -0
  49. package/dist/react/useElementSelector.d.ts.map +1 -0
  50. package/dist/react.js +5 -0
  51. package/dist/shared/constants.d.ts +27 -0
  52. package/dist/shared/constants.d.ts.map +1 -0
  53. package/dist/shared/debug.d.ts +4 -0
  54. package/dist/shared/debug.d.ts.map +1 -0
  55. package/dist/shared/events.d.ts +157 -0
  56. package/dist/shared/events.d.ts.map +1 -0
  57. package/dist/shared/messaging.d.ts +19 -0
  58. package/dist/shared/messaging.d.ts.map +1 -0
  59. package/dist/useDesignMode-VIipNUSj.js +68 -0
  60. package/package.json +69 -0
@@ -0,0 +1,68 @@
1
+ import { useState as r, useEffect as S, useCallback as s } from "react";
2
+ import { d as i } from "./debug-CLzmqn3R.js";
3
+ function E(e) {
4
+ const [d, u] = r(!1), [a, l] = r(""), [b, o] = r("disconnected");
5
+ S(() => {
6
+ if (!e) {
7
+ i("client", "useElementSelector: No host provided");
8
+ return;
9
+ }
10
+ const t = e.getStatus();
11
+ i("client", "useElementSelector: Initial status:", t), o(t);
12
+ const n = e.on("connected", () => {
13
+ i("client", "useElementSelector: Connected"), o("connected");
14
+ }), c = e.on("disconnected", () => {
15
+ i("client", "useElementSelector: Disconnected"), o("disconnected");
16
+ });
17
+ return () => {
18
+ n(), c();
19
+ };
20
+ }, [e]), S(() => {
21
+ if (!e) return;
22
+ const t = e.on("xpath-selected", (c) => {
23
+ l(c);
24
+ }), n = e.on("select-mode-disabled", () => {
25
+ u(!1);
26
+ });
27
+ return () => {
28
+ t(), n();
29
+ };
30
+ }, [e]);
31
+ const f = s((t) => {
32
+ if (e)
33
+ try {
34
+ e.enableSelectMode(t), u(t);
35
+ } catch (n) {
36
+ i("client", "Failed to toggle select mode:", n);
37
+ }
38
+ }, [e]), m = s(() => {
39
+ l("");
40
+ }, []);
41
+ return { selectMode: d, connectionStatus: b, selectedXPath: a, enableSelectMode: f, clearXPath: m };
42
+ }
43
+ function M(e) {
44
+ const [d, u] = r(!1), [a, l] = r(null), b = s((t) => {
45
+ e && (e.enableDesignMode(t), u(t), t || l(null));
46
+ }, [e]), o = s((t, n) => {
47
+ e && (e.updateElementText(t, n), l((c) => c ? { ...c, text: n } : null));
48
+ }, [e]), f = s((t, n, c) => {
49
+ e && e.updateProperty(t, n, c);
50
+ }, [e]), m = s(() => {
51
+ e && (e.deselectElement(), l(null));
52
+ }, [e]);
53
+ return S(() => {
54
+ if (!e) return;
55
+ const t = e.on("element-selected", (c) => {
56
+ l(c);
57
+ }), n = e.on("design-mode-disabled", () => {
58
+ d && u(!1);
59
+ });
60
+ return () => {
61
+ t(), n();
62
+ };
63
+ }, [e, d]), { designMode: d, selectedElement: a, enableDesignMode: b, updateText: o, updateProperty: f, deselectElement: m };
64
+ }
65
+ export {
66
+ M as a,
67
+ E as u
68
+ };
package/package.json ADDED
@@ -0,0 +1,69 @@
1
+ {
2
+ "name": "@supernovaio/prototyping-tooling",
3
+ "version": "0.9.0",
4
+ "description": "Prototyping Tooling — iframe communication bridge for design-to-code workflows",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "sideEffects": false,
8
+ "main": "./dist/index.js",
9
+ "types": "./dist/index.d.ts",
10
+ "exports": {
11
+ ".": {
12
+ "import": "./dist/index.js",
13
+ "types": "./dist/index.d.ts"
14
+ },
15
+ "./host": {
16
+ "import": "./dist/host.js",
17
+ "types": "./dist/host/index.d.ts"
18
+ },
19
+ "./client": {
20
+ "import": "./dist/client.js",
21
+ "types": "./dist/client/index.d.ts"
22
+ },
23
+ "./react": {
24
+ "import": "./dist/react.js",
25
+ "types": "./dist/react/index.d.ts"
26
+ },
27
+ "./build": {
28
+ "import": "./dist/build/index.js",
29
+ "types": "./dist/build/index.d.ts"
30
+ }
31
+ },
32
+ "files": [
33
+ "dist",
34
+ "README.md",
35
+ "LICENSE"
36
+ ],
37
+ "engines": {
38
+ "node": ">=18"
39
+ },
40
+ "scripts": {
41
+ "dev": "vite build --watch",
42
+ "build": "vite build && tsc",
43
+ "prepublishOnly": "npm run build",
44
+ "preview": "vite preview"
45
+ },
46
+ "devDependencies": {
47
+ "@rollup/plugin-terser": "^0.4.4",
48
+ "@types/babel__generator": "^7.27.0",
49
+ "@types/babel__traverse": "^7.28.0",
50
+ "@types/react": "^19.1.16",
51
+ "terser": "^5.46.0",
52
+ "typescript": "~5.9.3",
53
+ "vite": "^7.1.12"
54
+ },
55
+ "peerDependencies": {
56
+ "react": "^18.0.0 || ^19.0.0"
57
+ },
58
+ "peerDependenciesMeta": {
59
+ "react": {
60
+ "optional": true
61
+ }
62
+ },
63
+ "dependencies": {
64
+ "@babel/generator": "^7.28.5",
65
+ "@babel/parser": "^7.28.5",
66
+ "@babel/traverse": "^7.28.5",
67
+ "@babel/types": "^7.28.5"
68
+ }
69
+ }