@vived/component-abb-6700 1.0.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 (203) hide show
  1. package/.todo.md +13 -0
  2. package/README.md +122 -0
  3. package/dist/.gitkeep +0 -0
  4. package/dist/Adapters/aBB6700PMAdapter.d.ts +10 -0
  5. package/dist/Adapters/aBB6700PMAdapter.d.ts.map +1 -0
  6. package/dist/Controllers/createABB6700.d.ts +12 -0
  7. package/dist/Controllers/createABB6700.d.ts.map +1 -0
  8. package/dist/Controllers/getPose.d.ts +11 -0
  9. package/dist/Controllers/getPose.d.ts.map +1 -0
  10. package/dist/Controllers/setJointAngle.d.ts +12 -0
  11. package/dist/Controllers/setJointAngle.d.ts.map +1 -0
  12. package/dist/Controllers/setPose.d.ts +11 -0
  13. package/dist/Controllers/setPose.d.ts.map +1 -0
  14. package/dist/Entities/ABB6700Entity.d.ts +35 -0
  15. package/dist/Entities/ABB6700Entity.d.ts.map +1 -0
  16. package/dist/Entities/ABB6700Repo.d.ts +32 -0
  17. package/dist/Entities/ABB6700Repo.d.ts.map +1 -0
  18. package/dist/Factory/ABB6700FeatureFactory.d.ts +26 -0
  19. package/dist/Factory/ABB6700FeatureFactory.d.ts.map +1 -0
  20. package/dist/Mocks/MockABB6700PM.d.ts +11 -0
  21. package/dist/Mocks/MockABB6700PM.d.ts.map +1 -0
  22. package/dist/Mocks/MockSetJointAngleUC.d.ts +7 -0
  23. package/dist/Mocks/MockSetJointAngleUC.d.ts.map +1 -0
  24. package/dist/Mocks/MockSetPoseUC.d.ts +7 -0
  25. package/dist/Mocks/MockSetPoseUC.d.ts.map +1 -0
  26. package/dist/PMs/ABB6700PM.d.ts +32 -0
  27. package/dist/PMs/ABB6700PM.d.ts.map +1 -0
  28. package/dist/UCs/CalcStabilizerUC.d.ts +7 -0
  29. package/dist/UCs/CalcStabilizerUC.d.ts.map +1 -0
  30. package/dist/UCs/SetJointAngleUC.d.ts +15 -0
  31. package/dist/UCs/SetJointAngleUC.d.ts.map +1 -0
  32. package/dist/UCs/SetPoseUC.d.ts +22 -0
  33. package/dist/UCs/SetPoseUC.d.ts.map +1 -0
  34. package/dist/Views/ABB6700BabylonView.d.ts +27 -0
  35. package/dist/Views/ABB6700BabylonView.d.ts.map +1 -0
  36. package/dist/abb_6700.glb +0 -0
  37. package/dist/abstractAudioBus-CyBWsmuN.js +14 -0
  38. package/dist/animationGroup-BhNThqQe.js +1454 -0
  39. package/dist/basisTextureLoader-BT391BsV.js +310 -0
  40. package/dist/brdfTextureTools-DUyKBAXf.js +79 -0
  41. package/dist/bumpFragment-Dd-ojPA1.js +134 -0
  42. package/dist/bumpFragment-KE1_PuMl.js +287 -0
  43. package/dist/bumpVertex-BcdvVFVx.js +8 -0
  44. package/dist/bumpVertexDeclaration-B5Uvs-RS.js +8 -0
  45. package/dist/bumpVertexDeclaration-ixSg-yGI.js +8 -0
  46. package/dist/clipPlaneFragment-DJwQynjA.js +136 -0
  47. package/dist/clipPlaneVertex-D4Wk50XG.js +376 -0
  48. package/dist/clipPlaneVertex-eQ147Tn2.js +350 -0
  49. package/dist/component.config.d.ts +17 -0
  50. package/dist/component.config.d.ts.map +1 -0
  51. package/dist/ddsTextureLoader-DeoF3iGO.js +331 -0
  52. package/dist/default.fragment-DKnTR9nY.js +548 -0
  53. package/dist/default.fragment-rIGWrUS5.js +486 -0
  54. package/dist/default.vertex-Bt5y1VyA.js +212 -0
  55. package/dist/default.vertex-Dext1liJ.js +224 -0
  56. package/dist/defaultUboDeclaration-BwslQZX8.js +11 -0
  57. package/dist/defaultUboDeclaration-DSXACgip.js +9 -0
  58. package/dist/easing-BAt0SO-B.js +163 -0
  59. package/dist/envTextureLoader-CBiW_Q-U.js +40 -0
  60. package/dist/exrTextureLoader-5SC6PKIA.js +740 -0
  61. package/dist/flowGraphApplyForceBlock-6e8-wcaw.js +32 -0
  62. package/dist/flowGraphApplyImpulseBlock-B27EZQow.js +32 -0
  63. package/dist/flowGraphArrayIndexBlock-DIUn5e4i.js +31 -0
  64. package/dist/flowGraphBezierCurveEasingBlock-BJmiHk40.js +25 -0
  65. package/dist/flowGraphBinaryOperationBlock-Bj7TANCc.js +25 -0
  66. package/dist/flowGraphBranchBlock-7CRvIKWc.js +19 -0
  67. package/dist/flowGraphCachedOperationBlock-CP1ZiuIB.js +26 -0
  68. package/dist/flowGraphCancelDelayBlock-DqtgzBGm.js +20 -0
  69. package/dist/flowGraphCodeExecutionBlock-CaYXCGqo.js +23 -0
  70. package/dist/flowGraphConditionalDataBlock-DJ7evX8_.js +28 -0
  71. package/dist/flowGraphConsoleLogBlock-cMkpqLzO.js +68 -0
  72. package/dist/flowGraphConstantBlock-JWybwT0A.js +28 -0
  73. package/dist/flowGraphContextBlock-CFDXHcbn.js +19 -0
  74. package/dist/flowGraphCounterBlock-B0uPkgw9.js +24 -0
  75. package/dist/flowGraphDataSwitchBlock-B0GSifvJ.js +27 -0
  76. package/dist/flowGraphDebounceBlock-CSw8zKym.js +24 -0
  77. package/dist/flowGraphDebugBlock-DiSR6Ahn.js +65 -0
  78. package/dist/flowGraphDoNBlock-C-48oQ2H.js +24 -0
  79. package/dist/flowGraphEasingBlock-DKUaE7Rp.js +50 -0
  80. package/dist/flowGraphFlipFlopBlock-DX5BGhMV.js +20 -0
  81. package/dist/flowGraphForLoopBlock-Di-Qwg23.js +27 -0
  82. package/dist/flowGraphFunctionReferenceBlock-D8X5TFsO.js +20 -0
  83. package/dist/flowGraphGLTFDataProvider-C4j7nPQv.js +16 -0
  84. package/dist/flowGraphGetAngularVelocityBlock-Cq-yTQ4D.js +31 -0
  85. package/dist/flowGraphGetAssetBlock-B36eioor.js +21 -0
  86. package/dist/flowGraphGetLinearVelocityBlock-MdrV0eUD.js +31 -0
  87. package/dist/flowGraphGetPhysicsMassPropertiesBlock-wXDZP1wM.js +30 -0
  88. package/dist/flowGraphGetPropertyBlock-eP0badwf.js +46 -0
  89. package/dist/flowGraphGetSoundVolumeBlock-D3gXGHXa.js +29 -0
  90. package/dist/flowGraphGetVariableBlock-C7-qZAec.js +31 -0
  91. package/dist/flowGraphIndexOfBlock-CC5l9n9P.js +31 -0
  92. package/dist/flowGraphInterpolationBlock-B6922jzt.js +50 -0
  93. package/dist/flowGraphIsKeyPressedBlock-X_iuiUOX.js +31 -0
  94. package/dist/flowGraphIsSoundPlayingBlock-DONQX8N8.js +29 -0
  95. package/dist/flowGraphJsonPointerParserBlock-DBH_gN8I.js +95 -0
  96. package/dist/flowGraphKeyDownEventBlock-D5T1Uyfv.js +26 -0
  97. package/dist/flowGraphKeyUpEventBlock-BPY_Kgkm.js +21 -0
  98. package/dist/flowGraphKeyboardEventBlock-C49fx3TC.js +20 -0
  99. package/dist/flowGraphMathBlocks-CkvrN3VJ.js +864 -0
  100. package/dist/flowGraphMathCombineExtractBlocks-QSjGlnoz.js +248 -0
  101. package/dist/flowGraphMatrixMathBlocks-B3D7Cz9p.js +117 -0
  102. package/dist/flowGraphMeshPickEventBlock-BBTz-taa.js +35 -0
  103. package/dist/flowGraphMultiGateBlock-BhY1y5BG.js +50 -0
  104. package/dist/flowGraphPauseAnimationBlock-CHZZXMbg.js +19 -0
  105. package/dist/flowGraphPauseSoundBlock-B7hMmJ0c.js +31 -0
  106. package/dist/flowGraphPhysicsCollisionEventBlock-CxoPpT-q.js +56 -0
  107. package/dist/flowGraphPlayAnimationBlock-DVAvIFux.js +99 -0
  108. package/dist/flowGraphPlaySoundBlock-DjHGrqbC.js +32 -0
  109. package/dist/flowGraphPointerDownEventBlock-qI-H0JST.js +31 -0
  110. package/dist/flowGraphPointerMoveEventBlock-DAi4VUyy.js +31 -0
  111. package/dist/flowGraphPointerOutEventBlock-CFtj68aC.js +21 -0
  112. package/dist/flowGraphPointerOverEventBlock-VxdHhFuu.js +23 -0
  113. package/dist/flowGraphPointerUpEventBlock-DRR1f07q.js +31 -0
  114. package/dist/flowGraphReceiveCustomEventBlock-B3bwdB66.js +52 -0
  115. package/dist/flowGraphSceneReadyEventBlock-Dy6lDT3j.js +23 -0
  116. package/dist/flowGraphSceneTickEventBlock-Bl9BF_Xw.js +32 -0
  117. package/dist/flowGraphSendCustomEventBlock-BAR4PGFq.js +35 -0
  118. package/dist/flowGraphSequenceBlock-veqU32ZZ.js +32 -0
  119. package/dist/flowGraphSetAngularVelocityBlock-Dj9b-zu6.js +31 -0
  120. package/dist/flowGraphSetDelayBlock-CMjudtvk.js +131 -0
  121. package/dist/flowGraphSetLinearVelocityBlock-DVDhhJBd.js +31 -0
  122. package/dist/flowGraphSetPhysicsMotionTypeBlock-CL3cxNCO.js +36 -0
  123. package/dist/flowGraphSetPropertyBlock-D3sWL3Ss.js +47 -0
  124. package/dist/flowGraphSetSoundVolumeBlock-CxVk45yR.js +32 -0
  125. package/dist/flowGraphSetVariableBlock-D1oJiwLj.js +47 -0
  126. package/dist/flowGraphSoundEndedEventBlock-CubEwii0.js +47 -0
  127. package/dist/flowGraphStopAnimationBlock-B9inwIQx.js +48 -0
  128. package/dist/flowGraphStopSoundBlock-BijIX2jC.js +31 -0
  129. package/dist/flowGraphSwitchBlock-BMhPb4OX.js +54 -0
  130. package/dist/flowGraphThrottleBlock-C7vrnkb1.js +37 -0
  131. package/dist/flowGraphTransformCoordinatesSystemBlock-DoISqaUG.js +29 -0
  132. package/dist/flowGraphTypeToTypeBlocks-CSML6QWx.js +57 -0
  133. package/dist/flowGraphUnaryOperationBlock-B0Shf-lJ.js +24 -0
  134. package/dist/flowGraphVectorMathBlocks-DoTRR_E0.js +178 -0
  135. package/dist/flowGraphWaitAllBlock-BvmDMc24.js +54 -0
  136. package/dist/flowGraphWhileLoopBlock-BaIq4-K2.js +27 -0
  137. package/dist/geometry.fragment-Bsis3UG2.js +275 -0
  138. package/dist/geometry.vertex-DskQ5b8j.js +222 -0
  139. package/dist/harmonicsFunctions-CtNrRfir.js +193 -0
  140. package/dist/harmonicsFunctions-PEz6APC7.js +18 -0
  141. package/dist/hdrTextureLoader-D9rYxJ9q.js +112 -0
  142. package/dist/helperFunctions-Bt7Zfkrp.js +89 -0
  143. package/dist/helperFunctions-CPmRxd37.js +121 -0
  144. package/dist/iesTextureLoader-BGUFjVhI.js +93 -0
  145. package/dist/index-CS3Icp_r.js +67657 -0
  146. package/dist/index.d.ts +23 -0
  147. package/dist/index.d.ts.map +1 -0
  148. package/dist/index.js +27 -0
  149. package/dist/ktxTextureLoader-cUaGg9_L.js +459 -0
  150. package/dist/lightFragment-BRDibDKG.js +404 -0
  151. package/dist/lightFragment-DCqtGMp_.js +402 -0
  152. package/dist/logDepthDeclaration-Bwm-3KyB.js +16 -0
  153. package/dist/logDepthDeclaration-gUfeSnXX.js +20 -0
  154. package/dist/logDepthVertex-CKeuJ6ae.js +213 -0
  155. package/dist/logDepthVertex-CXkmZels.js +459 -0
  156. package/dist/mesh.vertexData.functions-Bc9lJlrU.js +74 -0
  157. package/dist/oitFragment-B8zuQigp.js +792 -0
  158. package/dist/oitFragment-DH3h3T6x.js +657 -0
  159. package/dist/openpbr.fragment-BglYS6LA.js +1405 -0
  160. package/dist/openpbr.fragment-DrOTZs4m.js +1553 -0
  161. package/dist/openpbr.vertex-B-PaLFOR.js +384 -0
  162. package/dist/openpbr.vertex-DMdFRTnX.js +268 -0
  163. package/dist/openpbrMaterial-HCU0aOca.js +2880 -0
  164. package/dist/openpbrMaterialLoadingAdapter-CWRAa-7S.js +1122 -0
  165. package/dist/openpbrTransmissionLayerData-CfDVObj5.js +352 -0
  166. package/dist/openpbrUboDeclaration-CA2pvSbt.js +9 -0
  167. package/dist/openpbrUboDeclaration-xU8VOaib.js +10 -0
  168. package/dist/pass.fragment-1mMP54bb.js +10 -0
  169. package/dist/pass.fragment-DzaUp_jk.js +10 -0
  170. package/dist/passCube.fragment-CQaXS7g3.js +29 -0
  171. package/dist/passCube.fragment-QJGPwAXI.js +29 -0
  172. package/dist/pbr.fragment-BnaAAGxb.js +2775 -0
  173. package/dist/pbr.fragment-CYZk_EGU.js +2619 -0
  174. package/dist/pbr.vertex-CyvdCw91.js +372 -0
  175. package/dist/pbr.vertex-DJMAkDxs.js +270 -0
  176. package/dist/pbrBRDFFunctions-EugoWm6O.js +175 -0
  177. package/dist/pbrDebug-Bk3sPoEG.js +719 -0
  178. package/dist/pbrDebug-Cdalzb1I.js +614 -0
  179. package/dist/pbrIBLFunctions-B0bVAXCF.js +47 -0
  180. package/dist/pbrIBLFunctions-C06z-ouZ.js +51 -0
  181. package/dist/pbrMaterial-C4FCKBZQ.js +1660 -0
  182. package/dist/pbrMaterialLoadingAdapter-BGHlS_ZN.js +1032 -0
  183. package/dist/pbrUboDeclaration-1lN5_-Bw.js +9 -0
  184. package/dist/pbrUboDeclaration-BJOUUOZ2.js +10 -0
  185. package/dist/procedural.vertex-CFPKczKj.js +14 -0
  186. package/dist/procedural.vertex-DUW7bYZt.js +13 -0
  187. package/dist/rgbdDecode.fragment-CEGgE4tL.js +8 -0
  188. package/dist/rgbdDecode.fragment-FT0wkgah.js +8 -0
  189. package/dist/rgbdEncode.fragment-CLnJJf6E.js +8 -0
  190. package/dist/rgbdEncode.fragment-CaAcMsY9.js +8 -0
  191. package/dist/sceneUboDeclaration-B6oxsfcj.js +8 -0
  192. package/dist/sceneUboDeclaration-JByfVKik.js +13 -0
  193. package/dist/setupABB6700InstanceFactory.d.ts +7 -0
  194. package/dist/setupABB6700InstanceFactory.d.ts.map +1 -0
  195. package/dist/studio.env +0 -0
  196. package/dist/textureProcessor.fragment-BYPw6SMQ.js +152 -0
  197. package/dist/textureProcessor.fragment-Ciw9-F3w.js +157 -0
  198. package/dist/textureTools-Cct_bGgp.js +40 -0
  199. package/dist/tgaTextureLoader-BJOIdnFr.js +198 -0
  200. package/dist/thinEngine-Bt9FW4dD.js +2425 -0
  201. package/dist/webAudioBus-BUzRHSxr.js +88 -0
  202. package/dist/webAudioMainBus-Dds1TgJG.js +49 -0
  203. package/package.json +49 -0
