@riboseinc/paneron-registry-kit 2.2.59 → 2.2.60

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 (733) hide show
  1. package/LICENSE +21 -0
  2. package/README.adoc +67 -0
  3. package/compiled/common.js +2 -0
  4. package/compiled/index.js +42 -0
  5. package/compiled/item-classes/Tree.js +61 -0
  6. package/compiled/item-classes/treeNodes.js +56 -0
  7. package/compiled/migrations/initial.js +28 -0
  8. package/compiled/proposals/ChangeRequestContext.js +121 -0
  9. package/compiled/proposals/HistoryDrawer.js +55 -0
  10. package/compiled/proposals/ListItem.js +22 -0
  11. package/compiled/proposals/MetaProperties.js +98 -0
  12. package/compiled/proposals/NewProposalMenu.js +53 -0
  13. package/compiled/proposals/ProposalBrowser.js +141 -0
  14. package/compiled/proposals/ProposalDetail.js +27 -0
  15. package/compiled/proposals/ProposalItem.js +24 -0
  16. package/compiled/proposals/ProposalSummary.js +28 -0
  17. package/compiled/proposals/ProposalTab.js +89 -0
  18. package/compiled/proposals/ProposalType.js +62 -0
  19. package/compiled/proposals/ProposalWorkspace.js +70 -0
  20. package/compiled/proposals/Search.js +106 -0
  21. package/compiled/proposals/TransitionHistory.js +271 -0
  22. package/compiled/proposals/TransitionOptions.js +432 -0
  23. package/compiled/proposals/actionableGroups/Tree.js +170 -0
  24. package/compiled/proposals/actionableGroups/queries.js +78 -0
  25. package/compiled/proposals/actionableGroups/treeNodes.js +90 -0
  26. package/compiled/proposals/actionableGroups/types.js +2 -0
  27. package/compiled/proposals/index.js +7 -0
  28. package/compiled/proposals/objectChangeset.js +331 -0
  29. package/compiled/proposals/queries.js +5 -0
  30. package/compiled/proposals/types.js +229 -0
  31. package/compiled/types/index.js +7 -0
  32. package/compiled/types/item.js +28 -0
  33. package/compiled/types/register.js +25 -0
  34. package/compiled/types/registry.js +10 -0
  35. package/compiled/types/stakeholder.js +81 -0
  36. package/compiled/types/util.js +3 -0
  37. package/compiled/types/views.js +2 -0
  38. package/compiled/views/AnnotatedChange.js +62 -0
  39. package/compiled/views/BrowserCtx.js +20 -0
  40. package/compiled/views/FilterCriteria/CRITERIA_CONFIGURATION.js +121 -0
  41. package/compiled/views/FilterCriteria/criteriaGroupToQueryExpression.js +45 -0
  42. package/compiled/views/FilterCriteria/criteriaGroupToSummary.js +47 -0
  43. package/compiled/views/FilterCriteria/criteriaToNodes.js +92 -0
  44. package/compiled/views/FilterCriteria/index.js +75 -0
  45. package/compiled/views/FilterCriteria/models.js +45 -0
  46. package/compiled/views/FilterCriteria/mutateGroup.js +74 -0
  47. package/compiled/views/GenericRelatedItemView.js +179 -0
  48. package/compiled/views/ItemDetailsDrawer.js +21 -0
  49. package/compiled/views/ItemSearchDrawer.js +29 -0
  50. package/compiled/views/Party.js +156 -0
  51. package/compiled/views/RegisterStakeholder.js +22 -0
  52. package/compiled/views/RegisterVersion.js +20 -0
  53. package/compiled/views/SearchQuery.js +90 -0
  54. package/compiled/views/StatefulTree.js +95 -0
  55. package/compiled/views/detail/AllItems.js +31 -0
  56. package/compiled/views/detail/ChangeRequest/index.js +49 -0
  57. package/compiled/views/detail/CustomView/index.js +34 -0
  58. package/compiled/views/detail/ProposalWork.js +167 -0
  59. package/compiled/views/detail/RegisterHome/ActiveProposalDetails.js +64 -0
  60. package/compiled/views/detail/RegisterHome/Block.js +39 -0
  61. package/compiled/views/detail/RegisterHome/MetaSummary.js +27 -0
  62. package/compiled/views/detail/RegisterHome/Proposal.js +105 -0
  63. package/compiled/views/detail/RegisterHome/index.js +381 -0
  64. package/compiled/views/detail/RegisterHome2/index.js +36 -0
  65. package/compiled/views/detail/RegisterItem/RelatedItems.js +28 -0
  66. package/compiled/views/detail/RegisterItem/SupersedingItemMenu.js +27 -0
  67. package/compiled/views/detail/RegisterItem/index.js +576 -0
  68. package/compiled/views/detail/RegisterItemClass.js +59 -0
  69. package/compiled/views/detail/RegisterMeta/RegisterMetaForm.js +176 -0
  70. package/compiled/views/detail/RegisterMeta/index.js +73 -0
  71. package/compiled/views/detail/index.js +12 -0
  72. package/compiled/views/diffing/InlineDiff.js +117 -0
  73. package/compiled/views/diffing/StructuredDiff.js +38 -0
  74. package/compiled/views/hooks/useCustomView.js +14 -0
  75. package/compiled/views/hooks/useItemClassConfig.js +8 -0
  76. package/compiled/views/hooks/useItemRef.js +27 -0
  77. package/compiled/views/hooks/useLatestAcceptedProposal.js +39 -0
  78. package/compiled/views/hooks/useRegisterVersion.js +35 -0
  79. package/compiled/views/hooks/useSingleRegisterItemData.js +22 -0
  80. package/compiled/views/hooks/useStakeholder.js +2 -0
  81. package/compiled/views/index.js +247 -0
  82. package/compiled/views/itemPathUtils.js +139 -0
  83. package/compiled/views/itemQueryUtils.js +49 -0
  84. package/compiled/views/protocolRegistry.js +30 -0
  85. package/compiled/views/sidebar/Browse/index.js +291 -0
  86. package/compiled/views/sidebar/ExportImport/ExportOptions.js +56 -0
  87. package/compiled/views/sidebar/ExportImport/ImportOptions.js +9 -0
  88. package/compiled/views/sidebar/ExportImport/index.js +4 -0
  89. package/compiled/views/sidebar/ListItem.js +31 -0
  90. package/compiled/views/sidebar/Registration/index.js +89 -0
  91. package/compiled/views/sidebar/Search/index.js +129 -0
  92. package/{views → compiled/views}/sidebar/Search/index.js.map +1 -1
  93. package/compiled/views/sidebar/index.js +115 -0
  94. package/compiled/views/util.js +278 -0
  95. package/dependencies-local/extension-kit/SettingsContext.d.ts +8 -0
  96. package/dependencies-local/extension-kit/SettingsContext.js +19 -0
  97. package/dependencies-local/extension-kit/SettingsContext.js.map +1 -0
  98. package/dependencies-local/extension-kit/build_site.d.ts +1 -0
  99. package/dependencies-local/extension-kit/build_site.js +4 -0
  100. package/dependencies-local/extension-kit/build_site.js.map +1 -0
  101. package/dependencies-local/extension-kit/context.d.ts +18 -0
  102. package/dependencies-local/extension-kit/context.js +143 -0
  103. package/dependencies-local/extension-kit/context.js.map +1 -0
  104. package/dependencies-local/extension-kit/i18n/ContextProvider.d.ts +9 -0
  105. package/dependencies-local/extension-kit/i18n/ContextProvider.js +33 -0
  106. package/dependencies-local/extension-kit/i18n/ContextProvider.js.map +1 -0
  107. package/dependencies-local/extension-kit/i18n/context.d.ts +9 -0
  108. package/dependencies-local/extension-kit/i18n/context.js +23 -0
  109. package/dependencies-local/extension-kit/i18n/context.js.map +1 -0
  110. package/dependencies-local/extension-kit/i18n/types.d.ts +10 -0
  111. package/dependencies-local/extension-kit/i18n/types.js.map +1 -0
  112. package/dependencies-local/extension-kit/i18n/widgets.d.ts +16 -0
  113. package/dependencies-local/extension-kit/i18n/widgets.js +59 -0
  114. package/dependencies-local/extension-kit/i18n/widgets.js.map +1 -0
  115. package/dependencies-local/extension-kit/index.d.ts +16 -0
  116. package/dependencies-local/extension-kit/index.js +149 -0
  117. package/dependencies-local/extension-kit/index.js.map +1 -0
  118. package/dependencies-local/extension-kit/object-specs/index.d.ts +2 -0
  119. package/dependencies-local/extension-kit/object-specs/index.js +22 -0
  120. package/dependencies-local/extension-kit/object-specs/index.js.map +1 -0
  121. package/dependencies-local/extension-kit/object-specs/paneron-object.d.ts +7 -0
  122. package/dependencies-local/extension-kit/object-specs/paneron-object.js +159 -0
  123. package/dependencies-local/extension-kit/object-specs/paneron-object.js.map +1 -0
  124. package/dependencies-local/extension-kit/object-specs/ser-des.d.ts +32 -0
  125. package/dependencies-local/extension-kit/object-specs/ser-des.js +232 -0
  126. package/dependencies-local/extension-kit/object-specs/ser-des.js.map +1 -0
  127. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.d.ts +3 -0
  128. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.js +42 -0
  129. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.js.map +1 -0
  130. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.d.ts +3 -0
  131. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.js +110 -0
  132. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.js.map +1 -0
  133. package/dependencies-local/extension-kit/object-specs/yaml/index.d.ts +9 -0
  134. package/dependencies-local/extension-kit/object-specs/yaml/index.js +36 -0
  135. package/dependencies-local/extension-kit/object-specs/yaml/index.js.map +1 -0
  136. package/dependencies-local/extension-kit/object-specs/yaml/schema.d.ts +4 -0
  137. package/dependencies-local/extension-kit/object-specs/yaml/schema.js +26 -0
  138. package/dependencies-local/extension-kit/object-specs/yaml/schema.js.map +1 -0
  139. package/dependencies-local/extension-kit/settings.d.ts +9 -0
  140. package/dependencies-local/extension-kit/settings.js +17 -0
  141. package/dependencies-local/extension-kit/settings.js.map +1 -0
  142. package/dependencies-local/extension-kit/types/binary-invocation.d.ts +31 -0
  143. package/dependencies-local/extension-kit/types/binary-invocation.js.map +1 -0
  144. package/dependencies-local/extension-kit/types/buffers.d.ts +19 -0
  145. package/dependencies-local/extension-kit/types/buffers.js.map +1 -0
  146. package/dependencies-local/extension-kit/types/changes.d.ts +37 -0
  147. package/dependencies-local/extension-kit/types/changes.js +5 -0
  148. package/dependencies-local/extension-kit/types/changes.js.map +1 -0
  149. package/dependencies-local/extension-kit/types/data.d.ts +54 -0
  150. package/dependencies-local/extension-kit/types/data.js +5 -0
  151. package/dependencies-local/extension-kit/types/data.js.map +1 -0
  152. package/dependencies-local/extension-kit/types/dialogs.d.ts +21 -0
  153. package/dependencies-local/extension-kit/types/dialogs.js +5 -0
  154. package/dependencies-local/extension-kit/types/dialogs.js.map +1 -0
  155. package/dependencies-local/extension-kit/types/export-formats.d.ts +23 -0
  156. package/dependencies-local/extension-kit/types/export-formats.js +5 -0
  157. package/dependencies-local/extension-kit/types/export-formats.js.map +1 -0
  158. package/dependencies-local/extension-kit/types/extension-maker.d.ts +17 -0
  159. package/dependencies-local/extension-kit/types/extension-maker.js +5 -0
  160. package/dependencies-local/extension-kit/types/extension-maker.js.map +1 -0
  161. package/dependencies-local/extension-kit/types/extension.d.ts +40 -0
  162. package/dependencies-local/extension-kit/types/extension.js +5 -0
  163. package/dependencies-local/extension-kit/types/extension.js.map +1 -0
  164. package/dependencies-local/extension-kit/types/index.d.ts +3 -0
  165. package/dependencies-local/extension-kit/types/index.js +41 -0
  166. package/dependencies-local/extension-kit/types/index.js.map +1 -0
  167. package/dependencies-local/extension-kit/types/indexes.d.ts +6 -0
  168. package/dependencies-local/extension-kit/types/indexes.js +15 -0
  169. package/dependencies-local/extension-kit/types/indexes.js.map +1 -0
  170. package/dependencies-local/extension-kit/types/migrations.d.ts +35 -0
  171. package/dependencies-local/extension-kit/types/migrations.js +5 -0
  172. package/dependencies-local/extension-kit/types/migrations.js.map +1 -0
  173. package/dependencies-local/extension-kit/types/object-spec.d.ts +109 -0
  174. package/dependencies-local/extension-kit/types/object-spec.js +24 -0
  175. package/dependencies-local/extension-kit/types/object-spec.js.map +1 -0
  176. package/dependencies-local/extension-kit/types/objects.d.ts +18 -0
  177. package/dependencies-local/extension-kit/types/objects.js +5 -0
  178. package/dependencies-local/extension-kit/types/objects.js.map +1 -0
  179. package/dependencies-local/extension-kit/types/progress.d.ts +5 -0
  180. package/dependencies-local/extension-kit/types/progress.js +5 -0
  181. package/dependencies-local/extension-kit/types/progress.js.map +1 -0
  182. package/dependencies-local/extension-kit/types/renderer.d.ts +505 -0
  183. package/dependencies-local/extension-kit/types/renderer.js +16 -0
  184. package/dependencies-local/extension-kit/types/renderer.js.map +1 -0
  185. package/dependencies-local/extension-kit/useDebounce.d.ts +5 -0
  186. package/dependencies-local/extension-kit/useDebounce.js +25 -0
  187. package/dependencies-local/extension-kit/useDebounce.js.map +1 -0
  188. package/dependencies-local/extension-kit/usePersistentStateReducer.d.ts +39 -0
  189. package/dependencies-local/extension-kit/usePersistentStateReducer.js +133 -0
  190. package/dependencies-local/extension-kit/usePersistentStateReducer.js.map +1 -0
  191. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.d.ts +71 -0
  192. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.js +107 -0
  193. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.js.map +1 -0
  194. package/dependencies-local/extension-kit/util.d.ts +37 -0
  195. package/dependencies-local/extension-kit/util.js +179 -0
  196. package/dependencies-local/extension-kit/util.js.map +1 -0
  197. package/dependencies-local/extension-kit/widgets/DL.d.ts +44 -0
  198. package/dependencies-local/extension-kit/widgets/DL.js +89 -0
  199. package/dependencies-local/extension-kit/widgets/DL.js.map +1 -0
  200. package/dependencies-local/extension-kit/widgets/ErrorBoundary.d.ts +17 -0
  201. package/dependencies-local/extension-kit/widgets/ErrorBoundary.js +49 -0
  202. package/dependencies-local/extension-kit/widgets/ErrorBoundary.js.map +1 -0
  203. package/dependencies-local/extension-kit/widgets/ErrorState.d.ts +10 -0
  204. package/dependencies-local/extension-kit/widgets/ErrorState.js +54 -0
  205. package/dependencies-local/extension-kit/widgets/ErrorState.js.map +1 -0
  206. package/dependencies-local/extension-kit/widgets/Grid.d.ts +41 -0
  207. package/dependencies-local/extension-kit/widgets/Grid.js +213 -0
  208. package/dependencies-local/extension-kit/widgets/Grid.js.map +1 -0
  209. package/dependencies-local/extension-kit/widgets/HelpTooltip.d.ts +18 -0
  210. package/dependencies-local/extension-kit/widgets/HelpTooltip.js +72 -0
  211. package/dependencies-local/extension-kit/widgets/HelpTooltip.js.map +1 -0
  212. package/dependencies-local/extension-kit/widgets/ItemCount.d.ts +19 -0
  213. package/dependencies-local/extension-kit/widgets/ItemCount.js +79 -0
  214. package/dependencies-local/extension-kit/widgets/ItemCount.js.map +1 -0
  215. package/dependencies-local/extension-kit/widgets/List.d.ts +41 -0
  216. package/dependencies-local/extension-kit/widgets/List.js +210 -0
  217. package/dependencies-local/extension-kit/widgets/List.js.map +1 -0
  218. package/dependencies-local/extension-kit/widgets/Navbar.d.ts +20 -0
  219. package/dependencies-local/extension-kit/widgets/Navbar.js +76 -0
  220. package/dependencies-local/extension-kit/widgets/Navbar.js.map +1 -0
  221. package/dependencies-local/extension-kit/widgets/Navbar2.d.ts +17 -0
  222. package/dependencies-local/extension-kit/widgets/Navbar2.js +95 -0
  223. package/dependencies-local/extension-kit/widgets/Navbar2.js.map +1 -0
  224. package/dependencies-local/extension-kit/widgets/OperationQueue/context.d.ts +17 -0
  225. package/dependencies-local/extension-kit/widgets/OperationQueue/context.js +21 -0
  226. package/dependencies-local/extension-kit/widgets/OperationQueue/context.js.map +1 -0
  227. package/dependencies-local/extension-kit/widgets/OperationQueue/index.d.ts +8 -0
  228. package/dependencies-local/extension-kit/widgets/OperationQueue/index.js +159 -0
  229. package/dependencies-local/extension-kit/widgets/OperationQueue/index.js.map +1 -0
  230. package/dependencies-local/extension-kit/widgets/OperationQueue/types.d.ts +19 -0
  231. package/dependencies-local/extension-kit/widgets/OperationQueue/types.js +5 -0
  232. package/dependencies-local/extension-kit/widgets/OperationQueue/types.js.map +1 -0
  233. package/dependencies-local/extension-kit/widgets/SearchResultList.d.ts +31 -0
  234. package/dependencies-local/extension-kit/widgets/SearchResultList.js +203 -0
  235. package/dependencies-local/extension-kit/widgets/SearchResultList.js.map +1 -0
  236. package/dependencies-local/extension-kit/widgets/Sidebar/Block.d.ts +24 -0
  237. package/dependencies-local/extension-kit/widgets/Sidebar/Block.js +109 -0
  238. package/dependencies-local/extension-kit/widgets/Sidebar/Block.js.map +1 -0
  239. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.d.ts +6 -0
  240. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.js +23 -0
  241. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.js.map +1 -0
  242. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.d.ts +29 -0
  243. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.js +157 -0
  244. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.js.map +1 -0
  245. package/dependencies-local/extension-kit/widgets/Sidebar/index.d.ts +27 -0
  246. package/dependencies-local/extension-kit/widgets/Sidebar/index.js +197 -0
  247. package/dependencies-local/extension-kit/widgets/Sidebar/index.js.map +1 -0
  248. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.d.ts +29 -0
  249. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.js +135 -0
  250. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.js.map +1 -0
  251. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.d.ts +10 -0
  252. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.js +205 -0
  253. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.js.map +1 -0
  254. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.d.ts +9 -0
  255. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.js +69 -0
  256. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.js.map +1 -0
  257. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.d.ts +54 -0
  258. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.js +301 -0
  259. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.js.map +1 -0
  260. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.d.ts +102 -0
  261. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.js +5 -0
  262. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.js.map +1 -0
  263. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.d.ts +1 -0
  264. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.js +14 -0
  265. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.js.map +1 -0
  266. package/dependencies-local/extension-kit/widgets/Workspace.d.ts +40 -0
  267. package/dependencies-local/extension-kit/widgets/Workspace.js +96 -0
  268. package/dependencies-local/extension-kit/widgets/Workspace.js.map +1 -0
  269. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.d.ts +12 -0
  270. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.js +60 -0
  271. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.js.map +1 -0
  272. package/dependencies-local/extension-kit/widgets/panels/index.d.ts +28 -0
  273. package/dependencies-local/extension-kit/widgets/panels/index.js +169 -0
  274. package/dependencies-local/extension-kit/widgets/panels/index.js.map +1 -0
  275. package/dist/common.d.ts +1 -0
  276. package/dist/common.js.map +1 -0
  277. package/dist/index.d.ts +18 -0
  278. package/dist/index.js.map +1 -0
  279. package/dist/item-classes/Tree.d.ts +5 -0
  280. package/dist/item-classes/Tree.js.map +1 -0
  281. package/dist/item-classes/treeNodes.d.ts +12 -0
  282. package/dist/item-classes/treeNodes.js.map +1 -0
  283. package/dist/migrations/initial.d.ts +3 -0
  284. package/dist/migrations/initial.js.map +1 -0
  285. package/dist/proposals/ChangeRequestContext.d.ts +44 -0
  286. package/dist/proposals/ChangeRequestContext.js.map +1 -0
  287. package/dist/proposals/HistoryDrawer.d.ts +12 -0
  288. package/dist/proposals/HistoryDrawer.js.map +1 -0
  289. package/dist/proposals/ListItem.d.ts +9 -0
  290. package/dist/proposals/ListItem.js.map +1 -0
  291. package/dist/proposals/MetaProperties.d.ts +14 -0
  292. package/dist/proposals/MetaProperties.js.map +1 -0
  293. package/dist/proposals/NewProposalMenu.d.ts +10 -0
  294. package/dist/proposals/NewProposalMenu.js.map +1 -0
  295. package/dist/proposals/ProposalBrowser.d.ts +29 -0
  296. package/dist/proposals/ProposalBrowser.js.map +1 -0
  297. package/dist/proposals/ProposalDetail.d.ts +6 -0
  298. package/dist/proposals/ProposalDetail.js.map +1 -0
  299. package/dist/proposals/ProposalItem.d.ts +16 -0
  300. package/dist/proposals/ProposalItem.js.map +1 -0
  301. package/dist/proposals/ProposalSummary.d.ts +6 -0
  302. package/dist/proposals/ProposalSummary.js.map +1 -0
  303. package/dist/proposals/ProposalTab.d.ts +14 -0
  304. package/dist/proposals/ProposalTab.js.map +1 -0
  305. package/dist/proposals/ProposalType.d.ts +11 -0
  306. package/dist/proposals/ProposalType.js.map +1 -0
  307. package/dist/proposals/ProposalWorkspace.d.ts +15 -0
  308. package/dist/proposals/ProposalWorkspace.js.map +1 -0
  309. package/dist/proposals/Search.d.ts +26 -0
  310. package/dist/proposals/Search.js.map +1 -0
  311. package/dist/proposals/TransitionHistory.d.ts +31 -0
  312. package/dist/proposals/TransitionHistory.js.map +1 -0
  313. package/dist/proposals/TransitionOptions.d.ts +38 -0
  314. package/dist/proposals/TransitionOptions.js.map +1 -0
  315. package/dist/proposals/actionableGroups/Tree.d.ts +7 -0
  316. package/dist/proposals/actionableGroups/Tree.js.map +1 -0
  317. package/dist/proposals/actionableGroups/queries.d.ts +4 -0
  318. package/dist/proposals/actionableGroups/queries.js.map +1 -0
  319. package/dist/proposals/actionableGroups/treeNodes.d.ts +27 -0
  320. package/dist/proposals/actionableGroups/treeNodes.js.map +1 -0
  321. package/dist/proposals/actionableGroups/types.d.ts +6 -0
  322. package/dist/proposals/actionableGroups/types.js +5 -0
  323. package/dist/proposals/actionableGroups/types.js.map +1 -0
  324. package/dist/proposals/index.d.ts +6 -0
  325. package/dist/proposals/index.js.map +1 -0
  326. package/dist/proposals/objectChangeset.d.ts +72 -0
  327. package/dist/proposals/objectChangeset.js.map +1 -0
  328. package/dist/proposals/queries.d.ts +4 -0
  329. package/dist/proposals/queries.js.map +1 -0
  330. package/dist/proposals/types.d.ts +332 -0
  331. package/dist/proposals/types.js.map +1 -0
  332. package/dist/types/index.d.ts +6 -0
  333. package/dist/types/index.js.map +1 -0
  334. package/dist/types/item.d.ts +55 -0
  335. package/dist/types/item.js.map +1 -0
  336. package/dist/types/register.d.ts +21 -0
  337. package/dist/types/register.js.map +1 -0
  338. package/dist/types/registry.d.ts +15 -0
  339. package/dist/types/registry.js.map +1 -0
  340. package/dist/types/stakeholder.d.ts +43 -0
  341. package/dist/types/stakeholder.js.map +1 -0
  342. package/dist/types/util.d.ts +28 -0
  343. package/dist/types/util.js +5 -0
  344. package/dist/types/util.js.map +1 -0
  345. package/dist/types/views.d.ts +228 -0
  346. package/dist/types/views.js +5 -0
  347. package/dist/types/views.js.map +1 -0
  348. package/dist/views/AnnotatedChange.d.ts +7 -0
  349. package/dist/views/AnnotatedChange.js.map +1 -0
  350. package/dist/views/BrowserCtx.d.ts +69 -0
  351. package/dist/views/BrowserCtx.js.map +1 -0
  352. package/dist/views/FilterCriteria/CRITERIA_CONFIGURATION.d.ts +17 -0
  353. package/dist/views/FilterCriteria/CRITERIA_CONFIGURATION.js.map +1 -0
  354. package/dist/views/FilterCriteria/criteriaGroupToQueryExpression.d.ts +6 -0
  355. package/dist/views/FilterCriteria/criteriaGroupToQueryExpression.js.map +1 -0
  356. package/dist/views/FilterCriteria/criteriaGroupToSummary.d.ts +5 -0
  357. package/dist/views/FilterCriteria/criteriaGroupToSummary.js.map +1 -0
  358. package/dist/views/FilterCriteria/criteriaToNodes.d.ts +24 -0
  359. package/dist/views/FilterCriteria/criteriaToNodes.js.map +1 -0
  360. package/dist/views/FilterCriteria/index.d.ts +23 -0
  361. package/dist/views/FilterCriteria/index.js.map +1 -0
  362. package/dist/views/FilterCriteria/models.d.ts +70 -0
  363. package/dist/views/FilterCriteria/models.js.map +1 -0
  364. package/dist/views/FilterCriteria/mutateGroup.d.ts +24 -0
  365. package/dist/views/FilterCriteria/mutateGroup.js.map +1 -0
  366. package/dist/views/GenericRelatedItemView.d.ts +9 -0
  367. package/dist/views/GenericRelatedItemView.js.map +1 -0
  368. package/dist/views/ItemDetailsDrawer.d.ts +12 -0
  369. package/dist/views/ItemDetailsDrawer.js.map +1 -0
  370. package/dist/views/ItemSearchDrawer.d.ts +11 -0
  371. package/dist/views/ItemSearchDrawer.js.map +1 -0
  372. package/dist/views/Party.d.ts +0 -0
  373. package/dist/views/Party.js.map +1 -0
  374. package/dist/views/RegisterStakeholder.d.ts +12 -0
  375. package/dist/views/RegisterStakeholder.js.map +1 -0
  376. package/dist/views/RegisterVersion.d.ts +9 -0
  377. package/dist/views/RegisterVersion.js.map +1 -0
  378. package/dist/views/SearchQuery.d.ts +19 -0
  379. package/dist/views/SearchQuery.js.map +1 -0
  380. package/dist/views/StatefulTree.d.ts +28 -0
  381. package/dist/views/StatefulTree.js.map +1 -0
  382. package/dist/views/detail/AllItems.d.ts +8 -0
  383. package/dist/views/detail/AllItems.js.map +1 -0
  384. package/dist/views/detail/ChangeRequest/index.d.ts +12 -0
  385. package/dist/views/detail/ChangeRequest/index.js.map +1 -0
  386. package/dist/views/detail/CustomView/index.d.ts +13 -0
  387. package/dist/views/detail/CustomView/index.js.map +1 -0
  388. package/dist/views/detail/ProposalWork.d.ts +8 -0
  389. package/dist/views/detail/ProposalWork.js.map +1 -0
  390. package/dist/views/detail/RegisterHome/ActiveProposalDetails.d.ts +15 -0
  391. package/dist/views/detail/RegisterHome/ActiveProposalDetails.js.map +1 -0
  392. package/dist/views/detail/RegisterHome/Block.d.ts +29 -0
  393. package/dist/views/detail/RegisterHome/Block.js.map +1 -0
  394. package/dist/views/detail/RegisterHome/MetaSummary.d.ts +9 -0
  395. package/dist/views/detail/RegisterHome/MetaSummary.js.map +1 -0
  396. package/dist/views/detail/RegisterHome/Proposal.d.ts +14 -0
  397. package/dist/views/detail/RegisterHome/Proposal.js.map +1 -0
  398. package/dist/views/detail/RegisterHome/index.d.ts +5 -0
  399. package/dist/views/detail/RegisterHome/index.js.map +1 -0
  400. package/dist/views/detail/RegisterHome2/index.d.ts +5 -0
  401. package/dist/views/detail/RegisterHome2/index.js.map +1 -0
  402. package/dist/views/detail/RegisterItem/RelatedItems.d.ts +14 -0
  403. package/dist/views/detail/RegisterItem/RelatedItems.js.map +1 -0
  404. package/dist/views/detail/RegisterItem/SupersedingItemMenu.d.ts +13 -0
  405. package/dist/views/detail/RegisterItem/SupersedingItemMenu.js.map +1 -0
  406. package/dist/views/detail/RegisterItem/index.d.ts +21 -0
  407. package/dist/views/detail/RegisterItem/index.js.map +1 -0
  408. package/dist/views/detail/RegisterItemClass.d.ts +12 -0
  409. package/dist/views/detail/RegisterItemClass.js.map +1 -0
  410. package/dist/views/detail/RegisterMeta/RegisterMetaForm.d.ts +10 -0
  411. package/dist/views/detail/RegisterMeta/RegisterMetaForm.js.map +1 -0
  412. package/dist/views/detail/RegisterMeta/index.d.ts +10 -0
  413. package/dist/views/detail/RegisterMeta/index.js.map +1 -0
  414. package/dist/views/detail/index.d.ts +1 -0
  415. package/dist/views/detail/index.js.map +1 -0
  416. package/dist/views/diffing/InlineDiff.d.ts +38 -0
  417. package/dist/views/diffing/InlineDiff.js.map +1 -0
  418. package/dist/views/diffing/StructuredDiff.d.ts +11 -0
  419. package/dist/views/diffing/StructuredDiff.js.map +1 -0
  420. package/dist/views/hooks/useCustomView.d.ts +3 -0
  421. package/dist/views/hooks/useCustomView.js.map +1 -0
  422. package/dist/views/hooks/useItemClassConfig.d.ts +2 -0
  423. package/dist/views/hooks/useItemClassConfig.js.map +1 -0
  424. package/dist/views/hooks/useItemRef.d.ts +3 -0
  425. package/dist/views/hooks/useItemRef.js.map +1 -0
  426. package/dist/views/hooks/useLatestAcceptedProposal.d.ts +2 -0
  427. package/dist/views/hooks/useLatestAcceptedProposal.js.map +1 -0
  428. package/dist/views/hooks/useRegisterVersion.d.ts +5 -0
  429. package/dist/views/hooks/useRegisterVersion.js.map +1 -0
  430. package/dist/views/hooks/useSingleRegisterItemData.d.ts +3 -0
  431. package/dist/views/hooks/useSingleRegisterItemData.js.map +1 -0
  432. package/dist/views/hooks/useStakeholder.d.ts +0 -0
  433. package/dist/views/hooks/useStakeholder.js.map +1 -0
  434. package/dist/views/index.d.ts +8 -0
  435. package/dist/views/index.js.map +1 -0
  436. package/dist/views/itemPathUtils.d.ts +47 -0
  437. package/dist/views/itemPathUtils.js.map +1 -0
  438. package/dist/views/itemQueryUtils.d.ts +12 -0
  439. package/dist/views/itemQueryUtils.js.map +1 -0
  440. package/dist/views/protocolRegistry.d.ts +14 -0
  441. package/dist/views/protocolRegistry.js.map +1 -0
  442. package/dist/views/sidebar/Browse/index.d.ts +11 -0
  443. package/dist/views/sidebar/Browse/index.js.map +1 -0
  444. package/dist/views/sidebar/ExportImport/ExportOptions.d.ts +5 -0
  445. package/dist/views/sidebar/ExportImport/ExportOptions.js.map +1 -0
  446. package/dist/views/sidebar/ExportImport/ImportOptions.d.ts +4 -0
  447. package/dist/views/sidebar/ExportImport/ImportOptions.js.map +1 -0
  448. package/dist/views/sidebar/ExportImport/index.d.ts +3 -0
  449. package/dist/views/sidebar/ExportImport/index.js.map +1 -0
  450. package/dist/views/sidebar/ListItem.d.ts +10 -0
  451. package/dist/views/sidebar/ListItem.js.map +1 -0
  452. package/dist/views/sidebar/Registration/index.d.ts +9 -0
  453. package/dist/views/sidebar/Registration/index.js.map +1 -0
  454. package/dist/views/sidebar/Search/index.d.ts +29 -0
  455. package/{views → dist/views}/sidebar/Search/index.js +1 -1
  456. package/dist/views/sidebar/Search/index.js.map +1 -0
  457. package/dist/views/sidebar/index.d.ts +7 -0
  458. package/dist/views/sidebar/index.js.map +1 -0
  459. package/dist/views/util.d.ts +98 -0
  460. package/dist/views/util.js.map +1 -0
  461. package/package.json +1 -1
  462. package/react-visual-diff.d.ts +9 -0
  463. /package/{common.d.ts → compiled/common.d.ts} +0 -0
  464. /package/{common.js.map → compiled/common.js.map} +0 -0
  465. /package/{index.d.ts → compiled/index.d.ts} +0 -0
  466. /package/{index.js.map → compiled/index.js.map} +0 -0
  467. /package/{item-classes → compiled/item-classes}/Tree.d.ts +0 -0
  468. /package/{item-classes → compiled/item-classes}/Tree.js.map +0 -0
  469. /package/{item-classes → compiled/item-classes}/treeNodes.d.ts +0 -0
  470. /package/{item-classes → compiled/item-classes}/treeNodes.js.map +0 -0
  471. /package/{migrations → compiled/migrations}/initial.d.ts +0 -0
  472. /package/{migrations → compiled/migrations}/initial.js.map +0 -0
  473. /package/{proposals → compiled/proposals}/ChangeRequestContext.d.ts +0 -0
  474. /package/{proposals → compiled/proposals}/ChangeRequestContext.js.map +0 -0
  475. /package/{proposals → compiled/proposals}/HistoryDrawer.d.ts +0 -0
  476. /package/{proposals → compiled/proposals}/HistoryDrawer.js.map +0 -0
  477. /package/{proposals → compiled/proposals}/ListItem.d.ts +0 -0
  478. /package/{proposals → compiled/proposals}/ListItem.js.map +0 -0
  479. /package/{proposals → compiled/proposals}/MetaProperties.d.ts +0 -0
  480. /package/{proposals → compiled/proposals}/MetaProperties.js.map +0 -0
  481. /package/{proposals → compiled/proposals}/NewProposalMenu.d.ts +0 -0
  482. /package/{proposals → compiled/proposals}/NewProposalMenu.js.map +0 -0
  483. /package/{proposals → compiled/proposals}/ProposalBrowser.d.ts +0 -0
  484. /package/{proposals → compiled/proposals}/ProposalBrowser.js.map +0 -0
  485. /package/{proposals → compiled/proposals}/ProposalDetail.d.ts +0 -0
  486. /package/{proposals → compiled/proposals}/ProposalDetail.js.map +0 -0
  487. /package/{proposals → compiled/proposals}/ProposalItem.d.ts +0 -0
  488. /package/{proposals → compiled/proposals}/ProposalItem.js.map +0 -0
  489. /package/{proposals → compiled/proposals}/ProposalSummary.d.ts +0 -0
  490. /package/{proposals → compiled/proposals}/ProposalSummary.js.map +0 -0
  491. /package/{proposals → compiled/proposals}/ProposalTab.d.ts +0 -0
  492. /package/{proposals → compiled/proposals}/ProposalTab.js.map +0 -0
  493. /package/{proposals → compiled/proposals}/ProposalType.d.ts +0 -0
  494. /package/{proposals → compiled/proposals}/ProposalType.js.map +0 -0
  495. /package/{proposals → compiled/proposals}/ProposalWorkspace.d.ts +0 -0
  496. /package/{proposals → compiled/proposals}/ProposalWorkspace.js.map +0 -0
  497. /package/{proposals → compiled/proposals}/Search.d.ts +0 -0
  498. /package/{proposals → compiled/proposals}/Search.js.map +0 -0
  499. /package/{proposals → compiled/proposals}/TransitionHistory.d.ts +0 -0
  500. /package/{proposals → compiled/proposals}/TransitionHistory.js.map +0 -0
  501. /package/{proposals → compiled/proposals}/TransitionOptions.d.ts +0 -0
  502. /package/{proposals → compiled/proposals}/TransitionOptions.js.map +0 -0
  503. /package/{proposals → compiled/proposals}/actionableGroups/Tree.d.ts +0 -0
  504. /package/{proposals → compiled/proposals}/actionableGroups/Tree.js.map +0 -0
  505. /package/{proposals → compiled/proposals}/actionableGroups/queries.d.ts +0 -0
  506. /package/{proposals → compiled/proposals}/actionableGroups/queries.js.map +0 -0
  507. /package/{proposals → compiled/proposals}/actionableGroups/treeNodes.d.ts +0 -0
  508. /package/{proposals → compiled/proposals}/actionableGroups/treeNodes.js.map +0 -0
  509. /package/{proposals → compiled/proposals}/actionableGroups/types.d.ts +0 -0
  510. /package/{proposals → compiled/proposals}/actionableGroups/types.js.map +0 -0
  511. /package/{proposals → compiled/proposals}/index.d.ts +0 -0
  512. /package/{proposals → compiled/proposals}/index.js.map +0 -0
  513. /package/{proposals → compiled/proposals}/objectChangeset.d.ts +0 -0
  514. /package/{proposals → compiled/proposals}/objectChangeset.js.map +0 -0
  515. /package/{proposals → compiled/proposals}/queries.d.ts +0 -0
  516. /package/{proposals → compiled/proposals}/queries.js.map +0 -0
  517. /package/{proposals → compiled/proposals}/types.d.ts +0 -0
  518. /package/{proposals → compiled/proposals}/types.js.map +0 -0
  519. /package/{types → compiled/types}/index.d.ts +0 -0
  520. /package/{types → compiled/types}/index.js.map +0 -0
  521. /package/{types → compiled/types}/item.d.ts +0 -0
  522. /package/{types → compiled/types}/item.js.map +0 -0
  523. /package/{types → compiled/types}/register.d.ts +0 -0
  524. /package/{types → compiled/types}/register.js.map +0 -0
  525. /package/{types → compiled/types}/registry.d.ts +0 -0
  526. /package/{types → compiled/types}/registry.js.map +0 -0
  527. /package/{types → compiled/types}/stakeholder.d.ts +0 -0
  528. /package/{types → compiled/types}/stakeholder.js.map +0 -0
  529. /package/{types → compiled/types}/util.d.ts +0 -0
  530. /package/{types → compiled/types}/util.js.map +0 -0
  531. /package/{types → compiled/types}/views.d.ts +0 -0
  532. /package/{types → compiled/types}/views.js.map +0 -0
  533. /package/{views → compiled/views}/AnnotatedChange.d.ts +0 -0
  534. /package/{views → compiled/views}/AnnotatedChange.js.map +0 -0
  535. /package/{views → compiled/views}/BrowserCtx.d.ts +0 -0
  536. /package/{views → compiled/views}/BrowserCtx.js.map +0 -0
  537. /package/{views → compiled/views}/FilterCriteria/CRITERIA_CONFIGURATION.d.ts +0 -0
  538. /package/{views → compiled/views}/FilterCriteria/CRITERIA_CONFIGURATION.js.map +0 -0
  539. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToQueryExpression.d.ts +0 -0
  540. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToQueryExpression.js.map +0 -0
  541. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToSummary.d.ts +0 -0
  542. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToSummary.js.map +0 -0
  543. /package/{views → compiled/views}/FilterCriteria/criteriaToNodes.d.ts +0 -0
  544. /package/{views → compiled/views}/FilterCriteria/criteriaToNodes.js.map +0 -0
  545. /package/{views → compiled/views}/FilterCriteria/index.d.ts +0 -0
  546. /package/{views → compiled/views}/FilterCriteria/index.js.map +0 -0
  547. /package/{views → compiled/views}/FilterCriteria/models.d.ts +0 -0
  548. /package/{views → compiled/views}/FilterCriteria/models.js.map +0 -0
  549. /package/{views → compiled/views}/FilterCriteria/mutateGroup.d.ts +0 -0
  550. /package/{views → compiled/views}/FilterCriteria/mutateGroup.js.map +0 -0
  551. /package/{views → compiled/views}/GenericRelatedItemView.d.ts +0 -0
  552. /package/{views → compiled/views}/GenericRelatedItemView.js.map +0 -0
  553. /package/{views → compiled/views}/ItemDetailsDrawer.d.ts +0 -0
  554. /package/{views → compiled/views}/ItemDetailsDrawer.js.map +0 -0
  555. /package/{views → compiled/views}/ItemSearchDrawer.d.ts +0 -0
  556. /package/{views → compiled/views}/ItemSearchDrawer.js.map +0 -0
  557. /package/{views → compiled/views}/Party.d.ts +0 -0
  558. /package/{views → compiled/views}/Party.js.map +0 -0
  559. /package/{views → compiled/views}/RegisterStakeholder.d.ts +0 -0
  560. /package/{views → compiled/views}/RegisterStakeholder.js.map +0 -0
  561. /package/{views → compiled/views}/RegisterVersion.d.ts +0 -0
  562. /package/{views → compiled/views}/RegisterVersion.js.map +0 -0
  563. /package/{views → compiled/views}/SearchQuery.d.ts +0 -0
  564. /package/{views → compiled/views}/SearchQuery.js.map +0 -0
  565. /package/{views → compiled/views}/StatefulTree.d.ts +0 -0
  566. /package/{views → compiled/views}/StatefulTree.js.map +0 -0
  567. /package/{views → compiled/views}/detail/AllItems.d.ts +0 -0
  568. /package/{views → compiled/views}/detail/AllItems.js.map +0 -0
  569. /package/{views → compiled/views}/detail/ChangeRequest/index.d.ts +0 -0
  570. /package/{views → compiled/views}/detail/ChangeRequest/index.js.map +0 -0
  571. /package/{views → compiled/views}/detail/CustomView/index.d.ts +0 -0
  572. /package/{views → compiled/views}/detail/CustomView/index.js.map +0 -0
  573. /package/{views → compiled/views}/detail/ProposalWork.d.ts +0 -0
  574. /package/{views → compiled/views}/detail/ProposalWork.js.map +0 -0
  575. /package/{views → compiled/views}/detail/RegisterHome/ActiveProposalDetails.d.ts +0 -0
  576. /package/{views → compiled/views}/detail/RegisterHome/ActiveProposalDetails.js.map +0 -0
  577. /package/{views → compiled/views}/detail/RegisterHome/Block.d.ts +0 -0
  578. /package/{views → compiled/views}/detail/RegisterHome/Block.js.map +0 -0
  579. /package/{views → compiled/views}/detail/RegisterHome/MetaSummary.d.ts +0 -0
  580. /package/{views → compiled/views}/detail/RegisterHome/MetaSummary.js.map +0 -0
  581. /package/{views → compiled/views}/detail/RegisterHome/Proposal.d.ts +0 -0
  582. /package/{views → compiled/views}/detail/RegisterHome/Proposal.js.map +0 -0
  583. /package/{views → compiled/views}/detail/RegisterHome/index.d.ts +0 -0
  584. /package/{views → compiled/views}/detail/RegisterHome/index.js.map +0 -0
  585. /package/{views → compiled/views}/detail/RegisterHome2/index.d.ts +0 -0
  586. /package/{views → compiled/views}/detail/RegisterHome2/index.js.map +0 -0
  587. /package/{views → compiled/views}/detail/RegisterItem/RelatedItems.d.ts +0 -0
  588. /package/{views → compiled/views}/detail/RegisterItem/RelatedItems.js.map +0 -0
  589. /package/{views → compiled/views}/detail/RegisterItem/SupersedingItemMenu.d.ts +0 -0
  590. /package/{views → compiled/views}/detail/RegisterItem/SupersedingItemMenu.js.map +0 -0
  591. /package/{views → compiled/views}/detail/RegisterItem/index.d.ts +0 -0
  592. /package/{views → compiled/views}/detail/RegisterItem/index.js.map +0 -0
  593. /package/{views → compiled/views}/detail/RegisterItemClass.d.ts +0 -0
  594. /package/{views → compiled/views}/detail/RegisterItemClass.js.map +0 -0
  595. /package/{views → compiled/views}/detail/RegisterMeta/RegisterMetaForm.d.ts +0 -0
  596. /package/{views → compiled/views}/detail/RegisterMeta/RegisterMetaForm.js.map +0 -0
  597. /package/{views → compiled/views}/detail/RegisterMeta/index.d.ts +0 -0
  598. /package/{views → compiled/views}/detail/RegisterMeta/index.js.map +0 -0
  599. /package/{views → compiled/views}/detail/index.d.ts +0 -0
  600. /package/{views → compiled/views}/detail/index.js.map +0 -0
  601. /package/{views → compiled/views}/diffing/InlineDiff.d.ts +0 -0
  602. /package/{views → compiled/views}/diffing/InlineDiff.js.map +0 -0
  603. /package/{views → compiled/views}/diffing/StructuredDiff.d.ts +0 -0
  604. /package/{views → compiled/views}/diffing/StructuredDiff.js.map +0 -0
  605. /package/{views → compiled/views}/hooks/useCustomView.d.ts +0 -0
  606. /package/{views → compiled/views}/hooks/useCustomView.js.map +0 -0
  607. /package/{views → compiled/views}/hooks/useItemClassConfig.d.ts +0 -0
  608. /package/{views → compiled/views}/hooks/useItemClassConfig.js.map +0 -0
  609. /package/{views → compiled/views}/hooks/useItemRef.d.ts +0 -0
  610. /package/{views → compiled/views}/hooks/useItemRef.js.map +0 -0
  611. /package/{views → compiled/views}/hooks/useLatestAcceptedProposal.d.ts +0 -0
  612. /package/{views → compiled/views}/hooks/useLatestAcceptedProposal.js.map +0 -0
  613. /package/{views → compiled/views}/hooks/useRegisterVersion.d.ts +0 -0
  614. /package/{views → compiled/views}/hooks/useRegisterVersion.js.map +0 -0
  615. /package/{views → compiled/views}/hooks/useSingleRegisterItemData.d.ts +0 -0
  616. /package/{views → compiled/views}/hooks/useSingleRegisterItemData.js.map +0 -0
  617. /package/{views → compiled/views}/hooks/useStakeholder.d.ts +0 -0
  618. /package/{views → compiled/views}/hooks/useStakeholder.js.map +0 -0
  619. /package/{views → compiled/views}/index.d.ts +0 -0
  620. /package/{views → compiled/views}/index.js.map +0 -0
  621. /package/{views → compiled/views}/itemPathUtils.d.ts +0 -0
  622. /package/{views → compiled/views}/itemPathUtils.js.map +0 -0
  623. /package/{views → compiled/views}/itemQueryUtils.d.ts +0 -0
  624. /package/{views → compiled/views}/itemQueryUtils.js.map +0 -0
  625. /package/{views → compiled/views}/protocolRegistry.d.ts +0 -0
  626. /package/{views → compiled/views}/protocolRegistry.js.map +0 -0
  627. /package/{views → compiled/views}/sidebar/Browse/index.d.ts +0 -0
  628. /package/{views → compiled/views}/sidebar/Browse/index.js.map +0 -0
  629. /package/{views → compiled/views}/sidebar/ExportImport/ExportOptions.d.ts +0 -0
  630. /package/{views → compiled/views}/sidebar/ExportImport/ExportOptions.js.map +0 -0
  631. /package/{views → compiled/views}/sidebar/ExportImport/ImportOptions.d.ts +0 -0
  632. /package/{views → compiled/views}/sidebar/ExportImport/ImportOptions.js.map +0 -0
  633. /package/{views → compiled/views}/sidebar/ExportImport/index.d.ts +0 -0
  634. /package/{views → compiled/views}/sidebar/ExportImport/index.js.map +0 -0
  635. /package/{views → compiled/views}/sidebar/ListItem.d.ts +0 -0
  636. /package/{views → compiled/views}/sidebar/ListItem.js.map +0 -0
  637. /package/{views → compiled/views}/sidebar/Registration/index.d.ts +0 -0
  638. /package/{views → compiled/views}/sidebar/Registration/index.js.map +0 -0
  639. /package/{views → compiled/views}/sidebar/Search/index.d.ts +0 -0
  640. /package/{views → compiled/views}/sidebar/index.d.ts +0 -0
  641. /package/{views → compiled/views}/sidebar/index.js.map +0 -0
  642. /package/{views → compiled/views}/util.d.ts +0 -0
  643. /package/{views → compiled/views}/util.js.map +0 -0
  644. /package/{proposals/actionableGroups → dependencies-local/extension-kit/i18n}/types.js +0 -0
  645. /package/{types/util.js → dependencies-local/extension-kit/types/binary-invocation.js} +0 -0
  646. /package/{types/views.js → dependencies-local/extension-kit/types/buffers.js} +0 -0
  647. /package/{common.js → dist/common.js} +0 -0
  648. /package/{index.js → dist/index.js} +0 -0
  649. /package/{item-classes → dist/item-classes}/Tree.js +0 -0
  650. /package/{item-classes → dist/item-classes}/treeNodes.js +0 -0
  651. /package/{migrations → dist/migrations}/initial.js +0 -0
  652. /package/{proposals → dist/proposals}/ChangeRequestContext.js +0 -0
  653. /package/{proposals → dist/proposals}/HistoryDrawer.js +0 -0
  654. /package/{proposals → dist/proposals}/ListItem.js +0 -0
  655. /package/{proposals → dist/proposals}/MetaProperties.js +0 -0
  656. /package/{proposals → dist/proposals}/NewProposalMenu.js +0 -0
  657. /package/{proposals → dist/proposals}/ProposalBrowser.js +0 -0
  658. /package/{proposals → dist/proposals}/ProposalDetail.js +0 -0
  659. /package/{proposals → dist/proposals}/ProposalItem.js +0 -0
  660. /package/{proposals → dist/proposals}/ProposalSummary.js +0 -0
  661. /package/{proposals → dist/proposals}/ProposalTab.js +0 -0
  662. /package/{proposals → dist/proposals}/ProposalType.js +0 -0
  663. /package/{proposals → dist/proposals}/ProposalWorkspace.js +0 -0
  664. /package/{proposals → dist/proposals}/Search.js +0 -0
  665. /package/{proposals → dist/proposals}/TransitionHistory.js +0 -0
  666. /package/{proposals → dist/proposals}/TransitionOptions.js +0 -0
  667. /package/{proposals → dist/proposals}/actionableGroups/Tree.js +0 -0
  668. /package/{proposals → dist/proposals}/actionableGroups/queries.js +0 -0
  669. /package/{proposals → dist/proposals}/actionableGroups/treeNodes.js +0 -0
  670. /package/{proposals → dist/proposals}/index.js +0 -0
  671. /package/{proposals → dist/proposals}/objectChangeset.js +0 -0
  672. /package/{proposals → dist/proposals}/queries.js +0 -0
  673. /package/{proposals → dist/proposals}/types.js +0 -0
  674. /package/{types → dist/types}/index.js +0 -0
  675. /package/{types → dist/types}/item.js +0 -0
  676. /package/{types → dist/types}/register.js +0 -0
  677. /package/{types → dist/types}/registry.js +0 -0
  678. /package/{types → dist/types}/stakeholder.js +0 -0
  679. /package/{views → dist/views}/AnnotatedChange.js +0 -0
  680. /package/{views → dist/views}/BrowserCtx.js +0 -0
  681. /package/{views → dist/views}/FilterCriteria/CRITERIA_CONFIGURATION.js +0 -0
  682. /package/{views → dist/views}/FilterCriteria/criteriaGroupToQueryExpression.js +0 -0
  683. /package/{views → dist/views}/FilterCriteria/criteriaGroupToSummary.js +0 -0
  684. /package/{views → dist/views}/FilterCriteria/criteriaToNodes.js +0 -0
  685. /package/{views → dist/views}/FilterCriteria/index.js +0 -0
  686. /package/{views → dist/views}/FilterCriteria/models.js +0 -0
  687. /package/{views → dist/views}/FilterCriteria/mutateGroup.js +0 -0
  688. /package/{views → dist/views}/GenericRelatedItemView.js +0 -0
  689. /package/{views → dist/views}/ItemDetailsDrawer.js +0 -0
  690. /package/{views → dist/views}/ItemSearchDrawer.js +0 -0
  691. /package/{views → dist/views}/Party.js +0 -0
  692. /package/{views → dist/views}/RegisterStakeholder.js +0 -0
  693. /package/{views → dist/views}/RegisterVersion.js +0 -0
  694. /package/{views → dist/views}/SearchQuery.js +0 -0
  695. /package/{views → dist/views}/StatefulTree.js +0 -0
  696. /package/{views → dist/views}/detail/AllItems.js +0 -0
  697. /package/{views → dist/views}/detail/ChangeRequest/index.js +0 -0
  698. /package/{views → dist/views}/detail/CustomView/index.js +0 -0
  699. /package/{views → dist/views}/detail/ProposalWork.js +0 -0
  700. /package/{views → dist/views}/detail/RegisterHome/ActiveProposalDetails.js +0 -0
  701. /package/{views → dist/views}/detail/RegisterHome/Block.js +0 -0
  702. /package/{views → dist/views}/detail/RegisterHome/MetaSummary.js +0 -0
  703. /package/{views → dist/views}/detail/RegisterHome/Proposal.js +0 -0
  704. /package/{views → dist/views}/detail/RegisterHome/index.js +0 -0
  705. /package/{views → dist/views}/detail/RegisterHome2/index.js +0 -0
  706. /package/{views → dist/views}/detail/RegisterItem/RelatedItems.js +0 -0
  707. /package/{views → dist/views}/detail/RegisterItem/SupersedingItemMenu.js +0 -0
  708. /package/{views → dist/views}/detail/RegisterItem/index.js +0 -0
  709. /package/{views → dist/views}/detail/RegisterItemClass.js +0 -0
  710. /package/{views → dist/views}/detail/RegisterMeta/RegisterMetaForm.js +0 -0
  711. /package/{views → dist/views}/detail/RegisterMeta/index.js +0 -0
  712. /package/{views → dist/views}/detail/index.js +0 -0
  713. /package/{views → dist/views}/diffing/InlineDiff.js +0 -0
  714. /package/{views → dist/views}/diffing/StructuredDiff.js +0 -0
  715. /package/{views → dist/views}/hooks/useCustomView.js +0 -0
  716. /package/{views → dist/views}/hooks/useItemClassConfig.js +0 -0
  717. /package/{views → dist/views}/hooks/useItemRef.js +0 -0
  718. /package/{views → dist/views}/hooks/useLatestAcceptedProposal.js +0 -0
  719. /package/{views → dist/views}/hooks/useRegisterVersion.js +0 -0
  720. /package/{views → dist/views}/hooks/useSingleRegisterItemData.js +0 -0
  721. /package/{views → dist/views}/hooks/useStakeholder.js +0 -0
  722. /package/{views → dist/views}/index.js +0 -0
  723. /package/{views → dist/views}/itemPathUtils.js +0 -0
  724. /package/{views → dist/views}/itemQueryUtils.js +0 -0
  725. /package/{views → dist/views}/protocolRegistry.js +0 -0
  726. /package/{views → dist/views}/sidebar/Browse/index.js +0 -0
  727. /package/{views → dist/views}/sidebar/ExportImport/ExportOptions.js +0 -0
  728. /package/{views → dist/views}/sidebar/ExportImport/ImportOptions.js +0 -0
  729. /package/{views → dist/views}/sidebar/ExportImport/index.js +0 -0
  730. /package/{views → dist/views}/sidebar/ListItem.js +0 -0
  731. /package/{views → dist/views}/sidebar/Registration/index.js +0 -0
  732. /package/{views → dist/views}/sidebar/index.js +0 -0
  733. /package/{views → dist/views}/util.js +0 -0
