@riboseinc/paneron-registry-kit 2.2.58 → 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 (735) 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/RegisterItem/index.js.map +1 -0
  69. package/compiled/views/detail/RegisterItemClass.js +59 -0
  70. package/compiled/views/detail/RegisterMeta/RegisterMetaForm.js +176 -0
  71. package/compiled/views/detail/RegisterMeta/index.js +73 -0
  72. package/compiled/views/detail/index.js +12 -0
  73. package/compiled/views/diffing/InlineDiff.js +117 -0
  74. package/compiled/views/diffing/StructuredDiff.js +38 -0
  75. package/compiled/views/hooks/useCustomView.js +14 -0
  76. package/compiled/views/hooks/useItemClassConfig.js +8 -0
  77. package/compiled/views/hooks/useItemRef.js +27 -0
  78. package/compiled/views/hooks/useLatestAcceptedProposal.js +39 -0
  79. package/compiled/views/hooks/useRegisterVersion.js +35 -0
  80. package/compiled/views/hooks/useSingleRegisterItemData.js +22 -0
  81. package/compiled/views/hooks/useStakeholder.js +2 -0
  82. package/compiled/views/index.js +247 -0
  83. package/compiled/views/itemPathUtils.js +139 -0
  84. package/compiled/views/itemQueryUtils.js +49 -0
  85. package/compiled/views/protocolRegistry.js +30 -0
  86. package/compiled/views/sidebar/Browse/index.js +291 -0
  87. package/compiled/views/sidebar/ExportImport/ExportOptions.js +56 -0
  88. package/compiled/views/sidebar/ExportImport/ImportOptions.js +9 -0
  89. package/compiled/views/sidebar/ExportImport/index.js +4 -0
  90. package/compiled/views/sidebar/ListItem.js +31 -0
  91. package/compiled/views/sidebar/Registration/index.js +89 -0
  92. package/compiled/views/sidebar/Search/index.js +129 -0
  93. package/{views → compiled/views}/sidebar/Search/index.js.map +1 -1
  94. package/compiled/views/sidebar/index.js +115 -0
  95. package/compiled/views/util.js +278 -0
  96. package/compiled/views/util.js.map +1 -0
  97. package/dependencies-local/extension-kit/SettingsContext.d.ts +8 -0
  98. package/dependencies-local/extension-kit/SettingsContext.js +19 -0
  99. package/dependencies-local/extension-kit/SettingsContext.js.map +1 -0
  100. package/dependencies-local/extension-kit/build_site.d.ts +1 -0
  101. package/dependencies-local/extension-kit/build_site.js +4 -0
  102. package/dependencies-local/extension-kit/build_site.js.map +1 -0
  103. package/dependencies-local/extension-kit/context.d.ts +18 -0
  104. package/dependencies-local/extension-kit/context.js +143 -0
  105. package/dependencies-local/extension-kit/context.js.map +1 -0
  106. package/dependencies-local/extension-kit/i18n/ContextProvider.d.ts +9 -0
  107. package/dependencies-local/extension-kit/i18n/ContextProvider.js +33 -0
  108. package/dependencies-local/extension-kit/i18n/ContextProvider.js.map +1 -0
  109. package/dependencies-local/extension-kit/i18n/context.d.ts +9 -0
  110. package/dependencies-local/extension-kit/i18n/context.js +23 -0
  111. package/dependencies-local/extension-kit/i18n/context.js.map +1 -0
  112. package/dependencies-local/extension-kit/i18n/types.d.ts +10 -0
  113. package/dependencies-local/extension-kit/i18n/types.js.map +1 -0
  114. package/dependencies-local/extension-kit/i18n/widgets.d.ts +16 -0
  115. package/dependencies-local/extension-kit/i18n/widgets.js +59 -0
  116. package/dependencies-local/extension-kit/i18n/widgets.js.map +1 -0
  117. package/dependencies-local/extension-kit/index.d.ts +16 -0
  118. package/dependencies-local/extension-kit/index.js +149 -0
  119. package/dependencies-local/extension-kit/index.js.map +1 -0
  120. package/dependencies-local/extension-kit/object-specs/index.d.ts +2 -0
  121. package/dependencies-local/extension-kit/object-specs/index.js +22 -0
  122. package/dependencies-local/extension-kit/object-specs/index.js.map +1 -0
  123. package/dependencies-local/extension-kit/object-specs/paneron-object.d.ts +7 -0
  124. package/dependencies-local/extension-kit/object-specs/paneron-object.js +159 -0
  125. package/dependencies-local/extension-kit/object-specs/paneron-object.js.map +1 -0
  126. package/dependencies-local/extension-kit/object-specs/ser-des.d.ts +32 -0
  127. package/dependencies-local/extension-kit/object-specs/ser-des.js +232 -0
  128. package/dependencies-local/extension-kit/object-specs/ser-des.js.map +1 -0
  129. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.d.ts +3 -0
  130. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.js +42 -0
  131. package/dependencies-local/extension-kit/object-specs/yaml/custom-bool.js.map +1 -0
  132. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.d.ts +3 -0
  133. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.js +110 -0
  134. package/dependencies-local/extension-kit/object-specs/yaml/custom-timestamp.js.map +1 -0
  135. package/dependencies-local/extension-kit/object-specs/yaml/index.d.ts +9 -0
  136. package/dependencies-local/extension-kit/object-specs/yaml/index.js +36 -0
  137. package/dependencies-local/extension-kit/object-specs/yaml/index.js.map +1 -0
  138. package/dependencies-local/extension-kit/object-specs/yaml/schema.d.ts +4 -0
  139. package/dependencies-local/extension-kit/object-specs/yaml/schema.js +26 -0
  140. package/dependencies-local/extension-kit/object-specs/yaml/schema.js.map +1 -0
  141. package/dependencies-local/extension-kit/settings.d.ts +9 -0
  142. package/dependencies-local/extension-kit/settings.js +17 -0
  143. package/dependencies-local/extension-kit/settings.js.map +1 -0
  144. package/dependencies-local/extension-kit/types/binary-invocation.d.ts +31 -0
  145. package/dependencies-local/extension-kit/types/binary-invocation.js.map +1 -0
  146. package/dependencies-local/extension-kit/types/buffers.d.ts +19 -0
  147. package/dependencies-local/extension-kit/types/buffers.js.map +1 -0
  148. package/dependencies-local/extension-kit/types/changes.d.ts +37 -0
  149. package/dependencies-local/extension-kit/types/changes.js +5 -0
  150. package/dependencies-local/extension-kit/types/changes.js.map +1 -0
  151. package/dependencies-local/extension-kit/types/data.d.ts +54 -0
  152. package/dependencies-local/extension-kit/types/data.js +5 -0
  153. package/dependencies-local/extension-kit/types/data.js.map +1 -0
  154. package/dependencies-local/extension-kit/types/dialogs.d.ts +21 -0
  155. package/dependencies-local/extension-kit/types/dialogs.js +5 -0
  156. package/dependencies-local/extension-kit/types/dialogs.js.map +1 -0
  157. package/dependencies-local/extension-kit/types/export-formats.d.ts +23 -0
  158. package/dependencies-local/extension-kit/types/export-formats.js +5 -0
  159. package/dependencies-local/extension-kit/types/export-formats.js.map +1 -0
  160. package/dependencies-local/extension-kit/types/extension-maker.d.ts +17 -0
  161. package/dependencies-local/extension-kit/types/extension-maker.js +5 -0
  162. package/dependencies-local/extension-kit/types/extension-maker.js.map +1 -0
  163. package/dependencies-local/extension-kit/types/extension.d.ts +40 -0
  164. package/dependencies-local/extension-kit/types/extension.js +5 -0
  165. package/dependencies-local/extension-kit/types/extension.js.map +1 -0
  166. package/dependencies-local/extension-kit/types/index.d.ts +3 -0
  167. package/dependencies-local/extension-kit/types/index.js +41 -0
  168. package/dependencies-local/extension-kit/types/index.js.map +1 -0
  169. package/dependencies-local/extension-kit/types/indexes.d.ts +6 -0
  170. package/dependencies-local/extension-kit/types/indexes.js +15 -0
  171. package/dependencies-local/extension-kit/types/indexes.js.map +1 -0
  172. package/dependencies-local/extension-kit/types/migrations.d.ts +35 -0
  173. package/dependencies-local/extension-kit/types/migrations.js +5 -0
  174. package/dependencies-local/extension-kit/types/migrations.js.map +1 -0
  175. package/dependencies-local/extension-kit/types/object-spec.d.ts +109 -0
  176. package/dependencies-local/extension-kit/types/object-spec.js +24 -0
  177. package/dependencies-local/extension-kit/types/object-spec.js.map +1 -0
  178. package/dependencies-local/extension-kit/types/objects.d.ts +18 -0
  179. package/dependencies-local/extension-kit/types/objects.js +5 -0
  180. package/dependencies-local/extension-kit/types/objects.js.map +1 -0
  181. package/dependencies-local/extension-kit/types/progress.d.ts +5 -0
  182. package/dependencies-local/extension-kit/types/progress.js +5 -0
  183. package/dependencies-local/extension-kit/types/progress.js.map +1 -0
  184. package/dependencies-local/extension-kit/types/renderer.d.ts +505 -0
  185. package/dependencies-local/extension-kit/types/renderer.js +16 -0
  186. package/dependencies-local/extension-kit/types/renderer.js.map +1 -0
  187. package/dependencies-local/extension-kit/useDebounce.d.ts +5 -0
  188. package/dependencies-local/extension-kit/useDebounce.js +25 -0
  189. package/dependencies-local/extension-kit/useDebounce.js.map +1 -0
  190. package/dependencies-local/extension-kit/usePersistentStateReducer.d.ts +39 -0
  191. package/dependencies-local/extension-kit/usePersistentStateReducer.js +133 -0
  192. package/dependencies-local/extension-kit/usePersistentStateReducer.js.map +1 -0
  193. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.d.ts +71 -0
  194. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.js +107 -0
  195. package/dependencies-local/extension-kit/useTimeTravelingPersistentStateReducer.js.map +1 -0
  196. package/dependencies-local/extension-kit/util.d.ts +37 -0
  197. package/dependencies-local/extension-kit/util.js +179 -0
  198. package/dependencies-local/extension-kit/util.js.map +1 -0
  199. package/dependencies-local/extension-kit/widgets/DL.d.ts +44 -0
  200. package/dependencies-local/extension-kit/widgets/DL.js +89 -0
  201. package/dependencies-local/extension-kit/widgets/DL.js.map +1 -0
  202. package/dependencies-local/extension-kit/widgets/ErrorBoundary.d.ts +17 -0
  203. package/dependencies-local/extension-kit/widgets/ErrorBoundary.js +49 -0
  204. package/dependencies-local/extension-kit/widgets/ErrorBoundary.js.map +1 -0
  205. package/dependencies-local/extension-kit/widgets/ErrorState.d.ts +10 -0
  206. package/dependencies-local/extension-kit/widgets/ErrorState.js +54 -0
  207. package/dependencies-local/extension-kit/widgets/ErrorState.js.map +1 -0
  208. package/dependencies-local/extension-kit/widgets/Grid.d.ts +41 -0
  209. package/dependencies-local/extension-kit/widgets/Grid.js +213 -0
  210. package/dependencies-local/extension-kit/widgets/Grid.js.map +1 -0
  211. package/dependencies-local/extension-kit/widgets/HelpTooltip.d.ts +18 -0
  212. package/dependencies-local/extension-kit/widgets/HelpTooltip.js +72 -0
  213. package/dependencies-local/extension-kit/widgets/HelpTooltip.js.map +1 -0
  214. package/dependencies-local/extension-kit/widgets/ItemCount.d.ts +19 -0
  215. package/dependencies-local/extension-kit/widgets/ItemCount.js +79 -0
  216. package/dependencies-local/extension-kit/widgets/ItemCount.js.map +1 -0
  217. package/dependencies-local/extension-kit/widgets/List.d.ts +41 -0
  218. package/dependencies-local/extension-kit/widgets/List.js +210 -0
  219. package/dependencies-local/extension-kit/widgets/List.js.map +1 -0
  220. package/dependencies-local/extension-kit/widgets/Navbar.d.ts +20 -0
  221. package/dependencies-local/extension-kit/widgets/Navbar.js +76 -0
  222. package/dependencies-local/extension-kit/widgets/Navbar.js.map +1 -0
  223. package/dependencies-local/extension-kit/widgets/Navbar2.d.ts +17 -0
  224. package/dependencies-local/extension-kit/widgets/Navbar2.js +95 -0
  225. package/dependencies-local/extension-kit/widgets/Navbar2.js.map +1 -0
  226. package/dependencies-local/extension-kit/widgets/OperationQueue/context.d.ts +17 -0
  227. package/dependencies-local/extension-kit/widgets/OperationQueue/context.js +21 -0
  228. package/dependencies-local/extension-kit/widgets/OperationQueue/context.js.map +1 -0
  229. package/dependencies-local/extension-kit/widgets/OperationQueue/index.d.ts +8 -0
  230. package/dependencies-local/extension-kit/widgets/OperationQueue/index.js +159 -0
  231. package/dependencies-local/extension-kit/widgets/OperationQueue/index.js.map +1 -0
  232. package/dependencies-local/extension-kit/widgets/OperationQueue/types.d.ts +19 -0
  233. package/dependencies-local/extension-kit/widgets/OperationQueue/types.js +5 -0
  234. package/dependencies-local/extension-kit/widgets/OperationQueue/types.js.map +1 -0
  235. package/dependencies-local/extension-kit/widgets/SearchResultList.d.ts +31 -0
  236. package/dependencies-local/extension-kit/widgets/SearchResultList.js +203 -0
  237. package/dependencies-local/extension-kit/widgets/SearchResultList.js.map +1 -0
  238. package/dependencies-local/extension-kit/widgets/Sidebar/Block.d.ts +24 -0
  239. package/dependencies-local/extension-kit/widgets/Sidebar/Block.js +109 -0
  240. package/dependencies-local/extension-kit/widgets/Sidebar/Block.js.map +1 -0
  241. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.d.ts +6 -0
  242. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.js +23 -0
  243. package/dependencies-local/extension-kit/widgets/Sidebar/BlockStateButtonGroup.js.map +1 -0
  244. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.d.ts +29 -0
  245. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.js +157 -0
  246. package/dependencies-local/extension-kit/widgets/Sidebar/PropertyView.js.map +1 -0
  247. package/dependencies-local/extension-kit/widgets/Sidebar/index.d.ts +27 -0
  248. package/dependencies-local/extension-kit/widgets/Sidebar/index.js +197 -0
  249. package/dependencies-local/extension-kit/widgets/Sidebar/index.js.map +1 -0
  250. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.d.ts +29 -0
  251. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.js +135 -0
  252. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/SuperSidebar.js.map +1 -0
  253. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.d.ts +10 -0
  254. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.js +205 -0
  255. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/context.js.map +1 -0
  256. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.d.ts +9 -0
  257. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.js +69 -0
  258. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/detail.js.map +1 -0
  259. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.d.ts +54 -0
  260. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.js +301 -0
  261. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/index.js.map +1 -0
  262. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.d.ts +102 -0
  263. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.js +5 -0
  264. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/types.js.map +1 -0
  265. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.d.ts +1 -0
  266. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.js +14 -0
  267. package/dependencies-local/extension-kit/widgets/TabbedWorkspace/util.js.map +1 -0
  268. package/dependencies-local/extension-kit/widgets/Workspace.d.ts +40 -0
  269. package/dependencies-local/extension-kit/widgets/Workspace.js +96 -0
  270. package/dependencies-local/extension-kit/widgets/Workspace.js.map +1 -0
  271. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.d.ts +12 -0
  272. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.js +60 -0
  273. package/dependencies-local/extension-kit/widgets/panels/PanelSeparator.js.map +1 -0
  274. package/dependencies-local/extension-kit/widgets/panels/index.d.ts +28 -0
  275. package/dependencies-local/extension-kit/widgets/panels/index.js +169 -0
  276. package/dependencies-local/extension-kit/widgets/panels/index.js.map +1 -0
  277. package/dist/common.d.ts +1 -0
  278. package/dist/common.js.map +1 -0
  279. package/dist/index.d.ts +18 -0
  280. package/dist/index.js.map +1 -0
  281. package/dist/item-classes/Tree.d.ts +5 -0
  282. package/dist/item-classes/Tree.js.map +1 -0
  283. package/dist/item-classes/treeNodes.d.ts +12 -0
  284. package/dist/item-classes/treeNodes.js.map +1 -0
  285. package/dist/migrations/initial.d.ts +3 -0
  286. package/dist/migrations/initial.js.map +1 -0
  287. package/dist/proposals/ChangeRequestContext.d.ts +44 -0
  288. package/dist/proposals/ChangeRequestContext.js.map +1 -0
  289. package/dist/proposals/HistoryDrawer.d.ts +12 -0
  290. package/dist/proposals/HistoryDrawer.js.map +1 -0
  291. package/dist/proposals/ListItem.d.ts +9 -0
  292. package/dist/proposals/ListItem.js.map +1 -0
  293. package/dist/proposals/MetaProperties.d.ts +14 -0
  294. package/dist/proposals/MetaProperties.js.map +1 -0
  295. package/dist/proposals/NewProposalMenu.d.ts +10 -0
  296. package/dist/proposals/NewProposalMenu.js.map +1 -0
  297. package/dist/proposals/ProposalBrowser.d.ts +29 -0
  298. package/dist/proposals/ProposalBrowser.js.map +1 -0
  299. package/dist/proposals/ProposalDetail.d.ts +6 -0
  300. package/dist/proposals/ProposalDetail.js.map +1 -0
  301. package/dist/proposals/ProposalItem.d.ts +16 -0
  302. package/dist/proposals/ProposalItem.js.map +1 -0
  303. package/dist/proposals/ProposalSummary.d.ts +6 -0
  304. package/dist/proposals/ProposalSummary.js.map +1 -0
  305. package/dist/proposals/ProposalTab.d.ts +14 -0
  306. package/dist/proposals/ProposalTab.js.map +1 -0
  307. package/dist/proposals/ProposalType.d.ts +11 -0
  308. package/dist/proposals/ProposalType.js.map +1 -0
  309. package/dist/proposals/ProposalWorkspace.d.ts +15 -0
  310. package/dist/proposals/ProposalWorkspace.js.map +1 -0
  311. package/dist/proposals/Search.d.ts +26 -0
  312. package/dist/proposals/Search.js.map +1 -0
  313. package/dist/proposals/TransitionHistory.d.ts +31 -0
  314. package/dist/proposals/TransitionHistory.js.map +1 -0
  315. package/dist/proposals/TransitionOptions.d.ts +38 -0
  316. package/dist/proposals/TransitionOptions.js.map +1 -0
  317. package/dist/proposals/actionableGroups/Tree.d.ts +7 -0
  318. package/dist/proposals/actionableGroups/Tree.js.map +1 -0
  319. package/dist/proposals/actionableGroups/queries.d.ts +4 -0
  320. package/dist/proposals/actionableGroups/queries.js.map +1 -0
  321. package/dist/proposals/actionableGroups/treeNodes.d.ts +27 -0
  322. package/dist/proposals/actionableGroups/treeNodes.js.map +1 -0
  323. package/dist/proposals/actionableGroups/types.d.ts +6 -0
  324. package/dist/proposals/actionableGroups/types.js +5 -0
  325. package/dist/proposals/actionableGroups/types.js.map +1 -0
  326. package/dist/proposals/index.d.ts +6 -0
  327. package/dist/proposals/index.js.map +1 -0
  328. package/dist/proposals/objectChangeset.d.ts +72 -0
  329. package/dist/proposals/objectChangeset.js.map +1 -0
  330. package/dist/proposals/queries.d.ts +4 -0
  331. package/dist/proposals/queries.js.map +1 -0
  332. package/dist/proposals/types.d.ts +332 -0
  333. package/dist/proposals/types.js.map +1 -0
  334. package/dist/types/index.d.ts +6 -0
  335. package/dist/types/index.js.map +1 -0
  336. package/dist/types/item.d.ts +55 -0
  337. package/dist/types/item.js.map +1 -0
  338. package/dist/types/register.d.ts +21 -0
  339. package/dist/types/register.js.map +1 -0
  340. package/dist/types/registry.d.ts +15 -0
  341. package/dist/types/registry.js.map +1 -0
  342. package/dist/types/stakeholder.d.ts +43 -0
  343. package/dist/types/stakeholder.js.map +1 -0
  344. package/dist/types/util.d.ts +28 -0
  345. package/dist/types/util.js +5 -0
  346. package/dist/types/util.js.map +1 -0
  347. package/dist/types/views.d.ts +228 -0
  348. package/dist/types/views.js +5 -0
  349. package/dist/types/views.js.map +1 -0
  350. package/dist/views/AnnotatedChange.d.ts +7 -0
  351. package/dist/views/AnnotatedChange.js.map +1 -0
  352. package/dist/views/BrowserCtx.d.ts +69 -0
  353. package/dist/views/BrowserCtx.js.map +1 -0
  354. package/dist/views/FilterCriteria/CRITERIA_CONFIGURATION.d.ts +17 -0
  355. package/dist/views/FilterCriteria/CRITERIA_CONFIGURATION.js.map +1 -0
  356. package/dist/views/FilterCriteria/criteriaGroupToQueryExpression.d.ts +6 -0
  357. package/dist/views/FilterCriteria/criteriaGroupToQueryExpression.js.map +1 -0
  358. package/dist/views/FilterCriteria/criteriaGroupToSummary.d.ts +5 -0
  359. package/dist/views/FilterCriteria/criteriaGroupToSummary.js.map +1 -0
  360. package/dist/views/FilterCriteria/criteriaToNodes.d.ts +24 -0
  361. package/dist/views/FilterCriteria/criteriaToNodes.js.map +1 -0
  362. package/dist/views/FilterCriteria/index.d.ts +23 -0
  363. package/dist/views/FilterCriteria/index.js.map +1 -0
  364. package/dist/views/FilterCriteria/models.d.ts +70 -0
  365. package/dist/views/FilterCriteria/models.js.map +1 -0
  366. package/dist/views/FilterCriteria/mutateGroup.d.ts +24 -0
  367. package/dist/views/FilterCriteria/mutateGroup.js.map +1 -0
  368. package/dist/views/GenericRelatedItemView.d.ts +9 -0
  369. package/dist/views/GenericRelatedItemView.js.map +1 -0
  370. package/dist/views/ItemDetailsDrawer.d.ts +12 -0
  371. package/dist/views/ItemDetailsDrawer.js.map +1 -0
  372. package/dist/views/ItemSearchDrawer.d.ts +11 -0
  373. package/dist/views/ItemSearchDrawer.js.map +1 -0
  374. package/dist/views/Party.d.ts +0 -0
  375. package/dist/views/Party.js.map +1 -0
  376. package/dist/views/RegisterStakeholder.d.ts +12 -0
  377. package/dist/views/RegisterStakeholder.js.map +1 -0
  378. package/dist/views/RegisterVersion.d.ts +9 -0
  379. package/dist/views/RegisterVersion.js.map +1 -0
  380. package/dist/views/SearchQuery.d.ts +19 -0
  381. package/dist/views/SearchQuery.js.map +1 -0
  382. package/dist/views/StatefulTree.d.ts +28 -0
  383. package/dist/views/StatefulTree.js.map +1 -0
  384. package/dist/views/detail/AllItems.d.ts +8 -0
  385. package/dist/views/detail/AllItems.js.map +1 -0
  386. package/dist/views/detail/ChangeRequest/index.d.ts +12 -0
  387. package/dist/views/detail/ChangeRequest/index.js.map +1 -0
  388. package/dist/views/detail/CustomView/index.d.ts +13 -0
  389. package/dist/views/detail/CustomView/index.js.map +1 -0
  390. package/dist/views/detail/ProposalWork.d.ts +8 -0
  391. package/dist/views/detail/ProposalWork.js.map +1 -0
  392. package/dist/views/detail/RegisterHome/ActiveProposalDetails.d.ts +15 -0
  393. package/dist/views/detail/RegisterHome/ActiveProposalDetails.js.map +1 -0
  394. package/dist/views/detail/RegisterHome/Block.d.ts +29 -0
  395. package/dist/views/detail/RegisterHome/Block.js.map +1 -0
  396. package/dist/views/detail/RegisterHome/MetaSummary.d.ts +9 -0
  397. package/dist/views/detail/RegisterHome/MetaSummary.js.map +1 -0
  398. package/dist/views/detail/RegisterHome/Proposal.d.ts +14 -0
  399. package/dist/views/detail/RegisterHome/Proposal.js.map +1 -0
  400. package/dist/views/detail/RegisterHome/index.d.ts +5 -0
  401. package/dist/views/detail/RegisterHome/index.js.map +1 -0
  402. package/dist/views/detail/RegisterHome2/index.d.ts +5 -0
  403. package/dist/views/detail/RegisterHome2/index.js.map +1 -0
  404. package/dist/views/detail/RegisterItem/RelatedItems.d.ts +14 -0
  405. package/dist/views/detail/RegisterItem/RelatedItems.js.map +1 -0
  406. package/dist/views/detail/RegisterItem/SupersedingItemMenu.d.ts +13 -0
  407. package/dist/views/detail/RegisterItem/SupersedingItemMenu.js.map +1 -0
  408. package/dist/views/detail/RegisterItem/index.d.ts +21 -0
  409. package/{views → dist/views}/detail/RegisterItem/index.js +1 -1
  410. package/dist/views/detail/RegisterItem/index.js.map +1 -0
  411. package/dist/views/detail/RegisterItemClass.d.ts +12 -0
  412. package/dist/views/detail/RegisterItemClass.js.map +1 -0
  413. package/dist/views/detail/RegisterMeta/RegisterMetaForm.d.ts +10 -0
  414. package/dist/views/detail/RegisterMeta/RegisterMetaForm.js.map +1 -0
  415. package/dist/views/detail/RegisterMeta/index.d.ts +10 -0
  416. package/dist/views/detail/RegisterMeta/index.js.map +1 -0
  417. package/dist/views/detail/index.d.ts +1 -0
  418. package/dist/views/detail/index.js.map +1 -0
  419. package/dist/views/diffing/InlineDiff.d.ts +38 -0
  420. package/dist/views/diffing/InlineDiff.js.map +1 -0
  421. package/dist/views/diffing/StructuredDiff.d.ts +11 -0
  422. package/dist/views/diffing/StructuredDiff.js.map +1 -0
  423. package/dist/views/hooks/useCustomView.d.ts +3 -0
  424. package/dist/views/hooks/useCustomView.js.map +1 -0
  425. package/dist/views/hooks/useItemClassConfig.d.ts +2 -0
  426. package/dist/views/hooks/useItemClassConfig.js.map +1 -0
  427. package/dist/views/hooks/useItemRef.d.ts +3 -0
  428. package/dist/views/hooks/useItemRef.js.map +1 -0
  429. package/dist/views/hooks/useLatestAcceptedProposal.d.ts +2 -0
  430. package/dist/views/hooks/useLatestAcceptedProposal.js.map +1 -0
  431. package/dist/views/hooks/useRegisterVersion.d.ts +5 -0
  432. package/dist/views/hooks/useRegisterVersion.js.map +1 -0
  433. package/dist/views/hooks/useSingleRegisterItemData.d.ts +3 -0
  434. package/dist/views/hooks/useSingleRegisterItemData.js.map +1 -0
  435. package/dist/views/hooks/useStakeholder.d.ts +0 -0
  436. package/dist/views/hooks/useStakeholder.js.map +1 -0
  437. package/dist/views/index.d.ts +8 -0
  438. package/dist/views/index.js.map +1 -0
  439. package/dist/views/itemPathUtils.d.ts +47 -0
  440. package/dist/views/itemPathUtils.js.map +1 -0
  441. package/dist/views/itemQueryUtils.d.ts +12 -0
  442. package/dist/views/itemQueryUtils.js.map +1 -0
  443. package/dist/views/protocolRegistry.d.ts +14 -0
  444. package/dist/views/protocolRegistry.js.map +1 -0
  445. package/dist/views/sidebar/Browse/index.d.ts +11 -0
  446. package/dist/views/sidebar/Browse/index.js.map +1 -0
  447. package/dist/views/sidebar/ExportImport/ExportOptions.d.ts +5 -0
  448. package/dist/views/sidebar/ExportImport/ExportOptions.js.map +1 -0
  449. package/dist/views/sidebar/ExportImport/ImportOptions.d.ts +4 -0
  450. package/dist/views/sidebar/ExportImport/ImportOptions.js.map +1 -0
  451. package/dist/views/sidebar/ExportImport/index.d.ts +3 -0
  452. package/dist/views/sidebar/ExportImport/index.js.map +1 -0
  453. package/dist/views/sidebar/ListItem.d.ts +10 -0
  454. package/dist/views/sidebar/ListItem.js.map +1 -0
  455. package/dist/views/sidebar/Registration/index.d.ts +9 -0
  456. package/dist/views/sidebar/Registration/index.js.map +1 -0
  457. package/dist/views/sidebar/Search/index.d.ts +29 -0
  458. package/{views → dist/views}/sidebar/Search/index.js +1 -1
  459. package/dist/views/sidebar/Search/index.js.map +1 -0
  460. package/dist/views/sidebar/index.d.ts +7 -0
  461. package/dist/views/sidebar/index.js.map +1 -0
  462. package/dist/views/util.d.ts +98 -0
  463. package/{views → dist/views}/util.js +33 -7
  464. package/dist/views/util.js.map +1 -0
  465. package/package.json +1 -1
  466. package/react-visual-diff.d.ts +9 -0
  467. package/views/detail/RegisterItem/index.js.map +0 -1
  468. package/views/util.js.map +0 -1
  469. /package/{common.d.ts → compiled/common.d.ts} +0 -0
  470. /package/{common.js.map → compiled/common.js.map} +0 -0
  471. /package/{index.d.ts → compiled/index.d.ts} +0 -0
  472. /package/{index.js.map → compiled/index.js.map} +0 -0
  473. /package/{item-classes → compiled/item-classes}/Tree.d.ts +0 -0
  474. /package/{item-classes → compiled/item-classes}/Tree.js.map +0 -0
  475. /package/{item-classes → compiled/item-classes}/treeNodes.d.ts +0 -0
  476. /package/{item-classes → compiled/item-classes}/treeNodes.js.map +0 -0
  477. /package/{migrations → compiled/migrations}/initial.d.ts +0 -0
  478. /package/{migrations → compiled/migrations}/initial.js.map +0 -0
  479. /package/{proposals → compiled/proposals}/ChangeRequestContext.d.ts +0 -0
  480. /package/{proposals → compiled/proposals}/ChangeRequestContext.js.map +0 -0
  481. /package/{proposals → compiled/proposals}/HistoryDrawer.d.ts +0 -0
  482. /package/{proposals → compiled/proposals}/HistoryDrawer.js.map +0 -0
  483. /package/{proposals → compiled/proposals}/ListItem.d.ts +0 -0
  484. /package/{proposals → compiled/proposals}/ListItem.js.map +0 -0
  485. /package/{proposals → compiled/proposals}/MetaProperties.d.ts +0 -0
  486. /package/{proposals → compiled/proposals}/MetaProperties.js.map +0 -0
  487. /package/{proposals → compiled/proposals}/NewProposalMenu.d.ts +0 -0
  488. /package/{proposals → compiled/proposals}/NewProposalMenu.js.map +0 -0
  489. /package/{proposals → compiled/proposals}/ProposalBrowser.d.ts +0 -0
  490. /package/{proposals → compiled/proposals}/ProposalBrowser.js.map +0 -0
  491. /package/{proposals → compiled/proposals}/ProposalDetail.d.ts +0 -0
  492. /package/{proposals → compiled/proposals}/ProposalDetail.js.map +0 -0
  493. /package/{proposals → compiled/proposals}/ProposalItem.d.ts +0 -0
  494. /package/{proposals → compiled/proposals}/ProposalItem.js.map +0 -0
  495. /package/{proposals → compiled/proposals}/ProposalSummary.d.ts +0 -0
  496. /package/{proposals → compiled/proposals}/ProposalSummary.js.map +0 -0
  497. /package/{proposals → compiled/proposals}/ProposalTab.d.ts +0 -0
  498. /package/{proposals → compiled/proposals}/ProposalTab.js.map +0 -0
  499. /package/{proposals → compiled/proposals}/ProposalType.d.ts +0 -0
  500. /package/{proposals → compiled/proposals}/ProposalType.js.map +0 -0
  501. /package/{proposals → compiled/proposals}/ProposalWorkspace.d.ts +0 -0
  502. /package/{proposals → compiled/proposals}/ProposalWorkspace.js.map +0 -0
  503. /package/{proposals → compiled/proposals}/Search.d.ts +0 -0
  504. /package/{proposals → compiled/proposals}/Search.js.map +0 -0
  505. /package/{proposals → compiled/proposals}/TransitionHistory.d.ts +0 -0
  506. /package/{proposals → compiled/proposals}/TransitionHistory.js.map +0 -0
  507. /package/{proposals → compiled/proposals}/TransitionOptions.d.ts +0 -0
  508. /package/{proposals → compiled/proposals}/TransitionOptions.js.map +0 -0
  509. /package/{proposals → compiled/proposals}/actionableGroups/Tree.d.ts +0 -0
  510. /package/{proposals → compiled/proposals}/actionableGroups/Tree.js.map +0 -0
  511. /package/{proposals → compiled/proposals}/actionableGroups/queries.d.ts +0 -0
  512. /package/{proposals → compiled/proposals}/actionableGroups/queries.js.map +0 -0
  513. /package/{proposals → compiled/proposals}/actionableGroups/treeNodes.d.ts +0 -0
  514. /package/{proposals → compiled/proposals}/actionableGroups/treeNodes.js.map +0 -0
  515. /package/{proposals → compiled/proposals}/actionableGroups/types.d.ts +0 -0
  516. /package/{proposals → compiled/proposals}/actionableGroups/types.js.map +0 -0
  517. /package/{proposals → compiled/proposals}/index.d.ts +0 -0
  518. /package/{proposals → compiled/proposals}/index.js.map +0 -0
  519. /package/{proposals → compiled/proposals}/objectChangeset.d.ts +0 -0
  520. /package/{proposals → compiled/proposals}/objectChangeset.js.map +0 -0
  521. /package/{proposals → compiled/proposals}/queries.d.ts +0 -0
  522. /package/{proposals → compiled/proposals}/queries.js.map +0 -0
  523. /package/{proposals → compiled/proposals}/types.d.ts +0 -0
  524. /package/{proposals → compiled/proposals}/types.js.map +0 -0
  525. /package/{types → compiled/types}/index.d.ts +0 -0
  526. /package/{types → compiled/types}/index.js.map +0 -0
  527. /package/{types → compiled/types}/item.d.ts +0 -0
  528. /package/{types → compiled/types}/item.js.map +0 -0
  529. /package/{types → compiled/types}/register.d.ts +0 -0
  530. /package/{types → compiled/types}/register.js.map +0 -0
  531. /package/{types → compiled/types}/registry.d.ts +0 -0
  532. /package/{types → compiled/types}/registry.js.map +0 -0
  533. /package/{types → compiled/types}/stakeholder.d.ts +0 -0
  534. /package/{types → compiled/types}/stakeholder.js.map +0 -0
  535. /package/{types → compiled/types}/util.d.ts +0 -0
  536. /package/{types → compiled/types}/util.js.map +0 -0
  537. /package/{types → compiled/types}/views.d.ts +0 -0
  538. /package/{types → compiled/types}/views.js.map +0 -0
  539. /package/{views → compiled/views}/AnnotatedChange.d.ts +0 -0
  540. /package/{views → compiled/views}/AnnotatedChange.js.map +0 -0
  541. /package/{views → compiled/views}/BrowserCtx.d.ts +0 -0
  542. /package/{views → compiled/views}/BrowserCtx.js.map +0 -0
  543. /package/{views → compiled/views}/FilterCriteria/CRITERIA_CONFIGURATION.d.ts +0 -0
  544. /package/{views → compiled/views}/FilterCriteria/CRITERIA_CONFIGURATION.js.map +0 -0
  545. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToQueryExpression.d.ts +0 -0
  546. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToQueryExpression.js.map +0 -0
  547. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToSummary.d.ts +0 -0
  548. /package/{views → compiled/views}/FilterCriteria/criteriaGroupToSummary.js.map +0 -0
  549. /package/{views → compiled/views}/FilterCriteria/criteriaToNodes.d.ts +0 -0
  550. /package/{views → compiled/views}/FilterCriteria/criteriaToNodes.js.map +0 -0
  551. /package/{views → compiled/views}/FilterCriteria/index.d.ts +0 -0
  552. /package/{views → compiled/views}/FilterCriteria/index.js.map +0 -0
  553. /package/{views → compiled/views}/FilterCriteria/models.d.ts +0 -0
  554. /package/{views → compiled/views}/FilterCriteria/models.js.map +0 -0
  555. /package/{views → compiled/views}/FilterCriteria/mutateGroup.d.ts +0 -0
  556. /package/{views → compiled/views}/FilterCriteria/mutateGroup.js.map +0 -0
  557. /package/{views → compiled/views}/GenericRelatedItemView.d.ts +0 -0
  558. /package/{views → compiled/views}/GenericRelatedItemView.js.map +0 -0
  559. /package/{views → compiled/views}/ItemDetailsDrawer.d.ts +0 -0
  560. /package/{views → compiled/views}/ItemDetailsDrawer.js.map +0 -0
  561. /package/{views → compiled/views}/ItemSearchDrawer.d.ts +0 -0
  562. /package/{views → compiled/views}/ItemSearchDrawer.js.map +0 -0
  563. /package/{views → compiled/views}/Party.d.ts +0 -0
  564. /package/{views → compiled/views}/Party.js.map +0 -0
  565. /package/{views → compiled/views}/RegisterStakeholder.d.ts +0 -0
  566. /package/{views → compiled/views}/RegisterStakeholder.js.map +0 -0
  567. /package/{views → compiled/views}/RegisterVersion.d.ts +0 -0
  568. /package/{views → compiled/views}/RegisterVersion.js.map +0 -0
  569. /package/{views → compiled/views}/SearchQuery.d.ts +0 -0
  570. /package/{views → compiled/views}/SearchQuery.js.map +0 -0
  571. /package/{views → compiled/views}/StatefulTree.d.ts +0 -0
  572. /package/{views → compiled/views}/StatefulTree.js.map +0 -0
  573. /package/{views → compiled/views}/detail/AllItems.d.ts +0 -0
  574. /package/{views → compiled/views}/detail/AllItems.js.map +0 -0
  575. /package/{views → compiled/views}/detail/ChangeRequest/index.d.ts +0 -0
  576. /package/{views → compiled/views}/detail/ChangeRequest/index.js.map +0 -0
  577. /package/{views → compiled/views}/detail/CustomView/index.d.ts +0 -0
  578. /package/{views → compiled/views}/detail/CustomView/index.js.map +0 -0
  579. /package/{views → compiled/views}/detail/ProposalWork.d.ts +0 -0
  580. /package/{views → compiled/views}/detail/ProposalWork.js.map +0 -0
  581. /package/{views → compiled/views}/detail/RegisterHome/ActiveProposalDetails.d.ts +0 -0
  582. /package/{views → compiled/views}/detail/RegisterHome/ActiveProposalDetails.js.map +0 -0
  583. /package/{views → compiled/views}/detail/RegisterHome/Block.d.ts +0 -0
  584. /package/{views → compiled/views}/detail/RegisterHome/Block.js.map +0 -0
  585. /package/{views → compiled/views}/detail/RegisterHome/MetaSummary.d.ts +0 -0
  586. /package/{views → compiled/views}/detail/RegisterHome/MetaSummary.js.map +0 -0
  587. /package/{views → compiled/views}/detail/RegisterHome/Proposal.d.ts +0 -0
  588. /package/{views → compiled/views}/detail/RegisterHome/Proposal.js.map +0 -0
  589. /package/{views → compiled/views}/detail/RegisterHome/index.d.ts +0 -0
  590. /package/{views → compiled/views}/detail/RegisterHome/index.js.map +0 -0
  591. /package/{views → compiled/views}/detail/RegisterHome2/index.d.ts +0 -0
  592. /package/{views → compiled/views}/detail/RegisterHome2/index.js.map +0 -0
  593. /package/{views → compiled/views}/detail/RegisterItem/RelatedItems.d.ts +0 -0
  594. /package/{views → compiled/views}/detail/RegisterItem/RelatedItems.js.map +0 -0
  595. /package/{views → compiled/views}/detail/RegisterItem/SupersedingItemMenu.d.ts +0 -0
  596. /package/{views → compiled/views}/detail/RegisterItem/SupersedingItemMenu.js.map +0 -0
  597. /package/{views → compiled/views}/detail/RegisterItem/index.d.ts +0 -0
  598. /package/{views → compiled/views}/detail/RegisterItemClass.d.ts +0 -0
  599. /package/{views → compiled/views}/detail/RegisterItemClass.js.map +0 -0
  600. /package/{views → compiled/views}/detail/RegisterMeta/RegisterMetaForm.d.ts +0 -0
  601. /package/{views → compiled/views}/detail/RegisterMeta/RegisterMetaForm.js.map +0 -0
  602. /package/{views → compiled/views}/detail/RegisterMeta/index.d.ts +0 -0
  603. /package/{views → compiled/views}/detail/RegisterMeta/index.js.map +0 -0
  604. /package/{views → compiled/views}/detail/index.d.ts +0 -0
  605. /package/{views → compiled/views}/detail/index.js.map +0 -0
  606. /package/{views → compiled/views}/diffing/InlineDiff.d.ts +0 -0
  607. /package/{views → compiled/views}/diffing/InlineDiff.js.map +0 -0
  608. /package/{views → compiled/views}/diffing/StructuredDiff.d.ts +0 -0
  609. /package/{views → compiled/views}/diffing/StructuredDiff.js.map +0 -0
  610. /package/{views → compiled/views}/hooks/useCustomView.d.ts +0 -0
  611. /package/{views → compiled/views}/hooks/useCustomView.js.map +0 -0
  612. /package/{views → compiled/views}/hooks/useItemClassConfig.d.ts +0 -0
  613. /package/{views → compiled/views}/hooks/useItemClassConfig.js.map +0 -0
  614. /package/{views → compiled/views}/hooks/useItemRef.d.ts +0 -0
  615. /package/{views → compiled/views}/hooks/useItemRef.js.map +0 -0
  616. /package/{views → compiled/views}/hooks/useLatestAcceptedProposal.d.ts +0 -0
  617. /package/{views → compiled/views}/hooks/useLatestAcceptedProposal.js.map +0 -0
  618. /package/{views → compiled/views}/hooks/useRegisterVersion.d.ts +0 -0
  619. /package/{views → compiled/views}/hooks/useRegisterVersion.js.map +0 -0
  620. /package/{views → compiled/views}/hooks/useSingleRegisterItemData.d.ts +0 -0
  621. /package/{views → compiled/views}/hooks/useSingleRegisterItemData.js.map +0 -0
  622. /package/{views → compiled/views}/hooks/useStakeholder.d.ts +0 -0
  623. /package/{views → compiled/views}/hooks/useStakeholder.js.map +0 -0
  624. /package/{views → compiled/views}/index.d.ts +0 -0
  625. /package/{views → compiled/views}/index.js.map +0 -0
  626. /package/{views → compiled/views}/itemPathUtils.d.ts +0 -0
  627. /package/{views → compiled/views}/itemPathUtils.js.map +0 -0
  628. /package/{views → compiled/views}/itemQueryUtils.d.ts +0 -0
  629. /package/{views → compiled/views}/itemQueryUtils.js.map +0 -0
  630. /package/{views → compiled/views}/protocolRegistry.d.ts +0 -0
  631. /package/{views → compiled/views}/protocolRegistry.js.map +0 -0
  632. /package/{views → compiled/views}/sidebar/Browse/index.d.ts +0 -0
  633. /package/{views → compiled/views}/sidebar/Browse/index.js.map +0 -0
  634. /package/{views → compiled/views}/sidebar/ExportImport/ExportOptions.d.ts +0 -0
  635. /package/{views → compiled/views}/sidebar/ExportImport/ExportOptions.js.map +0 -0
  636. /package/{views → compiled/views}/sidebar/ExportImport/ImportOptions.d.ts +0 -0
  637. /package/{views → compiled/views}/sidebar/ExportImport/ImportOptions.js.map +0 -0
  638. /package/{views → compiled/views}/sidebar/ExportImport/index.d.ts +0 -0
  639. /package/{views → compiled/views}/sidebar/ExportImport/index.js.map +0 -0
  640. /package/{views → compiled/views}/sidebar/ListItem.d.ts +0 -0
  641. /package/{views → compiled/views}/sidebar/ListItem.js.map +0 -0
  642. /package/{views → compiled/views}/sidebar/Registration/index.d.ts +0 -0
  643. /package/{views → compiled/views}/sidebar/Registration/index.js.map +0 -0
  644. /package/{views → compiled/views}/sidebar/Search/index.d.ts +0 -0
  645. /package/{views → compiled/views}/sidebar/index.d.ts +0 -0
  646. /package/{views → compiled/views}/sidebar/index.js.map +0 -0
  647. /package/{views → compiled/views}/util.d.ts +0 -0
  648. /package/{proposals/actionableGroups → dependencies-local/extension-kit/i18n}/types.js +0 -0
  649. /package/{types/util.js → dependencies-local/extension-kit/types/binary-invocation.js} +0 -0
  650. /package/{types/views.js → dependencies-local/extension-kit/types/buffers.js} +0 -0
  651. /package/{common.js → dist/common.js} +0 -0
  652. /package/{index.js → dist/index.js} +0 -0
  653. /package/{item-classes → dist/item-classes}/Tree.js +0 -0
  654. /package/{item-classes → dist/item-classes}/treeNodes.js +0 -0
  655. /package/{migrations → dist/migrations}/initial.js +0 -0
  656. /package/{proposals → dist/proposals}/ChangeRequestContext.js +0 -0
  657. /package/{proposals → dist/proposals}/HistoryDrawer.js +0 -0
  658. /package/{proposals → dist/proposals}/ListItem.js +0 -0
  659. /package/{proposals → dist/proposals}/MetaProperties.js +0 -0
  660. /package/{proposals → dist/proposals}/NewProposalMenu.js +0 -0
  661. /package/{proposals → dist/proposals}/ProposalBrowser.js +0 -0
  662. /package/{proposals → dist/proposals}/ProposalDetail.js +0 -0
  663. /package/{proposals → dist/proposals}/ProposalItem.js +0 -0
  664. /package/{proposals → dist/proposals}/ProposalSummary.js +0 -0
  665. /package/{proposals → dist/proposals}/ProposalTab.js +0 -0
  666. /package/{proposals → dist/proposals}/ProposalType.js +0 -0
  667. /package/{proposals → dist/proposals}/ProposalWorkspace.js +0 -0
  668. /package/{proposals → dist/proposals}/Search.js +0 -0
  669. /package/{proposals → dist/proposals}/TransitionHistory.js +0 -0
  670. /package/{proposals → dist/proposals}/TransitionOptions.js +0 -0
  671. /package/{proposals → dist/proposals}/actionableGroups/Tree.js +0 -0
  672. /package/{proposals → dist/proposals}/actionableGroups/queries.js +0 -0
  673. /package/{proposals → dist/proposals}/actionableGroups/treeNodes.js +0 -0
  674. /package/{proposals → dist/proposals}/index.js +0 -0
  675. /package/{proposals → dist/proposals}/objectChangeset.js +0 -0
  676. /package/{proposals → dist/proposals}/queries.js +0 -0
  677. /package/{proposals → dist/proposals}/types.js +0 -0
  678. /package/{types → dist/types}/index.js +0 -0
  679. /package/{types → dist/types}/item.js +0 -0
  680. /package/{types → dist/types}/register.js +0 -0
  681. /package/{types → dist/types}/registry.js +0 -0
  682. /package/{types → dist/types}/stakeholder.js +0 -0
  683. /package/{views → dist/views}/AnnotatedChange.js +0 -0
  684. /package/{views → dist/views}/BrowserCtx.js +0 -0
  685. /package/{views → dist/views}/FilterCriteria/CRITERIA_CONFIGURATION.js +0 -0
  686. /package/{views → dist/views}/FilterCriteria/criteriaGroupToQueryExpression.js +0 -0
  687. /package/{views → dist/views}/FilterCriteria/criteriaGroupToSummary.js +0 -0
  688. /package/{views → dist/views}/FilterCriteria/criteriaToNodes.js +0 -0
  689. /package/{views → dist/views}/FilterCriteria/index.js +0 -0
  690. /package/{views → dist/views}/FilterCriteria/models.js +0 -0
  691. /package/{views → dist/views}/FilterCriteria/mutateGroup.js +0 -0
  692. /package/{views → dist/views}/GenericRelatedItemView.js +0 -0
  693. /package/{views → dist/views}/ItemDetailsDrawer.js +0 -0
  694. /package/{views → dist/views}/ItemSearchDrawer.js +0 -0
  695. /package/{views → dist/views}/Party.js +0 -0
  696. /package/{views → dist/views}/RegisterStakeholder.js +0 -0
  697. /package/{views → dist/views}/RegisterVersion.js +0 -0
  698. /package/{views → dist/views}/SearchQuery.js +0 -0
  699. /package/{views → dist/views}/StatefulTree.js +0 -0
  700. /package/{views → dist/views}/detail/AllItems.js +0 -0
  701. /package/{views → dist/views}/detail/ChangeRequest/index.js +0 -0
  702. /package/{views → dist/views}/detail/CustomView/index.js +0 -0
  703. /package/{views → dist/views}/detail/ProposalWork.js +0 -0
  704. /package/{views → dist/views}/detail/RegisterHome/ActiveProposalDetails.js +0 -0
  705. /package/{views → dist/views}/detail/RegisterHome/Block.js +0 -0
  706. /package/{views → dist/views}/detail/RegisterHome/MetaSummary.js +0 -0
  707. /package/{views → dist/views}/detail/RegisterHome/Proposal.js +0 -0
  708. /package/{views → dist/views}/detail/RegisterHome/index.js +0 -0
  709. /package/{views → dist/views}/detail/RegisterHome2/index.js +0 -0
  710. /package/{views → dist/views}/detail/RegisterItem/RelatedItems.js +0 -0
  711. /package/{views → dist/views}/detail/RegisterItem/SupersedingItemMenu.js +0 -0
  712. /package/{views → dist/views}/detail/RegisterItemClass.js +0 -0
  713. /package/{views → dist/views}/detail/RegisterMeta/RegisterMetaForm.js +0 -0
  714. /package/{views → dist/views}/detail/RegisterMeta/index.js +0 -0
  715. /package/{views → dist/views}/detail/index.js +0 -0
  716. /package/{views → dist/views}/diffing/InlineDiff.js +0 -0
  717. /package/{views → dist/views}/diffing/StructuredDiff.js +0 -0
  718. /package/{views → dist/views}/hooks/useCustomView.js +0 -0
  719. /package/{views → dist/views}/hooks/useItemClassConfig.js +0 -0
  720. /package/{views → dist/views}/hooks/useItemRef.js +0 -0
  721. /package/{views → dist/views}/hooks/useLatestAcceptedProposal.js +0 -0
  722. /package/{views → dist/views}/hooks/useRegisterVersion.js +0 -0
  723. /package/{views → dist/views}/hooks/useSingleRegisterItemData.js +0 -0
  724. /package/{views → dist/views}/hooks/useStakeholder.js +0 -0
  725. /package/{views → dist/views}/index.js +0 -0
  726. /package/{views → dist/views}/itemPathUtils.js +0 -0
  727. /package/{views → dist/views}/itemQueryUtils.js +0 -0
  728. /package/{views → dist/views}/protocolRegistry.js +0 -0
  729. /package/{views → dist/views}/sidebar/Browse/index.js +0 -0
  730. /package/{views → dist/views}/sidebar/ExportImport/ExportOptions.js +0 -0
  731. /package/{views → dist/views}/sidebar/ExportImport/ImportOptions.js +0 -0
  732. /package/{views → dist/views}/sidebar/ExportImport/index.js +0 -0
  733. /package/{views → dist/views}/sidebar/ListItem.js +0 -0
  734. /package/{views → dist/views}/sidebar/Registration/index.js +0 -0
  735. /package/{views → dist/views}/sidebar/index.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/sidebar/Search/index.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @jsx jsx */\n/** @jsxFrag React.Fragment */\n\nimport React, { memo, useContext, useCallback, useMemo, useEffect } from 'react';\nimport { jsx, css } from '@emotion/react';\nimport { DatasetContext } from '@riboseinc/paneron-extension-kit/context';\nimport { toJSONNormalized } from '@riboseinc/paneron-extension-kit/util';\nimport type { PersistentStateReducerHook } from '@riboseinc/paneron-extension-kit/usePersistentStateReducer';\nimport makeSearchResultList from '@riboseinc/paneron-extension-kit/widgets/SearchResultList';\nimport useDebounce from '@riboseinc/paneron-extension-kit/useDebounce';\nimport { type CriteriaGroup, isCriteriaGroup, BLANK_CRITERIA } from '../../FilterCriteria/models';\nimport criteriaGroupToQueryExpression from '../../FilterCriteria/criteriaGroupToQueryExpression';\nimport { RAW_SUBSTRING, CUSTOM_CONDITION } from '../../FilterCriteria/CRITERIA_CONFIGURATION';\nimport { ChangeRequestContext } from '../../../proposals/ChangeRequestContext';\nimport type { RegisterItem } from '../../../types';\nimport { itemRefToItemPath } from '../../itemPathUtils';\nimport { getRegisterItemQuery } from '../../itemQueryUtils';\nimport { BrowserCtx } from '../../BrowserCtx';\nimport SearchQuery from '../../SearchQuery';\nimport ListItem from '../ListItem';\nimport { Protocols } from '../../protocolRegistry';\n\n\n// TODO: Move Search widget core out of sidebar, as it’s used elsewhere too.\n\n\ninterface Query {\n criteria: CriteriaGroup;\n}\ninterface State {\n query: Query;\n quickSubstringQuery: string;\n selectedItemPath: string | null;\n}\nfunction isState(val: any): val is State {\n return val\n && val.query\n && val.query.criteria\n && isCriteriaGroup(val.query.criteria)\n && typeof val.quickSubstringQuery === 'string'\n && (val.selectedItemPath === null || typeof val.selectedItemPath === 'string')\n}\ntype Action =\n | { type: 'update-query'; payload: { query: Query; }; }\n | { type: 'update-quick-substring-query'; payload: { substring: string; }; }\n | { type: 'select-item'; payload: { itemPath: string | null; }; }\n\nconst initialState: State = {\n query: { criteria: BLANK_CRITERIA },\n quickSubstringQuery: '',\n selectedItemPath: null,\n} as const;\n\nfunction isInitialState(state: State): boolean {\n return toJSONNormalized(state) === toJSONNormalized(initialState);\n}\n\nfunction reducer(prevState: State, action: Action) {\n switch (action.type) {\n case 'update-query':\n return {\n ...prevState,\n query: action.payload.query,\n };\n case 'update-quick-substring-query':\n return {\n ...prevState,\n quickSubstringQuery: action.payload.substring,\n };\n case 'select-item':\n return {\n ...prevState,\n selectedItemPath: action.payload.itemPath,\n };\n default:\n throw new Error(\"Unexpected search state\");\n }\n}\n\nconst Search: React.FC<{\n /**\n * Human-readable description of what would be searched.\n * Optional, but if provided must be a lower-case noun\n * to be integrated in GUI copy.\n */\n scope?: string,\n\n /**\n * Criteria that will always apply.\n * Used e.g. in superseding item selection\n * (to limit to the same item class).\n */\n implicitCriteria?: CriteriaGroup,\n\n availableClassIDs?: string[]\n onOpenItem?: (itemPath: string) => void\n\n zeroResultsView?: JSX.Element\n initialView?: JSX.Element\n\n stateName?: string\n\n List?: ReturnType<typeof makeSearchResultList>\n extraData?: Record<string, any>\n\n className?: string\n style?: React.CSSProperties\n}> =\nmemo(function ({ scope, implicitCriteria, initialView, zeroResultsView, availableClassIDs, stateName, onOpenItem, List, extraData, className, style }) {\n const { usePersistentDatasetStateReducer } = useContext(DatasetContext);\n\n const ListComponent = useMemo((() => List ?? RegisterItemSearchResultList), [List]);\n\n const {\n // TODO: defaultSearchCriteria,\n keyExpression,\n getQuickSearchPredicate,\n itemClasses,\n subregisters,\n selectedRegisterItem,\n jumpTo,\n } = useContext(BrowserCtx);\n\n const { changeRequest } = useContext(ChangeRequestContext);\n\n const [ state, dispatch, stateRecalled ] = (usePersistentDatasetStateReducer as PersistentStateReducerHook<State, Action>)( stateName ?? 'search-sidebar',\n undefined,\n isState,\n reducer,\n initialState,\n null);\n\n const selectedItemPath = selectedRegisterItem?.ref\n ? itemRefToItemPath(selectedRegisterItem.ref, changeRequest?.id)\n : null;\n\n useEffect(() => {\n if (selectedItemPath) {\n dispatch({ type: 'select-item', payload: { itemPath: selectedItemPath } });\n }\n }, [selectedItemPath, dispatch]);\n\n // Why are we memoing this? It’s just a string and seems not too slow to compute.\n const effectiveQueryExpression: string = useMemo(() => {\n const quickSearchString = (state.quickSubstringQuery ?? '').trim();\n const withSearchString: CriteriaGroup =\n state.query.criteria.criteria.length < 1 && quickSearchString !== ''\n ? {\n require: 'all',\n criteria: [\n getQuickSearchPredicate\n ? {\n key: 'custom',\n query: CUSTOM_CONDITION.toQuery(\n { customExpression: getQuickSearchPredicate(quickSearchString) },\n { itemClasses, subregisters },\n ),\n }\n : {\n key: 'raw-substring',\n query: RAW_SUBSTRING.toQuery(\n { substring: quickSearchString },\n { itemClasses, subregisters }),\n },\n ],\n }\n : state.query.criteria;\n const withImplicit: CriteriaGroup = implicitCriteria\n ? {\n require: 'all',\n criteria: [ implicitCriteria, withSearchString ],\n }\n : withSearchString;\n return withImplicit.criteria.length > 0\n ? criteriaGroupToQueryExpression(withImplicit)\n // If no criteria provided, don’t show anything by default.\n : 'false';\n }, [state.query.criteria, state.quickSubstringQuery, itemClasses, subregisters, getQuickSearchPredicate]);\n\n const stateRecalledDebounced = useDebounce(stateRecalled, 100);\n const queryExpressionDebounced = useDebounce(\n effectiveQueryExpression,\n stateRecalledDebounced ? 500 : 0,\n );\n\n const datasetObjectSearchQueryExpression = useMemo((() =>\n queryExpressionDebounced.trim() !== '' && queryExpressionDebounced != 'false'\n ? getRegisterItemQuery(queryExpressionDebounced, changeRequest ?? undefined)\n : 'return false'\n ), [queryExpressionDebounced, changeRequest]);\n\n const handleSelectItem = useCallback(\n (itemPath => dispatch({ type: 'select-item', payload: { itemPath }})),\n [dispatch]);\n\n const defaultHandleOpenItem = useCallback(\n (itemPath => jumpTo?.(`${Protocols.ITEM_DETAILS}:${itemPath}`)),\n [jumpTo]);\n const handleOpenItem = onOpenItem ?? defaultHandleOpenItem;\n\n const showInitialScreen = initialView && isInitialState({ ...state, selectedItemPath: null });\n\n return (\n <div css={css`display: flex; flex-flow: column nowrap;`} className={className} style={style}>\n <SearchQuery\n scope={scope}\n rootCriteria={state.query.criteria}\n quickSearchString={state.quickSubstringQuery}\n availableClassIDs={availableClassIDs}\n onCriteriaChange={useCallback((\n criteria => dispatch({ type: 'update-query', payload: { query: { criteria } } })\n ), [dispatch])}\n onQuickSearchStringChange={useCallback((\n substring => dispatch({ type: 'update-quick-substring-query', payload: { substring } })\n ), [dispatch])}\n css={css`padding: 2px; margin-bottom: 10px;`}\n />\n <div css={css`flex: 1; overflow-y: auto;`}>\n {showInitialScreen\n ? initialView\n : <ListComponent\n queryExpression={datasetObjectSearchQueryExpression}\n keyExpression={keyExpression}\n selectedItemPath={state.selectedItemPath}\n onSelectItem={handleSelectItem}\n onOpenItem={handleOpenItem}\n extraItemViewData={extraData as any}\n zeroResultsView={effectiveQueryExpression === queryExpressionDebounced\n ? zeroResultsView\n : undefined}\n />}\n </div>\n </div>\n );\n});\n\n\nconst RegisterItemSearchResultList = makeSearchResultList<RegisterItem<any>>(ListItem, (objPath) => ({\n name: 'reg. item',\n iconProps: {\n icon: 'document',\n title: objPath,\n htmlTitle: `Icon for item at ${objPath}`,\n },\n}));\n\n\nexport default Search;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/sidebar/Search/index.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @jsx jsx */\n/** @jsxFrag React.Fragment */\n\nimport React, { memo, useContext, useCallback, useMemo, useEffect } from 'react';\nimport { jsx, css } from '@emotion/react';\nimport { DatasetContext } from '@riboseinc/paneron-extension-kit/context';\nimport { toJSONNormalized } from '@riboseinc/paneron-extension-kit/util';\nimport type { PersistentStateReducerHook } from '@riboseinc/paneron-extension-kit/usePersistentStateReducer';\nimport makeSearchResultList from '@riboseinc/paneron-extension-kit/widgets/SearchResultList';\nimport useDebounce from '@riboseinc/paneron-extension-kit/useDebounce';\nimport { type CriteriaGroup, isCriteriaGroup, BLANK_CRITERIA } from '../../FilterCriteria/models';\nimport criteriaGroupToQueryExpression from '../../FilterCriteria/criteriaGroupToQueryExpression';\nimport { RAW_SUBSTRING, CUSTOM_CONDITION } from '../../FilterCriteria/CRITERIA_CONFIGURATION';\nimport { ChangeRequestContext } from '../../../proposals/ChangeRequestContext';\nimport type { RegisterItem } from '../../../types';\nimport { itemRefToItemPath } from '../../itemPathUtils';\nimport { getRegisterItemQuery } from '../../itemQueryUtils';\nimport { BrowserCtx } from '../../BrowserCtx';\nimport SearchQuery from '../../SearchQuery';\nimport ListItem from '../ListItem';\nimport { Protocols } from '../../protocolRegistry';\n\n\n// TODO: Move Search widget core out of sidebar, as it’s used elsewhere too.\n\n\ninterface Query {\n criteria: CriteriaGroup;\n}\ninterface State {\n query: Query;\n quickSubstringQuery: string;\n selectedItemPath: string | null;\n}\nfunction isState(val: any): val is State {\n return val\n && val.query\n && val.query.criteria\n && isCriteriaGroup(val.query.criteria)\n && typeof val.quickSubstringQuery === 'string'\n && (val.selectedItemPath === null || typeof val.selectedItemPath === 'string')\n}\ntype Action =\n | { type: 'update-query'; payload: { query: Query; }; }\n | { type: 'update-quick-substring-query'; payload: { substring: string; }; }\n | { type: 'select-item'; payload: { itemPath: string | null; }; }\n\nconst initialState: State = {\n query: { criteria: BLANK_CRITERIA },\n quickSubstringQuery: '',\n selectedItemPath: null,\n} as const;\n\nfunction isInitialState(state: State): boolean {\n return toJSONNormalized(state) === toJSONNormalized(initialState);\n}\n\nfunction reducer(prevState: State, action: Action) {\n switch (action.type) {\n case 'update-query':\n return {\n ...prevState,\n query: action.payload.query,\n };\n case 'update-quick-substring-query':\n return {\n ...prevState,\n quickSubstringQuery: action.payload.substring,\n };\n case 'select-item':\n return {\n ...prevState,\n selectedItemPath: action.payload.itemPath,\n };\n default:\n throw new Error(\"Unexpected search state\");\n }\n}\n\nconst Search: React.FC<{\n /**\n * Human-readable description of what would be searched.\n * Optional, but if provided must be a lower-case noun\n * to be integrated in GUI copy.\n */\n scope?: string,\n\n /**\n * Criteria that will always apply.\n * Used e.g. in superseding item selection\n * (to limit to the same item class).\n */\n implicitCriteria?: CriteriaGroup,\n\n availableClassIDs?: string[]\n onOpenItem?: (itemPath: string) => void\n\n zeroResultsView?: JSX.Element\n initialView?: JSX.Element\n\n stateName?: string\n\n List?: ReturnType<typeof makeSearchResultList>\n extraData?: Record<string, any>\n\n className?: string\n style?: React.CSSProperties\n}> =\nmemo(function ({ scope, implicitCriteria, initialView, zeroResultsView, availableClassIDs, stateName, onOpenItem, List, extraData, className, style }) {\n const { usePersistentDatasetStateReducer } = useContext(DatasetContext);\n\n const ListComponent = useMemo((() => List ?? RegisterItemSearchResultList), [List]);\n\n const {\n // TODO: defaultSearchCriteria,\n keyExpression,\n getQuickSearchPredicate,\n itemClasses,\n subregisters,\n selectedRegisterItem,\n jumpTo,\n } = useContext(BrowserCtx);\n\n const { changeRequest } = useContext(ChangeRequestContext);\n\n const [ state, dispatch, stateRecalled ] = (usePersistentDatasetStateReducer as PersistentStateReducerHook<State, Action>)( stateName ?? 'search-sidebar',\n undefined,\n isState,\n reducer,\n initialState,\n null);\n\n const selectedItemPath = selectedRegisterItem?.ref\n ? itemRefToItemPath(selectedRegisterItem.ref, changeRequest?.id)\n : null;\n\n useEffect(() => {\n if (selectedItemPath) {\n dispatch({ type: 'select-item', payload: { itemPath: selectedItemPath } });\n }\n }, [selectedItemPath, dispatch]);\n\n // Why are we memoing this? It’s just a string and seems not too slow to compute.\n const effectiveQueryExpression: string = useMemo(() => {\n const quickSearchString = (state.quickSubstringQuery ?? '').trim();\n const withSearchString: CriteriaGroup =\n state.query.criteria.criteria.length < 1 && quickSearchString !== ''\n ? {\n require: 'all',\n criteria: [\n getQuickSearchPredicate\n ? {\n key: 'custom',\n query: CUSTOM_CONDITION.toQuery(\n { customExpression: getQuickSearchPredicate(quickSearchString) },\n { itemClasses, subregisters },\n ),\n }\n : {\n key: 'raw-substring',\n query: RAW_SUBSTRING.toQuery(\n { substring: quickSearchString },\n { itemClasses, subregisters }),\n },\n ],\n }\n : state.query.criteria;\n const withImplicit: CriteriaGroup = implicitCriteria\n ? {\n require: 'all',\n criteria: [ implicitCriteria, withSearchString ],\n }\n : withSearchString;\n return withImplicit.criteria.length > 0\n ? criteriaGroupToQueryExpression(withImplicit)\n // If no criteria provided, don’t show anything by default.\n : 'false';\n }, [state.query.criteria, state.quickSubstringQuery, itemClasses, subregisters, getQuickSearchPredicate]);\n\n const stateRecalledDebounced = useDebounce(stateRecalled, 100);\n const queryExpressionDebounced = useDebounce(\n effectiveQueryExpression,\n stateRecalledDebounced ? 500 : 0,\n );\n\n const datasetObjectSearchQueryExpression = useMemo((() =>\n queryExpressionDebounced.trim() !== '' && queryExpressionDebounced != 'false'\n ? getRegisterItemQuery(queryExpressionDebounced, changeRequest ?? undefined)\n : 'return false'\n ), [queryExpressionDebounced, changeRequest]);\n\n const handleSelectItem = useCallback(\n (itemPath => dispatch({ type: 'select-item', payload: { itemPath }})),\n [dispatch]);\n\n const defaultHandleOpenItem = useCallback(\n (itemPath => jumpTo?.(`${Protocols.ITEM_DETAILS}:${itemPath}`)),\n [jumpTo]);\n const handleOpenItem = onOpenItem ?? defaultHandleOpenItem;\n\n const showInitialScreen = initialView && isInitialState({ ...state, selectedItemPath: null });\n\n return (\n <div css={css`display: flex; flex-flow: column nowrap;`} className={className} style={style}>\n <SearchQuery\n scope={scope}\n rootCriteria={state.query.criteria}\n quickSearchString={state.quickSubstringQuery}\n availableClassIDs={availableClassIDs}\n onCriteriaChange={useCallback((\n criteria => dispatch({ type: 'update-query', payload: { query: { criteria } } })\n ), [dispatch])}\n onQuickSearchStringChange={useCallback((\n substring => dispatch({ type: 'update-quick-substring-query', payload: { substring } })\n ), [dispatch])}\n css={css`padding: 2px; margin-bottom: 10px;`}\n />\n <div css={css`flex: 1; overflow-y: auto; scrollbar-gutter: stable;`}>\n {showInitialScreen\n ? initialView\n : <ListComponent\n queryExpression={datasetObjectSearchQueryExpression}\n keyExpression={keyExpression}\n selectedItemPath={state.selectedItemPath}\n onSelectItem={handleSelectItem}\n onOpenItem={handleOpenItem}\n extraItemViewData={extraData as any}\n zeroResultsView={effectiveQueryExpression === queryExpressionDebounced\n ? zeroResultsView\n : undefined}\n />}\n </div>\n </div>\n );\n});\n\n\nconst RegisterItemSearchResultList = makeSearchResultList<RegisterItem<any>>(ListItem, (objPath) => ({\n name: 'reg. item',\n iconProps: {\n icon: 'document',\n title: objPath,\n htmlTitle: `Icon for item at ${objPath}`,\n },\n}));\n\n\nexport default Search;\n"]}