package/.todo.md ADDED
@@ -0,0 +1,13 @@
1
+ # Project Todo
2
+
3
+ ## Working On
4
+
5
+ - **Refactor Initialization Process**
6
+ - _Added: 2026-05-19 14:30_
7
+ - Notes: Focus on simplifying and modularizing the initialization process for ABB6700 instances.
8
+
9
+ ## Done
10
+
11
+ - ~~**Babylon View Factory**~~ `pr: #1`
12
+ - _Completed: 2026-05-19 14:30_
13
+ - Notes: Implementing ABB6700BabylonViewFactory with repo-level PM and adapter. Full clean-architecture stack: ABB6700RepoPM → ABB6700BabylonViewFactory (AppObjectView on "ABB6700s" AppObject). Issue created at vivedlearning/component-abb6700#1.
package/README.md ADDED
@@ -0,0 +1,122 @@
1
+ # @vived/component-ABB6700
2
+
3
+ ABB 6700 — VIVED Smart Component
4
+
5
+ A reusable 3D robot arm component for VIVED slide apps. Provides domain logic (entities, presentation managers) and a Babylon.js view for a 6-DOF robot arm with independently controllable joint angles (J1–J6).
6
+
7
+ ## Installation
8
+
9
+ ```bash
10
+ npm install @vived/component-ABB6700
11
+ ```
12
+
13
+ Peer dependencies:
14
+
15
+ - `@babylonjs/core ^9.0.0`
16
+ - `@vived/core ^2.0.0`
17
+
18
+ ## Usage
19
+
20
+ ```ts
21
+ import {
22
+ makeABB6700FeatureFactory,
23
+ ABB6700Repo,
24
+ ABB6700Entity,
25
+ makeABB6700BabylonView,
26
+ } from "@vived/component-ABB6700";
27
+ import { Angle, makeAppObjectRepo, makeDomainFactoryRepo } from "@vived/core";
28
+
29
+ // Setup
30
+ const appObjects = makeAppObjectRepo();
31
+ const domainFactoryRepo = makeDomainFactoryRepo(appObjects);
32
+ makeABB6700FeatureFactory(appObjects);
33
+ domainFactoryRepo.setupDomain();
34
+
35
+ // Create an instance
36
+ const repo = ABB6700Repo.get(appObjects)!;
37
+ repo.createABB6700Entity("arm-1");
38
+
39
+ // Create and bind the Babylon.js view
40
+ const ao = appObjects.getOrCreate("arm-1");
41
+ const view = makeABB6700BabylonView(ao);
42
+ await view.setupView();
43
+ view.bindMeshes(loadedMeshes); // meshes from your GLB loader
44
+
45
+ // Control joints
46
+ const entity = ABB6700Entity.getById("arm-1", appObjects)!;
47
+ entity.j1 = Angle.FromDegrees(45);
48
+ entity.j2 = Angle.FromDegrees(90);
49
+ ```
50
+
51
+ ## Development
52
+
53
+ ```bash
54
+ npm install
55
+ npm run dev # Vite dev server with 3D playground
56
+ npm run dev:watch # Watch mode library rebuild
57
+ npm run test # Run unit tests
58
+ npm run lint # ESLint
59
+ npm run build # Production build
60
+ ```
61
+
62
+ ## Asset Upload Script
63
+
64
+ A reusable CLI script for uploading asset files (GLB models, textures, etc.) to the VIVED Asset System.
65
+
66
+ ### Prerequisites
67
+
68
+ - Node.js 18+
69
+ - A VIVED account with API access
70
+
71
+ ### Commands
72
+
73
+ **Create a new asset:**
74
+
75
+ ```bash
76
+ npm run upload-asset -- create <filePath>
77
+ ```
78
+
79
+ Uploads the file and creates a new asset record. Prints the new asset ID to stdout.
80
+
81
+ **Update an existing asset's file:**
82
+
83
+ ```bash
84
+ npm run upload-asset -- update <assetId> <filePath>
85
+ ```
86
+
87
+ Uploads the file and updates the asset record to point to the new file.
88
+
89
+ ### Examples
90
+
91
+ ```bash
92
+ # Upload the ABB6700 GLB as a new asset
93
+ npm run upload-asset -- create public/ABB6700.glb
94
+
95
+ # Update an existing asset with a new version of the file
96
+ npm run upload-asset -- update <asset-uuid> public/ABB6700.glb
97
+ ```
98
+
99
+ ### After uploading
100
+
101
+ After creating a new asset, add the returned asset ID to `src/component.config.ts`:
102
+
103
+ ```ts
104
+ assets: [
105
+ { name: "default", id: "<asset-id>", file: "ABB6700.glb" },
106
+ ],
107
+ ```
108
+
109
+ ### How it works
110
+
111
+ 1. Reads the owner ID from `package.json` `name` field
112
+ 2. Derives the asset name from the filename (e.g. `ABB6700.glb` → `ABB6700`)
113
+ 3. Prompts interactively for VIVED credentials (email + password)
114
+ 4. Authenticates via AWS Cognito
115
+ 5. Uploads the file to VIVED storage via a signed URL
116
+ 6. Creates or updates the asset metadata record via the VIVED API
117
+
118
+ Progress and status messages are printed to stderr. The asset ID (on create) is printed to stdout, making it easy to capture in scripts:
119
+
120
+ ```bash
121
+ ASSET_ID=$(npm run upload-asset -- create public/ABB6700.glb 2>/dev/null)
122
+ ```
package/dist/.gitkeep ADDED
File without changes
@@ -0,0 +1,10 @@
1
+ import { type PmAdapter } from "@vived/core";
2
+ import { type ABB6700VM } from "../PMs/ABB6700PM";
3
+ /**
4
+ * PM Adapter for ABB 6700
5
+ *
6
+ * Connects UI views to the ABB6700PM. Use this adapter in
7
+ * React components or Babylon views to subscribe to VM updates.
8
+ */
9
+ export declare const aBB6700PMAdapter: PmAdapter<ABB6700VM>;
10
+ //# sourceMappingURL=aBB6700PMAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aBB6700PMAdapter.d.ts","sourceRoot":"","sources":["../../src/Adapters/aBB6700PMAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EAAa,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,CAAC,SAAS,CAwCjD,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { AppObjectRepo } from "@vived/core";
2
+ /**
3
+ * Controller to create a new ABB 6700 instance.
4
+ * Resolves the singleton ABB6700Repo and delegates to its
5
+ * createABB6700Entity method.
6
+ *
7
+ * @param id - The ID for the new instance.
8
+ * @param appObjects - The AppObject repository.
9
+ * @returns The created AppObject, or undefined if the repo is not found.
10
+ */
11
+ export declare function createABB6700(id: string, appObjects: AppObjectRepo): import("@vived/core").AppObject | undefined;
12
+ //# sourceMappingURL=createABB6700.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createABB6700.d.ts","sourceRoot":"","sources":["../../src/Controllers/createABB6700.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,+CAUlE"}
@@ -0,0 +1,11 @@
1
+ import { AppObjectRepo } from "@vived/core";
2
+ import { type ABB6700Pose } from "../UCs/SetPoseUC";
3
+ /**
4
+ * Controller to get the current pose of an ABB 6700 instance.
5
+ *
6
+ * @param id - The ID of the ABB 6700 instance.
7
+ * @param appObjects - The AppObject repository.
8
+ * @returns The current pose, or undefined if the instance is not found.
9
+ */
10
+ export declare function getPose(id: string, appObjects: AppObjectRepo): ABB6700Pose | undefined;
11
+ //# sourceMappingURL=getPose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPose.d.ts","sourceRoot":"","sources":["../../src/Controllers/getPose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;;;;GAMG;AACH,wBAAgB,OAAO,CACrB,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,aAAa,GACxB,WAAW,GAAG,SAAS,CAmBzB"}
@@ -0,0 +1,12 @@
1
+ import { Angle, AppObjectRepo } from "@vived/core";
2
+ import { type ABB6700Joint } from "../UCs/SetJointAngleUC";
3
+ /**
4
+ * Controller to set the angle of a specific joint on an ABB 6700 instance.
5
+ *
6
+ * @param id - The ID of the ABB 6700 instance.
7
+ * @param joint - Which joint to set ("j1" through "j6").
8
+ * @param angle - The new angle value.
9
+ * @param appObjects - The AppObject repository.
10
+ */
11
+ export declare function setJointAngle(id: string, joint: ABB6700Joint, angle: Angle, appObjects: AppObjectRepo): void;
12
+ //# sourceMappingURL=setJointAngle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setJointAngle.d.ts","sourceRoot":"","sources":["../../src/Controllers/setJointAngle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,aAAa,GACxB,IAAI,CAYN"}
@@ -0,0 +1,11 @@
1
+ import { AppObjectRepo } from "@vived/core";
2
+ import { type ABB6700Pose } from "../UCs/SetPoseUC";
3
+ /**
4
+ * Controller to set all joint angles on an ABB 6700 instance at once.
5
+ *
6
+ * @param id - The ID of the ABB 6700 instance.
7
+ * @param pose - The pose to apply (j1 through j6 angles).
8
+ * @param appObjects - The AppObject repository.
9
+ */
10
+ export declare function setPose(id: string, pose: ABB6700Pose, appObjects: AppObjectRepo): void;
11
+ //# sourceMappingURL=setPose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setPose.d.ts","sourceRoot":"","sources":["../../src/Controllers/setPose.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/D;;;;;;GAMG;AACH,wBAAgB,OAAO,CACrB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,WAAW,EACjB,UAAU,EAAE,aAAa,GACxB,IAAI,CAYN"}
@@ -0,0 +1,35 @@
1
+ import { Angle, AppObject, AppObjectEntity, AppObjectRepo } from "@vived/core";
2
+ /**
3
+ * ABB 6700 Entity
4
+ *
5
+ * Domain entity representing a 6-DOF robot arm with rotational joints J1–J6.
6
+ * Each joint angle is stored as a MemoizedAngle with a default of 0 degrees.
7
+ * Multiple instances can exist in a scene, each with independent state.
8
+ */
9
+ export declare abstract class ABB6700Entity extends AppObjectEntity {
10
+ static readonly type = "ABB6700Entity";
11
+ abstract get j1(): Angle;
12
+ abstract set j1(val: Angle);
13
+ abstract get j2(): Angle;
14
+ abstract set j2(val: Angle);
15
+ abstract get j3(): Angle;
16
+ abstract set j3(val: Angle);
17
+ abstract get j4(): Angle;
18
+ abstract set j4(val: Angle);
19
+ abstract get j5(): Angle;
20
+ abstract set j5(val: Angle);
21
+ abstract get j6(): Angle;
22
+ abstract set j6(val: Angle);
23
+ abstract get stabilizerAngle(): Angle;
24
+ abstract set stabilizerAngle(val: Angle);
25
+ abstract get stabilizerExtension(): number;
26
+ abstract set stabilizerExtension(val: number);
27
+ static get(appObj: AppObject): ABB6700Entity | undefined;
28
+ static getById(id: string, appObjects: AppObjectRepo): ABB6700Entity | undefined;
29
+ static addIfMissing(appObj: AppObject): ABB6700Entity;
30
+ }
31
+ /**
32
+ * Factory function to create a new ABB6700Entity
33
+ */
34
+ export declare function makeABB6700Entity(appObject: AppObject): ABB6700Entity;
35
+ //# sourceMappingURL=ABB6700Entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ABB6700Entity.d.ts","sourceRoot":"","sources":["../../src/Entities/ABB6700Entity.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,SAAS,EACT,eAAe,EACf,aAAa,EAEd,MAAM,aAAa,CAAC;AAErB;;;;;;GAMG;AACH,8BAAsB,aAAc,SAAQ,eAAe;IACzD,MAAM,CAAC,QAAQ,CAAC,IAAI,mBAAmB;IAEvC,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC;IACzB,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE;IAE5B,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC;IACzB,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE;IAE5B,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC;IACzB,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE;IAE5B,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC;IACzB,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE;IAE5B,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC;IACzB,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE;IAE5B,QAAQ,KAAK,EAAE,IAAI,KAAK,CAAC;IACzB,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE;IAE5B,QAAQ,KAAK,eAAe,IAAI,KAAK,CAAC;IACtC,QAAQ,KAAK,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE;IAEzC,QAAQ,KAAK,mBAAmB,IAAI,MAAM,CAAC;IAC3C,QAAQ,KAAK,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE;IAE9C,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,SAAS;IAIxD,MAAM,CAAC,OAAO,CACZ,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,aAAa,GACxB,aAAa,GAAG,SAAS;IAI5B,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,aAAa;CAQtD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,aAAa,CAErE"}
@@ -0,0 +1,32 @@
1
+ import { AppObject, AppObjectEntityRepo, AppObjectRepo } from "@vived/core";
2
+ import { ABB6700Entity } from "./ABB6700Entity";
3
+ /** Factory function type for creating ABB6700Entity instances */
4
+ export type ABB6700EntityFactory = (id: string) => ABB6700Entity;
5
+ /**
6
+ * ABB6700Repo
7
+ *
8
+ * Singleton repository managing all ABB 6700 instances.
9
+ * Provides creation, deletion, and lookup for component entities.
10
+ */
11
+ export declare abstract class ABB6700Repo extends AppObjectEntityRepo<ABB6700Entity> {
12
+ static readonly type = "ABB6700Repo";
13
+ /** Injectable factory for creating entities with associated components */
14
+ abstract aBB6700EntityFactory: ABB6700EntityFactory;
15
+ /** Create a new entity instance, optionally with a specific ID */
16
+ abstract createABB6700Entity(id?: string): ABB6700Entity;
17
+ /** Delete an entity by its AppObject ID */
18
+ abstract deleteABB6700Entity(id: string): void;
19
+ /**
20
+ * Global accessor for the singleton repository
21
+ */
22
+ static get(appObjects: AppObjectRepo): ABB6700Repo | undefined;
23
+ /**
24
+ * Ensures a ABB6700Repo exists, creating one if needed
25
+ */
26
+ static addIfMissing(appObjects: AppObjectRepo): ABB6700Repo;
27
+ }
28
+ /**
29
+ * Factory function to create a new ABB6700Repo
30
+ */
31
+ export declare function makeABB6700Repo(appObject: AppObject): ABB6700Repo;
32
+ //# sourceMappingURL=ABB6700Repo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ABB6700Repo.d.ts","sourceRoot":"","sources":["../../src/Entities/ABB6700Repo.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,aAAa,EAGd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAqB,MAAM,iBAAiB,CAAC;AAEnE,iEAAiE;AACjE,MAAM,MAAM,oBAAoB,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC;AAEjE;;;;;GAKG;AACH,8BAAsB,WAAY,SAAQ,mBAAmB,CAAC,aAAa,CAAC;IAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,iBAAiB;IAErC,0EAA0E;IAC1E,QAAQ,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAEpD,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,aAAa;IAExD,2CAA2C;IAC3C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAE9C;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,aAAa,GAAG,WAAW,GAAG,SAAS;IAI9D;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,aAAa,GAAG,WAAW;CAS5D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW,CAEjE"}
@@ -0,0 +1,26 @@
1
+ import { AppObjectRepo, DomainFactory } from "@vived/core";
2
+ /**
3
+ * ABB6700FeatureFactory
4
+ *
5
+ * Orchestrates creation and wiring of the ABB 6700 feature.
6
+ * Follows the four-phase setup pattern:
7
+ * 1. setupEntities — Create singleton repository
8
+ * 2. setupUCs — Create singleton use cases (if any)
9
+ * 3. setupPMs — Create singleton PMs (if any)
10
+ * 4. finalSetup — Cross-component wiring
11
+ *
12
+ * Per-instance PMs are created on-demand via the entity factory.
13
+ */
14
+ export declare class ABB6700FeatureFactory extends DomainFactory {
15
+ factoryName: string;
16
+ private repo;
17
+ setupEntities(): void;
18
+ setupUCs(): void;
19
+ setupPMs(): void;
20
+ finalSetup(): void;
21
+ }
22
+ /**
23
+ * Creates and registers the ABB6700FeatureFactory
24
+ */
25
+ export declare function makeABB6700FeatureFactory(appObjects: AppObjectRepo): ABB6700FeatureFactory;
26
+ //# sourceMappingURL=ABB6700FeatureFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ABB6700FeatureFactory.d.ts","sourceRoot":"","sources":["../../src/Factory/ABB6700FeatureFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI3D;;;;;;;;;;;GAWG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACtD,WAAW,SAA2B;IAEtC,OAAO,CAAC,IAAI,CAA4B;IAExC,aAAa,IAAI,IAAI;IAKrB,QAAQ,IAAI,IAAI;IAIhB,QAAQ,IAAI,IAAI;IAIhB,UAAU,IAAI,IAAI;CAGnB;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,aAAa,GACxB,qBAAqB,CAGvB"}
@@ -0,0 +1,11 @@
1
+ import { AppObject } from "@vived/core";
2
+ import { ABB6700PM } from "../PMs/ABB6700PM";
3
+ /**
4
+ * Mock PM for testing views and adapters in isolation.
5
+ * Always suppresses duplicate emission in tests.
6
+ */
7
+ export declare class MockABB6700PM extends ABB6700PM {
8
+ vmsAreEqual: () => boolean;
9
+ constructor(appObject: AppObject);
10
+ }
11
+ //# sourceMappingURL=MockABB6700PM.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockABB6700PM.d.ts","sourceRoot":"","sources":["../../src/Mocks/MockABB6700PM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,SAAS,EAEV,MAAM,kBAAkB,CAAC;AAE1B;;;GAGG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,WAAW,QAAO,OAAO,CAAS;gBAEtB,SAAS,EAAE,SAAS;CAGjC"}
@@ -0,0 +1,7 @@
1
+ import { Angle, AppObject } from "@vived/core";
2
+ import { ABB6700Joint, SetJointAngleUC } from "../UCs/SetJointAngleUC";
3
+ export declare class MockSetJointAngleUC extends SetJointAngleUC {
4
+ setAngle: (_joint: ABB6700Joint, _angle: Angle) => void;
5
+ constructor(appObject: AppObject);
6
+ }
7
+ //# sourceMappingURL=MockSetJointAngleUC.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockSetJointAngleUC.d.ts","sourceRoot":"","sources":["../../src/Mocks/MockSetJointAngleUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEvE,qBAAa,mBAAoB,SAAQ,eAAe;IACtD,QAAQ,GAAI,QAAQ,YAAY,EAAE,QAAQ,KAAK,KAAG,IAAI,CAAO;gBAEjD,SAAS,EAAE,SAAS;CAGjC"}
@@ -0,0 +1,7 @@
1
+ import { AppObject } from "@vived/core";
2
+ import { ABB6700Pose, SetPoseUC } from "../UCs/SetPoseUC";
3
+ export declare class MockSetPoseUC extends SetPoseUC {
4
+ setPose: (_pose: ABB6700Pose) => void;
5
+ constructor(appObject: AppObject);
6
+ }
7
+ //# sourceMappingURL=MockSetPoseUC.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MockSetPoseUC.d.ts","sourceRoot":"","sources":["../../src/Mocks/MockSetPoseUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE1D,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,GAAI,OAAO,WAAW,KAAG,IAAI,CAAO;gBAE/B,SAAS,EAAE,SAAS;CAGjC"}
@@ -0,0 +1,32 @@
1
+ import { Angle, AppObject, AppObjectPM, AppObjectRepo } from "@vived/core";
2
+ /**
3
+ * View Model for ABB 6700 joint angle display.
4
+ * Immutable snapshot of 6-DOF joint state suitable for views.
5
+ */
6
+ export interface ABB6700VM {
7
+ j1: Angle;
8
+ j2: Angle;
9
+ j3: Angle;
10
+ j4: Angle;
11
+ j5: Angle;
12
+ j6: Angle;
13
+ stabilizerAngle: Angle;
14
+ stabilizerExtension: number;
15
+ }
16
+ /**
17
+ * ABB6700PM
18
+ *
19
+ * Presentation Manager that observes the ABB6700Entity and
20
+ * emits immutable view models for UI consumption. Suppresses redundant
21
+ * updates when state hasn't changed.
22
+ */
23
+ export declare abstract class ABB6700PM extends AppObjectPM<ABB6700VM> {
24
+ static readonly type = "ABB6700PM";
25
+ static get(appObj: AppObject): ABB6700PM | undefined;
26
+ static getById(id: string, appObjects: AppObjectRepo): ABB6700PM | undefined;
27
+ }
28
+ /**
29
+ * Factory function to create a new ABB6700PM
30
+ */
31
+ export declare function makeABB6700PM(appObject: AppObject): ABB6700PM;
32
+ //# sourceMappingURL=ABB6700PM.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ABB6700PM.d.ts","sourceRoot":"","sources":["../../src/PMs/ABB6700PM.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG3E;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,eAAe,EAAE,KAAK,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,8BAAsB,SAAU,SAAQ,WAAW,CAAC,SAAS,CAAC;IAC5D,MAAM,CAAC,QAAQ,CAAC,IAAI,eAAe;IAEnC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS;IAIpD,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS;CAG7E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAE7D"}
@@ -0,0 +1,7 @@
1
+ import { AppObject, AppObjectUC } from "@vived/core";
2
+ export declare abstract class CalcStabilizerUC extends AppObjectUC {
3
+ static readonly type = "CalcStabilizerUC";
4
+ static get(appObj: AppObject): CalcStabilizerUC | undefined;
5
+ }
6
+ export declare function makeCalcStabilizerUC(appObject: AppObject): CalcStabilizerUC;
7
+ //# sourceMappingURL=CalcStabilizerUC.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CalcStabilizerUC.d.ts","sourceRoot":"","sources":["../../src/UCs/CalcStabilizerUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAiB5D,8BAAsB,gBAAiB,SAAQ,WAAW;IACxD,MAAM,CAAC,QAAQ,CAAC,IAAI,sBAAsB;IAE1C,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,gBAAgB,GAAG,SAAS;CAG5D;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,gBAAgB,CAE3E"}
@@ -0,0 +1,15 @@
1
+ import { Angle, AppObject, AppObjectRepo, AppObjectUC } from "@vived/core";
2
+ export type ABB6700Joint = "j1" | "j2" | "j3" | "j4" | "j5" | "j6";
3
+ /**
4
+ * SetJointAngleUC
5
+ *
6
+ * Use case for setting the angle of a specific joint on an ABB 6700 instance.
7
+ */
8
+ export declare abstract class SetJointAngleUC extends AppObjectUC {
9
+ static readonly type = "SetJointAngleUC";
10
+ abstract setAngle(joint: ABB6700Joint, angle: Angle): void;
11
+ static get(appObj: AppObject): SetJointAngleUC | undefined;
12
+ static getById(id: string, appObjects: AppObjectRepo): SetJointAngleUC | undefined;
13
+ }
14
+ export declare function makeSetJointAngleUC(appObject: AppObject): SetJointAngleUC;
15
+ //# sourceMappingURL=SetJointAngleUC.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetJointAngleUC.d.ts","sourceRoot":"","sources":["../../src/UCs/SetJointAngleUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG3E,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnE;;;;GAIG;AACH,8BAAsB,eAAgB,SAAQ,WAAW;IACvD,MAAM,CAAC,QAAQ,CAAC,IAAI,qBAAqB;IAEzC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAE1D,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS;IAI1D,MAAM,CAAC,OAAO,CACZ,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,aAAa,GACxB,eAAe,GAAG,SAAS;CAG/B;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,eAAe,CAEzE"}
@@ -0,0 +1,22 @@
1
+ import { Angle, AppObject, AppObjectRepo, AppObjectUC } from "@vived/core";
2
+ export interface ABB6700Pose {
3
+ j1: Angle;
4
+ j2: Angle;
5
+ j3: Angle;
6
+ j4: Angle;
7
+ j5: Angle;
8
+ j6: Angle;
9
+ }
10
+ /**
11
+ * SetPoseUC
12
+ *
13
+ * Use case for setting all joint angles on an ABB 6700 instance atomically.
14
+ */
15
+ export declare abstract class SetPoseUC extends AppObjectUC {
16
+ static readonly type = "SetPoseUC";
17
+ abstract setPose(pose: ABB6700Pose): void;
18
+ static get(appObj: AppObject): SetPoseUC | undefined;
19
+ static getById(id: string, appObjects: AppObjectRepo): SetPoseUC | undefined;
20
+ }
21
+ export declare function makeSetPoseUC(appObject: AppObject): SetPoseUC;
22
+ //# sourceMappingURL=SetPoseUC.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetPoseUC.d.ts","sourceRoot":"","sources":["../../src/UCs/SetPoseUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG3E,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;IACV,EAAE,EAAE,KAAK,CAAC;CACX;AAED;;;;GAIG;AACH,8BAAsB,SAAU,SAAQ,WAAW;IACjD,MAAM,CAAC,QAAQ,CAAC,IAAI,eAAe;IAEnC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAEzC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS;IAIpD,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,GAAG,SAAS,GAAG,SAAS;CAG7E;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS,CAE7D"}
@@ -0,0 +1,27 @@
1
+ import "@babylonjs/loaders/glTF";
2
+ import { AppObject, AppObjectView } from "@vived/core";
3
+ import { AbstractMesh, Scene, TransformNode } from "@babylonjs/core";
4
+ export type { ABB6700Joint } from "../UCs/SetJointAngleUC";
5
+ /**
6
+ * ABB6700BabylonView
7
+ *
8
+ * Babylon.js view for the ABB 6700. Subscribes to the PM via the adapter
9
+ * automatically in the constructor.
10
+ */
11
+ export declare abstract class ABB6700BabylonView extends AppObjectView {
12
+ static readonly type = "ABB6700BabylonView";
13
+ /**
14
+ * @deprecated Subscription is now handled automatically in the constructor.
15
+ */
16
+ setupView(): Promise<void>;
17
+ /** Load the robot GLB asset and bind its meshes to this view */
18
+ abstract load(scene: Scene): Promise<void>;
19
+ /** Bind loaded meshes and transform nodes to this view for rendering */
20
+ protected abstract bindMeshes(meshes: AbstractMesh[], transformNodes?: TransformNode[]): void;
21
+ static get(appObj: AppObject): ABB6700BabylonView | undefined;
22
+ }
23
+ /**
24
+ * Factory function to create a ABB6700BabylonView
25
+ */
26
+ export declare function makeABB6700BabylonView(appObject: AppObject): ABB6700BabylonView;
27
+ //# sourceMappingURL=ABB6700BabylonView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ABB6700BabylonView.d.ts","sourceRoot":"","sources":["../../src/Views/ABB6700BabylonView.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EACL,YAAY,EAEZ,KAAK,EAEL,aAAa,EACd,MAAM,iBAAiB,CAAC;AAMzB,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAU3D;;;;;GAKG;AACH,8BAAsB,kBAAmB,SAAQ,aAAa;IAC5D,MAAM,CAAC,QAAQ,CAAC,IAAI,wBAAwB;IAE5C;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAEhC,gEAAgE;IAChE,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1C,wEAAwE;IACxE,SAAS,CAAC,QAAQ,CAAC,UAAU,CAC3B,MAAM,EAAE,YAAY,EAAE,EACtB,cAAc,CAAC,EAAE,aAAa,EAAE,GAC/B,IAAI;IAEP,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,kBAAkB,GAAG,SAAS;CAG9D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,SAAS,GACnB,kBAAkB,CAEpB"}
Binary file
@@ -0,0 +1,14 @@
1
+ import { e as o } from "./index-CS3Icp_r.js";
2
+ class u extends o {
3
+ constructor(s, t) {
4
+ super(
5
+ s,
6
+ t,
7
+ 3
8
+ /* AudioNodeType.HAS_INPUTS_AND_OUTPUTS */
9
+ );
10
+ }
11
+ }
12
+ export {
13
+ u as A
14
+ };