@powerhousedao/network-admin 0.0.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.
Files changed (509) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +179 -0
  3. package/dist/document-models/index.d.ts +6 -0
  4. package/dist/document-models/index.d.ts.map +1 -0
  5. package/dist/document-models/index.js +4 -0
  6. package/dist/document-models/network-profile/gen/actions.d.ts +4 -0
  7. package/dist/document-models/network-profile/gen/actions.d.ts.map +1 -0
  8. package/dist/document-models/network-profile/gen/actions.js +1 -0
  9. package/dist/document-models/network-profile/gen/creators.d.ts +2 -0
  10. package/dist/document-models/network-profile/gen/creators.d.ts.map +1 -0
  11. package/dist/document-models/network-profile/gen/creators.js +1 -0
  12. package/dist/document-models/network-profile/gen/document-model.d.ts +3 -0
  13. package/dist/document-models/network-profile/gen/document-model.d.ts.map +1 -0
  14. package/dist/document-models/network-profile/gen/document-model.js +158 -0
  15. package/dist/document-models/network-profile/gen/index.d.ts +6 -0
  16. package/dist/document-models/network-profile/gen/index.d.ts.map +1 -0
  17. package/dist/document-models/network-profile/gen/index.js +5 -0
  18. package/dist/document-models/network-profile/gen/network-profile-management/actions.d.ts +48 -0
  19. package/dist/document-models/network-profile/gen/network-profile-management/actions.d.ts.map +1 -0
  20. package/dist/document-models/network-profile/gen/network-profile-management/actions.js +1 -0
  21. package/dist/document-models/network-profile/gen/network-profile-management/creators.d.ts +14 -0
  22. package/dist/document-models/network-profile/gen/network-profile-management/creators.d.ts.map +1 -0
  23. package/dist/document-models/network-profile/gen/network-profile-management/creators.js +13 -0
  24. package/dist/document-models/network-profile/gen/network-profile-management/error.d.ts +2 -0
  25. package/dist/document-models/network-profile/gen/network-profile-management/error.d.ts.map +1 -0
  26. package/dist/document-models/network-profile/gen/network-profile-management/error.js +1 -0
  27. package/dist/document-models/network-profile/gen/network-profile-management/object.d.ts +17 -0
  28. package/dist/document-models/network-profile/gen/network-profile-management/object.d.ts.map +1 -0
  29. package/dist/document-models/network-profile/gen/network-profile-management/object.js +37 -0
  30. package/dist/document-models/network-profile/gen/network-profile-management/operations.d.ts +17 -0
  31. package/dist/document-models/network-profile/gen/network-profile-management/operations.d.ts.map +1 -0
  32. package/dist/document-models/network-profile/gen/network-profile-management/operations.js +1 -0
  33. package/dist/document-models/network-profile/gen/object.d.ts +16 -0
  34. package/dist/document-models/network-profile/gen/object.d.ts.map +1 -0
  35. package/dist/document-models/network-profile/gen/object.js +25 -0
  36. package/dist/document-models/network-profile/gen/reducer.d.ts +3 -0
  37. package/dist/document-models/network-profile/gen/reducer.d.ts.map +1 -0
  38. package/dist/document-models/network-profile/gen/reducer.js +60 -0
  39. package/dist/document-models/network-profile/gen/schema/index.d.ts +3 -0
  40. package/dist/document-models/network-profile/gen/schema/index.d.ts.map +1 -0
  41. package/dist/document-models/network-profile/gen/schema/index.js +2 -0
  42. package/dist/document-models/network-profile/gen/schema/types.d.ts +184 -0
  43. package/dist/document-models/network-profile/gen/schema/types.d.ts.map +1 -0
  44. package/dist/document-models/network-profile/gen/schema/types.js +1 -0
  45. package/dist/document-models/network-profile/gen/schema/zod.d.ts +23 -0
  46. package/dist/document-models/network-profile/gen/schema/zod.d.ts.map +1 -0
  47. package/dist/document-models/network-profile/gen/schema/zod.js +83 -0
  48. package/dist/document-models/network-profile/gen/types.d.ts +10 -0
  49. package/dist/document-models/network-profile/gen/types.d.ts.map +1 -0
  50. package/dist/document-models/network-profile/gen/types.js +1 -0
  51. package/dist/document-models/network-profile/gen/utils.d.ts +13 -0
  52. package/dist/document-models/network-profile/gen/utils.d.ts.map +1 -0
  53. package/dist/document-models/network-profile/gen/utils.js +52 -0
  54. package/dist/document-models/network-profile/index.d.ts +35 -0
  55. package/dist/document-models/network-profile/index.d.ts.map +1 -0
  56. package/dist/document-models/network-profile/index.js +21 -0
  57. package/dist/document-models/network-profile/ph-factories.d.ts +27 -0
  58. package/dist/document-models/network-profile/ph-factories.d.ts.map +1 -0
  59. package/dist/document-models/network-profile/ph-factories.js +60 -0
  60. package/dist/document-models/network-profile/src/reducers/network-profile-management.d.ts +8 -0
  61. package/dist/document-models/network-profile/src/reducers/network-profile-management.d.ts.map +1 -0
  62. package/dist/document-models/network-profile/src/reducers/network-profile-management.js +40 -0
  63. package/dist/document-models/network-profile/src/tests/document-model.test.d.ts +6 -0
  64. package/dist/document-models/network-profile/src/tests/document-model.test.d.ts.map +1 -0
  65. package/dist/document-models/network-profile/src/tests/document-model.test.js +18 -0
  66. package/dist/document-models/network-profile/src/tests/network-profile-management.test.d.ts +6 -0
  67. package/dist/document-models/network-profile/src/tests/network-profile-management.test.d.ts.map +1 -0
  68. package/dist/document-models/network-profile/src/tests/network-profile-management.test.js +164 -0
  69. package/dist/document-models/network-profile/src/utils.d.ts +2 -0
  70. package/dist/document-models/network-profile/src/utils.d.ts.map +1 -0
  71. package/dist/document-models/network-profile/src/utils.js +1 -0
  72. package/dist/document-models/payment-terms/gen/actions.d.ts +8 -0
  73. package/dist/document-models/payment-terms/gen/actions.d.ts.map +1 -0
  74. package/dist/document-models/payment-terms/gen/actions.js +3 -0
  75. package/dist/document-models/payment-terms/gen/clauses/actions.d.ts +28 -0
  76. package/dist/document-models/payment-terms/gen/clauses/actions.d.ts.map +1 -0
  77. package/dist/document-models/payment-terms/gen/clauses/actions.js +1 -0
  78. package/dist/document-models/payment-terms/gen/clauses/creators.d.ts +9 -0
  79. package/dist/document-models/payment-terms/gen/clauses/creators.d.ts.map +1 -0
  80. package/dist/document-models/payment-terms/gen/clauses/creators.js +8 -0
  81. package/dist/document-models/payment-terms/gen/clauses/error.d.ts +41 -0
  82. package/dist/document-models/payment-terms/gen/clauses/error.d.ts.map +1 -0
  83. package/dist/document-models/payment-terms/gen/clauses/error.js +44 -0
  84. package/dist/document-models/payment-terms/gen/clauses/object.d.ts +12 -0
  85. package/dist/document-models/payment-terms/gen/clauses/object.d.ts.map +1 -0
  86. package/dist/document-models/payment-terms/gen/clauses/object.js +22 -0
  87. package/dist/document-models/payment-terms/gen/clauses/operations.d.ts +12 -0
  88. package/dist/document-models/payment-terms/gen/clauses/operations.d.ts.map +1 -0
  89. package/dist/document-models/payment-terms/gen/clauses/operations.js +1 -0
  90. package/dist/document-models/payment-terms/gen/creators.d.ts +4 -0
  91. package/dist/document-models/payment-terms/gen/creators.d.ts.map +1 -0
  92. package/dist/document-models/payment-terms/gen/creators.js +3 -0
  93. package/dist/document-models/payment-terms/gen/document-model.d.ts +3 -0
  94. package/dist/document-models/payment-terms/gen/document-model.d.ts.map +1 -0
  95. package/dist/document-models/payment-terms/gen/document-model.js +318 -0
  96. package/dist/document-models/payment-terms/gen/index.d.ts +6 -0
  97. package/dist/document-models/payment-terms/gen/index.d.ts.map +1 -0
  98. package/dist/document-models/payment-terms/gen/index.js +5 -0
  99. package/dist/document-models/payment-terms/gen/milestones/actions.d.ts +24 -0
  100. package/dist/document-models/payment-terms/gen/milestones/actions.d.ts.map +1 -0
  101. package/dist/document-models/payment-terms/gen/milestones/actions.js +1 -0
  102. package/dist/document-models/payment-terms/gen/milestones/creators.d.ts +8 -0
  103. package/dist/document-models/payment-terms/gen/milestones/creators.d.ts.map +1 -0
  104. package/dist/document-models/payment-terms/gen/milestones/creators.js +7 -0
  105. package/dist/document-models/payment-terms/gen/milestones/error.d.ts +27 -0
  106. package/dist/document-models/payment-terms/gen/milestones/error.d.ts.map +1 -0
  107. package/dist/document-models/payment-terms/gen/milestones/error.js +26 -0
  108. package/dist/document-models/payment-terms/gen/milestones/object.d.ts +11 -0
  109. package/dist/document-models/payment-terms/gen/milestones/object.d.ts.map +1 -0
  110. package/dist/document-models/payment-terms/gen/milestones/object.js +19 -0
  111. package/dist/document-models/payment-terms/gen/milestones/operations.d.ts +11 -0
  112. package/dist/document-models/payment-terms/gen/milestones/operations.d.ts.map +1 -0
  113. package/dist/document-models/payment-terms/gen/milestones/operations.js +1 -0
  114. package/dist/document-models/payment-terms/gen/object.d.ts +20 -0
  115. package/dist/document-models/payment-terms/gen/object.d.ts.map +1 -0
  116. package/dist/document-models/payment-terms/gen/object.js +33 -0
  117. package/dist/document-models/payment-terms/gen/reducer.d.ts +3 -0
  118. package/dist/document-models/payment-terms/gen/reducer.d.ts.map +1 -0
  119. package/dist/document-models/payment-terms/gen/reducer.js +86 -0
  120. package/dist/document-models/payment-terms/gen/schema/index.d.ts +3 -0
  121. package/dist/document-models/payment-terms/gen/schema/index.d.ts.map +1 -0
  122. package/dist/document-models/payment-terms/gen/schema/index.js +2 -0
  123. package/dist/document-models/payment-terms/gen/schema/types.d.ts +298 -0
  124. package/dist/document-models/payment-terms/gen/schema/types.d.ts.map +1 -0
  125. package/dist/document-models/payment-terms/gen/schema/types.js +1 -0
  126. package/dist/document-models/payment-terms/gen/schema/zod.d.ts +41 -0
  127. package/dist/document-models/payment-terms/gen/schema/zod.d.ts.map +1 -0
  128. package/dist/document-models/payment-terms/gen/schema/zod.js +291 -0
  129. package/dist/document-models/payment-terms/gen/terms/actions.d.ts +28 -0
  130. package/dist/document-models/payment-terms/gen/terms/actions.d.ts.map +1 -0
  131. package/dist/document-models/payment-terms/gen/terms/actions.js +1 -0
  132. package/dist/document-models/payment-terms/gen/terms/creators.d.ts +9 -0
  133. package/dist/document-models/payment-terms/gen/terms/creators.d.ts.map +1 -0
  134. package/dist/document-models/payment-terms/gen/terms/creators.js +8 -0
  135. package/dist/document-models/payment-terms/gen/terms/error.d.ts +2 -0
  136. package/dist/document-models/payment-terms/gen/terms/error.d.ts.map +1 -0
  137. package/dist/document-models/payment-terms/gen/terms/error.js +1 -0
  138. package/dist/document-models/payment-terms/gen/terms/object.d.ts +12 -0
  139. package/dist/document-models/payment-terms/gen/terms/object.d.ts.map +1 -0
  140. package/dist/document-models/payment-terms/gen/terms/object.js +22 -0
  141. package/dist/document-models/payment-terms/gen/terms/operations.d.ts +12 -0
  142. package/dist/document-models/payment-terms/gen/terms/operations.d.ts.map +1 -0
  143. package/dist/document-models/payment-terms/gen/terms/operations.js +1 -0
  144. package/dist/document-models/payment-terms/gen/types.d.ts +10 -0
  145. package/dist/document-models/payment-terms/gen/types.d.ts.map +1 -0
  146. package/dist/document-models/payment-terms/gen/types.js +1 -0
  147. package/dist/document-models/payment-terms/gen/utils.d.ts +13 -0
  148. package/dist/document-models/payment-terms/gen/utils.d.ts.map +1 -0
  149. package/dist/document-models/payment-terms/gen/utils.js +54 -0
  150. package/dist/document-models/payment-terms/index.d.ts +41 -0
  151. package/dist/document-models/payment-terms/index.d.ts.map +1 -0
  152. package/dist/document-models/payment-terms/index.js +21 -0
  153. package/dist/document-models/payment-terms/ph-factories.d.ts +27 -0
  154. package/dist/document-models/payment-terms/ph-factories.d.ts.map +1 -0
  155. package/dist/document-models/payment-terms/ph-factories.js +62 -0
  156. package/dist/document-models/payment-terms/src/reducers/clauses.d.ts +3 -0
  157. package/dist/document-models/payment-terms/src/reducers/clauses.d.ts.map +1 -0
  158. package/dist/document-models/payment-terms/src/reducers/clauses.js +69 -0
  159. package/dist/document-models/payment-terms/src/reducers/milestones.d.ts +3 -0
  160. package/dist/document-models/payment-terms/src/reducers/milestones.d.ts.map +1 -0
  161. package/dist/document-models/payment-terms/src/reducers/milestones.js +57 -0
  162. package/dist/document-models/payment-terms/src/reducers/terms.d.ts +3 -0
  163. package/dist/document-models/payment-terms/src/reducers/terms.d.ts.map +1 -0
  164. package/dist/document-models/payment-terms/src/reducers/terms.js +48 -0
  165. package/dist/document-models/payment-terms/src/tests/clauses.test.d.ts +6 -0
  166. package/dist/document-models/payment-terms/src/tests/clauses.test.d.ts.map +1 -0
  167. package/dist/document-models/payment-terms/src/tests/clauses.test.js +64 -0
  168. package/dist/document-models/payment-terms/src/tests/document-model.test.d.ts +6 -0
  169. package/dist/document-models/payment-terms/src/tests/document-model.test.d.ts.map +1 -0
  170. package/dist/document-models/payment-terms/src/tests/document-model.test.js +18 -0
  171. package/dist/document-models/payment-terms/src/tests/milestones.test.d.ts +6 -0
  172. package/dist/document-models/payment-terms/src/tests/milestones.test.d.ts.map +1 -0
  173. package/dist/document-models/payment-terms/src/tests/milestones.test.js +56 -0
  174. package/dist/document-models/payment-terms/src/tests/terms.test.d.ts +6 -0
  175. package/dist/document-models/payment-terms/src/tests/terms.test.d.ts.map +1 -0
  176. package/dist/document-models/payment-terms/src/tests/terms.test.js +64 -0
  177. package/dist/document-models/payment-terms/src/utils.d.ts +2 -0
  178. package/dist/document-models/payment-terms/src/utils.d.ts.map +1 -0
  179. package/dist/document-models/payment-terms/src/utils.js +1 -0
  180. package/dist/document-models/request-for-proposals/gen/actions.d.ts +8 -0
  181. package/dist/document-models/request-for-proposals/gen/actions.d.ts.map +1 -0
  182. package/dist/document-models/request-for-proposals/gen/actions.js +3 -0
  183. package/dist/document-models/request-for-proposals/gen/contex-document/actions.d.ts +12 -0
  184. package/dist/document-models/request-for-proposals/gen/contex-document/actions.d.ts.map +1 -0
  185. package/dist/document-models/request-for-proposals/gen/contex-document/actions.js +1 -0
  186. package/dist/document-models/request-for-proposals/gen/contex-document/creators.d.ts +5 -0
  187. package/dist/document-models/request-for-proposals/gen/contex-document/creators.d.ts.map +1 -0
  188. package/dist/document-models/request-for-proposals/gen/contex-document/creators.js +4 -0
  189. package/dist/document-models/request-for-proposals/gen/contex-document/error.d.ts +2 -0
  190. package/dist/document-models/request-for-proposals/gen/contex-document/error.d.ts.map +1 -0
  191. package/dist/document-models/request-for-proposals/gen/contex-document/error.js +1 -0
  192. package/dist/document-models/request-for-proposals/gen/contex-document/object.d.ts +8 -0
  193. package/dist/document-models/request-for-proposals/gen/contex-document/object.d.ts.map +1 -0
  194. package/dist/document-models/request-for-proposals/gen/contex-document/object.js +10 -0
  195. package/dist/document-models/request-for-proposals/gen/contex-document/operations.d.ts +8 -0
  196. package/dist/document-models/request-for-proposals/gen/contex-document/operations.d.ts.map +1 -0
  197. package/dist/document-models/request-for-proposals/gen/contex-document/operations.js +1 -0
  198. package/dist/document-models/request-for-proposals/gen/creators.d.ts +4 -0
  199. package/dist/document-models/request-for-proposals/gen/creators.d.ts.map +1 -0
  200. package/dist/document-models/request-for-proposals/gen/creators.js +3 -0
  201. package/dist/document-models/request-for-proposals/gen/document-model.d.ts +3 -0
  202. package/dist/document-models/request-for-proposals/gen/document-model.d.ts.map +1 -0
  203. package/dist/document-models/request-for-proposals/gen/document-model.js +117 -0
  204. package/dist/document-models/request-for-proposals/gen/index.d.ts +6 -0
  205. package/dist/document-models/request-for-proposals/gen/index.d.ts.map +1 -0
  206. package/dist/document-models/request-for-proposals/gen/index.js +5 -0
  207. package/dist/document-models/request-for-proposals/gen/object.d.ts +20 -0
  208. package/dist/document-models/request-for-proposals/gen/object.d.ts.map +1 -0
  209. package/dist/document-models/request-for-proposals/gen/object.js +33 -0
  210. package/dist/document-models/request-for-proposals/gen/proposals/actions.d.ts +16 -0
  211. package/dist/document-models/request-for-proposals/gen/proposals/actions.d.ts.map +1 -0
  212. package/dist/document-models/request-for-proposals/gen/proposals/actions.js +1 -0
  213. package/dist/document-models/request-for-proposals/gen/proposals/creators.d.ts +6 -0
  214. package/dist/document-models/request-for-proposals/gen/proposals/creators.d.ts.map +1 -0
  215. package/dist/document-models/request-for-proposals/gen/proposals/creators.js +5 -0
  216. package/dist/document-models/request-for-proposals/gen/proposals/error.d.ts +2 -0
  217. package/dist/document-models/request-for-proposals/gen/proposals/error.d.ts.map +1 -0
  218. package/dist/document-models/request-for-proposals/gen/proposals/error.js +1 -0
  219. package/dist/document-models/request-for-proposals/gen/proposals/object.d.ts +9 -0
  220. package/dist/document-models/request-for-proposals/gen/proposals/object.d.ts.map +1 -0
  221. package/dist/document-models/request-for-proposals/gen/proposals/object.js +13 -0
  222. package/dist/document-models/request-for-proposals/gen/proposals/operations.d.ts +9 -0
  223. package/dist/document-models/request-for-proposals/gen/proposals/operations.d.ts.map +1 -0
  224. package/dist/document-models/request-for-proposals/gen/proposals/operations.js +1 -0
  225. package/dist/document-models/request-for-proposals/gen/reducer.d.ts +3 -0
  226. package/dist/document-models/request-for-proposals/gen/reducer.d.ts.map +1 -0
  227. package/dist/document-models/request-for-proposals/gen/reducer.js +42 -0
  228. package/dist/document-models/request-for-proposals/gen/rfp-state/actions.d.ts +8 -0
  229. package/dist/document-models/request-for-proposals/gen/rfp-state/actions.d.ts.map +1 -0
  230. package/dist/document-models/request-for-proposals/gen/rfp-state/actions.js +1 -0
  231. package/dist/document-models/request-for-proposals/gen/rfp-state/creators.d.ts +4 -0
  232. package/dist/document-models/request-for-proposals/gen/rfp-state/creators.d.ts.map +1 -0
  233. package/dist/document-models/request-for-proposals/gen/rfp-state/creators.js +3 -0
  234. package/dist/document-models/request-for-proposals/gen/rfp-state/error.d.ts +2 -0
  235. package/dist/document-models/request-for-proposals/gen/rfp-state/error.d.ts.map +1 -0
  236. package/dist/document-models/request-for-proposals/gen/rfp-state/error.js +1 -0
  237. package/dist/document-models/request-for-proposals/gen/rfp-state/object.d.ts +7 -0
  238. package/dist/document-models/request-for-proposals/gen/rfp-state/object.d.ts.map +1 -0
  239. package/dist/document-models/request-for-proposals/gen/rfp-state/object.js +7 -0
  240. package/dist/document-models/request-for-proposals/gen/rfp-state/operations.d.ts +7 -0
  241. package/dist/document-models/request-for-proposals/gen/rfp-state/operations.d.ts.map +1 -0
  242. package/dist/document-models/request-for-proposals/gen/rfp-state/operations.js +1 -0
  243. package/dist/document-models/request-for-proposals/gen/schema/index.d.ts +3 -0
  244. package/dist/document-models/request-for-proposals/gen/schema/index.d.ts.map +1 -0
  245. package/dist/document-models/request-for-proposals/gen/schema/index.js +2 -0
  246. package/dist/document-models/request-for-proposals/gen/schema/types.d.ts +231 -0
  247. package/dist/document-models/request-for-proposals/gen/schema/types.d.ts.map +1 -0
  248. package/dist/document-models/request-for-proposals/gen/schema/types.js +1 -0
  249. package/dist/document-models/request-for-proposals/gen/schema/zod.d.ts +30 -0
  250. package/dist/document-models/request-for-proposals/gen/schema/zod.d.ts.map +1 -0
  251. package/dist/document-models/request-for-proposals/gen/schema/zod.js +176 -0
  252. package/dist/document-models/request-for-proposals/gen/types.d.ts +10 -0
  253. package/dist/document-models/request-for-proposals/gen/types.d.ts.map +1 -0
  254. package/dist/document-models/request-for-proposals/gen/types.js +1 -0
  255. package/dist/document-models/request-for-proposals/gen/utils.d.ts +13 -0
  256. package/dist/document-models/request-for-proposals/gen/utils.d.ts.map +1 -0
  257. package/dist/document-models/request-for-proposals/gen/utils.js +59 -0
  258. package/dist/document-models/request-for-proposals/index.d.ts +30 -0
  259. package/dist/document-models/request-for-proposals/index.d.ts.map +1 -0
  260. package/dist/document-models/request-for-proposals/index.js +21 -0
  261. package/dist/document-models/request-for-proposals/ph-factories.d.ts +27 -0
  262. package/dist/document-models/request-for-proposals/ph-factories.d.ts.map +1 -0
  263. package/dist/document-models/request-for-proposals/ph-factories.js +67 -0
  264. package/dist/document-models/request-for-proposals/src/reducers/contex-document.d.ts +8 -0
  265. package/dist/document-models/request-for-proposals/src/reducers/contex-document.d.ts.map +1 -0
  266. package/dist/document-models/request-for-proposals/src/reducers/contex-document.js +27 -0
  267. package/dist/document-models/request-for-proposals/src/reducers/proposals.d.ts +8 -0
  268. package/dist/document-models/request-for-proposals/src/reducers/proposals.d.ts.map +1 -0
  269. package/dist/document-models/request-for-proposals/src/reducers/proposals.js +56 -0
  270. package/dist/document-models/request-for-proposals/src/reducers/rfp-state.d.ts +8 -0
  271. package/dist/document-models/request-for-proposals/src/reducers/rfp-state.d.ts.map +1 -0
  272. package/dist/document-models/request-for-proposals/src/reducers/rfp-state.js +24 -0
  273. package/dist/document-models/request-for-proposals/src/tests/contex-document.test.d.ts +5 -0
  274. package/dist/document-models/request-for-proposals/src/tests/contex-document.test.d.ts.map +1 -0
  275. package/dist/document-models/request-for-proposals/src/tests/contex-document.test.js +185 -0
  276. package/dist/document-models/request-for-proposals/src/tests/document-model.test.d.ts +6 -0
  277. package/dist/document-models/request-for-proposals/src/tests/document-model.test.d.ts.map +1 -0
  278. package/dist/document-models/request-for-proposals/src/tests/document-model.test.js +18 -0
  279. package/dist/document-models/request-for-proposals/src/tests/proposals.test.d.ts +5 -0
  280. package/dist/document-models/request-for-proposals/src/tests/proposals.test.d.ts.map +1 -0
  281. package/dist/document-models/request-for-proposals/src/tests/proposals.test.js +332 -0
  282. package/dist/document-models/request-for-proposals/src/tests/rfp-state.test.d.ts +5 -0
  283. package/dist/document-models/request-for-proposals/src/tests/rfp-state.test.d.ts.map +1 -0
  284. package/dist/document-models/request-for-proposals/src/tests/rfp-state.test.js +243 -0
  285. package/dist/document-models/request-for-proposals/src/utils.d.ts +2 -0
  286. package/dist/document-models/request-for-proposals/src/utils.d.ts.map +1 -0
  287. package/dist/document-models/request-for-proposals/src/utils.js +1 -0
  288. package/dist/document-models/workstream/gen/actions.d.ts +6 -0
  289. package/dist/document-models/workstream/gen/actions.d.ts.map +1 -0
  290. package/dist/document-models/workstream/gen/actions.js +2 -0
  291. package/dist/document-models/workstream/gen/creators.d.ts +3 -0
  292. package/dist/document-models/workstream/gen/creators.d.ts.map +1 -0
  293. package/dist/document-models/workstream/gen/creators.js +2 -0
  294. package/dist/document-models/workstream/gen/document-model.d.ts +3 -0
  295. package/dist/document-models/workstream/gen/document-model.d.ts.map +1 -0
  296. package/dist/document-models/workstream/gen/document-model.js +143 -0
  297. package/dist/document-models/workstream/gen/index.d.ts +6 -0
  298. package/dist/document-models/workstream/gen/index.d.ts.map +1 -0
  299. package/dist/document-models/workstream/gen/index.js +5 -0
  300. package/dist/document-models/workstream/gen/object.d.ts +18 -0
  301. package/dist/document-models/workstream/gen/object.d.ts.map +1 -0
  302. package/dist/document-models/workstream/gen/object.js +27 -0
  303. package/dist/document-models/workstream/gen/proposals/actions.d.ts +20 -0
  304. package/dist/document-models/workstream/gen/proposals/actions.d.ts.map +1 -0
  305. package/dist/document-models/workstream/gen/proposals/actions.js +1 -0
  306. package/dist/document-models/workstream/gen/proposals/creators.d.ts +7 -0
  307. package/dist/document-models/workstream/gen/proposals/creators.d.ts.map +1 -0
  308. package/dist/document-models/workstream/gen/proposals/creators.js +6 -0
  309. package/dist/document-models/workstream/gen/proposals/error.d.ts +2 -0
  310. package/dist/document-models/workstream/gen/proposals/error.d.ts.map +1 -0
  311. package/dist/document-models/workstream/gen/proposals/error.js +1 -0
  312. package/dist/document-models/workstream/gen/proposals/object.d.ts +10 -0
  313. package/dist/document-models/workstream/gen/proposals/object.d.ts.map +1 -0
  314. package/dist/document-models/workstream/gen/proposals/object.js +16 -0
  315. package/dist/document-models/workstream/gen/proposals/operations.d.ts +10 -0
  316. package/dist/document-models/workstream/gen/proposals/operations.d.ts.map +1 -0
  317. package/dist/document-models/workstream/gen/proposals/operations.js +1 -0
  318. package/dist/document-models/workstream/gen/reducer.d.ts +3 -0
  319. package/dist/document-models/workstream/gen/reducer.d.ts.map +1 -0
  320. package/dist/document-models/workstream/gen/reducer.js +53 -0
  321. package/dist/document-models/workstream/gen/schema/index.d.ts +3 -0
  322. package/dist/document-models/workstream/gen/schema/index.d.ts.map +1 -0
  323. package/dist/document-models/workstream/gen/schema/index.js +2 -0
  324. package/dist/document-models/workstream/gen/schema/types.d.ts +225 -0
  325. package/dist/document-models/workstream/gen/schema/types.d.ts.map +1 -0
  326. package/dist/document-models/workstream/gen/schema/types.js +1 -0
  327. package/dist/document-models/workstream/gen/schema/zod.d.ts +29 -0
  328. package/dist/document-models/workstream/gen/schema/zod.d.ts.map +1 -0
  329. package/dist/document-models/workstream/gen/schema/zod.js +158 -0
  330. package/dist/document-models/workstream/gen/types.d.ts +10 -0
  331. package/dist/document-models/workstream/gen/types.d.ts.map +1 -0
  332. package/dist/document-models/workstream/gen/types.js +1 -0
  333. package/dist/document-models/workstream/gen/utils.d.ts +13 -0
  334. package/dist/document-models/workstream/gen/utils.d.ts.map +1 -0
  335. package/dist/document-models/workstream/gen/utils.js +51 -0
  336. package/dist/document-models/workstream/gen/workstream/actions.d.ts +24 -0
  337. package/dist/document-models/workstream/gen/workstream/actions.d.ts.map +1 -0
  338. package/dist/document-models/workstream/gen/workstream/actions.js +1 -0
  339. package/dist/document-models/workstream/gen/workstream/creators.d.ts +8 -0
  340. package/dist/document-models/workstream/gen/workstream/creators.d.ts.map +1 -0
  341. package/dist/document-models/workstream/gen/workstream/creators.js +7 -0
  342. package/dist/document-models/workstream/gen/workstream/error.d.ts +2 -0
  343. package/dist/document-models/workstream/gen/workstream/error.d.ts.map +1 -0
  344. package/dist/document-models/workstream/gen/workstream/error.js +1 -0
  345. package/dist/document-models/workstream/gen/workstream/object.d.ts +11 -0
  346. package/dist/document-models/workstream/gen/workstream/object.d.ts.map +1 -0
  347. package/dist/document-models/workstream/gen/workstream/object.js +19 -0
  348. package/dist/document-models/workstream/gen/workstream/operations.d.ts +11 -0
  349. package/dist/document-models/workstream/gen/workstream/operations.d.ts.map +1 -0
  350. package/dist/document-models/workstream/gen/workstream/operations.js +1 -0
  351. package/dist/document-models/workstream/index.d.ts +33 -0
  352. package/dist/document-models/workstream/index.d.ts.map +1 -0
  353. package/dist/document-models/workstream/index.js +21 -0
  354. package/dist/document-models/workstream/ph-factories.d.ts +27 -0
  355. package/dist/document-models/workstream/ph-factories.d.ts.map +1 -0
  356. package/dist/document-models/workstream/ph-factories.js +59 -0
  357. package/dist/document-models/workstream/src/reducers/proposals.d.ts +8 -0
  358. package/dist/document-models/workstream/src/reducers/proposals.d.ts.map +1 -0
  359. package/dist/document-models/workstream/src/reducers/proposals.js +106 -0
  360. package/dist/document-models/workstream/src/reducers/workstream.d.ts +8 -0
  361. package/dist/document-models/workstream/src/reducers/workstream.d.ts.map +1 -0
  362. package/dist/document-models/workstream/src/reducers/workstream.js +69 -0
  363. package/dist/document-models/workstream/src/tests/document-model.test.d.ts +6 -0
  364. package/dist/document-models/workstream/src/tests/document-model.test.d.ts.map +1 -0
  365. package/dist/document-models/workstream/src/tests/document-model.test.js +18 -0
  366. package/dist/document-models/workstream/src/tests/proposals-reducers.test.d.ts +5 -0
  367. package/dist/document-models/workstream/src/tests/proposals-reducers.test.d.ts.map +1 -0
  368. package/dist/document-models/workstream/src/tests/proposals-reducers.test.js +316 -0
  369. package/dist/document-models/workstream/src/tests/proposals.test.d.ts +6 -0
  370. package/dist/document-models/workstream/src/tests/proposals.test.d.ts.map +1 -0
  371. package/dist/document-models/workstream/src/tests/proposals.test.js +48 -0
  372. package/dist/document-models/workstream/src/tests/workstream-reducers.test.d.ts +5 -0
  373. package/dist/document-models/workstream/src/tests/workstream-reducers.test.d.ts.map +1 -0
  374. package/dist/document-models/workstream/src/tests/workstream-reducers.test.js +208 -0
  375. package/dist/document-models/workstream/src/tests/workstream.test.d.ts +6 -0
  376. package/dist/document-models/workstream/src/tests/workstream.test.d.ts.map +1 -0
  377. package/dist/document-models/workstream/src/tests/workstream.test.js +56 -0
  378. package/dist/document-models/workstream/src/utils.d.ts +2 -0
  379. package/dist/document-models/workstream/src/utils.d.ts.map +1 -0
  380. package/dist/document-models/workstream/src/utils.js +1 -0
  381. package/dist/editors/index.d.ts +7 -0
  382. package/dist/editors/index.d.ts.map +1 -0
  383. package/dist/editors/index.js +5 -0
  384. package/dist/editors/network-admin/components/CreateDocument.d.ts +6 -0
  385. package/dist/editors/network-admin/components/CreateDocument.d.ts.map +1 -0
  386. package/dist/editors/network-admin/components/CreateDocument.js +24 -0
  387. package/dist/editors/network-admin/components/DriveExplorer.d.ts +6 -0
  388. package/dist/editors/network-admin/components/DriveExplorer.d.ts.map +1 -0
  389. package/dist/editors/network-admin/components/DriveExplorer.js +460 -0
  390. package/dist/editors/network-admin/components/EditorContainer.d.ts +12 -0
  391. package/dist/editors/network-admin/components/EditorContainer.d.ts.map +1 -0
  392. package/dist/editors/network-admin/components/EditorContainer.js +81 -0
  393. package/dist/editors/network-admin/components/FolderTree.d.ts +15 -0
  394. package/dist/editors/network-admin/components/FolderTree.d.ts.map +1 -0
  395. package/dist/editors/network-admin/components/FolderTree.js +44 -0
  396. package/dist/editors/network-admin/components/IsolatedSidebar.d.ts +22 -0
  397. package/dist/editors/network-admin/components/IsolatedSidebar.d.ts.map +1 -0
  398. package/dist/editors/network-admin/components/IsolatedSidebar.js +106 -0
  399. package/dist/editors/network-admin/components/IsolatedSidebarProvider.d.ts +15 -0
  400. package/dist/editors/network-admin/components/IsolatedSidebarProvider.d.ts.map +1 -0
  401. package/dist/editors/network-admin/components/IsolatedSidebarProvider.js +367 -0
  402. package/dist/editors/network-admin/editor.d.ts +10 -0
  403. package/dist/editors/network-admin/editor.d.ts.map +1 -0
  404. package/dist/editors/network-admin/editor.js +22 -0
  405. package/dist/editors/network-admin/index.d.ts +4 -0
  406. package/dist/editors/network-admin/index.d.ts.map +1 -0
  407. package/dist/editors/network-admin/index.js +12 -0
  408. package/dist/editors/network-admin/utils.d.ts +60 -0
  409. package/dist/editors/network-admin/utils.d.ts.map +1 -0
  410. package/dist/editors/network-admin/utils.js +67 -0
  411. package/dist/editors/network-profile/editor.d.ts +4 -0
  412. package/dist/editors/network-profile/editor.d.ts.map +1 -0
  413. package/dist/editors/network-profile/editor.js +151 -0
  414. package/dist/editors/network-profile/index.d.ts +4 -0
  415. package/dist/editors/network-profile/index.d.ts.map +1 -0
  416. package/dist/editors/network-profile/index.js +12 -0
  417. package/dist/editors/payment-terms/basic-terms-tab.d.ts +8 -0
  418. package/dist/editors/payment-terms/basic-terms-tab.d.ts.map +1 -0
  419. package/dist/editors/payment-terms/basic-terms-tab.js +84 -0
  420. package/dist/editors/payment-terms/clauses-tab.d.ts +10 -0
  421. package/dist/editors/payment-terms/clauses-tab.d.ts.map +1 -0
  422. package/dist/editors/payment-terms/clauses-tab.js +208 -0
  423. package/dist/editors/payment-terms/cost-materials-tab.d.ts +8 -0
  424. package/dist/editors/payment-terms/cost-materials-tab.d.ts.map +1 -0
  425. package/dist/editors/payment-terms/cost-materials-tab.js +53 -0
  426. package/dist/editors/payment-terms/editor.d.ts +4 -0
  427. package/dist/editors/payment-terms/editor.d.ts.map +1 -0
  428. package/dist/editors/payment-terms/editor.js +45 -0
  429. package/dist/editors/payment-terms/escrow-tab.d.ts +8 -0
  430. package/dist/editors/payment-terms/escrow-tab.d.ts.map +1 -0
  431. package/dist/editors/payment-terms/escrow-tab.js +56 -0
  432. package/dist/editors/payment-terms/evaluation-tab.d.ts +8 -0
  433. package/dist/editors/payment-terms/evaluation-tab.d.ts.map +1 -0
  434. package/dist/editors/payment-terms/evaluation-tab.js +62 -0
  435. package/dist/editors/payment-terms/index.d.ts +4 -0
  436. package/dist/editors/payment-terms/index.d.ts.map +1 -0
  437. package/dist/editors/payment-terms/index.js +12 -0
  438. package/dist/editors/payment-terms/milestones-tab.d.ts +9 -0
  439. package/dist/editors/payment-terms/milestones-tab.d.ts.map +1 -0
  440. package/dist/editors/payment-terms/milestones-tab.js +193 -0
  441. package/dist/editors/payment-terms/retainer-tab.d.ts +8 -0
  442. package/dist/editors/payment-terms/retainer-tab.d.ts.map +1 -0
  443. package/dist/editors/payment-terms/retainer-tab.js +82 -0
  444. package/dist/editors/request-for-proposals/editor.d.ts +4 -0
  445. package/dist/editors/request-for-proposals/editor.d.ts.map +1 -0
  446. package/dist/editors/request-for-proposals/editor.js +42 -0
  447. package/dist/editors/request-for-proposals/index.d.ts +4 -0
  448. package/dist/editors/request-for-proposals/index.d.ts.map +1 -0
  449. package/dist/editors/request-for-proposals/index.js +12 -0
  450. package/dist/editors/request-for-proposals/markdown-editor.d.ts +12 -0
  451. package/dist/editors/request-for-proposals/markdown-editor.d.ts.map +1 -0
  452. package/dist/editors/request-for-proposals/markdown-editor.js +119 -0
  453. package/dist/editors/workstream/editor.d.ts +4 -0
  454. package/dist/editors/workstream/editor.d.ts.map +1 -0
  455. package/dist/editors/workstream/editor.js +450 -0
  456. package/dist/editors/workstream/index.d.ts +4 -0
  457. package/dist/editors/workstream/index.d.ts.map +1 -0
  458. package/dist/editors/workstream/index.js +12 -0
  459. package/dist/index.d.ts +5 -0
  460. package/dist/index.d.ts.map +1 -0
  461. package/dist/index.js +6 -0
  462. package/dist/powerhouse.manifest.json +65 -0
  463. package/dist/processors/index.d.ts +2 -0
  464. package/dist/processors/index.d.ts.map +1 -0
  465. package/dist/processors/index.js +1 -0
  466. package/dist/style.css +18384 -0
  467. package/dist/subgraphs/index.d.ts +6 -0
  468. package/dist/subgraphs/index.d.ts.map +1 -0
  469. package/dist/subgraphs/index.js +4 -0
  470. package/dist/subgraphs/network-profile/index.d.ts +10 -0
  471. package/dist/subgraphs/network-profile/index.d.ts.map +1 -0
  472. package/dist/subgraphs/network-profile/index.js +11 -0
  473. package/dist/subgraphs/network-profile/resolvers.d.ts +3 -0
  474. package/dist/subgraphs/network-profile/resolvers.d.ts.map +1 -0
  475. package/dist/subgraphs/network-profile/resolvers.js +145 -0
  476. package/dist/subgraphs/network-profile/schema.d.ts +3 -0
  477. package/dist/subgraphs/network-profile/schema.d.ts.map +1 -0
  478. package/dist/subgraphs/network-profile/schema.js +139 -0
  479. package/dist/subgraphs/payment-terms/index.d.ts +10 -0
  480. package/dist/subgraphs/payment-terms/index.d.ts.map +1 -0
  481. package/dist/subgraphs/payment-terms/index.js +11 -0
  482. package/dist/subgraphs/payment-terms/resolvers.d.ts +3 -0
  483. package/dist/subgraphs/payment-terms/resolvers.d.ts.map +1 -0
  484. package/dist/subgraphs/payment-terms/resolvers.js +260 -0
  485. package/dist/subgraphs/payment-terms/schema.d.ts +3 -0
  486. package/dist/subgraphs/payment-terms/schema.d.ts.map +1 -0
  487. package/dist/subgraphs/payment-terms/schema.js +302 -0
  488. package/dist/subgraphs/request-for-proposals/index.d.ts +10 -0
  489. package/dist/subgraphs/request-for-proposals/index.d.ts.map +1 -0
  490. package/dist/subgraphs/request-for-proposals/index.js +11 -0
  491. package/dist/subgraphs/request-for-proposals/resolvers.d.ts +3 -0
  492. package/dist/subgraphs/request-for-proposals/resolvers.d.ts.map +1 -0
  493. package/dist/subgraphs/request-for-proposals/resolvers.js +110 -0
  494. package/dist/subgraphs/request-for-proposals/schema.d.ts +3 -0
  495. package/dist/subgraphs/request-for-proposals/schema.d.ts.map +1 -0
  496. package/dist/subgraphs/request-for-proposals/schema.js +232 -0
  497. package/dist/subgraphs/workstream/index.d.ts +10 -0
  498. package/dist/subgraphs/workstream/index.d.ts.map +1 -0
  499. package/dist/subgraphs/workstream/index.js +11 -0
  500. package/dist/subgraphs/workstream/resolvers.d.ts +3 -0
  501. package/dist/subgraphs/workstream/resolvers.d.ts.map +1 -0
  502. package/dist/subgraphs/workstream/resolvers.js +131 -0
  503. package/dist/subgraphs/workstream/schema.d.ts +3 -0
  504. package/dist/subgraphs/workstream/schema.d.ts.map +1 -0
  505. package/dist/subgraphs/workstream/schema.js +206 -0
  506. package/dist/vitest.config.d.ts +3 -0
  507. package/dist/vitest.config.d.ts.map +1 -0
  508. package/dist/vitest.config.js +8 -0
  509. package/package.json +106 -0