@@ -0,0 +1,432 @@
1
+ /** @jsx jsx */
2
+ /** @jsxFrag React.Fragment */
3
+ import React, { useState, useContext, useEffect, useMemo, useCallback } from 'react';
4
+ import { jsx, css } from '@emotion/react';
5
+ import { Button, RadioGroup, Radio, FormGroup, TextArea, Colors } from '@blueprintjs/core';
6
+ import { Tooltip2 as Tooltip } from '@blueprintjs/popover2';
7
+ import { DatasetContext } from '@riboseinc/paneron-extension-kit/context';
8
+ import { BrowserCtx } from '../views/BrowserCtx';
9
+ import { isOwner, isControlBody, isManager } from '../types/stakeholder';
10
+ import { itemPathInCR, crIDToCRPath } from '../views/itemPathUtils';
11
+ import { proposalsToObjectChangeset } from './objectChangeset';
12
+ import * as CR from './types';
13
+ function reducer(prevState, action) {
14
+ switch (action.type) {
15
+ case 'unset-next-state':
16
+ return {
17
+ ...prevState,
18
+ chosenNextState: undefined,
19
+ };
20
+ case 'choose-next-state':
21
+ return {
22
+ ...prevState,
23
+ chosenNextState: action.payload.state,
24
+ };
25
+ case 'update-next-state-input':
26
+ return {
27
+ ...prevState,
28
+ stateInput: action.payload,
29
+ };
30
+ default:
31
+ throw new Error("Unexpected state");
32
+ }
33
+ }
34
+ //export const TransitionOptions: C extends CR.Base ? C["state"] extends keyof CR.Transitions ? React.FC<{ cr: CR.Base }> : never : never = function ({ cr }) {
35
+ function TransitionOptions({ cr, transitions, stakeholder, className }) {
36
+ const { subregisters, alterApprovedCR } = useContext(BrowserCtx);
37
+ const { getObjectData, getMapReducedData, updateObjects, performOperation, operationKey, usePersistentDatasetStateReducer, } = useContext(DatasetContext);
38
+ const isBusy = operationKey !== undefined;
39
+ const initialState = useMemo((() => ({
40
+ // Pre-select next state to first available transition
41
+ chosenNextState: transitions.length > 0
42
+ ? transitions[0][0]
43
+ : undefined,
44
+ stateInput: {},
45
+ })), [transitions]);
46
+ // Set to a number of milliseconds to wait for, e.g. after selecting a new action,
47
+ // to avoid accidental transitions.
48
+ const [waitingForCooldown, setWaitingForCooldown] = useState(0);
49
+ const [state, dispatch, stateRecalled] = usePersistentDatasetStateReducer(`${cr.id}-${cr.state}`, undefined, undefined, reducer, initialState, null);
50
+ const selectedTransitionCfg = useMemo((() => {
51
+ var _a, _b;
52
+ return (_b = (stateRecalled && state.chosenNextState
53
+ ? (_a = transitions.find(([t,]) => t === state.chosenNextState)) === null || _a === void 0 ? void 0 : _a[1]
54
+ : undefined)) !== null && _b !== void 0 ? _b : undefined;
55
+ }), [stateRecalled, state.chosenNextState, transitions]);
56
+ useEffect((() => setWaitingForCooldown(2000)), [state.chosenNextState]);
57
+ useEffect(() => {
58
+ if (stateRecalled) {
59
+ // Don’t pre-select the next state checkbox.
60
+ // Persisting the state is still useful, since this remembers state input
61
+ // (such as register manager notes)
62
+ dispatch({ type: 'unset-next-state' });
63
+ }
64
+ }, [stateRecalled]);
65
+ //useEffect(() => {
66
+ // if (stateRecalled && state.chosenNextState) {
67
+ // if (!selectedTransitionCfg) {
68
+ // dispatch({ type: 'unset-next-state' });
69
+ // }
70
+ // }
71
+ //}, [
72
+ // stateRecalled,
73
+ // state.chosenNextState,
74
+ // selectedTransitionCfg,
75
+ //]);
76
+ const [validatedStateInput, stateInputValidationErrors] = useMemo(() => {
77
+ var _a;
78
+ if (cr && selectedTransitionCfg) {
79
+ try {
80
+ selectedTransitionCfg.func(cr, state.stateInput);
81
+ }
82
+ catch (e) {
83
+ return [undefined, (_a = e.message) !== null && _a !== void 0 ? _a : `${e}`];
84
+ }
85
+ return [state.stateInput, undefined];
86
+ }
87
+ else {
88
+ return [undefined, "no CR or no transition selected"];
89
+ }
90
+ }, [JSON.stringify(cr), selectedTransitionCfg, state.stateInput]);
91
+ const handleSetStateInput = useCallback((payload) => {
92
+ dispatch({
93
+ type: 'update-next-state-input',
94
+ payload,
95
+ });
96
+ setWaitingForCooldown(5000);
97
+ }, [dispatch, setWaitingForCooldown]);
98
+ useEffect(() => {
99
+ if (waitingForCooldown) {
100
+ const timeout = setTimeout((() => setWaitingForCooldown(v => v > 0 ? (v - 100) : v)), 100);
101
+ return function cleanUp() { clearTimeout(timeout); };
102
+ }
103
+ return function noop() { };
104
+ }, [waitingForCooldown, setWaitingForCooldown]);
105
+ const getItemChangesetAsApproved = useCallback(async function (cr) {
106
+ const origItemData = (await getObjectData({
107
+ objectPaths: [
108
+ ...Object.entries(cr.items).
109
+ filter(([, prop]) => prop.type !== 'addition').
110
+ map(([itemPath,]) => itemPath),
111
+ ...Object.values(cr.items).
112
+ filter(prop => prop.type === 'amendment' && prop.amendmentType === 'supersession').
113
+ flatMap(prop => prop.supersedingItemIDs),
114
+ ],
115
+ })).data;
116
+ //console.debug("Got orig item data", origItemData);
117
+ const newItemData = (await getObjectData({
118
+ objectPaths: Object.entries(cr.items).
119
+ filter(([, prop]) => prop.type === 'clarification' || prop.type === 'addition').
120
+ map(([itemPath,]) => itemPathInCR(itemPath, cr.id)),
121
+ })).data;
122
+ //console.debug("Got new item data", newItemData);
123
+ const maybeAlteredCR = alterApprovedCR
124
+ ? await alterApprovedCR(cr.id, cr.items, origItemData, newItemData, { getMapReducedData })
125
+ : { proposals: cr.items, origItemData, newItemData };
126
+ //console.debug("Got altered item data", newItemData);
127
+ return await proposalsToObjectChangeset(cr.id, subregisters !== undefined, maybeAlteredCR.proposals, maybeAlteredCR.origItemData, maybeAlteredCR.newItemData);
128
+ }, [cr.id, JSON.stringify(cr.items), subregisters === undefined, getObjectData, getMapReducedData, alterApprovedCR]);
129
+ const handleTransition = useCallback(async function (transitionCfg, stateInput) {
130
+ var _a;
131
+ if (transitionCfg && updateObjects && stakeholder && transitionCfg.canBeTransitionedBy(stakeholder, cr)) {
132
+ const newCR = {
133
+ ...transitionCfg.func(cr, stateInput),
134
+ state: transitionCfg.targetState,
135
+ };
136
+ newCR.pastTransitions = [
137
+ ...((_a = newCR.pastTransitions) !== null && _a !== void 0 ? _a : []),
138
+ {
139
+ label: transitionCfg.title,
140
+ timestamp: new Date(),
141
+ fromState: cr.state,
142
+ toState: newCR.state,
143
+ stakeholder,
144
+ input: stateInput,
145
+ },
146
+ ];
147
+ //console.debug("Transitioning CR", JSON.stringify(cr), JSON.stringify(newCR));
148
+ const changeset = {
149
+ [crIDToCRPath(cr.id)]: {
150
+ oldValue: cr,
151
+ newValue: newCR,
152
+ },
153
+ };
154
+ if (CR.isAccepted(newCR) || CR.isAcceptedOnAppeal(newCR)) {
155
+ Object.assign(changeset, await getItemChangesetAsApproved(newCR));
156
+ }
157
+ await updateObjects({
158
+ commitMessage: `${transitionCfg.title} CR`,
159
+ objectChangeset: changeset,
160
+ });
161
+ }
162
+ else {
163
+ throw new Error("Either transition is not specified or dataset is read-only");
164
+ }
165
+ }, [updateObjects, JSON.stringify(stakeholder), JSON.stringify(cr)]);
166
+ const canTransition = (selectedTransitionCfg !== undefined
167
+ && !isBusy
168
+ && validatedStateInput !== undefined
169
+ && !waitingForCooldown);
170
+ return (jsx("div", { css: css `display: flex; flex-flow: column nowrap;`, className: className },
171
+ transitions.length > 0
172
+ ? jsx(RadioGroup, { selectedValue: state.chosenNextState, onChange: (evt) => CR.isState(evt.currentTarget.value)
173
+ ? dispatch({
174
+ type: 'choose-next-state',
175
+ payload: { state: evt.currentTarget.value },
176
+ })
177
+ : void 0 }, transitions.map(([state, cfg]) => jsx(Radio, { key: state, label: cfg.title, value: state, disabled: isBusy, large: true })))
178
+ : null,
179
+ (selectedTransitionCfg === null || selectedTransitionCfg === void 0 ? void 0 : selectedTransitionCfg.Widget)
180
+ ? jsx(Tooltip, { isOpen: stateInputValidationErrors !== undefined, placement: 'bottom', targetTagName: 'div', intent: 'warning', css: css `flex: 1;`, content: jsx(React.Fragment, null, stateInputValidationErrors) },
181
+ jsx(selectedTransitionCfg.Widget, { value: Object.keys(state.stateInput).length > 0
182
+ ? state.stateInput
183
+ : cr, onChange: !isBusy
184
+ ? handleSetStateInput
185
+ : undefined }))
186
+ : null,
187
+ selectedTransitionCfg
188
+ ? jsx(Button, { disabled: !canTransition, intent: canTransition ? 'primary' : undefined, onClick: () => validatedStateInput
189
+ ? performOperation('transitioning CR state', handleTransition)(selectedTransitionCfg, validatedStateInput)
190
+ : void 0 }, waitingForCooldown
191
+ ? jsx(React.Fragment, null,
192
+ "Almost ready",
193
+ Array(Math.floor(3 - (3 / 5000 * waitingForCooldown) + 1)).fill(undefined).map(() => jsx(React.Fragment, null, ".")))
194
+ : selectedTransitionCfg.title)
195
+ : null));
196
+ }
197
+ ;
198
+ /**
199
+ * Returns a list of transitions
200
+ * that can be performed on given CR by given stakeholder.
201
+ */
202
+ export function getTransitions(cr, stakeholder) {
203
+ const possibleTransitions = TRANSITIONS[cr.state];
204
+ if (possibleTransitions) {
205
+ return (Object.entries(possibleTransitions).
206
+ filter(([, t]) => t.canBeTransitionedBy(stakeholder, cr)));
207
+ }
208
+ else {
209
+ return [];
210
+ }
211
+ }
212
+ /**
213
+ * Returns true if given CR can be transitioned
214
+ * *and* given stakeholder is eligible to transition it.
215
+ */
216
+ export function canBeTransitionedBy(stakeholder, cr) {
217
+ return getTransitions(cr, stakeholder).length > 0;
218
+ }
219
+ /**
220
+ * Returns True if there is no possible transition for given state.
221
+ */
222
+ export function isFinalState(state) {
223
+ var _a;
224
+ return (Object.keys((_a = TRANSITIONS[state]) !== null && _a !== void 0 ? _a : {})).length < 1;
225
+ }
226
+ const applyRegisterManagerDecision = function applyRegisterManagerDecision(cr, { registerManagerNotes }) {
227
+ return {
228
+ ...cr,
229
+ registerManagerNotes: registerManagerNotes !== null && registerManagerNotes !== void 0 ? registerManagerNotes : '',
230
+ };
231
+ };
232
+ const applyControlBodyDecision = function applyControlBodyDecision(cr, { controlBodyDecisionEvent }) {
233
+ //if (!controlBodyNotes?.trim()) {
234
+ // throw new Error("Control body decision is required.");
235
+ //}
236
+ return {
237
+ ...cr,
238
+ //controlBodyNotes,
239
+ controlBodyDecisionEvent,
240
+ };
241
+ };
242
+ const applyAppeal = function applyAppeal(cr, { appealReason }) {
243
+ if (!(appealReason === null || appealReason === void 0 ? void 0 : appealReason.trim())) {
244
+ throw new Error("Appeal reason is required.");
245
+ }
246
+ return {
247
+ ...cr,
248
+ appealReason,
249
+ timeDisposed: undefined,
250
+ };
251
+ };
252
+ const applyRegisterOwnerDecision = function applyRegisterOwnerDecision(cr, { registerOwnerNotes }) {
253
+ if (!(registerOwnerNotes === null || registerOwnerNotes === void 0 ? void 0 : registerOwnerNotes.trim())) {
254
+ throw new Error("Register owner note is required.");
255
+ }
256
+ return {
257
+ ...cr,
258
+ registerOwnerNotes,
259
+ timeDisposed: new Date(),
260
+ };
261
+ };
262
+ const WITHDRAWAL_TRANSITION = {
263
+ title: "Withdraw",
264
+ targetState: CR.State.WITHDRAWN,
265
+ Widget: null,
266
+ canBeTransitionedBy: (stakeholder, cr) => cr.timeProposed && CR.isSubmittedBy(stakeholder, cr),
267
+ func: (cr) => ({
268
+ ...cr,
269
+ timeDisposed: new Date(),
270
+ }),
271
+ };
272
+ const SubmitterInputWidget = function ({ value, onChange }) {
273
+ return (jsx(FormGroup, { label: "Justification:" },
274
+ jsx(TransitionInputTextArea, { required: true, value: value.justification, onChange: (evt) => onChange === null || onChange === void 0 ? void 0 : onChange({ justification: evt.currentTarget.value }) })));
275
+ };
276
+ const TransitionInputTextArea = function (props) {
277
+ return jsx(TextArea, { fill: true, css: css `resize: vertical;`, readOnly: !props.onChange, ...props });
278
+ };
279
+ const PROPOSAL_TRANSITION = {
280
+ title: "Propose",
281
+ targetState: CR.State.PROPOSED,
282
+ canBeTransitionedBy: ((stakeholder, cr) => CR.isSubmittedBy(stakeholder, cr) && Object.keys(cr.items).length > 0),
283
+ Widget: SubmitterInputWidget,
284
+ func: (cr, submitterInput) => {
285
+ var _a;
286
+ if (!((_a = submitterInput === null || submitterInput === void 0 ? void 0 : submitterInput.justification) === null || _a === void 0 ? void 0 : _a.trim())) {
287
+ throw new Error("Justification is required.");
288
+ }
289
+ return {
290
+ ...cr,
291
+ ...submitterInput,
292
+ timeProposed: new Date(),
293
+ };
294
+ },
295
+ };
296
+ const RegisterManagerNotesWidget = function ({ value, onChange }) {
297
+ return (jsx(FormGroup, { label: "Register manager notes:" },
298
+ jsx(TransitionInputTextArea, { value: value.registerManagerNotes, required: true, onChange: evt => onChange === null || onChange === void 0 ? void 0 : onChange({ registerManagerNotes: evt.currentTarget.value }) })));
299
+ };
300
+ const ControlBodyDecisionWidget = function ({ value, onChange }) {
301
+ return (jsx(React.Fragment, null,
302
+ jsx(FormGroup, { label: "Control Body decision event:" },
303
+ jsx(TransitionInputTextArea, { value: value.controlBodyDecisionEvent, required: true, onChange: evt => onChange === null || onChange === void 0 ? void 0 : onChange({
304
+ //controlBodyNotes: value.controlBodyNotes,
305
+ controlBodyDecisionEvent: evt.currentTarget.value,
306
+ }) }))));
307
+ };
308
+ const AppealRequestWidget = function ({ value, onChange }) {
309
+ return (jsx(FormGroup, { label: "Appeal reasoning:" },
310
+ jsx(TransitionInputTextArea, { value: value.appealReason, required: true, onChange: evt => onChange === null || onChange === void 0 ? void 0 : onChange({ appealReason: evt.currentTarget.value }) })));
311
+ };
312
+ const RegisterOwnerNotesWidget = function ({ value, onChange }) {
313
+ return (jsx(FormGroup, { label: "Register owner notes:" },
314
+ jsx(TransitionInputTextArea, { value: value.registerOwnerNotes, required: true, onChange: evt => onChange === null || onChange === void 0 ? void 0 : onChange({ registerOwnerNotes: evt.currentTarget.value }) })));
315
+ };
316
+ export const STATE_INTENT = {
317
+ [CR.State.PROPOSED]: 'primary',
318
+ [CR.State.RETURNED_FOR_CLARIFICATION]: 'primary',
319
+ [CR.State.SUBMITTED_FOR_CONTROL_BODY_REVIEW]: 'primary',
320
+ [CR.State.APPEALED]: 'warning',
321
+ };
322
+ export const STATE_COLOR = {
323
+ [CR.State.PROPOSED]: Colors.BLUE2,
324
+ [CR.State.RETURNED_FOR_CLARIFICATION]: Colors.ORANGE3,
325
+ [CR.State.SUBMITTED_FOR_CONTROL_BODY_REVIEW]: Colors.BLUE2,
326
+ [CR.State.APPEALED]: Colors.ORANGE3,
327
+ [CR.State.REJECTED]: Colors.RED2,
328
+ [CR.State.REJECTION_UPHELD_ON_APPEAL]: Colors.RED2,
329
+ [CR.State.ACCEPTED]: Colors.GREEN2,
330
+ [CR.State.ACCEPTED_ON_APPEAL]: Colors.GREEN2,
331
+ };
332
+ /** Associates transition implementation with source/target states. */
333
+ const TRANSITIONS = {
334
+ [CR.State.DRAFT]: {
335
+ [CR.State.WITHDRAWN]: WITHDRAWAL_TRANSITION,
336
+ [CR.State.PROPOSED]: PROPOSAL_TRANSITION,
337
+ },
338
+ [CR.State.PROPOSED]: {
339
+ [CR.State.WITHDRAWN]: WITHDRAWAL_TRANSITION,
340
+ [CR.State.SUBMITTED_FOR_CONTROL_BODY_REVIEW]: {
341
+ title: "Submit for control body review",
342
+ targetState: CR.State.SUBMITTED_FOR_CONTROL_BODY_REVIEW,
343
+ canBeTransitionedBy: (s) => isOwner(s) || isManager(s),
344
+ Widget: RegisterManagerNotesWidget,
345
+ func: applyRegisterManagerDecision,
346
+ },
347
+ [CR.State.RETURNED_FOR_CLARIFICATION]: {
348
+ title: "Return for clarification",
349
+ targetState: CR.State.RETURNED_FOR_CLARIFICATION,
350
+ canBeTransitionedBy: (s) => isOwner(s) || isManager(s),
351
+ Widget: RegisterManagerNotesWidget,
352
+ func: function applyRegisterManagerReturnDecision(cr, payload) {
353
+ var _a;
354
+ if (((_a = payload.registerManagerNotes) !== null && _a !== void 0 ? _a : '').trim() === '') {
355
+ throw new Error("Register manager notes are required if returning for clarification");
356
+ }
357
+ return applyRegisterManagerDecision(cr, payload);
358
+ },
359
+ },
360
+ },
361
+ [CR.State.SUBMITTED_FOR_CONTROL_BODY_REVIEW]: {
362
+ [CR.State.WITHDRAWN]: WITHDRAWAL_TRANSITION,
363
+ [CR.State.RETURNED_FOR_CLARIFICATION]: {
364
+ title: "Return for clarification",
365
+ targetState: CR.State.RETURNED_FOR_CLARIFICATION,
366
+ canBeTransitionedBy: (s) => isOwner(s) || isControlBody(s),
367
+ Widget: ControlBodyDecisionWidget,
368
+ func: applyControlBodyDecision,
369
+ },
370
+ [CR.State.ACCEPTED]: {
371
+ title: "Accept",
372
+ targetState: CR.State.ACCEPTED,
373
+ canBeTransitionedBy: (s) => isOwner(s) || isControlBody(s),
374
+ Widget: ControlBodyDecisionWidget,
375
+ func: (cr, controlBodyInput) => ({
376
+ ...applyControlBodyDecision(cr, controlBodyInput),
377
+ timeDisposed: new Date(),
378
+ }),
379
+ },
380
+ [CR.State.REJECTED]: {
381
+ title: "Reject",
382
+ targetState: CR.State.REJECTED,
383
+ canBeTransitionedBy: (s) => isOwner(s) || isControlBody(s),
384
+ Widget: ControlBodyDecisionWidget,
385
+ func: (cr, controlBodyInput) => ({
386
+ ...applyControlBodyDecision(cr, controlBodyInput),
387
+ timeDisposed: new Date(),
388
+ }),
389
+ },
390
+ },
391
+ [CR.State.RETURNED_FOR_CLARIFICATION]: {
392
+ [CR.State.PROPOSED]: PROPOSAL_TRANSITION,
393
+ [CR.State.WITHDRAWN]: WITHDRAWAL_TRANSITION,
394
+ },
395
+ [CR.State.REJECTED]: {
396
+ [CR.State.APPEALED]: {
397
+ title: "Appeal",
398
+ targetState: CR.State.APPEALED,
399
+ canBeTransitionedBy: CR.isSubmittedBy,
400
+ Widget: AppealRequestWidget,
401
+ func: applyAppeal,
402
+ },
403
+ },
404
+ [CR.State.APPEALED]: {
405
+ [CR.State.APPEAL_WITHDRAWN]: {
406
+ title: "Withdraw appeal",
407
+ targetState: CR.State.APPEAL_WITHDRAWN,
408
+ canBeTransitionedBy: CR.isSubmittedBy,
409
+ Widget: null,
410
+ func: (cr) => ({
411
+ ...cr,
412
+ timeDisposed: new Date(),
413
+ }),
414
+ },
415
+ [CR.State.ACCEPTED_ON_APPEAL]: {
416
+ title: "Accept on appeal",
417
+ targetState: CR.State.ACCEPTED_ON_APPEAL,
418
+ canBeTransitionedBy: isOwner,
419
+ Widget: RegisterOwnerNotesWidget,
420
+ func: applyRegisterOwnerDecision,
421
+ },
422
+ [CR.State.REJECTION_UPHELD_ON_APPEAL]: {
423
+ title: "Uphold rejection",
424
+ targetState: CR.State.REJECTION_UPHELD_ON_APPEAL,
425
+ canBeTransitionedBy: isOwner,
426
+ Widget: RegisterOwnerNotesWidget,
427
+ func: applyRegisterOwnerDecision,
428
+ },
429
+ },
430
+ };
431
+ export default TransitionOptions;
432
+ //# sourceMappingURL=TransitionOptions.js.map
@@ -0,0 +1,170 @@
1
+ /** @jsx jsx */
2
+ /** @jsxFrag React.Fragment */
3
+ import { useContext, useCallback, useMemo } from 'react';
4
+ import update from 'immutability-helper';
5
+ import { jsx, css } from '@emotion/react';
6
+ import { Colors, Tree } from '@blueprintjs/core';
7
+ import { DatasetContext } from '@riboseinc/paneron-extension-kit';
8
+ import { TabbedWorkspaceContext } from '@riboseinc/paneron-extension-kit/widgets/TabbedWorkspace/context';
9
+ import { ChangeRequestContext } from '../ChangeRequestContext';
10
+ import { BrowserCtx } from '../../views/BrowserCtx';
11
+ import { getActionableProposalGroupsForRoles } from './queries';
12
+ import { Protocols } from '../../views/protocolRegistry';
13
+ import { getMapReduceChainsForActionableProposalGroups, getActionableProposalGroupsAsTreeNodes, } from './treeNodes';
14
+ const initialState = {
15
+ //selectedFolderID: null,
16
+ selectedItemID: null,
17
+ expandedFolderIDs: [],
18
+ };
19
+ const ActionableCRTree = function ({ className }) {
20
+ var _a;
21
+ const { changeRequest: activeCR } = useContext(ChangeRequestContext);
22
+ const { setActiveChangeRequestID, stakeholder } = useContext(BrowserCtx);
23
+ const { usePersistentDatasetStateReducer, useMapReducedData } = useContext(DatasetContext);
24
+ const { spawnTab } = useContext(TabbedWorkspaceContext);
25
+ const [state, dispatch,] = usePersistentDatasetStateReducer('actionable-proposals', undefined, undefined, (prevState, action) => {
26
+ switch (action.type) {
27
+ case 'select-folder':
28
+ if (prevState.selectedItemID !== action.payload.folderID) {
29
+ return {
30
+ ...prevState,
31
+ selectedItemID: action.payload.folderID,
32
+ };
33
+ }
34
+ else {
35
+ return prevState;
36
+ }
37
+ case 'enter-folder':
38
+ if (!prevState.expandedFolderIDs.includes(action.payload.folderID)) {
39
+ return {
40
+ ...prevState,
41
+ selectedItemID: action.payload.folderID,
42
+ expandedFolderIDs: update(prevState.expandedFolderIDs, { $push: [action.payload.folderID] }),
43
+ };
44
+ }
45
+ else {
46
+ return prevState;
47
+ }
48
+ case 'exit-folder':
49
+ const idx = prevState.expandedFolderIDs.indexOf(action.payload.folderID);
50
+ if (idx >= 0) {
51
+ return {
52
+ ...prevState,
53
+ selectedItemID: action.payload.folderID,
54
+ expandedFolderIDs: update(prevState.expandedFolderIDs, { $splice: [[idx, 1]] }),
55
+ };
56
+ }
57
+ else {
58
+ return prevState;
59
+ }
60
+ case 'select-item':
61
+ if (prevState.selectedItemID !== action.payload.itemID) {
62
+ return {
63
+ ...prevState,
64
+ selectedItemID: action.payload.itemID,
65
+ };
66
+ }
67
+ else {
68
+ return prevState;
69
+ }
70
+ default:
71
+ throw new Error("Unexpected browse state");
72
+ }
73
+ }, initialState, null);
74
+ const groups = getActionableProposalGroupsForRoles((_a = stakeholder === null || stakeholder === void 0 ? void 0 : stakeholder.roles) !== null && _a !== void 0 ? _a : []);
75
+ const chains = stakeholder
76
+ ? getMapReduceChainsForActionableProposalGroups(groups, stakeholder)
77
+ : {};
78
+ const actionableProposalsResult = useMapReducedData({ chains });
79
+ const actionableProposals = useMemo((() => Object.entries(actionableProposalsResult.value).
80
+ map(([chainID, chainResult]) => ({
81
+ groupLabel: chainID,
82
+ proposals: (Array.isArray(chainResult)
83
+ // TODO: Validate results
84
+ ? chainResult
85
+ : undefined) || undefined
86
+ }))), [actionableProposalsResult.value]);
87
+ const nodes = useMemo((() => getActionableProposalGroupsAsTreeNodes(actionableProposals, {
88
+ activeCRID: activeCR === null || activeCR === void 0 ? void 0 : activeCR.id,
89
+ expandedGroupLabels: new Set(state.expandedFolderIDs),
90
+ onActivateCR: setActiveChangeRequestID,
91
+ selectedGroup: state.selectedItemID
92
+ ? actionableProposals.
93
+ find(({ groupLabel }) => groupLabel === state.selectedItemID)
94
+ ? state.selectedItemID
95
+ : undefined
96
+ : undefined,
97
+ selectedCRID: state.selectedItemID
98
+ ? actionableProposals.
99
+ flatMap(({ proposals }) => proposals !== null && proposals !== void 0 ? proposals : []).
100
+ find(p => p.id === state.selectedItemID)
101
+ ? state.selectedItemID
102
+ : undefined
103
+ : undefined,
104
+ })), [activeCR === null || activeCR === void 0 ? void 0 : activeCR.id, setActiveChangeRequestID, actionableProposals, state.selectedItemID, state.expandedFolderIDs.join(',')]);
105
+ const activate = useCallback(((proposalID) => {
106
+ if (proposalID !== (activeCR === null || activeCR === void 0 ? void 0 : activeCR.id)) {
107
+ setActiveChangeRequestID === null || setActiveChangeRequestID === void 0 ? void 0 : setActiveChangeRequestID(proposalID);
108
+ }
109
+ // open proposal dashboard regardless
110
+ spawnTab(Protocols.PROPOSAL_WORK, { atIdx: 0 });
111
+ }), [activeCR === null || activeCR === void 0 ? void 0 : activeCR.id, setActiveChangeRequestID, spawnTab]);
112
+ const eventHandlers = useMemo((() => ({
113
+ onNodeClick: (node) => {
114
+ var _a;
115
+ return ((_a = node.nodeData) === null || _a === void 0 ? void 0 : _a.type) === 'group'
116
+ ? dispatch({
117
+ type: 'select-folder',
118
+ payload: { folderID: node.id },
119
+ })
120
+ : dispatch({
121
+ type: 'select-item',
122
+ payload: { itemID: node.id },
123
+ });
124
+ },
125
+ onNodeExpand: (node) => {
126
+ var _a;
127
+ return ((_a = node.nodeData) === null || _a === void 0 ? void 0 : _a.type) === 'group'
128
+ ? dispatch({
129
+ type: 'enter-folder',
130
+ payload: { folderID: node.id },
131
+ })
132
+ : void 0;
133
+ },
134
+ onNodeCollapse: (node) => {
135
+ var _a;
136
+ return ((_a = node.nodeData) === null || _a === void 0 ? void 0 : _a.type) === 'group'
137
+ ? dispatch({
138
+ type: 'exit-folder',
139
+ payload: { folderID: node.id },
140
+ })
141
+ : void 0;
142
+ },
143
+ onNodeDoubleClick: (node) => {
144
+ var _a;
145
+ return ((_a = node.nodeData) === null || _a === void 0 ? void 0 : _a.type) === 'group'
146
+ ? dispatch({
147
+ type: 'enter-folder',
148
+ payload: { folderID: node.id },
149
+ })
150
+ : activate(node.id);
151
+ },
152
+ })), [dispatch, activate]);
153
+ return jsx(Tree, { className: className, contents: nodes, css: css `
154
+ .bp4-tree-node {
155
+ &.tree-node-active-proposal, &.tree-node-proposal-group-with-active-proposal:not(.bp4-tree-node-expanded) {
156
+ > .bp4-tree-node-content {
157
+ background: ${Colors.RED5};
158
+ .bp4-dark & {
159
+ background: ${Colors.RED2};
160
+ }
161
+ }
162
+ &.bp4-tree-node-selected > .bp4-tree-node-content {
163
+ background: ${Colors.RED3};
164
+ }
165
+ }
166
+ }
167
+ `, ...eventHandlers });
168
+ };
169
+ export default ActionableCRTree;
170
+ //# sourceMappingURL=Tree.js.map
@@ -0,0 +1,78 @@
1
+ import { State } from '../types';
2
+ export function getActionableProposalGroupsForRole(role) {
3
+ return CR_QUERIES_FOR_ROLES.filter(([, roles]) => roles.has(role));
4
+ }
5
+ export function getActionableProposalGroupsForRoles(roles) {
6
+ return roles.flatMap(getActionableProposalGroupsForRole);
7
+ }
8
+ const CR_QUERIES_FOR_ROLES = [
9
+ ['My Drafts', new Set(['submitter', 'manager', 'control-body', 'owner']), function submitterProposals(stakeholder) {
10
+ if (stakeholder && stakeholder.gitServerUsername) {
11
+ const stakeholderCondition = `obj.submittingStakeholderGitServerUsername === "${stakeholder.gitServerUsername}"`;
12
+ const query = `(obj.state === "${State.DRAFT}" || obj.state === "${State.RETURNED_FOR_CLARIFICATION}") && (${stakeholderCondition})`;
13
+ return query;
14
+ }
15
+ else {
16
+ return 'false';
17
+ }
18
+ }],
19
+ ['My Rejected', new Set(['submitter', 'manager', 'control-body', 'owner']), function submitterProposals(stakeholder) {
20
+ // Rejections are actionable because they can be appealed by the submitter.
21
+ if (stakeholder && stakeholder.gitServerUsername) {
22
+ const stakeholderCondition = `obj.submittingStakeholderGitServerUsername === "${stakeholder.gitServerUsername}"`;
23
+ const query = `(obj.state === "${State.REJECTED}") && (${stakeholderCondition})`;
24
+ return query;
25
+ }
26
+ else {
27
+ return 'false';
28
+ }
29
+ }],
30
+ ['Everyone’s Drafts or Returned', new Set(['manager', 'control-body', 'owner']), function submitterProposals(stakeholder) {
31
+ if (stakeholder && stakeholder.gitServerUsername) {
32
+ const stakeholderCondition = `obj.submittingStakeholderGitServerUsername !== "${stakeholder.gitServerUsername}"`;
33
+ const query = `(obj.state === "${State.DRAFT}" || obj.state === "${State.RETURNED_FOR_CLARIFICATION}") && (${stakeholderCondition})`;
34
+ return query;
35
+ }
36
+ else {
37
+ return 'false';
38
+ }
39
+ }],
40
+ // ['latest reviewed', new Set(['submitter', 'manager', 'control-body', 'owner']), function submitterProposals(stakeholder) {
41
+ // // TODO: Should filter only rejected perhaps?
42
+ // // Approved/accepted proposals can be shown in another (public) area.
43
+ // if (stakeholder && stakeholder.gitServerUsername) {
44
+ // const stakeholderCondition = stakeholder?.role !== 'submitter'
45
+ // ? 'true'
46
+ // : `obj.submittingStakeholderGitServerUsername === "${stakeholder.gitServerUsername}"`;
47
+ // // Don’t show drafts in the list of pending proposals, unless it’s user’s own drafts.
48
+ // const query = `(obj.state === "${State.ACCEPTED} || obj.state === "${State.REJECTED} || obj.state === "${State.REJECTION_UPHELD_ON_APPEAL}"") && ${stakeholderCondition}`;
49
+ // return query;
50
+ // } else {
51
+ // return 'false';
52
+ // }
53
+ // // TODO: Implement limit
54
+ // }],
55
+ // ['latest withdrawn', new Set(['submitter', 'manager', 'control-body', 'owner']), function submitterProposals(stakeholder) {
56
+ // if (stakeholder && stakeholder.gitServerUsername) {
57
+ // const stakeholderCondition = stakeholder?.role !== 'submitter'
58
+ // ? 'true'
59
+ // : `obj.submittingStakeholderGitServerUsername === "${stakeholder.gitServerUsername}"`;
60
+ // // Don’t show drafts in the list of pending proposals, unless it’s user’s own drafts.
61
+ // const query = `(obj.state === "${State.WITHDRAWN}" || obj.state === "${State.APPEAL_WITHDRAWN}") && ${stakeholderCondition}`;
62
+ // return query;
63
+ // } else {
64
+ // return 'false';
65
+ // }
66
+ // // TODO: Implement limit
67
+ // }],
68
+ ['Pending Owner Appeal Review', new Set(['owner']), function ownerProposals() {
69
+ return `obj.state === "${State.APPEALED}"`;
70
+ }],
71
+ ['Pending Control Body Review', new Set(['control-body', 'owner']), function cbProposals() {
72
+ return `obj.state === "${State.SUBMITTED_FOR_CONTROL_BODY_REVIEW}"`;
73
+ }],
74
+ ['Pending Manager Review', new Set(['manager', 'control-body', 'owner']), function managerProposals() {
75
+ return `obj.state === "${State.PROPOSED}"`;
76
+ }],
77
+ ];
78
+ //# sourceMappingURL=queries.js.map