@@ -0,0 +1,115 @@
1
+ /** @jsx jsx */
2
+ /** @jsxFrag React.Fragment */
3
+ import { useContext } from 'react';
4
+ import update from 'immutability-helper';
5
+ import { jsx, css } from '@emotion/react';
6
+ import { Icon, Button } from '@blueprintjs/core';
7
+ import HelpTooltip from '@riboseinc/paneron-extension-kit/widgets/HelpTooltip';
8
+ import { TabbedWorkspaceContext } from '@riboseinc/paneron-extension-kit';
9
+ //import Browse from './Browse';
10
+ import ItemClassTree from '../../item-classes/Tree';
11
+ import { BrowserCtx } from '../BrowserCtx';
12
+ //import Search from './Search';
13
+ import { ChangeRequestHistoryBlock } from './Registration';
14
+ import { canImportCR, canCreateCR } from '../../types/stakeholder';
15
+ import ActionableCRTree from '../../proposals/actionableGroups/Tree';
16
+ import { Protocols } from '../protocolRegistry';
17
+ //import { ExportOptions, ImportOptions } from './ExportImport';
18
+ export const sidebarIDs = [
19
+ 'Browse',
20
+ //'Registration',
21
+ //'Export',
22
+ ];
23
+ export const sidebarConfig = {
24
+ Browse: {
25
+ icon: () => jsx(Icon, { icon: "list" }),
26
+ title: "Browse",
27
+ blocks: [{
28
+ key: 'browse',
29
+ title: jsx("div", { css: css `display: flex; justify-content: space-between` },
30
+ "Item classes",
31
+ jsx(HelpTooltip, { content: "Browse register items by pre-made categories" })),
32
+ content: jsx(ItemClassTree, null),
33
+ nonCollapsible: false,
34
+ // These have to have height specified due to absolute positioning.
35
+ height: 400,
36
+ //}, {
37
+ // key: 'search',
38
+ // title: "New search",
39
+ // content: <Search css={css`position: absolute; inset: 0;`} />,
40
+ // nonCollapsible: false,
41
+ // height: 400,
42
+ }, {
43
+ key: 'proposal-history',
44
+ title: "Proposal history",
45
+ content: jsx(ChangeRequestHistoryBlock, null),
46
+ nonCollapsible: false,
47
+ height: 200,
48
+ }],
49
+ },
50
+ // Registration: {
51
+ // icon: () => <Icon icon="lightbulb" />,
52
+ // title: "Proposals",
53
+ // blocks: [{
54
+ // key: 'pending-crs',
55
+ // title: <div css={css`display: flex; justify-content: space-between`}>
56
+ // Pending proposals
57
+ // <HelpTooltip content="Proposals pending decision. If a register item is selected, only proposals affecting that item are shown." />
58
+ // </div>,
59
+ // content: <PendingChangeRequestsBlock />,
60
+ // height: 300,
61
+ // }, {
62
+ // key: 'cr-history',
63
+ // title: <div css={css`display: flex; justify-content: space-between`}>
64
+ // History
65
+ // <HelpTooltip content="Resolved proposals. If a register item is selected, only proposals affecting that item are shown." />
66
+ // </div>,
67
+ // content: <ChangeRequestHistoryBlock />,
68
+ // height: 300,
69
+ // }],
70
+ // },
71
+ // Export: {
72
+ // icon: () => <Icon icon="changes" />,
73
+ // title: "Import and export options",
74
+ // blocks: [{
75
+ // key: 'export',
76
+ // title: "Export options",
77
+ // content: <ExportOptions />,
78
+ // nonCollapsible: true,
79
+ // }, {
80
+ // key: 'import',
81
+ // title: "Import options",
82
+ // content: <ImportOptions />,
83
+ // nonCollapsible: false,
84
+ // collapsedByDefault: true,
85
+ // }],
86
+ // },
87
+ };
88
+ const ProposalsBlockTitle = function () {
89
+ const { spawnTab, focusedTabURI } = useContext(TabbedWorkspaceContext);
90
+ const { stakeholder, activeChangeRequestID } = useContext(BrowserCtx);
91
+ const dashboardIsOpen = focusedTabURI === null || focusedTabURI === void 0 ? void 0 : focusedTabURI.startsWith(Protocols.PROPOSAL_WORK);
92
+ const canOpenDashboard = !activeChangeRequestID;
93
+ return jsx("div", { css: css `display: flex; justify-content: space-between; align-items: center;` },
94
+ "Pending proposals",
95
+ stakeholder && (canImportCR(stakeholder) || canCreateCR(stakeholder))
96
+ ? jsx(Button, { minimal: true, small: true, disabled: !canOpenDashboard, intent: canOpenDashboard ? 'primary' : undefined, active: dashboardIsOpen, onClick: (evt) => {
97
+ evt.stopPropagation();
98
+ spawnTab(Protocols.PROPOSAL_WORK);
99
+ } }, "Propose\u2026")
100
+ : null);
101
+ };
102
+ export const sidebarConfigForStakeholder = update(sidebarConfig, {
103
+ Browse: {
104
+ blocks: {
105
+ $splice: [[0, 0, {
106
+ key: 'proposals',
107
+ title: jsx(ProposalsBlockTitle, null),
108
+ content: jsx(ActionableCRTree, null),
109
+ nonCollapsible: false,
110
+ height: 200,
111
+ }]]
112
+ }
113
+ }
114
+ });
115
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,278 @@
1
+ /** @jsx jsx */
2
+ /** @jsxFrag React.Fragment */
3
+ //import log from 'electron-log';
4
+ import format from 'date-fns/format';
5
+ import { format as formatTZ, utcToZonedTime } from 'date-fns-tz';
6
+ import React, { memo, useContext } from 'react';
7
+ import { Helmet } from 'react-helmet';
8
+ import { ClassNames, css, jsx } from '@emotion/react';
9
+ import { Card, Icon, Classes, FormGroup, H3, H4, Button as BaseButton, Menu, MenuDivider, MenuItem, ButtonGroup, Tag, Colors, } from '@blueprintjs/core';
10
+ import { Popover2InteractionKind, Tooltip2 } from '@blueprintjs/popover2';
11
+ import { Popover2 as Popover } from '@blueprintjs/popover2';
12
+ import { DatasetContext } from '@riboseinc/paneron-extension-kit/context';
13
+ import { BrowserCtx } from './BrowserCtx';
14
+ export { GenericRelatedItemView } from './GenericRelatedItemView';
15
+ /**
16
+ * Get give string truncated & with ellipsis appended
17
+ * if its length exceeds given number of characters.
18
+ */
19
+ export function maybeEllipsizeString(str, maxLength = 20) {
20
+ return str.length > maxLength
21
+ ? `${str.slice(0, maxLength)}…`
22
+ : str;
23
+ }
24
+ export const RegisterHelmet = memo(function (props) {
25
+ var _a, _b;
26
+ const { title: datasetTitle } = useContext(DatasetContext);
27
+ const { registerMetadata } = useContext(BrowserCtx);
28
+ return (jsx(Helmet, { titleTemplate: `%s in ${(_a = registerMetadata === null || registerMetadata === void 0 ? void 0 : registerMetadata.name) !== null && _a !== void 0 ? _a : datasetTitle}`, defaultTitle: `${(_b = registerMetadata === null || registerMetadata === void 0 ? void 0 : registerMetadata.name) !== null && _b !== void 0 ? _b : datasetTitle}` }, props.children));
29
+ });
30
+ /**
31
+ * A wrapper to show property data with its label(s).
32
+ */
33
+ export const PropertyDetailView = function ({ label, labelInfo, title, secondaryTitle, ...props }) {
34
+ return (jsx(FormGroup, { label: label || title ? `${label !== null && label !== void 0 ? label : title}:` : undefined, labelInfo: labelInfo !== null && labelInfo !== void 0 ? labelInfo : secondaryTitle, css: css `
35
+ &, &.bp4-inline {
36
+ label.bp4-label {
37
+ /*
38
+ * Since it’s in flex container, label expands to fill its width,
39
+ * and due to the mechanics of how labels work (?)
40
+ * any button (e.g., for deletion) within labelInfo
41
+ * would responds to events of the entire label
42
+ * (meaning you can hover space to the right of the label and labelInfo
43
+ * and the button would still be clickable).
44
+ * This makes the label not fill flex container width.
45
+ */
46
+ align-self: flex-start;
47
+
48
+ font-weight: bold;
49
+ line-height: unset;
50
+ text-transform: capitalize;
51
+ .bp4-text-muted {
52
+ text-transform: none;
53
+ }
54
+ }
55
+ }
56
+ `, ...props }));
57
+ };
58
+ /** Formats given date as a span with tooltip set to full ISO date & time. */
59
+ export const Datestamp = function ({ date, useUTC, showTime, showTimeIfNonZero, title, className }) {
60
+ var _a;
61
+ const asString = formatDate(date, { useUTC, showTime, showTimeIfNonZero });
62
+ return jsx("span", { className: className, title: `${title ? `${title}: ` : ''}${(_a = date === null || date === void 0 ? void 0 : date.toString()) !== null && _a !== void 0 ? _a : 'N/A'}` }, asString);
63
+ };
64
+ function formatInTimeZone(date, fmt, tz) {
65
+ return formatTZ(utcToZonedTime(date, tz), fmt, { timeZone: tz });
66
+ }
67
+ function timeIsNonZero(date) {
68
+ return (date.getMilliseconds() === 0 &&
69
+ date.getSeconds() === 0 &&
70
+ date.getMinutes() === 0 &&
71
+ date.getHours() === 0);
72
+ }
73
+ /** Foramts given date as plain text. */
74
+ export function formatDate(date, opts) {
75
+ const showTime = (opts === null || opts === void 0 ? void 0 : opts.showTime) || ((opts === null || opts === void 0 ? void 0 : opts.showTimeIfNonZero) && timeIsNonZero(date));
76
+ const fmt = showTime
77
+ ? 'yyyy-MM-dd HH:mm:ss'
78
+ : 'yyyy-MM-dd';
79
+ try {
80
+ return (opts === null || opts === void 0 ? void 0 : opts.useUTC)
81
+ ? `${formatInTimeZone(date, fmt, 'UTC')}${showTime ? ' UTC' : ''}`
82
+ : format(date, fmt);
83
+ }
84
+ catch (e) {
85
+ console.error("Failed to format date", date, typeof date);
86
+ return `Invalid date (${e})`;
87
+ }
88
+ }
89
+ export const _getRelatedClass = (classes) => {
90
+ return (clsID) => {
91
+ const cfg = classes[clsID];
92
+ return {
93
+ title: cfg.meta.title,
94
+ // TODO: The itemView/listItemView inconsistency is annoying
95
+ itemView: cfg.views.listItemView,
96
+ };
97
+ };
98
+ };
99
+ const paddingPx = 11;
100
+ function findEnabledActions(props) {
101
+ return props.map(props => props.length !== undefined
102
+ ? props.filter(p => !p.disabled)
103
+ : !props.disabled
104
+ ? props
105
+ : []).flat();
106
+ }
107
+ export const TabContentsWithHeader = function ({ title, smallTitle, classification, actions, layout, layoutOptions, className, children }) {
108
+ var _a;
109
+ const hasClassification = (classification !== null && classification !== void 0 ? classification : []).length > 0;
110
+ const enabledActions = actions ? findEnabledActions(actions) : [];
111
+ const hasActions = enabledActions.length > 0;
112
+ // if (enabledActions.length === 1 && !enabledActions[0].intent) {
113
+ // enabledActions[0].intent = 'primary';
114
+ // }
115
+ return (jsx("div", { css: css `
116
+ position: absolute; inset: 0;
117
+ padding-top: ${paddingPx}px;
118
+ ${hasActions ? `padding-bottom: ${paddingPx}px;` : ''}
119
+ display: flex; flex-flow: column nowrap;
120
+ gap: ${paddingPx}px;
121
+ `, className: className },
122
+ smallTitle
123
+ ? jsx(H4, { css: css `margin: 0 ${paddingPx}px;` }, title)
124
+ : jsx(H3, { css: css `margin: 0 ${paddingPx}px;` }, title),
125
+ hasClassification
126
+ ? jsx("div", { css: css `
127
+ flex: 0;
128
+ margin: 0 ${paddingPx}px;
129
+ display: flex;
130
+ flex-flow: row wrap;
131
+ gap: ${paddingPx}px;
132
+ ` }, classification.map((p, idx) => jsx(React.Fragment, null, p.tooltip
133
+ ? jsx(ClassNames, null, ({ css: css2, cx }) => (jsx(Tooltip2, { popoverClassName: `${css2 `
134
+ .bp4-popover2-content {
135
+ min-width: 500px;
136
+ a {
137
+ color: black !important;
138
+ }
139
+ }
140
+ `}`, hoverCloseDelay: 600, hoverOpenDelay: 600, interactionKind: Popover2InteractionKind.HOVER, intent: p.tooltip.intent, ...p.tooltip, css: css `
141
+ cursor: help;
142
+ `, content: p.tooltip.content },
143
+ jsx(Tag, { key: idx, minimal: true, ...p, large: !smallTitle },
144
+ p.children,
145
+ "\u2002",
146
+ jsx(Icon, { icon: "help", css: css `margin-bottom: 1px; opacity: .5`, size: 12 })))))
147
+ : jsx(Tag, { key: idx, minimal: true, ...p, large: !smallTitle }))))
148
+ : null,
149
+ jsx("div", { css: css `
150
+ position: relative;
151
+ flex: 1;
152
+ overflow-y: auto;
153
+
154
+ ${layout === undefined
155
+ ? `
156
+ > :only-child { position: absolute; inset: 0 }
157
+ box-shadow: black 0 0 20px -10px;
158
+ `
159
+ : `
160
+ padding: 0 10px;
161
+ &::after, &::before {
162
+ pointer-events: none;
163
+ content: " ";
164
+ display: block;
165
+ position: sticky;
166
+ width: 100%;
167
+ height: 1px;
168
+ background: ${Colors.GRAY5};
169
+ .bp4-dark & { background: ${Colors.DARK_GRAY2}; }
170
+ z-index: 10;
171
+ }
172
+ &::before {
173
+ top: 0;
174
+ box-shadow: ${Colors.GRAY5} 0 -20px 20px 20px;
175
+ .bp4-dark & {
176
+ box-shadow: ${Colors.DARK_GRAY2} 0 -20px 20px 20px;
177
+ }
178
+ }
179
+ &::after {
180
+ bottom: 0;
181
+ box-shadow: ${Colors.GRAY5} 0 20px 20px 20px;
182
+ .bp4-dark & {
183
+ box-shadow: ${Colors.DARK_GRAY2} 0 20px 20px 20px;
184
+ }
185
+ }
186
+ `}
187
+
188
+ ${layout === 'scrollable' || layout === 'card-grid'
189
+ ? `
190
+ background: ${Colors.GRAY5};
191
+ .bp4-dark & { background: ${Colors.DARK_GRAY2}; }
192
+ `
193
+ : ''}
194
+
195
+ ${layout === 'card-grid'
196
+ ? `
197
+ display: flex;
198
+ flex-flow: row wrap;
199
+ align-content: flex-start;
200
+ ${(layoutOptions === null || layoutOptions === void 0 ? void 0 : layoutOptions.stretch)
201
+ ? 'align-items: stretch;'
202
+ : 'align-items: flex-start;'}
203
+ gap: ${(_a = layoutOptions === null || layoutOptions === void 0 ? void 0 : layoutOptions.gapPx) !== null && _a !== void 0 ? _a : 10}px;
204
+ `
205
+ : ''}
206
+ ` }, children),
207
+ hasActions
208
+ ? jsx("div", { css: css `
209
+ margin: 0 ${paddingPx}px;
210
+ flex: 0; display: flex; flex-flow: row wrap; gap: ${paddingPx}px;
211
+ ` }, actions.map((props, idx) => {
212
+ if (props.hasOwnProperty('length') && props.length !== undefined) {
213
+ return (jsx(ButtonGroup, { key: idx }, props.map((p, idx) => jsx(Action, { ...p, key: idx }))));
214
+ }
215
+ else {
216
+ return jsx(Action, { key: idx, ...props });
217
+ }
218
+ }))
219
+ : null));
220
+ };
221
+ /** Mostly a button, but with an optional popup. */
222
+ const Action = function ({ popup, tooltip, ...props }) {
223
+ const btn = jsx(BaseButton, { ...props, intent: props.disabled ? undefined : props.intent, onClick: props.disabled ? undefined : props.onClick, disabled: props.active ? false : props.disabled, title: tooltip, rightIcon: popup ? 'more' : undefined });
224
+ if (popup && !props.disabled) {
225
+ return (jsx(Popover, { key: props.key, content: popup, placement: "top", minimal: true, interactionKind: "click" }, btn));
226
+ }
227
+ else {
228
+ return btn;
229
+ }
230
+ };
231
+ export const CardInGrid = function ({ description, className, ...props }) {
232
+ return (jsx(Card, { css: css `border-radius: 5px;`, title: description, className: !props.interactive
233
+ ? `${Classes.ELEVATION_3} ${className !== null && className !== void 0 ? className : ''}`
234
+ : className, ...props }));
235
+ };
236
+ /** Useful in case of tab “card-grid” layout. */
237
+ export const FormGroupAsCardInGrid = function ({ paddingPx, ...props }) {
238
+ const paddingPx_ = paddingPx !== null && paddingPx !== void 0 ? paddingPx : 11;
239
+ return (jsx(FormGroup, { ...props, css: css `
240
+ margin: 0;
241
+
242
+ border-radius: 5px;
243
+ padding: ${paddingPx_}px;
244
+
245
+ > label.bp4-label {
246
+ font-weight: bold;
247
+ margin-bottom: ${paddingPx_}px;
248
+ }
249
+ > .bp4-form-content {
250
+ display: flex;
251
+ flex-flow: column nowrap;
252
+ gap: ${paddingPx_}px;
253
+
254
+ > .bp4-form-group {
255
+ margin: 0;
256
+ }
257
+ }
258
+
259
+ /* Note: these colors are picked to work with some form widgets, date input widget specifically. */
260
+ background: ${Colors.WHITE};
261
+ .bp4-dark & { background: ${Colors.DARK_GRAY3}; }
262
+ `, className: `${Classes.ELEVATION_3} ${props.className}` }));
263
+ };
264
+ export const MoreMenu = memo(function ({ children }) {
265
+ return (jsx(Popover, { minimal: true, content: jsx(React.Fragment, null, children) },
266
+ jsx(BaseButton, { icon: "more", small: true, minimal: true })));
267
+ });
268
+ export const ItemClassMenu = memo(function ({ cfg, onCreate }) {
269
+ return (jsx(Menu, null,
270
+ jsx(MenuDivider, { title: "About this class" }),
271
+ jsx(MenuItem, { multiline: true, disabled: true, css: css `max-width: 400px`, text: cfg.meta.description }),
272
+ onCreate
273
+ ? jsx(React.Fragment, null,
274
+ jsx(MenuDivider, { title: "Quick actions" }),
275
+ jsx(MenuItem, { text: "Propose new", intent: "primary", onClick: onCreate, icon: "plus" }))
276
+ : null));
277
+ });
278
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/views/util.tsx"],"names":[],"mappings":"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","sourcesContent":["/** @jsx jsx */\n/** @jsxFrag React.Fragment */\n\n//import log from 'electron-log';\nimport format from 'date-fns/format';\nimport { format as formatTZ, utcToZonedTime } from 'date-fns-tz';\n\nimport React, { memo, useContext } from 'react';\nimport { Helmet, type HelmetProps } from 'react-helmet';\nimport { ClassNames, css, jsx } from '@emotion/react';\nimport {\n Card, type CardProps,\n Icon,\n Classes,\n FormGroup, type FormGroupProps,\n H3, H4,\n Button as BaseButton, type ButtonProps,\n Menu, MenuDivider, MenuItem,\n ButtonGroup,\n Tag, type TagProps,\n Colors,\n} from '@blueprintjs/core';\nimport { Popover2InteractionKind, Tooltip2 } from '@blueprintjs/popover2';\nimport { Popover2 as Popover } from '@blueprintjs/popover2';\nimport { DatasetContext } from '@riboseinc/paneron-extension-kit/context';\nimport { type HelpTooltipProps } from '@riboseinc/paneron-extension-kit/widgets/HelpTooltip';\nimport { BrowserCtx } from './BrowserCtx';\nimport type { ItemClassConfiguration, RelatedItemClassConfiguration } from '../types';\nexport { GenericRelatedItemView } from './GenericRelatedItemView';\n\n\n/**\n * Get give string truncated & with ellipsis appended\n * if its length exceeds given number of characters.\n */\nexport function maybeEllipsizeString(\n str: string,\n maxLength: number = 20,\n): string {\n return str.length > maxLength\n ? `${str.slice(0, maxLength)}…`\n : str;\n}\n\n\nexport const RegisterHelmet: React.FC<HelmetProps> = memo(function (props) {\n const { title: datasetTitle } = useContext(DatasetContext);\n const { registerMetadata } = useContext(BrowserCtx);\n\n return (\n <Helmet\n titleTemplate={`%s in ${registerMetadata?.name ?? datasetTitle}`}\n defaultTitle={`${registerMetadata?.name ?? datasetTitle}`}>\n {props.children}\n </Helmet>\n );\n});\n\n\n/**\n * A wrapper to show property data with its label(s).\n */\nexport const PropertyDetailView: React.FC<FormGroupProps & {\n /** @deprecated use `label` instead */\n title?: FormGroupProps[\"label\"]\n /** @deprecated use `labelInfo` instead */\n secondaryTitle?: FormGroupProps[\"labelInfo\"]\n}> = function ({\n label, labelInfo,\n title, secondaryTitle,\n ...props }) {\n return (\n <FormGroup\n label={label || title ? `${label ?? title}:` : undefined}\n labelInfo={labelInfo ?? secondaryTitle}\n css={css`\n &, &.bp4-inline {\n label.bp4-label {\n /*\n * Since it’s in flex container, label expands to fill its width,\n * and due to the mechanics of how labels work (?)\n * any button (e.g., for deletion) within labelInfo\n * would responds to events of the entire label\n * (meaning you can hover space to the right of the label and labelInfo\n * and the button would still be clickable).\n * This makes the label not fill flex container width.\n */\n align-self: flex-start;\n\n font-weight: bold;\n line-height: unset;\n text-transform: capitalize;\n .bp4-text-muted {\n text-transform: none;\n }\n }\n }\n `}\n {...props}\n />\n );\n};\n\n\n/** Formats given date as a span with tooltip set to full ISO date & time. */\nexport const Datestamp: React.FC<{\n date: Date\n /** See formatDate(). */\n useUTC?: boolean\n /** See formatDate(). */\n showTime?: boolean\n /** See formatDate(). */\n showTimeIfNonZero?: boolean\n title?: string\n className?: string\n}> = function ({ date, useUTC, showTime, showTimeIfNonZero, title, className }) {\n const asString = formatDate(date, { useUTC, showTime, showTimeIfNonZero });\n return <span\n className={className}\n title={`${title ? `${title}: ` : ''}${date?.toString() ?? 'N/A'}`}>\n {asString}\n </span>;\n};\n\n\nfunction formatInTimeZone(date: Date, fmt: string, tz: string) {\n return formatTZ(\n utcToZonedTime(date, tz),\n fmt,\n { timeZone: tz });\n}\n\nfunction timeIsNonZero(date: Date): boolean {\n return (\n date.getMilliseconds() === 0 &&\n date.getSeconds() === 0 &&\n date.getMinutes() === 0 &&\n date.getHours() === 0);\n}\n\n\n/** Foramts given date as plain text. */\nexport function formatDate(\n date: Date,\n opts?: {\n /** Show time in UTC. Will add the “UTC”, unless time is shown. */\n useUTC?: boolean\n /** Show date along with full time, to seconds. */\n showTime?: boolean\n /** Show time, unless it’s 00:00:00 on the day. */\n showTimeIfNonZero?: boolean\n },\n): string {\n const showTime = opts?.showTime || (opts?.showTimeIfNonZero && timeIsNonZero(date));\n const fmt = showTime\n ? 'yyyy-MM-dd HH:mm:ss'\n : 'yyyy-MM-dd';\n try {\n return opts?.useUTC\n ? `${formatInTimeZone(date, fmt, 'UTC')}${showTime ? ' UTC' : ''}`\n : format(date, fmt);\n } catch (e) {\n console.error(\"Failed to format date\", date, typeof date);\n return `Invalid date (${e})`;\n }\n}\n\n\nexport const _getRelatedClass = (classes: Record<string, ItemClassConfiguration<any>>) => {\n return (clsID: string): RelatedItemClassConfiguration => {\n const cfg = classes[clsID];\n return {\n title: cfg.meta.title,\n // TODO: The itemView/listItemView inconsistency is annoying\n itemView: cfg.views.listItemView,\n };\n };\n};\n\n\n// /**\n// * Suitable for use as tab contents for TabbedWorkspace.\n// * Provides top bar with actions and main content.\n// */\n// export const TabContentsWithActions: React.FC<{\n// actions: JSX.Element;\n// main: JSX.Element;\n// gapPx?: number;\n// className?: string;\n// }> = function ({ actions, gapPx: _gapPx, main, className }) {\n// const gapPx = _gapPx ?? 10;\n// return (\n// <div css={css`\n// position: absolute; inset: 0;\n// display: flex; flex-flow: column nowrap;\n// `} className={className}>\n// <div css={css`flex: 0; padding: ${gapPx}px; display: flex; flex-flow: row wrap; gap: ${gapPx}px;`}>\n// {actions}\n// </div>\n// <div css={css`\n// position: relative;\n// flex: 1;\n// padding: ${gapPx}px;\n// overflow-y: auto;\n// background: ${Colors.GRAY5};\n// .bp4-dark & { background: ${Colors.DARK_GRAY2}; }\n// `}>\n// {main}\n// </div>\n// </div>\n// );\n// };\n\n\nexport type ClassificationEntry = TagProps & { tooltip?: HelpTooltipProps };\nexport interface TabContentsWithHeaderProps {\n title: JSX.Element | string\n smallTitle?: boolean\n classification?: ClassificationEntry[]\n actions?: (ActionProps | ActionProps[])[]\n tooltip?: HelpTooltipProps\n className?: string\n\n /**\n * CSS to apply to child contents wrapper div.\n *\n * If 'card-grid', children would be expected to be cards\n * (e.g., `FormGroupAsCardInGrid` or `CardInGrid`)\n *\n * 'card-grid' implies 'scrollable'.\n */\n layout?: undefined | 'card-grid' | 'scrollable'\n layoutOptions?: Record<string, unknown>\n}\ninterface Grid extends TabContentsWithHeaderProps {\n layout: 'card-grid'\n layoutOptions?: {\n gapPx?: number\n stretch?: boolean\n }\n}\ninterface Scrollable extends TabContentsWithHeaderProps {\n layout: 'scrollable'\n layoutOptions?: never\n}\ninterface NoLayout extends TabContentsWithHeaderProps {\n layout?: undefined\n layoutOptions?: never\n}\nconst paddingPx = 11;\nfunction findEnabledActions\n<T extends ButtonProps | ButtonProps[] = ButtonProps | ButtonProps[]>\n(props: T[]): ButtonProps[] {\n return props.map(props =>\n (props as ButtonProps[]).length !== undefined\n ? (props as ButtonProps[]).filter(p => !p.disabled)\n : !(props as ButtonProps).disabled\n ? props\n : []\n ).flat();\n}\nexport const TabContentsWithHeader: React.FC<Grid | Scrollable | NoLayout> =\nfunction ({ title, smallTitle, classification, actions, layout, layoutOptions, className, children }) {\n const hasClassification = (classification ?? []).length > 0;\n\n const enabledActions = actions ? findEnabledActions(actions) : [];\n const hasActions = enabledActions.length > 0;\n\n // if (enabledActions.length === 1 && !enabledActions[0].intent) {\n // enabledActions[0].intent = 'primary';\n // }\n\n return (\n <div css={css`\n position: absolute; inset: 0;\n padding-top: ${paddingPx}px;\n ${hasActions ? `padding-bottom: ${paddingPx}px;` : ''}\n display: flex; flex-flow: column nowrap;\n gap: ${paddingPx}px;\n `} className={className}>\n {smallTitle\n ? <H4 css={css`margin: 0 ${paddingPx}px;`}>{title}</H4>\n : <H3 css={css`margin: 0 ${paddingPx}px;`}>{title}</H3>}\n {hasClassification\n ? <div css={css`\n flex: 0;\n margin: 0 ${paddingPx}px;\n display: flex;\n flex-flow: row wrap;\n gap: ${paddingPx}px;\n `}>\n {classification!.map((p, idx) =>\n <>\n {p.tooltip\n ? <ClassNames>\n {({ css: css2, cx }) => (\n <Tooltip2\n popoverClassName={`${css2`\n .bp4-popover2-content {\n min-width: 500px;\n a {\n color: black !important;\n }\n }\n `}`}\n hoverCloseDelay={600}\n hoverOpenDelay={600}\n interactionKind={Popover2InteractionKind.HOVER}\n intent={p.tooltip!.intent}\n {...p.tooltip}\n css={css`\n cursor: help;\n `}\n content={p.tooltip!.content}>\n <Tag\n key={idx}\n minimal\n {...p}\n large={!smallTitle}\n >\n {p.children}\n &ensp;\n <Icon\n icon=\"help\"\n css={css`margin-bottom: 1px; opacity: .5`}\n size={12}\n />\n </Tag>\n </Tooltip2>\n )}\n </ClassNames>\n : <Tag\n key={idx}\n minimal\n {...p}\n large={!smallTitle}\n />}\n </>\n )}\n </div>\n : null}\n <div css={css`\n position: relative;\n flex: 1;\n overflow-y: auto;\n\n ${layout === undefined\n ? `\n > :only-child { position: absolute; inset: 0 }\n box-shadow: black 0 0 20px -10px;\n `\n : `\n padding: 0 10px;\n &::after, &::before {\n pointer-events: none;\n content: \" \";\n display: block;\n position: sticky;\n width: 100%;\n height: 1px;\n background: ${Colors.GRAY5};\n .bp4-dark & { background: ${Colors.DARK_GRAY2}; }\n z-index: 10;\n }\n &::before {\n top: 0;\n box-shadow: ${Colors.GRAY5} 0 -20px 20px 20px;\n .bp4-dark & {\n box-shadow: ${Colors.DARK_GRAY2} 0 -20px 20px 20px;\n }\n }\n &::after {\n bottom: 0;\n box-shadow: ${Colors.GRAY5} 0 20px 20px 20px;\n .bp4-dark & {\n box-shadow: ${Colors.DARK_GRAY2} 0 20px 20px 20px;\n }\n }\n `}\n\n ${layout === 'scrollable' || layout === 'card-grid'\n ? `\n background: ${Colors.GRAY5};\n .bp4-dark & { background: ${Colors.DARK_GRAY2}; }\n `\n : ''}\n\n ${layout === 'card-grid'\n ? `\n display: flex;\n flex-flow: row wrap;\n align-content: flex-start;\n ${layoutOptions?.stretch\n ? 'align-items: stretch;'\n : 'align-items: flex-start;'}\n gap: ${layoutOptions?.gapPx ?? 10}px;\n `\n : ''}\n `}>\n {children}\n </div>\n\n {hasActions\n ? <div css={css`\n margin: 0 ${paddingPx}px;\n flex: 0; display: flex; flex-flow: row wrap; gap: ${paddingPx}px;\n `}>\n {actions!.map((props, idx) => {\n if (props.hasOwnProperty('length') && (props as ButtonProps[]).length !== undefined) {\n return (\n <ButtonGroup key={idx}>\n {(props as ButtonProps[]).map((p, idx) =>\n <Action {...p} key={idx} />\n )}\n </ButtonGroup>\n );\n } else {\n return <Action key={idx} {...(props as ButtonProps)} />;\n }\n })}\n </div>\n : null}\n </div>\n );\n};\n\n\nexport type ActionProps = ButtonProps & ({ popup?: JSX.Element, tooltip?: string });\n/** Mostly a button, but with an optional popup. */\nconst Action: React.FC<ActionProps & { key?: number | string }> = function ({ popup, tooltip, ...props }) {\n const btn = <BaseButton\n {...props}\n intent={props.disabled ? undefined : props.intent}\n onClick={props.disabled ? undefined : props.onClick}\n disabled={props.active ? false : props.disabled}\n title={tooltip}\n rightIcon={popup ? 'more' : undefined}\n />;\n\n if (popup && !props.disabled) {\n return (\n <Popover key={props.key} content={popup} placement=\"top\" minimal interactionKind=\"click\">\n {btn}\n </Popover>\n );\n } else {\n return btn;\n }\n};\n\n\nexport const CardInGrid: React.FC<{ description: string } & CardProps> =\nfunction ({ description, className, ...props }) {\n return (\n <Card\n css={css`border-radius: 5px;`}\n title={description}\n className={!props.interactive\n ? `${Classes.ELEVATION_3} ${className ?? ''}`\n : className}\n {...props}\n />\n );\n};\n\n\n/** Useful in case of tab “card-grid” layout. */\nexport const FormGroupAsCardInGrid: React.FC<FormGroupProps & { paddingPx?: number }> =\nfunction ({ paddingPx, ...props }) {\n const paddingPx_ = paddingPx ?? 11;\n return (\n <FormGroup\n {...props}\n css={css`\n margin: 0;\n\n border-radius: 5px;\n padding: ${paddingPx_}px;\n\n > label.bp4-label {\n font-weight: bold;\n margin-bottom: ${paddingPx_}px;\n }\n > .bp4-form-content {\n display: flex;\n flex-flow: column nowrap;\n gap: ${paddingPx_}px;\n\n > .bp4-form-group {\n margin: 0;\n }\n }\n\n /* Note: these colors are picked to work with some form widgets, date input widget specifically. */\n background: ${Colors.WHITE};\n .bp4-dark & { background: ${Colors.DARK_GRAY3}; }\n `}\n className={`${Classes.ELEVATION_3} ${props.className}`}\n />\n );\n};\n\n\nexport const MoreMenu: React.FC<Record<never, never>> = memo(function ({ children }) {\n return (\n <Popover minimal content={<>{children}</>}>\n <BaseButton icon=\"more\" small minimal />\n </Popover>\n );\n});\n\n\nexport const ItemClassMenu: React.FC<{\n cfg: ItemClassConfiguration<any>;\n onCreate?: () => void;\n}> = memo(function ({ cfg, onCreate }) {\n return (\n <Menu>\n <MenuDivider title=\"About this class\" />\n <MenuItem multiline disabled css={css`max-width: 400px`} text={cfg.meta.description} />\n {onCreate\n ? <>\n <MenuDivider title=\"Quick actions\" />\n <MenuItem\n text=\"Propose new\"\n intent=\"primary\"\n onClick={onCreate} icon=\"plus\"\n />\n </>\n : null}\n </Menu>\n );\n});\n"]}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { type GlobalSettings } from './settings';
3
+ interface ContextSpec {
4
+ settings: GlobalSettings;
5
+ refresh: () => void;
6
+ }
7
+ export declare const GlobalSettingsContext: React.Context<ContextSpec>;
8
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GlobalSettingsContext = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _settings = require("./settings");
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ const GlobalSettingsContext = _react.default.createContext({
15
+ settings: _settings.INITIAL_GLOBAL_SETTINGS,
16
+ refresh: () => void 0
17
+ });
18
+
19
+ exports.GlobalSettingsContext = GlobalSettingsContext;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SettingsContext.js","sourceRoot":"","sources":["../src/SettingsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAuB,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAQ1E,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAAc;IACpE,QAAQ,EAAE,uBAAuB;IACjC,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;CACtB,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { type GlobalSettings, INITIAL_GLOBAL_SETTINGS } from './settings';\n\n\ninterface ContextSpec {\n settings: GlobalSettings\n refresh: () => void\n}\n\nexport const GlobalSettingsContext = React.createContext<ContextSpec>({\n settings: INITIAL_GLOBAL_SETTINGS,\n refresh: () => void 0,\n});\n"]}
@@ -0,0 +1 @@
1
+ #!/usr/bin/env node
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+
4
+ console.log('yo');
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build_site.js","sourceRoot":"","sources":["../src/build_site.ts"],"names":[],"mappings":";;AACA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC","sourcesContent":["#!/usr/bin/env node\nconsole.log('yo');\n"]}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import type { DatasetContext as DatasetContextSpec } from './types';
3
+ /**
4
+ * A higher-order component that:
5
+ *
6
+ * - takes dataset view component;
7
+ * - returns a component that takes dataset context as props,
8
+ * and renders dataset view wrapped inside dataset context provider.
9
+ */
10
+ export declare function withDatasetContext(Component: React.FC<any>): React.FC<DatasetContextSpec>;
11
+ /**
12
+ * Provides functions for interacting with dataset data,
13
+ * and by extension the underlying repositories.
14
+ *
15
+ * NOTE: If your IDE does not expose TSDoc docstrings for DatasetContext
16
+ * members, consult DatasetContextSpec type definition.
17
+ */
18
+ export declare const DatasetContext: React.Context<DatasetContextSpec>;