@@ -0,0 +1,460 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Button, CreateDocumentModal, } from "@powerhousedao/design-system";
3
+ import { addDocument, setSelectedNode, useAllFolderNodes, useDocumentModelModules, useDriveContext, useDriveSharingType, useEditorModules, useFileChildNodes, useFolderChildNodes, useSelectedDrive, useSelectedFolder, useSelectedNodePath, useUserPermissions, useAllDocuments, } from "@powerhousedao/reactor-browser";
4
+ import { useCallback, useRef, useState, useMemo } from "react";
5
+ import { EditorContainer } from "./EditorContainer.jsx";
6
+ import { getNewDocumentObject } from "../utils.js";
7
+ import { IsolatedSidebarProvider } from "./IsolatedSidebarProvider.jsx";
8
+ import { IsolatedSidebar } from "./IsolatedSidebar.jsx";
9
+ /**
10
+ * Main drive explorer component with sidebar navigation and content area.
11
+ * Layout: Left sidebar (folder tree) + Right content area (files/folders + document editor)
12
+ */
13
+ export function DriveExplorer(props) {
14
+ // === DOCUMENT EDITOR STATE ===
15
+ // Customize document opening/closing behavior here
16
+ const [activeDocumentId, setActiveDocumentId] = useState();
17
+ const [openModal, setOpenModal] = useState(false);
18
+ const [selectedRootNode, setSelectedRootNode] = useState("workstreams");
19
+ const [modalDocumentType, setModalDocumentType] = useState("powerhouse/workstream");
20
+ const selectedDocumentModel = useRef(null);
21
+ const editorModules = useEditorModules();
22
+ // === DRIVE CONTEXT HOOKS ===
23
+ // Core drive operations and document models
24
+ const { onAddFile, onAddFolder, onCopyNode, onDuplicateNode, onMoveNode, onRenameNode, showDeleteNodeModal, } = useDriveContext();
25
+ const { isAllowedToCreateDocuments } = useUserPermissions();
26
+ // === STATE MANAGEMENT HOOKS ===
27
+ // Core state hooks for drive navigation
28
+ const [selectedDrive] = useSelectedDrive(); // Currently selected drive
29
+ const selectedFolder = useSelectedFolder(); // Currently selected folder
30
+ const selectedNodePath = useSelectedNodePath();
31
+ const sharingType = useDriveSharingType(selectedDrive?.header.id);
32
+ const allDocuments = useAllDocuments();
33
+ // === NAVIGATION SETUP ===
34
+ // Breadcrumbs for folder navigation
35
+ // const { breadcrumbs, onBreadcrumbSelected } = useBreadcrumbs({
36
+ // selectedNodePath: selectedNodePath as any,
37
+ // setSelectedNode: (node) => setSelectedNode(node as any),
38
+ // getNodeById: (id: string) => (allFolders.find(node => node.id === id) || fileChildren.find(node => node.id === id)) as any || null,
39
+ // });
40
+ const folderChildren = useFolderChildNodes();
41
+ const fileChildren = useFileChildNodes();
42
+ const filesWithDocuments = fileChildren.map((file) => {
43
+ const document = allDocuments?.find((doc) => doc.header.id === file.id);
44
+ const state = document?.state.global;
45
+ return {
46
+ ...file,
47
+ state,
48
+ };
49
+ });
50
+ // check if workstream doc is created, set isWorkstreamCreated to true
51
+ const isWorkstreamCreated = fileChildren.some((file) => file.documentType === "powerhouse/workstream");
52
+ //check if network profile doc is created, set isNetworkProfileCreated to true
53
+ const isNetworkProfileCreated = fileChildren.some((file) => file.documentType === "powerhouse/network-profile");
54
+ // All folders for the sidebar tree view
55
+ const allFolders = useAllFolderNodes();
56
+ // Convert folders and files to SidebarNode format
57
+ const sidebarNodes = useMemo(() => {
58
+ const workstreamsNode = {
59
+ id: "workstreams",
60
+ title: "Workstreams",
61
+ children: [
62
+ // Add folders
63
+ ...allFolders
64
+ .filter((folder) => {
65
+ // Only root folders that contain non-network-profile documents
66
+ if (folder.parentFolder)
67
+ return false;
68
+ // Check if this folder or any of its subfolders contain non-network-profile documents
69
+ const hasNonNetworkProfileFiles = filesWithDocuments.some((file) => file.documentType !== "powerhouse/network-profile" &&
70
+ (file.parentFolder === folder.id ||
71
+ allFolders.some((subFolder) => subFolder.parentFolder === folder.id &&
72
+ file.parentFolder === subFolder.id)));
73
+ return hasNonNetworkProfileFiles;
74
+ })
75
+ .map((folder) => ({
76
+ id: folder.id,
77
+ title: folder.name,
78
+ children: [
79
+ // Add child folders
80
+ ...allFolders
81
+ .filter((childFolder) => childFolder.parentFolder === folder.id &&
82
+ filesWithDocuments.some((file) => file.documentType !== "powerhouse/network-profile" &&
83
+ file.parentFolder === childFolder.id))
84
+ .map((childFolder) => ({
85
+ id: childFolder.id,
86
+ title: childFolder.name,
87
+ children: [
88
+ // Add files in this folder (exclude network-profile documents)
89
+ ...filesWithDocuments
90
+ .filter((file) => file.parentFolder === childFolder.id &&
91
+ file.documentType !== "powerhouse/network-profile")
92
+ .map((file) => ({
93
+ id: `editor-${file.id}`,
94
+ title: `📄 ${file.state?.code || ""} - ${file.state?.title || file.name}`,
95
+ })),
96
+ ],
97
+ })),
98
+ // Add files directly in this folder (exclude network-profile documents)
99
+ ...filesWithDocuments
100
+ .filter((file) => file.parentFolder === folder.id &&
101
+ file.documentType !== "powerhouse/network-profile")
102
+ .map((file) => ({
103
+ id: `editor-${file.id}`,
104
+ title: `📄 ${file.state?.code || ""} - ${file.state?.title || file.name}`,
105
+ })),
106
+ ],
107
+ })),
108
+ // Add root-level files (exclude network-profile documents)
109
+ ...filesWithDocuments
110
+ .filter((file) => !file.parentFolder &&
111
+ file.documentType !== "powerhouse/network-profile")
112
+ .map((file) => ({
113
+ id: `editor-${file.id}`,
114
+ title: `📄 ${file.state?.code || ""} - ${file.state?.title || file.name}`,
115
+ })),
116
+ ],
117
+ };
118
+ const networkInfoNode = {
119
+ id: "network-information",
120
+ title: "Network Information",
121
+ children: [
122
+ // Add folders that contain network-profile documents
123
+ ...allFolders
124
+ .filter((folder) => {
125
+ // Check if this folder or any of its subfolders contain network-profile documents
126
+ const hasNetworkProfileFiles = filesWithDocuments.some((file) => file.documentType === "powerhouse/network-profile" &&
127
+ (file.parentFolder === folder.id ||
128
+ allFolders.some((subFolder) => subFolder.parentFolder === folder.id &&
129
+ file.parentFolder === subFolder.id)));
130
+ return hasNetworkProfileFiles;
131
+ })
132
+ .map((folder) => ({
133
+ id: folder.id,
134
+ title: folder.name,
135
+ children: [
136
+ // Add child folders that contain network-profile documents
137
+ ...allFolders
138
+ .filter((childFolder) => childFolder.parentFolder === folder.id &&
139
+ filesWithDocuments.some((file) => file.documentType === "powerhouse/network-profile" &&
140
+ file.parentFolder === childFolder.id))
141
+ .map((childFolder) => ({
142
+ id: childFolder.id,
143
+ title: childFolder.name,
144
+ children: [
145
+ // Add network-profile files in this folder
146
+ ...filesWithDocuments
147
+ .filter((file) => file.documentType === "powerhouse/network-profile" &&
148
+ file.parentFolder === childFolder.id)
149
+ .map((file) => ({
150
+ id: `editor-${file.id}`,
151
+ title: `📄 ${file.name}`,
152
+ })),
153
+ ],
154
+ })),
155
+ // Add network-profile files directly in this folder
156
+ ...filesWithDocuments
157
+ .filter((file) => file.documentType === "powerhouse/network-profile" &&
158
+ file.parentFolder === folder.id)
159
+ .map((file) => ({
160
+ id: `editor-${file.id}`,
161
+ title: `📄 ${file.name}`,
162
+ })),
163
+ ],
164
+ })),
165
+ // Add root-level network-profile files
166
+ ...filesWithDocuments
167
+ .filter((file) => !file.parentFolder &&
168
+ file.documentType === "powerhouse/network-profile")
169
+ .map((file) => ({
170
+ id: `editor-${file.id}`,
171
+ title: `📄 ${file.name}`,
172
+ })),
173
+ ],
174
+ };
175
+ return [workstreamsNode, networkInfoNode];
176
+ }, [allFolders, filesWithDocuments]);
177
+ // Handle sidebar node selection
178
+ const handleActiveNodeChange = useCallback((nodeId) => {
179
+ console.log("nodeId", nodeId);
180
+ // Find the node by ID
181
+ const findNodeById = (nodes, id) => {
182
+ for (const node of nodes) {
183
+ if (node.id === id) {
184
+ return node;
185
+ }
186
+ if (node.children) {
187
+ const found = findNodeById(node.children, id);
188
+ if (found)
189
+ return found;
190
+ }
191
+ }
192
+ return null;
193
+ };
194
+ const newNode = findNodeById(sidebarNodes, nodeId);
195
+ if (!newNode)
196
+ return;
197
+ if (newNode.id === "workstreams") {
198
+ setActiveDocumentId(undefined);
199
+ setSelectedRootNode("workstreams");
200
+ }
201
+ else if (newNode.id === "network-information") {
202
+ setActiveDocumentId(undefined);
203
+ setSelectedRootNode("network-information");
204
+ // Handle network information display
205
+ }
206
+ else if (newNode.id.startsWith("editor-")) {
207
+ // Extract file ID from editor-{file.id} format
208
+ const fileId = newNode.id.replace("editor-", "");
209
+ const file = fileChildren.find((f) => f.id === fileId);
210
+ setActiveDocumentId(fileId);
211
+ }
212
+ else {
213
+ // Find if it's a folder
214
+ const folder = allFolders.find((f) => f.id === newNode.id);
215
+ if (folder) {
216
+ setActiveDocumentId(undefined);
217
+ }
218
+ }
219
+ }, [
220
+ allFolders,
221
+ fileChildren,
222
+ setSelectedNode,
223
+ setActiveDocumentId,
224
+ sidebarNodes,
225
+ ]);
226
+ // === EVENT HANDLERS ===
227
+ // Display function that switches views based on active node ID
228
+ const displayActiveNode = (activeNodeId) => {
229
+ // Determine the type of node and extract the actual ID
230
+ let nodeType = "unknown";
231
+ let actualId = activeNodeId;
232
+ if (activeNodeId === "workstreams") {
233
+ nodeType = "workstreams";
234
+ }
235
+ else if (activeNodeId === "network-information") {
236
+ nodeType = "network-information";
237
+ }
238
+ else if (activeNodeId.startsWith("editor-")) {
239
+ nodeType = "file";
240
+ actualId = activeNodeId.replace("editor-", "");
241
+ }
242
+ else {
243
+ // Check if it's a folder
244
+ const folder = allFolders.find((f) => f.id === activeNodeId);
245
+ if (folder) {
246
+ nodeType = "folder";
247
+ }
248
+ else {
249
+ // Check if it's a file (direct ID)
250
+ const file = fileChildren.find((f) => f.id === activeNodeId);
251
+ if (file) {
252
+ nodeType = "file";
253
+ actualId = activeNodeId; // Use the ID as-is for files
254
+ }
255
+ }
256
+ }
257
+ switch (nodeType) {
258
+ case "workstreams":
259
+ return (_jsxs("div", { className: "mt-20 p-4 flex flex-col items-center justify-center", children: [_jsxs("div", { className: "space-y-6 flex flex-col items-center justify-center", children: [_jsx("h1", { className: "text-2xl font-bold", children: "Welcome to the Network Admin" }), _jsx("p", { children: "Create a new workstream to get started, or select an existing workstream on the left" }), _jsxs("div", { className: "flex gap-3", children: [_jsx(Button, { color: "dark" // Customize button appearance
260
+ , size: "medium", className: "cursor-pointer hover:bg-gray-600 hover:text-white", title: "Create Workstream Document", "aria-description": "Create Workstream Document", onClick: () => {
261
+ setModalDocumentType("powerhouse/workstream");
262
+ setOpenModal(true);
263
+ }, disabled: isWorkstreamCreated, children: _jsx("span", { children: "Create Workstream Document" }) }), _jsx(Button, { color: "dark" // Customize button appearance
264
+ , size: "medium", className: "cursor-pointer hover:bg-gray-600 hover:text-white", title: "Create Network Profile Document", "aria-description": "Create Network Profile Document", onClick: () => {
265
+ setModalDocumentType("powerhouse/network-profile");
266
+ setOpenModal(true);
267
+ }, disabled: isNetworkProfileCreated, children: _jsx("span", { children: "Create Network Profile Document" }) })] })] }), (folderChildren.length > 0 || fileChildren.length > 0) && (_jsx("div", { className: "mt-10", children: _jsxs("div", { className: "grid grid-cols-2 gap-6", children: [_jsxs("div", { children: [_jsx("h3", { className: "mb-2 text-sm font-medium text-gray-500", children: "\uD83D\uDCC1 Folders" }), _jsx("div", { className: "space-y-2", children: folderChildren.map((folderNode) => folderNode && folderNode.id ? (_jsxs("div", { className: "p-2 border rounded", children: [_jsxs("div", { className: "font-medium", children: ["\uD83D\uDCC1 ", folderNode.name] }), _jsx("div", { className: "text-sm text-gray-500", children: "Folder" }), _jsxs("div", { className: "mt-2 flex gap-2", children: [_jsx("button", { onClick: () => setSelectedNode(folderNode), className: "px-2 py-1 bg-blue-500 text-white rounded text-sm hover:bg-blue-600", children: "Open" }), _jsx("button", { onClick: () => {
268
+ const newName = prompt("Enter new name:", folderNode.name || "");
269
+ if (newName &&
270
+ newName.trim() &&
271
+ newName !== folderNode.name) {
272
+ try {
273
+ onRenameNode(newName.trim(), folderNode);
274
+ }
275
+ catch (error) {
276
+ console.error("Failed to rename:", error);
277
+ alert("Failed to rename folder. Please try again.");
278
+ }
279
+ }
280
+ }, className: "px-2 py-1 bg-yellow-500 text-white rounded text-sm hover:bg-yellow-600", children: "Edit" }), _jsx("button", { onClick: () => showDeleteNodeModal(folderNode), className: "px-2 py-1 bg-red-500 text-white rounded text-sm hover:bg-red-600", children: "Delete" })] })] }, folderNode.id)) : null) })] }), _jsxs("div", { children: [_jsx("h3", { className: "mb-2 text-sm font-medium text-gray-500", children: "\uD83D\uDCC4 Documents" }), _jsx("div", { className: "space-y-2", children: fileChildren.map((fileNode) => (_jsxs("div", { className: "p-2 border rounded", children: [_jsx("div", { className: "font-medium", children: fileNode.name }), _jsx("div", { className: "text-sm text-gray-500", children: fileNode.documentType }), _jsxs("div", { className: "mt-2 flex gap-2", children: [_jsx("button", { onClick: () => {
281
+ setSelectedNode(fileNode);
282
+ setActiveDocumentId(fileNode.id);
283
+ }, className: "px-2 py-1 bg-blue-500 text-white rounded text-sm hover:bg-blue-600", children: "Open" }), _jsx("button", { onClick: () => {
284
+ if (!fileNode || !fileNode.id)
285
+ return;
286
+ const newName = prompt("Enter new name:", fileNode.name || "");
287
+ if (newName &&
288
+ newName.trim() &&
289
+ newName !== fileNode.name) {
290
+ try {
291
+ onRenameNode(newName.trim(), fileNode);
292
+ }
293
+ catch (error) {
294
+ alert("Failed to rename document. Please try again.");
295
+ }
296
+ }
297
+ }, className: "px-2 py-1 bg-yellow-500 text-white rounded text-sm hover:bg-yellow-600", children: "Edit" }), _jsx("button", { onClick: () => showDeleteNodeModal(fileNode), className: "px-2 py-1 bg-red-500 text-white rounded text-sm hover:bg-red-600", children: "Delete" })] })] }, fileNode.id))) })] })] }) }))] }));
298
+ case "folder":
299
+ const folder = allFolders.find((f) => f.id === actualId);
300
+ if (!folder)
301
+ return null;
302
+ return (_jsx("div", { className: "p-4", children: _jsxs("div", { className: "space-y-6", children: [_jsx("div", { className: "space-y-3", children: _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("h2", { className: "text-lg font-semibold", children: ["Contents of \"", folder.name, "\""] }), _jsx("button", { onClick: () => {
303
+ setSelectedNode(selectedDrive?.header.id);
304
+ }, className: "rounded bg-gray-500 px-3 py-1 text-sm text-white hover:bg-gray-600", children: "Back" }), isAllowedToCreateDocuments && (_jsx("button", { onClick: () => handleCreateFolder(), className: "rounded bg-blue-500 px-3 py-1 text-sm text-white hover:bg-blue-600", children: "+ New Folder" }))] }) }), folderChildren.length > 0 && (_jsxs("div", { children: [_jsx("h3", { className: "mb-2 text-sm font-medium text-gray-500", children: "\uD83D\uDCC1 Folders" }), _jsx("div", { className: "grid grid-cols-1 gap-2", children: folderChildren.map((folderNode) => folderNode && folderNode.id ? (_jsxs("div", { className: "p-2 border rounded", children: [_jsxs("div", { className: "font-medium", children: ["\uD83D\uDCC1 ", folderNode.name] }), _jsx("div", { className: "text-sm text-gray-500", children: "Folder" }), _jsxs("div", { className: "mt-2 flex gap-2", children: [_jsx("button", { onClick: () => setSelectedNode(folderNode), className: "px-2 py-1 bg-blue-500 text-white rounded text-sm hover:bg-blue-600", children: "Open" }), _jsx("button", { onClick: () => {
305
+ const newName = prompt("Enter new name:", folderNode.name || "");
306
+ if (newName &&
307
+ newName.trim() &&
308
+ newName !== folderNode.name) {
309
+ try {
310
+ onRenameNode(newName.trim(), folderNode);
311
+ }
312
+ catch (error) {
313
+ console.error("Failed to rename:", error);
314
+ alert("Failed to rename folder. Please try again.");
315
+ }
316
+ }
317
+ }, className: "px-2 py-1 bg-yellow-500 text-white rounded text-sm hover:bg-yellow-600", children: "Edit" }), _jsx("button", { onClick: () => showDeleteNodeModal(folderNode), className: "px-2 py-1 bg-red-500 text-white rounded text-sm hover:bg-red-600", children: "Delete" })] })] }, folderNode.id)) : null) })] })), fileChildren.length > 0 ? (_jsxs("div", { children: [_jsx("h3", { className: "mb-2 text-sm font-medium text-gray-500", children: "\uD83D\uDCC4 Documents" }), _jsx("div", { className: "grid grid-cols-1 gap-2", children: fileChildren.map((fileNode) => (_jsxs("div", { className: "p-2 border rounded", children: [_jsx("div", { className: "font-medium", children: fileNode.name }), _jsx("div", { className: "text-sm text-gray-500", children: fileNode.documentType }), _jsxs("div", { className: "mt-2 flex gap-2", children: [_jsx("button", { onClick: () => {
318
+ setSelectedNode(fileNode);
319
+ setActiveDocumentId(fileNode.id);
320
+ }, className: "px-2 py-1 bg-blue-500 text-white rounded text-sm hover:bg-blue-600", children: "Open" }), _jsx("button", { onClick: () => {
321
+ if (!fileNode || !fileNode.id)
322
+ return;
323
+ const newName = prompt("Enter new name:", fileNode.name || "");
324
+ if (newName &&
325
+ newName.trim() &&
326
+ newName !== fileNode.name) {
327
+ try {
328
+ onRenameNode(newName.trim(), fileNode);
329
+ }
330
+ catch (error) {
331
+ alert("Failed to rename document. Please try again.");
332
+ }
333
+ }
334
+ }, className: "px-2 py-1 bg-yellow-500 text-white rounded text-sm hover:bg-yellow-600", children: "Edit" }), _jsx("button", { onClick: () => showDeleteNodeModal(fileNode), className: "px-2 py-1 bg-red-500 text-white rounded text-sm hover:bg-red-600", children: "Delete" })] })] }, fileNode.id))) })] })) : null, folderChildren.length === 0 && fileChildren.length === 0 && (_jsxs("div", { className: "py-12 text-center text-gray-500", children: [_jsx("p", { className: "text-lg", children: "\uD83D\uDDC2\uFE0F This folder is empty" }), _jsx("p", { className: "mt-2 text-sm", children: "Create your first document or folder below" })] }))] }) }));
335
+ case "network-information":
336
+ return (_jsxs("div", { className: "mt-20 p-4 flex flex-col items-center justify-center", children: [_jsxs("div", { className: "space-y-6 flex flex-col items-center justify-center", children: [_jsx("h1", { className: "text-2xl font-bold", children: "Network Information" }), _jsx("p", { children: "Create a new network profile to get started, or select an existing network profile from the left sidebar" }), _jsx("div", { className: "flex gap-3", children: _jsx(Button, { color: "dark", size: "medium", className: "cursor-pointer hover:bg-gray-600 hover:text-white", title: "Create Network Profile Document", "aria-description": "Create Network Profile Document", onClick: () => {
337
+ setModalDocumentType("powerhouse/network-profile");
338
+ setOpenModal(true);
339
+ }, disabled: isNetworkProfileCreated, children: _jsx("span", { children: "Create Network Profile Document" }) }) })] }), (folderChildren.length > 0 || fileChildren.length > 0) && (_jsx("div", { className: "mt-10", children: _jsxs("div", { className: "grid grid-cols-2 gap-6", children: [_jsxs("div", { children: [_jsx("h3", { className: "mb-2 text-sm font-medium text-gray-500", children: "\uD83D\uDCC1 Network Profile Folders" }), _jsx("div", { className: "space-y-2", children: folderChildren
340
+ .filter((folder) => {
341
+ // Only show folders that contain network-profile documents
342
+ return filesWithDocuments.some((file) => file.documentType ===
343
+ "powerhouse/network-profile" &&
344
+ (file.parentFolder === folder.id ||
345
+ allFolders.some((subFolder) => subFolder.parentFolder === folder.id &&
346
+ file.parentFolder === subFolder.id)));
347
+ })
348
+ .map((folderNode) => folderNode && folderNode.id ? (_jsxs("div", { className: "p-2 border rounded", children: [_jsxs("div", { className: "font-medium", children: ["\uD83D\uDCC1 ", folderNode.name] }), _jsx("div", { className: "text-sm text-gray-500", children: "Network Profile Folder" }), _jsxs("div", { className: "mt-2 flex gap-2", children: [_jsx("button", { onClick: () => setSelectedNode(folderNode), className: "px-2 py-1 bg-blue-500 text-white rounded text-sm hover:bg-blue-600", children: "Open" }), _jsx("button", { onClick: () => {
349
+ const newName = prompt("Enter new name:", folderNode.name || "");
350
+ if (newName &&
351
+ newName.trim() &&
352
+ newName !== folderNode.name) {
353
+ try {
354
+ onRenameNode(newName.trim(), folderNode);
355
+ }
356
+ catch (error) {
357
+ console.error("Failed to rename:", error);
358
+ alert("Failed to rename folder. Please try again.");
359
+ }
360
+ }
361
+ }, className: "px-2 py-1 bg-yellow-500 text-white rounded text-sm hover:bg-blue-600", children: "Edit" }), _jsx("button", { onClick: () => showDeleteNodeModal(folderNode), className: "px-2 py-1 bg-red-500 text-white rounded text-sm hover:bg-red-600", children: "Delete" })] })] }, folderNode.id)) : null) })] }), _jsxs("div", { children: [_jsx("h3", { className: "mb-2 text-sm font-medium text-gray-500", children: "\uD83C\uDF10 Network Profile Documents" }), _jsx("div", { className: "space-y-2", children: filesWithDocuments
362
+ .filter((file) => file.documentType === "powerhouse/network-profile")
363
+ .map((fileNode) => (_jsxs("div", { className: "p-2 border rounded", children: [_jsxs("div", { className: "font-medium", children: ["\uD83C\uDF10 ", fileNode.name] }), _jsx("div", { className: "text-sm text-gray-500", children: "Network Profile" }), _jsxs("div", { className: "mt-2 flex gap-2", children: [_jsx("button", { onClick: () => {
364
+ setSelectedNode(fileNode);
365
+ setActiveDocumentId(fileNode.id);
366
+ }, className: "px-2 py-1 bg-blue-500 text-white rounded text-sm hover:bg-blue-600", children: "Open" }), _jsx("button", { onClick: () => {
367
+ if (!fileNode || !fileNode.id)
368
+ return;
369
+ const newName = prompt("Enter new name:", fileNode.name || "");
370
+ if (newName &&
371
+ newName.trim() &&
372
+ newName !== fileNode.name) {
373
+ try {
374
+ onRenameNode(newName.trim(), fileNode);
375
+ }
376
+ catch (error) {
377
+ alert("Failed to rename document. Please try again.");
378
+ }
379
+ }
380
+ }, className: "px-2 py-1 bg-yellow-500 text-white rounded text-sm hover:bg-blue-600", children: "Edit" }), _jsx("button", { onClick: () => showDeleteNodeModal(fileNode), className: "px-2 py-1 bg-red-500 text-white rounded text-sm hover:bg-red-600", children: "Delete" })] })] }, fileNode.id))) })] })] }) })), folderChildren.length === 0 && fileChildren.length === 0 && (_jsxs("div", { className: "py-12 text-center text-gray-500", children: [_jsx("p", { className: "text-lg", children: "\uD83C\uDF10 No network profiles yet" }), _jsx("p", { className: "mt-2 text-sm", children: "Create your first network profile above" })] }))] }));
381
+ default:
382
+ return _jsxs("div", { children: ["Unknown node type: ", nodeType] });
383
+ }
384
+ };
385
+ // Handle folder creation with optional name parameter
386
+ const handleCreateFolder = useCallback(async (folderName) => {
387
+ let name = folderName;
388
+ // If no name provided, prompt for it (for manual folder creation)
389
+ if (!name) {
390
+ const promptResult = prompt("Enter folder name:");
391
+ name = promptResult || undefined;
392
+ }
393
+ if (name?.trim()) {
394
+ try {
395
+ await onAddFolder(name.trim(), selectedFolder);
396
+ }
397
+ catch (error) {
398
+ console.error("Failed to create folder:", error);
399
+ }
400
+ }
401
+ }, [onAddFolder, selectedFolder]);
402
+ // Handle document creation from modal
403
+ const onCreateDocument = useCallback(async (fileName) => {
404
+ setOpenModal(false);
405
+ // Use the document type that was set when the modal was opened
406
+ const documentType = modalDocumentType;
407
+ // Determine editor type based on document type
408
+ const editorType = documentType === "powerhouse/network-profile"
409
+ ? "network-profile-editor"
410
+ : "workstream-editor";
411
+ console.log(`Creating ${documentType} document: ${fileName}`);
412
+ try {
413
+ let folder = undefined;
414
+ if (documentType === "powerhouse/workstream") {
415
+ folder = await onAddFolder(fileName, undefined);
416
+ }
417
+ const node = await addDocument(selectedDrive?.header.id || "", fileName, documentType, folder?.id, getNewDocumentObject(fileName, documentType), undefined, editorType);
418
+ selectedDocumentModel.current = null;
419
+ console.log("Created document node", node);
420
+ if (node) {
421
+ // Customize: Auto-open created document by uncommenting below
422
+ // setActiveDocumentId(node.id);
423
+ // Refresh the sidebar by triggering a re-render
424
+ // Set the root node based on the document type that was created
425
+ if (documentType === "powerhouse/network-profile") {
426
+ setSelectedRootNode("network-information");
427
+ }
428
+ else {
429
+ setSelectedRootNode("workstreams");
430
+ }
431
+ }
432
+ }
433
+ catch (error) {
434
+ console.error("Failed to create document:", error);
435
+ }
436
+ }, [
437
+ addDocument,
438
+ selectedDrive?.header.id,
439
+ selectedFolder?.id,
440
+ modalDocumentType,
441
+ ]);
442
+ // === DOCUMENT EDITOR DATA ===
443
+ // Filter available document types here if needed
444
+ const documentModelModules = useDocumentModelModules();
445
+ // Get active document and its editor components
446
+ const activeDocument = activeDocumentId
447
+ ? fileChildren.find((file) => file.id === activeDocumentId)
448
+ : undefined;
449
+ const documentModelModule = activeDocument
450
+ ? documentModelModules?.find((m) => m.documentModel.id === activeDocument.documentType)
451
+ : null;
452
+ const editorModule = activeDocument
453
+ ? editorModules?.find((e) => e.documentTypes.includes(activeDocument.documentType))
454
+ : null;
455
+ // === RENDER ===
456
+ return (_jsx(IsolatedSidebarProvider, { nodes: sidebarNodes, children: _jsxs("div", { className: "flex h-full", children: [_jsx(IsolatedSidebar, { nodes: sidebarNodes, activeNodeId: selectedFolder?.id || activeDocumentId, onActiveNodeChange: handleActiveNodeChange, sidebarTitle: "Network Admin", showSearchBar: true, allowPinning: true, resizable: true, initialWidth: 300, maxWidth: 500, enableMacros: 2, handleOnTitleClick: () => {
457
+ setActiveDocumentId(undefined);
458
+ setSelectedRootNode("workstreams");
459
+ } }), _jsx("div", { className: "flex-1 overflow-y-auto", children: activeDocumentId ? (_jsx(EditorContainer, { handleClose: () => setActiveDocumentId(undefined), hideToolbar: false, activeDocumentId: activeDocumentId, setActiveDocumentId: setActiveDocumentId })) : (displayActiveNode(selectedFolder?.id || selectedRootNode)) }), _jsx(CreateDocumentModal, { onContinue: onCreateDocument, onOpenChange: (open) => setOpenModal(open), open: openModal })] }) }));
460
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Document editor container that wraps individual document editors.
3
+ * Handles document loading, toolbar, revision history, and dynamic editor loading.
4
+ * Customize toolbar actions and editor context here.
5
+ */
6
+ export declare const EditorContainer: (props: {
7
+ handleClose: () => void;
8
+ hideToolbar?: boolean;
9
+ activeDocumentId: string;
10
+ setActiveDocumentId: (id: string) => void;
11
+ }) => import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=EditorContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditorContainer.d.ts","sourceRoot":"","sources":["../../../../editors/network-admin/components/EditorContainer.tsx"],"names":[],"mappings":"AAqBA;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,OAAO;IACrC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C,4CAiKA,CAAC"}
@@ -0,0 +1,81 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { getRevisionFromDate, useTimelineItems } from "@powerhousedao/common";
3
+ import { DocumentToolbar, RevisionHistory, } from "@powerhousedao/design-system";
4
+ import { exportFile, useEditorModuleById, useSelectedDrive, useDocumentById, addDocument, useNodes, } from "@powerhousedao/reactor-browser";
5
+ import { Suspense, useCallback, useState } from "react";
6
+ import { getNewDocumentObject } from "../utils.js";
7
+ /**
8
+ * Document editor container that wraps individual document editors.
9
+ * Handles document loading, toolbar, revision history, and dynamic editor loading.
10
+ * Customize toolbar actions and editor context here.
11
+ */
12
+ export const EditorContainer = (props) => {
13
+ const { handleClose, hideToolbar = false, activeDocumentId, setActiveDocumentId, } = props;
14
+ // UI state for revision history and timeline
15
+ const [selectedTimelineItem, setSelectedTimelineItem] = useState(null);
16
+ const [showRevisionHistory, setShowRevisionHistory] = useState(false);
17
+ const [selectedDocument, dispatch] = useDocumentById(props.activeDocumentId);
18
+ const [selectedDrive] = useSelectedDrive();
19
+ const nodes = useNodes();
20
+ const folderId = nodes?.find((node) => node.id === selectedDocument?.header.id)
21
+ ?.parentFolder || undefined;
22
+ const createRfpDocument = useCallback(async () => {
23
+ const rfpDocName = `RFP-${selectedDocument?.state.global?.title || "Untitled"}`;
24
+ const rfpDocCode = `RFP-${selectedDocument?.state.global?.code || ""}`;
25
+ try {
26
+ const createdNode = await addDocument(selectedDrive?.header.id || "", rfpDocName, "powerhouse/rfp", folderId, getNewDocumentObject(rfpDocName, "powerhouse/rfp", rfpDocCode), undefined, "request-for-proposals-editor");
27
+ return createdNode;
28
+ }
29
+ catch (error) {
30
+ console.error("Error creating RFP document", error);
31
+ return null;
32
+ }
33
+ }, [selectedDrive, selectedDocument?.state.global, folderId]);
34
+ const createSowDocument = useCallback(async () => {
35
+ const sowDocName = `SOW-${selectedDocument?.state.global?.title || "Untitled"}`;
36
+ try {
37
+ const createdNode = await addDocument(selectedDrive?.header.id || "", sowDocName, "powerhouse/scopeofwork", folderId, getNewDocumentObject(sowDocName, "powerhouse/scopeofwork"), undefined, "scope-of-work-editor");
38
+ return createdNode;
39
+ }
40
+ catch (error) {
41
+ console.error("Error creating SOW document", error);
42
+ return null;
43
+ }
44
+ }, [selectedDrive, selectedDocument?.state.global, folderId]);
45
+ const createPaymentTermsDocument = useCallback(async () => {
46
+ const paymentTermsDocName = `Payment Terms-${selectedDocument?.state.global?.title || "Untitled"}`;
47
+ try {
48
+ const createdNode = await addDocument(selectedDrive?.header.id || "", paymentTermsDocName, "payment-terms", folderId, getNewDocumentObject(paymentTermsDocName, "payment-terms"), undefined, "payment-terms-editor");
49
+ return createdNode;
50
+ }
51
+ catch (error) {
52
+ console.error("Error creating Payment Terms document", error);
53
+ return null;
54
+ }
55
+ }, [selectedDrive, selectedDocument?.state.global, folderId]);
56
+ // Timeline data for revision history
57
+ const timelineItems = useTimelineItems(selectedDocument?.header.id, selectedDocument?.header.createdAtUtcIso, selectedDrive?.header.id);
58
+ const editorModule = useEditorModuleById(selectedDocument?.header.meta?.preferredEditor);
59
+ // Document export functionality - customize export behavior here
60
+ const onExport = useCallback(async () => {
61
+ if (selectedDocument) {
62
+ await exportFile(selectedDocument);
63
+ }
64
+ }, [selectedDocument]);
65
+ // Loading state component
66
+ const loadingContent = (_jsx("div", { className: "flex h-full flex-1 items-center justify-center", children: _jsx("div", { children: "sth is wrong fix yourself" }) }));
67
+ if (!selectedDocument)
68
+ return loadingContent;
69
+ // Dynamically load the appropriate editor component for this document type
70
+ const EditorComponent = editorModule?.Component;
71
+ if (!EditorComponent)
72
+ return loadingContent;
73
+ return (_jsx("div", { className: "", children: showRevisionHistory ? (
74
+ // Revision history view
75
+ _jsx(RevisionHistory, { documentId: selectedDocument.header.id, documentTitle: selectedDocument.header.name, globalOperations: selectedDocument.operations.global, localOperations: selectedDocument.operations.local, onClose: () => setShowRevisionHistory(false) }, selectedDocument.header.id)) : (
76
+ // Main editor view
77
+ _jsxs(Suspense, { fallback: loadingContent, children: [!hideToolbar && (_jsx(DocumentToolbar, { onClose: handleClose, onExport: onExport, onShowRevisionHistory: () => setShowRevisionHistory(true), onSwitchboardLinkClick: () => { }, title: selectedDocument.header.name, timelineButtonVisible: editorModule.config.timelineEnabled, timelineItems: timelineItems.data, onTimelineItemClick: setSelectedTimelineItem })), _jsx(EditorComponent, { context: {
78
+ readMode: !!selectedTimelineItem,
79
+ selectedTimelineRevision: getRevisionFromDate(selectedTimelineItem?.startDate, selectedTimelineItem?.endDate, selectedDocument.operations.global),
80
+ }, dispatch: dispatch, document: selectedDocument, error: console.error, createRfp: createRfpDocument, setActiveDocumentId: setActiveDocumentId, createSow: createSowDocument, createPaymentTerms: createPaymentTermsDocument })] })) }));
81
+ };
@@ -0,0 +1,15 @@
1
+ import type { FolderNode, FileNode } from "document-drive";
2
+ interface FolderTreeProps {
3
+ folders: FolderNode[];
4
+ files: FileNode[];
5
+ selectedNodeId?: string;
6
+ onSelectNode: (nodeId: string | undefined) => void;
7
+ onSelectFile: (fileNode: FileNode) => void;
8
+ }
9
+ /**
10
+ * Hierarchical folder tree navigation component.
11
+ * Displays folders in a tree structure with expand/collapse functionality.
12
+ */
13
+ export declare function FolderTree({ folders, files, selectedNodeId, onSelectNode, onSelectFile, }: FolderTreeProps): import("react/jsx-runtime").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=FolderTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FolderTree.d.ts","sourceRoot":"","sources":["../../../../editors/network-admin/components/FolderTree.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG3D,UAAU,eAAe;IACvB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IACnD,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;CAC5C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,KAAK,EACL,cAAc,EACd,YAAY,EACZ,YAAY,GACb,EAAE,eAAe,2CAqHjB"}